@astryxdesign/cli 0.1.7 → 0.1.8-canary.07362a9
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/CHANGELOG.md +40 -0
- package/README.md +115 -19
- package/{src/api → api/blog}/blog.mjs +42 -6
- package/{src/api → api/blog}/blog.test.mjs +2 -2
- package/api/build/build.mjs +92 -0
- package/api/build/build.test.mjs +92 -0
- package/{src/api → api/component}/component.mjs +49 -26
- package/{src/api → api/discover}/discover.mjs +55 -18
- package/{src/api → api/docs}/docs.mjs +47 -21
- package/{src/api → api/doctor}/doctor.mjs +13 -10
- package/{src/api → api}/error.mjs +2 -2
- package/{src/api → api/hook}/hook.mjs +11 -11
- package/{src/api → api}/index.mjs +16 -9
- package/{src/api → api/integration}/validate-integration.mjs +48 -15
- package/{src/api → api/integration}/validate-integration.test.mjs +1 -1
- package/{src/api → api/layout}/layout.mjs +66 -17
- package/{src/api → api/layout}/layout.test.mjs +1 -1
- package/{src/api → api/search}/search.mjs +71 -12
- package/api/swizzle/swizzle.mjs +283 -0
- package/{src/commands → api/swizzle}/swizzle.test.mjs +26 -1
- package/{src/api → api/template}/template-integration.test.mjs +2 -2
- package/{src/api → api/template}/template-suffix.test.mjs +3 -3
- package/{src/api → api/template}/template.mjs +96 -19
- package/{src/api → api/theme}/theme-add.mjs +35 -7
- package/{src → authoring}/codemod.mjs +6 -6
- package/{src → authoring}/config.test.mjs +1 -1
- package/{src → authoring}/doc.mjs +1 -1
- package/{src → authoring}/doc.test.mjs +1 -1
- package/{src → authoring}/template.mjs +1 -1
- package/bin/astryx.mjs +12 -10
- package/{src → cli}/commands/blog.mjs +48 -7
- package/{src → cli}/commands/build-theme.mjs +133 -115
- package/cli/commands/build.mjs +172 -0
- package/cli/commands/cli-postinstall.test.mjs +42 -0
- package/{src → cli}/commands/component/index.mjs +52 -25
- package/{src → cli}/commands/component-ownership.test.mjs +3 -3
- package/{src → cli}/commands/component-package.test.mjs +1 -1
- package/{src → cli}/commands/component-resolution.test.mjs +2 -2
- package/{src → cli}/commands/discover.mjs +23 -12
- package/{src → cli}/commands/docs.mjs +42 -10
- package/{src → cli}/commands/docs.test.mjs +1 -1
- package/{src → cli}/commands/doctor.mjs +3 -3
- package/{src → cli}/commands/doctor.test.mjs +2 -2
- package/{src → cli}/commands/ensure-core-built.mjs +3 -2
- package/{src → cli}/commands/external-showcase.test.mjs +1 -1
- package/{src → cli}/commands/hook/index.mjs +40 -17
- package/{src → cli}/commands/import-hint-correctness.test.mjs +1 -1
- package/cli/commands/init.mjs +195 -0
- package/{src → cli}/commands/init.next-steps.test.mjs +1 -1
- package/cli/commands/interactive-guard.test.mjs +66 -0
- package/{src → cli}/commands/json-contract.test.mjs +2 -2
- package/{src → cli}/commands/layout.mjs +59 -19
- package/{src → cli}/commands/search.mjs +22 -15
- package/{src → cli}/commands/search.test.mjs +1 -1
- package/cli/commands/setup-nudge.test.mjs +108 -0
- package/cli/commands/swizzle.mjs +103 -0
- package/{src → cli}/commands/template.mjs +84 -53
- package/{src → cli}/commands/template.path-safety.test.mjs +2 -2
- package/{src → cli}/commands/upgrade.integration-policy.test.mjs +1 -1
- package/{src → cli}/commands/upgrade.mjs +291 -77
- package/cli/commands/upgrade.test.mjs +314 -0
- package/{src → cli}/commands/validate-integration.mjs +17 -37
- package/{src → cli}/index.mjs +55 -19
- package/{src/codemods → codemods}/__tests__/registry.test.mjs +1 -0
- package/{src/codemods → codemods}/ensure-jscodeshift.mjs +12 -28
- package/{src/codemods → codemods}/integration-discovery.mjs +6 -3
- package/{src/codemods → codemods}/integration-discovery.test.mjs +1 -1
- package/{src/codemods → codemods}/integration-runner.mjs +8 -3
- package/{src/codemods → codemods}/registry.mjs +4 -1
- package/{src/codemods → codemods}/run-codemod.mjs +18 -11
- package/{src/codemods → codemods}/runner.mjs +24 -14
- package/{src/codemods → codemods}/transforms/v0.0.10/remove-size-props.mjs +9 -4
- package/{src/codemods → codemods}/transforms/v0.0.12/add-is-icon-only.mjs +27 -22
- package/{src/codemods → codemods}/transforms/v0.0.13/icon-name-deprecations.mjs +12 -5
- package/{src/codemods → codemods}/transforms/v0.0.13/rename-attachments-to-drawer.mjs +15 -8
- package/{src/codemods → codemods}/transforms/v0.0.13/toolbar-density-to-size.mjs +10 -4
- package/{src/codemods → codemods}/transforms/v0.0.14/rename-action-props.mjs +11 -5
- package/{src/codemods → codemods}/transforms/v0.0.14/rename-section-wash-to-muted.mjs +11 -6
- package/{src/codemods → codemods}/transforms/v0.0.14/rename-status-variants.mjs +15 -10
- package/{src/codemods → codemods}/transforms/v0.0.15/migrate-item-children-to-endcontent.mjs +13 -8
- package/{src/codemods → codemods}/transforms/v0.0.15/migrate-selector-children-to-render-option.mjs +18 -13
- package/{src/codemods → codemods}/transforms/v0.0.15/migrate-theme-selectors-to-data-attrs.mjs +8 -4
- package/{src/codemods → codemods}/transforms/v0.0.15/rename-date-picker-to-input.mjs +11 -6
- package/{src/codemods → codemods}/transforms/v0.0.15/rename-imperative-ref-to-handleRef.mjs +6 -1
- package/{src/codemods → codemods}/transforms/v0.0.15/rename-isStreaming-to-isStopShown.mjs +6 -1
- package/{src/codemods → codemods}/transforms/v0.0.15/rename-stack-element-to-as.mjs +8 -3
- package/{src/codemods → codemods}/transforms/v0.0.2/migrate-badge-dot-to-statusdot.mjs +17 -10
- package/{src/codemods → codemods}/transforms/v0.0.2/migrate-gap-to-numeric.mjs +7 -1
- package/{src/codemods → codemods}/transforms/v0.0.2/migrate-isFullBleed-to-padding.mjs +9 -4
- package/{src/codemods → codemods}/transforms/v0.0.2/migrate-useXDSIcon-to-getIcon.mjs +12 -7
- package/{src/codemods → codemods}/transforms/v0.0.2/rename-banner-endButton-to-endContent.mjs +7 -2
- package/{src/codemods → codemods}/transforms/v0.0.2/rename-form-tooltip-startIcon.mjs +8 -2
- package/{src/codemods → codemods}/transforms/v0.0.2/rename-isShown-to-isOpen.mjs +7 -2
- package/{src/codemods → codemods}/transforms/v0.0.2/rename-selector-items-to-options.mjs +7 -2
- package/{src/codemods → codemods}/transforms/v0.0.2/rename-sidenav-header-to-heading.mjs +11 -4
- package/{src/codemods → codemods}/transforms/v0.0.2/rename-topnav-title-to-heading.mjs +10 -4
- package/{src/codemods → codemods}/transforms/v0.0.2/unify-uncontrolled-to-defaultX.mjs +7 -2
- package/{src/codemods → codemods}/transforms/v0.0.2/unify-visibility-to-onOpenChange.mjs +10 -5
- package/{src/codemods → codemods}/transforms/v0.0.6/migrate-badge-children-to-label.mjs +7 -2
- package/{src/codemods → codemods}/transforms/v0.0.6/migrate-collapse-to-collapsible.mjs +9 -3
- package/{src/codemods → codemods}/transforms/v0.0.6/migrate-radius-tokens.mjs +11 -5
- package/{src/codemods → codemods}/transforms/v0.0.6/migrate-shadow-tokens.mjs +13 -6
- package/{src/codemods → codemods}/transforms/v0.0.6/migrate-skeleton-radius.mjs +7 -1
- package/{src/codemods → codemods}/transforms/v0.0.6/migrate-token-names.mjs +11 -5
- package/{src/codemods → codemods}/transforms/v0.0.7/rename-banner-variant-to-container.mjs +8 -3
- package/{src/codemods → codemods}/transforms/v0.0.8/migrate-token-renames.mjs +15 -8
- package/{src/codemods → codemods}/transforms/v0.0.8/rename-endslot-to-endcontent.mjs +7 -2
- package/{src/codemods → codemods}/transforms/v0.1.0/__tests__/drop-xds-prefix-imports.test.mjs +42 -7
- package/{src/codemods → codemods}/transforms/v0.1.0/__tests__/migrate-xds-module-specifiers.test.mjs +43 -0
- package/{src/codemods → codemods}/transforms/v0.1.0/drop-xds-prefix-imports.mjs +117 -13
- package/{src/codemods → codemods}/transforms/v0.1.0/migrate-xds-css-surfaces.mjs +21 -17
- package/{src/codemods → codemods}/transforms/v0.1.0/migrate-xds-declare-module.mjs +7 -2
- package/{src/codemods → codemods}/transforms/v0.1.0/migrate-xds-module-specifiers.mjs +86 -15
- package/{src/codemods → codemods}/transforms/v0.1.2/rename-text-color-active-to-accent.mjs +15 -9
- package/{src/codemods → codemods}/transforms/v0.1.3/migrate-layout-components-to-experimental.mjs +17 -12
- package/{src/codemods → codemods}/transforms/v0.1.5/rename-switch-label-spacing-default-to-hug.mjs +15 -9
- package/{src/codemods → codemods}/transforms/v0.1.7/migrate-table-tableprops-to-direct-props.mjs +17 -10
- package/{src/codemods → codemods}/transforms/v0.1.7/rename-table-renderprops-styles-to-xstyle.mjs +18 -13
- package/codemods/transforms/v0.1.8/__tests__/rename-avatar-size-scale.test.mjs +161 -0
- package/codemods/transforms/v0.1.8/index.mjs +19 -0
- package/codemods/transforms/v0.1.8/rename-avatar-size-scale.mjs +239 -0
- package/docs/cli-integrations.doc.mjs +150 -0
- package/docs/elevation.doc.mjs +79 -1
- package/docs/getting-started.doc.mjs +9 -9
- package/docs/internationalization.doc.mjs +92 -46
- package/docs/migration.doc.mjs +18 -18
- package/docs/principles.doc.dense.mjs +1 -1
- package/docs/principles.doc.mjs +6 -6
- package/docs/principles.doc.zh.mjs +1 -1
- package/docs/styling-libraries.doc.mjs +3 -3
- package/docs/styling.doc.mjs +4 -4
- package/docs/theme.doc.dense.mjs +2 -2
- package/docs/theme.doc.mjs +7 -7
- package/docs/theme.doc.zh.mjs +1 -1
- package/docs/tokens.doc.mjs +1 -1
- package/docs/working-with-ai.doc.mjs +19 -19
- package/{src/commands → lib/agent-docs}/agent-docs.mjs +164 -29
- package/{src/commands → lib/agent-docs}/agent-docs.path-safety.test.mjs +1 -1
- package/{src/commands → lib/agent-docs}/agent-docs.test.mjs +123 -10
- package/{src/lib → lib}/cli-error.mjs +2 -2
- package/{src/lib → lib}/component-discovery.mjs +44 -2
- package/{src/lib → lib}/component-format.mjs +67 -25
- package/{src/lib → lib}/component-loader.mjs +27 -13
- package/{src/lib → lib}/componentDocOverlay.test.mjs +0 -1
- package/{src/lib → lib}/error-codes.test.mjs +1 -1
- package/{src/lib → lib}/hook-discovery.mjs +14 -1
- package/{src/lib → lib}/hook-format.mjs +29 -5
- package/{src/lib → lib}/integration-warnings.mjs +2 -2
- package/{src/lib → lib}/integrations.mjs +20 -0
- package/{src/lib → lib}/integrations.test.mjs +1 -1
- package/{src/lib → lib}/json-contract.test.mjs +1 -1
- package/{src/lib → lib}/json-shim.mjs +11 -6
- package/{src/lib → lib}/json-shim.test.mjs +1 -1
- package/{src/lib → lib}/json.mjs +3 -3
- package/{src/lib → lib}/levenshtein.mjs +6 -0
- package/{src/lib → lib}/manifest.mjs +7 -5
- package/{src/lib → lib}/manifest.test.mjs +2 -2
- package/{src/lib → lib}/module-loader.mjs +1 -0
- package/{src/lib → lib}/package-scanner.mjs +47 -0
- package/{src/lib → lib}/project.mjs +48 -18
- package/{src/lib → lib}/project.test.mjs +1 -1
- package/{src/lib → lib}/resolve-theme.mjs +5 -0
- package/{src/lib → lib}/string-utils.mjs +15 -0
- package/lib/term-log.mjs +57 -0
- package/{src/lib → lib}/xle/browser.mjs +18 -8
- package/{src/lib → lib}/xle/expand.mjs +155 -22
- package/{src/lib → lib}/xle/parse.mjs +119 -13
- package/{src/lib → lib}/xle/print.mjs +54 -14
- package/{src/lib → lib}/xle/registry-core.mjs +28 -3
- package/{src/lib → lib}/xle/registry.mjs +9 -4
- package/{src/lib → lib}/xle/splice.mjs +13 -2
- package/{src/lib → lib}/xle/validate.mjs +95 -14
- package/lib/xle/xle-ast.d.ts +214 -0
- package/package.json +37 -28
- package/scripts/postinstall.mjs +74 -0
- package/templates/blocks/components/Avatar/AvatarFallbackChain.tsx +4 -4
- package/templates/blocks/components/Avatar/AvatarGroup.tsx +2 -2
- package/templates/blocks/components/Avatar/AvatarInitialsFallback.tsx +1 -1
- package/templates/blocks/components/Avatar/AvatarShowcase.tsx +5 -5
- package/templates/blocks/components/Avatar/AvatarUserCard.tsx +1 -1
- package/templates/blocks/components/Avatar/AvatarWithImage.tsx +4 -4
- package/templates/blocks/components/Avatar/AvatarWithStatus.tsx +3 -3
- package/templates/blocks/components/AvatarGroup/AvatarGroupShowcase.tsx +2 -2
- package/templates/blocks/components/AvatarGroupOverflow/AvatarGroupOverflowCustomText.tsx +1 -1
- package/templates/blocks/components/AvatarGroupOverflow/AvatarGroupOverflowDefault.tsx +1 -1
- package/templates/blocks/components/AvatarGroupOverflow/AvatarGroupOverflowShowcase.tsx +2 -2
- package/templates/blocks/components/AvatarStatusDot/AvatarStatusDotShowcase.tsx +3 -3
- package/templates/blocks/components/AvatarStatusDot/AvatarStatusDotVariants.tsx +3 -3
- package/templates/blocks/components/Banner/BannerFloating.doc.mjs +14 -0
- package/templates/blocks/components/Banner/BannerFloating.tsx +16 -0
- package/templates/blocks/components/Button/ButtonFloating.doc.mjs +14 -0
- package/templates/blocks/components/Button/ButtonFloating.tsx +37 -0
- package/templates/blocks/components/ButtonGroup/ButtonGroupFloating.doc.mjs +14 -0
- package/templates/blocks/components/ButtonGroup/ButtonGroupFloating.tsx +23 -0
- package/templates/blocks/components/Card/CardElevations.doc.mjs +14 -0
- package/templates/blocks/components/Card/CardElevations.tsx +32 -0
- package/templates/blocks/components/Card/ClickableCardElevated.doc.mjs +14 -0
- package/templates/blocks/components/Card/ClickableCardElevated.tsx +21 -0
- package/templates/blocks/components/Card/SelectableCardElevated.doc.mjs +14 -0
- package/templates/blocks/components/Card/SelectableCardElevated.tsx +37 -0
- package/templates/blocks/components/Carousel/CarouselSnap.tsx +1 -1
- package/templates/blocks/components/ChatComposer/ChatComposerFlat.doc.mjs +14 -0
- package/templates/blocks/components/ChatComposer/ChatComposerFlat.tsx +75 -0
- package/templates/blocks/components/ChatMessage/ChatMessageAvatarName.tsx +2 -2
- package/templates/blocks/components/ChatMessage/ChatMessageMultiBubble.tsx +1 -1
- package/templates/blocks/components/ChatMessageBubble/ChatMessageBubbleGrouping.tsx +1 -1
- package/templates/blocks/components/ChatMessageBubble/ChatMessageBubbleMetadata.tsx +1 -1
- package/templates/blocks/components/ChatMessageList/ChatMessageListDensity.tsx +5 -9
- package/templates/blocks/components/ChatMessageList/ChatMessageListFullFeatured.tsx +1 -1
- package/templates/blocks/components/CodeBlock/CodeBlockTerminal.tsx +1 -1
- package/templates/blocks/components/HoverCard/HoverCardShowcase.tsx +1 -1
- package/templates/blocks/components/IconButton/IconButtonFloating.doc.mjs +14 -0
- package/templates/blocks/components/IconButton/IconButtonFloating.tsx +37 -0
- package/templates/blocks/components/InternationalizationProvider/InternationalizationProvider01ShippedLocale.doc.mjs +19 -0
- package/templates/blocks/components/InternationalizationProvider/InternationalizationProvider01ShippedLocale.tsx +46 -0
- package/templates/blocks/components/InternationalizationProvider/InternationalizationProvider02Overrides.doc.mjs +14 -0
- package/templates/blocks/components/InternationalizationProvider/InternationalizationProvider02Overrides.tsx +33 -0
- package/templates/blocks/components/Item/ItemWithMedia.tsx +2 -2
- package/templates/blocks/components/ListItem/ListItemWithMedia.tsx +2 -2
- package/templates/blocks/components/OverflowList/OverflowListCappedToolbar.doc.mjs +14 -0
- package/templates/blocks/components/OverflowList/OverflowListCappedToolbar.tsx +39 -0
- package/templates/blocks/components/OverflowList/OverflowListMultiRowTags.doc.mjs +14 -0
- package/templates/blocks/components/OverflowList/OverflowListMultiRowTags.tsx +44 -0
- package/templates/blocks/components/Pagination/PaginationDotsCarousel.tsx +2 -6
- package/templates/blocks/components/Stack/StackFillItem.tsx +2 -6
- package/templates/blocks/components/TabList/TabListTabsWithActions.doc.mjs +1 -1
- package/templates/blocks/components/TabList/TabListTabsWithActions.tsx +2 -7
- package/templates/blocks/components/Table/TableRowStatusTable.doc.mjs +14 -0
- package/templates/blocks/components/Table/TableRowStatusTable.tsx +59 -0
- package/templates/blocks/components/Thumbnail/ThumbnailDisabled.tsx +6 -1
- package/templates/blocks/components/Thumbnail/ThumbnailGallery.tsx +1 -0
- package/templates/blocks/components/Thumbnail/ThumbnailRemovable.tsx +1 -0
- package/templates/blocks/components/TypeaheadItem/TypeaheadItemShowcase.tsx +1 -1
- package/templates/pages/ai-chat/page.tsx +4 -4
- package/templates/pages/dashboard-portfolio/page.tsx +3 -11
- package/templates/pages/detail-page/page.tsx +5 -12
- package/templates/pages/documentation-design/page.tsx +1 -1
- package/templates/pages/messaging-shell/page.tsx +6 -8
- package/templates/pages/table-grouped/page.tsx +9 -14
- package/templates/pages/table-page/page.tsx +7 -9
- package/templates/pages/table-page-heatmap-status/page.tsx +5 -13
- package/{src/types → types}/api.contract.assert.ts +17 -8
- package/{src/types → types}/api.d.ts +110 -9
- package/{src/types → types}/base.d.ts +40 -4
- package/types/build.d.ts +53 -0
- package/types/codemod.d.ts +166 -0
- package/{src/types → types}/component.d.ts +1 -1
- package/{src/types → types}/discover.d.ts +1 -1
- package/{src/types → types}/docs.d.ts +1 -4
- package/{src/types → types}/hook.d.ts +1 -1
- package/{src/types → types}/index.d.ts +1 -0
- package/types/jscodeshift.d.ts +19 -0
- package/types/layout.d.ts +74 -0
- package/{src/types → types}/swizzle.d.ts +4 -0
- package/{src/types → types}/template-api.d.ts +4 -1
- package/types/theme.d.ts +53 -0
- package/types/upgrade.d.ts +108 -0
- package/utils/package-manager.mjs +178 -0
- package/utils/package-manager.test.mjs +220 -0
- package/{src/utils → utils}/path-safety.mjs +0 -18
- package/{src/utils → utils}/paths.mjs +4 -1
- package/{src/utils → utils}/update-check.mjs +5 -4
- package/{src/utils → utils}/update-check.test.mjs +3 -3
- package/docs/integration-authoring.md +0 -105
- package/src/commands/build.mjs +0 -196
- package/src/commands/init.mjs +0 -288
- package/src/commands/interactive-guard.test.mjs +0 -69
- package/src/commands/swizzle.mjs +0 -440
- package/src/commands/upgrade.test.mjs +0 -160
- package/src/types/codemod.d.ts +0 -81
- package/src/types/theme.d.ts +0 -23
- package/src/types/upgrade.d.ts +0 -64
- package/src/utils/interactive.mjs +0 -76
- package/src/utils/interactive.test.mjs +0 -70
- package/src/utils/package-manager.mjs +0 -74
- package/src/utils/package-manager.test.mjs +0 -113
- /package/{src/api → api/docs}/docOverlays.test.mjs +0 -0
- /package/{src/api → api/integration}/integration-block-exports.test.mjs +0 -0
- /package/{src/api → api/template}/template.test.mjs +0 -0
- /package/{src → authoring}/codemod.test.mjs +0 -0
- /package/{src → authoring}/config.mjs +0 -0
- /package/{src → authoring}/integration.mjs +0 -0
- /package/{src → authoring}/template.test.mjs +0 -0
- /package/{src → cli}/cli-exit-codes.test.mjs +0 -0
- /package/{src → cli}/commands/build-theme.color-scheme.test.mjs +0 -0
- /package/{src → cli}/commands/build-theme.import-path.test.mjs +0 -0
- /package/{src → cli}/commands/build-theme.path-safety.test.mjs +0 -0
- /package/{src → cli}/commands/build-theme.prose.test.mjs +0 -0
- /package/{src → cli}/commands/build-theme.variants.test.mjs +0 -0
- /package/{src → cli}/commands/build-theme.watch.test.mjs +0 -0
- /package/{src → cli}/commands/component.test.mjs +0 -0
- /package/{src → cli}/commands/detail-levels.test.mjs +0 -0
- /package/{src → cli}/commands/swizzle.path-safety.test.mjs +0 -0
- /package/{src → cli}/commands/swizzle.routing.test.mjs +0 -0
- /package/{src → cli}/commands/template.test.mjs +0 -0
- /package/{src → cli}/commands/upgrade.config-ordering.test.mjs +0 -0
- /package/{src → cli}/commands/validate-integration.test.mjs +0 -0
- /package/{src → cli}/update-hint-commands.test.mjs +0 -0
- /package/{src/codemods → codemods}/__tests__/rename-imperative-ref-to-handleRef.test.mjs +0 -0
- /package/{src/codemods → codemods}/__tests__/rename-isStreaming-to-isStopShown.test.mjs +0 -0
- /package/{src/codemods → codemods}/__tests__/rename-section-wash-to-muted.test.mjs +0 -0
- /package/{src/codemods → codemods}/__tests__/runner.test.mjs +0 -0
- /package/{src/codemods → codemods}/__tests__/toolbar-density-to-size.test.mjs +0 -0
- /package/{src/codemods → codemods}/__tests__/validation.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.10/__tests__/remove-size-props.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.10/index.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.12/__tests__/add-is-icon-only.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.12/index.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.13/__tests__/icon-name-deprecations.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.13/__tests__/rename-attachments-to-drawer.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.13/index.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.14/__tests__/rename-action-props.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.14/__tests__/rename-status-variants.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.14/index.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.15/__tests__/migrate-item-children-to-endcontent.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.15/__tests__/migrate-selector-children-to-render-option.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.15/__tests__/migrate-theme-selectors-to-data-attrs.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.15/__tests__/rename-date-picker-to-input.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.15/__tests__/rename-stack-element-to-as.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.15/index.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.2/__tests__/migrate-badge-dot-to-statusdot.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.2/__tests__/migrate-gap-to-numeric.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.2/__tests__/migrate-isFullBleed-to-padding.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.2/__tests__/migrate-useXDSIcon-to-getIcon.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.2/__tests__/rename-banner-endButton-to-endContent.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.2/__tests__/rename-form-tooltip-startIcon.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.2/__tests__/rename-isShown-to-isOpen.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.2/__tests__/rename-selector-items-to-options.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.2/__tests__/rename-sidenav-header-to-heading.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.2/__tests__/rename-topnav-title-to-heading.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.2/__tests__/unify-uncontrolled-to-defaultX.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.2/__tests__/unify-visibility-to-onOpenChange.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.2/index.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.6/__tests__/migrate-collapse-to-collapsible.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.6/__tests__/migrate-radius-tokens.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.6/__tests__/migrate-shadow-tokens.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.6/__tests__/migrate-skeleton-radius.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.6/__tests__/migrate-token-names.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.6/index.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.7/__tests__/rename-banner-variant-to-container.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.7/index.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.8/__tests__/migrate-token-renames.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.8/__tests__/rename-endslot-to-endcontent.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.0.8/index.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.1.0/__tests__/migrate-xds-css-surfaces.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.1.0/__tests__/migrate-xds-declare-module.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.1.0/__tests__/v0.1.0-ordering.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.1.0/index.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.1.2/__tests__/rename-text-color-active-to-accent.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.1.2/index.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.1.3/__tests__/migrate-layout-components-to-experimental.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.1.3/index.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.1.5/__tests__/rename-switch-label-spacing-default-to-hug.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.1.5/index.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.1.7/__tests__/migrate-table-tableprops-to-direct-props.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.1.7/__tests__/rename-table-renderprops-styles-to-xstyle.test.mjs +0 -0
- /package/{src/codemods → codemods}/transforms/v0.1.7/index.mjs +0 -0
- /package/{src/lib → lib}/cli-error.test.mjs +0 -0
- /package/{src/lib → lib}/component-discovery.importpath.test.mjs +0 -0
- /package/{src/lib → lib}/component-format.test.mjs +0 -0
- /package/{src/lib → lib}/component-loader.test.mjs +0 -0
- /package/{src/lib → lib}/config-cache.mjs +0 -0
- /package/{src/lib → lib}/config-cache.test.mjs +0 -0
- /package/{src/lib → lib}/config-schema.mjs +0 -0
- /package/{src/lib → lib}/error-codes.mjs +0 -0
- /package/{src/lib → lib}/integration-warnings.test.mjs +0 -0
- /package/{src/lib → lib}/module-loader.test.mjs +0 -0
- /package/{src/lib → lib}/node-version.mjs +0 -0
- /package/{src/lib → lib}/node-version.test.mjs +0 -0
- /package/{src/lib → lib}/parse.mjs +0 -0
- /package/{src/lib → lib}/site.mjs +0 -0
- /package/{src/lib → lib}/xle/browser.d.ts +0 -0
- /package/{src/lib → lib}/xle/xle.test.mjs +0 -0
- /package/{src/schemas → schemas}/doc-schema.mjs +0 -0
- /package/{src/schemas → schemas}/template-schema.mjs +0 -0
- /package/{src/types → types}/config.d.ts +0 -0
- /package/{src/types → types}/doc.d.ts +0 -0
- /package/{src/types → types}/doctor.d.ts +0 -0
- /package/{src/types → types}/error-codes.d.ts +0 -0
- /package/{src/types → types}/integration.d.ts +0 -0
- /package/{src/types → types}/manifest.d.ts +0 -0
- /package/{src/types → types}/search.d.ts +0 -0
- /package/{src/types → types}/template.d.ts +0 -0
- /package/{src/types → types}/validate-integration.d.ts +0 -0
- /package/{src/utils → utils}/github.mjs +0 -0
- /package/{src/utils → utils}/path-safety.test.mjs +0 -0
- /package/{src/utils → utils}/paths.test.mjs +0 -0
- /package/{src/utils → utils}/semver.mjs +0 -0
- /package/{src/utils → utils}/semver.test.mjs +0 -0
|
@@ -23,9 +23,14 @@ export default function ThumbnailDisabled() {
|
|
|
23
23
|
src={GOLDEN_SUNSET}
|
|
24
24
|
alt="Golden sunset over mountains"
|
|
25
25
|
label="golden-sunset.jpg"
|
|
26
|
+
showRemoveOn="always"
|
|
27
|
+
onRemove={() => {}}
|
|
28
|
+
/>
|
|
29
|
+
<Thumbnail
|
|
30
|
+
label="document.pdf"
|
|
31
|
+
showRemoveOn="always"
|
|
26
32
|
onRemove={() => {}}
|
|
27
33
|
/>
|
|
28
|
-
<Thumbnail label="document.pdf" onRemove={() => {}} />
|
|
29
34
|
</Stack>
|
|
30
35
|
</Stack>
|
|
31
36
|
<Stack direction="vertical" gap={1}>
|
|
@@ -40,7 +40,7 @@ export default function TypeaheadItemShowcase() {
|
|
|
40
40
|
renderItem={(item: PersonItem) => (
|
|
41
41
|
<TypeaheadItem
|
|
42
42
|
item={item}
|
|
43
|
-
icon={<Avatar name={item.label} size="
|
|
43
|
+
icon={<Avatar name={item.label} size="md" />}
|
|
44
44
|
description={item.auxiliaryData.role}
|
|
45
45
|
/>
|
|
46
46
|
)}
|
|
@@ -390,7 +390,7 @@ export default function AIChatConversationTemplate() {
|
|
|
390
390
|
{/* Assistant message: tool calls, markdown, code block */}
|
|
391
391
|
<ChatMessage
|
|
392
392
|
sender="assistant"
|
|
393
|
-
avatar={<Avatar name="Agent" size="
|
|
393
|
+
avatar={<Avatar name="Agent" size="md" />}>
|
|
394
394
|
<ChatMessageBubble variant="ghost">
|
|
395
395
|
Looking into the auth files now. Let me read through the
|
|
396
396
|
code and trace the token refresh flow.
|
|
@@ -510,7 +510,7 @@ The fix is to catch \`TokenExpiredError\` specifically and attempt a refresh bef
|
|
|
510
510
|
{/* Assistant message: test results table + code block */}
|
|
511
511
|
<ChatMessage
|
|
512
512
|
sender="assistant"
|
|
513
|
-
avatar={<Avatar name="Agent" size="
|
|
513
|
+
avatar={<Avatar name="Agent" size="md" />}>
|
|
514
514
|
<ChatToolCalls
|
|
515
515
|
defaultIsExpanded
|
|
516
516
|
calls={[
|
|
@@ -608,7 +608,7 @@ The fix is to catch \`TokenExpiredError\` specifically and attempt a refresh bef
|
|
|
608
608
|
{/* Assistant message: artifact card */}
|
|
609
609
|
<ChatMessage
|
|
610
610
|
sender="assistant"
|
|
611
|
-
avatar={<Avatar name="Agent" size="
|
|
611
|
+
avatar={<Avatar name="Agent" size="md" />}>
|
|
612
612
|
<ChatMessageBubble variant="ghost">
|
|
613
613
|
<Markdown density="compact">
|
|
614
614
|
{`I've drafted a design doc covering the problem, the fix, and the test matrix — pulling straight from the changes we just made.\n\nOpen the document below to review it. Want me to expand any section?`}
|
|
@@ -647,7 +647,7 @@ The fix is to catch \`TokenExpiredError\` specifically and attempt a refresh bef
|
|
|
647
647
|
{/* Assistant message: in-progress tool call */}
|
|
648
648
|
<ChatMessage
|
|
649
649
|
sender="assistant"
|
|
650
|
-
avatar={<Avatar name="Agent" size="
|
|
650
|
+
avatar={<Avatar name="Agent" size="md" />}>
|
|
651
651
|
<ChatMessageBubble variant="ghost">
|
|
652
652
|
<Markdown density="compact">
|
|
653
653
|
{`On it — adding a **Rollout & Monitoring** section with a staged flag ramp and the alert thresholds. Updating the document now.`}
|
|
@@ -4,12 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
import {useState} from 'react';
|
|
6
6
|
|
|
7
|
-
import {
|
|
8
|
-
VStack,
|
|
9
|
-
HStack,
|
|
10
|
-
Layout,
|
|
11
|
-
LayoutContent,
|
|
12
|
-
} from '@astryxdesign/core/Layout';
|
|
7
|
+
import {VStack, HStack, Layout, LayoutContent} from '@astryxdesign/core/Layout';
|
|
13
8
|
import {Text, Heading} from '@astryxdesign/core/Text';
|
|
14
9
|
import {Card} from '@astryxdesign/core/Card';
|
|
15
10
|
import {Grid, GridSpan} from '@astryxdesign/core/Grid';
|
|
@@ -642,7 +637,7 @@ function AssetRow({
|
|
|
642
637
|
label={<Text weight="bold">{ticker}</Text>}
|
|
643
638
|
description={name}
|
|
644
639
|
href="#"
|
|
645
|
-
startContent={<Avatar name={ticker} size="
|
|
640
|
+
startContent={<Avatar name={ticker} size="md" />}
|
|
646
641
|
endContent={
|
|
647
642
|
<VStack gap={0} hAlign="end">
|
|
648
643
|
<Text type="body">{value}</Text>
|
|
@@ -693,10 +688,7 @@ export default function DashboardPortfolioTemplate() {
|
|
|
693
688
|
{/* KPI metric cards */}
|
|
694
689
|
<Grid columns={{minWidth: 280, repeat: 'fit'}} gap={4}>
|
|
695
690
|
{Array.from({length: Math.ceil(metrics.length / 2)}, (_, i) => (
|
|
696
|
-
<Grid
|
|
697
|
-
key={i}
|
|
698
|
-
columns={{minWidth: 280, repeat: 'fit'}}
|
|
699
|
-
gap={4}>
|
|
691
|
+
<Grid key={i} columns={{minWidth: 280, repeat: 'fit'}} gap={4}>
|
|
700
692
|
{metrics.slice(i * 2, i * 2 + 2).map(m => (
|
|
701
693
|
<MetricCard key={m.label} {...m} />
|
|
702
694
|
))}
|
|
@@ -199,7 +199,7 @@ function PageHeader({
|
|
|
199
199
|
</Text>
|
|
200
200
|
<HStack gap={1} vAlign="center">
|
|
201
201
|
<Bullet />
|
|
202
|
-
<Avatar name="Jane Doe" size="
|
|
202
|
+
<Avatar name="Jane Doe" size="sm" />
|
|
203
203
|
<Text type="body" maxLines={1}>
|
|
204
204
|
Jane Doe
|
|
205
205
|
</Text>
|
|
@@ -444,7 +444,7 @@ function TimelineSection() {
|
|
|
444
444
|
{ACTIVITY.map((item, i) => (
|
|
445
445
|
<VStack key={i} gap={2}>
|
|
446
446
|
<HStack gap={3} vAlign="start">
|
|
447
|
-
<Avatar name={item.user} size="
|
|
447
|
+
<Avatar name={item.user} size="md" />
|
|
448
448
|
<StackItem size="fill">
|
|
449
449
|
<VStack gap={2}>
|
|
450
450
|
<Card variant="muted" padding={3}>
|
|
@@ -478,11 +478,7 @@ function TimelineSection() {
|
|
|
478
478
|
size="xsm"
|
|
479
479
|
color="secondary"
|
|
480
480
|
/>
|
|
481
|
-
<Icon
|
|
482
|
-
icon={HeartIcon}
|
|
483
|
-
size="xsm"
|
|
484
|
-
color="secondary"
|
|
485
|
-
/>
|
|
481
|
+
<Icon icon={HeartIcon} size="xsm" color="secondary" />
|
|
486
482
|
<Text type="supporting" color="secondary">
|
|
487
483
|
{item.reactions}
|
|
488
484
|
</Text>
|
|
@@ -533,16 +529,13 @@ function PanelContent() {
|
|
|
533
529
|
321 Smith Road, CA 38238
|
|
534
530
|
</MetadataListItem>
|
|
535
531
|
<MetadataListItem label="Phone">234-</MetadataListItem>
|
|
536
|
-
<MetadataListItem label="Email">
|
|
537
|
-
janedoe@email.com
|
|
538
|
-
</MetadataListItem>
|
|
532
|
+
<MetadataListItem label="Email">janedoe@email.com</MetadataListItem>
|
|
539
533
|
<MetadataListItem label="Billing Address">
|
|
540
534
|
Same as shipping address
|
|
541
535
|
</MetadataListItem>
|
|
542
536
|
</MetadataList>
|
|
543
537
|
</Collapsible>
|
|
544
|
-
<Collapsible
|
|
545
|
-
trigger={<Heading level={4}>Fraud Analysis</Heading>}>
|
|
538
|
+
<Collapsible trigger={<Heading level={4}>Fraud Analysis</Heading>}>
|
|
546
539
|
<VStack gap={1}>
|
|
547
540
|
<ProgressBar
|
|
548
541
|
label="Risk level"
|
|
@@ -541,7 +541,7 @@ function ComponentDetailView({activeNav}: {activeNav: string}) {
|
|
|
541
541
|
endContent={<Badge label="New" variant="info" />}
|
|
542
542
|
/>
|
|
543
543
|
),
|
|
544
|
-
avatar: <Avatar name="Alice" size="
|
|
544
|
+
avatar: <Avatar name="Alice" size="lg" />,
|
|
545
545
|
badge: <Badge label="Success" variant="success" />,
|
|
546
546
|
card: (
|
|
547
547
|
<Card>
|
|
@@ -337,7 +337,7 @@ function StreamMessageGroup({message}: {message: StreamMessage}) {
|
|
|
337
337
|
return (
|
|
338
338
|
<ChatMessage
|
|
339
339
|
sender={isSelf ? 'user' : 'assistant'}
|
|
340
|
-
avatar={isSelf ? undefined : <Avatar name={user.name} size="
|
|
340
|
+
avatar={isSelf ? undefined : <Avatar name={user.name} size="md" />}>
|
|
341
341
|
{message.bubbles.map((text, index) => (
|
|
342
342
|
<ChatMessageBubble
|
|
343
343
|
key={`${message.id}-${index}`}
|
|
@@ -395,7 +395,7 @@ export default function MessagingShellPage() {
|
|
|
395
395
|
|
|
396
396
|
const workspaceRail = (
|
|
397
397
|
<VStack gap={2} style={styles.rail}>
|
|
398
|
-
<Avatar name="Astryx HQ" size="
|
|
398
|
+
<Avatar name="Astryx HQ" size="md" />
|
|
399
399
|
{RAIL_ITEMS.map(item => (
|
|
400
400
|
<IconButton
|
|
401
401
|
key={item.id}
|
|
@@ -416,7 +416,7 @@ export default function MessagingShellPage() {
|
|
|
416
416
|
/>
|
|
417
417
|
<Avatar
|
|
418
418
|
name={USERS.you.name}
|
|
419
|
-
size="
|
|
419
|
+
size="md"
|
|
420
420
|
status={<AvatarStatusDot variant="success" label="Online" />}
|
|
421
421
|
/>
|
|
422
422
|
</VStack>
|
|
@@ -497,7 +497,7 @@ export default function MessagingShellPage() {
|
|
|
497
497
|
startContent={
|
|
498
498
|
<Avatar
|
|
499
499
|
name={USERS[dm.userId].name}
|
|
500
|
-
size="
|
|
500
|
+
size="sm"
|
|
501
501
|
status={
|
|
502
502
|
<AvatarStatusDot
|
|
503
503
|
variant={PRESENCE_VARIANT[dm.presence]}
|
|
@@ -600,9 +600,7 @@ export default function MessagingShellPage() {
|
|
|
600
600
|
<ChatMessageList density="compact">
|
|
601
601
|
<ChatMessage
|
|
602
602
|
sender="assistant"
|
|
603
|
-
avatar={
|
|
604
|
-
<Avatar name={USERS[THREAD_ROOT.userId].name} size="small" />
|
|
605
|
-
}>
|
|
603
|
+
avatar={<Avatar name={USERS[THREAD_ROOT.userId].name} size="md" />}>
|
|
606
604
|
<ChatMessageBubble
|
|
607
605
|
name={USERS[THREAD_ROOT.userId].name}
|
|
608
606
|
metadata={
|
|
@@ -622,7 +620,7 @@ export default function MessagingShellPage() {
|
|
|
622
620
|
<ChatMessage
|
|
623
621
|
key={reply.id}
|
|
624
622
|
sender="assistant"
|
|
625
|
-
avatar={<Avatar name={USERS[reply.userId].name} size="
|
|
623
|
+
avatar={<Avatar name={USERS[reply.userId].name} size="md" />}>
|
|
626
624
|
<ChatMessageBubble
|
|
627
625
|
name={USERS[reply.userId].name}
|
|
628
626
|
metadata={
|
|
@@ -22,7 +22,10 @@ import {Badge} from '@astryxdesign/core/Badge';
|
|
|
22
22
|
import {Avatar} from '@astryxdesign/core/Avatar';
|
|
23
23
|
import {Selector} from '@astryxdesign/core/Selector';
|
|
24
24
|
import {PowerSearch} from '@astryxdesign/core/PowerSearch';
|
|
25
|
-
import type {
|
|
25
|
+
import type {
|
|
26
|
+
PowerSearchConfig,
|
|
27
|
+
PowerSearchFilter,
|
|
28
|
+
} from '@astryxdesign/core/PowerSearch';
|
|
26
29
|
import {Dialog, DialogHeader} from '@astryxdesign/core/Dialog';
|
|
27
30
|
import {Popover} from '@astryxdesign/core/Popover';
|
|
28
31
|
import {RadioList, RadioListItem} from '@astryxdesign/core/RadioList';
|
|
@@ -798,19 +801,15 @@ function TaskDetailPanel({
|
|
|
798
801
|
</MetadataListItem>
|
|
799
802
|
<MetadataListItem label="Assignee">
|
|
800
803
|
<HStack gap={2} vAlign="center">
|
|
801
|
-
<Avatar name={task.assignee} size="
|
|
804
|
+
<Avatar name={task.assignee} size="sm" />
|
|
802
805
|
<Text type="body">{task.assignee}</Text>
|
|
803
806
|
</HStack>
|
|
804
807
|
</MetadataListItem>
|
|
805
808
|
<MetadataListItem label="Project">
|
|
806
809
|
{task.project || '\u2014'}
|
|
807
810
|
</MetadataListItem>
|
|
808
|
-
<MetadataListItem label="Created">
|
|
809
|
-
|
|
810
|
-
</MetadataListItem>
|
|
811
|
-
<MetadataListItem label="Updated">
|
|
812
|
-
{task.updated}
|
|
813
|
-
</MetadataListItem>
|
|
811
|
+
<MetadataListItem label="Created">{task.created}</MetadataListItem>
|
|
812
|
+
<MetadataListItem label="Updated">{task.updated}</MetadataListItem>
|
|
814
813
|
</MetadataList>
|
|
815
814
|
|
|
816
815
|
{task.tags.length > 0 && (
|
|
@@ -942,11 +941,7 @@ export default function DataTableTemplate() {
|
|
|
942
941
|
</RadioList>
|
|
943
942
|
</VStack>
|
|
944
943
|
}>
|
|
945
|
-
<Button
|
|
946
|
-
label="View Options"
|
|
947
|
-
variant="secondary"
|
|
948
|
-
size="md"
|
|
949
|
-
/>
|
|
944
|
+
<Button label="View Options" variant="secondary" size="md" />
|
|
950
945
|
</Popover>
|
|
951
946
|
</HStack>
|
|
952
947
|
</VStack>
|
|
@@ -1066,7 +1061,7 @@ export default function DataTableTemplate() {
|
|
|
1066
1061
|
</Text>
|
|
1067
1062
|
</TableCell>
|
|
1068
1063
|
<TableCell>
|
|
1069
|
-
<Avatar name={task.assignee} size="
|
|
1064
|
+
<Avatar name={task.assignee} size="sm" />
|
|
1070
1065
|
</TableCell>
|
|
1071
1066
|
<TableCell>
|
|
1072
1067
|
<DropdownMenu
|
|
@@ -16,7 +16,10 @@ import {Button} from '@astryxdesign/core/Button';
|
|
|
16
16
|
import {IconButton} from '@astryxdesign/core/IconButton';
|
|
17
17
|
import {Icon} from '@astryxdesign/core/Icon';
|
|
18
18
|
import {Avatar} from '@astryxdesign/core/Avatar';
|
|
19
|
-
import {
|
|
19
|
+
import {
|
|
20
|
+
PowerSearch,
|
|
21
|
+
usePowerSearchConfig,
|
|
22
|
+
} from '@astryxdesign/core/PowerSearch';
|
|
20
23
|
import type {PowerSearchFilter} from '@astryxdesign/core/PowerSearch';
|
|
21
24
|
import {Table, proportional, pixel} from '@astryxdesign/core/Table';
|
|
22
25
|
import type {TableColumn} from '@astryxdesign/core/Table';
|
|
@@ -353,7 +356,7 @@ const columns: TableColumn<DogRow>[] = [
|
|
|
353
356
|
width: proportional(2),
|
|
354
357
|
renderCell: (item: DogRow) => (
|
|
355
358
|
<HStack gap={3} vAlign="center">
|
|
356
|
-
<Avatar name={item.name} size="
|
|
359
|
+
<Avatar name={item.name} size="md" />
|
|
357
360
|
<VStack gap={0}>
|
|
358
361
|
<Text type="body">{item.name}</Text>
|
|
359
362
|
<Text type="supporting" color="secondary">
|
|
@@ -367,9 +370,7 @@ const columns: TableColumn<DogRow>[] = [
|
|
|
367
370
|
key: 'biography',
|
|
368
371
|
header: 'Biography',
|
|
369
372
|
width: proportional(5),
|
|
370
|
-
renderCell: (item: DogRow) =>
|
|
371
|
-
<Text type="body">{item.biography}</Text>
|
|
372
|
-
),
|
|
373
|
+
renderCell: (item: DogRow) => <Text type="body">{item.biography}</Text>,
|
|
373
374
|
},
|
|
374
375
|
{
|
|
375
376
|
key: 'age',
|
|
@@ -406,10 +407,7 @@ export default function TablePageTemplate() {
|
|
|
406
407
|
icon={<Icon icon={ArrowDownTrayIcon} size="sm" />}
|
|
407
408
|
variant="ghost"
|
|
408
409
|
/>
|
|
409
|
-
<Button
|
|
410
|
-
label="Add"
|
|
411
|
-
icon={<Icon icon={PlusIcon} size="sm" />}
|
|
412
|
-
/>
|
|
410
|
+
<Button label="Add" icon={<Icon icon={PlusIcon} size="sm" />} />
|
|
413
411
|
</HStack>
|
|
414
412
|
</LayoutHeader>
|
|
415
413
|
}
|
|
@@ -338,17 +338,13 @@ const columns: TableColumn<IncidentRow>[] = [
|
|
|
338
338
|
key: 'product',
|
|
339
339
|
header: 'Product',
|
|
340
340
|
width: proportional(2),
|
|
341
|
-
renderCell: (item: IncidentRow) =>
|
|
342
|
-
<Text type="body">{item.product}</Text>
|
|
343
|
-
),
|
|
341
|
+
renderCell: (item: IncidentRow) => <Text type="body">{item.product}</Text>,
|
|
344
342
|
},
|
|
345
343
|
{
|
|
346
344
|
key: 'title',
|
|
347
345
|
header: 'Description',
|
|
348
346
|
width: proportional(5),
|
|
349
|
-
renderCell: (item: IncidentRow) =>
|
|
350
|
-
<Text type="body">{item.title}</Text>
|
|
351
|
-
),
|
|
347
|
+
renderCell: (item: IncidentRow) => <Text type="body">{item.title}</Text>,
|
|
352
348
|
},
|
|
353
349
|
{
|
|
354
350
|
key: 'startTime',
|
|
@@ -362,9 +358,7 @@ const columns: TableColumn<IncidentRow>[] = [
|
|
|
362
358
|
key: 'duration',
|
|
363
359
|
header: 'Duration',
|
|
364
360
|
width: pixel(100),
|
|
365
|
-
renderCell: (item: IncidentRow) =>
|
|
366
|
-
<Text type="body">{item.duration}</Text>
|
|
367
|
-
),
|
|
361
|
+
renderCell: (item: IncidentRow) => <Text type="body">{item.duration}</Text>,
|
|
368
362
|
},
|
|
369
363
|
{
|
|
370
364
|
key: 'oncall',
|
|
@@ -375,7 +369,7 @@ const columns: TableColumn<IncidentRow>[] = [
|
|
|
375
369
|
<Avatar
|
|
376
370
|
name={item.oncall}
|
|
377
371
|
src={ONCALL_AVATARS[item.oncall]}
|
|
378
|
-
size="
|
|
372
|
+
size="sm"
|
|
379
373
|
/>
|
|
380
374
|
<Text type="body">{item.oncall}</Text>
|
|
381
375
|
</HStack>
|
|
@@ -396,9 +390,7 @@ const columns: TableColumn<IncidentRow>[] = [
|
|
|
396
390
|
key: 'date',
|
|
397
391
|
header: 'Date',
|
|
398
392
|
width: pixel(110),
|
|
399
|
-
renderCell: (item: IncidentRow) =>
|
|
400
|
-
<Text type="body">{item.date}</Text>
|
|
401
|
-
),
|
|
393
|
+
renderCell: (item: IncidentRow) => <Text type="body">{item.date}</Text>,
|
|
402
394
|
},
|
|
403
395
|
];
|
|
404
396
|
|
|
@@ -31,14 +31,14 @@
|
|
|
31
31
|
*/
|
|
32
32
|
|
|
33
33
|
import type * as Api from './api';
|
|
34
|
-
import type {component} from '../api/component.mjs';
|
|
35
|
-
import type {docs} from '../api/docs.mjs';
|
|
36
|
-
import type {discover} from '../api/discover.mjs';
|
|
37
|
-
import type {template} from '../api/template.mjs';
|
|
34
|
+
import type {component} from '../api/component/component.mjs';
|
|
35
|
+
import type {docs} from '../api/docs/docs.mjs';
|
|
36
|
+
import type {discover} from '../api/discover/discover.mjs';
|
|
37
|
+
import type {template} from '../api/template/template.mjs';
|
|
38
38
|
|
|
39
39
|
/** Resolve to `true` only when `A` and `B` are mutually assignable. */
|
|
40
40
|
type Equal<A, B> =
|
|
41
|
-
(<T>() => T extends A ? 1 : 2) extends
|
|
41
|
+
(<T>() => T extends A ? 1 : 2) extends <T>() => T extends B ? 1 : 2
|
|
42
42
|
? true
|
|
43
43
|
: false;
|
|
44
44
|
|
|
@@ -52,16 +52,25 @@ type Opt<T> = NonNullable<T>;
|
|
|
52
52
|
// must describe the same set of keys/types, in both directions. ──────────────
|
|
53
53
|
|
|
54
54
|
type _ComponentOptions = Expect<
|
|
55
|
-
Equal<
|
|
55
|
+
Equal<
|
|
56
|
+
Opt<Parameters<typeof Api.component>[1]>,
|
|
57
|
+
Opt<Parameters<typeof component>[1]>
|
|
58
|
+
>
|
|
56
59
|
>;
|
|
57
60
|
type _DocsOptions = Expect<
|
|
58
61
|
Equal<Opt<Parameters<typeof Api.docs>[2]>, Opt<Parameters<typeof docs>[2]>>
|
|
59
62
|
>;
|
|
60
63
|
type _DiscoverOptions = Expect<
|
|
61
|
-
Equal<
|
|
64
|
+
Equal<
|
|
65
|
+
Opt<Parameters<typeof Api.discover>[1]>,
|
|
66
|
+
Opt<Parameters<typeof discover>[1]>
|
|
67
|
+
>
|
|
62
68
|
>;
|
|
63
69
|
type _TemplateOptions = Expect<
|
|
64
|
-
Equal<
|
|
70
|
+
Equal<
|
|
71
|
+
Opt<Parameters<typeof Api.template>[1]>,
|
|
72
|
+
Opt<Parameters<typeof template>[1]>
|
|
73
|
+
>
|
|
65
74
|
>;
|
|
66
75
|
|
|
67
76
|
// ── Positional-argument parity: arity and positional types must match. ───────
|
|
@@ -44,17 +44,24 @@ import type {
|
|
|
44
44
|
import type {SearchResponse, SearchDomain} from './search';
|
|
45
45
|
import type {ErrorCode} from './error-codes';
|
|
46
46
|
import type {DoctorResponse} from './doctor';
|
|
47
|
+
import type {
|
|
48
|
+
LayoutForm,
|
|
49
|
+
LayoutExpandResponse,
|
|
50
|
+
LayoutCheckResponse,
|
|
51
|
+
LayoutGrammarResponse,
|
|
52
|
+
} from './layout';
|
|
53
|
+
import type {ValidateIntegrationResponse} from './validate-integration';
|
|
54
|
+
import type {AstryxIntegrationIssue} from './integration';
|
|
55
|
+
import type {BuildHelpResponse, BuildKitResponse} from './build';
|
|
56
|
+
import type {SwizzleListResponse, SwizzleCopyResponse} from './swizzle';
|
|
57
|
+
import type {Suggestion} from './base';
|
|
47
58
|
|
|
48
59
|
/** Structured API error with a stable machine-readable code. */
|
|
49
60
|
export declare class AstryxError extends Error {
|
|
50
61
|
/** Stable error code; consumers branch on this, never the message. */
|
|
51
62
|
code: ErrorCode;
|
|
52
|
-
suggestions?:
|
|
53
|
-
constructor(
|
|
54
|
-
message: string,
|
|
55
|
-
suggestions?: Array<{name: string; reason: string}>,
|
|
56
|
-
code?: ErrorCode,
|
|
57
|
-
);
|
|
63
|
+
suggestions?: Suggestion[];
|
|
64
|
+
constructor(message: string, suggestions?: Suggestion[], code?: ErrorCode);
|
|
58
65
|
}
|
|
59
66
|
|
|
60
67
|
// ── Component ────────────────────────────────────────────────────────
|
|
@@ -100,9 +107,7 @@ export interface DocsOptions {
|
|
|
100
107
|
}
|
|
101
108
|
|
|
102
109
|
type DocsResult =
|
|
103
|
-
|
|
|
104
|
-
| DocsDetailResponse
|
|
105
|
-
| DocsDetailSectionResponse;
|
|
110
|
+
DocsListResponse | DocsDetailResponse | DocsDetailSectionResponse;
|
|
106
111
|
|
|
107
112
|
export declare function docs(
|
|
108
113
|
topic?: string,
|
|
@@ -191,6 +196,47 @@ export declare function search(
|
|
|
191
196
|
options?: SearchOptions,
|
|
192
197
|
): Promise<SearchResponse>;
|
|
193
198
|
|
|
199
|
+
// ── Build ────────────────────────────────────────────────────────────
|
|
200
|
+
|
|
201
|
+
export interface BuildOptions {
|
|
202
|
+
cwd?: string;
|
|
203
|
+
type?: SearchDomain;
|
|
204
|
+
limit?: number;
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
/**
|
|
208
|
+
* Page-building assistant. No query → `build.help` (playbook signal); a query →
|
|
209
|
+
* `build.kit` (grouped composition kit of raw search entries + frame/foundation).
|
|
210
|
+
*/
|
|
211
|
+
export declare function build(
|
|
212
|
+
query?: string,
|
|
213
|
+
options?: BuildOptions,
|
|
214
|
+
): Promise<BuildHelpResponse | BuildKitResponse>;
|
|
215
|
+
|
|
216
|
+
// ── Swizzle ──────────────────────────────────────────────────────────
|
|
217
|
+
|
|
218
|
+
export interface SwizzleOptions {
|
|
219
|
+
cwd?: string;
|
|
220
|
+
/** Output directory (must resolve inside cwd). Defaults to ./components/astryx. */
|
|
221
|
+
output?: string;
|
|
222
|
+
/** Scope to a specific owning package when a name is ambiguous. */
|
|
223
|
+
package?: string;
|
|
224
|
+
/** Force the list response even with a component argument. */
|
|
225
|
+
list?: boolean;
|
|
226
|
+
/** Overwrite existing files instead of erroring. */
|
|
227
|
+
overwrite?: boolean;
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
/**
|
|
231
|
+
* List swizzlable components (no name / `list`) or copy one component's source
|
|
232
|
+
* into the project (side effect) and return a `swizzle.copy` receipt. Errors
|
|
233
|
+
* throw AstryxError (ERR_UNKNOWN_COMPONENT, ERR_AMBIGUOUS_COMPONENT, …).
|
|
234
|
+
*/
|
|
235
|
+
export declare function swizzle(
|
|
236
|
+
component?: string,
|
|
237
|
+
options?: SwizzleOptions,
|
|
238
|
+
): Promise<SwizzleListResponse | SwizzleCopyResponse>;
|
|
239
|
+
|
|
194
240
|
// ── Doctor ──────────────────────────────────
|
|
195
241
|
|
|
196
242
|
export interface DoctorOptions {
|
|
@@ -200,3 +246,58 @@ export interface DoctorOptions {
|
|
|
200
246
|
export declare function doctor(
|
|
201
247
|
options?: DoctorOptions,
|
|
202
248
|
): Promise<DoctorResponse>;
|
|
249
|
+
|
|
250
|
+
// ── Layout ───────────────────────────────────────────────────────────
|
|
251
|
+
|
|
252
|
+
export interface LayoutExpandOptions {
|
|
253
|
+
targetPath?: string;
|
|
254
|
+
form?: LayoutForm;
|
|
255
|
+
loose?: boolean;
|
|
256
|
+
name?: string;
|
|
257
|
+
cwd?: string;
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
export declare function layoutExpand(
|
|
261
|
+
expression: string,
|
|
262
|
+
options?: LayoutExpandOptions,
|
|
263
|
+
): Promise<LayoutExpandResponse>;
|
|
264
|
+
|
|
265
|
+
export interface LayoutCheckOptions {
|
|
266
|
+
form?: LayoutForm;
|
|
267
|
+
loose?: boolean;
|
|
268
|
+
cwd?: string;
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
export declare function layoutCheck(
|
|
272
|
+
expression: string,
|
|
273
|
+
options?: LayoutCheckOptions,
|
|
274
|
+
): Promise<LayoutCheckResponse>;
|
|
275
|
+
|
|
276
|
+
export interface LayoutGrammarOptions {
|
|
277
|
+
cwd?: string;
|
|
278
|
+
}
|
|
279
|
+
|
|
280
|
+
export declare function layoutGrammar(
|
|
281
|
+
options?: LayoutGrammarOptions,
|
|
282
|
+
): Promise<LayoutGrammarResponse>;
|
|
283
|
+
|
|
284
|
+
// ── Validate integration ─────────────────────────────────────────────
|
|
285
|
+
|
|
286
|
+
export interface ValidateIntegrationOptions {
|
|
287
|
+
cwd?: string;
|
|
288
|
+
}
|
|
289
|
+
|
|
290
|
+
/**
|
|
291
|
+
* Validate the local integration (no `pkg`) or an installed one (`pkg` given).
|
|
292
|
+
* The no-manifest local case returns `{ name: null, version: null, issues: [] }`.
|
|
293
|
+
*/
|
|
294
|
+
export declare function validateIntegration(
|
|
295
|
+
pkg?: string,
|
|
296
|
+
options?: ValidateIntegrationOptions,
|
|
297
|
+
): Promise<ValidateIntegrationResponse>;
|
|
298
|
+
|
|
299
|
+
/** Count issues by severity. */
|
|
300
|
+
export declare function summarizeIssues(issues: AstryxIntegrationIssue[]): {
|
|
301
|
+
errors: number;
|
|
302
|
+
warnings: number;
|
|
303
|
+
};
|