mirror of
				https://github.com/Redocly/redoc.git
				synced 2025-11-04 01:37:32 +03:00 
			
		
		
		
	Revert "feat: add deprecation label to redoc-cli (#2172)"
This reverts commit de3aa44469.
			
			
This commit is contained in:
		
							parent
							
								
									9b5a241bd8
								
							
						
					
					
						commit
						6e7d27fe66
					
				| 
						 | 
					@ -89,7 +89,7 @@ Refer to the Redocly's documentation for more information on these products:
 | 
				
			||||||
- [Simple integration with `create-react-app`](https://redocly.com/docs/redoc/quickstart/react/)
 | 
					- [Simple integration with `create-react-app`](https://redocly.com/docs/redoc/quickstart/react/)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  [Example repo](https://github.com/APIs-guru/create-react-app-redoc)
 | 
					  [Example repo](https://github.com/APIs-guru/create-react-app-redoc)
 | 
				
			||||||
- [Command-line interface to bundle your docs into a **zero-dependency** HTML file](https://redocly.com/docs/cli/commands/build-docs/)
 | 
					- [Command-line interface to bundle your docs into a **zero-dependency** HTML file](https://redoc.ly/docs/redoc/quickstart/cli/)
 | 
				
			||||||
- Neat **interactive** documentation for nested objects <br>
 | 
					- Neat **interactive** documentation for nested objects <br>
 | 
				
			||||||
  
 | 
					  
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,7 +1,5 @@
 | 
				
			||||||
# redoc-cli
 | 
					# redoc-cli
 | 
				
			||||||
 | 
					
 | 
				
			||||||
**DEPRECATED: this package is deprecated. Use `npx @redocly/cli build-docs <api>` instead.**
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
**[ReDoc](https://github.com/Redocly/redoc)'s Command Line Interface**
 | 
					**[ReDoc](https://github.com/Redocly/redoc)'s Command Line Interface**
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Installation
 | 
					## Installation
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										58
									
								
								cli/index.ts
									
									
									
									
									
								
							
							
						
						
									
										58
									
								
								cli/index.ts
									
									
									
									
									
								
							| 
						 | 
					@ -1,6 +1,7 @@
 | 
				
			||||||
#!/usr/bin/env node
 | 
					#!/usr/bin/env node
 | 
				
			||||||
/* tslint:disable:no-implicit-dependencies */
 | 
					/* tslint:disable:no-implicit-dependencies */
 | 
				
			||||||
import { createElement } from 'react';
 | 
					import * as React from 'react';
 | 
				
			||||||
 | 
					import * as updateNotifier from 'update-notifier';
 | 
				
			||||||
import { renderToString } from 'react-dom/server';
 | 
					import { renderToString } from 'react-dom/server';
 | 
				
			||||||
import { ServerStyleSheet } from 'styled-components';
 | 
					import { ServerStyleSheet } from 'styled-components';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -9,7 +10,6 @@ import { createServer, IncomingMessage, ServerResponse } from 'http';
 | 
				
			||||||
import { dirname, join, resolve, extname as getExtName } from 'path';
 | 
					import { dirname, join, resolve, extname as getExtName } from 'path';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import * as zlib from 'zlib';
 | 
					import * as zlib from 'zlib';
 | 
				
			||||||
import * as boxen from 'boxen';
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
// @ts-ignore
 | 
					// @ts-ignore
 | 
				
			||||||
import { createStore, loadAndBundleSpec, Redoc } from 'redoc';
 | 
					import { createStore, loadAndBundleSpec, Redoc } from 'redoc';
 | 
				
			||||||
| 
						 | 
					@ -66,14 +66,6 @@ export const mimeTypes = {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const BUNDLES_DIR = dirname(require.resolve('redoc'));
 | 
					const BUNDLES_DIR = dirname(require.resolve('redoc'));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const boxenOptions = {
 | 
					 | 
				
			||||||
  title: 'DEPRECATED',
 | 
					 | 
				
			||||||
  titleAlignment: 'center',
 | 
					 | 
				
			||||||
  padding: 1,
 | 
					 | 
				
			||||||
  margin: 1,
 | 
					 | 
				
			||||||
  borderColor: 'red',
 | 
					 | 
				
			||||||
} as boxen.Options;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
const builderForBuildCommand = yargs => {
 | 
					const builderForBuildCommand = yargs => {
 | 
				
			||||||
  yargs.positional('spec', {
 | 
					  yargs.positional('spec', {
 | 
				
			||||||
    describe: 'path or URL to your spec',
 | 
					    describe: 'path or URL to your spec',
 | 
				
			||||||
| 
						 | 
					@ -120,6 +112,7 @@ const handlerForBuildCommand = async (argv: any) => {
 | 
				
			||||||
  };
 | 
					  };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  try {
 | 
					  try {
 | 
				
			||||||
 | 
					    notifyUpdateCliVersion();
 | 
				
			||||||
    await bundle(argv.spec, config);
 | 
					    await bundle(argv.spec, config);
 | 
				
			||||||
  } catch (e) {
 | 
					  } catch (e) {
 | 
				
			||||||
    handleError(e);
 | 
					    handleError(e);
 | 
				
			||||||
| 
						 | 
					@ -128,7 +121,7 @@ const handlerForBuildCommand = async (argv: any) => {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
YargsParser.command(
 | 
					YargsParser.command(
 | 
				
			||||||
  'serve <spec>',
 | 
					  'serve <spec>',
 | 
				
			||||||
  'start the server [deprecated]',
 | 
					  'start the server',
 | 
				
			||||||
  yargs => {
 | 
					  yargs => {
 | 
				
			||||||
    yargs.positional('spec', {
 | 
					    yargs.positional('spec', {
 | 
				
			||||||
      describe: 'path or URL to your spec',
 | 
					      describe: 'path or URL to your spec',
 | 
				
			||||||
| 
						 | 
					@ -183,6 +176,7 @@ YargsParser.command(
 | 
				
			||||||
    };
 | 
					    };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    try {
 | 
					    try {
 | 
				
			||||||
 | 
					      notifyUpdateCliVersion();
 | 
				
			||||||
      await serve(argv.host as string, argv.port as number, argv.spec as string, config);
 | 
					      await serve(argv.host as string, argv.port as number, argv.spec as string, config);
 | 
				
			||||||
    } catch (e) {
 | 
					    } catch (e) {
 | 
				
			||||||
      handleError(e);
 | 
					      handleError(e);
 | 
				
			||||||
| 
						 | 
					@ -190,31 +184,30 @@ YargsParser.command(
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  [
 | 
					  [
 | 
				
			||||||
    res => {
 | 
					    res => {
 | 
				
			||||||
      console.log(`
 | 
					      console.log(
 | 
				
			||||||
        ${boxen(
 | 
					        `\n⚠️ This command is deprecated. Use "npx @redocly/cli preview-docs petstore.yaml"\n`,
 | 
				
			||||||
          'This package is deprecated.\n\nUse `npx @redocly/cli preview-docs <api>` instead.',
 | 
					      );
 | 
				
			||||||
          boxenOptions,
 | 
					 | 
				
			||||||
        )}`);
 | 
					 | 
				
			||||||
      return res;
 | 
					      return res;
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
  ],
 | 
					  ],
 | 
				
			||||||
  true,
 | 
					 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
  .command(
 | 
					  .command(
 | 
				
			||||||
    'build <spec>',
 | 
					    'build <spec>',
 | 
				
			||||||
    'build definition into zero-dependency HTML-file [deprecated]',
 | 
					    'build definition into zero-dependency HTML-file',
 | 
				
			||||||
    builderForBuildCommand,
 | 
					    builderForBuildCommand,
 | 
				
			||||||
    handlerForBuildCommand,
 | 
					    handlerForBuildCommand,
 | 
				
			||||||
    [notifyDeprecation],
 | 
					 | 
				
			||||||
    true,
 | 
					 | 
				
			||||||
  )
 | 
					  )
 | 
				
			||||||
  .command(
 | 
					  .command(
 | 
				
			||||||
    'bundle <spec>',
 | 
					    'bundle <spec>',
 | 
				
			||||||
    'bundle spec into zero-dependency HTML-file [deprecated]',
 | 
					    'bundle spec into zero-dependency HTML-file [deprecated]',
 | 
				
			||||||
    builderForBuildCommand,
 | 
					    builderForBuildCommand,
 | 
				
			||||||
    handlerForBuildCommand,
 | 
					    handlerForBuildCommand,
 | 
				
			||||||
    [notifyDeprecation],
 | 
					    [
 | 
				
			||||||
    true,
 | 
					      res => {
 | 
				
			||||||
 | 
					        console.log(`\n⚠️ This command is deprecated. Use "build" command instead.\n`);
 | 
				
			||||||
 | 
					        return res;
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					    ],
 | 
				
			||||||
  )
 | 
					  )
 | 
				
			||||||
  .demandCommand()
 | 
					  .demandCommand()
 | 
				
			||||||
  .options('t', {
 | 
					  .options('t', {
 | 
				
			||||||
| 
						 | 
					@ -351,7 +344,7 @@ async function getPageHTML(
 | 
				
			||||||
    const store = await createStore(spec, specUrl, redocOptions);
 | 
					    const store = await createStore(spec, specUrl, redocOptions);
 | 
				
			||||||
    const sheet = new ServerStyleSheet();
 | 
					    const sheet = new ServerStyleSheet();
 | 
				
			||||||
    // @ts-ignore
 | 
					    // @ts-ignore
 | 
				
			||||||
    html = renderToString(sheet.collectStyles(createElement(Redoc, { store })));
 | 
					    html = renderToString(sheet.collectStyles(React.createElement(Redoc, { store })));
 | 
				
			||||||
    css = sheet.getStyleTags();
 | 
					    css = sheet.getStyleTags();
 | 
				
			||||||
    state = await store.toJS();
 | 
					    state = await store.toJS();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -479,12 +472,15 @@ function getObjectOrJSON(options) {
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
function notifyDeprecation(res: YargsParser.Arguments): YargsParser.Arguments {
 | 
					function notifyUpdateCliVersion() {
 | 
				
			||||||
  console.log(
 | 
					  const pkg = require('./package.json');
 | 
				
			||||||
    boxen(
 | 
					  const notifier = updateNotifier({
 | 
				
			||||||
      'This package is deprecated.\n\nUse `npx @redocly/cli build-docs <api>` instead.',
 | 
					    pkg,
 | 
				
			||||||
      boxenOptions,
 | 
					    updateCheckInterval: 0,
 | 
				
			||||||
    ),
 | 
					    shouldNotifyInNpmScript: true,
 | 
				
			||||||
  );
 | 
					  });
 | 
				
			||||||
  return res;
 | 
					  notifier.notify({
 | 
				
			||||||
 | 
					    message:
 | 
				
			||||||
 | 
					      'Run `{updateCommand}` to update.\nChangelog: https://github.com/Redocly/redoc/releases/tag/{latestVersion}',
 | 
				
			||||||
 | 
					  });
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										1269
									
								
								cli/npm-shrinkwrap.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										1269
									
								
								cli/npm-shrinkwrap.json
									
									
									
										generated
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							| 
						 | 
					@ -11,7 +11,6 @@
 | 
				
			||||||
    "node": ">=12.0.0"
 | 
					    "node": ">=12.0.0"
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  "dependencies": {
 | 
					  "dependencies": {
 | 
				
			||||||
    "boxen": "5.1.2",
 | 
					 | 
				
			||||||
    "chokidar": "^3.5.1",
 | 
					    "chokidar": "^3.5.1",
 | 
				
			||||||
    "handlebars": "^4.7.7",
 | 
					    "handlebars": "^4.7.7",
 | 
				
			||||||
    "mkdirp": "^1.0.4",
 | 
					    "mkdirp": "^1.0.4",
 | 
				
			||||||
| 
						 | 
					@ -21,6 +20,7 @@
 | 
				
			||||||
    "react-dom": "^17.0.1",
 | 
					    "react-dom": "^17.0.1",
 | 
				
			||||||
    "redoc": "2.0.0-rc.77",
 | 
					    "redoc": "2.0.0-rc.77",
 | 
				
			||||||
    "styled-components": "^5.3.0",
 | 
					    "styled-components": "^5.3.0",
 | 
				
			||||||
 | 
					    "update-notifier": "^5.0.1",
 | 
				
			||||||
    "yargs": "^17.3.1"
 | 
					    "yargs": "^17.3.1"
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  "publishConfig": {
 | 
					  "publishConfig": {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,7 +1,7 @@
 | 
				
			||||||
describe('Search', () => {
 | 
					describe('Search', () => {
 | 
				
			||||||
  const getSearchInput = () => cy.get('[role="search"] input');
 | 
					  const getSearchInput = () => cy.get('[role="search"] input');
 | 
				
			||||||
  const getSearchResults = () => cy.get('[data-role="search:results"]');
 | 
					  const getSearchResults = () => cy.get('[data-role="search:results"]');
 | 
				
			||||||
  const getResult = i => cy.get('[role=search] label').eq(i);
 | 
					  const getResult = i => cy.get('[role=search] [role=menuitem]').eq(i);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  beforeEach(() => {
 | 
					  beforeEach(() => {
 | 
				
			||||||
    cy.visit('e2e/standalone.html');
 | 
					    cy.visit('e2e/standalone.html');
 | 
				
			||||||
| 
						 | 
					@ -45,7 +45,7 @@ describe('Search', () => {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    getSearchInput().type('{enter}', { force: true });
 | 
					    getSearchInput().type('{enter}', { force: true });
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    cy.contains('[role=menu] label', 'Introduction').should('have.class', 'active');
 | 
					    cy.contains('[role=menu] [role=menuitem]', 'Introduction').should('have.class', 'active');
 | 
				
			||||||
  });
 | 
					  });
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  it('should mark search results', () => {
 | 
					  it('should mark search results', () => {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue
	
	Block a user