@cyclone-ui/cli 0.6.13 → 0.6.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +58 -13
- package/dist/{add-T2BOJKd6.mjs → add-QZOxYcRK.mjs} +1 -1
- package/dist/add.mjs +3 -3
- package/dist/{analyze-a11y-DYcSuyig.mjs → analyze-a11y-BU8faGzr.mjs} +1 -1
- package/dist/analyze-a11y.mjs +1 -1
- package/dist/bin.mjs +7 -7
- package/dist/build-BMHh7SnK.mjs +1 -0
- package/dist/build-tokens-C_wzH90_.mjs +1 -0
- package/dist/build-tokens.mjs +2 -0
- package/dist/build.mjs +2 -2
- package/dist/{changelog-BGtHdCgl.mjs → changelog-Q5DymQRF.mjs} +1 -1
- package/dist/changelog.mjs +19 -1
- package/dist/command-DbeCTonF.mjs +1 -0
- package/dist/completions-bash-config.mjs +1 -1
- package/dist/completions-bash-script.mjs +1 -1
- package/dist/completions-fish-config.mjs +1 -1
- package/dist/completions-fish-script.mjs +1 -1
- package/dist/completions-powershell-config.mjs +1 -1
- package/dist/completions-powershell-script.mjs +1 -1
- package/dist/completions-zsh-config.mjs +1 -1
- package/dist/completions-zsh-script.mjs +1 -1
- package/dist/components-BeiahS2c.mjs +10 -0
- package/dist/{config-DQyq6GTx.mjs → config-6_J_XRsw.mjs} +1 -1
- package/dist/{config-Cc9l_V8p.mjs → config-B169hbG3.mjs} +1 -1
- package/dist/{config-vcV8I7FW.mjs → config-C09YwAnf.mjs} +1 -1
- package/dist/config-DxsYsT40.mjs +1 -0
- package/dist/{config-Bnd1h0RQ.mjs → config-YZotDfFJ.mjs} +1 -1
- package/dist/{console-ByH4Pf9W.mjs → console-C3z2Y61E.mjs} +2 -2
- package/dist/design-system-CNVVaZ1M.mjs +1 -0
- package/dist/{diff-CvRV7PpF.mjs → diff-BLZFm5eJ.mjs} +1 -1
- package/dist/diff.mjs +1 -1
- package/dist/{docs-BXB2yiA1.mjs → docs-A44uCA1K.mjs} +1 -1
- package/dist/docs.mjs +4 -4
- package/dist/{guidelines-CPEObmMp.mjs → guidelines-CfvgqEk7.mjs} +1 -1
- package/dist/guidelines.mjs +1 -1
- package/dist/help.mjs +2 -2
- package/dist/{info-wf_47mGy.mjs → info-CMedDFnc.mjs} +1 -1
- package/dist/info.mjs +2 -2
- package/dist/{init-C17CGlol.mjs → init-DBROV6sE.mjs} +1 -1
- package/dist/init.mjs +2 -2
- package/dist/{list-components-VX8zmUJZ.mjs → list-components-Dx-J-Dnq.mjs} +1 -1
- package/dist/list-components.mjs +1 -1
- package/dist/{list-fonts-VPPrs-qQ.mjs → list-fonts-DBT1mrsH.mjs} +1 -1
- package/dist/list-fonts.mjs +1 -1
- package/dist/{list-icons-BC8rUUQe.mjs → list-icons-C8xYxnqZ.mjs} +1 -1
- package/dist/list-icons.mjs +1 -1
- package/dist/{list-tokens-D-OoOV7t.mjs → list-tokens-BKFnTzsn.mjs} +1 -1
- package/dist/list-tokens.mjs +1 -1
- package/dist/{mcp-qtp0cOng.mjs → mcp-B6D5petn.mjs} +1 -1
- package/dist/mcp.mjs +13 -14
- package/dist/{plan-D6YWwKYr.mjs → plan-ZWeXBx16.mjs} +1 -1
- package/dist/plan.mjs +1 -1
- package/dist/{prompts-CeL3sX1m.mjs → prompts-e3s_BIKU.mjs} +2 -2
- package/dist/registry-DnOTA6eC.mjs +1 -0
- package/dist/registry-validate.mjs +2 -2
- package/dist/{script-mVvsI7iD.mjs → script-B00X1Gka.mjs} +1 -1
- package/dist/{script-DmlUXaDQ.mjs → script-CI1NIrdw.mjs} +1 -1
- package/dist/{script-8WhThN9H.mjs → script-CkCsXZJK.mjs} +1 -1
- package/dist/{script-DePWvmjM.mjs → script-CucYHbm0.mjs} +1 -1
- package/dist/{search-DNykj-SL.mjs → search-JStGlg5t.mjs} +1 -1
- package/dist/{search-components-CNnKD6xI.mjs → search-components-CpFDPRfz.mjs} +1 -1
- package/dist/search-components.mjs +1 -1
- package/dist/{search-fonts-Cl7S1JuD.mjs → search-fonts-BbUV2DYZ.mjs} +1 -1
- package/dist/search-fonts.mjs +1 -1
- package/dist/{search-icons-De3n8IMy.mjs → search-icons-JbWNW9vv.mjs} +1 -1
- package/dist/search-icons.mjs +1 -1
- package/dist/{search-tokens-0Kdz_Gm-.mjs → search-tokens-Mwyu1sLi.mjs} +1 -1
- package/dist/search-tokens.mjs +1 -1
- package/dist/search.mjs +3 -3
- package/dist/{update-C8kOAAHB.mjs → update-0bXYJiJj.mjs} +1 -1
- package/dist/{update-COr10C5g.mjs → update-wulHGaSU.mjs} +1 -1
- package/dist/update.mjs +1 -1
- package/dist/{validate-Dw2b2Z2O.mjs → validate-CqYKElXI.mjs} +1 -1
- package/dist/{view-BUkG22YG.mjs → view-BLGl-i0d.mjs} +1 -1
- package/dist/view.mjs +3 -3
- package/package.json +11 -9
- package/dist/build-BLHSieJf.mjs +0 -1
- package/dist/components-CL5K9O-8.mjs +0 -10
- package/dist/config-D4XQ3gm9.mjs +0 -1
- package/dist/create-tokens-jBEvGFEz.mjs +0 -1
- package/dist/create-tokens.mjs +0 -2
- package/dist/design-system-B7MzO5_9.mjs +0 -1
- package/dist/local-registry-pqsOERYj.mjs +0 -1
- package/dist/registry-C95vaVW8.mjs +0 -1
- package/dist/registry-nLy1sUFb.mjs +0 -1
package/dist/mcp.mjs
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import{L as e,P as t,V as n,z as r}from"./console-
|
|
2
|
-
Options: --cwd (string), --overwrite (boolean), --all (boolean), --path (string), --dry-run (boolean), --diff (boolean), --view (boolean), --silent (boolean), --registry (string)
|
|
3
|
-
Args: components:string[]`,toolName:`add`,options:[{name:`cwd`,title:`Current Working Directory`,description:`The working directory.`,type:`string`,required:!1,variadic:!1},{name:`overwrite`,title:`Overwrite`,description:`Overwrite existing files.`,type:`boolean`,required:!1,variadic:!1},{name:`all`,title:`All`,description:`Add every available component.`,type:`boolean`,required:!1,variadic:!1},{name:`path`,title:`Path`,description:`Override the configured component output path.`,type:`string`,required:!1,variadic:!1},{name:`dryRun`,title:`Dry Run`,description:`Preview changes without writing files.`,type:`boolean`,required:!1,variadic:!1},{name:`diff`,title:`Diff`,description:`Show the changes as a diff without writing files.`,type:`boolean`,required:!1,variadic:!1},{name:`view`,title:`View`,description:`Show resolved file contents without writing files.`,type:`boolean`,required:!1,variadic:!1},{name:`silent`,title:`Silent`,description:`Mute non-essential output.`,type:`boolean`,required:!1,variadic:!1},{name:`registry`,title:`Registry`,description:`Override the configured registry
|
|
4
|
-
Options: --code (string), --file (string), --component-name (string), --context (string), --pattern-analysis (boolean)`,toolName:`analyze-a11y`,options:[{name:`code`,title:`Code`,description:`Source code of a React component or JSX snippet to analyze.`,type:`string`,required:!1,variadic:!1},{name:`file`,title:`File`,description:`Path to a source file to analyze (alternative to --code).`,type:`string`,required:!1,variadic:!1},{name:`componentName`,title:`Component Name`,description:`Optional label for the component under review.`,type:`string`,required:!1,variadic:!1},{name:`context`,title:`Context`,description:`Optional usage context (for example "in a form" or "modal").`,type:`string`,required:!1,variadic:!1},{name:`patternAnalysis`,title:`Pattern Analysis`,description:`Run regex-based heuristics (unlabeled buttons, missing alt, …).`,type:`boolean`,required:!1,variadic:!1}],args:[]},{id:`build`,name:`build`,path:`build`,segments:[`build`],title:`Build
|
|
5
|
-
Options: --cwd (string), --output (string)
|
|
6
|
-
|
|
1
|
+
import{L as e,P as t,V as n,z as r}from"./console-C3z2Y61E.mjs";import{t as i}from"./mcp-B6D5petn.mjs";import{defineMetadata as a,defineOptions as o}from"@shell-shock/core";import{McpServer as s}from"@modelcontextprotocol/server";import{StdioServerTransport as c}from"@modelcontextprotocol/server/stdio";import{z as l}from"zod/v4";const u=[{id:`add`,name:`add`,path:`add`,segments:[`add`],title:`Add`,description:`Adds a new component to the project.
|
|
2
|
+
Options: --cwd (string), --overwrite (boolean), --all (boolean), --path (string), --dry-run (boolean), --diff (boolean), --view (boolean), --silent (boolean), --registry (string), --rsc (boolean)
|
|
3
|
+
Args: components:string[]`,toolName:`add`,options:[{name:`cwd`,title:`Current Working Directory`,description:`The working directory.`,type:`string`,required:!1,variadic:!1},{name:`overwrite`,title:`Overwrite`,description:`Overwrite existing files.`,type:`boolean`,required:!1,variadic:!1},{name:`all`,title:`All`,description:`Add every available component.`,type:`boolean`,required:!1,variadic:!1},{name:`path`,title:`Path`,description:`Override the configured component output path.`,type:`string`,required:!1,variadic:!1},{name:`dryRun`,title:`Dry Run`,description:`Preview changes without writing files.`,type:`boolean`,required:!1,variadic:!1},{name:`diff`,title:`Diff`,description:`Show the changes as a diff without writing files.`,type:`boolean`,required:!1,variadic:!1},{name:`view`,title:`View`,description:`Show resolved file contents without writing files.`,type:`boolean`,required:!1,variadic:!1},{name:`silent`,title:`Silent`,description:`Mute non-essential output.`,type:`boolean`,required:!1,variadic:!1},{name:`registry`,title:`Registry`,description:`Override the configured registry URL.`,type:`string`,required:!1,variadic:!1},{name:`rsc`,title:`React Server Components`,description:`Override React Server Component support for this installation.`,type:`boolean`,required:!1,variadic:!1}],args:[{name:`components`,title:`Components`,description:`Component names to add.`,type:`string`,required:!1,variadic:!0}]},{id:`analyze-a11y`,name:`analyze-a11y`,path:`analyze-a11y`,segments:[`analyze-a11y`],title:`Analyze Accessibility`,description:`Analyze a React/JSX source string (or file) for likely accessibility issues and hard-coded colors, suggesting the nearest design tokens for each color.
|
|
4
|
+
Options: --code (string), --file (string), --component-name (string), --context (string), --pattern-analysis (boolean)`,toolName:`analyze-a11y`,options:[{name:`code`,title:`Code`,description:`Source code of a React component or JSX snippet to analyze.`,type:`string`,required:!1,variadic:!1},{name:`file`,title:`File`,description:`Path to a source file to analyze (alternative to --code).`,type:`string`,required:!1,variadic:!1},{name:`componentName`,title:`Component Name`,description:`Optional label for the component under review.`,type:`string`,required:!1,variadic:!1},{name:`context`,title:`Context`,description:`Optional usage context (for example "in a form" or "modal").`,type:`string`,required:!1,variadic:!1},{name:`patternAnalysis`,title:`Pattern Analysis`,description:`Run regex-based heuristics (unlabeled buttons, missing alt, …).`,type:`boolean`,required:!1,variadic:!1}],args:[]},{id:`build`,name:`build`,path:`build`,segments:[`build`],title:`Build`,description:`Generate design tokens and build the resulting Tamagui config.
|
|
5
|
+
Options: --cwd (string), --config (string), --tokens (string), --output (string)`,toolName:`build`,options:[{name:`cwd`,title:`Current Working Directory`,description:`The working directory.`,type:`string`,required:!1,variadic:!1},{name:`config`,title:`Config`,description:`Path to the Razorwind configuration file.`,type:`string`,required:!1,variadic:!1},{name:`tokens`,title:`Tokens`,description:`Design token source path or glob.`,type:`string`,required:!1,variadic:!1},{name:`output`,title:`Output`,description:`Output path for the generated Tamagui config.`,type:`string`,required:!1,variadic:!1}],args:[]},{id:`build-tokens`,name:`build-tokens`,path:`build-tokens`,segments:[`build-tokens`],title:`Build Tokens`,description:`Generate a Tamagui config file from design tokens.
|
|
6
|
+
Options: --cwd (string), --config (string), --tokens (string), --output (string)`,toolName:`build-tokens`,options:[{name:`cwd`,title:`Current Working Directory`,description:`The working directory.`,type:`string`,required:!1,variadic:!1},{name:`config`,title:`Config`,description:`Path to the Razorwind configuration file.`,type:`string`,required:!1,variadic:!1},{name:`tokens`,title:`Tokens`,description:"Design token source path or glob (overrides the configured `tokensPath`).",type:`string`,required:!1,variadic:!1},{name:`output`,title:`Output`,description:`Output path for the generated Tamagui config.`,type:`string`,required:!1,variadic:!1}],args:[]},{id:`changelog`,name:`changelog`,path:`changelog`,segments:[`changelog`],title:`Changelog`,description:`Display the Cyclone User Interface changelog.`,toolName:`changelog`,options:[],args:[]},{id:`completions-bash-config`,name:`config`,path:`completions/bash/config`,segments:[`completions`,`bash`,`config`],title:`Completions - Bash Configuration`,description:`Update the current system's bash shell configuration to include completions for the Cyclone User Interface command-line interface.
|
|
7
7
|
Options: --display (boolean)
|
|
8
8
|
Args: path:string`,toolName:`completions_bash_config`,options:[{name:`display`,title:`Display`,description:`Should the generated completion script be written to console output instead of an actual file on disk? This is useful for debugging purposes or if you want to manually handle the output.`,type:`boolean`,required:!1,variadic:!1}],args:[{name:`path`,title:`Path`,description:`An argument that allows the user to specify a custom Path string value.`,type:`string`,required:!1,variadic:!1}]},{id:`completions-bash-script`,name:`script`,path:`completions/bash/script`,segments:[`completions`,`bash`,`script`],title:`Completions - Bash Script`,description:`Generate a bash completion script for the Cyclone User Interface command-line interface.
|
|
9
9
|
Options: --display (boolean)
|
|
@@ -19,30 +19,29 @@ Args: path:string`,toolName:`completions_powershell_script`,options:[{name:`disp
|
|
|
19
19
|
Options: --display (boolean)
|
|
20
20
|
Args: path:string`,toolName:`completions_zsh_config`,options:[{name:`display`,title:`Display`,description:`Should the generated completion script be written to console output instead of an actual file on disk? This is useful for debugging purposes or if you want to manually handle the output.`,type:`boolean`,required:!1,variadic:!1}],args:[{name:`path`,title:`Path`,description:`An argument that allows the user to specify a custom Path string value.`,type:`string`,required:!1,variadic:!1}]},{id:`completions-zsh-script`,name:`script`,path:`completions/zsh/script`,segments:[`completions`,`zsh`,`script`],title:`Completions - Zsh Script`,description:`Generate a Zsh completion script for the Cyclone User Interface command-line interface.
|
|
21
21
|
Options: --display (boolean)
|
|
22
|
-
Args: path:string`,toolName:`completions_zsh_script`,options:[{name:`display`,title:`Display`,description:`Should the generated completion script be written to console output instead of an actual file on disk? This is useful for debugging purposes or if you want to manually handle the output.`,type:`boolean`,required:!1,variadic:!1}],args:[{name:`path`,title:`Path`,description:`An argument that allows the user to specify a custom Path string value.`,type:`string`,required:!1,variadic:!1}]},{id:`
|
|
23
|
-
Options: --cwd (string), --config (string), --tokens (string), --output (string)`,toolName:`create-tokens`,options:[{name:`cwd`,title:`Current Working Directory`,description:`The working directory.`,type:`string`,required:!1,variadic:!1},{name:`config`,title:`Config`,description:`Path to the Razorwind configuration file.`,type:`string`,required:!1,variadic:!1},{name:`tokens`,title:`Tokens`,description:"Design token source path or glob (overrides the configured `tokensPath`).",type:`string`,required:!1,variadic:!1},{name:`output`,title:`Output`,description:`Output path for the generated Tamagui config.`,type:`string`,required:!1,variadic:!1}],args:[]},{id:`diff`,name:`diff`,path:`diff`,segments:[`diff`],title:`Diff Components`,description:`Compare installed components with the registry.
|
|
22
|
+
Args: path:string`,toolName:`completions_zsh_script`,options:[{name:`display`,title:`Display`,description:`Should the generated completion script be written to console output instead of an actual file on disk? This is useful for debugging purposes or if you want to manually handle the output.`,type:`boolean`,required:!1,variadic:!1}],args:[{name:`path`,title:`Path`,description:`An argument that allows the user to specify a custom Path string value.`,type:`string`,required:!1,variadic:!1}]},{id:`diff`,name:`diff`,path:`diff`,segments:[`diff`],title:`Diff Components`,description:`Compare installed components with the registry.
|
|
24
23
|
Options: --cwd (string), --registry (string)
|
|
25
|
-
Args: components:string[]`,toolName:`diff`,options:[{name:`cwd`,title:`Current Working Directory`,description:`The working directory.`,type:`string`,required:!1,variadic:!1},{name:`registry`,title:`Registry`,description:`Registry
|
|
24
|
+
Args: components:string[]`,toolName:`diff`,options:[{name:`cwd`,title:`Current Working Directory`,description:`The working directory.`,type:`string`,required:!1,variadic:!1},{name:`registry`,title:`Registry`,description:`Registry URL.`,type:`string`,required:!1,variadic:!1}],args:[{name:`components`,title:`Components`,description:`Installed component names to compare.`,type:`string`,required:!1,variadic:!0}]},{id:`docs`,name:`docs`,path:`docs`,segments:[`docs`],title:`Component Documentation`,description:`Get documentation links for registry components.
|
|
26
25
|
Options: --cwd (string), --registry (string), --json (boolean)
|
|
27
|
-
Args: components:string (required)[]`,toolName:`docs`,options:[{name:`cwd`,title:`Current Working Directory`,description:`The working directory.`,type:`string`,required:!1,variadic:!1},{name:`registry`,title:`Registry`,description:`Registry
|
|
26
|
+
Args: components:string (required)[]`,toolName:`docs`,options:[{name:`cwd`,title:`Current Working Directory`,description:`The working directory.`,type:`string`,required:!1,variadic:!1},{name:`registry`,title:`Registry`,description:`Registry URL.`,type:`string`,required:!1,variadic:!1},{name:`json`,title:`JavaScript Object Notation`,description:`Output machine-readable JSON.`,type:`boolean`,required:!1,variadic:!1}],args:[{name:`components`,title:`Components`,description:`Component names to document.`,type:`string`,required:!0,variadic:!0}]},{id:`guidelines`,name:`guidelines`,path:`guidelines`,segments:[`guidelines`],title:`Guidelines`,description:`Return design-system guidelines as Markdown: an overview of the token groups, one section per component (with usage examples), typography, the design-system style guidelines, and any bundled guideline documents. Pass --terms to search; omit for the full set.
|
|
28
27
|
Options: --terms (string), --limit (number)`,toolName:`guidelines`,options:[{name:`terms`,title:`Terms`,description:`Search terms matched against guideline keywords, titles and body (fuzzy). Omit to return all guidelines.`,type:`string`,required:!1,variadic:!0},{name:`limit`,title:`Limit`,description:`Maximum matches per term when searching.`,type:`number`,required:!1,variadic:!1}],args:[]},{id:`help`,name:`help`,path:`help`,segments:[`help`],title:`Help`,description:`Display command usage details and other useful information to the user.
|
|
29
28
|
Args: commands:string[]`,toolName:`help`,options:[],args:[{name:`commands`,title:`Commands`,description:`- The command segments for the command to show help for. This
|
|
30
29
|
is used to determine which command's help information to display. If no
|
|
31
30
|
commands are provided, general help information about the CLI application
|
|
32
31
|
will be displayed.`,type:`string`,required:!1,variadic:!0}]},{id:`info`,name:`info`,path:`info`,segments:[`info`],title:`Project Information`,description:`Show Cyclone UI project configuration and installed components.
|
|
33
32
|
Options: --cwd (string), --json (boolean)`,toolName:`info`,options:[{name:`cwd`,title:`Current Working Directory`,description:`The working directory.`,type:`string`,required:!1,variadic:!1},{name:`json`,title:`JavaScript Object Notation`,description:`Output machine-readable JSON.`,type:`boolean`,required:!1,variadic:!1}],args:[]},{id:`init`,name:`init`,path:`init`,segments:[`init`],title:`Initialize`,description:`Initialize Cyclone UI in a project.
|
|
34
|
-
Options: --cwd (string), --path (string), --registry (string), --force (boolean), --silent (boolean)
|
|
35
|
-
Args: components:string[]`,toolName:`init`,options:[{name:`cwd`,title:`Current Working Directory`,description:`The working directory.`,type:`string`,required:!1,variadic:!1},{name:`path`,title:`Path`,description:`Component output path, relative to the working directory.`,type:`string`,required:!1,variadic:!1},{name:`registry`,title:`Registry`,description:`Registry
|
|
33
|
+
Options: --cwd (string), --path (string), --registry (string), --rsc (boolean), --force (boolean), --silent (boolean)
|
|
34
|
+
Args: components:string[]`,toolName:`init`,options:[{name:`cwd`,title:`Current Working Directory`,description:`The working directory.`,type:`string`,required:!1,variadic:!1},{name:`path`,title:`Path`,description:`Component output path, relative to the working directory.`,type:`string`,required:!1,variadic:!1},{name:`registry`,title:`Registry`,description:`Registry URL.`,type:`string`,required:!1,variadic:!1},{name:`rsc`,title:`React Server Components`,description:`Enable React Server Component support in components.json.`,type:`boolean`,required:!1,variadic:!1},{name:`force`,title:`Force`,description:`Overwrite an existing Cyclone configuration.`,type:`boolean`,required:!1,variadic:!1},{name:`silent`,title:`Silent`,description:`Mute non-essential output.`,type:`boolean`,required:!1,variadic:!1}],args:[{name:`components`,title:`Components`,description:`Components to install after initialization.`,type:`string`,required:!1,variadic:!0}]},{id:`list-components`,name:`list-components`,path:`list-components`,segments:[`list-components`],title:`List Components`,description:`Return every design-system component record. Large output - prefer search-components for normal use.`,toolName:`list-components`,options:[],args:[]},{id:`list-fonts`,name:`list-fonts`,path:`list-fonts`,segments:[`list-fonts`],title:`List Fonts`,description:`Return every design-system font record.`,toolName:`list-fonts`,options:[],args:[]},{id:`list-icons`,name:`list-icons`,path:`list-icons`,segments:[`list-icons`],title:`List Icons`,description:`Return every design-system icon record. Large output - prefer search-icons for normal use.`,toolName:`list-icons`,options:[],args:[]},{id:`list-tokens`,name:`list-tokens`,path:`list-tokens`,segments:[`list-tokens`],title:`List Tokens`,description:`Return every design token (name, value, type, description, CSS variable). Large output - prefer search-tokens for normal use.`,toolName:`list-tokens`,options:[],args:[]},{id:`mcp`,name:`mcp`,path:`mcp`,segments:[`mcp`],title:`MCP Server`,description:`Starts an MCP stdio server that exposes this Shell Shock application's commands as tools.
|
|
36
35
|
Options: --include-self (boolean)`,toolName:`mcp`,options:[{name:`includeSelf`,title:`Include MCP Command`,description:`Whether to expose the MCP command itself as a tool in the generated server.`,type:`boolean`,required:!1,variadic:!1}],args:[]},{id:`plan`,name:`plan`,path:`plan`,segments:[`plan`],title:`Plan`,description:`Search tokens, icons, components and fonts in one call to plan what to build. Provide terms for at least one list.
|
|
37
36
|
Options: --tokens (string), --icons (string), --components (string), --fonts (string), --limit (number)`,toolName:`plan`,options:[{name:`tokens`,title:`Tokens`,description:`Search terms for design tokens. Prefer at least two terms when known.`,type:`string`,required:!1,variadic:!0},{name:`icons`,title:`Icons`,description:`Search terms for icons.`,type:`string`,required:!1,variadic:!0},{name:`components`,title:`Components`,description:`Search terms for components.`,type:`string`,required:!1,variadic:!0},{name:`fonts`,title:`Fonts`,description:`Search terms for fonts.`,type:`string`,required:!1,variadic:!0},{name:`limit`,title:`Limit`,description:`Maximum matches per term for each list.`,type:`number`,required:!1,variadic:!1}],args:[]},{id:`registry-validate`,name:`validate`,path:`registry/validate`,segments:[`registry`,`validate`],title:`Validate Registry`,description:`Validate a local registry manifest and its source files.
|
|
38
37
|
Options: --cwd (string)
|
|
39
38
|
Args: registry:string`,toolName:`registry_validate`,options:[{name:`cwd`,title:`Current Working Directory`,description:`The working directory.`,type:`string`,required:!1,variadic:!1}],args:[{name:`registry`,title:`Registry`,description:`Registry manifest path.`,type:`string`,required:!1,variadic:!1}]},{id:`search`,name:`search`,path:`search`,segments:[`search`],title:`Search Registry`,description:`Search components in the Cyclone registry.
|
|
40
|
-
Options: --cwd (string), --query (string), --limit (number), --offset (number), --json (boolean), --registry (string)`,toolName:`search`,options:[{name:`cwd`,title:`Current Working Directory`,description:`The working directory.`,type:`string`,required:!1,variadic:!1},{name:`query`,title:`Query`,description:`Text to match against names, descriptions, and tags.`,type:`string`,required:!1,variadic:!1},{name:`limit`,title:`Limit`,description:`Maximum number of results.`,type:`number`,required:!1,variadic:!1},{name:`offset`,title:`Offset`,description:`Number of results to skip.`,type:`number`,required:!1,variadic:!1},{name:`json`,title:`JavaScript Object Notation`,description:`Output machine-readable JSON.`,type:`boolean`,required:!1,variadic:!1},{name:`registry`,title:`Registry`,description:`Registry
|
|
39
|
+
Options: --cwd (string), --query (string), --limit (number), --offset (number), --json (boolean), --registry (string)`,toolName:`search`,options:[{name:`cwd`,title:`Current Working Directory`,description:`The working directory.`,type:`string`,required:!1,variadic:!1},{name:`query`,title:`Query`,description:`Text to match against names, descriptions, and tags.`,type:`string`,required:!1,variadic:!1},{name:`limit`,title:`Limit`,description:`Maximum number of results.`,type:`number`,required:!1,variadic:!1},{name:`offset`,title:`Offset`,description:`Number of results to skip.`,type:`number`,required:!1,variadic:!1},{name:`json`,title:`JavaScript Object Notation`,description:`Output machine-readable JSON.`,type:`boolean`,required:!1,variadic:!1},{name:`registry`,title:`Registry`,description:`Registry URL.`,type:`string`,required:!1,variadic:!1}],args:[]},{id:`search-components`,name:`search-components`,path:`search-components`,segments:[`search-components`],title:`Search Components`,description:`Search design-system components by name, title, category, description and tags. Returns name, files, dependencies and usage examples for each match.
|
|
41
40
|
Options: --terms (string, required), --limit (number)`,toolName:`search-components`,options:[{name:`terms`,title:`Terms`,description:`One or more search terms (fuzzy match). Example: ["button", "modal", "select"].`,type:`string`,required:!0,variadic:!0},{name:`limit`,title:`Limit`,description:`Maximum matches per term.`,type:`number`,required:!1,variadic:!1}],args:[]},{id:`search-fonts`,name:`search-fonts`,path:`search-fonts`,segments:[`search-fonts`],title:`Search Fonts`,description:`Search design-system fonts by name, family, role, tags and category. Returns the CSS font-family stack, weights and files for each match.
|
|
42
41
|
Options: --terms (string, required), --limit (number)`,toolName:`search-fonts`,options:[{name:`terms`,title:`Terms`,description:`One or more search terms (fuzzy match). Example: ["heading", "mono", "inter"].`,type:`string`,required:!0,variadic:!0},{name:`limit`,title:`Limit`,description:`Maximum matches per term.`,type:`number`,required:!1,variadic:!1}],args:[]},{id:`search-icons`,name:`search-icons`,path:`search-icons`,segments:[`search-icons`],title:`Search Icons`,description:`Search design-system icons by name, title, aliases, tags and category. Returns name and asset files for each match.
|
|
43
42
|
Options: --terms (string, required), --limit (number)`,toolName:`search-icons`,options:[{name:`terms`,title:`Terms`,description:`One or more search terms (fuzzy match). Example: ["search", "folder", "user"].`,type:`string`,required:!0,variadic:!0},{name:`limit`,title:`Limit`,description:`Maximum matches per term.`,type:`number`,required:!1,variadic:!1}],args:[]},{id:`search-tokens`,name:`search-tokens`,path:`search-tokens`,segments:[`search-tokens`],title:`Search Tokens`,description:`Search design tokens by name, path, description, type and value. Returns compact JSON records with name and value for each match; set --include-metadata for descriptions and CSS variables.
|
|
44
43
|
Options: --terms (string, required), --limit (number), --include-metadata (boolean)`,toolName:`search-tokens`,options:[{name:`terms`,title:`Terms`,description:`One or more search terms (fuzzy match). Example: ["spacing", "color.text", "background"].`,type:`string`,required:!0,variadic:!0},{name:`limit`,title:`Limit`,description:`Maximum matches per term.`,type:`number`,required:!1,variadic:!1},{name:`includeMetadata`,title:`Include Metadata`,description:`Include type, description, hex value and CSS variable in each result.`,type:`boolean`,required:!1,variadic:!1}],args:[]},{id:`update`,name:`update`,path:`update`,segments:[`update`],title:`Update`,description:`A command for checking and updating the version of the Cyclone User Interface command-line interface application.
|
|
45
44
|
Options: --latest (boolean), --version (string)`,toolName:`update`,options:[{name:`latest`,title:`Latest`,description:`Whether to update to the latest version.`,type:`boolean`,required:!1,variadic:!1},{name:`version`,title:`Version`,description:`A specific application version to update to.`,type:`string`,required:!1,variadic:!1}],args:[]},{id:`view`,name:`view`,path:`view`,segments:[`view`],title:`View Registry Components`,description:`View component metadata and files from the registry.
|
|
46
45
|
Options: --cwd (string), --registry (string)
|
|
47
|
-
Args: components:string (required)[]`,toolName:`view`,options:[{name:`cwd`,title:`Current Working Directory`,description:`The working directory.`,type:`string`,required:!1,variadic:!1},{name:`registry`,title:`Registry`,description:`Registry
|
|
46
|
+
Args: components:string (required)[]`,toolName:`view`,options:[{name:`cwd`,title:`Current Working Directory`,description:`The working directory.`,type:`string`,required:!1,variadic:!1},{name:`registry`,title:`Registry`,description:`Registry URL.`,type:`string`,required:!1,variadic:!1}],args:[{name:`components`,title:`Components`,description:`Component names to view.`,type:`string`,required:!0,variadic:!0}]}];a({title:`MCP Server`,description:`Starts an MCP stdio server that exposes this Shell Shock application's commands as tools.`,icon:`🔌`,tags:[`Utility`,`MCP`]}),o({includeSelf:{type:`boolean`,title:`Include MCP Command`,description:`Whether to expose the MCP command itself as a tool in the generated server.`,default:!1,required:!1,variadic:!1}});function d(e){return e.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).replace(/[^a-z0-9-]/gi,`-`).replace(/-{2,}/g,`-`).replace(/^-+|-+$/g,``).toLowerCase()}function f(e){let t=[];for(let[n,r]of Object.entries(e??{})){if(!/^[a-zA-Z0-9_-]+$/.test(n))continue;let e=d(n);if(e&&r!=null){if(typeof r==`boolean`)t.push(r?`--`+e:`--no-`+e);else if(Array.isArray(r))for(let n of r)n!=null&&t.push(`--`+e,String(n));else t.push(`--`+e,String(r))}}return t}async function p(e){let n=/* @__PURE__ */ new Map,r=/* @__PURE__ */ new Set,i=e.includeSelf===!0;for(let e of u){if(!i&&e.path===`mcp`)continue;let t=e.toolName;if(r.has(t)){let e=2;for(;r.has(t+`_`+String(e));)e+=1;t=t+`_`+String(e)}r.add(t),n.set(t,e)}let a=new s({name:`cyclone-ui-shell-shock`,version:`1.0.0`});for(let[e,r]of n.entries())a.registerTool(e,{title:r.title,description:r.description,inputSchema:l.object({options:l.record(l.unknown()).optional(),args:l.array(l.string()).optional(),cwd:l.string().optional(),timeoutMs:l.number().int().positive().optional()})},async e=>{let n=[...r.segments,...f(e.options??{}),`--no-banner`,`--quiet`,...e.args??[]],i=process.argv.length>=2?[process.argv[0],process.argv[1],...n]:[`mcp`,...n],a=await t(i,{cwd:e.cwd,timeoutMs:e.timeoutMs??3e5}),o=(a.code??0)!==0,s=[a.stdout,o?a.stderr:``].filter(Boolean).join(`
|
|
48
47
|
`).trim();return{isError:o,content:[{type:`text`,text:s.length>0?s:o?`Command failed with exit code `+String(a.code??1)+`.`:`Command completed successfully.`}]}});await a.connect(new c)}async function m(t=e()){let a={...r(),includeSelf:!1};for(let e=0;e<t.slice(0).length;e++){let n=t[e].length>3&&t[e].startsWith(`--`)?`--${t[e].slice(2).replaceAll(`-`,``).toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``)}`:t[e].length>2&&t[e].startsWith(`-`)?`-${t[e].slice(1).replaceAll(`-`,``)}`:t[e];if(n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``).startsWith(`includeself=`)||n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``)===`includeself`||n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``).startsWith(`includeself=`)||n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``)===`includeself`){if(/^--?(includeself)=/.test(`-`+n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``))){let e=n.replace(/^--?(includeself)=/,``).trim().replace(/^("|')/,``).replace(/("|')$/,``).toLowerCase();a.includeSelf=!!e&&e.toLowerCase()!==`false`&&e.toLowerCase()!==`f`&&e.toLowerCase()!==`no`&&e!==`n`&&e.toLowerCase()!==`0`&&e.toLowerCase()!==`off`&&e!==`disable`&&e.toLowerCase()!==`disabled`&&e.toLowerCase()!==`never`&&(Number.isNaN(Number.parseFloat(e))||Number.parseFloat(e)>0)}else a.includeSelf=!0}}return a.help?i():n(`mcp`,[`mcp`],[a],p)}export{m as handler};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{D as e,S as t,h as n,p as r,t as i,x as a}from"./console-
|
|
1
|
+
import{D as e,S as t,h as n,p as r,t as i,x as a}from"./console-C3z2Y61E.mjs";function o(){e(`${i(t.heading.secondary(`Tags: `))} ${t.tags.designSystem?t.tags.designSystem(r(` Design System `)):t.tags.default(r(` Design System `))}`,{padding:0}),e(``),e(i(t.heading.secondary(`Usage:`))),e(t.body.secondary(`${t.usage.bin(`>_ cyclone-ui`)} ${t.usage.command(`plan`)} ${t.usage.options(`[options]`)}`),{padding:0}),e(``),e(i(t.heading.secondary(`Options:`))),a([[{value:t.body.primary(`--color, --colors`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Force colored terminal output (env: CYCLONE_UI_COLOR, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--no-color, --no-colors`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Force disable colored terminal output (env: CYCLONE_UI_NO_COLOR, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--components <components...>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Search terms for components.`),align:`left`,border:`none`}],[{value:t.body.primary(`--fonts <fonts...>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Search terms for fonts.`),align:`left`,border:`none`}],[{value:t.body.primary(`-?, -h, --help`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Show help information (default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--icons <icons...>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Search terms for icons.`),align:`left`,border:`none`}],[{value:t.body.primary(`-i, --interact, --interactive`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Enable interactive mode - will be set to false if running in a CI pipeline (env: CYCLONE_UI_INTERACTIVE, default: true).`),align:`left`,border:`none`}],[{value:t.body.primary(`--no-interactive, --non-interactive`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Disable interactive mode - will be set to true if running in a CI pipeline (env: CYCLONE_UI_NON_INTERACTIVE, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--limit <limit>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Maximum matches per term for each list (default: 2).`),align:`left`,border:`none`}],[{value:t.body.primary(`--hide-banner, --no-banner`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Do not display the application banner displayed while running the CLI - will be set to true if running in a CI pipeline (env: CYCLONE_UI_NO_BANNER, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--no-color, --no-colors`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Force disable colored terminal output (env: CYCLONE_UI_NO_COLOR, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--no-interactive, --non-interactive`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Disable interactive mode - will be set to true if running in a CI pipeline (env: CYCLONE_UI_NON_INTERACTIVE, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--quiet`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Suppress command decorations and diagnostic messages (default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--tokens <tokens...>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Search terms for design tokens.`),align:`left`,border:`none`}],[{value:t.body.primary(`-V, --verbose`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Enable verbose output (env: CYCLONE_UI_VERBOSE, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`-v, --version`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Show the version of the application (default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`-y, --yes`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Skip all prompts by answering yes to all of them - will be set to true if running in a CI pipeline (env: CYCLONE_UI_YES, default: false).`),align:`left`,border:`none`}]]),e(``),e(t.body.tertiary(`More information can be found in the Plan command documentation at ${n(`https://docs.cyclone-ui.com/reference/cli/plan`)}${t.body.tertiary(`.`)}`),{padding:0}),e(``)}export{o as t};
|
package/dist/plan.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{A as e,B as t,D as n,F as r,G as i,I as a,K as o,L as s,N as c,S as l,U as u,V as d,_ as f,j as p,k as m,n as h,t as g,y as _,z as v}from"./console-
|
|
1
|
+
import{A as e,B as t,D as n,F as r,G as i,I as a,K as o,L as s,N as c,S as l,U as u,V as d,_ as f,j as p,k as m,n as h,t as g,y as _,z as v}from"./console-C3z2Y61E.mjs";import{a as y}from"./prompts-e3s_BIKU.mjs";import{t as b}from"./update-wulHGaSU.mjs";import{t as x}from"./design-system-CNVVaZ1M.mjs";import{t as S}from"./plan-ZWeXBx16.mjs";import{isSearchError as C,plan as w}from"@razorwind/shell-shock/runtime";async function T(i=500){if(t().get(`is-banner-displayed`)||r(`no-banner`)||r(`hide-banner`)||p)return;t().set(`is-banner-displayed`,!0),n(``),n(h.banner.outline.primary(`┏`)+h.banner.outline.primary(`━`.repeat(6))+` `+l.banner.header.primary(`⬤`)+` `+h.banner.outline.primary(`━`)+` `+g(l.banner.header.primary(`Cyclone CLI v0.6.14`))+` `+h.banner.outline.primary(`━`.repeat(Math.max(m().columns-33,0)))+h.banner.outline.primary(`┓`),{consoleFn:console.log});let o=Math.max(...y.map(e=>_(e).length))>Math.max(m().columns+30,20)?`Cyclone User Interface`:`\n${y.join(`
|
|
2
2
|
`)}\n`;f(o,Math.max(m().columns-30,20)).forEach(e=>{n(h.banner.outline.primary(`┃`)+` `.repeat(Math.max(Math.floor((m().columns-(_(e).length+2))/2),0))+g(l.banner.title.primary(e))+` `.repeat(Math.max(Math.ceil((m().columns-(_(e).length+2))/2),0))+h.banner.outline.primary(`┃`),{consoleFn:console.log})}),n(h.banner.outline.primary(`┃`)+` `.repeat(Math.max(Math.floor((m().columns-(_(`Plan`).length+2))/2),0))+g(l.banner.command.primary(`Plan`))+` `.repeat(Math.max(Math.ceil((m().columns-(_(`Plan`).length+2))/2),0))+h.banner.outline.primary(`┃`),{consoleFn:console.log}),f(g(l.banner.description.primary(`Search tokens, icons, components and fonts in one call to plan what to build. Provide terms for at least one list.`)),Math.max(60>m().columns/2?m().columns-6:m().columns-30,20)).forEach(e=>{n(h.banner.outline.primary(`┃`)+` `.repeat(Math.max(Math.floor((m().columns-(_(e).length+2))/2),0))+l.banner.description.primary(e)+` `.repeat(Math.max(Math.ceil((m().columns-(_(e).length+2))/2),0))+h.banner.outline.primary(`┃`),{consoleFn:console.log})}),n(h.banner.outline.primary(`┃`)+` `.repeat(Math.max(m().columns-2,0))+h.banner.outline.primary(`┃`),{consoleFn:console.log}),n(h.banner.outline.primary(`┗`)+h.banner.outline.primary(`━`.repeat(Math.max(m().columns-32,0)))+` `+g(l.banner.footer.primary(`https://cyclone-ui.com`))+` `+h.banner.outline.primary(`━`.repeat(6))+h.banner.outline.primary(`┛`),{consoleFn:console.log}),n(``),e&&!a()&&await c(i)}function E(e){process.stdout.write(`${typeof e==`string`?e:JSON.stringify(e,null,2)}\n`)}async function D(e){let t=w(x,{tokens:e.tokens,icons:e.icons,components:e.components,fonts:e.fonts,limit:e.limit});E(t),C(t)&&(process.exitCode=1)}async function O(t=s()){let c={...v(),tokens:[],icons:[],components:[],fonts:[],limit:2};for(let e=0;e<t.slice(0).length;e++){let n=t[e].length>3&&t[e].startsWith(`--`)?`--${t[e].slice(2).replaceAll(`-`,``).toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``)}`:t[e].length>2&&t[e].startsWith(`-`)?`-${t[e].slice(1).replaceAll(`-`,``)}`:t[e];if(n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``).startsWith(`tokens=`)||n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``)===`tokens`||n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``).startsWith(`tokens=`)||n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``)===`tokens`)c.tokens??=[],/^--?(tokens)=/.test(`-`+n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``))?c.tokens.push(...n.replace(/^--?(tokens)=/,``).split(`,`).map(e=>e.trim().replace(/^("|')/,``).replace(/("|')$/,``)).filter(Boolean)):t.length>e+1&&c.tokens.push(...t[++e].split(`,`).map(e=>e.trim().replace(/^("|')/,``).replace(/("|')$/,``)).filter(Boolean));else if(n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``).startsWith(`icons=`)||n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``)===`icons`||n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``).startsWith(`icons=`)||n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``)===`icons`)c.icons??=[],/^--?(icons)=/.test(`-`+n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``))?c.icons.push(...n.replace(/^--?(icons)=/,``).split(`,`).map(e=>e.trim().replace(/^("|')/,``).replace(/("|')$/,``)).filter(Boolean)):t.length>e+1&&c.icons.push(...t[++e].split(`,`).map(e=>e.trim().replace(/^("|')/,``).replace(/("|')$/,``)).filter(Boolean));else if(n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``).startsWith(`components=`)||n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``)===`components`||n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``).startsWith(`components=`)||n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``)===`components`)c.components??=[],/^--?(components)=/.test(`-`+n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``))?c.components.push(...n.replace(/^--?(components)=/,``).split(`,`).map(e=>e.trim().replace(/^("|')/,``).replace(/("|')$/,``)).filter(Boolean)):t.length>e+1&&c.components.push(...t[++e].split(`,`).map(e=>e.trim().replace(/^("|')/,``).replace(/("|')$/,``)).filter(Boolean));else if(n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``).startsWith(`fonts=`)||n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``)===`fonts`||n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``).startsWith(`fonts=`)||n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``)===`fonts`)c.fonts??=[],/^--?(fonts)=/.test(`-`+n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``))?c.fonts.push(...n.replace(/^--?(fonts)=/,``).split(`,`).map(e=>e.trim().replace(/^("|')/,``).replace(/("|')$/,``)).filter(Boolean)):t.length>e+1&&c.fonts.push(...t[++e].split(`,`).map(e=>e.trim().replace(/^("|')/,``).replace(/("|')$/,``)).filter(Boolean));else if(n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``).startsWith(`limit=`)||n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``)===`limit`||n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``).startsWith(`limit=`)||n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``)===`limit`){if(/^--?(limit)=/.test(`-`+n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``))){let e=Number(n.replace(/^--?(limit)=/,``).trim().replace(/^("|')/,``).replace(/("|')$/,``));Number.isNaN(e)||(c.limit=e)}else if(t.length>e+1){let n=Number(t[++e].trim().replace(/^("|')/,``).replace(/("|')$/,``));Number.isNaN(n)||(c.limit=n)}}}return r(`quiet`)||(await T(),await b()),!a()&&!r(`quiet`)&&(n(``),(o||i||u.LOG_LEVEL===`debug`)&&n(l.body.tertiary(`Debug mode is enabled. Additional debug information may be logged to the console.`))),e||c.limit&&Number.isNaN(c.limit)&&[].push(`Invalid numeric value provided for the "limit" option`),c.help?S():d(`plan`,[`plan`],[c],D)}export{O as handler};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import{A as e,B as t,C as n,D as r,F as i,I as a,N as o,S as s,_ as c,a as l,j as u,k as d,m as f,n as p,q as m,r as h,s as g,t as _,v,y}from"./console-
|
|
2
|
-
`)}\n`;c(l,Math.max(d().columns-30,20)).forEach(e=>{r(p.banner.outline.primary(`┃`)+` `.repeat(Math.max(Math.floor((d().columns-(y(e).length+2))/2),0))+_(s.banner.title.primary(e))+` `.repeat(Math.max(Math.ceil((d().columns-(y(e).length+2))/2),0))+p.banner.outline.primary(`┃`),{consoleFn:console.log})}),c(_(s.banner.description.primary(`🌀 A repository containing
|
|
1
|
+
import{A as e,B as t,C as n,D as r,F as i,I as a,N as o,S as s,_ as c,a as l,j as u,k as d,m as f,n as p,q as m,r as h,s as g,t as _,v,y}from"./console-C3z2Y61E.mjs";import b from"node:events";import{createInterface as x,emitKeypressEvents as S}from"node:readline";const C=[`▄█████ ▄▄ ▄▄ ▄▄▄▄ ▄▄ ▄▄▄ ▄▄ ▄▄ ▄▄▄▄▄ ██ ██ ▄▄▄▄ ▄▄▄▄▄ ▄▄▄▄ ██ ▄▄ ▄▄ ▄▄▄▄▄▄ ▄▄▄▄▄ ▄▄▄▄ ▄▄▄▄▄ ▄▄▄ ▄▄▄▄ ▄▄▄▄▄ `,`██ ▀███▀ ██▀▀▀ ██ ██▀██ ███▄██ ██▄▄ ██ ██ ███▄▄ ██▄▄ ██▄█▄ ██ ███▄██ ██ ██▄▄ ██▄█▄ ██▄▄ ██▀██ ██▀▀▀ ██▄▄ `,`▀█████ █ ▀████ ██▄▄▄ ▀███▀ ██ ▀██ ██▄▄▄ ▀████▀ ▄▄██▀ ██▄▄▄ ██ ██ ██ ██ ▀██ ██ ██▄▄▄ ██ ██ ██ ██▀██ ▀████ ██▄▄▄ `];async function w(n=500){if(t().get(`is-banner-displayed`)||i(`no-banner`)||i(`hide-banner`)||u)return;t().set(`is-banner-displayed`,!0),r(``),r(p.banner.outline.primary(`┏`)+p.banner.outline.primary(`━`.repeat(6))+` `+s.banner.header.primary(`⬤`)+` `+p.banner.outline.primary(`━`)+` `+_(s.banner.header.primary(`Cyclone CLI v0.6.14`))+` `+p.banner.outline.primary(`━`.repeat(Math.max(d().columns-33,0)))+p.banner.outline.primary(`┓`),{consoleFn:console.log});let l=Math.max(...C.map(e=>y(e).length))>Math.max(d().columns+30,20)?`Cyclone User Interface`:`\n${C.join(`
|
|
2
|
+
`)}\n`;c(l,Math.max(d().columns-30,20)).forEach(e=>{r(p.banner.outline.primary(`┃`)+` `.repeat(Math.max(Math.floor((d().columns-(y(e).length+2))/2),0))+_(s.banner.title.primary(e))+` `.repeat(Math.max(Math.ceil((d().columns-(y(e).length+2))/2),0))+p.banner.outline.primary(`┃`),{consoleFn:console.log})}),c(_(s.banner.description.primary(`🌀 A repository containing Tamagui based design components used by Storm Software. Like shadcn/ui, the components are copied into other repositories via the Cyclone CLI.`)),Math.max(60>d().columns/2?d().columns-6:d().columns-30,20)).forEach(e=>{r(p.banner.outline.primary(`┃`)+` `.repeat(Math.max(Math.floor((d().columns-(y(e).length+2))/2),0))+s.banner.description.primary(e)+` `.repeat(Math.max(Math.ceil((d().columns-(y(e).length+2))/2),0))+p.banner.outline.primary(`┃`),{consoleFn:console.log})}),r(p.banner.outline.primary(`┃`)+` `.repeat(Math.max(d().columns-2,0))+p.banner.outline.primary(`┃`),{consoleFn:console.log}),r(p.banner.outline.primary(`┗`)+p.banner.outline.primary(`━`.repeat(Math.max(d().columns-32,0)))+` `+_(s.banner.footer.primary(`https://cyclone-ui.com`))+` `+p.banner.outline.primary(`━`.repeat(6))+p.banner.outline.primary(`┛`),{consoleFn:console.log}),r(``),e&&!a()&&await o(n)}function T(e){return e}var E=class extends b{config;#e;#t;#n=!1;#r=!1;#i=!1;input=process.stdin;output=process.stdout;message=``;description=``;errorMessage=null;defaultErrorMessage=`An invalid value was provided`;isSubmitted=!1;isCancelled=!1;isInitial=!0;consoleOutput=``;consoleStatus=``;displayValue=``;validate=()=>!0;parse=e=>e;format=e=>String(e);mask=T;maskCompleted=this.mask;cursor=0;cursorHidden=!1;constructor(e){super(),this.config=e,e.input&&(this.input=e.input),e.output&&(this.output=e.output),e.defaultErrorMessage&&(this.defaultErrorMessage=e.defaultErrorMessage),e.description&&(this.description=e.description),e.validate&&(this.validate=e.validate),e.parse&&(this.parse=e.parse.bind(this)),e.format&&(this.format=e.format.bind(this)),e.maskCompleted&&(this.maskCompleted=e.maskCompleted),e.mask&&(this.mask=e.mask),e.timeout!==void 0&&!Number.isNaN(e.timeout)&&setTimeout(()=>{this.isCompleted||this.cancel()},e.timeout),this.message=e.message,this.#e=x({input:this.input,escapeCodeTimeout:50}),S(this.input,this.#e),this.input.isTTY&&this.input.setRawMode(!0),this.input.on(`keypress`,this.keypress.bind(this))}[Symbol.dispose](){this.close()}get value(){return this.#t||this.initialValue}get isError(){return!!this.errorMessage}get isSelect(){return!1}get isCompleted(){return this.isCancelled||this.isSubmitted}get isPlaceholder(){return this.displayValue===this.format(this.initialValue)&&!this.#r||!this.#n}get status(){return this.isSubmitted?``:` \n ${f(this.isError?s.prompt.description.error(c(this.errorMessage,`3/4`).join(`
|
|
3
3
|
`)):this.isCancelled?s.prompt.description.cancelled(c(`Input was cancelled by user`,`3/4`).join(`
|
|
4
4
|
`)):this.description?s.prompt.description.active(c(this.description,`3/4`).join(`
|
|
5
5
|
`)):``)}`}get isCursorAtStart(){return this.cursor<=0||this.isPlaceholder&&this.cursor<=1}get isCursorAtEnd(){return this.cursor>=this.displayValue.length||this.isPlaceholder&&this.cursor>=this.displayValue.length-1}changeValue(e){let t=this.value,n=e;n=e===void 0||e===``?this.initialValue:e,this.displayValue=this.mask(this.format(n)),this.#t=n,!this.#r&&this.#t!==this.initialValue&&(this.#r=!0),this.onChange(t),setTimeout(()=>{Promise.resolve(this.checkValidations(n)).then(()=>this.sync())},0),this.sync()}sync(){this.emit(`state`,{value:this.value,errorMessage:this.errorMessage,isError:this.isError,isSubmitted:this.isSubmitted,isCancelled:this.isCancelled,isCompleted:this.isCompleted}),this.render()}bell(){this.output.write(`\x07`)}onRender(){return this.isPlaceholder?s.prompt.input.disabled(this.displayValue):this.isError?s.prompt.input.error(this.displayValue):this.isSubmitted?s.prompt.input.submitted(this.maskCompleted(this.displayValue)):this.isCancelled?s.prompt.input.cancelled(this.maskCompleted(this.displayValue)):_(s.prompt.input.active(this.displayValue))}onChange(e){}onKeyPress(e,t){let n=this.getAction(t);n?typeof this[n]==`function`&&this[n](t):this.bell()}async close(){this.#i||=(this.output.write(l.show),this.input.removeListener(`keypress`,this.keypress),this.input.isTTY&&this.input.setRawMode(!1),this.#e.close(),this.emit(this.isSubmitted?`submit`:`cancel`,this.value),!0)}async checkValidations(e){let t=await this.validate(e);this.errorMessage=typeof t==`string`?t:typeof t==`boolean`?t?null:this.defaultErrorMessage:null}getAction(e){if(e.meta&&e.name!==`escape`)return!1;let t;return e.ctrl&&(e.name===`a`&&(t=`first`),e.name===`c`&&(t=`cancel`),e.name===`d`&&(t=`cancel`),e.name===`e`&&(t=`last`),e.name===`g`&&(t=`reset`)),e.name===`return`&&(t=`submit`),e.name===`enter`&&(t=`submit`),e.name===`backspace`&&(t=`backspace`),e.name===`delete`&&(t=`delete`),e.name===`cancel`&&(t=`cancel`),e.name===`escape`&&(t=`cancel`),e.name===`tab`&&(t=`next`),e.name===`pagedown`&&(t=`nextPage`),e.name===`pageup`&&(t=`prevPage`),e.name===`home`&&(t=`home`),e.name===`end`&&(t=`end`),e.name===`up`&&(t=`up`),e.name===`down`&&(t=`down`),e.name===`right`&&(t=`right`),e.name===`left`&&(t=`left`),t||!1}moveCursor(e){this.cursor+e<0?this.cursor=0:this.cursor+e>this.displayValue.length?this.cursor=this.displayValue.length:this.cursor+=e}backspace(){if(this.isCursorAtStart||this.displayValue===``)return this.bell();let e=this.isCursorAtEnd&&this.displayValue.length===this.cursor;this.changeValue(this.parse(`${this.displayValue.slice(0,this.cursor-1)}${this.displayValue.slice(this.cursor)}`)),this.moveCursor(e?-1:-2),this.sync()}delete(){if(this.isCursorAtEnd)return this.bell();this.changeValue(this.parse(`${this.displayValue.slice(0,this.cursor)}${this.displayValue.slice(this.cursor+1)}`)),this.isCursorAtStart||this.moveCursor(-1),this.sync()}reset(){this.changeValue(this.initialValue),this.cursor=0,this.errorMessage=null,this.isCancelled=!1,this.isSubmitted=!1,this.sync()}cancel(){this.errorMessage=null,this.isCancelled=!0,this.isSubmitted=!1,this.sync(),this.output.write(`
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{C as e,D as t,M as n,S as r,_ as i,f as a,h as o,p as s,t as c,u as l,x as u}from"./console-C3z2Y61E.mjs";function d(){t(c(r.heading.secondary(`Common Options:`))),u([[{value:r.body.primary(`--color, --colors`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Force colored terminal output (env: CYCLONE_UI_COLOR, default: false).`),align:`left`,border:`none`}],[{value:r.body.primary(`--no-color, --no-colors`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Force disable colored terminal output (env: CYCLONE_UI_NO_COLOR, default: false).`),align:`left`,border:`none`}],[{value:r.body.primary(`-?, -h, --help`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Show help information (default: false).`),align:`left`,border:`none`}],[{value:r.body.primary(`-i, --interact, --interactive`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Enable interactive mode - will be set to false if running in a CI pipeline (env: CYCLONE_UI_INTERACTIVE, default: true).`),align:`left`,border:`none`}],[{value:r.body.primary(`--no-interactive, --non-interactive`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Disable interactive mode - will be set to true if running in a CI pipeline (env: CYCLONE_UI_NON_INTERACTIVE, default: false).`),align:`left`,border:`none`}],[{value:r.body.primary(`--hide-banner, --no-banner`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Do not display the application banner displayed while running the CLI - will be set to true if running in a CI pipeline (env: CYCLONE_UI_NO_BANNER, default: false).`),align:`left`,border:`none`}],[{value:r.body.primary(`--no-color, --no-colors`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Force disable colored terminal output (env: CYCLONE_UI_NO_COLOR, default: false).`),align:`left`,border:`none`}],[{value:r.body.primary(`--no-interactive, --non-interactive`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Disable interactive mode - will be set to true if running in a CI pipeline (env: CYCLONE_UI_NON_INTERACTIVE, default: false).`),align:`left`,border:`none`}],[{value:r.body.primary(`--quiet`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Suppress command decorations and diagnostic messages (default: false).`),align:`left`,border:`none`}],[{value:r.body.primary(`-V, --verbose`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Enable verbose output (env: CYCLONE_UI_VERBOSE, default: false).`),align:`left`,border:`none`}],[{value:r.body.primary(`-v, --version`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Show the version of the application (default: false).`),align:`left`,border:`none`}],[{value:r.body.primary(`-y, --yes`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Skip all prompts by answering yes to all of them - will be set to true if running in a CI pipeline (env: CYCLONE_UI_YES, default: false).`),align:`left`,border:`none`}]]),t(``),t(r.body.tertiary(`The following commands are available through the Cyclone User Interface command-line interface:`)),t(``),t(r.heading.primary((n?` ➕ `:``)+`${e(`Add`)}`)),t(``),t(r.body.tertiary(i(`Adds a new component to the project.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`add`)} ${r.usage.args(`<components...>`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`add`)} ${r.usage.options(`[options]`)} ${r.usage.args(`<components...>`)}`),{padding:0}),t(``),t(c(r.heading.secondary(`Options:`)),{padding:0}),u([[{value:r.body.primary(`--all`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Add every available component.`),align:`left`,border:`none`}],[{value:r.body.primary(`--cwd <cwd>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`The working directory.`),align:`left`,border:`none`}],[{value:r.body.primary(`--diff`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Show the changes as a diff without writing files.`),align:`left`,border:`none`}],[{value:r.body.primary(`--dry-run`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Preview changes without writing files.`),align:`left`,border:`none`}],[{value:r.body.primary(`--overwrite`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Overwrite existing files.`),align:`left`,border:`none`}],[{value:r.body.primary(`--path <path>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Override the configured component output path.`),align:`left`,border:`none`}],[{value:r.body.primary(`--registry <registry>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Override the configured registry URL.`),align:`left`,border:`none`}],[{value:r.body.primary(`--rsc`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Override React Server Component support for this installation.`),align:`left`,border:`none`}],[{value:r.body.primary(`--silent`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Mute non-essential output.`),align:`left`,border:`none`}],[{value:r.body.primary(`--view`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Show resolved file contents without writing files.`),align:`left`,border:`none`}]]),t(``),t(r.heading.primary((n?` ♿ `:``)+`${e(`Analyze Accessibility`)} - ${r.tags.designSystem?r.tags.designSystem(s(` Design System `)):r.tags.default(s(` Design System `))} ${r.tags.accessibility?r.tags.accessibility(s(` Accessibility `)):r.tags.default(s(` Accessibility `))}`)),t(``),t(r.body.tertiary(i(`Analyze a React/JSX source string (or file) for likely accessibility issues and hard-coded colors, suggesting the nearest design tokens for each color.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`analyze-a11y`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(``),t(c(r.heading.secondary(`Options:`)),{padding:0}),u([[{value:r.body.primary(`--code <code>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Source code of a React component or JSX snippet to analyze.`),align:`left`,border:`none`}],[{value:r.body.primary(`--component-name <component_name>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Optional label for the component under review.`),align:`left`,border:`none`}],[{value:r.body.primary(`--context <context>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Optional usage context (for example "in a form" or "modal").`),align:`left`,border:`none`}],[{value:r.body.primary(`--file <file>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Path to a source file to analyze (alternative to --code).`),align:`left`,border:`none`}],[{value:r.body.primary(`--pattern-analysis`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Run regex-based heuristics (unlabeled buttons, missing alt, …) (default: true).`),align:`left`,border:`none`}]]),t(``),t(r.heading.primary((n?` 🏗 `:``)+`${e(`Build`)}`)),t(``),t(r.body.tertiary(i(`Generate design tokens and build the resulting Tamagui config.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`build`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(``),t(c(r.heading.secondary(`Options:`)),{padding:0}),u([[{value:r.body.primary(`--config <config>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Path to the Razorwind configuration file.`),align:`left`,border:`none`}],[{value:r.body.primary(`--cwd <cwd>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`The working directory.`),align:`left`,border:`none`}],[{value:r.body.primary(`--output <output>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Output path for the generated Tamagui config.`),align:`left`,border:`none`}],[{value:r.body.primary(`--tokens <tokens>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Design token source path or glob.`),align:`left`,border:`none`}]]),t(``),t(r.heading.primary((n?` 🏗 `:``)+`${e(`Build Tokens`)}`)),t(``),t(r.body.tertiary(i(`Generate a Tamagui config file from design tokens.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`build-tokens`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(``),t(c(r.heading.secondary(`Options:`)),{padding:0}),u([[{value:r.body.primary(`--config <config>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Path to the Razorwind configuration file.`),align:`left`,border:`none`}],[{value:r.body.primary(`--cwd <cwd>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`The working directory.`),align:`left`,border:`none`}],[{value:r.body.primary(`--output <output>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Output path for the generated Tamagui config.`),align:`left`,border:`none`}],[{value:r.body.primary(`--tokens <tokens>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary("Design token source path or glob (overrides the configured `tokensPath`)."),align:`left`,border:`none`}]]),t(``),t(r.heading.primary((n?` ± `:``)+`${e(`Diff Components`)}`)),t(``),t(r.body.tertiary(i(`Compare installed components with the registry.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`diff`)} ${r.usage.args(`<components...>`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`diff`)} ${r.usage.options(`[options]`)} ${r.usage.args(`<components...>`)}`),{padding:0}),t(``),t(c(r.heading.secondary(`Options:`)),{padding:0}),u([[{value:r.body.primary(`--cwd <cwd>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`The working directory.`),align:`left`,border:`none`}],[{value:r.body.primary(`--registry <registry>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Registry URL.`),align:`left`,border:`none`}]]),t(``),t(r.heading.primary((n?` 🕮 `:``)+`${e(`Component Documentation`)}`)),t(``),t(r.body.tertiary(i(`Get documentation links for registry components.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`docs`)} ${r.usage.args(`<components...>`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`docs`)} ${r.usage.options(`[options]`)} ${r.usage.args(`<components...>`)}`),{padding:0}),t(``),t(c(r.heading.secondary(`Options:`)),{padding:0}),u([[{value:r.body.primary(`--cwd <cwd>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`The working directory.`),align:`left`,border:`none`}],[{value:r.body.primary(`--json`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Output machine-readable JSON.`),align:`left`,border:`none`}],[{value:r.body.primary(`--registry <registry>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Registry URL.`),align:`left`,border:`none`}]]),t(``),t(r.heading.primary((n?` 📖 `:``)+`${e(`Guidelines`)} - ${r.tags.designSystem?r.tags.designSystem(s(` Design System `)):r.tags.default(s(` Design System `))} ${r.tags.docs?r.tags.docs(s(` Docs `)):r.tags.default(s(` Docs `))}`)),t(``),t(r.body.tertiary(i(`Return design-system guidelines as Markdown: an overview of the token groups, one section per component (with usage examples), typography, the design-system style guidelines, and any bundled guideline documents. Pass --terms to search; omit for the full set.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`guidelines`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(``),t(c(r.heading.secondary(`Options:`)),{padding:0}),u([[{value:r.body.primary(`--limit <limit>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Maximum matches per term when searching (default: 1).`),align:`left`,border:`none`}],[{value:r.body.primary(`--terms <terms...>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Search terms matched against guideline keywords, titles and body (fuzzy).`),align:`left`,border:`none`}]]),t(``),t(r.heading.primary((n?` ⓘ `:``)+`${e(`Project Information`)}`)),t(``),t(r.body.tertiary(i(`Show Cyclone UI project configuration and installed components.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`info`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(``),t(c(r.heading.secondary(`Options:`)),{padding:0}),u([[{value:r.body.primary(`--cwd <cwd>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`The working directory.`),align:`left`,border:`none`}],[{value:r.body.primary(`--json`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Output machine-readable JSON.`),align:`left`,border:`none`}]]),t(``),t(r.heading.primary((n?` 🌀 `:``)+`${e(`Initialize`)}`)),t(``),t(r.body.tertiary(i(`Initialize Cyclone UI in a project.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`init`)} ${r.usage.args(`<components...>`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`init`)} ${r.usage.options(`[options]`)} ${r.usage.args(`<components...>`)}`),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`create`)} ${r.usage.args(`<components...>`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`create`)} ${r.usage.options(`[options]`)} ${r.usage.args(`<components...>`)}`),{padding:0}),t(``),t(c(r.heading.secondary(`Options:`)),{padding:0}),u([[{value:r.body.primary(`--cwd <cwd>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`The working directory.`),align:`left`,border:`none`}],[{value:r.body.primary(`--force`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Overwrite an existing Cyclone configuration.`),align:`left`,border:`none`}],[{value:r.body.primary(`--path <path>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Component output path, relative to the working directory.`),align:`left`,border:`none`}],[{value:r.body.primary(`--registry <registry>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Registry URL.`),align:`left`,border:`none`}],[{value:r.body.primary(`--rsc`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Enable React Server Component support in components.`),align:`left`,border:`none`}],[{value:r.body.primary(`--silent`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Mute non-essential output.`),align:`left`,border:`none`}]]),t(``),t(r.heading.primary((n?` 🧩 `:``)+`${e(`List Components`)} - ${r.tags.designSystem?r.tags.designSystem(s(` Design System `)):r.tags.default(s(` Design System `))} ${r.tags.components?r.tags.components(s(` Components `)):r.tags.default(s(` Components `))}`)),t(``),t(r.body.tertiary(i(`Return every design-system component record. Large output - prefer search-components for normal use.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`list-components`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(``),t(r.heading.primary((n?` 🔤 `:``)+`${e(`List Fonts`)} - ${r.tags.designSystem?r.tags.designSystem(s(` Design System `)):r.tags.default(s(` Design System `))} ${r.tags.fonts?r.tags.fonts(s(` Fonts `)):r.tags.default(s(` Fonts `))}`)),t(``),t(r.body.tertiary(i(`Return every design-system font record.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`list-fonts`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(``),t(r.heading.primary((n?` 🖼 `:``)+`${e(`List Icons`)} - ${r.tags.designSystem?r.tags.designSystem(s(` Design System `)):r.tags.default(s(` Design System `))} ${r.tags.icons?r.tags.icons(s(` Icons `)):r.tags.default(s(` Icons `))}`)),t(``),t(r.body.tertiary(i(`Return every design-system icon record. Large output - prefer search-icons for normal use.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`list-icons`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(``),t(r.heading.primary((n?` 🎨 `:``)+`${e(`List Tokens`)} - ${r.tags.designSystem?r.tags.designSystem(s(` Design System `)):r.tags.default(s(` Design System `))} ${r.tags.tokens?r.tags.tokens(s(` Tokens `)):r.tags.default(s(` Tokens `))}`)),t(``),t(r.body.tertiary(i(`Return every design token (name, value, type, description, CSS variable). Large output - prefer search-tokens for normal use.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`list-tokens`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(``),t(r.heading.primary((n?` 🗺 `:``)+`${e(`Plan`)} - ${r.tags.designSystem?r.tags.designSystem(s(` Design System `)):r.tags.default(s(` Design System `))}`)),t(``),t(r.body.tertiary(i(`Search tokens, icons, components and fonts in one call to plan what to build. Provide terms for at least one list.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`plan`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(``),t(c(r.heading.secondary(`Options:`)),{padding:0}),u([[{value:r.body.primary(`--components <components...>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Search terms for components.`),align:`left`,border:`none`}],[{value:r.body.primary(`--fonts <fonts...>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Search terms for fonts.`),align:`left`,border:`none`}],[{value:r.body.primary(`--icons <icons...>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Search terms for icons.`),align:`left`,border:`none`}],[{value:r.body.primary(`--limit <limit>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Maximum matches per term for each list (default: 2).`),align:`left`,border:`none`}],[{value:r.body.primary(`--tokens <tokens...>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Search terms for design tokens.`),align:`left`,border:`none`}]]),t(``),t(r.heading.primary(`${e(`Registry Commands`)}`)),t(``),t(r.body.tertiary(i(`A collection of available Registry commands that are included in the Cyclone User Interface command-line application.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`registry`)} ${r.usage.dynamic(`<command>`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(``),t(c(r.heading.secondary(`Commands:`)),{padding:0}),u([[{value:r.body.primary(`validate`),align:`right`,border:`none`},{value:r.body.tertiary(`Validate a local registry manifest and its source files.`),align:`left`,border:`none`}]]),t(``),t(r.heading.primary((n?` ⌕ `:``)+`${e(`Search Registry`)}`)),t(``),t(r.body.tertiary(i(`Search components in the Cyclone registry.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`search`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`list`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(``),t(c(r.heading.secondary(`Options:`)),{padding:0}),u([[{value:r.body.primary(`--cwd <cwd>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`The working directory.`),align:`left`,border:`none`}],[{value:r.body.primary(`--json`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Output machine-readable JSON.`),align:`left`,border:`none`}],[{value:r.body.primary(`--limit <limit>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Maximum number of results.`),align:`left`,border:`none`}],[{value:r.body.primary(`--offset <offset>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Number of results to skip.`),align:`left`,border:`none`}],[{value:r.body.primary(`--query <query>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Text to match against names, descriptions, and tags.`),align:`left`,border:`none`}],[{value:r.body.primary(`--registry <registry>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Registry URL.`),align:`left`,border:`none`}]]),t(``),t(r.heading.primary((n?` 🧩 `:``)+`${e(`Search Components`)} - ${r.tags.designSystem?r.tags.designSystem(s(` Design System `)):r.tags.default(s(` Design System `))} ${r.tags.components?r.tags.components(s(` Components `)):r.tags.default(s(` Components `))}`)),t(``),t(r.body.tertiary(i(`Search design-system components by name, title, category, description and tags. Returns name, files, dependencies and usage examples for each match.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`search-components`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(``),t(c(r.heading.secondary(`Options:`)),{padding:0}),u([[{value:r.body.primary(`--limit <limit>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Maximum matches per term (default: 2).`),align:`left`,border:`none`}],[{value:r.body.primary(`--terms <terms...>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`One or more search terms (fuzzy match).`),align:`left`,border:`none`}]]),t(``),t(r.heading.primary((n?` 🔤 `:``)+`${e(`Search Fonts`)} - ${r.tags.designSystem?r.tags.designSystem(s(` Design System `)):r.tags.default(s(` Design System `))} ${r.tags.fonts?r.tags.fonts(s(` Fonts `)):r.tags.default(s(` Fonts `))}`)),t(``),t(r.body.tertiary(i(`Search design-system fonts by name, family, role, tags and category. Returns the CSS font-family stack, weights and files for each match.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`search-fonts`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(``),t(c(r.heading.secondary(`Options:`)),{padding:0}),u([[{value:r.body.primary(`--limit <limit>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Maximum matches per term (default: 2).`),align:`left`,border:`none`}],[{value:r.body.primary(`--terms <terms...>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`One or more search terms (fuzzy match).`),align:`left`,border:`none`}]]),t(``),t(r.heading.primary((n?` 🖼 `:``)+`${e(`Search Icons`)} - ${r.tags.designSystem?r.tags.designSystem(s(` Design System `)):r.tags.default(s(` Design System `))} ${r.tags.icons?r.tags.icons(s(` Icons `)):r.tags.default(s(` Icons `))}`)),t(``),t(r.body.tertiary(i(`Search design-system icons by name, title, aliases, tags and category. Returns name and asset files for each match.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`search-icons`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(``),t(c(r.heading.secondary(`Options:`)),{padding:0}),u([[{value:r.body.primary(`--limit <limit>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Maximum matches per term (default: 2).`),align:`left`,border:`none`}],[{value:r.body.primary(`--terms <terms...>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`One or more search terms (fuzzy match).`),align:`left`,border:`none`}]]),t(``),t(r.heading.primary((n?` 🎨 `:``)+`${e(`Search Tokens`)} - ${r.tags.designSystem?r.tags.designSystem(s(` Design System `)):r.tags.default(s(` Design System `))} ${r.tags.tokens?r.tags.tokens(s(` Tokens `)):r.tags.default(s(` Tokens `))}`)),t(``),t(r.body.tertiary(i(`Search design tokens by name, path, description, type and value. Returns compact JSON records with name and value for each match; set --include-metadata for descriptions and CSS variables.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`search-tokens`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(``),t(c(r.heading.secondary(`Options:`)),{padding:0}),u([[{value:r.body.primary(`--include-metadata`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Include type, description, hex value and CSS variable in each result (default: false).`),align:`left`,border:`none`}],[{value:r.body.primary(`--limit <limit>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Maximum matches per term (default: 2).`),align:`left`,border:`none`}],[{value:r.body.primary(`--terms <terms...>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`One or more search terms (fuzzy match). Example: ["spacing", "color.`),align:`left`,border:`none`}]]),t(``),t(r.heading.primary((n?` ◉ `:``)+`${e(`View Registry Components`)}`)),t(``),t(r.body.tertiary(i(`View component metadata and files from the registry.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`view`)} ${r.usage.args(`<components...>`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`view`)} ${r.usage.options(`[options]`)} ${r.usage.args(`<components...>`)}`),{padding:0}),t(``),t(c(r.heading.secondary(`Options:`)),{padding:0}),u([[{value:r.body.primary(`--cwd <cwd>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`The working directory.`),align:`left`,border:`none`}],[{value:r.body.primary(`--registry <registry>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Registry URL.`),align:`left`,border:`none`}]]),t(``),t(r.heading.primary((n?` 🗃 `:``)+`${e(`Changelog`)} - ${r.tags.utility?r.tags.utility(s(` Utility `)):r.tags.default(s(` Utility `))}`)),t(``),t(r.body.tertiary(i(`Display the Cyclone User Interface changelog.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`changelog`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(``),t(r.heading.primary((n?` 🖵 `:``)+`${e(`Completions`)} - ${r.tags.utility?r.tags.utility(s(` Utility `)):r.tags.default(s(` Utility `))}`)),t(``),t(r.body.tertiary(i(`Commands for generating shell completion scripts for Cyclone User Interface.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`completions`)} ${r.usage.dynamic(`<command>`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(``),t(c(r.heading.secondary(`Commands:`)),{padding:0}),u([[{value:r.body.primary(`bash`),align:`right`,border:`none`},{value:r.body.tertiary(`Commands to setup bash completions for the Cyclone User Interface command-line interface.`),align:`left`,border:`none`}],[{value:r.body.primary(`fish`),align:`right`,border:`none`},{value:r.body.tertiary(`Commands to setup Fish completions for the Cyclone User Interface command-line interface.`),align:`left`,border:`none`}],[{value:r.body.primary(`powershell`),align:`right`,border:`none`},{value:r.body.tertiary(`Commands to setup PowerShell completions for the Cyclone User Interface command-line interface.`),align:`left`,border:`none`}],[{value:r.body.primary(`zsh`),align:`right`,border:`none`},{value:r.body.tertiary(`Commands to setup Zsh completions for the Cyclone User Interface command-line interface.`),align:`left`,border:`none`}]]),t(``),t(r.heading.primary((n?` 🛈 `:``)+`${e(`Help`)} - ${r.tags.utility?r.tags.utility(s(` Utility `)):r.tags.default(s(` Utility `))}`)),t(``),t(r.body.tertiary(i(`Display command usage details and other useful information to the user.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`help`)} ${r.usage.args(`<commands...>`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`help`)} ${r.usage.options(`[options]`)} ${r.usage.args(`<commands...>`)}`),{padding:0}),t(``),t(r.heading.primary((n?` 🔌 `:``)+`${e(`MCP Server`)} - ${r.tags.ai?r.tags.ai(s(` AI `)):r.tags.default(s(` AI `))} ${r.tags.utility?r.tags.utility(s(` Utility `)):r.tags.default(s(` Utility `))} ${r.tags.mcp?r.tags.mcp(s(` MCP `)):r.tags.default(s(` MCP `))}`)),t(``),t(r.body.tertiary(i(`Starts an MCP stdio server that exposes this Shell Shock application's commands as tools.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`mcp`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(``),t(c(r.heading.secondary(`Options:`)),{padding:0}),u([[{value:r.body.primary(`--include-self`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Whether to expose the MCP command itself as a tool in the generated server (default: false).`),align:`left`,border:`none`}]]),t(``),t(r.heading.primary((n?` 🖒 `:``)+`${e(`Update`)} - ${r.tags.utility?r.tags.utility(s(` Utility `)):r.tags.default(s(` Utility `))}`)),t(``),t(r.body.tertiary(i(`A command for checking and updating the version of the Cyclone User Interface command-line interface application.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`update`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`upgrade`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(``),t(c(r.heading.secondary(`Options:`)),{padding:0}),u([[{value:r.body.primary(`--latest`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Whether to update to the latest version (default: false).`),align:`left`,border:`none`}],[{value:r.body.primary(`--version <version>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`A specific application version to update to (default: "latest").`),align:`left`,border:`none`}]]),t(``),t(r.body.tertiary(`More information can be found in the Cyclone User Interface documentation at ${o(`https://docs.cyclone-ui.com/reference/cli`)}${r.body.tertiary(`.`)}`),{padding:0}),t(``),l(`Running a specific command with the help flag (via: ${a(`cyclone-ui <command> --help`)}) or the help command with the specific command as arguments (via: ${a(`cyclone-ui help <command>`)}) will provide additional information that is specific to that command.`),t(``)}function f(){t(`${c(r.heading.secondary(`Tags: `))} ${r.tags.utility?r.tags.utility(s(` Utility `)):r.tags.default(s(` Utility `))}`,{padding:0}),t(c(r.heading.secondary(`Common Options:`))),u([]),t(``),t(r.body.tertiary(`The following commands are available through the Cyclone User Interface command-line interface:`)),t(``),t(r.heading.primary((n?` 🖵 `:``)+`${e(`Completions - Bash`)} - ${r.tags.utility?r.tags.utility(s(` Utility `)):r.tags.default(s(` Utility `))}`)),t(``),t(r.body.tertiary(i(`Commands to setup bash completions for the Cyclone User Interface command-line interface.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`completions`)} ${r.usage.command(`bash`)} ${r.usage.dynamic(`<command>`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(``),t(c(r.heading.secondary(`Commands:`)),{padding:0}),u([[{value:r.body.primary(`config`),align:`right`,border:`none`},{value:r.body.tertiary(`Update the current system's bash shell configuration to include completions for the Cyclone User Interface command-line interface.`),align:`left`,border:`none`}],[{value:r.body.primary(`script`),align:`right`,border:`none`},{value:r.body.tertiary(`Generate a bash completion script for the Cyclone User Interface command-line interface.`),align:`left`,border:`none`}]]),t(``),t(r.heading.primary((n?` 🖵 `:``)+`${e(`Completions - Fish`)} - ${r.tags.utility?r.tags.utility(s(` Utility `)):r.tags.default(s(` Utility `))}`)),t(``),t(r.body.tertiary(i(`Commands to setup Fish completions for the Cyclone User Interface command-line interface.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`completions`)} ${r.usage.command(`fish`)} ${r.usage.dynamic(`<command>`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(``),t(c(r.heading.secondary(`Commands:`)),{padding:0}),u([[{value:r.body.primary(`config`),align:`right`,border:`none`},{value:r.body.tertiary(`Update the current system's Fish shell configuration to include completions for the Cyclone User Interface command-line interface.`),align:`left`,border:`none`}],[{value:r.body.primary(`script`),align:`right`,border:`none`},{value:r.body.tertiary(`Generate a Fish completion script for the Cyclone User Interface command-line interface.`),align:`left`,border:`none`}]]),t(``),t(r.heading.primary((n?` 🖵 `:``)+`${e(`Completions - PowerShell`)} - ${r.tags.utility?r.tags.utility(s(` Utility `)):r.tags.default(s(` Utility `))}`)),t(``),t(r.body.tertiary(i(`Commands to setup PowerShell completions for the Cyclone User Interface command-line interface.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`completions`)} ${r.usage.command(`powershell`)} ${r.usage.dynamic(`<command>`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(``),t(c(r.heading.secondary(`Commands:`)),{padding:0}),u([[{value:r.body.primary(`config`),align:`right`,border:`none`},{value:r.body.tertiary(`Update the current system's PowerShell configuration to include completions for the Cyclone User Interface command-line interface.`),align:`left`,border:`none`}],[{value:r.body.primary(`script`),align:`right`,border:`none`},{value:r.body.tertiary(`Generate a PowerShell completion script for the Cyclone User Interface command-line interface.`),align:`left`,border:`none`}]]),t(``),t(r.heading.primary((n?` 🖵 `:``)+`${e(`Completions - Zsh`)} - ${r.tags.utility?r.tags.utility(s(` Utility `)):r.tags.default(s(` Utility `))}`)),t(``),t(r.body.tertiary(i(`Commands to setup Zsh completions for the Cyclone User Interface command-line interface.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`completions`)} ${r.usage.command(`zsh`)} ${r.usage.dynamic(`<command>`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(``),t(c(r.heading.secondary(`Commands:`)),{padding:0}),u([[{value:r.body.primary(`config`),align:`right`,border:`none`},{value:r.body.tertiary(`Update the current system's Zsh shell configuration to include completions for the Cyclone User Interface command-line interface.`),align:`left`,border:`none`}],[{value:r.body.primary(`script`),align:`right`,border:`none`},{value:r.body.tertiary(`Generate a Zsh completion script for the Cyclone User Interface command-line interface.`),align:`left`,border:`none`}]]),t(``),t(r.body.tertiary(`More information can be found in the Completions command documentation at ${o(`https://docs.cyclone-ui.com/reference/cli/completions`)}${r.body.tertiary(`.`)}`),{padding:0}),t(``),l(`Running a specific command with the help flag (via: ${a(`cyclone-ui completions <command> --help`)}) or the help command with the specific command as arguments (via: ${a(`cyclone-ui completions help <command>`)}) will provide additional information that is specific to that command.`),t(``)}function p(){t(`${c(r.heading.secondary(`Tags: `))} ${r.tags.utility?r.tags.utility(s(` Utility `)):r.tags.default(s(` Utility `))}`,{padding:0}),t(c(r.heading.secondary(`Common Options:`))),u([]),t(``),t(r.body.tertiary(`The following commands are available through the Cyclone User Interface command-line interface:`)),t(``),t(r.heading.primary((n?` 🖵 `:``)+`${e(`Completions - Bash Configuration`)} - ${r.tags.utility?r.tags.utility(s(` Utility `)):r.tags.default(s(` Utility `))}`)),t(``),t(r.body.tertiary(i(`Update the current system's bash shell configuration to include completions for the Cyclone User Interface command-line interface.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`completions`)} ${r.usage.command(`bash`)} ${r.usage.command(`config`)} ${r.usage.args(`<path>`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`completions`)} ${r.usage.command(`bash`)} ${r.usage.command(`config`)} ${r.usage.options(`[options]`)} ${r.usage.args(`<path>`)}`),{padding:0}),t(``),t(c(r.heading.secondary(`Options:`)),{padding:0}),u([[{value:r.body.primary(`--display`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Should the generated completion script be written to console output instead of an actual file on disk? (default: false).`),align:`left`,border:`none`}]]),t(``),t(r.heading.primary((n?` 🖵 `:``)+`${e(`Completions - Bash Script`)} - ${r.tags.utility?r.tags.utility(s(` Utility `)):r.tags.default(s(` Utility `))}`)),t(``),t(r.body.tertiary(i(`Generate a bash completion script for the Cyclone User Interface command-line interface.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`completions`)} ${r.usage.command(`bash`)} ${r.usage.command(`script`)} ${r.usage.args(`<path>`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`completions`)} ${r.usage.command(`bash`)} ${r.usage.command(`script`)} ${r.usage.options(`[options]`)} ${r.usage.args(`<path>`)}`),{padding:0}),t(``),t(c(r.heading.secondary(`Options:`)),{padding:0}),u([[{value:r.body.primary(`--display`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Should the generated completion script be written to console output instead of an actual file on disk? (default: false).`),align:`left`,border:`none`}]]),t(``),t(r.body.tertiary(`More information can be found in the Completions - Bash command documentation at ${o(`https://docs.cyclone-ui.com/reference/cli/completions/bash`)}${r.body.tertiary(`.`)}`),{padding:0}),t(``),l(`Running a specific command with the help flag (via: ${a(`cyclone-ui completions bash <command> --help`)}) or the help command with the specific command as arguments (via: ${a(`cyclone-ui completions bash help <command>`)}) will provide additional information that is specific to that command.`),t(``)}function m(){t(`${c(r.heading.secondary(`Tags: `))} ${r.tags.utility?r.tags.utility(s(` Utility `)):r.tags.default(s(` Utility `))}`,{padding:0}),t(c(r.heading.secondary(`Common Options:`))),u([]),t(``),t(r.body.tertiary(`The following commands are available through the Cyclone User Interface command-line interface:`)),t(``),t(r.heading.primary((n?` 🖵 `:``)+`${e(`Completions - Fish Configuration`)} - ${r.tags.utility?r.tags.utility(s(` Utility `)):r.tags.default(s(` Utility `))}`)),t(``),t(r.body.tertiary(i(`Update the current system's Fish shell configuration to include completions for the Cyclone User Interface command-line interface.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`completions`)} ${r.usage.command(`fish`)} ${r.usage.command(`config`)} ${r.usage.args(`<path>`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`completions`)} ${r.usage.command(`fish`)} ${r.usage.command(`config`)} ${r.usage.options(`[options]`)} ${r.usage.args(`<path>`)}`),{padding:0}),t(``),t(c(r.heading.secondary(`Options:`)),{padding:0}),u([[{value:r.body.primary(`--display`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Should the generated completion script be written to console output instead of an actual file on disk? (default: false).`),align:`left`,border:`none`}]]),t(``),t(r.heading.primary((n?` 🖵 `:``)+`${e(`Completions - Fish Script`)} - ${r.tags.utility?r.tags.utility(s(` Utility `)):r.tags.default(s(` Utility `))}`)),t(``),t(r.body.tertiary(i(`Generate a Fish completion script for the Cyclone User Interface command-line interface.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`completions`)} ${r.usage.command(`fish`)} ${r.usage.command(`script`)} ${r.usage.args(`<path>`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`completions`)} ${r.usage.command(`fish`)} ${r.usage.command(`script`)} ${r.usage.options(`[options]`)} ${r.usage.args(`<path>`)}`),{padding:0}),t(``),t(c(r.heading.secondary(`Options:`)),{padding:0}),u([[{value:r.body.primary(`--display`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Should the generated completion script be written to console output instead of an actual file on disk? (default: false).`),align:`left`,border:`none`}]]),t(``),t(r.body.tertiary(`More information can be found in the Completions - Fish command documentation at ${o(`https://docs.cyclone-ui.com/reference/cli/completions/fish`)}${r.body.tertiary(`.`)}`),{padding:0}),t(``),l(`Running a specific command with the help flag (via: ${a(`cyclone-ui completions fish <command> --help`)}) or the help command with the specific command as arguments (via: ${a(`cyclone-ui completions fish help <command>`)}) will provide additional information that is specific to that command.`),t(``)}function h(){t(`${c(r.heading.secondary(`Tags: `))} ${r.tags.utility?r.tags.utility(s(` Utility `)):r.tags.default(s(` Utility `))}`,{padding:0}),t(c(r.heading.secondary(`Common Options:`))),u([]),t(``),t(r.body.tertiary(`The following commands are available through the Cyclone User Interface command-line interface:`)),t(``),t(r.heading.primary((n?` 🖵 `:``)+`${e(`Completions - PowerShell Configuration`)} - ${r.tags.utility?r.tags.utility(s(` Utility `)):r.tags.default(s(` Utility `))}`)),t(``),t(r.body.tertiary(i(`Update the current system's PowerShell configuration to include completions for the Cyclone User Interface command-line interface.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`completions`)} ${r.usage.command(`powershell`)} ${r.usage.command(`config`)} ${r.usage.args(`<path>`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`completions`)} ${r.usage.command(`powershell`)} ${r.usage.command(`config`)} ${r.usage.options(`[options]`)} ${r.usage.args(`<path>`)}`),{padding:0}),t(``),t(c(r.heading.secondary(`Options:`)),{padding:0}),u([[{value:r.body.primary(`--display`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Should the generated completion script be written to console output instead of an actual file on disk? (default: false).`),align:`left`,border:`none`}]]),t(``),t(r.heading.primary((n?` 🖵 `:``)+`${e(`Completions - PowerShell Script`)} - ${r.tags.utility?r.tags.utility(s(` Utility `)):r.tags.default(s(` Utility `))}`)),t(``),t(r.body.tertiary(i(`Generate a PowerShell completion script for the Cyclone User Interface command-line interface.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`completions`)} ${r.usage.command(`powershell`)} ${r.usage.command(`script`)} ${r.usage.args(`<path>`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`completions`)} ${r.usage.command(`powershell`)} ${r.usage.command(`script`)} ${r.usage.options(`[options]`)} ${r.usage.args(`<path>`)}`),{padding:0}),t(``),t(c(r.heading.secondary(`Options:`)),{padding:0}),u([[{value:r.body.primary(`--display`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Should the generated completion script be written to console output instead of an actual file on disk? (default: false).`),align:`left`,border:`none`}]]),t(``),t(r.body.tertiary(`More information can be found in the Completions - PowerShell command documentation at ${o(`https://docs.cyclone-ui.com/reference/cli/completions/powershell`)}${r.body.tertiary(`.`)}`),{padding:0}),t(``),l(`Running a specific command with the help flag (via: ${a(`cyclone-ui completions powershell <command> --help`)}) or the help command with the specific command as arguments (via: ${a(`cyclone-ui completions powershell help <command>`)}) will provide additional information that is specific to that command.`),t(``)}function g(){t(`${c(r.heading.secondary(`Tags: `))} ${r.tags.utility?r.tags.utility(s(` Utility `)):r.tags.default(s(` Utility `))}`,{padding:0}),t(c(r.heading.secondary(`Common Options:`))),u([]),t(``),t(r.body.tertiary(`The following commands are available through the Cyclone User Interface command-line interface:`)),t(``),t(r.heading.primary((n?` 🖵 `:``)+`${e(`Completions - Zsh Configuration`)} - ${r.tags.utility?r.tags.utility(s(` Utility `)):r.tags.default(s(` Utility `))}`)),t(``),t(r.body.tertiary(i(`Update the current system's Zsh shell configuration to include completions for the Cyclone User Interface command-line interface.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`completions`)} ${r.usage.command(`zsh`)} ${r.usage.command(`config`)} ${r.usage.args(`<path>`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`completions`)} ${r.usage.command(`zsh`)} ${r.usage.command(`config`)} ${r.usage.options(`[options]`)} ${r.usage.args(`<path>`)}`),{padding:0}),t(``),t(c(r.heading.secondary(`Options:`)),{padding:0}),u([[{value:r.body.primary(`--display`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Should the generated completion script be written to console output instead of an actual file on disk? (default: false).`),align:`left`,border:`none`}]]),t(``),t(r.heading.primary((n?` 🖵 `:``)+`${e(`Completions - Zsh Script`)} - ${r.tags.utility?r.tags.utility(s(` Utility `)):r.tags.default(s(` Utility `))}`)),t(``),t(r.body.tertiary(i(`Generate a Zsh completion script for the Cyclone User Interface command-line interface.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`completions`)} ${r.usage.command(`zsh`)} ${r.usage.command(`script`)} ${r.usage.args(`<path>`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`completions`)} ${r.usage.command(`zsh`)} ${r.usage.command(`script`)} ${r.usage.options(`[options]`)} ${r.usage.args(`<path>`)}`),{padding:0}),t(``),t(c(r.heading.secondary(`Options:`)),{padding:0}),u([[{value:r.body.primary(`--display`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`Should the generated completion script be written to console output instead of an actual file on disk? (default: false).`),align:`left`,border:`none`}]]),t(``),t(r.body.tertiary(`More information can be found in the Completions - Zsh command documentation at ${o(`https://docs.cyclone-ui.com/reference/cli/completions/zsh`)}${r.body.tertiary(`.`)}`),{padding:0}),t(``),l(`Running a specific command with the help flag (via: ${a(`cyclone-ui completions zsh <command> --help`)}) or the help command with the specific command as arguments (via: ${a(`cyclone-ui completions zsh help <command>`)}) will provide additional information that is specific to that command.`),t(``)}function _(){t(c(r.heading.secondary(`Common Options:`))),u([]),t(``),t(r.body.tertiary(`The following commands are available through the Cyclone User Interface command-line interface:`)),t(``),t(r.heading.primary((n?` ✓ `:``)+`${e(`Validate Registry`)}`)),t(``),t(r.body.tertiary(i(`Validate a local registry manifest and its source files.`))),t(``),t(c(r.heading.secondary(`Usage:`)),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`registry`)} ${r.usage.command(`validate`)} ${r.usage.args(`<registry>`)} ${r.usage.options(`[options]`)}`),{padding:0}),t(r.body.secondary(`${r.usage.bin(`>_ cyclone-ui`)} ${r.usage.command(`registry`)} ${r.usage.command(`validate`)} ${r.usage.options(`[options]`)} ${r.usage.args(`<registry>`)}`),{padding:0}),t(``),t(c(r.heading.secondary(`Options:`)),{padding:0}),u([[{value:r.body.primary(`--cwd <cwd>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:r.body.tertiary(`The working directory.`),align:`left`,border:`none`}]]),t(``),t(r.body.tertiary(`More information can be found in the Registry Commands command documentation at ${o(`https://docs.cyclone-ui.com/reference/cli/registry`)}${r.body.tertiary(`.`)}`),{padding:0}),t(``),l(`Running a specific command with the help flag (via: ${a(`cyclone-ui registry <command> --help`)}) or the help command with the specific command as arguments (via: ${a(`cyclone-ui registry help <command>`)}) will provide additional information that is specific to that command.`),t(``)}export{p as a,m as i,g as n,f as o,h as r,d as s,_ as t};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{A as e,B as t,D as n,F as r,G as i,I as a,K as o,L as s,N as c,S as l,U as u,V as d,_ as f,b as p,j as m,k as h,n as g,t as _,y as v,z as y}from"./console-
|
|
2
|
-
`)}\n`;f(o,Math.max(h().columns-30,20)).forEach(e=>{n(g.banner.outline.primary(`┃`)+` `.repeat(Math.max(Math.floor((h().columns-(v(e).length+2))/2),0))+_(l.banner.title.primary(e))+` `.repeat(Math.max(Math.ceil((h().columns-(v(e).length+2))/2),0))+g.banner.outline.primary(`┃`),{consoleFn:console.log})}),n(g.banner.outline.primary(`┃`)+` `.repeat(Math.max(Math.floor((h().columns-(v(`Validate Registry`).length+2))/2),0))+_(l.banner.command.primary(`Validate Registry`))+` `.repeat(Math.max(Math.ceil((h().columns-(v(`Validate Registry`).length+2))/2),0))+g.banner.outline.primary(`┃`),{consoleFn:console.log}),f(_(l.banner.description.primary(`Validate a local registry manifest and its source files.`)),Math.max(60>h().columns/2?h().columns-6:h().columns-30,20)).forEach(e=>{n(g.banner.outline.primary(`┃`)+` `.repeat(Math.max(Math.floor((h().columns-(v(e).length+2))/2),0))+l.banner.description.primary(e)+` `.repeat(Math.max(Math.ceil((h().columns-(v(e).length+2))/2),0))+g.banner.outline.primary(`┃`),{consoleFn:console.log})}),n(g.banner.outline.primary(`┃`)+` `.repeat(Math.max(h().columns-2,0))+g.banner.outline.primary(`┃`),{consoleFn:console.log}),n(g.banner.outline.primary(`┗`)+g.banner.outline.primary(`━`.repeat(Math.max(h().columns-32,0)))+` `+_(l.banner.footer.primary(`https://cyclone-ui.com`))+` `+g.banner.outline.primary(`━`.repeat(6))+g.banner.outline.primary(`┛`),{consoleFn:console.log}),n(``),e&&!a()&&await c(i)}async function
|
|
1
|
+
import{A as e,B as t,D as n,F as r,G as i,I as a,K as o,L as s,N as c,S as l,U as u,V as d,_ as f,b as p,j as m,k as h,n as g,t as _,y as v,z as y}from"./console-C3z2Y61E.mjs";import{a as b}from"./prompts-e3s_BIKU.mjs";import{t as x}from"./update-wulHGaSU.mjs";import{r as S}from"./config-DxsYsT40.mjs";import{t as C}from"./validate-CqYKElXI.mjs";import{resolve as w}from"node:path";import{readFile as T}from"node:fs/promises";async function E(i=500){if(t().get(`is-banner-displayed`)||r(`no-banner`)||r(`hide-banner`)||m)return;t().set(`is-banner-displayed`,!0),n(``),n(g.banner.outline.primary(`┏`)+g.banner.outline.primary(`━`.repeat(6))+` `+l.banner.header.primary(`⬤`)+` `+g.banner.outline.primary(`━`)+` `+_(l.banner.header.primary(`Cyclone CLI v0.6.14`))+` `+g.banner.outline.primary(`━`.repeat(Math.max(h().columns-33,0)))+g.banner.outline.primary(`┓`),{consoleFn:console.log});let o=Math.max(...b.map(e=>v(e).length))>Math.max(h().columns+30,20)?`Cyclone User Interface`:`\n${b.join(`
|
|
2
|
+
`)}\n`;f(o,Math.max(h().columns-30,20)).forEach(e=>{n(g.banner.outline.primary(`┃`)+` `.repeat(Math.max(Math.floor((h().columns-(v(e).length+2))/2),0))+_(l.banner.title.primary(e))+` `.repeat(Math.max(Math.ceil((h().columns-(v(e).length+2))/2),0))+g.banner.outline.primary(`┃`),{consoleFn:console.log})}),n(g.banner.outline.primary(`┃`)+` `.repeat(Math.max(Math.floor((h().columns-(v(`Validate Registry`).length+2))/2),0))+_(l.banner.command.primary(`Validate Registry`))+` `.repeat(Math.max(Math.ceil((h().columns-(v(`Validate Registry`).length+2))/2),0))+g.banner.outline.primary(`┃`),{consoleFn:console.log}),f(_(l.banner.description.primary(`Validate a local registry manifest and its source files.`)),Math.max(60>h().columns/2?h().columns-6:h().columns-30,20)).forEach(e=>{n(g.banner.outline.primary(`┃`)+` `.repeat(Math.max(Math.floor((h().columns-(v(e).length+2))/2),0))+l.banner.description.primary(e)+` `.repeat(Math.max(Math.ceil((h().columns-(v(e).length+2))/2),0))+g.banner.outline.primary(`┃`),{consoleFn:console.log})}),n(g.banner.outline.primary(`┃`)+` `.repeat(Math.max(h().columns-2,0))+g.banner.outline.primary(`┃`),{consoleFn:console.log}),n(g.banner.outline.primary(`┗`)+g.banner.outline.primary(`━`.repeat(Math.max(h().columns-32,0)))+` `+_(l.banner.footer.primary(`https://cyclone-ui.com`))+` `+g.banner.outline.primary(`━`.repeat(6))+g.banner.outline.primary(`┛`),{consoleFn:console.log}),n(``),e&&!a()&&await c(i)}async function D(e){let t=JSON.parse(await T(e,`utf8`));if(!t||typeof t!=`object`||!(`items`in t)||!Array.isArray(t.items))throw Error(`Registry manifest must contain an items array.`);let n=/* @__PURE__ */ new Set;for(let[e,r]of t.items.entries()){if(!r||typeof r!=`object`||typeof r.name!=`string`||!r.name)throw Error(`Registry item ${e} must have a name.`);if(n.has(r.name))throw Error(`Duplicate registry item: ${r.name}`);if(n.add(r.name),typeof r.type!=`string`||!Array.isArray(r.files))throw Error(`Registry item \"${r.name}\" must have a type and files array.`);for(let e of r.files){if(!e||typeof e!=`object`||typeof e.path!=`string`)throw Error(`Registry item \"${r.name}\" contains an invalid file.`);if(!e.content&&!await S(e.path))throw Error(`Registry source file not found: ${e.path}`)}}return t}async function O(e,t=`registry.json`){let n=w(e.cwd??process.cwd()),r=await D(w(n,t));p(`Registry is valid (${r.items.length} items).`)}async function k(e=s()){let t={...y()};for(let n=0;n<e.slice(0).length;n++){let r=e[n].length>3&&e[n].startsWith(`--`)?`--${e[n].slice(2).replaceAll(`-`,``).toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``)}`:e[n].length>2&&e[n].startsWith(`-`)?`-${e[n].slice(1).replaceAll(`-`,``)}`:e[n];(r.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``).startsWith(`cwd=`)||r.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``)===`cwd`||r.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``).startsWith(`cwd=`)||r.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``)===`cwd`)&&(/^--?(cwd)=/.test(`-`+r.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``))?t.cwd=r.replace(/^--?(cwd)=/,``).trim().replace(/^("|')/,``).replace(/("|')$/,``):e.length>n+1&&(t.cwd=e[++n].trim().replace(/^("|')/,``).replace(/("|')$/,``)))}let c=Math.max(0,e.slice(3).findIndex(e=>e.startsWith(`-`)&&/^(cwd)=?.*$/.test(e.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``))))+3,f=c>3?3:Math.max(0,e.slice(c).findLastIndex(e=>e.startsWith(`-`)&&/^(cwd)=?.*$/.test(e.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``))))+3,p=`registry.json`;return f+0<e.length&&f+0!==c&&(p=e[f+0]),r(`quiet`)||(await E(),await x()),!a()&&!r(`quiet`)&&(n(``),(o||i||u.LOG_LEVEL===`debug`)&&n(l.body.tertiary(`Debug mode is enabled. Additional debug information may be logged to the console.`))),t.help?C():d(`registry/validate`,[`registry`,`validate`],[t,p],O)}export{k as handler};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{D as e,S as t,h as n,p as r,t as i,x as a}from"./console-
|
|
1
|
+
import{D as e,S as t,h as n,p as r,t as i,x as a}from"./console-C3z2Y61E.mjs";function o(){e(`${i(t.heading.secondary(`Tags: `))} ${t.tags.utility?t.tags.utility(r(` Utility `)):t.tags.default(r(` Utility `))}`,{padding:0}),e(``),e(i(t.heading.secondary(`Usage:`))),e(t.body.secondary(`${t.usage.bin(`>_ cyclone-ui`)} ${t.usage.command(`completions`)} ${t.usage.command(`powershell`)} ${t.usage.command(`script`)} ${t.usage.args(`<path>`)} ${t.usage.options(`[options]`)}`),{padding:0}),e(t.body.secondary(`${t.usage.bin(`>_ cyclone-ui`)} ${t.usage.command(`completions`)} ${t.usage.command(`powershell`)} ${t.usage.command(`script`)} ${t.usage.options(`[options]`)} ${t.usage.args(`<path>`)}`),{padding:0}),e(``),e(i(t.heading.secondary(`Options:`))),a([[{value:t.body.primary(`--color, --colors`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Force colored terminal output (env: CYCLONE_UI_COLOR, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--no-color, --no-colors`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Force disable colored terminal output (env: CYCLONE_UI_NO_COLOR, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--display`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Should the generated completion script be written to console output instead of an actual file on disk? (default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`-?, -h, --help`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Show help information (default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`-i, --interact, --interactive`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Enable interactive mode - will be set to false if running in a CI pipeline (env: CYCLONE_UI_INTERACTIVE, default: true).`),align:`left`,border:`none`}],[{value:t.body.primary(`--no-interactive, --non-interactive`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Disable interactive mode - will be set to true if running in a CI pipeline (env: CYCLONE_UI_NON_INTERACTIVE, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--hide-banner, --no-banner`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Do not display the application banner displayed while running the CLI - will be set to true if running in a CI pipeline (env: CYCLONE_UI_NO_BANNER, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--no-color, --no-colors`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Force disable colored terminal output (env: CYCLONE_UI_NO_COLOR, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--no-interactive, --non-interactive`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Disable interactive mode - will be set to true if running in a CI pipeline (env: CYCLONE_UI_NON_INTERACTIVE, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--quiet`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Suppress command decorations and diagnostic messages (default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`-V, --verbose`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Enable verbose output (env: CYCLONE_UI_VERBOSE, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`-v, --version`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Show the version of the application (default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`-y, --yes`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Skip all prompts by answering yes to all of them - will be set to true if running in a CI pipeline (env: CYCLONE_UI_YES, default: false).`),align:`left`,border:`none`}]]),e(``),e(t.body.tertiary(`More information can be found in the Completions - PowerShell Script command documentation at ${n(`https://docs.cyclone-ui.com/reference/cli/completions/powershell/script`)}${t.body.tertiary(`.`)}`),{padding:0}),e(``)}export{o as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{D as e,S as t,h as n,p as r,t as i,x as a}from"./console-
|
|
1
|
+
import{D as e,S as t,h as n,p as r,t as i,x as a}from"./console-C3z2Y61E.mjs";function o(){e(`${i(t.heading.secondary(`Tags: `))} ${t.tags.utility?t.tags.utility(r(` Utility `)):t.tags.default(r(` Utility `))}`,{padding:0}),e(``),e(i(t.heading.secondary(`Usage:`))),e(t.body.secondary(`${t.usage.bin(`>_ cyclone-ui`)} ${t.usage.command(`completions`)} ${t.usage.command(`fish`)} ${t.usage.command(`script`)} ${t.usage.args(`<path>`)} ${t.usage.options(`[options]`)}`),{padding:0}),e(t.body.secondary(`${t.usage.bin(`>_ cyclone-ui`)} ${t.usage.command(`completions`)} ${t.usage.command(`fish`)} ${t.usage.command(`script`)} ${t.usage.options(`[options]`)} ${t.usage.args(`<path>`)}`),{padding:0}),e(``),e(i(t.heading.secondary(`Options:`))),a([[{value:t.body.primary(`--color, --colors`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Force colored terminal output (env: CYCLONE_UI_COLOR, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--no-color, --no-colors`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Force disable colored terminal output (env: CYCLONE_UI_NO_COLOR, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--display`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Should the generated completion script be written to console output instead of an actual file on disk? (default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`-?, -h, --help`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Show help information (default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`-i, --interact, --interactive`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Enable interactive mode - will be set to false if running in a CI pipeline (env: CYCLONE_UI_INTERACTIVE, default: true).`),align:`left`,border:`none`}],[{value:t.body.primary(`--no-interactive, --non-interactive`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Disable interactive mode - will be set to true if running in a CI pipeline (env: CYCLONE_UI_NON_INTERACTIVE, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--hide-banner, --no-banner`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Do not display the application banner displayed while running the CLI - will be set to true if running in a CI pipeline (env: CYCLONE_UI_NO_BANNER, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--no-color, --no-colors`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Force disable colored terminal output (env: CYCLONE_UI_NO_COLOR, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--no-interactive, --non-interactive`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Disable interactive mode - will be set to true if running in a CI pipeline (env: CYCLONE_UI_NON_INTERACTIVE, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--quiet`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Suppress command decorations and diagnostic messages (default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`-V, --verbose`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Enable verbose output (env: CYCLONE_UI_VERBOSE, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`-v, --version`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Show the version of the application (default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`-y, --yes`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Skip all prompts by answering yes to all of them - will be set to true if running in a CI pipeline (env: CYCLONE_UI_YES, default: false).`),align:`left`,border:`none`}]]),e(``),e(t.body.tertiary(`More information can be found in the Completions - Fish Script command documentation at ${n(`https://docs.cyclone-ui.com/reference/cli/completions/fish/script`)}${t.body.tertiary(`.`)}`),{padding:0}),e(``)}export{o as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{D as e,S as t,h as n,p as r,t as i,x as a}from"./console-
|
|
1
|
+
import{D as e,S as t,h as n,p as r,t as i,x as a}from"./console-C3z2Y61E.mjs";function o(){e(`${i(t.heading.secondary(`Tags: `))} ${t.tags.utility?t.tags.utility(r(` Utility `)):t.tags.default(r(` Utility `))}`,{padding:0}),e(``),e(i(t.heading.secondary(`Usage:`))),e(t.body.secondary(`${t.usage.bin(`>_ cyclone-ui`)} ${t.usage.command(`completions`)} ${t.usage.command(`zsh`)} ${t.usage.command(`script`)} ${t.usage.args(`<path>`)} ${t.usage.options(`[options]`)}`),{padding:0}),e(t.body.secondary(`${t.usage.bin(`>_ cyclone-ui`)} ${t.usage.command(`completions`)} ${t.usage.command(`zsh`)} ${t.usage.command(`script`)} ${t.usage.options(`[options]`)} ${t.usage.args(`<path>`)}`),{padding:0}),e(``),e(i(t.heading.secondary(`Options:`))),a([[{value:t.body.primary(`--color, --colors`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Force colored terminal output (env: CYCLONE_UI_COLOR, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--no-color, --no-colors`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Force disable colored terminal output (env: CYCLONE_UI_NO_COLOR, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--display`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Should the generated completion script be written to console output instead of an actual file on disk? (default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`-?, -h, --help`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Show help information (default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`-i, --interact, --interactive`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Enable interactive mode - will be set to false if running in a CI pipeline (env: CYCLONE_UI_INTERACTIVE, default: true).`),align:`left`,border:`none`}],[{value:t.body.primary(`--no-interactive, --non-interactive`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Disable interactive mode - will be set to true if running in a CI pipeline (env: CYCLONE_UI_NON_INTERACTIVE, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--hide-banner, --no-banner`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Do not display the application banner displayed while running the CLI - will be set to true if running in a CI pipeline (env: CYCLONE_UI_NO_BANNER, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--no-color, --no-colors`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Force disable colored terminal output (env: CYCLONE_UI_NO_COLOR, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--no-interactive, --non-interactive`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Disable interactive mode - will be set to true if running in a CI pipeline (env: CYCLONE_UI_NON_INTERACTIVE, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--quiet`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Suppress command decorations and diagnostic messages (default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`-V, --verbose`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Enable verbose output (env: CYCLONE_UI_VERBOSE, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`-v, --version`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Show the version of the application (default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`-y, --yes`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Skip all prompts by answering yes to all of them - will be set to true if running in a CI pipeline (env: CYCLONE_UI_YES, default: false).`),align:`left`,border:`none`}]]),e(``),e(t.body.tertiary(`More information can be found in the Completions - Zsh Script command documentation at ${n(`https://docs.cyclone-ui.com/reference/cli/completions/zsh/script`)}${t.body.tertiary(`.`)}`),{padding:0}),e(``)}export{o as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{D as e,S as t,h as n,p as r,t as i,x as a}from"./console-
|
|
1
|
+
import{D as e,S as t,h as n,p as r,t as i,x as a}from"./console-C3z2Y61E.mjs";function o(){e(`${i(t.heading.secondary(`Tags: `))} ${t.tags.utility?t.tags.utility(r(` Utility `)):t.tags.default(r(` Utility `))}`,{padding:0}),e(``),e(i(t.heading.secondary(`Usage:`))),e(t.body.secondary(`${t.usage.bin(`>_ cyclone-ui`)} ${t.usage.command(`completions`)} ${t.usage.command(`bash`)} ${t.usage.command(`script`)} ${t.usage.args(`<path>`)} ${t.usage.options(`[options]`)}`),{padding:0}),e(t.body.secondary(`${t.usage.bin(`>_ cyclone-ui`)} ${t.usage.command(`completions`)} ${t.usage.command(`bash`)} ${t.usage.command(`script`)} ${t.usage.options(`[options]`)} ${t.usage.args(`<path>`)}`),{padding:0}),e(``),e(i(t.heading.secondary(`Options:`))),a([[{value:t.body.primary(`--color, --colors`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Force colored terminal output (env: CYCLONE_UI_COLOR, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--no-color, --no-colors`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Force disable colored terminal output (env: CYCLONE_UI_NO_COLOR, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--display`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Should the generated completion script be written to console output instead of an actual file on disk? (default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`-?, -h, --help`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Show help information (default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`-i, --interact, --interactive`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Enable interactive mode - will be set to false if running in a CI pipeline (env: CYCLONE_UI_INTERACTIVE, default: true).`),align:`left`,border:`none`}],[{value:t.body.primary(`--no-interactive, --non-interactive`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Disable interactive mode - will be set to true if running in a CI pipeline (env: CYCLONE_UI_NON_INTERACTIVE, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--hide-banner, --no-banner`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Do not display the application banner displayed while running the CLI - will be set to true if running in a CI pipeline (env: CYCLONE_UI_NO_BANNER, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--no-color, --no-colors`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Force disable colored terminal output (env: CYCLONE_UI_NO_COLOR, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--no-interactive, --non-interactive`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Disable interactive mode - will be set to true if running in a CI pipeline (env: CYCLONE_UI_NON_INTERACTIVE, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--quiet`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Suppress command decorations and diagnostic messages (default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`-V, --verbose`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Enable verbose output (env: CYCLONE_UI_VERBOSE, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`-v, --version`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Show the version of the application (default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`-y, --yes`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Skip all prompts by answering yes to all of them - will be set to true if running in a CI pipeline (env: CYCLONE_UI_YES, default: false).`),align:`left`,border:`none`}]]),e(``),e(t.body.tertiary(`More information can be found in the Completions - Bash Script command documentation at ${n(`https://docs.cyclone-ui.com/reference/cli/completions/bash/script`)}${t.body.tertiary(`.`)}`),{padding:0}),e(``)}export{o as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{D as e,S as t,h as n,t as r,x as i}from"./console-
|
|
1
|
+
import{D as e,S as t,h as n,t as r,x as i}from"./console-C3z2Y61E.mjs";function a(){e(``),e(r(t.heading.secondary(`Usage:`))),e(t.body.secondary(`${t.usage.bin(`>_ cyclone-ui`)} ${t.usage.command(`search`)} ${t.usage.options(`[options]`)}`),{padding:0}),e(t.body.secondary(`${t.usage.bin(`>_ cyclone-ui`)} ${t.usage.command(`list`)} ${t.usage.options(`[options]`)}`),{padding:0}),e(``),e(r(t.heading.secondary(`Options:`))),i([[{value:t.body.primary(`--color, --colors`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Force colored terminal output (env: CYCLONE_UI_COLOR, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--no-color, --no-colors`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Force disable colored terminal output (env: CYCLONE_UI_NO_COLOR, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--cwd <cwd>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`The working directory.`),align:`left`,border:`none`}],[{value:t.body.primary(`-?, -h, --help`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Show help information (default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`-i, --interact, --interactive`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Enable interactive mode - will be set to false if running in a CI pipeline (env: CYCLONE_UI_INTERACTIVE, default: true).`),align:`left`,border:`none`}],[{value:t.body.primary(`--no-interactive, --non-interactive`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Disable interactive mode - will be set to true if running in a CI pipeline (env: CYCLONE_UI_NON_INTERACTIVE, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--json`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Output machine-readable JSON.`),align:`left`,border:`none`}],[{value:t.body.primary(`--limit <limit>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Maximum number of results.`),align:`left`,border:`none`}],[{value:t.body.primary(`--hide-banner, --no-banner`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Do not display the application banner displayed while running the CLI - will be set to true if running in a CI pipeline (env: CYCLONE_UI_NO_BANNER, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--no-color, --no-colors`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Force disable colored terminal output (env: CYCLONE_UI_NO_COLOR, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--no-interactive, --non-interactive`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Disable interactive mode - will be set to true if running in a CI pipeline (env: CYCLONE_UI_NON_INTERACTIVE, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--offset <offset>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Number of results to skip.`),align:`left`,border:`none`}],[{value:t.body.primary(`--query <query>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Text to match against names, descriptions, and tags.`),align:`left`,border:`none`}],[{value:t.body.primary(`--quiet`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Suppress command decorations and diagnostic messages (default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--registry <registry>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Registry URL.`),align:`left`,border:`none`}],[{value:t.body.primary(`-V, --verbose`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Enable verbose output (env: CYCLONE_UI_VERBOSE, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`-v, --version`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Show the version of the application (default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`-y, --yes`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Skip all prompts by answering yes to all of them - will be set to true if running in a CI pipeline (env: CYCLONE_UI_YES, default: false).`),align:`left`,border:`none`}]]),e(``),e(t.body.tertiary(`More information can be found in the Search Registry command documentation at ${n(`https://docs.cyclone-ui.com/reference/cli/search`)}${t.body.tertiary(`.`)}`),{padding:0}),e(``)}export{a as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{D as e,S as t,h as n,p as r,t as i,x as a}from"./console-
|
|
1
|
+
import{D as e,S as t,h as n,p as r,t as i,x as a}from"./console-C3z2Y61E.mjs";function o(){e(`${i(t.heading.secondary(`Tags: `))} ${t.tags.designSystem?t.tags.designSystem(r(` Design System `)):t.tags.default(r(` Design System `))} ${t.tags.components?t.tags.components(r(` Components `)):t.tags.default(r(` Components `))}`,{padding:0}),e(``),e(i(t.heading.secondary(`Usage:`))),e(t.body.secondary(`${t.usage.bin(`>_ cyclone-ui`)} ${t.usage.command(`search-components`)} ${t.usage.options(`[options]`)}`),{padding:0}),e(``),e(i(t.heading.secondary(`Options:`))),a([[{value:t.body.primary(`--color, --colors`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Force colored terminal output (env: CYCLONE_UI_COLOR, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--no-color, --no-colors`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Force disable colored terminal output (env: CYCLONE_UI_NO_COLOR, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`-?, -h, --help`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Show help information (default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`-i, --interact, --interactive`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Enable interactive mode - will be set to false if running in a CI pipeline (env: CYCLONE_UI_INTERACTIVE, default: true).`),align:`left`,border:`none`}],[{value:t.body.primary(`--no-interactive, --non-interactive`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Disable interactive mode - will be set to true if running in a CI pipeline (env: CYCLONE_UI_NON_INTERACTIVE, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--limit <limit>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Maximum matches per term (default: 2).`),align:`left`,border:`none`}],[{value:t.body.primary(`--hide-banner, --no-banner`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Do not display the application banner displayed while running the CLI - will be set to true if running in a CI pipeline (env: CYCLONE_UI_NO_BANNER, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--no-color, --no-colors`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Force disable colored terminal output (env: CYCLONE_UI_NO_COLOR, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--no-interactive, --non-interactive`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Disable interactive mode - will be set to true if running in a CI pipeline (env: CYCLONE_UI_NON_INTERACTIVE, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--quiet`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Suppress command decorations and diagnostic messages (default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--terms <terms...>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`One or more search terms (fuzzy match).`),align:`left`,border:`none`}],[{value:t.body.primary(`-V, --verbose`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Enable verbose output (env: CYCLONE_UI_VERBOSE, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`-v, --version`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Show the version of the application (default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`-y, --yes`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Skip all prompts by answering yes to all of them - will be set to true if running in a CI pipeline (env: CYCLONE_UI_YES, default: false).`),align:`left`,border:`none`}]]),e(``),e(t.body.tertiary(`More information can be found in the Search Components command documentation at ${n(`https://docs.cyclone-ui.com/reference/cli/search-components`)}${t.body.tertiary(`.`)}`),{padding:0}),e(``)}export{o as t};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import{A as e,B as t,D as n,F as r,G as i,I as a,K as o,L as s,N as c,S as l,U as u,V as d,_ as f,c as p,j as m,k as h,m as g,n as _,t as v,y,z as b}from"./console-
|
|
1
|
+
import{A as e,B as t,D as n,F as r,G as i,I as a,K as o,L as s,N as c,S as l,U as u,V as d,_ as f,c as p,j as m,k as h,m as g,n as _,t as v,y,z as b}from"./console-C3z2Y61E.mjs";import{a as x,r as S,t as C}from"./prompts-e3s_BIKU.mjs";import{t as w}from"./update-wulHGaSU.mjs";import{t as T}from"./design-system-CNVVaZ1M.mjs";import{t as E}from"./search-components-CpFDPRfz.mjs";import{isSearchError as D,searchComponents as O}from"@razorwind/shell-shock/runtime";async function k(i=500){if(t().get(`is-banner-displayed`)||r(`no-banner`)||r(`hide-banner`)||m)return;t().set(`is-banner-displayed`,!0),n(``),n(_.banner.outline.primary(`┏`)+_.banner.outline.primary(`━`.repeat(6))+` `+l.banner.header.primary(`⬤`)+` `+_.banner.outline.primary(`━`)+` `+v(l.banner.header.primary(`Cyclone CLI v0.6.14`))+` `+_.banner.outline.primary(`━`.repeat(Math.max(h().columns-33,0)))+_.banner.outline.primary(`┓`),{consoleFn:console.log});let o=Math.max(...x.map(e=>y(e).length))>Math.max(h().columns+30,20)?`Cyclone User Interface`:`\n${x.join(`
|
|
2
2
|
`)}\n`;f(o,Math.max(h().columns-30,20)).forEach(e=>{n(_.banner.outline.primary(`┃`)+` `.repeat(Math.max(Math.floor((h().columns-(y(e).length+2))/2),0))+v(l.banner.title.primary(e))+` `.repeat(Math.max(Math.ceil((h().columns-(y(e).length+2))/2),0))+_.banner.outline.primary(`┃`),{consoleFn:console.log})}),n(_.banner.outline.primary(`┃`)+` `.repeat(Math.max(Math.floor((h().columns-(y(`Search Components`).length+2))/2),0))+v(l.banner.command.primary(`Search Components`))+` `.repeat(Math.max(Math.ceil((h().columns-(y(`Search Components`).length+2))/2),0))+_.banner.outline.primary(`┃`),{consoleFn:console.log}),f(v(l.banner.description.primary(`Search design-system components by name, title, category, description and tags. Returns name, files, dependencies and usage examples for each match.`)),Math.max(60>h().columns/2?h().columns-6:h().columns-30,20)).forEach(e=>{n(_.banner.outline.primary(`┃`)+` `.repeat(Math.max(Math.floor((h().columns-(y(e).length+2))/2),0))+l.banner.description.primary(e)+` `.repeat(Math.max(Math.ceil((h().columns-(y(e).length+2))/2),0))+_.banner.outline.primary(`┃`),{consoleFn:console.log})}),n(_.banner.outline.primary(`┃`)+` `.repeat(Math.max(h().columns-2,0))+_.banner.outline.primary(`┃`),{consoleFn:console.log}),n(_.banner.outline.primary(`┗`)+_.banner.outline.primary(`━`.repeat(Math.max(h().columns-32,0)))+` `+v(l.banner.footer.primary(`https://cyclone-ui.com`))+` `+_.banner.outline.primary(`━`.repeat(6))+_.banner.outline.primary(`┛`),{consoleFn:console.log}),n(``),e&&!a()&&await c(i)}function A(e){process.stdout.write(`${typeof e==`string`?e:JSON.stringify(e,null,2)}\n`)}async function j(e){let t=O(T,{terms:e.terms??[],limit:e.limit});A(t),D(t)&&(process.exitCode=1)}async function M(t=s()){let c={...b(),terms:[],limit:2};for(let e=0;e<t.slice(0).length;e++){let n=t[e].length>3&&t[e].startsWith(`--`)?`--${t[e].slice(2).replaceAll(`-`,``).toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``)}`:t[e].length>2&&t[e].startsWith(`-`)?`-${t[e].slice(1).replaceAll(`-`,``)}`:t[e];if(n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``).startsWith(`terms=`)||n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``)===`terms`||n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``).startsWith(`terms=`)||n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``)===`terms`)c.terms??=[],/^--?(terms)=/.test(`-`+n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``))?c.terms.push(...n.replace(/^--?(terms)=/,``).split(`,`).map(e=>e.trim().replace(/^("|')/,``).replace(/("|')$/,``)).filter(Boolean)):t.length>e+1&&c.terms.push(...t[++e].split(`,`).map(e=>e.trim().replace(/^("|')/,``).replace(/("|')$/,``)).filter(Boolean));else if(n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``).startsWith(`limit=`)||n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``)===`limit`||n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``).startsWith(`limit=`)||n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``)===`limit`){if(/^--?(limit)=/.test(`-`+n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``))){let e=Number(n.replace(/^--?(limit)=/,``).trim().replace(/^("|')/,``).replace(/("|')$/,``));Number.isNaN(e)||(c.limit=e)}else if(t.length>e+1){let n=Number(t[++e].trim().replace(/^("|')/,``).replace(/("|')$/,``));Number.isNaN(n)||(c.limit=n)}}}if(r(`quiet`)||(await k(),await w()),!a()&&!r(`quiet`)&&(n(``),(o||i||u.LOG_LEVEL===`debug`)&&n(l.body.tertiary(`Debug mode is enabled. Additional debug information may be logged to the console.`))),!e){let e=[];c.terms?c.terms.length===0&&e.push(`No values were provided to the required "terms" array option`):e.push(`Missing required "terms" option`),c.limit&&Number.isNaN(c.limit)&&e.push(`Invalid numeric value provided for the "limit" option`)}else if(!a()&&(!c.terms||c.terms.length===0)){if(n(``),!c.terms){let e=await S({message:`Please provide a value for the ${g(`terms`)} option`,description:`One or more search terms (fuzzy match). Example: ["button", "modal", "select"].`,validate(e){return!e||e.trim()===``?`A value must be provided for this option`:null}});if(C(e))return;c.terms=e}else if(c.terms.length===0){let e=await S({message:`Please provide one or more values for the ${g(`terms`)} option (values are separated by a \",\" character)`,description:`One or more search terms (fuzzy match). Example: ["button", "modal", "select"].`,validate(e){if(!e||e.trim()===``)return`A value must be provided for this option`;if(e.split(`,`).map(e=>e.trim()).filter(Boolean).length===0)return`At least one value must be provided for this option`}});if(C(e))return;c.terms=e.split(`,`).map(e=>e.trim()).filter(Boolean)}n(``);let e=[];c.terms?c.terms.length===0&&e.push(`No values were provided to the required "terms" array option`):e.push(`Missing required "terms" option`),c.limit&&Number.isNaN(c.limit)&&e.push(`Invalid numeric value provided for the "limit" option`),e.length>0&&(p(`The following validation failures were found while processing the user provided input, and must be corrected before the ${g(`Search Components`)} command can be executed: \n\n${e.map(e=>` - `+e).join(`
|
|
3
3
|
`)}`),c.help=!0)}return c.help?E():d(`search-components`,[`search-components`],[c],j)}export{M as handler};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{D as e,S as t,h as n,p as r,t as i,x as a}from"./console-
|
|
1
|
+
import{D as e,S as t,h as n,p as r,t as i,x as a}from"./console-C3z2Y61E.mjs";function o(){e(`${i(t.heading.secondary(`Tags: `))} ${t.tags.designSystem?t.tags.designSystem(r(` Design System `)):t.tags.default(r(` Design System `))} ${t.tags.fonts?t.tags.fonts(r(` Fonts `)):t.tags.default(r(` Fonts `))}`,{padding:0}),e(``),e(i(t.heading.secondary(`Usage:`))),e(t.body.secondary(`${t.usage.bin(`>_ cyclone-ui`)} ${t.usage.command(`search-fonts`)} ${t.usage.options(`[options]`)}`),{padding:0}),e(``),e(i(t.heading.secondary(`Options:`))),a([[{value:t.body.primary(`--color, --colors`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Force colored terminal output (env: CYCLONE_UI_COLOR, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--no-color, --no-colors`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Force disable colored terminal output (env: CYCLONE_UI_NO_COLOR, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`-?, -h, --help`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Show help information (default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`-i, --interact, --interactive`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Enable interactive mode - will be set to false if running in a CI pipeline (env: CYCLONE_UI_INTERACTIVE, default: true).`),align:`left`,border:`none`}],[{value:t.body.primary(`--no-interactive, --non-interactive`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Disable interactive mode - will be set to true if running in a CI pipeline (env: CYCLONE_UI_NON_INTERACTIVE, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--limit <limit>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Maximum matches per term (default: 2).`),align:`left`,border:`none`}],[{value:t.body.primary(`--hide-banner, --no-banner`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Do not display the application banner displayed while running the CLI - will be set to true if running in a CI pipeline (env: CYCLONE_UI_NO_BANNER, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--no-color, --no-colors`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Force disable colored terminal output (env: CYCLONE_UI_NO_COLOR, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--no-interactive, --non-interactive`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Disable interactive mode - will be set to true if running in a CI pipeline (env: CYCLONE_UI_NON_INTERACTIVE, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--quiet`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Suppress command decorations and diagnostic messages (default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`--terms <terms...>`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`One or more search terms (fuzzy match).`),align:`left`,border:`none`}],[{value:t.body.primary(`-V, --verbose`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Enable verbose output (env: CYCLONE_UI_VERBOSE, default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`-v, --version`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Show the version of the application (default: false).`),align:`left`,border:`none`}],[{value:t.body.primary(`-y, --yes`),align:`right`,border:`none`,maxWidth:`1/3`},{value:t.body.tertiary(`Skip all prompts by answering yes to all of them - will be set to true if running in a CI pipeline (env: CYCLONE_UI_YES, default: false).`),align:`left`,border:`none`}]]),e(``),e(t.body.tertiary(`More information can be found in the Search Fonts command documentation at ${n(`https://docs.cyclone-ui.com/reference/cli/search-fonts`)}${t.body.tertiary(`.`)}`),{padding:0}),e(``)}export{o as t};
|
package/dist/search-fonts.mjs
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import{A as e,B as t,D as n,F as r,G as i,I as a,K as o,L as s,N as c,S as l,U as u,V as d,_ as f,c as p,j as m,k as h,m as g,n as _,t as v,y,z as b}from"./console-
|
|
1
|
+
import{A as e,B as t,D as n,F as r,G as i,I as a,K as o,L as s,N as c,S as l,U as u,V as d,_ as f,c as p,j as m,k as h,m as g,n as _,t as v,y,z as b}from"./console-C3z2Y61E.mjs";import{a as x,r as S,t as C}from"./prompts-e3s_BIKU.mjs";import{t as w}from"./update-wulHGaSU.mjs";import{t as T}from"./design-system-CNVVaZ1M.mjs";import{t as E}from"./search-fonts-BbUV2DYZ.mjs";import{isSearchError as D,searchFonts as O}from"@razorwind/shell-shock/runtime";async function k(i=500){if(t().get(`is-banner-displayed`)||r(`no-banner`)||r(`hide-banner`)||m)return;t().set(`is-banner-displayed`,!0),n(``),n(_.banner.outline.primary(`┏`)+_.banner.outline.primary(`━`.repeat(6))+` `+l.banner.header.primary(`⬤`)+` `+_.banner.outline.primary(`━`)+` `+v(l.banner.header.primary(`Cyclone CLI v0.6.14`))+` `+_.banner.outline.primary(`━`.repeat(Math.max(h().columns-33,0)))+_.banner.outline.primary(`┓`),{consoleFn:console.log});let o=Math.max(...x.map(e=>y(e).length))>Math.max(h().columns+30,20)?`Cyclone User Interface`:`\n${x.join(`
|
|
2
2
|
`)}\n`;f(o,Math.max(h().columns-30,20)).forEach(e=>{n(_.banner.outline.primary(`┃`)+` `.repeat(Math.max(Math.floor((h().columns-(y(e).length+2))/2),0))+v(l.banner.title.primary(e))+` `.repeat(Math.max(Math.ceil((h().columns-(y(e).length+2))/2),0))+_.banner.outline.primary(`┃`),{consoleFn:console.log})}),n(_.banner.outline.primary(`┃`)+` `.repeat(Math.max(Math.floor((h().columns-(y(`Search Fonts`).length+2))/2),0))+v(l.banner.command.primary(`Search Fonts`))+` `.repeat(Math.max(Math.ceil((h().columns-(y(`Search Fonts`).length+2))/2),0))+_.banner.outline.primary(`┃`),{consoleFn:console.log}),f(v(l.banner.description.primary(`Search design-system fonts by name, family, role, tags and category. Returns the CSS font-family stack, weights and files for each match.`)),Math.max(60>h().columns/2?h().columns-6:h().columns-30,20)).forEach(e=>{n(_.banner.outline.primary(`┃`)+` `.repeat(Math.max(Math.floor((h().columns-(y(e).length+2))/2),0))+l.banner.description.primary(e)+` `.repeat(Math.max(Math.ceil((h().columns-(y(e).length+2))/2),0))+_.banner.outline.primary(`┃`),{consoleFn:console.log})}),n(_.banner.outline.primary(`┃`)+` `.repeat(Math.max(h().columns-2,0))+_.banner.outline.primary(`┃`),{consoleFn:console.log}),n(_.banner.outline.primary(`┗`)+_.banner.outline.primary(`━`.repeat(Math.max(h().columns-32,0)))+` `+v(l.banner.footer.primary(`https://cyclone-ui.com`))+` `+_.banner.outline.primary(`━`.repeat(6))+_.banner.outline.primary(`┛`),{consoleFn:console.log}),n(``),e&&!a()&&await c(i)}function A(e){process.stdout.write(`${typeof e==`string`?e:JSON.stringify(e,null,2)}\n`)}async function j(e){let t=O(T,{terms:e.terms??[],limit:e.limit});A(t),D(t)&&(process.exitCode=1)}async function M(t=s()){let c={...b(),terms:[],limit:2};for(let e=0;e<t.slice(0).length;e++){let n=t[e].length>3&&t[e].startsWith(`--`)?`--${t[e].slice(2).replaceAll(`-`,``).toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``)}`:t[e].length>2&&t[e].startsWith(`-`)?`-${t[e].slice(1).replaceAll(`-`,``)}`:t[e];if(n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``).startsWith(`terms=`)||n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``)===`terms`||n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``).startsWith(`terms=`)||n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``)===`terms`)c.terms??=[],/^--?(terms)=/.test(`-`+n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``))?c.terms.push(...n.replace(/^--?(terms)=/,``).split(`,`).map(e=>e.trim().replace(/^("|')/,``).replace(/("|')$/,``)).filter(Boolean)):t.length>e+1&&c.terms.push(...t[++e].split(`,`).map(e=>e.trim().replace(/^("|')/,``).replace(/("|')$/,``)).filter(Boolean));else if(n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``).startsWith(`limit=`)||n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``)===`limit`||n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``).startsWith(`limit=`)||n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``)===`limit`){if(/^--?(limit)=/.test(`-`+n.toLowerCase().replaceAll(`-`,``).replaceAll(`_`,``))){let e=Number(n.replace(/^--?(limit)=/,``).trim().replace(/^("|')/,``).replace(/("|')$/,``));Number.isNaN(e)||(c.limit=e)}else if(t.length>e+1){let n=Number(t[++e].trim().replace(/^("|')/,``).replace(/("|')$/,``));Number.isNaN(n)||(c.limit=n)}}}if(r(`quiet`)||(await k(),await w()),!a()&&!r(`quiet`)&&(n(``),(o||i||u.LOG_LEVEL===`debug`)&&n(l.body.tertiary(`Debug mode is enabled. Additional debug information may be logged to the console.`))),!e){let e=[];c.terms?c.terms.length===0&&e.push(`No values were provided to the required "terms" array option`):e.push(`Missing required "terms" option`),c.limit&&Number.isNaN(c.limit)&&e.push(`Invalid numeric value provided for the "limit" option`)}else if(!a()&&(!c.terms||c.terms.length===0)){if(n(``),!c.terms){let e=await S({message:`Please provide a value for the ${g(`terms`)} option`,description:`One or more search terms (fuzzy match). Example: ["heading", "mono", "inter"].`,validate(e){return!e||e.trim()===``?`A value must be provided for this option`:null}});if(C(e))return;c.terms=e}else if(c.terms.length===0){let e=await S({message:`Please provide one or more values for the ${g(`terms`)} option (values are separated by a \",\" character)`,description:`One or more search terms (fuzzy match). Example: ["heading", "mono", "inter"].`,validate(e){if(!e||e.trim()===``)return`A value must be provided for this option`;if(e.split(`,`).map(e=>e.trim()).filter(Boolean).length===0)return`At least one value must be provided for this option`}});if(C(e))return;c.terms=e.split(`,`).map(e=>e.trim()).filter(Boolean)}n(``);let e=[];c.terms?c.terms.length===0&&e.push(`No values were provided to the required "terms" array option`):e.push(`Missing required "terms" option`),c.limit&&Number.isNaN(c.limit)&&e.push(`Invalid numeric value provided for the "limit" option`),e.length>0&&(p(`The following validation failures were found while processing the user provided input, and must be corrected before the ${g(`Search Fonts`)} command can be executed: \n\n${e.map(e=>` - `+e).join(`
|
|
3
3
|
`)}`),c.help=!0)}return c.help?E():d(`search-fonts`,[`search-fonts`],[c],j)}export{M as handler};
|