@astryxdesign/cli 0.6.3-canary.db4e378 → 0.6.3-canary.db52d98
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 +38 -15
- package/api/blog/blog.doc.mjs +1 -0
- package/api/build/_adapter.d.mts +50 -0
- package/api/build/_adapter.mjs +60 -0
- package/api/build/build.doc.mjs +14 -7
- package/api/build/build.test.mjs +184 -6
- package/api/build/build.type.d.mts +57 -2
- package/api/build/build.type.mjs +30 -7
- package/api/build/help/help.d.mts +4 -0
- package/api/build/help/help.mjs +24 -11
- package/api/build/kit/kit.d.mts +4 -1
- package/api/build/kit/kit.mjs +165 -49
- package/api/build/kit/rank.d.mts +44 -0
- package/api/build/kit/rank.mjs +432 -0
- package/api/build/kit/rank.test.mjs +196 -0
- package/api/component/_adapter.d.mts +6 -12
- package/api/component/_adapter.mjs +20 -10
- package/api/component/component.doc.mjs +1 -0
- package/api/component/component.mjs +60 -12
- package/api/component/list/list.mjs +3 -2
- package/api/discover/discover.doc.mjs +1 -0
- package/api/docs/_adapter.d.mts +252 -34
- package/api/docs/_adapter.mjs +923 -132
- package/api/docs/detail/detail.mjs +11 -3
- package/api/docs/detail/section/section.mjs +24 -13
- package/api/docs/detail/section/section.test.mjs +15 -6
- package/api/docs/docs.d.mts +5 -3
- package/api/docs/docs.doc.mjs +39 -17
- package/api/docs/docs.mjs +44 -8
- package/api/docs/docs.test.mjs +158 -4
- package/api/docs/docs.type.d.mts +181 -2
- package/api/docs/docs.type.mjs +117 -3
- package/api/docs/index/index.mjs +11 -3
- package/api/docs/index/index.test.mjs +1 -1
- package/api/docs/integration-tree.test.mjs +555 -0
- package/api/docs/integrationDocs.test.mjs +14 -14
- package/api/docs/list/list.mjs +28 -12
- package/api/docs/node/node.d.mts +43 -0
- package/api/docs/node/node.mjs +192 -0
- package/api/docs/reference-blocks.test.mjs +406 -0
- package/api/doctor/doctor.d.mts +54 -4
- package/api/doctor/doctor.doc.mjs +1 -0
- package/api/doctor/doctor.mjs +331 -16
- package/api/doctor/doctor.test.mjs +420 -7
- package/api/gap-report/gap-report.doc.mjs +1 -0
- package/api/hook/_adapter.mjs +19 -5
- package/api/hook/hook.doc.mjs +1 -0
- package/api/hook/list/list.d.mts +1 -1
- package/api/hook/list/list.mjs +69 -17
- package/api/index.d.mts +1 -1
- package/api/index.mjs +1 -0
- package/api/init/init.doc.mjs +2 -1
- package/api/integration/add-contribution.d.mts +2 -1
- package/api/integration/add-contribution.mjs +114 -12
- package/api/integration/add-contribution.test.mjs +174 -3
- package/api/integration/add-theme.mjs +34 -64
- package/api/integration/add-theme.test.mjs +105 -21
- package/api/integration/authoring-checks.mjs +138 -28
- package/api/integration/authoring-checks.test.mjs +179 -7
- package/api/integration/authoring-checks.type.mjs +6 -1
- package/api/integration/integration-authoring.type.d.mts +2 -0
- package/api/integration/integration-authoring.type.mjs +2 -0
- package/api/integration/integration-block-exports.test.mjs +10 -6
- package/api/integration/integrationAdd.doc.mjs +7 -0
- package/api/integration/integrationAddAgentDoc.doc.mjs +1 -0
- package/api/integration/integrationAddCodemod.doc.mjs +1 -0
- package/api/integration/integrationAddComponent.doc.mjs +1 -0
- package/api/integration/integrationAddDoc.doc.mjs +8 -1
- package/api/integration/integrationAddTemplate.doc.mjs +1 -0
- package/api/integration/integrationAddTheme.doc.mjs +6 -5
- package/api/integration/integrationComponentConflicts.doc.mjs +1 -0
- package/api/integration/integrationDocConflicts.doc.mjs +2 -1
- package/api/integration/integrationPackCheck.doc.mjs +2 -1
- package/api/integration/integrationTemplateConflicts.doc.d.mts +3 -0
- package/api/integration/integrationTemplateConflicts.doc.mjs +4 -0
- package/api/integration/pack-check.mjs +34 -0
- package/api/integration/pack-check.test.mjs +138 -47
- package/api/integration/pack-check.type.d.mts +26 -2
- package/api/integration/pack-check.type.mjs +14 -1
- package/api/integration/summarizeIssues.doc.mjs +1 -0
- package/api/integration/template-conflict-compatibility.test.mjs +73 -0
- package/api/integration/validate-integration-fixes.test.mjs +1389 -0
- package/api/integration/validate-integration.mjs +50 -102
- package/api/integration/validate-integration.test.mjs +88 -26
- package/api/integration/validate-unread-theme-folders.test.mjs +110 -0
- package/api/integration/validateIntegration.doc.mjs +2 -1
- package/api/json/assertResponse.doc.mjs +1 -0
- package/api/json/index.ts +2 -0
- package/api/json/isError.doc.mjs +1 -0
- package/api/json/parseResponse.doc.mjs +1 -0
- package/api/layout/_adapter.mjs +20 -5
- package/api/layout/layoutCheck.doc.mjs +1 -0
- package/api/layout/layoutExpand.doc.mjs +1 -0
- package/api/layout/layoutGrammar.doc.mjs +1 -0
- package/api/search/search.d.mts +59 -1
- package/api/search/search.doc.mjs +5 -3
- package/api/search/search.mjs +458 -77
- package/api/search/search.test.mjs +91 -2
- package/api/search/search.type.d.mts +13 -1
- package/api/search/search.type.mjs +4 -1
- package/api/swizzle/swizzle.doc.mjs +1 -0
- package/api/template/list/list.mjs +1 -0
- package/api/template/table-floating-bulk-actions.test.mjs +66 -0
- package/api/template/template-integration.test.mjs +1072 -3
- package/api/template/template-suffix.test.mjs +41 -21
- package/api/template/template.doc.mjs +28 -7
- package/api/template/template.mjs +45 -8
- package/api/template/template.type.d.mts +6 -8
- package/api/template/template.type.mjs +3 -2
- package/api/theme/_adapter.d.mts +2 -3
- package/api/theme/_adapter.mjs +4 -5
- package/api/theme/add/add.binary.test.mjs +10 -17
- package/api/theme/add/add.test.mjs +14 -1
- package/api/theme/generateTonalPalette.doc.mjs +1 -0
- package/api/theme/integration-themes.test.mjs +39 -28
- package/api/theme/list/list.test.mjs +19 -20
- package/api/theme/listThemes.doc.mjs +6 -5
- package/api/theme/template/template.test.mjs +5 -0
- package/api/theme/themeAdd.doc.mjs +4 -3
- package/api/theme/themeBuild.doc.mjs +1 -0
- package/api/theme/themeList.doc.mjs +6 -3
- package/api/theme/themeListAvailable.doc.mjs +5 -3
- package/api/theme/themePaletteGenerate.doc.mjs +1 -0
- package/api/theme/themeTargets.doc.mjs +1 -0
- package/api/theme/themeTemplate.doc.mjs +2 -1
- package/api/upgrade/_adapter.d.mts +32 -5
- package/api/upgrade/_adapter.mjs +97 -69
- package/api/upgrade/provider-agreement.test.mjs +152 -0
- package/api/upgrade/run/run.mjs +356 -59
- package/api/upgrade/upgrade.doc.mjs +6 -1
- package/api/upgrade/upgrade.type.d.mts +34 -0
- package/api/upgrade/upgrade.type.mjs +15 -0
- package/assets/codemods/__tests__/runner.test.mjs +330 -8
- package/assets/codemods/integration-discovery.mjs +8 -2
- package/assets/codemods/integration-discovery.test.mjs +15 -0
- package/assets/codemods/integration-runner.mjs +56 -4
- package/assets/codemods/integration-runner.protection.test.mjs +153 -0
- package/assets/codemods/run-codemod.mjs +177 -34
- package/assets/codemods/runner.mjs +350 -102
- package/assets/codemods/transforms/next/__tests__/migrate-native-picker-to-presentation.test.mjs +63 -0
- package/assets/codemods/transforms/next/__tests__/migrate-theme-catalog-to-descriptors.test.mjs +220 -0
- package/assets/codemods/transforms/next/index.mjs +19 -1
- package/assets/codemods/transforms/next/migrate-native-picker-to-presentation.mjs +148 -0
- package/assets/codemods/transforms/next/migrate-theme-catalog-to-descriptors.mjs +141 -0
- package/assets/docs/getting-started.doc.mjs +2 -2
- package/assets/docs/layout.doc.dense.mjs +2 -2
- package/assets/docs/layout.doc.mjs +1 -1
- package/assets/docs/principles.doc.mjs +6 -6
- package/assets/docs/styling-libraries.doc.mjs +3 -3
- package/assets/docs/styling.doc.mjs +4 -4
- package/assets/docs/theme.doc.mjs +5 -5
- package/assets/docs/tokens.doc.mjs +1 -1
- package/assets/docs/tree/api.doc.mjs +30 -0
- package/assets/docs/tree/cli.doc.mjs +23 -0
- package/assets/docs/tree/commands.doc.mjs +25 -0
- package/assets/docs/{cli-integrations.doc.mjs → tree/integrations.doc.mjs} +66 -38
- package/assets/docs/tree/integrations.test.mjs +62 -0
- package/assets/docs/tree/writing-docs.doc.mjs +286 -0
- package/assets/docs/working-with-ai.doc.mjs +3 -3
- package/assets/templates/blocks/components/CheckboxList/CheckboxListSelectAllPattern.doc.mjs +1 -1
- package/assets/templates/blocks/components/CheckboxList/CheckboxListSelectAllPattern.tsx +1 -3
- package/assets/templates/blocks/components/DateInput/DateInputDateRange.tsx +1 -1
- package/assets/templates/blocks/components/Item/ItemDocumentTabs.doc.mjs +14 -0
- package/assets/templates/blocks/components/Item/ItemDocumentTabs.tsx +100 -0
- package/assets/templates/blocks/components/Table/TableBulkActionsTable.doc.mjs +14 -0
- package/assets/templates/blocks/components/Table/TableBulkActionsTable.tsx +71 -0
- package/assets/templates/blocks/components/Table/TableFloatingBulkActionsTable.doc.mjs +19 -0
- package/assets/templates/blocks/components/Table/TableFloatingBulkActionsTable.tsx +139 -0
- package/assets/templates/blocks/components/TimeInput/TimeInputConstrained.tsx +1 -0
- package/assets/templates/themes/butter/butterTheme.doc.mjs +11 -0
- package/assets/templates/themes/chocolate/chocolateTheme.doc.mjs +11 -0
- package/assets/templates/themes/gothic/gothicTheme.doc.mjs +11 -0
- package/assets/templates/themes/matcha/matchaTheme.doc.mjs +11 -0
- package/assets/templates/themes/neutral/neutralTheme.doc.mjs +11 -0
- package/assets/templates/themes/stone/stoneTheme.doc.mjs +11 -0
- package/assets/templates/themes/y2k/y2kTheme.doc.mjs +11 -0
- package/authoring/codemod/codemod.doc.mjs +1 -1
- package/authoring/codemod/type.ts +12 -0
- package/authoring/config/config.doc.mjs +1 -1
- package/authoring/debug/debug.doc.d.mts +11 -0
- package/authoring/debug/debug.doc.mjs +182 -0
- package/authoring/debug/parse.d.mts +3 -3
- package/authoring/doctypes/_schema.d.mts +119 -117
- package/authoring/doctypes/_schema.mjs +54 -3
- package/authoring/doctypes/base/graph-fields.doc.mjs +8 -6
- package/authoring/doctypes/base/type.ts +6 -5
- package/authoring/doctypes/command/command.doc.mjs +1 -1
- package/authoring/doctypes/command/type.ts +2 -2
- package/authoring/doctypes/component/type.ts +2 -2
- package/authoring/doctypes/doctypes-new.test.mjs +48 -6
- package/authoring/doctypes/enum/enum.doc.mjs +1 -1
- package/authoring/doctypes/enum/type.ts +1 -1
- package/authoring/doctypes/function/function.doc.mjs +3 -2
- package/authoring/doctypes/function/type.ts +3 -2
- package/authoring/doctypes/hook/type.ts +2 -2
- package/authoring/doctypes/load-contract.test.mjs +28 -2
- package/authoring/doctypes/namespace/namespace.doc.mjs +6 -10
- package/authoring/doctypes/namespace/parse.test.mjs +23 -25
- package/authoring/doctypes/namespace/type.ts +5 -2
- package/authoring/doctypes/parse.d.mts +4 -2
- package/authoring/doctypes/parse.mjs +10 -5
- package/authoring/doctypes/reference/reference.doc.mjs +35 -6
- package/authoring/doctypes/reference/type.ts +30 -13
- package/authoring/doctypes/schema/schema.doc.mjs +1 -1
- package/authoring/doctypes/schema/type.ts +1 -2
- package/authoring/doctypes/template/parse.d.mts +2 -0
- package/authoring/doctypes/template/parse.mjs +4 -0
- package/authoring/doctypes/template/parse.test.mjs +18 -0
- package/authoring/doctypes/template/template.doc.mjs +9 -3
- package/authoring/doctypes/template/type.ts +8 -0
- package/authoring/doctypes/theme/parse.d.mts +35 -0
- package/authoring/doctypes/theme/parse.mjs +76 -0
- package/authoring/doctypes/theme/theme.doc.d.mts +9 -0
- package/authoring/doctypes/theme/theme.doc.mjs +79 -0
- package/authoring/doctypes/theme/type.ts +42 -0
- package/authoring/doctypes/types.ts +2 -1
- package/authoring/gap-report/gap-report.doc.d.mts +12 -0
- package/authoring/gap-report/gap-report.doc.mjs +183 -0
- package/authoring/identity/identity.doc.mjs +2 -2
- package/authoring/index.d.mts +1 -0
- package/authoring/index.d.ts +7 -4
- package/authoring/index.mjs +2 -1
- package/authoring/integration/integration.doc.mjs +2 -2
- package/authoring/integration/type.ts +4 -10
- package/clients/cli/__tests__/cliManifest.test.ts +27 -29
- package/clients/cli/commands/blog.doc.mjs +1 -1
- package/clients/cli/commands/build-theme.adaptations.test.mjs +100 -1
- package/clients/cli/commands/build-theme.mjs +11 -45
- package/clients/cli/commands/build.doc.mjs +12 -7
- package/clients/cli/commands/build.mjs +105 -67
- package/clients/cli/commands/build.text-fields.test.mjs +41 -0
- package/clients/cli/commands/component/index.mjs +1 -1
- package/clients/cli/commands/component-ownership.test.mjs +3 -3
- package/clients/cli/commands/component.doc.mjs +1 -1
- package/clients/cli/commands/discover.broken-integration.test.mjs +7 -8
- package/clients/cli/commands/discover.doc.mjs +1 -1
- package/clients/cli/commands/discover.mjs +1 -1
- package/clients/cli/commands/docs.doc.mjs +21 -9
- package/clients/cli/commands/docs.mjs +184 -70
- package/clients/cli/commands/docs.test.mjs +120 -16
- package/clients/cli/commands/doctor-integration-components.doc.mjs +1 -1
- package/clients/cli/commands/doctor-integration-docs.doc.mjs +3 -3
- package/clients/cli/commands/doctor-integration-templates.doc.mjs +15 -8
- package/clients/cli/commands/doctor-integration-validate.doc.mjs +1 -1
- package/clients/cli/commands/doctor-integration.doc.mjs +1 -1
- package/clients/cli/commands/doctor-integration.test.mjs +90 -8
- package/clients/cli/commands/doctor.doc.mjs +1 -1
- package/clients/cli/commands/doctor.mjs +53 -16
- package/clients/cli/commands/gap-report.doc.mjs +1 -1
- package/clients/cli/commands/hook.doc.mjs +1 -1
- package/clients/cli/commands/init.doc.mjs +1 -1
- package/clients/cli/commands/integration-add.controls.test.mjs +1 -1
- package/clients/cli/commands/integration-add.doc.mjs +11 -1
- package/clients/cli/commands/integration-pack.doc.mjs +1 -1
- package/clients/cli/commands/integration-real-world.test.mjs +3 -9
- package/clients/cli/commands/integration.doc.mjs +1 -1
- package/clients/cli/commands/integration.mjs +1 -0
- package/clients/cli/commands/layout-check.doc.mjs +1 -1
- package/clients/cli/commands/layout-expand.doc.mjs +1 -1
- package/clients/cli/commands/layout-grammar.doc.mjs +1 -1
- package/clients/cli/commands/layout.doc.mjs +1 -1
- package/clients/cli/commands/manifest.doc.mjs +1 -1
- package/clients/cli/commands/search.doc.mjs +1 -1
- package/clients/cli/commands/search.mjs +11 -2
- package/clients/cli/commands/setup-nudge.test.mjs +6 -0
- package/clients/cli/commands/swizzle.doc.mjs +1 -1
- package/clients/cli/commands/template.doc.mjs +24 -7
- package/clients/cli/commands/template.mjs +4 -91
- package/clients/cli/commands/text-json-parity.test.mjs +719 -0
- package/clients/cli/commands/theme-add.doc.mjs +2 -2
- package/clients/cli/commands/theme-build.doc.mjs +1 -1
- package/clients/cli/commands/theme-list.doc.mjs +2 -2
- package/clients/cli/commands/theme-palette-generate.doc.mjs +3 -3
- package/clients/cli/commands/theme-palette.doc.mjs +1 -1
- package/clients/cli/commands/theme-targets.behavior.test.mjs +4 -3
- package/clients/cli/commands/theme-targets.doc.mjs +1 -1
- package/clients/cli/commands/theme-template.doc.mjs +1 -1
- package/clients/cli/commands/theme.doc.mjs +1 -1
- package/clients/cli/commands/upgrade.doc.mjs +3 -2
- package/clients/cli/commands/upgrade.file-protection.test.mjs +228 -0
- package/clients/cli/commands/upgrade.mjs +29 -7
- package/clients/cli/formatters/index.mjs +2 -0
- package/clients/cli/formatters/index.test.mjs +6 -0
- package/clients/cli/index.mjs +8 -0
- package/clients/cli/lib/hook-format.mjs +14 -5
- package/clients/cli/lib/manifest.mjs +9 -2
- package/foundation/agent-docs/agent-docs.d.mts +3 -2
- package/foundation/agent-docs/agent-docs.mjs +13 -9
- package/foundation/agent-docs/agent-docs.test.mjs +19 -1
- package/foundation/config/project-themes.test.mjs +11 -19
- package/foundation/config/project.d.mts +20 -11
- package/foundation/config/project.mjs +123 -80
- package/foundation/config/project.test.mjs +144 -21
- package/foundation/discovery/authoring-self-docs.d.mts +18 -0
- package/foundation/discovery/authoring-self-docs.mjs +37 -15
- package/foundation/discovery/authoring-self-docs.test.mjs +25 -9
- package/foundation/discovery/authoring-surface.d.mts +74 -0
- package/foundation/discovery/authoring-surface.mjs +525 -0
- package/foundation/discovery/authoring-surface.test.mjs +392 -0
- package/foundation/discovery/cli-self-docs.d.mts +119 -0
- package/foundation/discovery/cli-self-docs.mjs +490 -0
- package/foundation/discovery/cli-self-docs.test.mjs +375 -0
- package/foundation/discovery/component-discovery.d.mts +38 -0
- package/foundation/discovery/component-discovery.mjs +48 -0
- package/foundation/discovery/component-loader.d.mts +35 -38
- package/foundation/discovery/component-loader.mjs +53 -222
- package/foundation/discovery/docs-discovery.d.mts +112 -11
- package/foundation/discovery/docs-discovery.mjs +231 -36
- package/foundation/discovery/docs-discovery.test.mjs +111 -32
- package/foundation/discovery/docs-output-budget.d.mts +2 -2
- package/foundation/discovery/docs-output-budget.mjs +1 -1
- package/foundation/discovery/docs-section-key.d.mts +28 -10
- package/foundation/discovery/docs-section-key.mjs +134 -33
- package/foundation/discovery/docs-section-key.test.mjs +41 -19
- package/foundation/discovery/template-adapter.d.mts +99 -6
- package/foundation/discovery/template-adapter.mjs +480 -57
- package/foundation/discovery/template-adapter.test.mjs +57 -0
- package/foundation/discovery/template-conflict-release.d.mts +13 -0
- package/foundation/discovery/template-conflict-release.mjs +40 -0
- package/foundation/discovery/template-conflict-release.test.mjs +40 -0
- package/foundation/discovery/theme-discovery.d.mts +67 -7
- package/foundation/discovery/theme-discovery.mjs +916 -186
- package/foundation/discovery/theme-discovery.test.mjs +613 -219
- package/foundation/doc-compiler/bundle.d.mts +47 -0
- package/foundation/doc-compiler/bundle.mjs +278 -0
- package/foundation/doc-compiler/bundle.test.mjs +266 -0
- package/foundation/doc-compiler/compile.d.mts +220 -39
- package/foundation/doc-compiler/compile.mjs +311 -15
- package/foundation/doc-compiler/diagnostics.d.mts +126 -0
- package/foundation/doc-compiler/diagnostics.mjs +305 -0
- package/foundation/doc-compiler/doc-compiler.test.mjs +28 -1
- package/foundation/doc-compiler/doc-loads.test.mjs +1642 -0
- package/foundation/doc-compiler/import.d.mts +24 -0
- package/foundation/doc-compiler/import.mjs +59 -0
- package/foundation/doc-compiler/inputs.d.mts +102 -0
- package/foundation/doc-compiler/inputs.mjs +291 -0
- package/foundation/doc-compiler/inputs.test.mjs +299 -0
- package/foundation/doc-compiler/ir.d.mts +13 -0
- package/foundation/doc-compiler/ir.mjs +196 -12
- package/foundation/doc-compiler/lenses.d.mts +8 -5
- package/foundation/doc-compiler/lenses.mjs +50 -4
- package/foundation/doc-compiler/links.d.mts +162 -0
- package/foundation/doc-compiler/links.mjs +294 -0
- package/foundation/doc-compiler/links.test.mjs +192 -0
- package/foundation/doc-compiler/lower-doc.test.mjs +495 -0
- package/foundation/doc-compiler/overlays.d.mts +37 -0
- package/foundation/doc-compiler/overlays.mjs +206 -0
- package/foundation/doc-compiler/parse-readable.d.mts +9 -0
- package/foundation/doc-compiler/parse-readable.mjs +29 -0
- package/foundation/doc-compiler/read.d.mts +127 -0
- package/foundation/doc-compiler/read.mjs +325 -0
- package/foundation/doc-compiler/read.test.mjs +313 -0
- package/foundation/doc-compiler/source.d.mts +33 -0
- package/foundation/doc-compiler/source.mjs +128 -0
- package/foundation/doc-compiler/tree.d.mts +288 -0
- package/foundation/doc-compiler/tree.mjs +876 -0
- package/foundation/doc-compiler/tree.test.mjs +598 -0
- package/foundation/fs/file-protection.d.mts +33 -0
- package/foundation/fs/file-protection.mjs +825 -0
- package/foundation/fs/file-protection.test.mjs +250 -0
- package/foundation/integrations/autolink.d.mts +58 -1
- package/foundation/integrations/autolink.mjs +143 -57
- package/foundation/integrations/autolink.test.mjs +1 -1
- package/foundation/integrations/cli-requirement.d.mts +45 -0
- package/foundation/integrations/cli-requirement.mjs +154 -0
- package/foundation/integrations/cli-requirement.test.mjs +84 -0
- package/foundation/integrations/contribution-fixes.d.mts +145 -0
- package/foundation/integrations/contribution-fixes.mjs +1284 -0
- package/foundation/integrations/contribution-inventory.d.mts +3 -2
- package/foundation/integrations/contribution-inventory.mjs +27 -24
- package/foundation/integrations/contribution-inventory.test.mjs +86 -27
- package/foundation/integrations/integration-warnings.d.mts +9 -2
- package/foundation/integrations/integration-warnings.mjs +51 -26
- package/foundation/integrations/integration-warnings.test.mjs +74 -1
- package/foundation/integrations/integrations.d.mts +3 -0
- package/foundation/integrations/integrations.mjs +11 -97
- package/foundation/integrations/provider-ledger.test.mjs +275 -0
- package/foundation/integrations/provider-resolution.d.mts +152 -0
- package/foundation/integrations/provider-resolution.mjs +576 -0
- package/foundation/integrations/provider-resolution.test.mjs +369 -0
- package/foundation/integrations/theme-descriptor.d.mts +8 -0
- package/foundation/integrations/theme-descriptor.mjs +44 -0
- package/foundation/integrations/validate-contributions.mjs +121 -29
- package/foundation/response/error-codes.d.mts +3 -1
- package/foundation/response/error-codes.d.ts +2 -0
- package/foundation/response/error-codes.doc.mjs +12 -2
- package/foundation/response/error-codes.mjs +7 -1
- package/foundation/response/error-codes.test.mjs +55 -11
- package/foundation/response/response-types.doc.d.mts +5 -1
- package/foundation/response/response-types.doc.mjs +20 -11
- package/foundation/response/response.doc.mjs +1 -1
- package/foundation/text/string-utils.d.mts +8 -0
- package/foundation/text/string-utils.mjs +40 -10
- package/foundation/xle/expand.mjs +1 -1
- package/foundation/xle/xle.test.mjs +13 -0
- package/package.json +10 -9
- package/assets/templates/themes/manifest.json +0 -95
|
@@ -0,0 +1,288 @@
|
|
|
1
|
+
// @generated by scripts/sync-api-types.mjs from the JSDoc in foundation/**/*.mjs.
|
|
2
|
+
// DO NOT EDIT — run `pnpm sync:api-types` to regenerate.
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Build the tree. Pure: the same inputs give the same tree, whatever order
|
|
6
|
+
* they arrive in.
|
|
7
|
+
*
|
|
8
|
+
* A doc's home is decided once, in this order: its explicit `placement`, then
|
|
9
|
+
* the one adoption rule in its package that matches its group and kind. A
|
|
10
|
+
* placement that fails withdraws the doc; it never falls back to adoption. A
|
|
11
|
+
* doc with neither is a flat topic: it keeps its flat name as its route, and its
|
|
12
|
+
* home is the generated Unorganized level. The CLI keeps its own routes: an
|
|
13
|
+
* integration's node that would take one is withdrawn with a diagnostic.
|
|
14
|
+
*
|
|
15
|
+
* @param {{namespaces: TreeNamespaceInput[], docs: TreeDocInput[], topics?: TreeTopicInput[]}} inputs
|
|
16
|
+
* @returns {DocsTree}
|
|
17
|
+
*/
|
|
18
|
+
export function buildDocsTree({ namespaces, docs, topics }: {
|
|
19
|
+
namespaces: TreeNamespaceInput[];
|
|
20
|
+
docs: TreeDocInput[];
|
|
21
|
+
topics?: TreeTopicInput[];
|
|
22
|
+
}): DocsTree;
|
|
23
|
+
/**
|
|
24
|
+
* The files under {@link TREE_DOCS_DIR}, sorted.
|
|
25
|
+
* @param {string} [dir]
|
|
26
|
+
* @returns {string[]}
|
|
27
|
+
*/
|
|
28
|
+
export function treeDocFiles(dir?: string): string[];
|
|
29
|
+
/**
|
|
30
|
+
* The CLI's own tree inputs: the namespace docs and guides under
|
|
31
|
+
* assets/docs/tree, and, unless left out, every typed self-doc with its
|
|
32
|
+
* `namespace` group. A file that fails to load or parse is a diagnostic, never
|
|
33
|
+
* a thrown error.
|
|
34
|
+
* @param {{selfDocs?: boolean, dir?: string}} [options]
|
|
35
|
+
* @returns {Promise<{namespaces: TreeNamespaceInput[], docs: TreeDocInput[], diagnostics: CompilerDiagnostic[]}>}
|
|
36
|
+
*/
|
|
37
|
+
export function loadTreeInputs({ selfDocs, dir, }?: {
|
|
38
|
+
selfDocs?: boolean;
|
|
39
|
+
dir?: string;
|
|
40
|
+
}): Promise<{
|
|
41
|
+
namespaces: TreeNamespaceInput[];
|
|
42
|
+
docs: TreeDocInput[];
|
|
43
|
+
diagnostics: CompilerDiagnostic[];
|
|
44
|
+
}>;
|
|
45
|
+
/**
|
|
46
|
+
* The CLI's own docs tree, built once per process. With `selfDocs: false` it
|
|
47
|
+
* holds only the namespaces and guides, which is all a topic list needs.
|
|
48
|
+
* @param {{selfDocs?: boolean, fresh?: boolean}} [options]
|
|
49
|
+
* @returns {Promise<DocsTree>}
|
|
50
|
+
*/
|
|
51
|
+
export function loadDocsTree({ selfDocs, fresh }?: {
|
|
52
|
+
selfDocs?: boolean;
|
|
53
|
+
fresh?: boolean;
|
|
54
|
+
}): Promise<DocsTree>;
|
|
55
|
+
export { routeSegment };
|
|
56
|
+
/** Where the CLI keeps the docs that only the tree reads. */
|
|
57
|
+
export const TREE_DOCS_DIR: string;
|
|
58
|
+
/** One route segment: lowercase letters and digits joined by single hyphens. */
|
|
59
|
+
export const ROUTE_SEGMENT_RE: RegExp;
|
|
60
|
+
/**
|
|
61
|
+
* The generated level that `groupBy: 'kind'` makes for each kind: its route
|
|
62
|
+
* segment, title, and summary.
|
|
63
|
+
* @type {Readonly<Record<string, {segment: string, title: string, summary: string}>>}
|
|
64
|
+
*/
|
|
65
|
+
export const KIND_GROUPS: Readonly<Record<string, {
|
|
66
|
+
segment: string;
|
|
67
|
+
title: string;
|
|
68
|
+
summary: string;
|
|
69
|
+
}>>;
|
|
70
|
+
/**
|
|
71
|
+
* @typedef {import('../../authoring/doctypes/namespace/type').NamespaceDoc} NamespaceDoc
|
|
72
|
+
* @typedef {import('../../authoring/doctypes/base/type').DocPlacement} DocPlacement
|
|
73
|
+
* @typedef {import('./diagnostics.mjs').CompilerDiagnostic} CompilerDiagnostic
|
|
74
|
+
*/
|
|
75
|
+
/**
|
|
76
|
+
* @typedef {object} TreeNamespaceInput
|
|
77
|
+
* @property {string} provider the package that owns the namespace
|
|
78
|
+
* @property {string} providerId the provider's ProviderId (its manifest
|
|
79
|
+
* `providerId`, else its package name); node ids are built from it
|
|
80
|
+
* @property {number} [rank] which provider wins a contested route: the CLI's
|
|
81
|
+
* own docs are 0, then each integration in configured order
|
|
82
|
+
* @property {string} source `<package>/<path>` of its file
|
|
83
|
+
* @property {NamespaceDoc} doc
|
|
84
|
+
*/
|
|
85
|
+
/**
|
|
86
|
+
* @typedef {object} TreeDocInput
|
|
87
|
+
* @property {string} provider the package that authored the doc
|
|
88
|
+
* @property {string} providerId the provider's ProviderId (its manifest
|
|
89
|
+
* `providerId`, else its package name); node ids are built from it
|
|
90
|
+
* @property {number} [rank] which provider wins a contested route: the CLI's
|
|
91
|
+
* own docs are 0, then each integration in configured order
|
|
92
|
+
* @property {string} source
|
|
93
|
+
* @property {import('../../authoring/doctypes/base/type').AuthoredDocKind} kind
|
|
94
|
+
* the authored kind: `generic`, `command`, `function`, `schema`, or `enum`
|
|
95
|
+
* @property {string} name the doc's stable name
|
|
96
|
+
* @property {string} title
|
|
97
|
+
* @property {string} summary
|
|
98
|
+
* @property {string | null} group the discovery group adoption reads, or null
|
|
99
|
+
* @property {DocPlacement | undefined} placement
|
|
100
|
+
* @property {any} [ref] what a reader needs to open the doc, carried as given
|
|
101
|
+
*/
|
|
102
|
+
/**
|
|
103
|
+
* @typedef {object} TreeSlot
|
|
104
|
+
* @property {string} name
|
|
105
|
+
* @property {string} title
|
|
106
|
+
* @property {string[]} children child routes, in reading order
|
|
107
|
+
*/
|
|
108
|
+
/**
|
|
109
|
+
* A flat topic: a reference topic that no namespace places. The tree gives it
|
|
110
|
+
* a home in the generated Unorganized level, under its own name.
|
|
111
|
+
* @typedef {object} TreeTopicInput
|
|
112
|
+
* @property {string} provider the package that owns the topic
|
|
113
|
+
* @property {string} providerId the provider's ProviderId
|
|
114
|
+
* @property {string} name the topic's name, which stays its route
|
|
115
|
+
* @property {string} title
|
|
116
|
+
* @property {string} summary
|
|
117
|
+
* @property {string} source where the topic comes from, for diagnostics
|
|
118
|
+
* @property {string[]} [aliases] every other name the topic answers to: the
|
|
119
|
+
* topics it replaced, directly or through a chain
|
|
120
|
+
*/
|
|
121
|
+
/** The route of the generated level that holds every flat topic. */
|
|
122
|
+
export const UNORGANIZED: "unorganized";
|
|
123
|
+
export type NamespaceDoc = import("../../authoring/doctypes/namespace/type").NamespaceDoc;
|
|
124
|
+
export type DocPlacement = import("../../authoring/doctypes/base/type").DocPlacement;
|
|
125
|
+
export type CompilerDiagnostic = import("./diagnostics.mjs").CompilerDiagnostic;
|
|
126
|
+
export type TreeNamespaceInput = {
|
|
127
|
+
/**
|
|
128
|
+
* the package that owns the namespace
|
|
129
|
+
*/
|
|
130
|
+
provider: string;
|
|
131
|
+
/**
|
|
132
|
+
* the provider's ProviderId (its manifest
|
|
133
|
+
* `providerId`, else its package name); node ids are built from it
|
|
134
|
+
*/
|
|
135
|
+
providerId: string;
|
|
136
|
+
/**
|
|
137
|
+
* which provider wins a contested route: the CLI's
|
|
138
|
+
* own docs are 0, then each integration in configured order
|
|
139
|
+
*/
|
|
140
|
+
rank?: number | undefined;
|
|
141
|
+
/**
|
|
142
|
+
* `<package>/<path>` of its file
|
|
143
|
+
*/
|
|
144
|
+
source: string;
|
|
145
|
+
doc: NamespaceDoc;
|
|
146
|
+
};
|
|
147
|
+
export type TreeDocInput = {
|
|
148
|
+
/**
|
|
149
|
+
* the package that authored the doc
|
|
150
|
+
*/
|
|
151
|
+
provider: string;
|
|
152
|
+
/**
|
|
153
|
+
* the provider's ProviderId (its manifest
|
|
154
|
+
* `providerId`, else its package name); node ids are built from it
|
|
155
|
+
*/
|
|
156
|
+
providerId: string;
|
|
157
|
+
/**
|
|
158
|
+
* which provider wins a contested route: the CLI's
|
|
159
|
+
* own docs are 0, then each integration in configured order
|
|
160
|
+
*/
|
|
161
|
+
rank?: number | undefined;
|
|
162
|
+
source: string;
|
|
163
|
+
/**
|
|
164
|
+
* the authored kind: `generic`, `command`, `function`, `schema`, or `enum`
|
|
165
|
+
*/
|
|
166
|
+
kind: import("../../authoring/doctypes/base/type").AuthoredDocKind;
|
|
167
|
+
/**
|
|
168
|
+
* the doc's stable name
|
|
169
|
+
*/
|
|
170
|
+
name: string;
|
|
171
|
+
title: string;
|
|
172
|
+
summary: string;
|
|
173
|
+
/**
|
|
174
|
+
* the discovery group adoption reads, or null
|
|
175
|
+
*/
|
|
176
|
+
group: string | null;
|
|
177
|
+
placement: DocPlacement | undefined;
|
|
178
|
+
/**
|
|
179
|
+
* what a reader needs to open the doc, carried as given
|
|
180
|
+
*/
|
|
181
|
+
ref?: any;
|
|
182
|
+
};
|
|
183
|
+
export type TreeSlot = {
|
|
184
|
+
name: string;
|
|
185
|
+
title: string;
|
|
186
|
+
/**
|
|
187
|
+
* child routes, in reading order
|
|
188
|
+
*/
|
|
189
|
+
children: string[];
|
|
190
|
+
};
|
|
191
|
+
/**
|
|
192
|
+
* A flat topic: a reference topic that no namespace places. The tree gives it
|
|
193
|
+
* a home in the generated Unorganized level, under its own name.
|
|
194
|
+
*/
|
|
195
|
+
export type TreeTopicInput = {
|
|
196
|
+
/**
|
|
197
|
+
* the package that owns the topic
|
|
198
|
+
*/
|
|
199
|
+
provider: string;
|
|
200
|
+
/**
|
|
201
|
+
* the provider's ProviderId
|
|
202
|
+
*/
|
|
203
|
+
providerId: string;
|
|
204
|
+
/**
|
|
205
|
+
* the topic's name, which stays its route
|
|
206
|
+
*/
|
|
207
|
+
name: string;
|
|
208
|
+
title: string;
|
|
209
|
+
summary: string;
|
|
210
|
+
/**
|
|
211
|
+
* where the topic comes from, for diagnostics
|
|
212
|
+
*/
|
|
213
|
+
source: string;
|
|
214
|
+
/**
|
|
215
|
+
* every other name the topic answers to: the
|
|
216
|
+
* topics it replaced, directly or through a chain
|
|
217
|
+
*/
|
|
218
|
+
aliases?: string[] | undefined;
|
|
219
|
+
};
|
|
220
|
+
export type TreeNode = {
|
|
221
|
+
/**
|
|
222
|
+
* the doc's DocId, built from its provider's
|
|
223
|
+
* ProviderId, kind, and name: stable when the route moves; null on a
|
|
224
|
+
* generated level, which has no authored doc
|
|
225
|
+
*/
|
|
226
|
+
id: string | null;
|
|
227
|
+
route: string;
|
|
228
|
+
/**
|
|
229
|
+
* `namespace` or the doc's authored kind
|
|
230
|
+
*/
|
|
231
|
+
kind: string;
|
|
232
|
+
/**
|
|
233
|
+
* the package that owns it
|
|
234
|
+
*/
|
|
235
|
+
provider: string;
|
|
236
|
+
/**
|
|
237
|
+
* its provider's ProviderId
|
|
238
|
+
*/
|
|
239
|
+
providerId: string;
|
|
240
|
+
name: string;
|
|
241
|
+
title: string;
|
|
242
|
+
summary: string;
|
|
243
|
+
/**
|
|
244
|
+
* the parent's route; null at the top
|
|
245
|
+
*/
|
|
246
|
+
parent: string | null;
|
|
247
|
+
/**
|
|
248
|
+
* the parent slot this node sits in
|
|
249
|
+
*/
|
|
250
|
+
slot: string | null;
|
|
251
|
+
order: number | null;
|
|
252
|
+
/**
|
|
253
|
+
* made by the compiler (a `groupBy: 'kind'`
|
|
254
|
+
* level, or the Unorganized level), not authored
|
|
255
|
+
*/
|
|
256
|
+
generated: boolean;
|
|
257
|
+
/**
|
|
258
|
+
* a namespace's slots; empty for a leaf
|
|
259
|
+
*/
|
|
260
|
+
slots: TreeSlot[];
|
|
261
|
+
source: string;
|
|
262
|
+
ref?: any;
|
|
263
|
+
};
|
|
264
|
+
export type DocsTree = {
|
|
265
|
+
/**
|
|
266
|
+
* by route, in route order
|
|
267
|
+
*/
|
|
268
|
+
nodes: Map<string, TreeNode>;
|
|
269
|
+
/**
|
|
270
|
+
* sorted
|
|
271
|
+
*/
|
|
272
|
+
diagnostics: CompilerDiagnostic[];
|
|
273
|
+
get: (route: string) => TreeNode | undefined;
|
|
274
|
+
/**
|
|
275
|
+
* the node at a
|
|
276
|
+
* route compared without case, as topic names are
|
|
277
|
+
*/
|
|
278
|
+
getFolded: (route: string) => TreeNode | undefined;
|
|
279
|
+
/**
|
|
280
|
+
* the namespaces with no parent
|
|
281
|
+
*/
|
|
282
|
+
roots: () => TreeNode[];
|
|
283
|
+
/**
|
|
284
|
+
* top first, not the node
|
|
285
|
+
*/
|
|
286
|
+
ancestors: (node: TreeNode) => TreeNode[];
|
|
287
|
+
};
|
|
288
|
+
import { routeSegment } from '../discovery/docs-section-key.mjs';
|