├── .changeset ├── README.md └── config.json ├── .cursor └── rules │ ├── codemod-utils.mdc │ ├── codemod.mdc │ ├── component-transformer.mdc │ ├── docs.mdc │ ├── documentation.mdc │ ├── examples.mdc │ ├── overview.mdc │ ├── react-headless.mdc │ ├── react.mdc │ └── think.mdc ├── .cursorignore ├── .editorconfig ├── .gitattributes ├── .github └── workflows │ ├── chromatic.yml │ ├── docs-deploy-alpha-pages.yml │ ├── docs-deploy-production-pages.yml │ ├── docs-deploy-qa-pages.yml │ ├── docs-deploy-storybook-alpha-pages.yml │ ├── docs-deploy-storybook-production-pages.yml │ ├── react-headless-test.yml │ └── release-packages.yml ├── .gitignore ├── .vscode ├── extensions.json └── settings.json ├── LICENSE ├── NOTICE ├── README.md ├── biome.json ├── bun.lock ├── bunfig.toml ├── cover.png ├── docs ├── .gitignore ├── .sanity │ └── runtime │ │ ├── app.js │ │ └── index.html ├── .storybook │ ├── main.ts │ ├── manager.ts │ ├── preview-head.html │ ├── preview.ts │ └── theme.ts ├── README.md ├── app │ ├── (studio) │ │ └── admin │ │ │ └── page.tsx │ ├── api │ │ └── search │ │ │ └── route.ts │ ├── docs │ │ ├── [[...slug]] │ │ │ └── page.tsx │ │ ├── foundation │ │ │ └── design-token │ │ │ │ └── [id] │ │ │ │ └── page.tsx │ │ ├── layout.tsx │ │ └── whats-new │ │ │ ├── [slug] │ │ │ └── page.tsx │ │ │ └── page.tsx │ ├── global.css │ ├── layout.config.tsx │ ├── layout.tsx │ ├── page.tsx │ ├── react │ │ ├── [[...slug]] │ │ │ └── page.tsx │ │ ├── _llms │ │ │ └── process-content.ts │ │ ├── layout.tsx │ │ ├── llms-components.txt │ │ │ └── route.ts │ │ ├── llms-full.txt │ │ │ └── route.ts │ │ └── llms.txt │ │ │ └── route.ts │ └── source.ts ├── chromatic.config.json ├── components │ ├── color-grid.tsx │ ├── component-example.tsx │ ├── component-preview.tsx │ ├── component-spec-block.tsx │ ├── component-variant-table.tsx │ ├── error-boundary.tsx │ ├── example │ │ ├── action-button-brand-outline.tsx │ │ ├── action-button-brand-solid.tsx │ │ ├── action-button-critical-solid.tsx │ │ ├── action-button-disabled.tsx │ │ ├── action-button-icon-only.tsx │ │ ├── action-button-loading.tsx │ │ ├── action-button-neutral-outline.tsx │ │ ├── action-button-neutral-solid.tsx │ │ ├── action-button-neutral-weak.tsx │ │ ├── action-button-prefix-icon.tsx │ │ ├── action-button-preview.tsx │ │ ├── action-button-suffix-icon.tsx │ │ ├── action-chip-icon-only.tsx │ │ ├── action-chip-medium.tsx │ │ ├── action-chip-prefix-icon.tsx │ │ ├── action-chip-preview.tsx │ │ ├── action-chip-small.tsx │ │ ├── action-chip-suffix-icon.tsx │ │ ├── action-sheet-portalled.tsx │ │ ├── action-sheet-preview.tsx │ │ ├── alert-dialog-controlled.tsx │ │ ├── alert-dialog-critical.tsx │ │ ├── alert-dialog-neutral.tsx │ │ ├── alert-dialog-portalled.tsx │ │ ├── alert-dialog-preview.tsx │ │ ├── alert-dialog-single.tsx │ │ ├── alert-dialog-stackflow.tsx │ │ ├── alert-dialog-wrap.tsx │ │ ├── app-screen-preview.tsx │ │ ├── app-screen-transparent-bar.tsx │ │ ├── avatar-badge-circle.tsx │ │ ├── avatar-badge-flower.tsx │ │ ├── avatar-badge-shield.tsx │ │ ├── avatar-preview.tsx │ │ ├── avatar-size.tsx │ │ ├── avatar-stack.tsx │ │ ├── badge-as-child.tsx │ │ ├── badge-brand.tsx │ │ ├── badge-critical.tsx │ │ ├── badge-informative.tsx │ │ ├── badge-large.tsx │ │ ├── badge-medium.tsx │ │ ├── badge-neutral.tsx │ │ ├── badge-outline.tsx │ │ ├── badge-positive.tsx │ │ ├── badge-preview.tsx │ │ ├── badge-solid.tsx │ │ ├── badge-weak.tsx │ │ ├── bottom-sheet-controlled.tsx │ │ ├── bottom-sheet-preview.tsx │ │ ├── bottom-sheet-trigger.tsx │ │ ├── box-preview.tsx │ │ ├── callout-critical.tsx │ │ ├── callout-informative.tsx │ │ ├── callout-link-label-as-child.tsx │ │ ├── callout-magic.tsx │ │ ├── callout-neutral.tsx │ │ ├── callout-preview.tsx │ │ ├── callout-text-only.tsx │ │ ├── callout-warning.tsx │ │ ├── callout-with-all.tsx │ │ ├── callout-with-icon.tsx │ │ ├── callout-with-link-label.tsx │ │ ├── callout-with-title-text.tsx │ │ ├── check-select-box-preview.tsx │ │ ├── check-select-box-react-hook-form.tsx │ │ ├── checkbox-disabled.tsx │ │ ├── checkbox-indeterminate.tsx │ │ ├── checkbox-long-text.tsx │ │ ├── checkbox-preview.tsx │ │ ├── checkbox-react-hook-form.tsx │ │ ├── checkbox-size.tsx │ │ ├── checkbox-stronger.tsx │ │ ├── checkbox-variant.tsx │ │ ├── chip-tabs-basic-activity.tsx │ │ ├── chip-tabs-preview.tsx │ │ ├── chip-tabs-variant-brand-solid.tsx │ │ ├── chip-tabs-variant-neutral-solid.tsx │ │ ├── columns-preview.tsx │ │ ├── contextual-floating-button-float-composition.tsx │ │ ├── contextual-floating-button-icon-only.tsx │ │ ├── contextual-floating-button-layer.tsx │ │ ├── contextual-floating-button-loading.tsx │ │ ├── contextual-floating-button-preview.tsx │ │ ├── contextual-floating-button-solid.tsx │ │ ├── control-chip-icon-only.tsx │ │ ├── control-chip-medium.tsx │ │ ├── control-chip-prefix-icon.tsx │ │ ├── control-chip-preview.tsx │ │ ├── control-chip-small.tsx │ │ ├── control-chip-suffix-icon.tsx │ │ ├── demo │ │ │ ├── article-detail.tsx │ │ │ ├── components │ │ │ │ ├── article-author.tsx │ │ │ │ └── article-list-item.tsx │ │ │ ├── data.ts │ │ │ ├── index.tsx │ │ │ ├── tabs │ │ │ │ └── recommendations.tsx │ │ │ └── utils │ │ │ │ └── date.ts │ │ ├── divider-preview.tsx │ │ ├── error-state-basement.tsx │ │ ├── error-state-preview.tsx │ │ ├── extended-action-sheet-preview.tsx │ │ ├── extended-fab-layer-floating.tsx │ │ ├── extended-fab-medium.tsx │ │ ├── extended-fab-neutral-solid.tsx │ │ ├── extended-fab-preview.tsx │ │ ├── extended-fab-small.tsx │ │ ├── fab-preview.tsx │ │ ├── flex-preview.tsx │ │ ├── float-offset-x.tsx │ │ ├── float-offset-y.tsx │ │ ├── float-preview.tsx │ │ ├── floating-action-button-extended.tsx │ │ ├── floating-action-button-float-composition.tsx │ │ ├── floating-action-button-preview.tsx │ │ ├── h-stack-preview.tsx │ │ ├── help-bubble-anchor.tsx │ │ ├── help-bubble-close-button.tsx │ │ ├── help-bubble-flip.tsx │ │ ├── help-bubble-placement.tsx │ │ ├── help-bubble-preview.tsx │ │ ├── help-bubble-title-only.tsx │ │ ├── identity-placeholder-preview.tsx │ │ ├── inline-banner-activity.tsx │ │ ├── inline-banner-critical-solid.tsx │ │ ├── inline-banner-critical-weak.tsx │ │ ├── inline-banner-informative-weak.tsx │ │ ├── inline-banner-link-label-as-child.tsx │ │ ├── inline-banner-neutral-weak.tsx │ │ ├── inline-banner-positive-weak.tsx │ │ ├── inline-banner-preview.tsx │ │ ├── inline-banner-text-only.tsx │ │ ├── inline-banner-warning-solid.tsx │ │ ├── inline-banner-warning-weak.tsx │ │ ├── inline-banner-with-all.tsx │ │ ├── inline-banner-with-icon.tsx │ │ ├── inline-banner-with-link-label.tsx │ │ ├── inline-banner-with-title-text.tsx │ │ ├── inline-preview.tsx │ │ ├── link-content-color.tsx │ │ ├── link-content-preview.tsx │ │ ├── link-content-size.tsx │ │ ├── manner-temp-badge-preview.tsx │ │ ├── manner-temp-preview.tsx │ │ ├── multiline-text-field-constraints.tsx │ │ ├── multiline-text-field-disabled.tsx │ │ ├── multiline-text-field-enabled.tsx │ │ ├── multiline-text-field-fixed-height.tsx │ │ ├── multiline-text-field-form.tsx │ │ ├── multiline-text-field-formatting.tsx │ │ ├── multiline-text-field-grapheme-count.tsx │ │ ├── multiline-text-field-large.tsx │ │ ├── multiline-text-field-medium.tsx │ │ ├── multiline-text-field-optional.tsx │ │ ├── multiline-text-field-preview.tsx │ │ ├── multiline-text-field-react-hook-form.tsx │ │ ├── multiline-text-field-read-only.tsx │ │ ├── multiline-text-field-required.tsx │ │ ├── multiline-text-field-slicing.tsx │ │ ├── multiline-text-field-xlarge.tsx │ │ ├── progress-circle-24.tsx │ │ ├── progress-circle-40.tsx │ │ ├── progress-circle-brand.tsx │ │ ├── progress-circle-determinate.tsx │ │ ├── progress-circle-indeterminate.tsx │ │ ├── progress-circle-neutral.tsx │ │ ├── progress-circle-preview.tsx │ │ ├── progress-circle-small.tsx │ │ ├── progress-circle-static-white.tsx │ │ ├── pull-to-refresh-disabled.tsx │ │ ├── pull-to-refresh-preview.tsx │ │ ├── pull-to-refresh-tabs.tsx │ │ ├── radio-select-box-preview.tsx │ │ ├── radio-select-box-react-hook-form.tsx │ │ ├── reaction-button-disabled.tsx │ │ ├── reaction-button-loading.tsx │ │ ├── reaction-button-preview.tsx │ │ ├── reaction-button-small.tsx │ │ ├── reaction-button-xsmall.tsx │ │ ├── segmented-control-disabled.tsx │ │ ├── segmented-control-fixed-width.tsx │ │ ├── segmented-control-long-label-fixed-width.tsx │ │ ├── segmented-control-long-label.tsx │ │ ├── segmented-control-preview.tsx │ │ ├── skeleton-preview.tsx │ │ ├── skeleton-radius.tsx │ │ ├── snackbar-avoid-overlap.tsx │ │ ├── snackbar-critical.tsx │ │ ├── snackbar-positive.tsx │ │ ├── snackbar-preview.tsx │ │ ├── stack-preview.tsx │ │ ├── switch-disabled.tsx │ │ ├── switch-medium.tsx │ │ ├── switch-preview.tsx │ │ ├── switch-small.tsx │ │ ├── tabs-disabled.tsx │ │ ├── tabs-dynamic-height.tsx │ │ ├── tabs-layout-fill.tsx │ │ ├── tabs-layout-hug.tsx │ │ ├── tabs-notification.tsx │ │ ├── tabs-preview.tsx │ │ ├── tabs-scroll-top.tsx │ │ ├── tabs-size-medium.tsx │ │ ├── tabs-size-small.tsx │ │ ├── tabs-standalone.tsx │ │ ├── tabs-sticky-list.tsx │ │ ├── tabs-swipeable.tsx │ │ ├── tabs-transition.tsx │ │ ├── text-field-both-affixes.tsx │ │ ├── text-field-disabled.tsx │ │ ├── text-field-enabled.tsx │ │ ├── text-field-form.tsx │ │ ├── text-field-grapheme-count.tsx │ │ ├── text-field-indicator.tsx │ │ ├── text-field-large.tsx │ │ ├── text-field-medium.tsx │ │ ├── text-field-number-formatting.tsx │ │ ├── text-field-prefix.tsx │ │ ├── text-field-preview.tsx │ │ ├── text-field-react-hook-form.tsx │ │ ├── text-field-read-only.tsx │ │ ├── text-field-slicing.tsx │ │ ├── text-field-suffix.tsx │ │ ├── text-field-xlarge.tsx │ │ ├── text-preview.tsx │ │ ├── toggle-button-brand-solid.tsx │ │ ├── toggle-button-disabled.tsx │ │ ├── toggle-button-loading.tsx │ │ ├── toggle-button-neutral-weak.tsx │ │ ├── toggle-button-prefix-icon.tsx │ │ ├── toggle-button-preview.tsx │ │ ├── toggle-button-small.tsx │ │ ├── toggle-button-xsmall.tsx │ │ └── v-stack-preview.tsx │ ├── google-analytics.tsx │ ├── iconography │ │ ├── icon-bottom-infomation.tsx │ │ ├── icon-context.tsx │ │ ├── icon-grid.tsx │ │ ├── icon-search.tsx │ │ ├── icon-segmented-control.tsx │ │ ├── icons.tsx │ │ ├── tags.ts │ │ └── utils.ts │ ├── manual-installation.tsx │ ├── mdx-components.ts │ ├── migration │ │ ├── color-migration-index.tsx │ │ ├── color-migration-row.tsx │ │ ├── icon.tsx │ │ ├── iconography-migration-index.tsx │ │ └── typography-migration-index.tsx │ ├── rootage.ts │ ├── search │ │ ├── search.tsx │ │ └── tokenizer.ts │ ├── stackflow-example.tsx │ ├── stackflow-preview.tsx │ ├── stackflow │ │ ├── ActivityLayout.tsx │ │ ├── Stack.ts │ │ └── Stackflow.tsx │ ├── theme-sync.tsx │ ├── token-cell.tsx │ ├── token-link.tsx │ ├── token-reference.tsx │ ├── token-table.tsx │ ├── tool-icon.tsx │ ├── type-indicator.tsx │ ├── type-table │ │ ├── generator.ts │ │ ├── get-react-type-table.ts │ │ ├── react-type-table.tsx │ │ └── remark-react-type-table.tsx │ └── ui │ │ └── icon.tsx ├── content │ ├── docs │ │ ├── components │ │ │ ├── action-button.mdx │ │ │ ├── action-chip.mdx │ │ │ ├── action-sheet.mdx │ │ │ ├── alert-dialog.mdx │ │ │ ├── avatar.mdx │ │ │ ├── badge.mdx │ │ │ ├── bottom-sheet.mdx │ │ │ ├── callout.mdx │ │ │ ├── checkbox.mdx │ │ │ ├── chip-tabs.mdx │ │ │ ├── control-chip.mdx │ │ │ ├── error-state.mdx │ │ │ ├── extended-action-sheet.mdx │ │ │ ├── extended-fab.mdx │ │ │ ├── fab.mdx │ │ │ ├── help-bubble.mdx │ │ │ ├── inline-banner.mdx │ │ │ ├── link-content.mdx │ │ │ ├── manner-temp-badge.mdx │ │ │ ├── manner-temp.mdx │ │ │ ├── meta.json │ │ │ ├── notification-badge.mdx │ │ │ ├── progress-circle.mdx │ │ │ ├── reaction-button.mdx │ │ │ ├── segmented-control.mdx │ │ │ ├── select-box.mdx │ │ │ ├── skeleton.mdx │ │ │ ├── snackbar.mdx │ │ │ ├── switch.mdx │ │ │ ├── tabs.mdx │ │ │ ├── text-field.mdx │ │ │ ├── toggle-button.mdx │ │ │ └── top-navigation.mdx │ │ ├── foundation │ │ │ ├── color │ │ │ │ ├── color-role.mdx │ │ │ │ ├── color-system.mdx │ │ │ │ ├── meta.json │ │ │ │ └── palette.mdx │ │ │ ├── design-token-reference.mdx │ │ │ ├── design-token.mdx │ │ │ ├── iconography │ │ │ │ ├── library.mdx │ │ │ │ ├── meta.json │ │ │ │ ├── overview.mdx │ │ │ │ └── usage.mdx │ │ │ ├── inclusive-design.mdx │ │ │ ├── international-design.mdx │ │ │ ├── logo.mdx │ │ │ ├── meta.json │ │ │ ├── motion.mdx │ │ │ ├── radius.mdx │ │ │ ├── spacing.mdx │ │ │ ├── state.mdx │ │ │ ├── typography │ │ │ │ ├── meta.json │ │ │ │ └── overview.mdx │ │ │ └── voice-and-tone.mdx │ │ ├── guidelines │ │ │ ├── loading.mdx │ │ │ └── meta.json │ │ ├── index.mdx │ │ ├── meta.json │ │ ├── migration │ │ │ ├── meta.json │ │ │ ├── migration-guide.mdx │ │ │ └── migration-reference.mdx │ │ ├── resources │ │ │ ├── 6fcb7101e56d41b88c9c650d02e9a563.mdx │ │ │ ├── Resource-Blog-1a428c3a9f8f80da8671f99d1d0b53a7.mdx │ │ │ ├── UI-UX-f4bdc44d185f4c528a3cc2d0b7c938a6.mdx │ │ │ ├── UX-96b9f6f646be4a8bbda661171e34f96a.mdx │ │ │ ├── be383e3f021f41e0bd0e5398d3d6c3cb.mdx │ │ │ └── meta.json │ │ └── whats-new.mdx │ └── react │ │ ├── components │ │ ├── (layout) │ │ │ ├── box.mdx │ │ │ ├── columns.mdx │ │ │ ├── flex.mdx │ │ │ ├── float.mdx │ │ │ ├── h-stack.mdx │ │ │ ├── inline.mdx │ │ │ ├── meta.json │ │ │ ├── stack.mdx │ │ │ └── v-stack.mdx │ │ ├── (select-box) │ │ │ ├── check-select-box.mdx │ │ │ ├── meta.json │ │ │ └── radio-select-box.mdx │ │ ├── (tabs) │ │ │ ├── chip-tabs.mdx │ │ │ ├── meta.json │ │ │ └── tabs.mdx │ │ ├── (text-field) │ │ │ ├── meta.json │ │ │ ├── multiline-text-field.mdx │ │ │ └── text-field.mdx │ │ ├── (typography) │ │ │ ├── meta.json │ │ │ └── text.mdx │ │ ├── action-button.mdx │ │ ├── action-chip.mdx │ │ ├── action-sheet.mdx │ │ ├── alert-dialog.mdx │ │ ├── avatar.mdx │ │ ├── badge.mdx │ │ ├── bottom-sheet.mdx │ │ ├── callout.mdx │ │ ├── checkbox.mdx │ │ ├── concepts │ │ │ ├── composition.mdx │ │ │ ├── icon.mdx │ │ │ ├── meta.json │ │ │ └── snippet.mdx │ │ ├── contextual-floating-button.mdx │ │ ├── control-chip.mdx │ │ ├── divider.mdx │ │ ├── error-state.mdx │ │ ├── extended-action-sheet.mdx │ │ ├── extended-fab.mdx │ │ ├── fab.mdx │ │ ├── floating-action-button.mdx │ │ ├── help-bubble.mdx │ │ ├── identity-placeholder.mdx │ │ ├── inline-banner.mdx │ │ ├── link-content.mdx │ │ ├── manner-temp-badge.mdx │ │ ├── manner-temp.mdx │ │ ├── meta.json │ │ ├── progress-circle.mdx │ │ ├── pull-to-refresh.mdx │ │ ├── reaction-button.mdx │ │ ├── segmented-control.mdx │ │ ├── skeleton.mdx │ │ ├── snackbar.mdx │ │ ├── stackflow │ │ │ ├── app-screen.mdx │ │ │ └── meta.json │ │ ├── switch.mdx │ │ └── toggle-button.mdx │ │ ├── get-started │ │ ├── cli.mdx │ │ ├── codemod.mdx │ │ ├── figma-codegen.mdx │ │ ├── installation │ │ │ ├── index.mdx │ │ │ ├── meta.json │ │ │ ├── vite.mdx │ │ │ └── webpack.mdx │ │ ├── llms-txt.mdx │ │ ├── mcp.mdx │ │ ├── meta.json │ │ ├── migration │ │ │ ├── guides.mdx │ │ │ ├── improvements.mdx │ │ │ └── meta.json │ │ └── seed-design-json.mdx │ │ ├── iconography │ │ ├── codemod.mdx │ │ ├── library.mdx │ │ └── meta.json │ │ ├── index.mdx │ │ └── meta.json ├── hooks │ └── useThemeSync.ts ├── next.config.mjs ├── package.json ├── postcss.config.js ├── public │ ├── __registry__ │ │ ├── lib │ │ │ ├── index.json │ │ │ └── manner-temp-level.json │ │ └── ui │ │ │ ├── action-button.json │ │ │ ├── action-sheet.json │ │ │ ├── alert-dialog.json │ │ │ ├── app-screen.json │ │ │ ├── avatar.json │ │ │ ├── bottom-sheet.json │ │ │ ├── callout.json │ │ │ ├── checkbox.json │ │ │ ├── chip-tabs.json │ │ │ ├── contextual-floating-button.json │ │ │ ├── control-chip.json │ │ │ ├── error-state.json │ │ │ ├── extended-action-sheet.json │ │ │ ├── floating-action-button.json │ │ │ ├── help-bubble.json │ │ │ ├── identity-placeholder.json │ │ │ ├── index.json │ │ │ ├── inline-banner.json │ │ │ ├── loading-indicator.json │ │ │ ├── manner-temp-badge.json │ │ │ ├── manner-temp.json │ │ │ ├── progress-circle.json │ │ │ ├── pull-to-refresh.json │ │ │ ├── reaction-button.json │ │ │ ├── segmented-control.json │ │ │ ├── select-box.json │ │ │ ├── snackbar.json │ │ │ ├── switch.json │ │ │ ├── tabs.json │ │ │ ├── text-field.json │ │ │ └── toggle-button.json │ ├── _redirects │ ├── cover.png │ ├── docs │ │ ├── figma-codegen-preview.png │ │ ├── token-example-1.png │ │ ├── token-example-2.png │ │ └── token-semantics.png │ ├── favicon.svg │ ├── flower_green_checkmark.svg │ ├── logo.png │ ├── penguin.webp │ ├── rootage │ │ ├── collections.json │ │ ├── color.json │ │ ├── components │ │ │ ├── action-button.json │ │ │ ├── action-chip.json │ │ │ ├── action-sheet-close-button.json │ │ │ ├── action-sheet-item.json │ │ │ ├── action-sheet.json │ │ │ ├── avatar-stack.json │ │ │ ├── avatar.json │ │ │ ├── badge.json │ │ │ ├── bottom-sheet-close-button.json │ │ │ ├── bottom-sheet.json │ │ │ ├── callout.json │ │ │ ├── checkbox.json │ │ │ ├── chip-tab.json │ │ │ ├── chip-tablist.json │ │ │ ├── contextual-floating-button.json │ │ │ ├── control-chip.json │ │ │ ├── dialog.json │ │ │ ├── divider.json │ │ │ ├── extended-action-sheet-close-button.json │ │ │ ├── extended-action-sheet-item.json │ │ │ ├── extended-action-sheet.json │ │ │ ├── extended-fab.json │ │ │ ├── fab.json │ │ │ ├── floating-action-button.json │ │ │ ├── help-bubble.json │ │ │ ├── identity-placeholder.json │ │ │ ├── inline-banner.json │ │ │ ├── link-content.json │ │ │ ├── manner-temp-badge.json │ │ │ ├── manner-temp.json │ │ │ ├── notification-badge.json │ │ │ ├── progress-circle.json │ │ │ ├── radio.json │ │ │ ├── reaction-button.json │ │ │ ├── segmented-control-item.json │ │ │ ├── segmented-control.json │ │ │ ├── select-box.json │ │ │ ├── skeleton.json │ │ │ ├── snackbar.json │ │ │ ├── switch.json │ │ │ ├── tab.json │ │ │ ├── tablist.json │ │ │ ├── text-button.json │ │ │ ├── text-field.json │ │ │ ├── toggle-button.json │ │ │ ├── top-navigation.json │ │ │ └── typography.json │ │ ├── dimension.json │ │ ├── duration.json │ │ ├── font-size.json │ │ ├── font-weight.json │ │ ├── gradient.json │ │ ├── index.json │ │ ├── line-height.json │ │ ├── parsed.json │ │ ├── radius.json │ │ └── timing-function.json │ └── shield_blue_checkmark.svg ├── registry │ ├── lib │ │ └── manner-temp-level.ts │ ├── registry-lib.ts │ ├── registry-ui.ts │ ├── schema.ts │ └── ui │ │ ├── action-button.tsx │ │ ├── action-sheet.tsx │ │ ├── alert-dialog.tsx │ │ ├── app-bar.tsx │ │ ├── app-screen.tsx │ │ ├── avatar.tsx │ │ ├── bottom-sheet.tsx │ │ ├── callout.tsx │ │ ├── checkbox.tsx │ │ ├── chip-tabs.tsx │ │ ├── contextual-floating-button.tsx │ │ ├── control-chip.tsx │ │ ├── error-state.tsx │ │ ├── extended-action-sheet.tsx │ │ ├── floating-action-button.tsx │ │ ├── help-bubble.tsx │ │ ├── identity-placeholder.tsx │ │ ├── inline-banner.tsx │ │ ├── loading-indicator.tsx │ │ ├── manner-temp-badge.tsx │ │ ├── manner-temp.tsx │ │ ├── progress-circle.tsx │ │ ├── pull-to-refresh.tsx │ │ ├── reaction-button.tsx │ │ ├── segmented-control.tsx │ │ ├── select-box.tsx │ │ ├── snackbar.tsx │ │ ├── switch.tsx │ │ ├── tabs.tsx │ │ ├── text-field.tsx │ │ └── toggle-button.tsx ├── sanity.cli.ts ├── sanity.config.ts ├── sanity │ ├── env.ts │ ├── lib │ │ ├── card.tsx │ │ ├── client.tsx │ │ ├── do-dont.tsx │ │ ├── external-image.tsx │ │ ├── image-text-half.tsx │ │ ├── image.tsx │ │ ├── queries.ts │ │ ├── sanity-content.tsx │ │ ├── table.tsx │ │ └── types.ts │ ├── schemaTypes │ │ ├── blockContent.tsx │ │ ├── blog.ts │ │ ├── card.tsx │ │ ├── category.tsx │ │ ├── doDontType.tsx │ │ ├── guideline.ts │ │ ├── imageType.tsx │ │ └── index.ts │ └── structure.ts ├── scripts │ └── generate-registry.ts ├── source.config.ts ├── stories │ ├── ActionButton.stories.tsx │ ├── ActionChip.stories.tsx │ ├── ActionableCallout.stories.tsx │ ├── ActionableInlineBanner.stories.tsx │ ├── Avatar.stories.tsx │ ├── AvatarStack.stories.tsx │ ├── Badge.stories.tsx │ ├── Callout.stories.tsx │ ├── CheckSelectBox.stories.tsx │ ├── Checkbox.stories.tsx │ ├── ChipTabs.stories.tsx │ ├── ContextualFloatingButton.stories.tsx │ ├── ControlChip.stories.tsx │ ├── DismissibleCallout.stories.tsx │ ├── DismissibleInlineBanner.stories.tsx │ ├── ExtendedFab.stories.tsx │ ├── FloatingActionButton.stories.tsx │ ├── InlineBanner.stories.tsx │ ├── LinkContent.stories.tsx │ ├── MannerTemp.stories.tsx │ ├── MannerTempBadge.stories.tsx │ ├── MultilineTextField.stories.tsx │ ├── ProgressCircle.stories.tsx │ ├── RadioSelectBox.stories.tsx │ ├── ReactionButton.stories.tsx │ ├── SegmentedControl.stories.tsx │ ├── Switch.stories.tsx │ ├── Text.stories.tsx │ ├── TextField.stories.tsx │ ├── ToggleButton.stories.tsx │ ├── components │ │ ├── decorator.tsx │ │ └── variant-table.tsx │ └── utils │ │ └── parameters.ts └── tsconfig.json ├── ecosystem ├── figma-extractor │ ├── .gitignore │ ├── CHANGELOG.md │ ├── README.md │ ├── build.mjs │ ├── package.json │ ├── src │ │ ├── api │ │ │ ├── client.ts │ │ │ ├── nodes.ts │ │ │ ├── styles.ts │ │ │ └── variables.ts │ │ ├── cli │ │ │ ├── config.ts │ │ │ ├── index.ts │ │ │ └── write.ts │ │ ├── constants.ts │ │ ├── env.ts │ │ ├── index.ts │ │ └── services │ │ │ ├── component-sets.ts │ │ │ ├── components.ts │ │ │ ├── styles.ts │ │ │ └── variables.ts │ └── tsconfig.json ├── qvism │ ├── README.md │ ├── cli │ │ ├── .gitignore │ │ ├── package.json │ │ ├── src │ │ │ └── bin │ │ │ │ └── qvism.ts │ │ └── tsconfig.json │ └── core │ │ ├── .gitignore │ │ ├── package.json │ │ ├── src │ │ ├── compact.ts │ │ ├── css.test.ts │ │ ├── css.ts │ │ ├── dts.ts │ │ ├── fixture.ts │ │ ├── index.ts │ │ ├── js.ts │ │ ├── logic.ts │ │ ├── parser.ts │ │ ├── reserved-words.ts │ │ └── types.ts │ │ └── tsconfig.json └── rootage │ ├── README.md │ ├── cli │ ├── .gitignore │ ├── build.mjs │ ├── dev.mjs │ ├── package.json │ ├── src │ │ └── index.ts │ └── tsconfig.json │ └── core │ ├── .gitignore │ ├── package.json │ ├── src │ ├── analyzer │ │ ├── context.ts │ │ ├── index.ts │ │ ├── resolver.test.ts │ │ ├── resolver.ts │ │ ├── stringify.ts │ │ ├── types.ts │ │ ├── validate.test.ts │ │ └── validate.ts │ ├── index.ts │ ├── languages │ │ ├── css.test.ts │ │ ├── css.ts │ │ ├── exchange │ │ │ ├── component-spec.test.ts │ │ │ └── index.ts │ │ ├── index.ts │ │ ├── jsonschema.test.ts │ │ ├── jsonschema.ts │ │ ├── tailwind3.ts │ │ ├── tailwind4.ts │ │ ├── typescript.test.ts │ │ └── typescript.ts │ ├── parser │ │ ├── ast.ts │ │ ├── authoring │ │ │ ├── component-spec.test.ts │ │ │ ├── component-spec.ts │ │ │ ├── index.ts │ │ │ ├── is-token-ref.ts │ │ │ ├── metadata.ts │ │ │ ├── parse.ts │ │ │ ├── token-collections.ts │ │ │ ├── tokens.test.ts │ │ │ ├── tokens.ts │ │ │ ├── types.ts │ │ │ ├── value.test.ts │ │ │ └── value.ts │ │ ├── exchange │ │ │ ├── component-spec.test.ts │ │ │ ├── component-spec.ts │ │ │ ├── index.ts │ │ │ ├── is-token-ref.ts │ │ │ ├── metadata.ts │ │ │ ├── parse.ts │ │ │ ├── token-collections.ts │ │ │ ├── tokens.test.ts │ │ │ ├── tokens.ts │ │ │ ├── types.ts │ │ │ ├── value.test.ts │ │ │ └── value.ts │ │ ├── factory.ts │ │ ├── index.ts │ │ └── visit.ts │ └── utils │ │ ├── compact.ts │ │ └── string.ts │ └── tsconfig.json ├── examples ├── rspack-spa │ ├── .gitignore │ ├── README.md │ ├── index.html │ ├── package.json │ ├── rspack.config.ts │ ├── src │ │ ├── App.tsx │ │ ├── index.css │ │ ├── main.tsx │ │ └── react-env.d.ts │ └── tsconfig.json └── stackflow-spa │ ├── .gitignore │ ├── index.html │ ├── package.json │ ├── seed-design.json │ ├── src │ ├── App.tsx │ ├── activities │ │ ├── ActivityActionButton.tsx │ │ ├── ActivityActionChip.tsx │ │ ├── ActivityActionSheet.tsx │ │ ├── ActivityAlertDialog.tsx │ │ ├── ActivityAnimatedTabs.tsx │ │ ├── ActivityAvatar.tsx │ │ ├── ActivityAvatarStack.tsx │ │ ├── ActivityBottomSheet.tsx │ │ ├── ActivityCodegenTest.tsx │ │ ├── ActivityControlChip.tsx │ │ ├── ActivityErrorState.tsx │ │ ├── ActivityExtendedActionSheet.tsx │ │ ├── ActivityHelpBubble.tsx │ │ ├── ActivityHome.tsx │ │ ├── ActivityLayerBar.tsx │ │ ├── ActivityMannerTempLevel.tsx │ │ ├── ActivityMixedVersionTest.tsx │ │ ├── ActivityNotFound.tsx │ │ ├── ActivityPartialDarkMode.tsx │ │ ├── ActivityPerfCheck.tsx │ │ ├── ActivityReactionButton.tsx │ │ ├── ActivitySegmentedControl.tsx │ │ ├── ActivitySwipeableTabs.tsx │ │ ├── ActivityTabs.tsx │ │ ├── ActivityToggleButton.tsx │ │ └── ActivityTransparentBar.tsx │ ├── assets │ │ └── peng.jpeg │ ├── components │ │ ├── ComponentAnalyzer.tsx │ │ ├── ComponentShowcase.css.ts │ │ ├── ComponentShowcase.tsx │ │ ├── ControlPanel.css.ts │ │ ├── ControlPanel.tsx │ │ ├── List.css.ts │ │ └── List.tsx │ ├── global.css │ ├── helper.tsx │ ├── hooks │ │ └── usePreference.tsx │ ├── index.tsx │ ├── reset.css │ ├── seed-design │ │ ├── lib │ │ │ └── manner-temp-level.ts │ │ ├── stackflow │ │ │ ├── AppBar.tsx │ │ │ ├── AppScreen.tsx │ │ │ └── DialogPushTrigger.tsx │ │ ├── ui │ │ │ ├── action-button.tsx │ │ │ ├── action-chip.tsx │ │ │ ├── action-sheet.tsx │ │ │ ├── alert-dialog.tsx │ │ │ ├── avatar.tsx │ │ │ ├── bottom-sheet.tsx │ │ │ ├── control-chip.tsx │ │ │ ├── error-state.tsx │ │ │ ├── extended-action-sheet.tsx │ │ │ ├── extended-fab.tsx │ │ │ ├── help-bubble.tsx │ │ │ ├── identity-placeholder.tsx │ │ │ ├── loading-indicator.tsx │ │ │ ├── manner-temp-badge.tsx │ │ │ ├── progress-circle.tsx │ │ │ ├── reaction-button.tsx │ │ │ ├── segmented-control.tsx │ │ │ ├── snackbar.tsx │ │ │ ├── switch.tsx │ │ │ ├── tabs.tsx │ │ │ └── toggle-button.tsx │ │ └── util │ │ │ └── use-step-dialog.tsx │ ├── stackflow │ │ ├── Stack.tsx │ │ ├── createCallbackActivity.ts │ │ ├── index.ts │ │ ├── theme.ts │ │ └── useFlow.ts │ └── vite-env.d.ts │ ├── tsconfig.json │ └── vite.config.mts ├── knip.json ├── package.json ├── packages ├── archive │ ├── design-token │ │ ├── .gitignore │ │ ├── CHANGELOG.md │ │ ├── README.md │ │ ├── __tests__ │ │ │ ├── colors.test.ts │ │ │ └── fonts.test.ts │ │ ├── design-token-explainer.png │ │ ├── export-css.mjs │ │ ├── package.json │ │ ├── src │ │ │ ├── colors │ │ │ │ ├── index.ts │ │ │ │ ├── token.ts │ │ │ │ ├── types.ts │ │ │ │ └── utils.ts │ │ │ ├── fonts │ │ │ │ ├── index.ts │ │ │ │ └── types.ts │ │ │ └── index.ts │ │ ├── tap-snapshots │ │ │ └── __tests__ │ │ │ │ ├── colors.test.ts.test.cjs │ │ │ │ └── fonts.test.ts.test.cjs │ │ └── tsconfig.json │ ├── gatsby-plugin-seed-design │ │ ├── CHANGELOG.md │ │ ├── LICENSE.txt │ │ ├── README.md │ │ ├── gatsby-browser.tsx │ │ ├── gatsby-node.ts │ │ ├── gatsby-ssr.tsx │ │ ├── index.js │ │ ├── package.json │ │ ├── tsconfig.json │ │ └── wrapRootElement.tsx │ ├── icon │ │ ├── .gitignore │ │ ├── .prettierrc │ │ ├── CHANGELOG.md │ │ ├── README-en.md │ │ ├── README.md │ │ ├── build.mjs │ │ ├── package.json │ │ ├── schema │ │ │ └── schema.json │ │ ├── script │ │ │ └── generate-icon-schema.js │ │ ├── src │ │ │ ├── commands │ │ │ │ ├── generate.ts │ │ │ │ └── init.ts │ │ │ ├── constants.ts │ │ │ ├── index.ts │ │ │ ├── templates │ │ │ │ ├── component.ts │ │ │ │ ├── config-default.ts │ │ │ │ ├── config-vite.ts │ │ │ │ └── icon-data.ts │ │ │ ├── types.ts │ │ │ ├── utils │ │ │ │ └── path.ts │ │ │ └── validates │ │ │ │ ├── icons.ts │ │ │ │ └── tsconfig.ts │ │ ├── tests │ │ │ └── path.ts │ │ └── tsconfig.json │ ├── react-emotion-theme │ │ ├── .gitignore │ │ ├── CHANGELOG.md │ │ ├── README.md │ │ ├── package.json │ │ ├── src │ │ │ ├── KarrotThemeProvider.tsx │ │ │ └── index.ts │ │ └── tsconfig.json │ ├── react-stitches │ │ ├── .gitignore │ │ ├── README.md │ │ ├── babel.config.json │ │ ├── package.json │ │ ├── src │ │ │ ├── colors.ts │ │ │ └── config.ts │ │ └── tsconfig.json │ ├── react-theming │ │ ├── .gitignore │ │ ├── CHANGELOG.md │ │ ├── README.md │ │ ├── build.mjs │ │ ├── package.json │ │ ├── src │ │ │ ├── ThemeContext.ts │ │ │ ├── common.ts │ │ │ ├── index.ts │ │ │ ├── server.ts │ │ │ └── useThemeBehavior.ts │ │ └── tsconfig.json │ └── styled-components-theme │ │ ├── .gitignore │ │ ├── CHANGELOG.md │ │ ├── README.md │ │ ├── package.json │ │ ├── src │ │ ├── KarrotThemeProvider.tsx │ │ └── index.ts │ │ └── tsconfig.json ├── cli │ ├── .gitignore │ ├── CHANGELOG.md │ ├── README.md │ ├── build.mjs │ ├── dev.mjs │ ├── env.d.ts │ ├── package.json │ ├── src │ │ ├── commands │ │ │ ├── add.ts │ │ │ └── init.ts │ │ ├── constants.ts │ │ ├── index.ts │ │ ├── schema.ts │ │ ├── test │ │ │ └── add-relative-registries.test.ts │ │ └── utils │ │ │ ├── add-relative-registries.ts │ │ │ ├── color.ts │ │ │ ├── get-config.ts │ │ │ ├── get-metadata.ts │ │ │ ├── get-package-info.ts │ │ │ ├── get-package-manager.ts │ │ │ ├── install.ts │ │ │ └── transformers │ │ │ ├── index.ts │ │ │ ├── transform-jsx.ts │ │ │ └── transform-rsc.ts │ └── tsconfig.json ├── codemod │ ├── .gitignore │ ├── CHANGELOG.md │ ├── README.md │ ├── build.mjs │ ├── dev.mjs │ ├── package.json │ ├── src │ │ ├── index.ts │ │ ├── schema.ts │ │ ├── scripts │ │ │ ├── create-identifier-match.mjs │ │ │ └── icon-data.tsv │ │ ├── transforms │ │ │ ├── replace-css-seed-design-color-variable │ │ │ │ ├── README.md │ │ │ │ ├── __testfixtures__ │ │ │ │ │ ├── basic.input.css │ │ │ │ │ └── basic.output.css │ │ │ │ ├── __tests__ │ │ │ │ │ └── transform.test.ts │ │ │ │ └── index.ts │ │ │ ├── replace-css-seed-design-typography-variable │ │ │ │ ├── README.md │ │ │ │ ├── __testfixtures__ │ │ │ │ │ ├── basic.input.css │ │ │ │ │ └── basic.output.css │ │ │ │ ├── __tests__ │ │ │ │ │ └── transform.test.ts │ │ │ │ └── index.ts │ │ │ ├── replace-custom-imported-typography-variable │ │ │ │ ├── README.md │ │ │ │ ├── __testfixtures__ │ │ │ │ │ ├── basic.input.ts │ │ │ │ │ ├── basic.output.ts │ │ │ │ │ ├── duplicate-imports.input.ts │ │ │ │ │ └── duplicate-imports.output.ts │ │ │ │ ├── __tests__ │ │ │ │ │ └── transform.test.ts │ │ │ │ └── index.ts │ │ │ ├── replace-custom-seed-design-color │ │ │ │ ├── README.md │ │ │ │ ├── __testfixtures__ │ │ │ │ │ ├── advanced.input.ts │ │ │ │ │ ├── advanced.output.ts │ │ │ │ │ ├── basic.input.ts │ │ │ │ │ ├── basic.output.ts │ │ │ │ │ ├── segmented.input.ts │ │ │ │ │ └── segmented.output.ts │ │ │ │ ├── __tests__ │ │ │ │ │ └── transform.test.ts │ │ │ │ └── index.ts │ │ │ ├── replace-custom-seed-design-text-component │ │ │ │ ├── README.md │ │ │ │ ├── __testfixtures__ │ │ │ │ │ ├── basic.input.tsx │ │ │ │ │ ├── basic.output.tsx │ │ │ │ │ ├── conditional.input.tsx │ │ │ │ │ └── conditional.output.tsx │ │ │ │ ├── __tests__ │ │ │ │ │ └── transform.test.ts │ │ │ │ └── index.ts │ │ │ ├── replace-custom-seed-design-typography │ │ │ │ ├── README.md │ │ │ │ ├── __testfixtures__ │ │ │ │ │ ├── basic.input.ts │ │ │ │ │ └── basic.output.ts │ │ │ │ ├── __tests__ │ │ │ │ │ └── transform.test.ts │ │ │ │ └── index.ts │ │ │ ├── replace-custom-seed-design-vars │ │ │ │ ├── README.md │ │ │ │ ├── __testfixtures__ │ │ │ │ │ ├── basic.input.ts │ │ │ │ │ └── basic.output.ts │ │ │ │ ├── __tests__ │ │ │ │ │ └── transform.test.ts │ │ │ │ └── index.ts │ │ │ ├── replace-custom-text-component-color-prop │ │ │ │ ├── README.md │ │ │ │ ├── __testfixtures__ │ │ │ │ │ ├── basic.input.tsx │ │ │ │ │ └── basic.output.tsx │ │ │ │ ├── __tests__ │ │ │ │ │ └── transform.test.ts │ │ │ │ └── index.ts │ │ │ ├── replace-react-icon │ │ │ │ ├── README.md │ │ │ │ ├── __testfixtures__ │ │ │ │ │ ├── basic.input.tsx │ │ │ │ │ ├── basic.output.tsx │ │ │ │ │ ├── direct-import.input.tsx │ │ │ │ │ ├── direct-import.output.tsx │ │ │ │ │ ├── namespace-import.input.tsx │ │ │ │ │ └── namespace-import.output.tsx │ │ │ │ ├── __tests__ │ │ │ │ │ └── transform.test.ts │ │ │ │ ├── identifier-match.ts │ │ │ │ ├── index.ts │ │ │ │ └── replace-node.ts │ │ │ ├── replace-seed-design-token-typography-classname │ │ │ │ ├── README.md │ │ │ │ ├── __testfixtures__ │ │ │ │ │ ├── basic.input.tsx │ │ │ │ │ ├── basic.output.tsx │ │ │ │ │ ├── switch.input.tsx │ │ │ │ │ ├── switch.output.tsx │ │ │ │ │ ├── ts-pattern.input.tsx │ │ │ │ │ ├── ts-pattern.output.tsx │ │ │ │ │ ├── variable-declarator.input.tsx │ │ │ │ │ └── variable-declarator.output.tsx │ │ │ │ ├── __tests__ │ │ │ │ │ └── transform.test.ts │ │ │ │ └── index.ts │ │ │ ├── replace-seed-design-token-vars │ │ │ │ ├── README.md │ │ │ │ ├── __testfixtures__ │ │ │ │ │ ├── basic.input.tsx │ │ │ │ │ ├── basic.output.tsx │ │ │ │ │ ├── color_property_context.input.tsx │ │ │ │ │ ├── color_property_context.output.tsx │ │ │ │ │ ├── no-change.input.tsx │ │ │ │ │ ├── no-change.output.tsx │ │ │ │ │ ├── realty-test-1.input.tsx │ │ │ │ │ ├── realty-test-1.output.tsx │ │ │ │ │ ├── realty-test-2.input.tsx │ │ │ │ │ ├── realty-test-2.output.tsx │ │ │ │ │ ├── scale.input.tsx │ │ │ │ │ ├── scale.output.tsx │ │ │ │ │ ├── semantic.input.tsx │ │ │ │ │ ├── semantic.output.tsx │ │ │ │ │ ├── static.input.tsx │ │ │ │ │ ├── static.output.tsx │ │ │ │ │ ├── typography.input.tsx │ │ │ │ │ └── typography.output.tsx │ │ │ │ ├── __tests__ │ │ │ │ │ └── transform.test.ts │ │ │ │ ├── ast-utils.ts │ │ │ │ ├── import-handler.ts │ │ │ │ ├── index.ts │ │ │ │ └── token-utils.ts │ │ │ ├── replace-stitches-styled-color │ │ │ │ ├── README.md │ │ │ │ ├── __testfixtures__ │ │ │ │ │ ├── basic.input.tsx │ │ │ │ │ ├── basic.output.tsx │ │ │ │ │ ├── expert.input.tsx │ │ │ │ │ ├── expert.output.tsx │ │ │ │ │ ├── jobs.input.tsx │ │ │ │ │ └── jobs.output.tsx │ │ │ │ ├── __tests__ │ │ │ │ │ └── transform.test.ts │ │ │ │ └── index.ts │ │ │ ├── replace-stitches-styled-typography │ │ │ │ ├── README.md │ │ │ │ ├── __testfixtures__ │ │ │ │ │ ├── basic.input.tsx │ │ │ │ │ └── basic.output.tsx │ │ │ │ ├── __tests__ │ │ │ │ │ └── transform.test.ts │ │ │ │ └── index.ts │ │ │ ├── replace-stitches-theme-color │ │ │ │ ├── README.md │ │ │ │ ├── __testfixtures__ │ │ │ │ │ ├── basic.input.tsx │ │ │ │ │ ├── basic.output.tsx │ │ │ │ │ ├── jobs.input.tsx │ │ │ │ │ ├── jobs.output.tsx │ │ │ │ │ ├── ternary.input.tsx │ │ │ │ │ └── ternary.output.tsx │ │ │ │ ├── __tests__ │ │ │ │ │ └── transform.test.ts │ │ │ │ └── index.ts │ │ │ ├── replace-tailwind-color │ │ │ │ ├── README.md │ │ │ │ ├── __testfixtures__ │ │ │ │ │ ├── basic.input.tsx │ │ │ │ │ ├── basic.output.tsx │ │ │ │ │ ├── modifier.input.tsx │ │ │ │ │ ├── modifier.output.tsx │ │ │ │ │ ├── realty-test-1.input.tsx │ │ │ │ │ ├── realty-test-1.output.tsx │ │ │ │ │ ├── text.input.tsx │ │ │ │ │ ├── text.output.tsx │ │ │ │ │ ├── unsafe-class-name.input.tsx │ │ │ │ │ └── unsafe-class-name.output.tsx │ │ │ │ ├── __tests__ │ │ │ │ │ └── transform.test.ts │ │ │ │ └── index.ts │ │ │ └── replace-tailwind-typography │ │ │ │ ├── README.md │ │ │ │ ├── __testfixtures__ │ │ │ │ ├── basic.input.tsx │ │ │ │ └── basic.output.tsx │ │ │ │ ├── __tests__ │ │ │ │ └── transform.test.ts │ │ │ │ └── index.ts │ │ └── utils │ │ │ ├── ast.ts │ │ │ ├── case.ts │ │ │ ├── color-properties.ts │ │ │ ├── git.ts │ │ │ ├── log.ts │ │ │ ├── logger.ts │ │ │ └── test.ts │ └── tsconfig.json ├── css │ ├── CHANGELOG.md │ ├── README.md │ ├── all.css │ ├── all.min.css │ ├── base.css │ ├── base.min.css │ ├── package.json │ ├── qvism.config.mjs │ ├── recipes │ │ ├── action-button.css │ │ ├── action-button.d.ts │ │ ├── action-button.mjs │ │ ├── action-chip.css │ │ ├── action-chip.d.ts │ │ ├── action-chip.mjs │ │ ├── action-sheet-item.css │ │ ├── action-sheet-item.d.ts │ │ ├── action-sheet-item.mjs │ │ ├── action-sheet.css │ │ ├── action-sheet.d.ts │ │ ├── action-sheet.mjs │ │ ├── app-bar-main.css │ │ ├── app-bar-main.d.ts │ │ ├── app-bar-main.mjs │ │ ├── app-bar.css │ │ ├── app-bar.d.ts │ │ ├── app-bar.mjs │ │ ├── app-screen.css │ │ ├── app-screen.d.ts │ │ ├── app-screen.mjs │ │ ├── avatar-stack.css │ │ ├── avatar-stack.d.ts │ │ ├── avatar-stack.mjs │ │ ├── avatar.css │ │ ├── avatar.d.ts │ │ ├── avatar.mjs │ │ ├── badge.css │ │ ├── badge.d.ts │ │ ├── badge.mjs │ │ ├── bottom-sheet.css │ │ ├── bottom-sheet.d.ts │ │ ├── bottom-sheet.mjs │ │ ├── callout.css │ │ ├── callout.d.ts │ │ ├── callout.mjs │ │ ├── checkbox.css │ │ ├── checkbox.d.ts │ │ ├── checkbox.mjs │ │ ├── chip-tabs.css │ │ ├── chip-tabs.d.ts │ │ ├── chip-tabs.mjs │ │ ├── contextual-floating-button.css │ │ ├── contextual-floating-button.d.ts │ │ ├── contextual-floating-button.mjs │ │ ├── control-chip.css │ │ ├── control-chip.d.ts │ │ ├── control-chip.mjs │ │ ├── dialog.css │ │ ├── dialog.d.ts │ │ ├── dialog.mjs │ │ ├── extended-action-sheet-item.css │ │ ├── extended-action-sheet-item.d.ts │ │ ├── extended-action-sheet-item.mjs │ │ ├── extended-action-sheet.css │ │ ├── extended-action-sheet.d.ts │ │ ├── extended-action-sheet.mjs │ │ ├── extended-fab.css │ │ ├── extended-fab.d.ts │ │ ├── extended-fab.mjs │ │ ├── fab.css │ │ ├── fab.d.ts │ │ ├── fab.mjs │ │ ├── floating-action-button.css │ │ ├── floating-action-button.d.ts │ │ ├── floating-action-button.mjs │ │ ├── help-bubble.css │ │ ├── help-bubble.d.ts │ │ ├── help-bubble.mjs │ │ ├── identity-placeholder.css │ │ ├── identity-placeholder.d.ts │ │ ├── identity-placeholder.mjs │ │ ├── inline-banner.css │ │ ├── inline-banner.d.ts │ │ ├── inline-banner.mjs │ │ ├── link-content.css │ │ ├── link-content.d.ts │ │ ├── link-content.mjs │ │ ├── manner-temp-badge.css │ │ ├── manner-temp-badge.d.ts │ │ ├── manner-temp-badge.mjs │ │ ├── manner-temp.css │ │ ├── manner-temp.d.ts │ │ ├── manner-temp.mjs │ │ ├── notification-badge-positioner.css │ │ ├── notification-badge-positioner.d.ts │ │ ├── notification-badge-positioner.mjs │ │ ├── notification-badge.css │ │ ├── notification-badge.d.ts │ │ ├── notification-badge.mjs │ │ ├── progress-circle.css │ │ ├── progress-circle.d.ts │ │ ├── progress-circle.mjs │ │ ├── pull-to-refresh.css │ │ ├── pull-to-refresh.d.ts │ │ ├── pull-to-refresh.mjs │ │ ├── radio.css │ │ ├── radio.d.ts │ │ ├── radio.mjs │ │ ├── reaction-button.css │ │ ├── reaction-button.d.ts │ │ ├── reaction-button.mjs │ │ ├── segmented-control.css │ │ ├── segmented-control.d.ts │ │ ├── segmented-control.mjs │ │ ├── select-box-group.css │ │ ├── select-box-group.d.ts │ │ ├── select-box-group.mjs │ │ ├── select-box.css │ │ ├── select-box.d.ts │ │ ├── select-box.mjs │ │ ├── shared.mjs │ │ ├── skeleton.css │ │ ├── skeleton.d.ts │ │ ├── skeleton.mjs │ │ ├── snackbar-region.css │ │ ├── snackbar-region.d.ts │ │ ├── snackbar-region.mjs │ │ ├── snackbar.css │ │ ├── snackbar.d.ts │ │ ├── snackbar.mjs │ │ ├── switch.css │ │ ├── switch.d.ts │ │ ├── switch.mjs │ │ ├── tabs.css │ │ ├── tabs.d.ts │ │ ├── tabs.mjs │ │ ├── text-field.css │ │ ├── text-field.d.ts │ │ ├── text-field.mjs │ │ ├── text.css │ │ ├── text.d.ts │ │ ├── text.mjs │ │ ├── toggle-button.css │ │ ├── toggle-button.d.ts │ │ └── toggle-button.mjs │ ├── theming │ │ ├── index.cjs │ │ ├── index.d.ts │ │ ├── index.mjs │ │ ├── mode.cjs │ │ ├── mode.d.ts │ │ └── mode.mjs │ └── vars │ │ ├── color │ │ ├── bg.d.ts │ │ ├── bg.mjs │ │ ├── fg.d.ts │ │ ├── fg.mjs │ │ ├── index.d.ts │ │ ├── index.mjs │ │ ├── manner-temp │ │ │ ├── index.d.ts │ │ │ ├── index.mjs │ │ │ ├── l1.d.ts │ │ │ ├── l1.mjs │ │ │ ├── l2.d.ts │ │ │ ├── l2.mjs │ │ │ ├── l3.d.ts │ │ │ ├── l3.mjs │ │ │ ├── l4.d.ts │ │ │ ├── l4.mjs │ │ │ ├── l5.d.ts │ │ │ ├── l5.mjs │ │ │ ├── l6.d.ts │ │ │ └── l6.mjs │ │ ├── palette.d.ts │ │ ├── palette.mjs │ │ ├── stroke.d.ts │ │ └── stroke.mjs │ │ ├── component │ │ ├── action-button.d.ts │ │ ├── action-button.mjs │ │ ├── action-chip.d.ts │ │ ├── action-chip.mjs │ │ ├── action-sheet-close-button.d.ts │ │ ├── action-sheet-close-button.mjs │ │ ├── action-sheet-item.d.ts │ │ ├── action-sheet-item.mjs │ │ ├── action-sheet.d.ts │ │ ├── action-sheet.mjs │ │ ├── avatar-stack.d.ts │ │ ├── avatar-stack.mjs │ │ ├── avatar.d.ts │ │ ├── avatar.mjs │ │ ├── badge.d.ts │ │ ├── badge.mjs │ │ ├── bottom-sheet-close-button.d.ts │ │ ├── bottom-sheet-close-button.mjs │ │ ├── bottom-sheet.d.ts │ │ ├── bottom-sheet.mjs │ │ ├── callout.d.ts │ │ ├── callout.mjs │ │ ├── checkbox.d.ts │ │ ├── checkbox.mjs │ │ ├── chip-tab.d.ts │ │ ├── chip-tab.mjs │ │ ├── chip-tablist.d.ts │ │ ├── chip-tablist.mjs │ │ ├── contextual-floating-button.d.ts │ │ ├── contextual-floating-button.mjs │ │ ├── control-chip.d.ts │ │ ├── control-chip.mjs │ │ ├── dialog.d.ts │ │ ├── dialog.mjs │ │ ├── divider.d.ts │ │ ├── divider.mjs │ │ ├── extended-action-sheet-close-button.d.ts │ │ ├── extended-action-sheet-close-button.mjs │ │ ├── extended-action-sheet-item.d.ts │ │ ├── extended-action-sheet-item.mjs │ │ ├── extended-action-sheet.d.ts │ │ ├── extended-action-sheet.mjs │ │ ├── extended-fab.d.ts │ │ ├── extended-fab.mjs │ │ ├── fab.d.ts │ │ ├── fab.mjs │ │ ├── floating-action-button.d.ts │ │ ├── floating-action-button.mjs │ │ ├── help-bubble.d.ts │ │ ├── help-bubble.mjs │ │ ├── identity-placeholder.d.ts │ │ ├── identity-placeholder.mjs │ │ ├── index.d.ts │ │ ├── index.mjs │ │ ├── inline-banner.d.ts │ │ ├── inline-banner.mjs │ │ ├── link-content.d.ts │ │ ├── link-content.mjs │ │ ├── manner-temp-badge.d.ts │ │ ├── manner-temp-badge.mjs │ │ ├── manner-temp.d.ts │ │ ├── manner-temp.mjs │ │ ├── notification-badge.d.ts │ │ ├── notification-badge.mjs │ │ ├── progress-circle.d.ts │ │ ├── progress-circle.mjs │ │ ├── radio.d.ts │ │ ├── radio.mjs │ │ ├── reaction-button.d.ts │ │ ├── reaction-button.mjs │ │ ├── segmented-control-item.d.ts │ │ ├── segmented-control-item.mjs │ │ ├── segmented-control.d.ts │ │ ├── segmented-control.mjs │ │ ├── select-box.d.ts │ │ ├── select-box.mjs │ │ ├── skeleton.d.ts │ │ ├── skeleton.mjs │ │ ├── snackbar.d.ts │ │ ├── snackbar.mjs │ │ ├── switch.d.ts │ │ ├── switch.mjs │ │ ├── tab.d.ts │ │ ├── tab.mjs │ │ ├── tablist.d.ts │ │ ├── tablist.mjs │ │ ├── text-button.d.ts │ │ ├── text-button.mjs │ │ ├── text-field.d.ts │ │ ├── text-field.mjs │ │ ├── toggle-button.d.ts │ │ ├── toggle-button.mjs │ │ ├── top-navigation.d.ts │ │ ├── top-navigation.mjs │ │ ├── typography.d.ts │ │ └── typography.mjs │ │ ├── dimension │ │ ├── index.d.ts │ │ ├── index.mjs │ │ ├── spacing-x.d.ts │ │ ├── spacing-x.mjs │ │ ├── spacing-y.d.ts │ │ └── spacing-y.mjs │ │ ├── duration.d.ts │ │ ├── duration.mjs │ │ ├── font-size.d.ts │ │ ├── font-size.mjs │ │ ├── font-weight.d.ts │ │ ├── font-weight.mjs │ │ ├── gradient.d.ts │ │ ├── gradient.mjs │ │ ├── index.d.ts │ │ ├── index.mjs │ │ ├── line-height.d.ts │ │ ├── line-height.mjs │ │ ├── radius.d.ts │ │ ├── radius.mjs │ │ ├── timing-function.d.ts │ │ ├── timing-function.mjs │ │ ├── vars.d.ts │ │ └── vars.mjs ├── design-token │ ├── .gitignore │ ├── CHANGELOG.md │ ├── README.md │ ├── build.mjs │ ├── design-token-explainer.png │ ├── dev.mjs │ ├── package.json │ ├── src │ │ ├── classNames │ │ │ ├── index.ts │ │ │ └── semantic │ │ │ │ ├── index.ts │ │ │ │ └── typography.ts │ │ ├── index.ts │ │ ├── types.ts │ │ └── vars │ │ │ ├── index.ts │ │ │ ├── scale │ │ │ ├── color.ts │ │ │ ├── dimension.ts │ │ │ ├── index.ts │ │ │ └── letterSpacing.ts │ │ │ ├── semantic │ │ │ ├── color.ts │ │ │ ├── index.ts │ │ │ └── typography.ts │ │ │ └── static │ │ │ ├── color.ts │ │ │ ├── fontWeight.ts │ │ │ ├── index.ts │ │ │ └── lineHeight.ts │ └── tsconfig.json ├── figma │ ├── .gitignore │ ├── CHANGELOG.md │ ├── CONTEXT.md │ ├── figma-extractor.config.ts │ ├── package.json │ ├── src │ │ ├── codegen │ │ │ ├── component-properties.ts │ │ │ ├── core │ │ │ │ ├── codegen.ts │ │ │ │ ├── component-handler.ts │ │ │ │ ├── component-type-helper.ts │ │ │ │ ├── element-transformer.ts │ │ │ │ ├── index.ts │ │ │ │ ├── infer-layout.test.ts │ │ │ │ ├── infer-layout.ts │ │ │ │ ├── jsx.ts │ │ │ │ ├── props-converter.ts │ │ │ │ └── value-resolver.ts │ │ │ ├── default-services.ts │ │ │ ├── index.ts │ │ │ └── targets │ │ │ │ ├── figma │ │ │ │ ├── frame.ts │ │ │ │ ├── index.ts │ │ │ │ ├── instance.ts │ │ │ │ ├── pipeline.ts │ │ │ │ ├── props.ts │ │ │ │ ├── shape.ts │ │ │ │ ├── text.ts │ │ │ │ └── value-resolver.ts │ │ │ │ ├── index.ts │ │ │ │ └── react │ │ │ │ ├── component │ │ │ │ ├── deps.interface.ts │ │ │ │ ├── handlers │ │ │ │ │ ├── action-button.ts │ │ │ │ │ ├── action-chip.ts │ │ │ │ │ ├── action-sheet.ts │ │ │ │ │ ├── app-bar.ts │ │ │ │ │ ├── avatar-stack.ts │ │ │ │ │ ├── avatar.ts │ │ │ │ │ ├── badge.ts │ │ │ │ │ ├── callout.ts │ │ │ │ │ ├── checkbox.ts │ │ │ │ │ ├── chip-tabs.ts │ │ │ │ │ ├── control-chip.ts │ │ │ │ │ ├── error-state.ts │ │ │ │ │ ├── extended-action-sheet.ts │ │ │ │ │ ├── extended-fab.ts │ │ │ │ │ ├── fab.ts │ │ │ │ │ ├── help-bubble.ts │ │ │ │ │ ├── identity-placeholder.ts │ │ │ │ │ ├── inline-banner.ts │ │ │ │ │ ├── manner-temp-badge.ts │ │ │ │ │ ├── multiline-text-field.ts │ │ │ │ │ ├── progress-circle.ts │ │ │ │ │ ├── reaction-button.ts │ │ │ │ │ ├── segmented-control.ts │ │ │ │ │ ├── select-box.ts │ │ │ │ │ ├── skeleton.ts │ │ │ │ │ ├── snackbar.ts │ │ │ │ │ ├── switch.ts │ │ │ │ │ ├── tabs.ts │ │ │ │ │ ├── text-button.ts │ │ │ │ │ ├── text-field.ts │ │ │ │ │ └── toggle-button.ts │ │ │ │ ├── index.ts │ │ │ │ └── size.ts │ │ │ │ ├── element-factories.ts │ │ │ │ ├── frame.ts │ │ │ │ ├── icon.ts │ │ │ │ ├── index.ts │ │ │ │ ├── instance.ts │ │ │ │ ├── pipeline.ts │ │ │ │ ├── props.ts │ │ │ │ ├── shape.ts │ │ │ │ ├── text.ts │ │ │ │ └── value-resolver.ts │ │ ├── entities │ │ │ ├── component.interface.ts │ │ │ ├── component.repository.ts │ │ │ ├── data │ │ │ │ ├── __generated__ │ │ │ │ │ └── component-sets │ │ │ │ │ │ ├── action-button.d.ts │ │ │ │ │ │ ├── action-button.mjs │ │ │ │ │ │ ├── action-chip.d.ts │ │ │ │ │ │ ├── action-chip.mjs │ │ │ │ │ │ ├── action-sheet.d.ts │ │ │ │ │ │ ├── action-sheet.mjs │ │ │ │ │ │ ├── avatar-stack.d.ts │ │ │ │ │ │ ├── avatar-stack.mjs │ │ │ │ │ │ ├── avatar.d.ts │ │ │ │ │ │ ├── avatar.mjs │ │ │ │ │ │ ├── badge.d.ts │ │ │ │ │ │ ├── badge.mjs │ │ │ │ │ │ ├── bottom-navigation-global.d.ts │ │ │ │ │ │ ├── bottom-navigation-global.mjs │ │ │ │ │ │ ├── bottom-navigation-kr.d.ts │ │ │ │ │ │ ├── bottom-navigation-kr.mjs │ │ │ │ │ │ ├── bottom-sheet.d.ts │ │ │ │ │ │ ├── bottom-sheet.mjs │ │ │ │ │ │ ├── callout.d.ts │ │ │ │ │ │ ├── callout.mjs │ │ │ │ │ │ ├── checkbox.d.ts │ │ │ │ │ │ ├── checkbox.mjs │ │ │ │ │ │ ├── chip-tablist.d.ts │ │ │ │ │ │ ├── chip-tablist.mjs │ │ │ │ │ │ ├── control-chip.d.ts │ │ │ │ │ │ ├── control-chip.mjs │ │ │ │ │ │ ├── divider.d.ts │ │ │ │ │ │ ├── divider.mjs │ │ │ │ │ │ ├── error-state.d.ts │ │ │ │ │ │ ├── error-state.mjs │ │ │ │ │ │ ├── extended-action-sheet.d.ts │ │ │ │ │ │ ├── extended-action-sheet.mjs │ │ │ │ │ │ ├── extended-floating-action-button.d.ts │ │ │ │ │ │ ├── extended-floating-action-button.mjs │ │ │ │ │ │ ├── floating-action-button.d.ts │ │ │ │ │ │ ├── floating-action-button.mjs │ │ │ │ │ │ ├── help-bubble.d.ts │ │ │ │ │ │ ├── help-bubble.mjs │ │ │ │ │ │ ├── identity-placeholder.d.ts │ │ │ │ │ │ ├── identity-placeholder.mjs │ │ │ │ │ │ ├── index.d.ts │ │ │ │ │ │ ├── index.mjs │ │ │ │ │ │ ├── inline-banner.d.ts │ │ │ │ │ │ ├── inline-banner.mjs │ │ │ │ │ │ ├── main-tab-navigation-global.d.ts │ │ │ │ │ │ ├── main-tab-navigation-global.mjs │ │ │ │ │ │ ├── main-tab-navigation-kr.d.ts │ │ │ │ │ │ ├── main-tab-navigation-kr.mjs │ │ │ │ │ │ ├── manner-temp-badge.d.ts │ │ │ │ │ │ ├── manner-temp-badge.mjs │ │ │ │ │ │ ├── manner-temp-bar.d.ts │ │ │ │ │ │ ├── manner-temp-bar.mjs │ │ │ │ │ │ ├── manner-temp.d.ts │ │ │ │ │ │ ├── manner-temp.mjs │ │ │ │ │ │ ├── multiline-text-field.d.ts │ │ │ │ │ │ ├── multiline-text-field.mjs │ │ │ │ │ │ ├── progress-circle.d.ts │ │ │ │ │ │ ├── progress-circle.mjs │ │ │ │ │ │ ├── radio.d.ts │ │ │ │ │ │ ├── radio.mjs │ │ │ │ │ │ ├── range-slider.d.ts │ │ │ │ │ │ ├── range-slider.mjs │ │ │ │ │ │ ├── reaction-button.d.ts │ │ │ │ │ │ ├── reaction-button.mjs │ │ │ │ │ │ ├── segmented-control.d.ts │ │ │ │ │ │ ├── segmented-control.mjs │ │ │ │ │ │ ├── select-box.d.ts │ │ │ │ │ │ ├── select-box.mjs │ │ │ │ │ │ ├── skeleton.d.ts │ │ │ │ │ │ ├── skeleton.mjs │ │ │ │ │ │ ├── slider.d.ts │ │ │ │ │ │ ├── slider.mjs │ │ │ │ │ │ ├── snackbar.d.ts │ │ │ │ │ │ ├── snackbar.mjs │ │ │ │ │ │ ├── standard-navigation.d.ts │ │ │ │ │ │ ├── standard-navigation.mjs │ │ │ │ │ │ ├── switch.d.ts │ │ │ │ │ │ ├── switch.mjs │ │ │ │ │ │ ├── tablist.d.ts │ │ │ │ │ │ ├── tablist.mjs │ │ │ │ │ │ ├── template-bottom-fixed-bar.d.ts │ │ │ │ │ │ ├── template-bottom-fixed-bar.mjs │ │ │ │ │ │ ├── template-button-group.d.ts │ │ │ │ │ │ ├── template-button-group.mjs │ │ │ │ │ │ ├── template-chip-group.d.ts │ │ │ │ │ │ ├── template-chip-group.mjs │ │ │ │ │ │ ├── template-select-box-group.d.ts │ │ │ │ │ │ ├── template-select-box-group.mjs │ │ │ │ │ │ ├── template-top-navigation.d.ts │ │ │ │ │ │ ├── template-top-navigation.mjs │ │ │ │ │ │ ├── text-button.d.ts │ │ │ │ │ │ ├── text-button.mjs │ │ │ │ │ │ ├── text-field.d.ts │ │ │ │ │ │ ├── text-field.mjs │ │ │ │ │ │ ├── toggle-button.d.ts │ │ │ │ │ │ └── toggle-button.mjs │ │ │ │ ├── icons.ts │ │ │ │ ├── styles.ts │ │ │ │ ├── variable-collections.ts │ │ │ │ └── variables.ts │ │ │ ├── icon.interface.ts │ │ │ ├── icon.repository.ts │ │ │ ├── icon.service.ts │ │ │ ├── index.ts │ │ │ ├── style.interface.ts │ │ │ ├── style.repository.ts │ │ │ ├── style.service.ts │ │ │ ├── variable.interface.ts │ │ │ ├── variable.repository.ts │ │ │ └── variable.service.ts │ │ ├── index.ts │ │ ├── normalizer │ │ │ ├── from-plugin.ts │ │ │ ├── from-rest.ts │ │ │ ├── index.ts │ │ │ └── types.ts │ │ └── utils │ │ │ ├── common.ts │ │ │ ├── css.ts │ │ │ ├── figma-node.ts │ │ │ └── figma-variable.ts │ ├── test │ │ └── test.ts │ └── tsconfig.json ├── mcp │ ├── .gitignore │ ├── CHANGELOG.md │ ├── README.md │ ├── package.json │ ├── src │ │ ├── bin │ │ │ └── index.ts │ │ ├── config.ts │ │ ├── logger.ts │ │ ├── prompts.ts │ │ ├── responses.ts │ │ ├── tools.ts │ │ ├── types.ts │ │ └── websocket.ts │ └── tsconfig.json ├── migration-index │ ├── CHANGELOG.md │ ├── color.d.ts │ ├── color.mjs │ ├── iconography.d.ts │ ├── iconography.mjs │ ├── index.d.ts │ ├── index.mjs │ ├── package.json │ ├── types.d.ts │ ├── typography.d.ts │ └── typography.mjs ├── qvism-preset │ ├── .gitignore │ ├── README.md │ ├── package.json │ ├── src │ │ ├── global.ts │ │ ├── index.ts │ │ ├── keyframes.ts │ │ ├── recipes.ts │ │ ├── recipes │ │ │ ├── action-button.ts │ │ │ ├── action-chip.ts │ │ │ ├── action-sheet-item.ts │ │ │ ├── action-sheet.ts │ │ │ ├── avatar-stack.ts │ │ │ ├── avatar.ts │ │ │ ├── badge.ts │ │ │ ├── bottom-sheet.ts │ │ │ ├── callout.ts │ │ │ ├── checkbox.ts │ │ │ ├── chip-tabs.ts │ │ │ ├── contextual-floating-button.ts │ │ │ ├── control-chip.ts │ │ │ ├── dialog.ts │ │ │ ├── extended-action-sheet-item.ts │ │ │ ├── extended-action-sheet.ts │ │ │ ├── extended-fab.ts │ │ │ ├── fab.ts │ │ │ ├── floating-action-button.ts │ │ │ ├── help-bubble.ts │ │ │ ├── identity-placeholder.ts │ │ │ ├── inline-banner.ts │ │ │ ├── link-content.ts │ │ │ ├── manner-temp-badge.ts │ │ │ ├── manner-temp.ts │ │ │ ├── notification-badge.ts │ │ │ ├── progress-circle.ts │ │ │ ├── pull-to-refresh.ts │ │ │ ├── radio.ts │ │ │ ├── reaction-button.ts │ │ │ ├── segmented-control.ts │ │ │ ├── select-box.ts │ │ │ ├── skeleton.ts │ │ │ ├── snackbar.ts │ │ │ ├── switch.ts │ │ │ ├── tabs.ts │ │ │ ├── text-field.ts │ │ │ ├── text.ts │ │ │ └── toggle-button.ts │ │ ├── stackflow │ │ │ ├── animation.ts │ │ │ ├── app-bar.ts │ │ │ ├── app-screen.ts │ │ │ └── pseudo.ts │ │ ├── token.css │ │ ├── tokens.ts │ │ ├── utils │ │ │ ├── animation.ts │ │ │ ├── count.ts │ │ │ ├── define.ts │ │ │ ├── icon.ts │ │ │ └── pseudo.ts │ │ └── vars │ │ │ ├── color │ │ │ ├── bg.d.ts │ │ │ ├── bg.mjs │ │ │ ├── fg.d.ts │ │ │ ├── fg.mjs │ │ │ ├── index.d.ts │ │ │ ├── index.mjs │ │ │ ├── manner-temp │ │ │ │ ├── index.d.ts │ │ │ │ ├── index.mjs │ │ │ │ ├── l1.d.ts │ │ │ │ ├── l1.mjs │ │ │ │ ├── l2.d.ts │ │ │ │ ├── l2.mjs │ │ │ │ ├── l3.d.ts │ │ │ │ ├── l3.mjs │ │ │ │ ├── l4.d.ts │ │ │ │ ├── l4.mjs │ │ │ │ ├── l5.d.ts │ │ │ │ ├── l5.mjs │ │ │ │ ├── l6.d.ts │ │ │ │ └── l6.mjs │ │ │ ├── palette.d.ts │ │ │ ├── palette.mjs │ │ │ ├── stroke.d.ts │ │ │ └── stroke.mjs │ │ │ ├── component │ │ │ ├── action-button.d.ts │ │ │ ├── action-button.mjs │ │ │ ├── action-chip.d.ts │ │ │ ├── action-chip.mjs │ │ │ ├── action-sheet-close-button.d.ts │ │ │ ├── action-sheet-close-button.mjs │ │ │ ├── action-sheet-item.d.ts │ │ │ ├── action-sheet-item.mjs │ │ │ ├── action-sheet.d.ts │ │ │ ├── action-sheet.mjs │ │ │ ├── avatar-stack.d.ts │ │ │ ├── avatar-stack.mjs │ │ │ ├── avatar.d.ts │ │ │ ├── avatar.mjs │ │ │ ├── badge.d.ts │ │ │ ├── badge.mjs │ │ │ ├── bottom-sheet-close-button.d.ts │ │ │ ├── bottom-sheet-close-button.mjs │ │ │ ├── bottom-sheet.d.ts │ │ │ ├── bottom-sheet.mjs │ │ │ ├── callout.d.ts │ │ │ ├── callout.mjs │ │ │ ├── checkbox.d.ts │ │ │ ├── checkbox.mjs │ │ │ ├── chip-tab.d.ts │ │ │ ├── chip-tab.mjs │ │ │ ├── chip-tablist.d.ts │ │ │ ├── chip-tablist.mjs │ │ │ ├── contextual-floating-button.d.ts │ │ │ ├── contextual-floating-button.mjs │ │ │ ├── control-chip.d.ts │ │ │ ├── control-chip.mjs │ │ │ ├── dialog.d.ts │ │ │ ├── dialog.mjs │ │ │ ├── divider.d.ts │ │ │ ├── divider.mjs │ │ │ ├── extended-action-sheet-close-button.d.ts │ │ │ ├── extended-action-sheet-close-button.mjs │ │ │ ├── extended-action-sheet-item.d.ts │ │ │ ├── extended-action-sheet-item.mjs │ │ │ ├── extended-action-sheet.d.ts │ │ │ ├── extended-action-sheet.mjs │ │ │ ├── extended-fab.d.ts │ │ │ ├── extended-fab.mjs │ │ │ ├── fab.d.ts │ │ │ ├── fab.mjs │ │ │ ├── floating-action-button.d.ts │ │ │ ├── floating-action-button.mjs │ │ │ ├── help-bubble.d.ts │ │ │ ├── help-bubble.mjs │ │ │ ├── identity-placeholder.d.ts │ │ │ ├── identity-placeholder.mjs │ │ │ ├── index.d.ts │ │ │ ├── index.mjs │ │ │ ├── inline-banner.d.ts │ │ │ ├── inline-banner.mjs │ │ │ ├── link-content.d.ts │ │ │ ├── link-content.mjs │ │ │ ├── manner-temp-badge.d.ts │ │ │ ├── manner-temp-badge.mjs │ │ │ ├── manner-temp.d.ts │ │ │ ├── manner-temp.mjs │ │ │ ├── notification-badge.d.ts │ │ │ ├── notification-badge.mjs │ │ │ ├── progress-circle.d.ts │ │ │ ├── progress-circle.mjs │ │ │ ├── radio.d.ts │ │ │ ├── radio.mjs │ │ │ ├── reaction-button.d.ts │ │ │ ├── reaction-button.mjs │ │ │ ├── segmented-control-item.d.ts │ │ │ ├── segmented-control-item.mjs │ │ │ ├── segmented-control.d.ts │ │ │ ├── segmented-control.mjs │ │ │ ├── select-box.d.ts │ │ │ ├── select-box.mjs │ │ │ ├── skeleton.d.ts │ │ │ ├── skeleton.mjs │ │ │ ├── snackbar.d.ts │ │ │ ├── snackbar.mjs │ │ │ ├── switch.d.ts │ │ │ ├── switch.mjs │ │ │ ├── tab.d.ts │ │ │ ├── tab.mjs │ │ │ ├── tablist.d.ts │ │ │ ├── tablist.mjs │ │ │ ├── text-button.d.ts │ │ │ ├── text-button.mjs │ │ │ ├── text-field.d.ts │ │ │ ├── text-field.mjs │ │ │ ├── toggle-button.d.ts │ │ │ ├── toggle-button.mjs │ │ │ ├── top-navigation.d.ts │ │ │ ├── top-navigation.mjs │ │ │ ├── typography.d.ts │ │ │ └── typography.mjs │ │ │ ├── dimension │ │ │ ├── index.d.ts │ │ │ ├── index.mjs │ │ │ ├── spacing-x.d.ts │ │ │ ├── spacing-x.mjs │ │ │ ├── spacing-y.d.ts │ │ │ └── spacing-y.mjs │ │ │ ├── duration.d.ts │ │ │ ├── duration.mjs │ │ │ ├── font-size.d.ts │ │ │ ├── font-size.mjs │ │ │ ├── font-weight.d.ts │ │ │ ├── font-weight.mjs │ │ │ ├── gradient.d.ts │ │ │ ├── gradient.mjs │ │ │ ├── index.d.ts │ │ │ ├── index.mjs │ │ │ ├── line-height.d.ts │ │ │ ├── line-height.mjs │ │ │ ├── radius.d.ts │ │ │ ├── radius.mjs │ │ │ ├── timing-function.d.ts │ │ │ ├── timing-function.mjs │ │ │ ├── vars.d.ts │ │ │ └── vars.mjs │ ├── tsconfig.json │ └── write-tokens.mjs ├── react-headless │ ├── README.md │ ├── avatar │ │ ├── .gitignore │ │ ├── CHANGELOG.md │ │ ├── package.json │ │ ├── src │ │ │ ├── Avatar.namespace.ts │ │ │ ├── Avatar.tsx │ │ │ ├── index.ts │ │ │ ├── useAvatar.test.tsx │ │ │ ├── useAvatar.ts │ │ │ └── useAvatarContext.tsx │ │ └── tsconfig.json │ ├── checkbox │ │ ├── .gitignore │ │ ├── CHANGELOG.md │ │ ├── package.json │ │ ├── src │ │ │ ├── Checkbox.namespace.ts │ │ │ ├── Checkbox.tsx │ │ │ ├── index.ts │ │ │ ├── useCheckbox.test.tsx │ │ │ ├── useCheckbox.ts │ │ │ └── useCheckboxContext.tsx │ │ └── tsconfig.json │ ├── dialog │ │ ├── .gitignore │ │ ├── CHANGELOG.md │ │ ├── package.json │ │ ├── src │ │ │ ├── Dialog.namespace.ts │ │ │ ├── Dialog.tsx │ │ │ ├── index.ts │ │ │ ├── private │ │ │ │ ├── Presence.tsx │ │ │ │ ├── usePresence.tsx │ │ │ │ └── usePresenceContext.tsx │ │ │ ├── useDialog.ts │ │ │ └── useDialogContext.tsx │ │ └── tsconfig.json │ ├── popover │ │ ├── .gitignore │ │ ├── CHANGELOG.md │ │ ├── package.json │ │ ├── src │ │ │ ├── Popover.namespace.ts │ │ │ ├── Popover.tsx │ │ │ ├── floating.ts │ │ │ ├── index.ts │ │ │ ├── usePopover.ts │ │ │ └── usePopoverContext.tsx │ │ └── tsconfig.json │ ├── portal │ │ ├── .gitignore │ │ ├── CHANGELOG.md │ │ ├── package.json │ │ ├── src │ │ │ ├── Portal.tsx │ │ │ └── index.ts │ │ └── tsconfig.json │ ├── primitive │ │ ├── .gitignore │ │ ├── CHANGELOG.md │ │ ├── package.json │ │ ├── src │ │ │ └── index.tsx │ │ └── tsconfig.json │ ├── progress │ │ ├── CHANGELOG.md │ │ ├── package.json │ │ ├── src │ │ │ ├── ProgressCircle.namespace.ts │ │ │ ├── ProgressCircle.tsx │ │ │ ├── index.ts │ │ │ ├── useProgress.ts │ │ │ └── useProgressCircleContext.tsx │ │ └── tsconfig.json │ ├── pull-to-refresh │ │ ├── CHANGELOG.md │ │ ├── package.json │ │ ├── src │ │ │ ├── PullToRefresh.namespace.ts │ │ │ ├── PullToRefresh.tsx │ │ │ ├── index.ts │ │ │ ├── normalize-event.ts │ │ │ ├── store.ts │ │ │ ├── usePullToRefresh.ts │ │ │ └── usePullToRefreshContext.tsx │ │ └── tsconfig.json │ ├── radio-group │ │ ├── .gitignore │ │ ├── CHANGELOG.md │ │ ├── package.json │ │ ├── src │ │ │ ├── RadioGroup.namespace.ts │ │ │ ├── RadioGroup.tsx │ │ │ ├── index.ts │ │ │ ├── useRadioGroup.test.tsx │ │ │ ├── useRadioGroup.ts │ │ │ ├── useRadioGroupContext.tsx │ │ │ └── useRadioGroupItemContext.tsx │ │ └── tsconfig.json │ ├── segmented-control │ │ ├── .gitignore │ │ ├── CHANGELOG.md │ │ ├── package.json │ │ ├── src │ │ │ ├── SegmentedControl.namespace.ts │ │ │ ├── SegmentedControl.tsx │ │ │ ├── dom.ts │ │ │ ├── index.ts │ │ │ ├── useSegmentedControl.test.tsx │ │ │ ├── useSegmentedControl.ts │ │ │ ├── useSegmentedControlContext.tsx │ │ │ └── useSegmentedControlItemContext.tsx │ │ └── tsconfig.json │ ├── snackbar │ │ ├── .gitignore │ │ ├── CHANGELOG.md │ │ ├── package.json │ │ ├── src │ │ │ ├── Snackbar.namespace.ts │ │ │ ├── Snackbar.tsx │ │ │ ├── index.ts │ │ │ ├── useSafeOffset.tsx │ │ │ ├── useSnackbar.ts │ │ │ └── useSnackbarContext.tsx │ │ └── tsconfig.json │ ├── switch │ │ ├── CHANGELOG.md │ │ ├── package.json │ │ ├── src │ │ │ ├── Switch.namespace.ts │ │ │ ├── Switch.tsx │ │ │ ├── index.ts │ │ │ ├── useSwitch.test.tsx │ │ │ ├── useSwitch.ts │ │ │ └── useSwitchContext.tsx │ │ └── tsconfig.json │ ├── tabs │ │ ├── CHANGELOG.md │ │ ├── package.json │ │ ├── src │ │ │ ├── Tabs.namespace.ts │ │ │ ├── Tabs.tsx │ │ │ ├── dom.ts │ │ │ ├── index.ts │ │ │ ├── private │ │ │ │ ├── useRenderStrategy.ts │ │ │ │ └── useRenderStrategyContext.tsx │ │ │ ├── useTabs.test.tsx │ │ │ ├── useTabs.ts │ │ │ ├── useTabsCarousel.ts │ │ │ ├── useTabsCarouselContext.tsx │ │ │ ├── useTabsContext.tsx │ │ │ ├── useTabsTriggerContext.tsx │ │ │ └── utils.ts │ │ └── tsconfig.json │ ├── text-field │ │ ├── CHANGELOG.md │ │ ├── package.json │ │ ├── src │ │ │ ├── TextField.namespace.ts │ │ │ ├── TextField.tsx │ │ │ ├── dom.ts │ │ │ ├── index.ts │ │ │ ├── memoize.ts │ │ │ ├── useTextField.test.tsx │ │ │ ├── useTextField.ts │ │ │ └── useTextFieldContext.tsx │ │ └── tsconfig.json │ └── toggle │ │ ├── CHANGELOG.md │ │ ├── package.json │ │ ├── src │ │ ├── Toggle.namespace.ts │ │ ├── Toggle.tsx │ │ ├── index.ts │ │ ├── useToggle.ts │ │ └── useToggleContext.tsx │ │ └── tsconfig.json ├── react │ ├── CHANGELOG.md │ ├── README.md │ ├── package.json │ ├── src │ │ ├── components │ │ │ ├── ActionButton │ │ │ │ ├── ActionButton.tsx │ │ │ │ └── index.ts │ │ │ ├── ActionChip │ │ │ │ ├── ActionChip.tsx │ │ │ │ └── index.ts │ │ │ ├── ActionSheet │ │ │ │ ├── ActionSheet.namespace.ts │ │ │ │ ├── ActionSheet.tsx │ │ │ │ └── index.ts │ │ │ ├── Avatar │ │ │ │ ├── Avatar.namespace.ts │ │ │ │ ├── Avatar.tsx │ │ │ │ └── index.ts │ │ │ ├── Badge │ │ │ │ ├── Badge.tsx │ │ │ │ └── index.ts │ │ │ ├── BottomSheet │ │ │ │ ├── BottomSheet.namespace.ts │ │ │ │ ├── BottomSheet.tsx │ │ │ │ └── index.ts │ │ │ ├── Box │ │ │ │ ├── Box.tsx │ │ │ │ └── index.ts │ │ │ ├── Callout │ │ │ │ ├── Callout.namespace.ts │ │ │ │ ├── Callout.tsx │ │ │ │ └── index.ts │ │ │ ├── Celcius │ │ │ │ ├── Celcius.tsx │ │ │ │ └── index.ts │ │ │ ├── Checkbox │ │ │ │ ├── Checkbox.namespace.ts │ │ │ │ ├── Checkbox.tsx │ │ │ │ └── index.ts │ │ │ ├── ChipTabs │ │ │ │ ├── ChipTabs.namespace.ts │ │ │ │ ├── ChipTabs.tsx │ │ │ │ └── index.ts │ │ │ ├── Columns │ │ │ │ ├── Columns.tsx │ │ │ │ └── index.ts │ │ │ ├── ConsistentWidth │ │ │ │ ├── ConsistentWidth.tsx │ │ │ │ └── index.ts │ │ │ ├── ContextualFloatingButton │ │ │ │ ├── ContextualFloatingButton.tsx │ │ │ │ └── index.ts │ │ │ ├── ControlChip │ │ │ │ ├── ControlChip.tsx │ │ │ │ └── index.ts │ │ │ ├── Count │ │ │ │ ├── Count.tsx │ │ │ │ └── index.ts │ │ │ ├── Dialog │ │ │ │ ├── Dialog.namespace.ts │ │ │ │ ├── Dialog.tsx │ │ │ │ └── index.ts │ │ │ ├── Divider │ │ │ │ ├── Divider.tsx │ │ │ │ └── index.ts │ │ │ ├── ExtendedActionSheet │ │ │ │ ├── ExtendedActionSheet.namespace.ts │ │ │ │ ├── ExtendedActionSheet.tsx │ │ │ │ └── index.ts │ │ │ ├── ExtendedFab │ │ │ │ ├── ExtendedFab.tsx │ │ │ │ └── index.ts │ │ │ ├── Fab │ │ │ │ ├── Fab.tsx │ │ │ │ └── index.ts │ │ │ ├── Flex │ │ │ │ ├── Flex.tsx │ │ │ │ └── index.ts │ │ │ ├── Float │ │ │ │ ├── Float.tsx │ │ │ │ └── index.ts │ │ │ ├── FloatingActionButton │ │ │ │ ├── FloatingActionButton.namespace.tsx │ │ │ │ ├── FloatingActionButton.tsx │ │ │ │ └── index.ts │ │ │ ├── HelpBubble │ │ │ │ ├── HelpBubble.namespace.ts │ │ │ │ ├── HelpBubble.tsx │ │ │ │ └── index.ts │ │ │ ├── Icon │ │ │ │ ├── Icon.tsx │ │ │ │ └── index.ts │ │ │ ├── IdentityPlaceholder │ │ │ │ ├── IdentityPlaceholder.namespace.ts │ │ │ │ ├── IdentityPlaceholder.tsx │ │ │ │ └── index.ts │ │ │ ├── Inline │ │ │ │ ├── Inline.tsx │ │ │ │ └── index.ts │ │ │ ├── InlineBanner │ │ │ │ ├── InlineBanner.namespace.ts │ │ │ │ ├── InlineBanner.tsx │ │ │ │ └── index.ts │ │ │ ├── LinkContent │ │ │ │ ├── LinkContent.tsx │ │ │ │ └── index.ts │ │ │ ├── LoadingIndicator │ │ │ │ ├── LoadingIndicator.tsx │ │ │ │ ├── index.ts │ │ │ │ └── usePendingButton.tsx │ │ │ ├── MannerTemp │ │ │ │ ├── MannerTemp.tsx │ │ │ │ ├── MannerTempEmote.tsx │ │ │ │ └── index.ts │ │ │ ├── MannerTempBadge │ │ │ │ ├── MannerTempBadge.tsx │ │ │ │ └── index.ts │ │ │ ├── NotificationBadge │ │ │ │ ├── NotificationBadge.tsx │ │ │ │ └── index.ts │ │ │ ├── Portal │ │ │ │ └── index.ts │ │ │ ├── ProgressCircle │ │ │ │ ├── ProgressCircle.namespace.ts │ │ │ │ ├── ProgressCircle.tsx │ │ │ │ └── index.ts │ │ │ ├── PullToRefresh │ │ │ │ ├── PullToRefresh.namespace.ts │ │ │ │ ├── PullToRefresh.tsx │ │ │ │ └── index.ts │ │ │ ├── ReactionButton │ │ │ │ ├── ReactionButton.tsx │ │ │ │ └── index.ts │ │ │ ├── ResponsivePair │ │ │ │ ├── ResponsivePair.tsx │ │ │ │ └── index.ts │ │ │ ├── SegmentedControl │ │ │ │ ├── SegmentedControl.namespace.ts │ │ │ │ ├── SegmentedControl.tsx │ │ │ │ └── index.ts │ │ │ ├── SelectBox │ │ │ │ ├── CheckSelectBox.namespace.ts │ │ │ │ ├── CheckSelectBox.tsx │ │ │ │ ├── RadioSelectBox.namespace.ts │ │ │ │ ├── RadioSelectBox.tsx │ │ │ │ └── index.ts │ │ │ ├── Skeleton │ │ │ │ ├── Skeleton.tsx │ │ │ │ └── index.ts │ │ │ ├── Snackbar │ │ │ │ ├── Snackbar.namespace.ts │ │ │ │ ├── Snackbar.tsx │ │ │ │ ├── index.ts │ │ │ │ └── useSnackbarAdapter.ts │ │ │ ├── Stack │ │ │ │ ├── Stack.tsx │ │ │ │ └── index.ts │ │ │ ├── Switch │ │ │ │ ├── Switch.namespace.ts │ │ │ │ ├── Switch.tsx │ │ │ │ └── index.ts │ │ │ ├── Tabs │ │ │ │ ├── Tabs.namespace.ts │ │ │ │ ├── Tabs.tsx │ │ │ │ └── index.ts │ │ │ ├── Text │ │ │ │ ├── Text.tsx │ │ │ │ └── index.ts │ │ │ ├── TextField │ │ │ │ ├── TextField.namespace.ts │ │ │ │ ├── TextField.tsx │ │ │ │ └── index.ts │ │ │ ├── ToggleButton │ │ │ │ ├── ToggleButton.tsx │ │ │ │ └── index.ts │ │ │ ├── VisuallyHidden │ │ │ │ ├── VisuallyHidden.tsx │ │ │ │ └── index.ts │ │ │ ├── index.ts │ │ │ └── private │ │ │ │ ├── Icon.tsx │ │ │ │ └── useDismissible.tsx │ │ ├── index.ts │ │ ├── primitive.ts │ │ ├── utils │ │ │ ├── createRecipeContext.tsx │ │ │ ├── createSlotRecipeContext.tsx │ │ │ ├── createWithStateProps.tsx │ │ │ └── styled.tsx │ │ └── vars.ts │ ├── tsconfig.json │ └── vite.config.mts ├── rootage │ ├── README.md │ ├── collections.yaml │ ├── color.yaml │ ├── components │ │ ├── action-button.yaml │ │ ├── action-chip.yaml │ │ ├── action-sheet-close-button.yaml │ │ ├── action-sheet-item.yaml │ │ ├── action-sheet.yaml │ │ ├── avatar-stack.yaml │ │ ├── avatar.yaml │ │ ├── badge.yaml │ │ ├── bottom-sheet-close-button.yaml │ │ ├── bottom-sheet.yaml │ │ ├── callout.yaml │ │ ├── checkbox.yaml │ │ ├── chip-tab.yaml │ │ ├── chip-tablist.yaml │ │ ├── contextual-floating-button.yaml │ │ ├── control-chip.yaml │ │ ├── dialog.yaml │ │ ├── divider.yaml │ │ ├── extended-action-sheet-close-button.yaml │ │ ├── extended-action-sheet-item.yaml │ │ ├── extended-action-sheet.yaml │ │ ├── extended-fab.yaml │ │ ├── fab.yaml │ │ ├── floating-action-button.yaml │ │ ├── help-bubble.yaml │ │ ├── identity-placeholder.yaml │ │ ├── inline-banner.yaml │ │ ├── link-content.yaml │ │ ├── manner-temp-badge.yaml │ │ ├── manner-temp.yaml │ │ ├── notification-badge.yaml │ │ ├── progress-circle.yaml │ │ ├── radio.yaml │ │ ├── reaction-button.yaml │ │ ├── schema.json │ │ ├── segmented-control-item.yaml │ │ ├── segmented-control.yaml │ │ ├── select-box.yaml │ │ ├── skeleton.yaml │ │ ├── snackbar.yaml │ │ ├── switch.yaml │ │ ├── tab.yaml │ │ ├── tablist.yaml │ │ ├── text-button.yaml │ │ ├── text-field.yaml │ │ ├── toggle-button.yaml │ │ ├── top-navigation.yaml │ │ └── typography.yaml │ ├── dimension.yaml │ ├── duration.yaml │ ├── font-size.yaml │ ├── font-weight.yaml │ ├── gradient.yaml │ ├── line-height.yaml │ ├── package.json │ ├── radius.yaml │ └── timing-function.yaml ├── rsbuild-plugin │ ├── CHANGELOG.md │ ├── README.md │ ├── package.json │ ├── src │ │ └── index.ts │ └── tsconfig.json ├── stackflow │ ├── .gitignore │ ├── CHANGELOG.md │ ├── package.json │ ├── src │ │ ├── components │ │ │ ├── AppBar │ │ │ │ ├── AppBar.namespace.ts │ │ │ │ ├── AppBar.tsx │ │ │ │ └── index.ts │ │ │ ├── AppScreen │ │ │ │ ├── AppScreen.namespace.ts │ │ │ │ ├── AppScreen.tsx │ │ │ │ └── index.ts │ │ │ └── index.ts │ │ ├── index.ts │ │ ├── plugin.tsx │ │ ├── primitive │ │ │ ├── AppBar │ │ │ │ ├── AppBar.namespace.ts │ │ │ │ ├── AppBar.tsx │ │ │ │ ├── index.ts │ │ │ │ ├── useAppBar.tsx │ │ │ │ └── useAppBarContext.ts │ │ │ ├── AppScreen │ │ │ │ ├── AppScreen.namespace.ts │ │ │ │ ├── AppScreen.tsx │ │ │ │ ├── index.ts │ │ │ │ ├── useAppScreen.tsx │ │ │ │ └── useAppScreenContext.ts │ │ │ ├── GlobalInteraction │ │ │ │ ├── GlobalInteraction.tsx │ │ │ │ ├── index.ts │ │ │ │ ├── useGlobalInteraction.ts │ │ │ │ ├── useGlobalInteractionContext.tsx │ │ │ │ └── useSwipeBack.ts │ │ │ ├── index.ts │ │ │ └── private │ │ │ │ ├── useElementOffset.ts │ │ │ │ └── useTopActivity.ts │ │ └── utils │ │ │ ├── createStyleContext.tsx │ │ │ └── createWithStateProps.tsx │ ├── tsconfig.json │ └── vite.config.mts ├── stylesheet │ ├── CHANGELOG.md │ ├── README.md │ ├── global.css │ └── package.json ├── tailwind3-plugin │ ├── .gitignore │ ├── CHANGELOG.md │ ├── README.md │ ├── bunchee.config.js │ ├── package.json │ ├── packages │ │ └── tailwind-plugin │ │ │ └── src │ │ │ └── index.ts │ │ │ └── index.ts │ ├── src │ │ └── index.ts │ └── tsconfig.json ├── tailwind4-theme │ ├── CHANGELOG.md │ ├── README.md │ ├── index.css │ └── package.json ├── utils │ └── dom-utils │ │ ├── .gitignore │ │ ├── CHANGELOG.md │ │ ├── README.md │ │ ├── package.json │ │ ├── src │ │ ├── dom.ts │ │ ├── index.ts │ │ ├── mergeProps.ts │ │ └── visuallyHidden.ts │ │ └── tsconfig.json ├── vite-plugin │ ├── CHANGELOG.md │ ├── README.md │ ├── package.json │ ├── src │ │ └── index.ts │ └── tsconfig.json └── webpack-plugin │ ├── CHANGELOG.md │ ├── README.md │ ├── package.json │ ├── src │ └── index.ts │ └── tsconfig.json ├── renovate.json ├── scripts ├── figma-to-rootage.ts └── generate-codemod-docs.ts ├── tools ├── figma-checklist-widget │ ├── .gitignore │ ├── manifest.json │ ├── package.json │ └── widget-src │ │ ├── code.tsx │ │ └── tsconfig.json ├── figma-codegen │ ├── .gitignore │ ├── README.md │ ├── build-figma-plugin.main.js │ ├── package.json │ ├── src │ │ └── main.ts │ └── tsconfig.json ├── figma-contrast-checker │ ├── .gitignore │ ├── build.mjs │ ├── dev.mjs │ ├── manifest.json │ ├── package.json │ └── widget-src │ │ ├── apca.d.ts │ │ ├── code.tsx │ │ ├── logic.ts │ │ └── tsconfig.json ├── figma-expose-variables │ ├── .gitignore │ ├── README.md │ ├── package.json │ ├── src │ │ ├── constants.mts │ │ ├── create-variable-tables.mts │ │ ├── draw-layer.mts │ │ ├── draw-variable-tables.mts │ │ ├── get-swatches.mts │ │ ├── main.mts │ │ ├── manifest.json │ │ └── utils.mts │ └── tsconfig.json ├── figma-mcp │ ├── .gitignore │ ├── README.md │ ├── index.html │ ├── manifest.json │ ├── package.json │ ├── seed-design.json │ ├── src │ │ ├── design-system │ │ │ └── ui │ │ │ │ ├── action-button.tsx │ │ │ │ ├── callout.tsx │ │ │ │ ├── inline-banner.tsx │ │ │ │ ├── loading-indicator.tsx │ │ │ │ ├── progress-circle.tsx │ │ │ │ ├── tabs.tsx │ │ │ │ └── text-field.tsx │ │ ├── main │ │ │ ├── command-handler.ts │ │ │ ├── commands │ │ │ │ ├── annotation.ts │ │ │ │ ├── clone.ts │ │ │ │ ├── document-info.ts │ │ │ │ ├── export.ts │ │ │ │ ├── index.ts │ │ │ │ ├── node-info.ts │ │ │ │ └── node-modification.ts │ │ │ ├── index.ts │ │ │ └── utils │ │ │ │ ├── base64.ts │ │ │ │ ├── common.ts │ │ │ │ └── id.ts │ │ └── ui │ │ │ ├── App.tsx │ │ │ ├── main.tsx │ │ │ ├── styles.css │ │ │ └── vite-env.d.ts │ ├── tsconfig.json │ ├── tsconfig.main.json │ ├── tsconfig.ui.json │ ├── vite.main.config.ts │ └── vite.ui.config.ts ├── figma-spec-widget │ ├── .gitignore │ ├── build.mjs │ ├── dev.mjs │ ├── manifest.json │ ├── package.json │ └── widget-src │ │ ├── code.tsx │ │ ├── stringify.ts │ │ └── tsconfig.json └── figma-v3-migration │ ├── .env.example │ ├── .gitignore │ ├── README.md │ ├── figma-extractor.config.ts │ ├── index.html │ ├── manifest.json │ ├── package.json │ ├── seed-design.json │ ├── src │ ├── main │ │ ├── data │ │ │ ├── __generated__ │ │ │ │ ├── v2-compat-component-sets │ │ │ │ │ ├── action-button-group.d.ts │ │ │ │ │ ├── action-button-group.mjs │ │ │ │ │ ├── action-sheet-v2-beta.d.ts │ │ │ │ │ ├── action-sheet-v2-beta.mjs │ │ │ │ │ ├── action-sheet-v2.d.ts │ │ │ │ │ ├── action-sheet-v2.mjs │ │ │ │ │ ├── actionable-callout-v2.d.ts │ │ │ │ │ ├── actionable-callout-v2.mjs │ │ │ │ │ ├── actionable-inline-alert-v2.d.ts │ │ │ │ │ ├── actionable-inline-alert-v2.mjs │ │ │ │ │ ├── alert-dialog-v2.d.ts │ │ │ │ │ ├── alert-dialog-v2.mjs │ │ │ │ │ ├── avatar-empty.d.ts │ │ │ │ │ ├── avatar-empty.mjs │ │ │ │ │ ├── avatar-group-v2.d.ts │ │ │ │ │ ├── avatar-group-v2.mjs │ │ │ │ │ ├── avatar-v2.d.ts │ │ │ │ │ ├── avatar-v2.mjs │ │ │ │ │ ├── badge-bottom.d.ts │ │ │ │ │ ├── badge-bottom.mjs │ │ │ │ │ ├── badge-icon.d.ts │ │ │ │ │ ├── badge-icon.mjs │ │ │ │ │ ├── badge-new.d.ts │ │ │ │ │ ├── badge-new.mjs │ │ │ │ │ ├── badge-number.d.ts │ │ │ │ │ ├── badge-number.mjs │ │ │ │ │ ├── badge-pill.d.ts │ │ │ │ │ ├── badge-pill.mjs │ │ │ │ │ ├── badge-square.d.ts │ │ │ │ │ ├── badge-square.mjs │ │ │ │ │ ├── bottom-sheet-v2.d.ts │ │ │ │ │ ├── bottom-sheet-v2.mjs │ │ │ │ │ ├── box-button-v2.d.ts │ │ │ │ │ ├── box-button-v2.mjs │ │ │ │ │ ├── box-toggle-button-v2.d.ts │ │ │ │ │ ├── box-toggle-button-v2.mjs │ │ │ │ │ ├── button-favorite.d.ts │ │ │ │ │ ├── button-favorite.mjs │ │ │ │ │ ├── callout-v2.d.ts │ │ │ │ │ ├── callout-v2.mjs │ │ │ │ │ ├── capsule-toggle-button-v2.d.ts │ │ │ │ │ ├── capsule-toggle-button-v2.mjs │ │ │ │ │ ├── checkbox-circle-v2.d.ts │ │ │ │ │ ├── checkbox-circle-v2.mjs │ │ │ │ │ ├── checkbox-ghost-v2.d.ts │ │ │ │ │ ├── checkbox-ghost-v2.mjs │ │ │ │ │ ├── checkbox-square-v2.d.ts │ │ │ │ │ ├── checkbox-square-v2.mjs │ │ │ │ │ ├── chip-button-v2.d.ts │ │ │ │ │ ├── chip-button-v2.mjs │ │ │ │ │ ├── chip-filter-v2.d.ts │ │ │ │ │ ├── chip-filter-v2.mjs │ │ │ │ │ ├── chip-radio-group-v2.d.ts │ │ │ │ │ ├── chip-radio-group-v2.mjs │ │ │ │ │ ├── chip-radio-v2.d.ts │ │ │ │ │ ├── chip-radio-v2.mjs │ │ │ │ │ ├── chip-toggle-button-v2.d.ts │ │ │ │ │ ├── chip-toggle-button-v2.mjs │ │ │ │ │ ├── creditcard-field.d.ts │ │ │ │ │ ├── creditcard-field.mjs │ │ │ │ │ ├── dismissable-callout-v2.d.ts │ │ │ │ │ ├── dismissable-callout-v2.mjs │ │ │ │ │ ├── dismissable-inline-alert-v2.d.ts │ │ │ │ │ ├── dismissable-inline-alert-v2.mjs │ │ │ │ │ ├── dropdown.d.ts │ │ │ │ │ ├── dropdown.mjs │ │ │ │ │ ├── extended-floating-action-button-v2.d.ts │ │ │ │ │ ├── extended-floating-action-button-v2.mjs │ │ │ │ │ ├── floating-action-button-v2.d.ts │ │ │ │ │ ├── floating-action-button-v2.mjs │ │ │ │ │ ├── help-bubble-v2.d.ts │ │ │ │ │ ├── help-bubble-v2.mjs │ │ │ │ │ ├── icon-button.d.ts │ │ │ │ │ ├── icon-button.mjs │ │ │ │ │ ├── idcard-field.d.ts │ │ │ │ │ ├── idcard-field.mjs │ │ │ │ │ ├── index.d.ts │ │ │ │ │ ├── index.mjs │ │ │ │ │ ├── indicator-page.d.ts │ │ │ │ │ ├── indicator-page.mjs │ │ │ │ │ ├── inline-alert-v2.d.ts │ │ │ │ │ ├── inline-alert-v2.mjs │ │ │ │ │ ├── item-avatar-badges.d.ts │ │ │ │ │ ├── item-avatar-badges.mjs │ │ │ │ │ ├── item-avatar-image.d.ts │ │ │ │ │ ├── item-avatar-image.mjs │ │ │ │ │ ├── item-control-box.d.ts │ │ │ │ │ ├── item-control-box.mjs │ │ │ │ │ ├── item-control-circle.d.ts │ │ │ │ │ ├── item-control-circle.mjs │ │ │ │ │ ├── item-control-ghost.d.ts │ │ │ │ │ ├── item-control-ghost.mjs │ │ │ │ │ ├── item-control-radio.d.ts │ │ │ │ │ ├── item-control-radio.mjs │ │ │ │ │ ├── item-menu-item-group.d.ts │ │ │ │ │ ├── item-menu-item-group.mjs │ │ │ │ │ ├── item-menu-item.d.ts │ │ │ │ │ ├── item-menu-item.mjs │ │ │ │ │ ├── item-menu.d.ts │ │ │ │ │ ├── item-menu.mjs │ │ │ │ │ ├── item-primary-menu-item.d.ts │ │ │ │ │ ├── item-primary-menu-item.mjs │ │ │ │ │ ├── item-tag.d.ts │ │ │ │ │ ├── item-tag.mjs │ │ │ │ │ ├── item-text-field-description.d.ts │ │ │ │ │ ├── item-text-field-description.mjs │ │ │ │ │ ├── list-basic.d.ts │ │ │ │ │ ├── list-basic.mjs │ │ │ │ │ ├── list-title.d.ts │ │ │ │ │ ├── list-title.mjs │ │ │ │ │ ├── menu-floating-action-button-v2.d.ts │ │ │ │ │ ├── menu-floating-action-button-v2.mjs │ │ │ │ │ ├── multiline-text-field-v2.d.ts │ │ │ │ │ ├── multiline-text-field-v2.mjs │ │ │ │ │ ├── navigation-bottom-global.d.ts │ │ │ │ │ ├── navigation-bottom-global.mjs │ │ │ │ │ ├── navigation-bottom.d.ts │ │ │ │ │ ├── navigation-bottom.mjs │ │ │ │ │ ├── navigation-outlink-top.d.ts │ │ │ │ │ ├── navigation-outlink-top.mjs │ │ │ │ │ ├── navigation-top.d.ts │ │ │ │ │ ├── navigation-top.mjs │ │ │ │ │ ├── phone-field.d.ts │ │ │ │ │ ├── phone-field.mjs │ │ │ │ │ ├── radio-v2.d.ts │ │ │ │ │ ├── radio-v2.mjs │ │ │ │ │ ├── range-slider-v2.d.ts │ │ │ │ │ ├── range-slider-v2.mjs │ │ │ │ │ ├── ratio-base.d.ts │ │ │ │ │ ├── ratio-base.mjs │ │ │ │ │ ├── reply-field.d.ts │ │ │ │ │ ├── reply-field.mjs │ │ │ │ │ ├── search-field.d.ts │ │ │ │ │ ├── search-field.mjs │ │ │ │ │ ├── section-header.d.ts │ │ │ │ │ ├── section-header.mjs │ │ │ │ │ ├── select-box-v2.d.ts │ │ │ │ │ ├── select-box-v2.mjs │ │ │ │ │ ├── slider-v2.d.ts │ │ │ │ │ ├── slider-v2.mjs │ │ │ │ │ ├── snackbar-v2.d.ts │ │ │ │ │ ├── snackbar-v2.mjs │ │ │ │ │ ├── spinner-v2.d.ts │ │ │ │ │ ├── spinner-v2.mjs │ │ │ │ │ ├── step-indicator-group.d.ts │ │ │ │ │ ├── step-indicator-group.mjs │ │ │ │ │ ├── step-indicator.d.ts │ │ │ │ │ ├── step-indicator.mjs │ │ │ │ │ ├── switch-v2.d.ts │ │ │ │ │ ├── switch-v2.mjs │ │ │ │ │ ├── tab-v2.d.ts │ │ │ │ │ ├── tab-v2.mjs │ │ │ │ │ ├── tabs-v2.d.ts │ │ │ │ │ ├── tabs-v2.mjs │ │ │ │ │ ├── tag-group.d.ts │ │ │ │ │ ├── tag-group.mjs │ │ │ │ │ ├── text-button-v2.d.ts │ │ │ │ │ ├── text-button-v2.mjs │ │ │ │ │ ├── text-field-outlined-v2.d.ts │ │ │ │ │ ├── text-field-outlined-v2.mjs │ │ │ │ │ ├── text-field-underlined-v2.d.ts │ │ │ │ │ ├── text-field-underlined-v2.mjs │ │ │ │ │ ├── thumbnail-ratio.d.ts │ │ │ │ │ ├── thumbnail-ratio.mjs │ │ │ │ │ ├── thumbnail.d.ts │ │ │ │ │ ├── thumbnail.mjs │ │ │ │ │ ├── toggle-tab.d.ts │ │ │ │ │ ├── toggle-tab.mjs │ │ │ │ │ ├── upload-image-wall.d.ts │ │ │ │ │ ├── upload-image-wall.mjs │ │ │ │ │ ├── upload-image.d.ts │ │ │ │ │ ├── upload-image.mjs │ │ │ │ │ ├── uploader.d.ts │ │ │ │ │ └── uploader.mjs │ │ │ │ ├── v2-component-sets │ │ │ │ │ ├── action-button-group.d.ts │ │ │ │ │ ├── action-button-group.mjs │ │ │ │ │ ├── action-button.d.ts │ │ │ │ │ ├── action-button.mjs │ │ │ │ │ ├── action-sheet-v2-beta.d.ts │ │ │ │ │ ├── action-sheet-v2-beta.mjs │ │ │ │ │ ├── action-sheet-v2.d.ts │ │ │ │ │ ├── action-sheet-v2.mjs │ │ │ │ │ ├── actionable-callout-v2.d.ts │ │ │ │ │ ├── actionable-callout-v2.mjs │ │ │ │ │ ├── actionable-inline-alert-v2.d.ts │ │ │ │ │ ├── actionable-inline-alert-v2.mjs │ │ │ │ │ ├── alert-dialog-v2.d.ts │ │ │ │ │ ├── alert-dialog-v2.mjs │ │ │ │ │ ├── avatar-empty.d.ts │ │ │ │ │ ├── avatar-empty.mjs │ │ │ │ │ ├── avatar-group-v2.d.ts │ │ │ │ │ ├── avatar-group-v2.mjs │ │ │ │ │ ├── avatar-v2.d.ts │ │ │ │ │ ├── avatar-v2.mjs │ │ │ │ │ ├── badge-bottom.d.ts │ │ │ │ │ ├── badge-bottom.mjs │ │ │ │ │ ├── badge-icon.d.ts │ │ │ │ │ ├── badge-icon.mjs │ │ │ │ │ ├── badge-new.d.ts │ │ │ │ │ ├── badge-new.mjs │ │ │ │ │ ├── badge-number.d.ts │ │ │ │ │ ├── badge-number.mjs │ │ │ │ │ ├── badge-pill.d.ts │ │ │ │ │ ├── badge-pill.mjs │ │ │ │ │ ├── badge-square.d.ts │ │ │ │ │ ├── badge-square.mjs │ │ │ │ │ ├── bottom-sheet-v2.d.ts │ │ │ │ │ ├── bottom-sheet-v2.mjs │ │ │ │ │ ├── box-button-v2.d.ts │ │ │ │ │ ├── box-button-v2.mjs │ │ │ │ │ ├── box-toggle-button-v2.d.ts │ │ │ │ │ ├── box-toggle-button-v2.mjs │ │ │ │ │ ├── button-favorite.d.ts │ │ │ │ │ ├── button-favorite.mjs │ │ │ │ │ ├── button-group-fixed.d.ts │ │ │ │ │ ├── button-group-fixed.mjs │ │ │ │ │ ├── button-group.d.ts │ │ │ │ │ ├── button-group.mjs │ │ │ │ │ ├── callout-v2.d.ts │ │ │ │ │ ├── callout-v2.mjs │ │ │ │ │ ├── capsule-toggle-button-v2.d.ts │ │ │ │ │ ├── capsule-toggle-button-v2.mjs │ │ │ │ │ ├── checkbox-circle-v2.d.ts │ │ │ │ │ ├── checkbox-circle-v2.mjs │ │ │ │ │ ├── checkbox-ghost-v2.d.ts │ │ │ │ │ ├── checkbox-ghost-v2.mjs │ │ │ │ │ ├── checkbox-square-v2.d.ts │ │ │ │ │ ├── checkbox-square-v2.mjs │ │ │ │ │ ├── chip-button-v2.d.ts │ │ │ │ │ ├── chip-button-v2.mjs │ │ │ │ │ ├── chip-filter-v2.d.ts │ │ │ │ │ ├── chip-filter-v2.mjs │ │ │ │ │ ├── chip-radio-group-v2.d.ts │ │ │ │ │ ├── chip-radio-group-v2.mjs │ │ │ │ │ ├── chip-radio-v2.d.ts │ │ │ │ │ ├── chip-radio-v2.mjs │ │ │ │ │ ├── chip-toggle-button-v2.d.ts │ │ │ │ │ ├── chip-toggle-button-v2.mjs │ │ │ │ │ ├── creditcard-field.d.ts │ │ │ │ │ ├── creditcard-field.mjs │ │ │ │ │ ├── dismissable-callout-v2.d.ts │ │ │ │ │ ├── dismissable-callout-v2.mjs │ │ │ │ │ ├── dismissable-inline-alert-v2.d.ts │ │ │ │ │ ├── dismissable-inline-alert-v2.mjs │ │ │ │ │ ├── dropdown.d.ts │ │ │ │ │ ├── dropdown.mjs │ │ │ │ │ ├── extended-floating-action-button-v2.d.ts │ │ │ │ │ ├── extended-floating-action-button-v2.mjs │ │ │ │ │ ├── floating-action-button-v2.d.ts │ │ │ │ │ ├── floating-action-button-v2.mjs │ │ │ │ │ ├── help-bubble-v2.d.ts │ │ │ │ │ ├── help-bubble-v2.mjs │ │ │ │ │ ├── icon-button.d.ts │ │ │ │ │ ├── icon-button.mjs │ │ │ │ │ ├── idcard-field.d.ts │ │ │ │ │ ├── idcard-field.mjs │ │ │ │ │ ├── index.d.ts │ │ │ │ │ ├── index.mjs │ │ │ │ │ ├── indicator-page.d.ts │ │ │ │ │ ├── indicator-page.mjs │ │ │ │ │ ├── inline-alert-v2.d.ts │ │ │ │ │ ├── inline-alert-v2.mjs │ │ │ │ │ ├── item-avatar-badges.d.ts │ │ │ │ │ ├── item-avatar-badges.mjs │ │ │ │ │ ├── item-avatar-image.d.ts │ │ │ │ │ ├── item-avatar-image.mjs │ │ │ │ │ ├── item-control-box.d.ts │ │ │ │ │ ├── item-control-box.mjs │ │ │ │ │ ├── item-control-circle.d.ts │ │ │ │ │ ├── item-control-circle.mjs │ │ │ │ │ ├── item-control-ghost.d.ts │ │ │ │ │ ├── item-control-ghost.mjs │ │ │ │ │ ├── item-control-radio.d.ts │ │ │ │ │ ├── item-control-radio.mjs │ │ │ │ │ ├── item-menu-item-group.d.ts │ │ │ │ │ ├── item-menu-item-group.mjs │ │ │ │ │ ├── item-menu-item.d.ts │ │ │ │ │ ├── item-menu-item.mjs │ │ │ │ │ ├── item-menu.d.ts │ │ │ │ │ ├── item-menu.mjs │ │ │ │ │ ├── item-primary-menu-item.d.ts │ │ │ │ │ ├── item-primary-menu-item.mjs │ │ │ │ │ ├── item-tag.d.ts │ │ │ │ │ ├── item-tag.mjs │ │ │ │ │ ├── item-text-field-description.d.ts │ │ │ │ │ ├── item-text-field-description.mjs │ │ │ │ │ ├── list-basic.d.ts │ │ │ │ │ ├── list-basic.mjs │ │ │ │ │ ├── list-title.d.ts │ │ │ │ │ ├── list-title.mjs │ │ │ │ │ ├── menu-floating-action-button-v2.d.ts │ │ │ │ │ ├── menu-floating-action-button-v2.mjs │ │ │ │ │ ├── multiline-text-field-v2.d.ts │ │ │ │ │ ├── multiline-text-field-v2.mjs │ │ │ │ │ ├── navigation-bottom-global.d.ts │ │ │ │ │ ├── navigation-bottom-global.mjs │ │ │ │ │ ├── navigation-bottom.d.ts │ │ │ │ │ ├── navigation-bottom.mjs │ │ │ │ │ ├── navigation-outlink-top.d.ts │ │ │ │ │ ├── navigation-outlink-top.mjs │ │ │ │ │ ├── navigation-top.d.ts │ │ │ │ │ ├── navigation-top.mjs │ │ │ │ │ ├── phone-field.d.ts │ │ │ │ │ ├── phone-field.mjs │ │ │ │ │ ├── radio-v2.d.ts │ │ │ │ │ ├── radio-v2.mjs │ │ │ │ │ ├── range-slider-v2.d.ts │ │ │ │ │ ├── range-slider-v2.mjs │ │ │ │ │ ├── ratio-base.d.ts │ │ │ │ │ ├── ratio-base.mjs │ │ │ │ │ ├── reply-field.d.ts │ │ │ │ │ ├── reply-field.mjs │ │ │ │ │ ├── search-field.d.ts │ │ │ │ │ ├── search-field.mjs │ │ │ │ │ ├── section-header.d.ts │ │ │ │ │ ├── section-header.mjs │ │ │ │ │ ├── select-box-v2.d.ts │ │ │ │ │ ├── select-box-v2.mjs │ │ │ │ │ ├── slider-v2.d.ts │ │ │ │ │ ├── slider-v2.mjs │ │ │ │ │ ├── snackbar-v2.d.ts │ │ │ │ │ ├── snackbar-v2.mjs │ │ │ │ │ ├── spinner-v2.d.ts │ │ │ │ │ ├── spinner-v2.mjs │ │ │ │ │ ├── step-indicator-group.d.ts │ │ │ │ │ ├── step-indicator-group.mjs │ │ │ │ │ ├── step-indicator.d.ts │ │ │ │ │ ├── step-indicator.mjs │ │ │ │ │ ├── switch-v2.d.ts │ │ │ │ │ ├── switch-v2.mjs │ │ │ │ │ ├── tab-v2.d.ts │ │ │ │ │ ├── tab-v2.mjs │ │ │ │ │ ├── tabs-v2.d.ts │ │ │ │ │ ├── tabs-v2.mjs │ │ │ │ │ ├── tag-group.d.ts │ │ │ │ │ ├── tag-group.mjs │ │ │ │ │ ├── text-button-v2.d.ts │ │ │ │ │ ├── text-button-v2.mjs │ │ │ │ │ ├── text-field-outlined-v2.d.ts │ │ │ │ │ ├── text-field-outlined-v2.mjs │ │ │ │ │ ├── text-field-underlined-v2.d.ts │ │ │ │ │ ├── text-field-underlined-v2.mjs │ │ │ │ │ ├── thumbnail-ratio.d.ts │ │ │ │ │ ├── thumbnail-ratio.mjs │ │ │ │ │ ├── thumbnail.d.ts │ │ │ │ │ ├── thumbnail.mjs │ │ │ │ │ ├── toggle-tab.d.ts │ │ │ │ │ ├── toggle-tab.mjs │ │ │ │ │ ├── upload-image-wall.d.ts │ │ │ │ │ ├── upload-image-wall.mjs │ │ │ │ │ ├── upload-image.d.ts │ │ │ │ │ ├── upload-image.mjs │ │ │ │ │ ├── uploader.d.ts │ │ │ │ │ └── uploader.mjs │ │ │ │ ├── v2-styles │ │ │ │ │ ├── generate.sh │ │ │ │ │ ├── index.d.ts │ │ │ │ │ ├── index.mjs │ │ │ │ │ ├── platform-android-body-l1-bold.d.ts │ │ │ │ │ ├── platform-android-body-l1-bold.mjs │ │ │ │ │ ├── platform-android-body-l1-regular.d.ts │ │ │ │ │ ├── platform-android-body-l1-regular.mjs │ │ │ │ │ ├── platform-android-body-l2-bold.d.ts │ │ │ │ │ ├── platform-android-body-l2-bold.mjs │ │ │ │ │ ├── platform-android-body-l2-regular.d.ts │ │ │ │ │ ├── platform-android-body-l2-regular.mjs │ │ │ │ │ ├── platform-android-body-m1-bold.d.ts │ │ │ │ │ ├── platform-android-body-m1-bold.mjs │ │ │ │ │ ├── platform-android-body-m1-regular.d.ts │ │ │ │ │ ├── platform-android-body-m1-regular.mjs │ │ │ │ │ ├── platform-android-body-m2-bold.d.ts │ │ │ │ │ ├── platform-android-body-m2-bold.mjs │ │ │ │ │ ├── platform-android-body-m2-regular.d.ts │ │ │ │ │ ├── platform-android-body-m2-regular.mjs │ │ │ │ │ ├── platform-android-caption1-bold.d.ts │ │ │ │ │ ├── platform-android-caption1-bold.mjs │ │ │ │ │ ├── platform-android-caption1-regular.d.ts │ │ │ │ │ ├── platform-android-caption1-regular.mjs │ │ │ │ │ ├── platform-android-caption2-bold.d.ts │ │ │ │ │ ├── platform-android-caption2-bold.mjs │ │ │ │ │ ├── platform-android-caption2-regular.d.ts │ │ │ │ │ ├── platform-android-caption2-regular.mjs │ │ │ │ │ ├── platform-android-h1.d.ts │ │ │ │ │ ├── platform-android-h1.mjs │ │ │ │ │ ├── platform-android-h2.d.ts │ │ │ │ │ ├── platform-android-h2.mjs │ │ │ │ │ ├── platform-android-h3.d.ts │ │ │ │ │ ├── platform-android-h3.mjs │ │ │ │ │ ├── platform-android-h4.d.ts │ │ │ │ │ ├── platform-android-h4.mjs │ │ │ │ │ ├── platform-android-label1-bold.d.ts │ │ │ │ │ ├── platform-android-label1-bold.mjs │ │ │ │ │ ├── platform-android-label1-regular.d.ts │ │ │ │ │ ├── platform-android-label1-regular.mjs │ │ │ │ │ ├── platform-android-label2-bold.d.ts │ │ │ │ │ ├── platform-android-label2-bold.mjs │ │ │ │ │ ├── platform-android-label2-regular.d.ts │ │ │ │ │ ├── platform-android-label2-regular.mjs │ │ │ │ │ ├── platform-android-label3-bold.d.ts │ │ │ │ │ ├── platform-android-label3-bold.mjs │ │ │ │ │ ├── platform-android-label3-regular.d.ts │ │ │ │ │ ├── platform-android-label3-regular.mjs │ │ │ │ │ ├── platform-android-label4-bold.d.ts │ │ │ │ │ ├── platform-android-label4-bold.mjs │ │ │ │ │ ├── platform-android-label4-regular.d.ts │ │ │ │ │ ├── platform-android-label4-regular.mjs │ │ │ │ │ ├── platform-android-label5-bold.d.ts │ │ │ │ │ ├── platform-android-label5-bold.mjs │ │ │ │ │ ├── platform-android-label5-regular.d.ts │ │ │ │ │ ├── platform-android-label5-regular.mjs │ │ │ │ │ ├── platform-android-label6-bold.d.ts │ │ │ │ │ ├── platform-android-label6-bold.mjs │ │ │ │ │ ├── platform-android-label6-regular.d.ts │ │ │ │ │ ├── platform-android-label6-regular.mjs │ │ │ │ │ ├── platform-android-subtitle1-bold.d.ts │ │ │ │ │ ├── platform-android-subtitle1-bold.mjs │ │ │ │ │ ├── platform-android-subtitle1-regular.d.ts │ │ │ │ │ ├── platform-android-subtitle1-regular.mjs │ │ │ │ │ ├── platform-android-subtitle2-bold.d.ts │ │ │ │ │ ├── platform-android-subtitle2-bold.mjs │ │ │ │ │ ├── platform-android-subtitle2-regular.d.ts │ │ │ │ │ ├── platform-android-subtitle2-regular.mjs │ │ │ │ │ ├── platform-android-title1-bold.d.ts │ │ │ │ │ ├── platform-android-title1-bold.mjs │ │ │ │ │ ├── platform-android-title1-regular.d.ts │ │ │ │ │ ├── platform-android-title1-regular.mjs │ │ │ │ │ ├── platform-android-title2-bold.d.ts │ │ │ │ │ ├── platform-android-title2-bold.mjs │ │ │ │ │ ├── platform-android-title2-regular.d.ts │ │ │ │ │ ├── platform-android-title2-regular.mjs │ │ │ │ │ ├── platform-android-title3-bold.d.ts │ │ │ │ │ ├── platform-android-title3-bold.mjs │ │ │ │ │ ├── platform-android-title3-regular.d.ts │ │ │ │ │ ├── platform-android-title3-regular.mjs │ │ │ │ │ ├── platform-ios-body-l1-bold.d.ts │ │ │ │ │ ├── platform-ios-body-l1-bold.mjs │ │ │ │ │ ├── platform-ios-body-l1-regular.d.ts │ │ │ │ │ ├── platform-ios-body-l1-regular.mjs │ │ │ │ │ ├── platform-ios-body-l2-bold.d.ts │ │ │ │ │ ├── platform-ios-body-l2-bold.mjs │ │ │ │ │ ├── platform-ios-body-l2-regular.d.ts │ │ │ │ │ ├── platform-ios-body-l2-regular.mjs │ │ │ │ │ ├── platform-ios-body-m1-bold.d.ts │ │ │ │ │ ├── platform-ios-body-m1-bold.mjs │ │ │ │ │ ├── platform-ios-body-m1-regular.d.ts │ │ │ │ │ ├── platform-ios-body-m1-regular.mjs │ │ │ │ │ ├── platform-ios-body-m2-bold.d.ts │ │ │ │ │ ├── platform-ios-body-m2-bold.mjs │ │ │ │ │ ├── platform-ios-body-m2-regular.d.ts │ │ │ │ │ ├── platform-ios-body-m2-regular.mjs │ │ │ │ │ ├── platform-ios-caption1-bold.d.ts │ │ │ │ │ ├── platform-ios-caption1-bold.mjs │ │ │ │ │ ├── platform-ios-caption1-regular.d.ts │ │ │ │ │ ├── platform-ios-caption1-regular.mjs │ │ │ │ │ ├── platform-ios-caption2-bold.d.ts │ │ │ │ │ ├── platform-ios-caption2-bold.mjs │ │ │ │ │ ├── platform-ios-caption2-regular.d.ts │ │ │ │ │ ├── platform-ios-caption2-regular.mjs │ │ │ │ │ ├── platform-ios-h1.mjs │ │ │ │ │ ├── platform-ios-h2.d.ts │ │ │ │ │ ├── platform-ios-h2.mjs │ │ │ │ │ ├── platform-ios-h3.d.ts │ │ │ │ │ ├── platform-ios-h3.mjs │ │ │ │ │ ├── platform-ios-h4.d.ts │ │ │ │ │ ├── platform-ios-h4.mjs │ │ │ │ │ ├── platform-ios-label1-bold.d.ts │ │ │ │ │ ├── platform-ios-label1-bold.mjs │ │ │ │ │ ├── platform-ios-label1-regular.d.ts │ │ │ │ │ ├── platform-ios-label1-regular.mjs │ │ │ │ │ ├── platform-ios-label2-bold.d.ts │ │ │ │ │ ├── platform-ios-label2-bold.mjs │ │ │ │ │ ├── platform-ios-label2-regular.d.ts │ │ │ │ │ ├── platform-ios-label2-regular.mjs │ │ │ │ │ ├── platform-ios-label3-bold.d.ts │ │ │ │ │ ├── platform-ios-label3-bold.mjs │ │ │ │ │ ├── platform-ios-label3-regular.d.ts │ │ │ │ │ ├── platform-ios-label3-regular.mjs │ │ │ │ │ ├── platform-ios-label4-bold.d.ts │ │ │ │ │ ├── platform-ios-label4-bold.mjs │ │ │ │ │ ├── platform-ios-label4-regular.d.ts │ │ │ │ │ ├── platform-ios-label4-regular.mjs │ │ │ │ │ ├── platform-ios-label5-bold.d.ts │ │ │ │ │ ├── platform-ios-label5-bold.mjs │ │ │ │ │ ├── platform-ios-label5-regular.d.ts │ │ │ │ │ ├── platform-ios-label5-regular.mjs │ │ │ │ │ ├── platform-ios-label6-bold.d.ts │ │ │ │ │ ├── platform-ios-label6-bold.mjs │ │ │ │ │ ├── platform-ios-label6-regular.d.ts │ │ │ │ │ ├── platform-ios-label6-regular.mjs │ │ │ │ │ ├── platform-ios-subtitle1-bold.d.ts │ │ │ │ │ ├── platform-ios-subtitle1-bold.mjs │ │ │ │ │ ├── platform-ios-subtitle1-regular.d.ts │ │ │ │ │ ├── platform-ios-subtitle1-regular.mjs │ │ │ │ │ ├── platform-ios-subtitle2-bold.d.ts │ │ │ │ │ ├── platform-ios-subtitle2-bold.mjs │ │ │ │ │ ├── platform-ios-subtitle2-regular.d.ts │ │ │ │ │ ├── platform-ios-subtitle2-regular.mjs │ │ │ │ │ ├── platform-ios-title1-bold.d.ts │ │ │ │ │ ├── platform-ios-title1-bold.mjs │ │ │ │ │ ├── platform-ios-title1-regular.d.ts │ │ │ │ │ ├── platform-ios-title1-regular.mjs │ │ │ │ │ ├── platform-ios-title2-bold.d.ts │ │ │ │ │ ├── platform-ios-title2-bold.mjs │ │ │ │ │ ├── platform-ios-title2-regular.d.ts │ │ │ │ │ ├── platform-ios-title2-regular.mjs │ │ │ │ │ ├── platform-ios-title3-bold.d.ts │ │ │ │ │ ├── platform-ios-title3-bold.mjs │ │ │ │ │ ├── platform-ios-title3-regular.d.ts │ │ │ │ │ ├── platform-ios-title3-regular.mjs │ │ │ │ │ ├── platforn-ios-h1.d.ts │ │ │ │ │ └── platforn-ios-h1.mjs │ │ │ │ ├── v3-component-sets │ │ │ │ │ ├── action-button.d.ts │ │ │ │ │ ├── action-button.mjs │ │ │ │ │ ├── action-chip.d.ts │ │ │ │ │ ├── action-chip.mjs │ │ │ │ │ ├── action-sheet.d.ts │ │ │ │ │ ├── action-sheet.mjs │ │ │ │ │ ├── alert-dialog.d.ts │ │ │ │ │ ├── alert-dialog.mjs │ │ │ │ │ ├── avatar-image.d.ts │ │ │ │ │ ├── avatar-image.mjs │ │ │ │ │ ├── avatar.d.ts │ │ │ │ │ ├── avatar.mjs │ │ │ │ │ ├── badge.d.ts │ │ │ │ │ ├── badge.mjs │ │ │ │ │ ├── bottom-navigation-global.d.ts │ │ │ │ │ ├── bottom-navigation-global.mjs │ │ │ │ │ ├── bottom-navigation-kr.d.ts │ │ │ │ │ ├── bottom-navigation-kr.mjs │ │ │ │ │ ├── bottom-sheet-actions.d.ts │ │ │ │ │ ├── bottom-sheet-actions.mjs │ │ │ │ │ ├── bottom-sheet.d.ts │ │ │ │ │ ├── bottom-sheet.mjs │ │ │ │ │ ├── callout.d.ts │ │ │ │ │ ├── callout.mjs │ │ │ │ │ ├── checkbox.d.ts │ │ │ │ │ ├── checkbox.mjs │ │ │ │ │ ├── checkmark.d.ts │ │ │ │ │ ├── checkmark.mjs │ │ │ │ │ ├── chip-tablist.d.ts │ │ │ │ │ ├── chip-tablist.mjs │ │ │ │ │ ├── control-chip.d.ts │ │ │ │ │ ├── control-chip.mjs │ │ │ │ │ ├── divider.d.ts │ │ │ │ │ ├── divider.mjs │ │ │ │ │ ├── error-state.d.ts │ │ │ │ │ ├── error-state.mjs │ │ │ │ │ ├── extended-action-sheet.d.ts │ │ │ │ │ ├── extended-action-sheet.mjs │ │ │ │ │ ├── extended-floating-action-button.d.ts │ │ │ │ │ ├── extended-floating-action-button.mjs │ │ │ │ │ ├── floating-action-button.d.ts │ │ │ │ │ ├── floating-action-button.mjs │ │ │ │ │ ├── help-bubble.d.ts │ │ │ │ │ ├── help-bubble.mjs │ │ │ │ │ ├── identity-placeholder.d.ts │ │ │ │ │ ├── identity-placeholder.mjs │ │ │ │ │ ├── index.d.ts │ │ │ │ │ ├── index.mjs │ │ │ │ │ ├── inline-banner.d.ts │ │ │ │ │ ├── inline-banner.mjs │ │ │ │ │ ├── link-content.d.ts │ │ │ │ │ ├── link-content.mjs │ │ │ │ │ ├── list-basic.d.ts │ │ │ │ │ ├── list-basic.mjs │ │ │ │ │ ├── list-item.d.ts │ │ │ │ │ ├── list-item.mjs │ │ │ │ │ ├── main-tab-navigation-global.d.ts │ │ │ │ │ ├── main-tab-navigation-global.mjs │ │ │ │ │ ├── main-tab-navigation-kr.d.ts │ │ │ │ │ ├── main-tab-navigation-kr.mjs │ │ │ │ │ ├── manner-temp-badge.d.ts │ │ │ │ │ ├── manner-temp-badge.mjs │ │ │ │ │ ├── manner-temp-bar.d.ts │ │ │ │ │ ├── manner-temp-bar.mjs │ │ │ │ │ ├── manner-temp.d.ts │ │ │ │ │ ├── manner-temp.mjs │ │ │ │ │ ├── multiline-text-field.d.ts │ │ │ │ │ ├── multiline-text-field.mjs │ │ │ │ │ ├── os-상태바-figma-only.d.ts │ │ │ │ │ ├── os-상태바-figma-only.mjs │ │ │ │ │ ├── os-하단-figma-only.d.ts │ │ │ │ │ ├── os-하단-figma-only.mjs │ │ │ │ │ ├── primary-floating-action-button.d.ts │ │ │ │ │ ├── primary-floating-action-button.mjs │ │ │ │ │ ├── progress-circle.d.ts │ │ │ │ │ ├── progress-circle.mjs │ │ │ │ │ ├── radio-mark.d.ts │ │ │ │ │ ├── radio-mark.mjs │ │ │ │ │ ├── radio.d.ts │ │ │ │ │ ├── radio.mjs │ │ │ │ │ ├── range-slider.d.ts │ │ │ │ │ ├── range-slider.mjs │ │ │ │ │ ├── reaction-button.d.ts │ │ │ │ │ ├── reaction-button.mjs │ │ │ │ │ ├── segmented-control.d.ts │ │ │ │ │ ├── segmented-control.mjs │ │ │ │ │ ├── select-box.d.ts │ │ │ │ │ ├── select-box.mjs │ │ │ │ │ ├── selectable-list-item.d.ts │ │ │ │ │ ├── selectable-list-item.mjs │ │ │ │ │ ├── skeleton.d.ts │ │ │ │ │ ├── skeleton.mjs │ │ │ │ │ ├── slider.d.ts │ │ │ │ │ ├── slider.mjs │ │ │ │ │ ├── snackbar.d.ts │ │ │ │ │ ├── snackbar.mjs │ │ │ │ │ ├── switch.d.ts │ │ │ │ │ ├── switch.mjs │ │ │ │ │ ├── tablist.d.ts │ │ │ │ │ ├── tablist.mjs │ │ │ │ │ ├── tag-group.d.ts │ │ │ │ │ ├── tag-group.mjs │ │ │ │ │ ├── template-bottom-tool-bar.d.ts │ │ │ │ │ ├── template-bottom-tool-bar.mjs │ │ │ │ │ ├── template-button-group.d.ts │ │ │ │ │ ├── template-button-group.mjs │ │ │ │ │ ├── template-chip-group.d.ts │ │ │ │ │ ├── template-chip-group.mjs │ │ │ │ │ ├── template-select-box-group.d.ts │ │ │ │ │ ├── template-select-box-group.mjs │ │ │ │ │ ├── template-top-navigation.d.ts │ │ │ │ │ ├── template-top-navigation.mjs │ │ │ │ │ ├── text-button.d.ts │ │ │ │ │ ├── text-button.mjs │ │ │ │ │ ├── text-field.d.ts │ │ │ │ │ ├── text-field.mjs │ │ │ │ │ ├── toggle-button.d.ts │ │ │ │ │ ├── toggle-button.mjs │ │ │ │ │ ├── top-navigation.d.ts │ │ │ │ │ ├── top-navigation.mjs │ │ │ │ │ ├── 키보드-figma-only.d.ts │ │ │ │ │ └── 키보드-figma-only.mjs │ │ │ │ └── v3-styles │ │ │ │ │ ├── index.d.ts │ │ │ │ │ ├── index.mjs │ │ │ │ │ ├── legacy-13-150.d.ts │ │ │ │ │ ├── legacy-13-150.mjs │ │ │ │ │ ├── legacy-14-150.d.ts │ │ │ │ │ ├── legacy-14-150.mjs │ │ │ │ │ ├── scale-t1-bold.d.ts │ │ │ │ │ ├── scale-t1-bold.mjs │ │ │ │ │ ├── scale-t1-medium.d.ts │ │ │ │ │ ├── scale-t1-medium.mjs │ │ │ │ │ ├── scale-t1-regular.d.ts │ │ │ │ │ ├── scale-t1-regular.mjs │ │ │ │ │ ├── scale-t10-bold.d.ts │ │ │ │ │ ├── scale-t10-bold.mjs │ │ │ │ │ ├── scale-t2-bold.d.ts │ │ │ │ │ ├── scale-t2-bold.mjs │ │ │ │ │ ├── scale-t2-medium.d.ts │ │ │ │ │ ├── scale-t2-medium.mjs │ │ │ │ │ ├── scale-t2-regular.d.ts │ │ │ │ │ ├── scale-t2-regular.mjs │ │ │ │ │ ├── scale-t3-bold.d.ts │ │ │ │ │ ├── scale-t3-bold.mjs │ │ │ │ │ ├── scale-t3-medium.d.ts │ │ │ │ │ ├── scale-t3-medium.mjs │ │ │ │ │ ├── scale-t3-regular.d.ts │ │ │ │ │ ├── scale-t3-regular.mjs │ │ │ │ │ ├── scale-t4-bold.d.ts │ │ │ │ │ ├── scale-t4-bold.mjs │ │ │ │ │ ├── scale-t4-medium.d.ts │ │ │ │ │ ├── scale-t4-medium.mjs │ │ │ │ │ ├── scale-t4-regular.d.ts │ │ │ │ │ ├── scale-t4-regular.mjs │ │ │ │ │ ├── scale-t5-bold.d.ts │ │ │ │ │ ├── scale-t5-bold.mjs │ │ │ │ │ ├── scale-t5-medium.d.ts │ │ │ │ │ ├── scale-t5-medium.mjs │ │ │ │ │ ├── scale-t5-regular.d.ts │ │ │ │ │ ├── scale-t5-regular.mjs │ │ │ │ │ ├── scale-t6-bold.d.ts │ │ │ │ │ ├── scale-t6-bold.mjs │ │ │ │ │ ├── scale-t6-medium.d.ts │ │ │ │ │ ├── scale-t6-medium.mjs │ │ │ │ │ ├── scale-t6-regular.d.ts │ │ │ │ │ ├── scale-t6-regular.mjs │ │ │ │ │ ├── scale-t7-bold.d.ts │ │ │ │ │ ├── scale-t7-bold.mjs │ │ │ │ │ ├── scale-t7-medium.d.ts │ │ │ │ │ ├── scale-t7-medium.mjs │ │ │ │ │ ├── scale-t7-regular.d.ts │ │ │ │ │ ├── scale-t7-regular.mjs │ │ │ │ │ ├── scale-t8-bold.d.ts │ │ │ │ │ ├── scale-t8-bold.mjs │ │ │ │ │ ├── scale-t9-bold.d.ts │ │ │ │ │ ├── scale-t9-bold.mjs │ │ │ │ │ ├── semantic-article-body.d.ts │ │ │ │ │ ├── semantic-article-body.mjs │ │ │ │ │ ├── semantic-screen-title.d.ts │ │ │ │ │ └── semantic-screen-title.mjs │ │ │ ├── colors.ts │ │ │ ├── component.ts │ │ │ ├── v2-component-sets-private.d.ts │ │ │ ├── v2-component-sets-private.mjs │ │ │ ├── v3-component-sets-private.d.ts │ │ │ └── v3-component-sets-private.mjs │ │ ├── index.ts │ │ ├── mapping │ │ │ ├── alert-dialog.ts │ │ │ ├── avatars.ts │ │ │ ├── button-group.ts │ │ │ ├── buttons.ts │ │ │ ├── callouts.ts │ │ │ ├── checkbox.ts │ │ │ ├── chips.ts │ │ │ ├── fabs.ts │ │ │ ├── help-bubble.ts │ │ │ ├── index.ts │ │ │ ├── inline-alerts.ts │ │ │ ├── progress-circle.ts │ │ │ ├── radio.ts │ │ │ ├── select-box.ts │ │ │ ├── sliders.ts │ │ │ ├── snackbar.ts │ │ │ ├── switches.ts │ │ │ ├── tabs.ts │ │ │ ├── text-fields.ts │ │ │ └── types.ts │ │ └── services │ │ │ ├── apply-color-variable.ts │ │ │ ├── apply-text-style.ts │ │ │ ├── get-color-variable-suggestions-by-properties.ts │ │ │ ├── get-color-variable-suggestions.ts │ │ │ ├── get-component-in-selection.ts │ │ │ ├── get-figma-metadata.ts │ │ │ ├── get-selected-info.ts │ │ │ ├── get-text-style-suggestions.ts │ │ │ ├── notify.ts │ │ │ └── swap-component.ts │ ├── shared │ │ ├── constants.ts │ │ ├── event.ts │ │ ├── types.ts │ │ └── utils │ │ │ ├── colors.ts │ │ │ ├── component-structure.ts │ │ │ ├── copy.ts │ │ │ ├── libraries.ts │ │ │ ├── link.ts │ │ │ ├── nodes.ts │ │ │ ├── setting.ts │ │ │ ├── string.ts │ │ │ ├── styles.ts │ │ │ ├── text-node-properties.ts │ │ │ ├── traverse.ts │ │ │ └── variables.ts │ └── ui │ │ ├── App.tsx │ │ ├── color-section │ │ ├── context.tsx │ │ ├── index.tsx │ │ ├── list.tsx │ │ └── result.tsx │ │ ├── common │ │ ├── components │ │ │ ├── collapsible.tsx │ │ │ ├── footer.tsx │ │ │ ├── progress-bar.tsx │ │ │ ├── scan-button.tsx │ │ │ ├── start-callout.tsx │ │ │ └── taget-badges.tsx │ │ ├── context │ │ │ ├── figma.tsx │ │ │ └── migration.tsx │ │ ├── design-system │ │ │ └── ui │ │ │ │ ├── action-button.tsx │ │ │ │ ├── callout.tsx │ │ │ │ ├── inline-banner.tsx │ │ │ │ ├── loading-indicator.tsx │ │ │ │ ├── progress-circle.tsx │ │ │ │ └── tabs.tsx │ │ └── posthog.ts │ │ ├── component-section │ │ ├── context.tsx │ │ ├── index.tsx │ │ └── list.tsx │ │ ├── main.tsx │ │ ├── styles.css │ │ ├── typography-section │ │ ├── context.tsx │ │ ├── index.tsx │ │ ├── list.tsx │ │ └── result.tsx │ │ └── vite-env.d.ts │ ├── tsconfig.json │ ├── tsconfig.main.json │ ├── tsconfig.ui.json │ ├── vite.main.config.ts │ └── vite.ui.config.ts ├── tsconfig.headless.json ├── tsconfig.json └── vitest.workspace.ts /.cursorignore: -------------------------------------------------------------------------------- 1 | # Add directories or file patterns to ignore during indexing (e.g. foo/ or *.csv) 2 | packages/archive/**/* -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | charset = utf-8 3 | end_of_line = lf 4 | 5 | [*.{ts,js,tsx,mdx,md}] 6 | indent_size = 2 7 | indent_style = space 8 | insert_final_newline = true 9 | 10 | [*.json] 11 | indent_size = 2 12 | indent_style = space 13 | insert_final_newline = true 14 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | .yarn/** linguist-vendored 2 | .yarn/releases/* binary linguist-vendored 3 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.DS_Store 2 | *.log 3 | *.tsbuildinfo 4 | .ultra.cache.json 5 | 6 | .nyc_output/ 7 | 8 | .pnp.* 9 | 10 | **/node_modules/ 11 | 12 | lib 13 | !docs/**/lib 14 | 15 | docs/.next 16 | docs/.source 17 | docs/out 18 | 19 | scripts/data -------------------------------------------------------------------------------- /.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | "recommendations": [ 3 | "biomejs.biome", 4 | "formulahendry.auto-close-tag", 5 | "redhat.vscode-yaml" 6 | ] 7 | } 8 | -------------------------------------------------------------------------------- /NOTICE: -------------------------------------------------------------------------------- 1 | 이 저장소에서 제공하는 "브랜드 리소스"는 주식회사 당근마켓(이하 "당근마켓")의 자산으로 대한민국 상표법의 보호를 받습니다. 2 | 브랜드 리소스란 로고, 상호명, 캐릭터 등 당근마켓이나 당근마켓의 제품으로 식별될 수 있는 모든 요소를 의미합니다. 3 | 4 | 당근마켓과 사전 협의가 없는 경우 비상업적 목적으로만 사용이 허가되며 [당근마켓 브랜드 리소스 가이드라인]을 준수해야합니다. 5 | 상표 사용 허가는 당근마켓의 요청에 따라 언제든지 철회될 수 있습니다. 6 | 7 | [당근마켓 브랜드 리소스 가이드라인]: https://www.notion.so/daangn/e10010519eb9465aa703a6551c05eb63 8 | -------------------------------------------------------------------------------- /bunfig.toml: -------------------------------------------------------------------------------- 1 | [install.scopes] 2 | daangn = { url = "https://npm.pkg.github.com", token = "$GITHUB_TOKEN" } 3 | -------------------------------------------------------------------------------- /cover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daangn/seed-design/37a4e2a2c799007b58e23a1e20d68f54a88c0cd0/cover.png -------------------------------------------------------------------------------- /docs/.storybook/manager.ts: -------------------------------------------------------------------------------- 1 | import { addons } from "storybook/manager-api"; 2 | import theme from "./theme"; 3 | 4 | addons.setConfig({ 5 | theme, 6 | }); 7 | -------------------------------------------------------------------------------- /docs/README.md: -------------------------------------------------------------------------------- 1 | # Docs 2 | 3 | All-in-one documentation of SEED Design System. 4 | 5 | Powered by [Fumadocs](https://github.com/fuma-nama/fumadocs). 6 | 7 | ## Development 8 | 9 | ```bash 10 | npm run dev 11 | # or 12 | pnpm dev 13 | # or 14 | bun dev 15 | ``` 16 | 17 | Open http://localhost:3000 with your browser to see the result. 18 | -------------------------------------------------------------------------------- /docs/app/docs/layout.tsx: -------------------------------------------------------------------------------- 1 | import { DocsLayout } from "fumadocs-ui/layouts/docs"; 2 | import type { ReactNode } from "react"; 3 | import { docsOptions } from "../layout.config"; 4 | 5 | export default function Layout({ children }: { children: ReactNode }) { 6 | return {children}; 7 | } 8 | -------------------------------------------------------------------------------- /docs/app/react/layout.tsx: -------------------------------------------------------------------------------- 1 | import { DocsLayout } from "fumadocs-ui/layouts/docs"; 2 | import type { ReactNode } from "react"; 3 | import { reactOptions } from "../layout.config"; 4 | 5 | export default function Layout({ children }: { children: ReactNode }) { 6 | return {children}; 7 | } 8 | -------------------------------------------------------------------------------- /docs/chromatic.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "onlyChanged": true, 3 | "projectId": "Project:67456b66c5a4117c81b18d44", 4 | "storybookBaseDir": "docs", 5 | "zip": true 6 | } 7 | -------------------------------------------------------------------------------- /docs/components/example/action-button-brand-outline.tsx: -------------------------------------------------------------------------------- 1 | import { ActionButton } from "seed-design/ui/action-button"; 2 | 3 | export default function ActionButtonBrandOutline() { 4 | return 라벨; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/action-button-brand-solid.tsx: -------------------------------------------------------------------------------- 1 | import { ActionButton } from "seed-design/ui/action-button"; 2 | 3 | export default function ActionButtonBrandSolid() { 4 | return 라벨; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/action-button-critical-solid.tsx: -------------------------------------------------------------------------------- 1 | import { ActionButton } from "seed-design/ui/action-button"; 2 | 3 | export default function ActionButtonCriticalSolid() { 4 | return 라벨; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/action-button-disabled.tsx: -------------------------------------------------------------------------------- 1 | import { ActionButton } from "seed-design/ui/action-button"; 2 | 3 | export default function ActionButtonDisabled() { 4 | return 라벨; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/action-button-neutral-outline.tsx: -------------------------------------------------------------------------------- 1 | import { ActionButton } from "seed-design/ui/action-button"; 2 | 3 | export default function ActionButtonNeutralOutline() { 4 | return 라벨; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/action-button-neutral-solid.tsx: -------------------------------------------------------------------------------- 1 | import { ActionButton } from "seed-design/ui/action-button"; 2 | 3 | export default function ActionButtonNeutralSolid() { 4 | return 라벨; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/action-button-neutral-weak.tsx: -------------------------------------------------------------------------------- 1 | import { ActionButton } from "seed-design/ui/action-button"; 2 | 3 | export default function ActionButtonNeutralWeak() { 4 | return 라벨; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/action-button-preview.tsx: -------------------------------------------------------------------------------- 1 | import { ActionButton } from "seed-design/ui/action-button"; 2 | 3 | export default function ActionButtonPreview() { 4 | return 라벨; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/action-chip-icon-only.tsx: -------------------------------------------------------------------------------- 1 | import { IconPlusFill } from "@karrotmarket/react-monochrome-icon"; 2 | import { ActionChip, Icon } from "@seed-design/react"; 3 | 4 | export default function ActionChipIconOnly() { 5 | return ( 6 | 7 | } /> 8 | 9 | ); 10 | } 11 | -------------------------------------------------------------------------------- /docs/components/example/action-chip-medium.tsx: -------------------------------------------------------------------------------- 1 | import { ActionChip } from "@seed-design/react"; 2 | 3 | export default function ActionChipMedium() { 4 | return 라벨; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/action-chip-preview.tsx: -------------------------------------------------------------------------------- 1 | import { ActionChip } from "@seed-design/react"; 2 | 3 | export default function ActionChipPreview() { 4 | return 라벨; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/action-chip-small.tsx: -------------------------------------------------------------------------------- 1 | import { ActionChip } from "@seed-design/react"; 2 | 3 | export default function ActionChipSmall() { 4 | return 라벨; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/badge-as-child.tsx: -------------------------------------------------------------------------------- 1 | import { Badge } from "@seed-design/react"; 2 | 3 | export default function BadgeAsChild() { 4 | return ( 5 | 6 | 7 | 링크 8 | 9 | 10 | ); 11 | } 12 | -------------------------------------------------------------------------------- /docs/components/example/badge-brand.tsx: -------------------------------------------------------------------------------- 1 | import { Badge } from "@seed-design/react"; 2 | 3 | export default function BadgeBrand() { 4 | return 라벨; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/badge-critical.tsx: -------------------------------------------------------------------------------- 1 | import { Badge } from "@seed-design/react"; 2 | 3 | export default function BadgeCritical() { 4 | return 라벨; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/badge-informative.tsx: -------------------------------------------------------------------------------- 1 | import { Badge } from "@seed-design/react"; 2 | 3 | export default function BadgeInformative() { 4 | return 라벨; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/badge-large.tsx: -------------------------------------------------------------------------------- 1 | import { Badge } from "@seed-design/react"; 2 | 3 | export default function BadgeLarge() { 4 | return 라벨; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/badge-medium.tsx: -------------------------------------------------------------------------------- 1 | import { Badge } from "@seed-design/react"; 2 | 3 | export default function BadgeMedium() { 4 | return 라벨; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/badge-neutral.tsx: -------------------------------------------------------------------------------- 1 | import { Badge } from "@seed-design/react"; 2 | 3 | export default function BadgeNeutral() { 4 | return 라벨; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/badge-outline.tsx: -------------------------------------------------------------------------------- 1 | import { Badge } from "@seed-design/react"; 2 | 3 | export default function BadgeOutline() { 4 | return 라벨; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/badge-positive.tsx: -------------------------------------------------------------------------------- 1 | import { Badge } from "@seed-design/react"; 2 | 3 | export default function BadgePositive() { 4 | return 라벨; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/badge-preview.tsx: -------------------------------------------------------------------------------- 1 | import { Badge } from "@seed-design/react"; 2 | 3 | export default function BadgePreview() { 4 | return 라벨; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/badge-solid.tsx: -------------------------------------------------------------------------------- 1 | import { Badge } from "@seed-design/react"; 2 | 3 | export default function BadgeSolid() { 4 | return 라벨; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/badge-weak.tsx: -------------------------------------------------------------------------------- 1 | import { Badge } from "@seed-design/react"; 2 | 3 | export default function BadgeWeak() { 4 | return 라벨; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/checkbox-indeterminate.tsx: -------------------------------------------------------------------------------- 1 | import { Checkbox } from "seed-design/ui/checkbox"; 2 | 3 | export default function CheckboxIndeterminate() { 4 | return ; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/checkbox-preview.tsx: -------------------------------------------------------------------------------- 1 | import { Checkbox } from "seed-design/ui/checkbox"; 2 | 3 | export default function CheckboxPreview() { 4 | return ; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/checkbox-stronger.tsx: -------------------------------------------------------------------------------- 1 | import { Checkbox } from "seed-design/ui/checkbox"; 2 | 3 | export default function CheckboxStronger() { 4 | return ; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/control-chip-medium.tsx: -------------------------------------------------------------------------------- 1 | import { ControlChip } from "seed-design/ui/control-chip"; 2 | 3 | export default function ActionChipMedium() { 4 | return 라벨; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/control-chip-preview.tsx: -------------------------------------------------------------------------------- 1 | import { ControlChip } from "seed-design/ui/control-chip"; 2 | 3 | export default function ControlChipPreview() { 4 | return 라벨; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/control-chip-small.tsx: -------------------------------------------------------------------------------- 1 | import { ControlChip } from "seed-design/ui/control-chip"; 2 | 3 | export default function ActionChipSmall() { 4 | return 라벨; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/demo/utils/date.ts: -------------------------------------------------------------------------------- 1 | export function formatDate(dateStr: string): string { 2 | const date = new Date(dateStr); 3 | return date.toLocaleDateString("ko-KR", { 4 | month: "long", 5 | day: "numeric", 6 | }); 7 | } 8 | -------------------------------------------------------------------------------- /docs/components/example/divider-preview.tsx: -------------------------------------------------------------------------------- 1 | import { Box, Divider, VStack } from "@seed-design/react"; 2 | 3 | export default function DividerPreview() { 4 | return ( 5 | 6 | 7 | 8 | 9 | 10 | ); 11 | } 12 | -------------------------------------------------------------------------------- /docs/components/example/fab-preview.tsx: -------------------------------------------------------------------------------- 1 | import IconPlusLine from "@karrotmarket/react-monochrome-icon/IconPlusLine"; 2 | import { Fab, Icon } from "@seed-design/react"; 3 | 4 | export default function FabPreview() { 5 | return ( 6 | 7 | } /> 8 | 9 | ); 10 | } 11 | -------------------------------------------------------------------------------- /docs/components/example/floating-action-button-preview.tsx: -------------------------------------------------------------------------------- 1 | import { FloatingActionButton } from "@/registry/ui/floating-action-button"; 2 | import IconPlusLine from "@karrotmarket/react-monochrome-icon/IconPlusLine"; 3 | 4 | export default function FloatingActionButtonPreview() { 5 | return } label="Example FAB" />; 6 | } 7 | -------------------------------------------------------------------------------- /docs/components/example/identity-placeholder-preview.tsx: -------------------------------------------------------------------------------- 1 | import { IdentityPlaceholder } from "seed-design/ui/identity-placeholder"; 2 | 3 | export default function IdentityPlaceholderPreview() { 4 | return ; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/inline-banner-with-link-label.tsx: -------------------------------------------------------------------------------- 1 | import { InlineBanner } from "seed-design/ui/inline-banner"; 2 | 3 | export default function InlineBannerWithLinkLabel() { 4 | return ( 5 | 9 | ); 10 | } 11 | -------------------------------------------------------------------------------- /docs/components/example/multiline-text-field-large.tsx: -------------------------------------------------------------------------------- 1 | import { TextField, TextFieldTextarea } from "seed-design/ui/text-field"; 2 | 3 | export default function MultilineTextFieldLarge() { 4 | return ( 5 | 6 | 7 | 8 | ); 9 | } 10 | -------------------------------------------------------------------------------- /docs/components/example/multiline-text-field-medium.tsx: -------------------------------------------------------------------------------- 1 | import { TextField, TextFieldTextarea } from "seed-design/ui/text-field"; 2 | 3 | export default function MultilineTextFieldMedium() { 4 | return ( 5 | 6 | 7 | 8 | ); 9 | } 10 | -------------------------------------------------------------------------------- /docs/components/example/multiline-text-field-preview.tsx: -------------------------------------------------------------------------------- 1 | import { TextField, TextFieldTextarea } from "seed-design/ui/text-field"; 2 | 3 | export default function MultilineTextFieldPreview() { 4 | return ( 5 | 6 | 7 | 8 | ); 9 | } 10 | -------------------------------------------------------------------------------- /docs/components/example/multiline-text-field-xlarge.tsx: -------------------------------------------------------------------------------- 1 | import { TextField, TextFieldTextarea } from "seed-design/ui/text-field"; 2 | 3 | export default function MultilineTextFieldXlarge() { 4 | return ( 5 | 6 | 7 | 8 | ); 9 | } 10 | -------------------------------------------------------------------------------- /docs/components/example/progress-circle-24.tsx: -------------------------------------------------------------------------------- 1 | import { ProgressCircle } from "seed-design/ui/progress-circle"; 2 | 3 | export default function ProgressCircle24() { 4 | return ; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/progress-circle-40.tsx: -------------------------------------------------------------------------------- 1 | import { ProgressCircle } from "seed-design/ui/progress-circle"; 2 | 3 | export default function ProgressCircle40() { 4 | return ; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/progress-circle-brand.tsx: -------------------------------------------------------------------------------- 1 | import { ProgressCircle } from "seed-design/ui/progress-circle"; 2 | 3 | export default function ProgressCircleBrand() { 4 | return ; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/progress-circle-determinate.tsx: -------------------------------------------------------------------------------- 1 | import { ProgressCircle } from "seed-design/ui/progress-circle"; 2 | 3 | export default function ProgressCircleDeterminate() { 4 | return ; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/progress-circle-indeterminate.tsx: -------------------------------------------------------------------------------- 1 | import { ProgressCircle } from "seed-design/ui/progress-circle"; 2 | 3 | export default function ProgressCirclePreview() { 4 | // if you want to show an indeterminate progress circle, you can pass `undefined` or omit the `value` prop 5 | return ; 6 | } 7 | -------------------------------------------------------------------------------- /docs/components/example/progress-circle-neutral.tsx: -------------------------------------------------------------------------------- 1 | import { ProgressCircle } from "seed-design/ui/progress-circle"; 2 | 3 | export default function ProgressCircleNeutral() { 4 | return ; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/progress-circle-preview.tsx: -------------------------------------------------------------------------------- 1 | import { ProgressCircle } from "seed-design/ui/progress-circle"; 2 | 3 | export default function ProgressCirclePreview() { 4 | return ; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/progress-circle-small.tsx: -------------------------------------------------------------------------------- 1 | import { ProgressCircle } from "seed-design/ui/progress-circle"; 2 | 3 | export default function ProgressCirclePreview() { 4 | return ; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/example/switch-disabled.tsx: -------------------------------------------------------------------------------- 1 | import { Switch } from "seed-design/ui/switch"; 2 | 3 | export default function SwitchDisabled() { 4 | return ( 5 |
6 | 7 | 8 |
9 | ); 10 | } 11 | -------------------------------------------------------------------------------- /docs/components/example/switch-medium.tsx: -------------------------------------------------------------------------------- 1 | import { useState } from "react"; 2 | import { Switch } from "seed-design/ui/switch"; 3 | 4 | export default function SwitchMedium() { 5 | const [isChecked, setIsChecked] = useState(false); 6 | 7 | return ; 8 | } 9 | -------------------------------------------------------------------------------- /docs/components/example/switch-preview.tsx: -------------------------------------------------------------------------------- 1 | import { useState } from "react"; 2 | import { Switch } from "seed-design/ui/switch"; 3 | 4 | export default function SwitchPreview() { 5 | const [isChecked, setIsChecked] = useState(false); 6 | 7 | return ; 8 | } 9 | -------------------------------------------------------------------------------- /docs/components/example/switch-small.tsx: -------------------------------------------------------------------------------- 1 | import { useState } from "react"; 2 | import { Switch } from "seed-design/ui/switch"; 3 | 4 | export default function SwitchSmall() { 5 | const [isChecked, setIsChecked] = useState(false); 6 | 7 | return ; 8 | } 9 | -------------------------------------------------------------------------------- /docs/components/example/text-field-grapheme-count.tsx: -------------------------------------------------------------------------------- 1 | import { TextField, TextFieldInput } from "seed-design/ui/text-field"; 2 | 3 | export default function TextFieldGraphemeCount() { 4 | return ( 5 | 6 | 7 | 8 | ); 9 | } 10 | -------------------------------------------------------------------------------- /docs/components/example/text-field-indicator.tsx: -------------------------------------------------------------------------------- 1 | import { TextField, TextFieldInput } from "seed-design/ui/text-field"; 2 | 3 | export default function TextFieldIndicator() { 4 | return ( 5 | 6 | 7 | 8 | ); 9 | } 10 | -------------------------------------------------------------------------------- /docs/components/example/text-field-large.tsx: -------------------------------------------------------------------------------- 1 | import { TextField, TextFieldInput } from "seed-design/ui/text-field"; 2 | 3 | export default function TextFieldLarge() { 4 | return ( 5 | 6 | 7 | 8 | ); 9 | } 10 | -------------------------------------------------------------------------------- /docs/components/example/text-field-medium.tsx: -------------------------------------------------------------------------------- 1 | import { TextField, TextFieldInput } from "seed-design/ui/text-field"; 2 | 3 | export default function TextFieldMedium() { 4 | return ( 5 | 6 | 7 | 8 | ); 9 | } 10 | -------------------------------------------------------------------------------- /docs/components/example/text-field-preview.tsx: -------------------------------------------------------------------------------- 1 | import { TextField, TextFieldInput } from "seed-design/ui/text-field"; 2 | 3 | export default function TextFieldPreview() { 4 | return ( 5 | 6 | 7 | 8 | ); 9 | } 10 | -------------------------------------------------------------------------------- /docs/components/example/text-field-xlarge.tsx: -------------------------------------------------------------------------------- 1 | import { TextField, TextFieldInput } from "seed-design/ui/text-field"; 2 | 3 | export default function TextFieldXlarge() { 4 | return ( 5 | 6 | 7 | 8 | ); 9 | } 10 | -------------------------------------------------------------------------------- /docs/components/example/toggle-button-disabled.tsx: -------------------------------------------------------------------------------- 1 | import { ToggleButton } from "seed-design/ui/toggle-button"; 2 | 3 | export default function ToggleButtonDisabled() { 4 | return 비활성; 5 | } 6 | -------------------------------------------------------------------------------- /docs/components/iconography/tags.ts: -------------------------------------------------------------------------------- 1 | // TODO: Tag System with icona, seed-design 2 | export const Tag = { 3 | service: "tag:service", 4 | figmaNotPublished: "tag:figma-not-published", 5 | fat: "tag:fat", 6 | }; 7 | 8 | export const Meta = { 9 | service: "[서비스아이콘]", 10 | fat: "_fat", 11 | figmaNotPublished: ".", 12 | }; 13 | -------------------------------------------------------------------------------- /docs/components/theme-sync.tsx: -------------------------------------------------------------------------------- 1 | "use client"; 2 | 3 | import { useThemeSync } from "@/hooks/useThemeSync"; 4 | 5 | function ThemeSync() { 6 | useThemeSync(); 7 | 8 | return null; 9 | } 10 | export default ThemeSync; 11 | -------------------------------------------------------------------------------- /docs/components/type-table/generator.ts: -------------------------------------------------------------------------------- 1 | import { createGenerator } from "fumadocs-typescript"; 2 | 3 | export const typeTableGenerator = createGenerator(); 4 | -------------------------------------------------------------------------------- /docs/content/docs/components/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "Components", 3 | "pages": ["..."] 4 | } 5 | -------------------------------------------------------------------------------- /docs/content/docs/foundation/color/color-system.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: Color System 3 | description: SEED 색상 시스템은 접근성을 고려하며 제품의 계층, 상태, 브랜드를 표현할 수 있도록 돕습니다. 4 | --- 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /docs/content/docs/foundation/color/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "Color", 3 | "pages": ["color-system", "color-role", "palette"] 4 | } 5 | -------------------------------------------------------------------------------- /docs/content/docs/foundation/design-token-reference.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: Design Token Reference 3 | description: SEED 디자인 토큰의 전체 목록을 제공합니다. 4 | --- 5 | 6 | -------------------------------------------------------------------------------- /docs/content/docs/foundation/iconography/library.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: Library 3 | --- 4 | 5 | 6 | 7 | 8 | © 2025 Daangn Market. All rights reserved.
9 | 본 아이콘의 저작권은 (주)당근마켓에 있으며, 허가 없이 복제, 배포, 전송, 전시 등의 행위를 금지합니다. 10 |
-------------------------------------------------------------------------------- /docs/content/docs/foundation/iconography/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "Iconography", 3 | "pages": ["overview", "usage", "library"] 4 | } 5 | -------------------------------------------------------------------------------- /docs/content/docs/foundation/iconography/overview.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: Overview 3 | description: 아이콘은 사용자가 복잡한 정보나 기능을 빠르게 이해할 수 있도록 도와주는 디자인 요소입니다. 4 | --- 5 | -------------------------------------------------------------------------------- /docs/content/docs/foundation/iconography/usage.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: Usage 3 | description: 아이콘과 다른 디자인 요소 간의 상호작용 및 아이콘 사용 방법에 대해 설명합니다. 4 | --- 5 | -------------------------------------------------------------------------------- /docs/content/docs/foundation/inclusive-design.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: Inclusive Design 3 | description: SEED 디자인은 모든 사용자가 제품을 쉽게 접근하고 사용할 수 있도록 돕습니다. 4 | --- 5 | -------------------------------------------------------------------------------- /docs/content/docs/foundation/international-design.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: International Design 3 | description: SEED 디자인은 전 세계에서 똑같이 유용하고 가치있는 경험을 제공할 수 있도록 돕습니다. 4 | --- 5 | -------------------------------------------------------------------------------- /docs/content/docs/foundation/logo.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: Logo 3 | --- 4 | -------------------------------------------------------------------------------- /docs/content/docs/foundation/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "Foundation", 3 | "pages": ["design-token", "design-token-reference", "color", "typography", "iconography", "..."] 4 | } 5 | -------------------------------------------------------------------------------- /docs/content/docs/foundation/radius.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: Radius 3 | description: Radius는 컴포넌트 혹은 콘텐츠 모서리의 둥글기를 표현합니다. 4 | --- 5 | 6 | ### Radius Tokens 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/content/docs/foundation/spacing.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: Spacing 3 | description: Spacing은 컴포넌트 혹은 콘텐츠 간의 간격을 표현합니다. 4 | --- 5 | 6 | ### Spacing Tokens 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/content/docs/foundation/typography/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "Typography", 3 | "pages": ["overview"] 4 | } 5 | -------------------------------------------------------------------------------- /docs/content/docs/foundation/voice-and-tone.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: 우리가 이야기하는 방법 3 | --- 4 | -------------------------------------------------------------------------------- /docs/content/docs/guidelines/loading.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: Loading 3 | description: 로딩을 관리하는 데 필요한 요소, 시간에 따른 적합한 선택지와 단계별로 사용자 경험을 최적화하는 방법에 대해 소개합니다. 4 | --- 5 | -------------------------------------------------------------------------------- /docs/content/docs/guidelines/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "가이드라인", 3 | "pages": ["..."] 4 | } 5 | -------------------------------------------------------------------------------- /docs/content/docs/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "Design", 3 | "description": "SEED 디자인 문서", 4 | "icon": "Palette", 5 | "pages": [ 6 | "index", 7 | "whats-new", 8 | "migration", 9 | "foundation", 10 | "components", 11 | "guidelines", 12 | "resources", 13 | "---Links---", 14 | "[SEED React](/react)" 15 | ] 16 | } 17 | -------------------------------------------------------------------------------- /docs/content/docs/migration/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "마이그레이션", 3 | "description": "마이그레이션", 4 | "defaultOpen": true, 5 | "pages": ["migration-reference"] 6 | } 7 | -------------------------------------------------------------------------------- /docs/content/docs/migration/migration-guide.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: Migration Guide 3 | description: V2 V3 마이그레이션 가이드 4 | --- 5 | -------------------------------------------------------------------------------- /docs/content/docs/resources/6fcb7101e56d41b88c9c650d02e9a563.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: 누구나 잘 쓸 수 있다 (당근 맞춤법 가이드) 3 | icon: Lock 4 | --- 5 | 6 | This page is Private. 7 | 8 | If you are Daangn employee, Click [here](https://www.notion.so/daangn/6fcb7101e56d41b88c9c650d02e9a563?pvs=4) to view this page. 9 | -------------------------------------------------------------------------------- /docs/content/docs/resources/Resource-Blog-1a428c3a9f8f80da8671f99d1d0b53a7.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: 프로필 사례 3 | icon: Lock 4 | --- 5 | 6 | This page is Private. 7 | 8 | If you are Daangn employee, Click [here](https://www.notion.so/daangn/Resource-Blog-1a428c3a9f8f80da8671f99d1d0b53a7) to view this page. 9 | -------------------------------------------------------------------------------- /docs/content/docs/resources/UI-UX-f4bdc44d185f4c528a3cc2d0b7c938a6.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: 유저 서베이 현황 및 제안 3 | icon: Lock 4 | --- 5 | 6 | This page is Private. 7 | 8 | If you are Daangn employee, Click [here](https://www.notion.so/daangn/UI-UX-f4bdc44d185f4c528a3cc2d0b7c938a6?pvs=4) to view this page. 9 | -------------------------------------------------------------------------------- /docs/content/docs/resources/UX-96b9f6f646be4a8bbda661171e34f96a.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: 신고하기 UX 가이드 3 | icon: Lock 4 | --- 5 | 6 | This page is Private. 7 | 8 | If you are Daangn employee, Click [here](https://www.notion.so/daangn/UX-96b9f6f646be4a8bbda661171e34f96a) to view this page. 9 | -------------------------------------------------------------------------------- /docs/content/docs/resources/be383e3f021f41e0bd0e5398d3d6c3cb.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: 알림 문구 작성 가이드 3 | icon: Lock 4 | --- 5 | 6 | This page is Private. 7 | 8 | If you are Daangn employee, Click [here](https://www.notion.so/daangn/be383e3f021f41e0bd0e5398d3d6c3cb?pvs=4) to view this page. 9 | -------------------------------------------------------------------------------- /docs/content/docs/resources/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "리소스", 3 | "pages": ["..."] 4 | } 5 | -------------------------------------------------------------------------------- /docs/content/docs/whats-new.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: 새 소식 3 | --- 4 | -------------------------------------------------------------------------------- /docs/content/react/components/(layout)/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "Layout", 3 | "pages": ["...", "stack", "inline", "columns"] 4 | } 5 | -------------------------------------------------------------------------------- /docs/content/react/components/(select-box)/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "Select Box", 3 | "pages": ["..."], 4 | "defaultOpen": true 5 | } 6 | -------------------------------------------------------------------------------- /docs/content/react/components/(tabs)/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "Tabs", 3 | "pages": ["..."], 4 | "defaultOpen": true 5 | } 6 | -------------------------------------------------------------------------------- /docs/content/react/components/(text-field)/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "Text Fields", 3 | "pages": ["..."], 4 | "defaultOpen": true 5 | } 6 | -------------------------------------------------------------------------------- /docs/content/react/components/(typography)/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "Typography", 3 | "pages": ["..."], 4 | "defaultOpen": true 5 | } 6 | -------------------------------------------------------------------------------- /docs/content/react/components/concepts/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "Concepts", 3 | "pages": ["..."] 4 | } 5 | -------------------------------------------------------------------------------- /docs/content/react/components/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "Components", 3 | "pages": [ 4 | "---Concepts---", 5 | "...concepts", 6 | "---Layout---", 7 | "...(layout)", 8 | "---Typography---", 9 | "...(typography)", 10 | "---Components---", 11 | "...", 12 | "fab", 13 | "extended-fab" 14 | ] 15 | } 16 | -------------------------------------------------------------------------------- /docs/content/react/components/stackflow/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "Stackflow", 3 | "pages": ["..."], 4 | "defaultOpen": true 5 | } 6 | -------------------------------------------------------------------------------- /docs/content/react/get-started/installation/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "Installation", 3 | "pages": ["vite", "webpack"] 4 | } 5 | -------------------------------------------------------------------------------- /docs/content/react/get-started/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "Get started", 3 | "pages": [ 4 | "installation", 5 | "cli", 6 | "seed-design-json", 7 | "llms-txt", 8 | "mcp", 9 | "figma-codegen", 10 | "migration", 11 | "codemod" 12 | ] 13 | } 14 | -------------------------------------------------------------------------------- /docs/content/react/get-started/migration/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "Migration", 3 | "pages": ["guides", "improvements"] 4 | } 5 | -------------------------------------------------------------------------------- /docs/content/react/iconography/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "Iconography", 3 | "pages": ["library", "codemod", "..."], 4 | "defaultOpen": true 5 | } 6 | -------------------------------------------------------------------------------- /docs/content/react/index.mdx: -------------------------------------------------------------------------------- 1 | --- 2 | title: Overview 3 | --- 4 | 5 | 6 | -------------------------------------------------------------------------------- /docs/content/react/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "React", 3 | "description": "SEED React 문서", 4 | "icon": "Atom", 5 | "pages": [ 6 | "index", 7 | "---Getting Started---", 8 | "...get-started", 9 | "---Iconography---", 10 | "...iconography", 11 | "...components", 12 | "---Links---", 13 | "[SEED Design](/docs)" 14 | ] 15 | } 16 | -------------------------------------------------------------------------------- /docs/postcss.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | plugins: { 3 | "@tailwindcss/postcss": {}, 4 | }, 5 | }; 6 | -------------------------------------------------------------------------------- /docs/public/__registry__/lib/index.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "manner-temp-level", 4 | "files": [ 5 | "lib:manner-temp-level.ts" 6 | ] 7 | } 8 | ] -------------------------------------------------------------------------------- /docs/public/_redirects: -------------------------------------------------------------------------------- 1 | /docs/design/* /docs/:splat 301 2 | /docs/react/* /react/:splat 301 3 | -------------------------------------------------------------------------------- /docs/public/cover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daangn/seed-design/37a4e2a2c799007b58e23a1e20d68f54a88c0cd0/docs/public/cover.png -------------------------------------------------------------------------------- /docs/public/docs/figma-codegen-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daangn/seed-design/37a4e2a2c799007b58e23a1e20d68f54a88c0cd0/docs/public/docs/figma-codegen-preview.png -------------------------------------------------------------------------------- /docs/public/docs/token-example-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daangn/seed-design/37a4e2a2c799007b58e23a1e20d68f54a88c0cd0/docs/public/docs/token-example-1.png -------------------------------------------------------------------------------- /docs/public/docs/token-example-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daangn/seed-design/37a4e2a2c799007b58e23a1e20d68f54a88c0cd0/docs/public/docs/token-example-2.png -------------------------------------------------------------------------------- /docs/public/docs/token-semantics.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daangn/seed-design/37a4e2a2c799007b58e23a1e20d68f54a88c0cd0/docs/public/docs/token-semantics.png -------------------------------------------------------------------------------- /docs/public/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daangn/seed-design/37a4e2a2c799007b58e23a1e20d68f54a88c0cd0/docs/public/logo.png -------------------------------------------------------------------------------- /docs/public/penguin.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daangn/seed-design/37a4e2a2c799007b58e23a1e20d68f54a88c0cd0/docs/public/penguin.webp -------------------------------------------------------------------------------- /docs/registry/registry-lib.ts: -------------------------------------------------------------------------------- 1 | import type { RegistryLib } from "./schema"; 2 | 3 | export const registryLib: RegistryLib = [ 4 | { 5 | name: "manner-temp-level", 6 | files: ["lib:manner-temp-level.ts"], 7 | }, 8 | ]; 9 | -------------------------------------------------------------------------------- /docs/sanity/lib/client.tsx: -------------------------------------------------------------------------------- 1 | import { createClient } from "@sanity/client"; 2 | import { apiVersion, dataset, projectId } from "../env"; 3 | 4 | export const client = createClient({ 5 | projectId: projectId, 6 | dataset: dataset, 7 | apiVersion: apiVersion, 8 | useCdn: false, 9 | }); 10 | -------------------------------------------------------------------------------- /docs/sanity/lib/types.ts: -------------------------------------------------------------------------------- 1 | export interface SanityImageType { 2 | _type: "image"; 3 | _key: string; 4 | asset: { 5 | _ref: string; 6 | _type: "reference"; 7 | }; 8 | } 9 | -------------------------------------------------------------------------------- /ecosystem/figma-extractor/.gitignore: -------------------------------------------------------------------------------- 1 | !lib 2 | 3 | /bin/ 4 | /dist/ 5 | /lib/ 6 | 7 | .env 8 | -------------------------------------------------------------------------------- /ecosystem/figma-extractor/src/constants.ts: -------------------------------------------------------------------------------- 1 | export const MODULE_NAME = "figma-extractor"; 2 | 3 | export const POSSIBLE_DATA_TYPES = { 4 | COMPONENTS: "components", 5 | COMPONENT_SETS: "component-sets", 6 | VARIABLES: "variables", 7 | STYLES: "styles", 8 | } as const; 9 | -------------------------------------------------------------------------------- /ecosystem/figma-extractor/src/env.ts: -------------------------------------------------------------------------------- 1 | import { configDotenv } from "dotenv"; 2 | 3 | configDotenv(); 4 | 5 | export const ENV = { 6 | FIGMA_FILE_KEY: process.env.FIGMA_FILE_KEY, 7 | FIGMA_PERSONAL_ACCESS_TOKEN: process.env.FIGMA_PERSONAL_ACCESS_TOKEN, 8 | }; 9 | -------------------------------------------------------------------------------- /ecosystem/figma-extractor/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "ESNext", 4 | "module": "ESNext", 5 | "moduleResolution": "Bundler", 6 | "rootDir": "src", 7 | "outDir": "lib", 8 | "emitDeclarationOnly": true, 9 | "declaration": true, 10 | "skipLibCheck": true 11 | }, 12 | "include": ["src"] 13 | } 14 | -------------------------------------------------------------------------------- /ecosystem/qvism/cli/.gitignore: -------------------------------------------------------------------------------- 1 | /bin/ 2 | -------------------------------------------------------------------------------- /ecosystem/qvism/cli/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "ESNext", 4 | "module": "ESNext", 5 | "moduleResolution": "Bundler", 6 | "rootDir": "src", 7 | "outDir": "lib" 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /ecosystem/qvism/core/.gitignore: -------------------------------------------------------------------------------- 1 | /lib/ 2 | -------------------------------------------------------------------------------- /ecosystem/qvism/core/src/compact.ts: -------------------------------------------------------------------------------- 1 | export function compact(array: Array): T[] { 2 | return array.filter((item) => item !== undefined) as T[]; 3 | } 4 | -------------------------------------------------------------------------------- /ecosystem/qvism/core/src/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./css"; 2 | export * from "./dts"; 3 | export * from "./js"; 4 | export type * from "./types"; 5 | -------------------------------------------------------------------------------- /ecosystem/qvism/core/src/logic.ts: -------------------------------------------------------------------------------- 1 | export const not = (fn: (arg: string) => boolean) => (arg: string) => !fn(arg); 2 | 3 | export const isBooleanString = (key: string): key is "true" | "false" => 4 | ["true", "false"].includes(key); 5 | 6 | export const booleanStringToBoolean = (key: "true" | "false"): boolean => key === "true"; 7 | -------------------------------------------------------------------------------- /ecosystem/qvism/core/src/reserved-words.ts: -------------------------------------------------------------------------------- 1 | const reservedWords = new Set(["switch"]); 2 | 3 | function isReservedWord(str: string) { 4 | return reservedWords.has(str); 5 | } 6 | 7 | export function escapeReservedWord(str: string) { 8 | if (!isReservedWord(str)) { 9 | return str; 10 | } 11 | 12 | return `${str}Style`; 13 | } 14 | -------------------------------------------------------------------------------- /ecosystem/rootage/cli/.gitignore: -------------------------------------------------------------------------------- 1 | /bin/ 2 | -------------------------------------------------------------------------------- /ecosystem/rootage/cli/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "ESNext", 4 | "module": "ESNext", 5 | "moduleResolution": "Bundler", 6 | "rootDir": "src" 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /ecosystem/rootage/core/.gitignore: -------------------------------------------------------------------------------- 1 | /lib/ 2 | -------------------------------------------------------------------------------- /ecosystem/rootage/core/src/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./analyzer"; 2 | export * from "./languages"; 3 | export * from "./parser"; 4 | -------------------------------------------------------------------------------- /ecosystem/rootage/core/src/languages/index.ts: -------------------------------------------------------------------------------- 1 | export * as css from "./css"; 2 | export * as exchange from "./exchange"; 3 | export * as jsonschema from "./jsonschema"; 4 | export * as typescript from "./typescript"; 5 | export * as tailwind3 from "./tailwind3"; 6 | export * as tailwind4 from "./tailwind4"; 7 | -------------------------------------------------------------------------------- /ecosystem/rootage/core/src/parser/authoring/index.ts: -------------------------------------------------------------------------------- 1 | export { parseComponentSpecDocument } from "./component-spec"; 2 | export { fromString, fromObject } from "./parse"; 3 | export { parseTokenCollectionsDocument } from "./token-collections"; 4 | export { parseTokensDocument } from "./tokens"; 5 | export type * from "./types"; 6 | -------------------------------------------------------------------------------- /ecosystem/rootage/core/src/parser/exchange/index.ts: -------------------------------------------------------------------------------- 1 | export { parseComponentSpecDocument } from "./component-spec"; 2 | export { fromString, fromObject } from "./parse"; 3 | export { parseTokenCollectionsDocument } from "./token-collections"; 4 | export { parseTokensDocument } from "./tokens"; 5 | export type * from "./types"; 6 | -------------------------------------------------------------------------------- /ecosystem/rootage/core/src/parser/index.ts: -------------------------------------------------------------------------------- 1 | export type * as AST from "./ast"; 2 | export * as Authoring from "./authoring/index"; 3 | export * as Exchange from "./exchange/index"; 4 | export * as factory from "./factory"; 5 | export { visitEachChild, visitNode } from "./visit"; 6 | -------------------------------------------------------------------------------- /ecosystem/rootage/core/src/utils/compact.ts: -------------------------------------------------------------------------------- 1 | export function compactObject>(obj: T): T { 2 | return Object.fromEntries(Object.entries(obj).filter(([, value]) => value != null)) as T; 3 | } 4 | -------------------------------------------------------------------------------- /examples/rspack-spa/.gitignore: -------------------------------------------------------------------------------- 1 | # Local 2 | .DS_Store 3 | *.local 4 | *.log* 5 | 6 | # Dist 7 | node_modules 8 | dist/ 9 | 10 | # IDE 11 | .vscode/* 12 | !.vscode/extensions.json 13 | .idea 14 | -------------------------------------------------------------------------------- /examples/rspack-spa/README.md: -------------------------------------------------------------------------------- 1 | # Rspack project 2 | 3 | ## Setup 4 | 5 | Install the dependencies: 6 | 7 | ```bash 8 | npm install 9 | ``` 10 | 11 | ## Get started 12 | 13 | Start the dev server: 14 | 15 | ```bash 16 | npm run dev 17 | ``` 18 | 19 | Build the app for production: 20 | 21 | ```bash 22 | npm run build 23 | ``` 24 | -------------------------------------------------------------------------------- /examples/rspack-spa/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Rspack + React + TS 8 | 9 | 10 |
11 | 12 | 13 | -------------------------------------------------------------------------------- /examples/rspack-spa/src/index.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daangn/seed-design/37a4e2a2c799007b58e23a1e20d68f54a88c0cd0/examples/rspack-spa/src/index.css -------------------------------------------------------------------------------- /examples/rspack-spa/src/main.tsx: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import ReactDOM from "react-dom/client"; 3 | import App from "./App.tsx"; 4 | import "./index.css"; 5 | import "@seed-design/css/base.css"; 6 | 7 | ReactDOM.createRoot(document.getElementById("root") as HTMLElement).render( 8 | 9 | 10 | , 11 | ); 12 | -------------------------------------------------------------------------------- /examples/stackflow-spa/.gitignore: -------------------------------------------------------------------------------- 1 | /dist/ 2 | !lib 3 | -------------------------------------------------------------------------------- /examples/stackflow-spa/seed-design.json: -------------------------------------------------------------------------------- 1 | { 2 | "rsc": false, 3 | "tsx": true, 4 | "path": "./src/seed-design" 5 | } 6 | -------------------------------------------------------------------------------- /examples/stackflow-spa/src/assets/peng.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daangn/seed-design/37a4e2a2c799007b58e23a1e20d68f54a88c0cd0/examples/stackflow-spa/src/assets/peng.jpeg -------------------------------------------------------------------------------- /examples/stackflow-spa/src/stackflow/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./Stack"; 2 | export * from "./useFlow"; 3 | -------------------------------------------------------------------------------- /examples/stackflow-spa/src/stackflow/theme.ts: -------------------------------------------------------------------------------- 1 | export const theme = /iphone|ipad|ipod/i.test(window.navigator.userAgent.toLowerCase()) 2 | ? "cupertino" 3 | : "android"; 4 | -------------------------------------------------------------------------------- /examples/stackflow-spa/src/stackflow/useFlow.ts: -------------------------------------------------------------------------------- 1 | import { useActions, useStepActions } from "@stackflow/react"; 2 | 3 | import type { TypeUseFlow, TypeUseStepFlow } from "./Stack"; 4 | 5 | export const useFlow: TypeUseFlow = useActions; 6 | export const useStepFlow: TypeUseStepFlow = useStepActions; 7 | -------------------------------------------------------------------------------- /examples/stackflow-spa/src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /packages/archive/design-token/.gitignore: -------------------------------------------------------------------------------- 1 | /lib/ 2 | -------------------------------------------------------------------------------- /packages/archive/design-token/__tests__/fonts.test.ts: -------------------------------------------------------------------------------- 1 | import * as t from 'tap'; 2 | 3 | import { fonts } from '../src'; 4 | 5 | t.test('fonts scheme - default', async t => { 6 | t.matchSnapshot(fonts.default.scheme); 7 | }); 8 | 9 | t.test('semantic fonts scheme - default', async t => { 10 | t.matchSnapshot(fonts.default.semanticScheme); 11 | }); 12 | -------------------------------------------------------------------------------- /packages/archive/design-token/design-token-explainer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daangn/seed-design/37a4e2a2c799007b58e23a1e20d68f54a88c0cd0/packages/archive/design-token/design-token-explainer.png -------------------------------------------------------------------------------- /packages/archive/design-token/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig.json", 3 | "compilerOptions": { 4 | "rootDir": "./src", 5 | "outDir": "./lib", 6 | "declaration": true, 7 | "declarationDir": "./lib" 8 | }, 9 | "include": [ 10 | "src/**/*" 11 | ] 12 | } 13 | -------------------------------------------------------------------------------- /packages/archive/gatsby-plugin-seed-design/index.js: -------------------------------------------------------------------------------- 1 | // noop 2 | -------------------------------------------------------------------------------- /packages/archive/gatsby-plugin-seed-design/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig.json", 3 | "compilerOptions": { 4 | "outDir": "lib", 5 | "jsx": "react" 6 | }, 7 | "include": ["gatsby-browser.tsx", "gatsby-ssr.tsx", "gatsby-node.ts", "wrapRootElement.tsx"] 8 | } 9 | -------------------------------------------------------------------------------- /packages/archive/icon/.gitignore: -------------------------------------------------------------------------------- 1 | *.DS_Store 2 | *.log 3 | *.tsbuildinfo 4 | *.zip 5 | *.env 6 | 7 | node_modules/ 8 | /lib/ 9 | /bin/ 10 | /dist/ 11 | 12 | /bin.mjs 13 | /bin.mjs.LEGAL.txt 14 | /bin.min.mjs 15 | /bin.min.mjs.LEGAL.txt 16 | -------------------------------------------------------------------------------- /packages/archive/icon/.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | "singleQuote": false, 4 | "semi": true, 5 | "tabWidth": 2, 6 | "useTabs": false, 7 | "trailingComma": "all", 8 | "printWidth": 80, 9 | "arrowParens": "always" 10 | } 11 | -------------------------------------------------------------------------------- /packages/archive/icon/src/constants.ts: -------------------------------------------------------------------------------- 1 | import pkg from "../package.json" assert { type: "json" }; 2 | 3 | export const YAML_SCHEMA_URL = `https://raw.githubusercontent.com/daangn/seed-design/%40seed-design/icon%40${pkg.version}/packages/icon/schema/schema.json`; 4 | -------------------------------------------------------------------------------- /packages/archive/icon/src/types.ts: -------------------------------------------------------------------------------- 1 | import type IconData from "@karrotmarket/karrot-ui-icon/lib/IconData"; 2 | 3 | export type IconName = keyof typeof IconData; 4 | export interface IconConfig { 5 | icons: IconName[]; 6 | 7 | componentPath: string; 8 | 9 | // spritePath: string; 10 | 11 | // contextPath?: string; 12 | } 13 | -------------------------------------------------------------------------------- /packages/archive/icon/src/utils/path.ts: -------------------------------------------------------------------------------- 1 | import { relative } from "path"; 2 | 3 | export const generateRelativeFilePath = (from: string, to: string) => { 4 | const relatived = relative(from, to); 5 | return relatived.startsWith("..") ? relatived : `./${relatived}`; 6 | }; 7 | -------------------------------------------------------------------------------- /packages/archive/react-emotion-theme/.gitignore: -------------------------------------------------------------------------------- 1 | /lib/ 2 | -------------------------------------------------------------------------------- /packages/archive/react-emotion-theme/src/index.ts: -------------------------------------------------------------------------------- 1 | export { DarkModeContext, ThemeStorageContext } from '@karrotmarket/react-theming'; 2 | export * from './KarrotThemeProvider'; 3 | -------------------------------------------------------------------------------- /packages/archive/react-emotion-theme/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig.json", 3 | "compilerOptions": { 4 | "rootDir": "src", 5 | "outDir": "lib", 6 | "jsx": "preserve" 7 | }, 8 | "include": [ 9 | "src" 10 | ] 11 | } 12 | -------------------------------------------------------------------------------- /packages/archive/react-stitches/.gitignore: -------------------------------------------------------------------------------- 1 | *.map 2 | /*.js 3 | /*.mjs 4 | /*.d.ts 5 | -------------------------------------------------------------------------------- /packages/archive/react-stitches/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig.json", 3 | "compilerOptions": { 4 | "rootDir": "src", 5 | "outDir": "." 6 | }, 7 | "include": [ 8 | "src", 9 | "typings" 10 | ], 11 | "exclude": [ 12 | "node_modules" 13 | ] 14 | } 15 | -------------------------------------------------------------------------------- /packages/archive/react-theming/.gitignore: -------------------------------------------------------------------------------- 1 | /lib/ 2 | -------------------------------------------------------------------------------- /packages/archive/react-theming/src/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./ThemeContext"; 2 | export * from "./useThemeBehavior"; 3 | export * from "./common"; 4 | export * from "./server"; 5 | -------------------------------------------------------------------------------- /packages/archive/react-theming/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig.json", 3 | "compilerOptions": { 4 | "rootDir": "src", 5 | "outDir": "lib", 6 | "emitDeclarationOnly": true, 7 | "declaration": true, 8 | "jsx": "preserve", 9 | "skipLibCheck": true 10 | }, 11 | "include": ["src"] 12 | } 13 | -------------------------------------------------------------------------------- /packages/archive/styled-components-theme/.gitignore: -------------------------------------------------------------------------------- 1 | /lib/ 2 | -------------------------------------------------------------------------------- /packages/archive/styled-components-theme/src/index.ts: -------------------------------------------------------------------------------- 1 | export { DarkModeContext, ThemeStorageContext } from '@karrotmarket/react-theming'; 2 | export * from './KarrotThemeProvider'; 3 | -------------------------------------------------------------------------------- /packages/archive/styled-components-theme/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig.json", 3 | "compilerOptions": { 4 | "rootDir": "src", 5 | "outDir": "lib", 6 | "jsx": "preserve" 7 | }, 8 | "include": [ 9 | "src" 10 | ] 11 | } 12 | -------------------------------------------------------------------------------- /packages/cli/.gitignore: -------------------------------------------------------------------------------- 1 | /bin/ 2 | -------------------------------------------------------------------------------- /packages/cli/README.md: -------------------------------------------------------------------------------- 1 | # @seed-design/cli 2 | 3 | ### How to test 4 | 5 | - Run `bun dev` in `@seed-design/component-docs` (snippet download) 6 | - Run `bun dev` here (watch mode) 7 | - You can test `bun seed-design ` in `@seed-design/example/cli` terminal 8 | -------------------------------------------------------------------------------- /packages/cli/env.d.ts: -------------------------------------------------------------------------------- 1 | declare global { 2 | namespace NodeJS { 3 | interface ProcessEnv { 4 | NODE_ENV: "dev" | "prod"; 5 | } 6 | } 7 | } 8 | 9 | export type {}; 10 | -------------------------------------------------------------------------------- /packages/cli/src/constants.ts: -------------------------------------------------------------------------------- 1 | export const BASE_URL = 2 | process.env.NODE_ENV === "prod" ? "https://seed-design.io" : "http://localhost:3000"; 3 | -------------------------------------------------------------------------------- /packages/cli/src/utils/color.ts: -------------------------------------------------------------------------------- 1 | import color from "picocolors"; 2 | 3 | export const highlight = (text: string) => color.cyan(text); 4 | -------------------------------------------------------------------------------- /packages/cli/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "ESNext", 4 | "module": "ESNext", 5 | "moduleResolution": "Bundler", 6 | "isolatedModules": false, 7 | "skipLibCheck": false, 8 | "baseUrl": ".", 9 | "paths": { 10 | "@/*": ["./*"] 11 | } 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /packages/codemod/.gitignore: -------------------------------------------------------------------------------- 1 | /bin/ 2 | /dist/ 3 | 4 | .env 5 | .report/ -------------------------------------------------------------------------------- /packages/codemod/src/transforms/replace-css-seed-design-color-variable/README.md: -------------------------------------------------------------------------------- 1 | # replace-css-seed-design-color-variable 2 | -------------------------------------------------------------------------------- /packages/codemod/src/transforms/replace-css-seed-design-typography-variable/README.md: -------------------------------------------------------------------------------- 1 | # replace-css-seed-design-typography-variable 2 | -------------------------------------------------------------------------------- /packages/codemod/src/transforms/replace-custom-imported-typography-variable/__tests__/transform.test.ts: -------------------------------------------------------------------------------- 1 | import { runFixtureTests } from "../../../utils/test.js"; 2 | import { join } from "node:path"; 3 | import transform from "../index.js"; 4 | 5 | runFixtureTests({ 6 | transform, 7 | fixturesDir: join(__dirname, "..", "__testfixtures__"), 8 | }); 9 | -------------------------------------------------------------------------------- /packages/codemod/src/transforms/replace-custom-seed-design-color/README.md: -------------------------------------------------------------------------------- 1 | # replace-custom-seed-design-color 2 | 3 | 커스텀 Seed Design 컬러 토큰을 V3 형식으로 변환하는 트랜스폼 -------------------------------------------------------------------------------- /packages/codemod/src/transforms/replace-custom-seed-design-color/__tests__/transform.test.ts: -------------------------------------------------------------------------------- 1 | import { runFixtureTests } from "../../../utils/test.js"; 2 | import { join } from "node:path"; 3 | import transform from "../index.js"; 4 | 5 | runFixtureTests({ 6 | transform, 7 | fixturesDir: join(__dirname, "..", "__testfixtures__"), 8 | }); 9 | -------------------------------------------------------------------------------- /packages/codemod/src/transforms/replace-custom-seed-design-text-component/README.md: -------------------------------------------------------------------------------- 1 | # replace-custom-seed-design-text-component 2 | -------------------------------------------------------------------------------- /packages/codemod/src/transforms/replace-custom-seed-design-typography/README.md: -------------------------------------------------------------------------------- 1 | # replace-custom-seed-design-typography 2 | -------------------------------------------------------------------------------- /packages/codemod/src/transforms/replace-custom-seed-design-typography/__tests__/transform.test.ts: -------------------------------------------------------------------------------- 1 | import { runFixtureTests } from "../../../utils/test"; 2 | import { join } from "node:path"; 3 | import transform from "../index.js"; 4 | 5 | runFixtureTests({ 6 | transform, 7 | fixturesDir: join(__dirname, "..", "__testfixtures__"), 8 | }); 9 | -------------------------------------------------------------------------------- /packages/codemod/src/transforms/replace-custom-seed-design-vars/README.md: -------------------------------------------------------------------------------- 1 | # replace-custom-seed-design-vars 2 | -------------------------------------------------------------------------------- /packages/codemod/src/transforms/replace-custom-seed-design-vars/__tests__/transform.test.ts: -------------------------------------------------------------------------------- 1 | import { runFixtureTests } from "../../../utils/test.js"; 2 | import { join } from "node:path"; 3 | import transform from "../index.js"; 4 | 5 | runFixtureTests({ 6 | transform, 7 | fixturesDir: join(__dirname, "..", "__testfixtures__"), 8 | }); 9 | -------------------------------------------------------------------------------- /packages/codemod/src/transforms/replace-custom-text-component-color-prop/README.md: -------------------------------------------------------------------------------- 1 | # replace-custom-text-component-color-prop 2 | -------------------------------------------------------------------------------- /packages/codemod/src/transforms/replace-custom-text-component-color-prop/__tests__/transform.test.ts: -------------------------------------------------------------------------------- 1 | import { runFixtureTests } from "../../../utils/test.js"; 2 | import { join } from "node:path"; 3 | import transform from "../index.js"; 4 | 5 | runFixtureTests({ 6 | transform, 7 | fixturesDir: join(__dirname, "..", "__testfixtures__"), 8 | }); 9 | -------------------------------------------------------------------------------- /packages/codemod/src/transforms/replace-react-icon/README.md: -------------------------------------------------------------------------------- 1 | # replace-react-icon 2 | -------------------------------------------------------------------------------- /packages/codemod/src/transforms/replace-react-icon/__testfixtures__/namespace-import.input.tsx: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | 3 | import * as Icons from "@seed-design/icon"; 4 | 5 | console.log(Icons.IconSellRegular); 6 | 7 | function Component() { 8 | return ; 9 | } -------------------------------------------------------------------------------- /packages/codemod/src/transforms/replace-react-icon/__testfixtures__/namespace-import.output.tsx: -------------------------------------------------------------------------------- 1 | // @ts-nocheck 2 | 3 | import * as Icons from "@karrotmarket/react-monochrome-icon"; 4 | 5 | console.log(Icons.IconPlusSquareLine); 6 | 7 | function Component() { 8 | return ; 9 | } 10 | -------------------------------------------------------------------------------- /packages/codemod/src/transforms/replace-seed-design-token-typography-classname/README.md: -------------------------------------------------------------------------------- 1 | # replace-seed-design-token-typography-classname 2 | -------------------------------------------------------------------------------- /packages/codemod/src/transforms/replace-seed-design-token-typography-classname/__tests__/transform.test.ts: -------------------------------------------------------------------------------- 1 | import { runFixtureTests } from "../../../utils/test.js"; 2 | import { join } from "node:path"; 3 | import transform from "../index.js"; 4 | 5 | runFixtureTests({ 6 | transform, 7 | fixturesDir: join(__dirname, "..", "__testfixtures__"), 8 | }); 9 | -------------------------------------------------------------------------------- /packages/codemod/src/transforms/replace-seed-design-token-vars/README.md: -------------------------------------------------------------------------------- 1 | # replace-seed-design-token-vars 2 | -------------------------------------------------------------------------------- /packages/codemod/src/transforms/replace-seed-design-token-vars/__testfixtures__/no-change.input.tsx: -------------------------------------------------------------------------------- 1 | import { vars as typoVars } from "@seed-design/css/vars/component/typography"; 2 | 3 | const color = typoVars.textStyleArticleBody.enabled.root; 4 | -------------------------------------------------------------------------------- /packages/codemod/src/transforms/replace-seed-design-token-vars/__testfixtures__/no-change.output.tsx: -------------------------------------------------------------------------------- 1 | import { vars as typoVars } from "@seed-design/css/vars/component/typography"; 2 | 3 | const color = typoVars.textStyleArticleBody.enabled.root; 4 | -------------------------------------------------------------------------------- /packages/codemod/src/transforms/replace-seed-design-token-vars/__tests__/transform.test.ts: -------------------------------------------------------------------------------- 1 | import { runFixtureTests } from "../../../utils/test.js"; 2 | import { join } from "node:path"; 3 | import transform from "../index.js"; 4 | 5 | runFixtureTests({ 6 | transform, 7 | fixturesDir: join(__dirname, "..", "__testfixtures__"), 8 | }); 9 | -------------------------------------------------------------------------------- /packages/codemod/src/transforms/replace-stitches-styled-typography/README.md: -------------------------------------------------------------------------------- 1 | # replace-stitches-styled-typography 2 | -------------------------------------------------------------------------------- /packages/codemod/src/transforms/replace-stitches-styled-typography/__tests__/transform.test.ts: -------------------------------------------------------------------------------- 1 | import { runFixtureTests } from "../../../utils/test.js"; 2 | import { join } from "node:path"; 3 | import transform from "../index.js"; 4 | 5 | runFixtureTests({ 6 | transform, 7 | fixturesDir: join(__dirname, "..", "__testfixtures__"), 8 | }); 9 | -------------------------------------------------------------------------------- /packages/codemod/src/transforms/replace-stitches-theme-color/README.md: -------------------------------------------------------------------------------- 1 | # replace-stitches-theme-color 2 | -------------------------------------------------------------------------------- /packages/codemod/src/transforms/replace-stitches-theme-color/__tests__/transform.test.ts: -------------------------------------------------------------------------------- 1 | import { runFixtureTests } from "../../../utils/test.js"; 2 | import { join } from "node:path"; 3 | import transform from "../index.js"; 4 | 5 | runFixtureTests({ 6 | transform, 7 | fixturesDir: join(__dirname, "..", "__testfixtures__"), 8 | }); 9 | -------------------------------------------------------------------------------- /packages/codemod/src/transforms/replace-tailwind-color/__tests__/transform.test.ts: -------------------------------------------------------------------------------- 1 | import { runFixtureTests } from "../../../utils/test.js"; 2 | import { join } from "node:path"; 3 | import transform from "../index.js"; 4 | 5 | runFixtureTests({ 6 | transform, 7 | fixturesDir: join(__dirname, "..", "__testfixtures__"), 8 | }); 9 | -------------------------------------------------------------------------------- /packages/codemod/src/transforms/replace-tailwind-typography/README.md: -------------------------------------------------------------------------------- 1 | # replace-tailwind-typography 2 | -------------------------------------------------------------------------------- /packages/codemod/src/transforms/replace-tailwind-typography/__tests__/transform.test.ts: -------------------------------------------------------------------------------- 1 | import { runFixtureTests } from "../../../utils/test.js"; 2 | import { join } from "node:path"; 3 | import transform from "../index.js"; 4 | 5 | runFixtureTests({ 6 | transform, 7 | fixturesDir: join(__dirname, "..", "__testfixtures__"), 8 | }); 9 | -------------------------------------------------------------------------------- /packages/css/README.md: -------------------------------------------------------------------------------- 1 | # @seed-design/css 2 | 3 | CSS implementation of Seed Design, providing design tokens and component styles and theming codes. 4 | -------------------------------------------------------------------------------- /packages/css/qvism.config.mjs: -------------------------------------------------------------------------------- 1 | import preset from "@seed-design/qvism-preset"; 2 | 3 | export default { 4 | ...preset, 5 | }; 6 | -------------------------------------------------------------------------------- /packages/css/recipes/select-box-group.css: -------------------------------------------------------------------------------- 1 | .seed-select-box-group { 2 | display: flex; 3 | flex-direction: column; 4 | width: 100% 5 | } -------------------------------------------------------------------------------- /packages/css/theming/index.d.ts: -------------------------------------------------------------------------------- 1 | import type { ColorMode } from "./mode"; 2 | export type { ColorMode }; 3 | export declare const generateThemingScript: ({ 4 | mode, 5 | }: { 6 | mode?: ColorMode; 7 | }) => string; 8 | -------------------------------------------------------------------------------- /packages/css/theming/mode.cjs: -------------------------------------------------------------------------------- 1 | const ColorModeValues = Object.freeze(["system", "light-only", "dark-only"]); 2 | const DefaultColorModeValue = ColorModeValues[0]; 3 | 4 | function isValidColorMode(mode) { 5 | return ColorModeValues.includes(mode); 6 | } 7 | 8 | module.exports = { 9 | ColorModeValues, 10 | DefaultColorModeValue, 11 | isValidColorMode, 12 | }; 13 | -------------------------------------------------------------------------------- /packages/css/theming/mode.d.ts: -------------------------------------------------------------------------------- 1 | export declare const ColorModeValues: readonly ["system", "light-only", "dark-only"]; 2 | export declare const DefaultColorModeValue: "system"; 3 | export type ColorMode = (typeof ColorModeValues)[number]; 4 | export declare function isValidColorMode(mode: any): mode is ColorMode; 5 | -------------------------------------------------------------------------------- /packages/css/theming/mode.mjs: -------------------------------------------------------------------------------- 1 | export const ColorModeValues = Object.freeze(["system", "light-only", "dark-only"]); 2 | export const DefaultColorModeValue = ColorModeValues[0]; 3 | 4 | export function isValidColorMode(mode) { 5 | return ColorModeValues.includes(mode); 6 | } 7 | -------------------------------------------------------------------------------- /packages/css/vars/color/index.d.ts: -------------------------------------------------------------------------------- 1 | export * as palette from "./palette"; 2 | export * as fg from "./fg"; 3 | export * as bg from "./bg"; 4 | export * as stroke from "./stroke"; 5 | export * as mannerTemp from "./manner-temp"; -------------------------------------------------------------------------------- /packages/css/vars/color/index.mjs: -------------------------------------------------------------------------------- 1 | export * as palette from "./palette.mjs"; 2 | export * as fg from "./fg.mjs"; 3 | export * as bg from "./bg.mjs"; 4 | export * as stroke from "./stroke.mjs"; 5 | export * as mannerTemp from "./manner-temp/index.mjs"; -------------------------------------------------------------------------------- /packages/css/vars/color/manner-temp/index.d.ts: -------------------------------------------------------------------------------- 1 | export * as l1 from "./l1"; 2 | export * as l2 from "./l2"; 3 | export * as l3 from "./l3"; 4 | export * as l4 from "./l4"; 5 | export * as l5 from "./l5"; 6 | export * as l6 from "./l6"; -------------------------------------------------------------------------------- /packages/css/vars/color/manner-temp/index.mjs: -------------------------------------------------------------------------------- 1 | export * as l1 from "./l1.mjs"; 2 | export * as l2 from "./l2.mjs"; 3 | export * as l3 from "./l3.mjs"; 4 | export * as l4 from "./l4.mjs"; 5 | export * as l5 from "./l5.mjs"; 6 | export * as l6 from "./l6.mjs"; -------------------------------------------------------------------------------- /packages/css/vars/color/manner-temp/l1.d.ts: -------------------------------------------------------------------------------- 1 | export declare const bg = "var(--seed-color-manner-temp-l1-bg)"; 2 | export declare const text = "var(--seed-color-manner-temp-l1-text)"; -------------------------------------------------------------------------------- /packages/css/vars/color/manner-temp/l1.mjs: -------------------------------------------------------------------------------- 1 | export const bg = "var(--seed-color-manner-temp-l1-bg)"; 2 | export const text = "var(--seed-color-manner-temp-l1-text)"; -------------------------------------------------------------------------------- /packages/css/vars/color/manner-temp/l2.d.ts: -------------------------------------------------------------------------------- 1 | export declare const bg = "var(--seed-color-manner-temp-l2-bg)"; 2 | export declare const text = "var(--seed-color-manner-temp-l2-text)"; -------------------------------------------------------------------------------- /packages/css/vars/color/manner-temp/l2.mjs: -------------------------------------------------------------------------------- 1 | export const bg = "var(--seed-color-manner-temp-l2-bg)"; 2 | export const text = "var(--seed-color-manner-temp-l2-text)"; -------------------------------------------------------------------------------- /packages/css/vars/color/manner-temp/l3.d.ts: -------------------------------------------------------------------------------- 1 | export declare const bg = "var(--seed-color-manner-temp-l3-bg)"; 2 | export declare const text = "var(--seed-color-manner-temp-l3-text)"; -------------------------------------------------------------------------------- /packages/css/vars/color/manner-temp/l3.mjs: -------------------------------------------------------------------------------- 1 | export const bg = "var(--seed-color-manner-temp-l3-bg)"; 2 | export const text = "var(--seed-color-manner-temp-l3-text)"; -------------------------------------------------------------------------------- /packages/css/vars/color/manner-temp/l4.d.ts: -------------------------------------------------------------------------------- 1 | export declare const bg = "var(--seed-color-manner-temp-l4-bg)"; 2 | export declare const text = "var(--seed-color-manner-temp-l4-text)"; -------------------------------------------------------------------------------- /packages/css/vars/color/manner-temp/l4.mjs: -------------------------------------------------------------------------------- 1 | export const bg = "var(--seed-color-manner-temp-l4-bg)"; 2 | export const text = "var(--seed-color-manner-temp-l4-text)"; -------------------------------------------------------------------------------- /packages/css/vars/color/manner-temp/l5.d.ts: -------------------------------------------------------------------------------- 1 | export declare const bg = "var(--seed-color-manner-temp-l5-bg)"; 2 | export declare const text = "var(--seed-color-manner-temp-l5-text)"; -------------------------------------------------------------------------------- /packages/css/vars/color/manner-temp/l5.mjs: -------------------------------------------------------------------------------- 1 | export const bg = "var(--seed-color-manner-temp-l5-bg)"; 2 | export const text = "var(--seed-color-manner-temp-l5-text)"; -------------------------------------------------------------------------------- /packages/css/vars/color/manner-temp/l6.d.ts: -------------------------------------------------------------------------------- 1 | export declare const bg = "var(--seed-color-manner-temp-l6-bg)"; 2 | export declare const text = "var(--seed-color-manner-temp-l6-text)"; -------------------------------------------------------------------------------- /packages/css/vars/color/manner-temp/l6.mjs: -------------------------------------------------------------------------------- 1 | export const bg = "var(--seed-color-manner-temp-l6-bg)"; 2 | export const text = "var(--seed-color-manner-temp-l6-text)"; -------------------------------------------------------------------------------- /packages/css/vars/component/divider.d.ts: -------------------------------------------------------------------------------- 1 | export declare const vars: { 2 | "base": { 3 | "enabled": { 4 | "root": { 5 | "thickness": "1px" 6 | } 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /packages/css/vars/component/divider.mjs: -------------------------------------------------------------------------------- 1 | export const vars = { 2 | "base": { 3 | "enabled": { 4 | "root": { 5 | "thickness": "1px" 6 | } 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /packages/css/vars/component/identity-placeholder.d.ts: -------------------------------------------------------------------------------- 1 | export declare const vars: { 2 | "base": { 3 | "enabled": { 4 | "root": { 5 | "color": "var(--seed-color-palette-gray-400)" 6 | }, 7 | "image": { 8 | "color": "#f7f8fa" 9 | } 10 | } 11 | } 12 | } -------------------------------------------------------------------------------- /packages/css/vars/component/identity-placeholder.mjs: -------------------------------------------------------------------------------- 1 | export const vars = { 2 | "base": { 3 | "enabled": { 4 | "root": { 5 | "color": "var(--seed-color-palette-gray-400)" 6 | }, 7 | "image": { 8 | "color": "#f7f8fa" 9 | } 10 | } 11 | } 12 | } -------------------------------------------------------------------------------- /packages/css/vars/dimension/spacing-x.d.ts: -------------------------------------------------------------------------------- 1 | export declare const betweenChips = "var(--seed-dimension-spacing-x-between-chips)"; 2 | export declare const globalGutter = "var(--seed-dimension-spacing-x-global-gutter)"; -------------------------------------------------------------------------------- /packages/css/vars/dimension/spacing-x.mjs: -------------------------------------------------------------------------------- 1 | export const betweenChips = "var(--seed-dimension-spacing-x-between-chips)"; 2 | export const globalGutter = "var(--seed-dimension-spacing-x-global-gutter)"; -------------------------------------------------------------------------------- /packages/css/vars/dimension/spacing-y.mjs: -------------------------------------------------------------------------------- 1 | export const componentDefault = "var(--seed-dimension-spacing-y-component-default)"; 2 | export const navToTitle = "var(--seed-dimension-spacing-y-nav-to-title)"; 3 | export const screenBottom = "var(--seed-dimension-spacing-y-screen-bottom)"; 4 | export const betweenText = "var(--seed-dimension-spacing-y-between-text)"; -------------------------------------------------------------------------------- /packages/css/vars/duration.d.ts: -------------------------------------------------------------------------------- 1 | export declare const d1 = "var(--seed-duration-d1)"; 2 | export declare const d2 = "var(--seed-duration-d2)"; 3 | export declare const d3 = "var(--seed-duration-d3)"; 4 | export declare const d4 = "var(--seed-duration-d4)"; 5 | export declare const d5 = "var(--seed-duration-d5)"; 6 | export declare const d6 = "var(--seed-duration-d6)"; -------------------------------------------------------------------------------- /packages/css/vars/duration.mjs: -------------------------------------------------------------------------------- 1 | export const d1 = "var(--seed-duration-d1)"; 2 | export const d2 = "var(--seed-duration-d2)"; 3 | export const d3 = "var(--seed-duration-d3)"; 4 | export const d4 = "var(--seed-duration-d4)"; 5 | export const d5 = "var(--seed-duration-d5)"; 6 | export const d6 = "var(--seed-duration-d6)"; -------------------------------------------------------------------------------- /packages/css/vars/font-weight.d.ts: -------------------------------------------------------------------------------- 1 | export declare const regular = "var(--seed-font-weight-regular)"; 2 | export declare const medium = "var(--seed-font-weight-medium)"; 3 | export declare const bold = "var(--seed-font-weight-bold)"; -------------------------------------------------------------------------------- /packages/css/vars/font-weight.mjs: -------------------------------------------------------------------------------- 1 | export const regular = "var(--seed-font-weight-regular)"; 2 | export const medium = "var(--seed-font-weight-medium)"; 3 | export const bold = "var(--seed-font-weight-bold)"; -------------------------------------------------------------------------------- /packages/css/vars/gradient.d.ts: -------------------------------------------------------------------------------- 1 | export declare const shimmer = "var(--seed-gradient-shimmer)"; -------------------------------------------------------------------------------- /packages/css/vars/gradient.mjs: -------------------------------------------------------------------------------- 1 | export const shimmer = "var(--seed-gradient-shimmer)"; -------------------------------------------------------------------------------- /packages/css/vars/index.mjs: -------------------------------------------------------------------------------- 1 | export * as vars from "./vars.mjs"; -------------------------------------------------------------------------------- /packages/design-token/.gitignore: -------------------------------------------------------------------------------- 1 | /lib/ 2 | -------------------------------------------------------------------------------- /packages/design-token/design-token-explainer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daangn/seed-design/37a4e2a2c799007b58e23a1e20d68f54a88c0cd0/packages/design-token/design-token-explainer.png -------------------------------------------------------------------------------- /packages/design-token/src/classNames/index.ts: -------------------------------------------------------------------------------- 1 | export * as $semantic from "./semantic"; 2 | -------------------------------------------------------------------------------- /packages/design-token/src/classNames/semantic/index.ts: -------------------------------------------------------------------------------- 1 | export * as typography from "./typography"; 2 | -------------------------------------------------------------------------------- /packages/design-token/src/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./types"; 2 | 3 | export * as vars from "./vars"; 4 | export * as classNames from "./classNames"; 5 | -------------------------------------------------------------------------------- /packages/design-token/src/types.ts: -------------------------------------------------------------------------------- 1 | import type * as vars from "./vars"; 2 | 3 | type LooseValueType = T extends object 4 | ? { readonly [K in keyof T]: LooseValueType } 5 | : T extends string 6 | ? string 7 | : never; 8 | 9 | export type TokenObject = LooseValueType; 10 | -------------------------------------------------------------------------------- /packages/design-token/src/vars/index.ts: -------------------------------------------------------------------------------- 1 | export * as $scale from "./scale"; 2 | export * as $static from "./static"; 3 | export * as $semantic from "./semantic"; 4 | -------------------------------------------------------------------------------- /packages/design-token/src/vars/scale/index.ts: -------------------------------------------------------------------------------- 1 | export * as color from "./color"; 2 | export * as dimension from "./dimension"; 3 | export * as letterSpacing from "./letterSpacing"; 4 | -------------------------------------------------------------------------------- /packages/design-token/src/vars/scale/letterSpacing.ts: -------------------------------------------------------------------------------- 1 | export const none = "var(--seed-scale-letter-spacing-none)"; 2 | export const narrow200 = "var(--seed-scale-letter-spacing-narrow-200)"; 3 | export const narrow300 = "var(--seed-scale-letter-spacing-narrow-300)"; 4 | export const narrow400 = "var(--seed-scale-letter-spacing-narrow-400)"; 5 | -------------------------------------------------------------------------------- /packages/design-token/src/vars/semantic/index.ts: -------------------------------------------------------------------------------- 1 | export * as color from "./color"; 2 | export * as typography from "./typography"; 3 | -------------------------------------------------------------------------------- /packages/design-token/src/vars/static/fontWeight.ts: -------------------------------------------------------------------------------- 1 | export const regular = "var(--seed-static-font-weight-regular)"; 2 | export const bold = "var(--seed-static-font-weight-bold)"; 3 | -------------------------------------------------------------------------------- /packages/design-token/src/vars/static/index.ts: -------------------------------------------------------------------------------- 1 | export * as color from "./color"; 2 | export * as fontWeight from "./fontWeight"; 3 | export * as lineHeight from "./lineHeight"; 4 | -------------------------------------------------------------------------------- /packages/design-token/src/vars/static/lineHeight.ts: -------------------------------------------------------------------------------- 1 | export const staticSmall = "var(--seed-static-line-height-static-small)"; 2 | export const staticMedium = "var(--seed-static-line-height-static-medium)"; 3 | export const staticLarge = "var(--seed-static-line-height-static-large)"; 4 | -------------------------------------------------------------------------------- /packages/design-token/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "ESNext", 4 | "module": "ESNext", 5 | "moduleResolution": "Bundler", 6 | "rootDir": "src", 7 | "outDir": "lib", 8 | "skipLibCheck": true, 9 | "declaration": true 10 | }, 11 | "include": ["src"] 12 | } 13 | -------------------------------------------------------------------------------- /packages/figma/.gitignore: -------------------------------------------------------------------------------- 1 | /test/fixtures/ -------------------------------------------------------------------------------- /packages/figma/src/codegen/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./component-properties"; 2 | export * from "./core"; 3 | export * from "./targets"; 4 | -------------------------------------------------------------------------------- /packages/figma/src/codegen/targets/figma/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./pipeline"; 2 | export * from "./frame"; 3 | export * from "./instance"; 4 | export * from "./props"; 5 | export * from "./shape"; 6 | export * from "./text"; 7 | -------------------------------------------------------------------------------- /packages/figma/src/codegen/targets/index.ts: -------------------------------------------------------------------------------- 1 | export * as figma from "./figma"; 2 | export * as react from "./react"; 3 | -------------------------------------------------------------------------------- /packages/figma/src/codegen/targets/react/component/deps.interface.ts: -------------------------------------------------------------------------------- 1 | import type { IconHandler } from "../icon"; 2 | import type { ReactValueResolver } from "../value-resolver"; 3 | 4 | export interface ComponentHandlerDeps { 5 | iconHandler: IconHandler; 6 | valueResolver: ReactValueResolver; 7 | } 8 | -------------------------------------------------------------------------------- /packages/figma/src/codegen/targets/react/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./props"; 2 | export * from "./shape"; 3 | export * from "./frame"; 4 | export * from "./instance"; 5 | export * from "./text"; 6 | export * from "./component"; 7 | export * from "./pipeline"; 8 | -------------------------------------------------------------------------------- /packages/figma/src/entities/component.interface.ts: -------------------------------------------------------------------------------- 1 | import type { ComponentPropertyDefinition } from "@/codegen"; 2 | 3 | export interface ComponentMetadata { 4 | name: string; 5 | key: string; 6 | componentPropertyDefinitions: Record; 7 | } 8 | -------------------------------------------------------------------------------- /packages/figma/src/entities/icon.interface.ts: -------------------------------------------------------------------------------- 1 | export interface IconData { 2 | name: string; 3 | type: "monochrome" | "multicolor"; 4 | weight?: string; 5 | } 6 | -------------------------------------------------------------------------------- /packages/figma/src/entities/icon.repository.ts: -------------------------------------------------------------------------------- 1 | import type { IconData } from "./icon.interface"; 2 | 3 | export interface IconRepository { 4 | getOne(key: string): IconData; 5 | } 6 | 7 | export function createStaticIconRepository(iconRecord: Record) { 8 | return { 9 | getOne: (key: string) => iconRecord[key], 10 | }; 11 | } 12 | -------------------------------------------------------------------------------- /packages/figma/src/entities/style.interface.ts: -------------------------------------------------------------------------------- 1 | import type { Style as FigmaStyle, StyleType as FigmaStyleType } from "@figma/rest-api-spec"; 2 | 3 | export type Style = FigmaStyle; 4 | 5 | export type StyleType = FigmaStyleType; 6 | -------------------------------------------------------------------------------- /packages/figma/src/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./normalizer"; 2 | export * from "./codegen"; 3 | export * from "./entities"; 4 | -------------------------------------------------------------------------------- /packages/figma/src/normalizer/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./types"; 2 | export { createRestNormalizer } from "./from-rest"; 3 | export { createPluginNormalizer } from "./from-plugin"; 4 | -------------------------------------------------------------------------------- /packages/mcp/.gitignore: -------------------------------------------------------------------------------- 1 | .env 2 | /bin/ -------------------------------------------------------------------------------- /packages/migration-index/color.d.ts: -------------------------------------------------------------------------------- 1 | import type { FoundationTokenMapping } from "./types"; 2 | 3 | export declare const semanticColorMappings: FoundationTokenMapping[]; 4 | export declare const scaleColorMappings: FoundationTokenMapping[]; 5 | export declare const staticColorMappings: FoundationTokenMapping[]; 6 | export declare const colorMappings: FoundationTokenMapping[]; 7 | -------------------------------------------------------------------------------- /packages/migration-index/iconography.d.ts: -------------------------------------------------------------------------------- 1 | import type { FoundationTokenMapping } from "./types"; 2 | 3 | export declare const monochromeIconMappings: FoundationTokenMapping[]; 4 | export declare const multicolorIconMappings: FoundationTokenMapping[]; 5 | export declare const iconMappings: FoundationTokenMapping[]; 6 | -------------------------------------------------------------------------------- /packages/migration-index/index.mjs: -------------------------------------------------------------------------------- 1 | export { 2 | colorMappings, 3 | scaleColorMappings, 4 | semanticColorMappings, 5 | staticColorMappings, 6 | } from "./color.mjs"; 7 | export { typographyMappings } from "./typography.mjs"; 8 | export { iconMappings, monochromeIconMappings, multicolorIconMappings } from "./iconography.mjs"; 9 | -------------------------------------------------------------------------------- /packages/migration-index/types.d.ts: -------------------------------------------------------------------------------- 1 | export interface FoundationTokenMapping { 2 | previous: string; 3 | next: string[]; 4 | description?: string; 5 | alternative?: string[]; 6 | needsVerification?: boolean; 7 | } 8 | -------------------------------------------------------------------------------- /packages/migration-index/typography.d.ts: -------------------------------------------------------------------------------- 1 | import type { FoundationTokenMapping } from "./types"; 2 | 3 | export declare const typographyMappings: FoundationTokenMapping[]; 4 | -------------------------------------------------------------------------------- /packages/qvism-preset/.gitignore: -------------------------------------------------------------------------------- 1 | /lib/ 2 | -------------------------------------------------------------------------------- /packages/qvism-preset/README.md: -------------------------------------------------------------------------------- 1 | # @seed-design/qvism-preset 2 | 3 | This package is a preset for [@seed-design/ecosystem/qvism](../../ecosystem/qvism). 4 | 5 | Following libraries are generated from this preset. 6 | 7 | - [@seed-design/css/*.css](../css) 8 | - [@seed-design/css/recipes](../css/recipes) 9 | -------------------------------------------------------------------------------- /packages/qvism-preset/src/vars/color/index.d.ts: -------------------------------------------------------------------------------- 1 | export * as palette from "./palette"; 2 | export * as fg from "./fg"; 3 | export * as bg from "./bg"; 4 | export * as stroke from "./stroke"; 5 | export * as mannerTemp from "./manner-temp"; -------------------------------------------------------------------------------- /packages/qvism-preset/src/vars/color/index.mjs: -------------------------------------------------------------------------------- 1 | export * as palette from "./palette.mjs"; 2 | export * as fg from "./fg.mjs"; 3 | export * as bg from "./bg.mjs"; 4 | export * as stroke from "./stroke.mjs"; 5 | export * as mannerTemp from "./manner-temp/index.mjs"; -------------------------------------------------------------------------------- /packages/qvism-preset/src/vars/color/manner-temp/index.d.ts: -------------------------------------------------------------------------------- 1 | export * as l1 from "./l1"; 2 | export * as l2 from "./l2"; 3 | export * as l3 from "./l3"; 4 | export * as l4 from "./l4"; 5 | export * as l5 from "./l5"; 6 | export * as l6 from "./l6"; -------------------------------------------------------------------------------- /packages/qvism-preset/src/vars/color/manner-temp/index.mjs: -------------------------------------------------------------------------------- 1 | export * as l1 from "./l1.mjs"; 2 | export * as l2 from "./l2.mjs"; 3 | export * as l3 from "./l3.mjs"; 4 | export * as l4 from "./l4.mjs"; 5 | export * as l5 from "./l5.mjs"; 6 | export * as l6 from "./l6.mjs"; -------------------------------------------------------------------------------- /packages/qvism-preset/src/vars/color/manner-temp/l1.d.ts: -------------------------------------------------------------------------------- 1 | export declare const bg = "var(--seed-color-manner-temp-l1-bg)"; 2 | export declare const text = "var(--seed-color-manner-temp-l1-text)"; -------------------------------------------------------------------------------- /packages/qvism-preset/src/vars/color/manner-temp/l1.mjs: -------------------------------------------------------------------------------- 1 | export const bg = "var(--seed-color-manner-temp-l1-bg)"; 2 | export const text = "var(--seed-color-manner-temp-l1-text)"; -------------------------------------------------------------------------------- /packages/qvism-preset/src/vars/color/manner-temp/l2.d.ts: -------------------------------------------------------------------------------- 1 | export declare const bg = "var(--seed-color-manner-temp-l2-bg)"; 2 | export declare const text = "var(--seed-color-manner-temp-l2-text)"; -------------------------------------------------------------------------------- /packages/qvism-preset/src/vars/color/manner-temp/l2.mjs: -------------------------------------------------------------------------------- 1 | export const bg = "var(--seed-color-manner-temp-l2-bg)"; 2 | export const text = "var(--seed-color-manner-temp-l2-text)"; -------------------------------------------------------------------------------- /packages/qvism-preset/src/vars/color/manner-temp/l3.d.ts: -------------------------------------------------------------------------------- 1 | export declare const bg = "var(--seed-color-manner-temp-l3-bg)"; 2 | export declare const text = "var(--seed-color-manner-temp-l3-text)"; -------------------------------------------------------------------------------- /packages/qvism-preset/src/vars/color/manner-temp/l3.mjs: -------------------------------------------------------------------------------- 1 | export const bg = "var(--seed-color-manner-temp-l3-bg)"; 2 | export const text = "var(--seed-color-manner-temp-l3-text)"; -------------------------------------------------------------------------------- /packages/qvism-preset/src/vars/color/manner-temp/l4.d.ts: -------------------------------------------------------------------------------- 1 | export declare const bg = "var(--seed-color-manner-temp-l4-bg)"; 2 | export declare const text = "var(--seed-color-manner-temp-l4-text)"; -------------------------------------------------------------------------------- /packages/qvism-preset/src/vars/color/manner-temp/l4.mjs: -------------------------------------------------------------------------------- 1 | export const bg = "var(--seed-color-manner-temp-l4-bg)"; 2 | export const text = "var(--seed-color-manner-temp-l4-text)"; -------------------------------------------------------------------------------- /packages/qvism-preset/src/vars/color/manner-temp/l5.d.ts: -------------------------------------------------------------------------------- 1 | export declare const bg = "var(--seed-color-manner-temp-l5-bg)"; 2 | export declare const text = "var(--seed-color-manner-temp-l5-text)"; -------------------------------------------------------------------------------- /packages/qvism-preset/src/vars/color/manner-temp/l5.mjs: -------------------------------------------------------------------------------- 1 | export const bg = "var(--seed-color-manner-temp-l5-bg)"; 2 | export const text = "var(--seed-color-manner-temp-l5-text)"; -------------------------------------------------------------------------------- /packages/qvism-preset/src/vars/color/manner-temp/l6.d.ts: -------------------------------------------------------------------------------- 1 | export declare const bg = "var(--seed-color-manner-temp-l6-bg)"; 2 | export declare const text = "var(--seed-color-manner-temp-l6-text)"; -------------------------------------------------------------------------------- /packages/qvism-preset/src/vars/color/manner-temp/l6.mjs: -------------------------------------------------------------------------------- 1 | export const bg = "var(--seed-color-manner-temp-l6-bg)"; 2 | export const text = "var(--seed-color-manner-temp-l6-text)"; -------------------------------------------------------------------------------- /packages/qvism-preset/src/vars/component/divider.d.ts: -------------------------------------------------------------------------------- 1 | export declare const vars: { 2 | "base": { 3 | "enabled": { 4 | "root": { 5 | "thickness": "1px" 6 | } 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /packages/qvism-preset/src/vars/component/divider.mjs: -------------------------------------------------------------------------------- 1 | export const vars = { 2 | "base": { 3 | "enabled": { 4 | "root": { 5 | "thickness": "1px" 6 | } 7 | } 8 | } 9 | } -------------------------------------------------------------------------------- /packages/qvism-preset/src/vars/component/identity-placeholder.d.ts: -------------------------------------------------------------------------------- 1 | export declare const vars: { 2 | "base": { 3 | "enabled": { 4 | "root": { 5 | "color": "var(--seed-color-palette-gray-400)" 6 | }, 7 | "image": { 8 | "color": "#f7f8fa" 9 | } 10 | } 11 | } 12 | } -------------------------------------------------------------------------------- /packages/qvism-preset/src/vars/component/identity-placeholder.mjs: -------------------------------------------------------------------------------- 1 | export const vars = { 2 | "base": { 3 | "enabled": { 4 | "root": { 5 | "color": "var(--seed-color-palette-gray-400)" 6 | }, 7 | "image": { 8 | "color": "#f7f8fa" 9 | } 10 | } 11 | } 12 | } -------------------------------------------------------------------------------- /packages/qvism-preset/src/vars/dimension/spacing-x.d.ts: -------------------------------------------------------------------------------- 1 | export declare const betweenChips = "var(--seed-dimension-spacing-x-between-chips)"; 2 | export declare const globalGutter = "var(--seed-dimension-spacing-x-global-gutter)"; -------------------------------------------------------------------------------- /packages/qvism-preset/src/vars/dimension/spacing-x.mjs: -------------------------------------------------------------------------------- 1 | export const betweenChips = "var(--seed-dimension-spacing-x-between-chips)"; 2 | export const globalGutter = "var(--seed-dimension-spacing-x-global-gutter)"; -------------------------------------------------------------------------------- /packages/qvism-preset/src/vars/dimension/spacing-y.mjs: -------------------------------------------------------------------------------- 1 | export const componentDefault = "var(--seed-dimension-spacing-y-component-default)"; 2 | export const navToTitle = "var(--seed-dimension-spacing-y-nav-to-title)"; 3 | export const screenBottom = "var(--seed-dimension-spacing-y-screen-bottom)"; 4 | export const betweenText = "var(--seed-dimension-spacing-y-between-text)"; -------------------------------------------------------------------------------- /packages/qvism-preset/src/vars/duration.mjs: -------------------------------------------------------------------------------- 1 | export const d1 = "var(--seed-duration-d1)"; 2 | export const d2 = "var(--seed-duration-d2)"; 3 | export const d3 = "var(--seed-duration-d3)"; 4 | export const d4 = "var(--seed-duration-d4)"; 5 | export const d5 = "var(--seed-duration-d5)"; 6 | export const d6 = "var(--seed-duration-d6)"; -------------------------------------------------------------------------------- /packages/qvism-preset/src/vars/font-weight.d.ts: -------------------------------------------------------------------------------- 1 | export declare const regular = "var(--seed-font-weight-regular)"; 2 | export declare const medium = "var(--seed-font-weight-medium)"; 3 | export declare const bold = "var(--seed-font-weight-bold)"; -------------------------------------------------------------------------------- /packages/qvism-preset/src/vars/font-weight.mjs: -------------------------------------------------------------------------------- 1 | export const regular = "var(--seed-font-weight-regular)"; 2 | export const medium = "var(--seed-font-weight-medium)"; 3 | export const bold = "var(--seed-font-weight-bold)"; -------------------------------------------------------------------------------- /packages/qvism-preset/src/vars/gradient.d.ts: -------------------------------------------------------------------------------- 1 | export declare const shimmer = "var(--seed-gradient-shimmer)"; -------------------------------------------------------------------------------- /packages/qvism-preset/src/vars/gradient.mjs: -------------------------------------------------------------------------------- 1 | export const shimmer = "var(--seed-gradient-shimmer)"; -------------------------------------------------------------------------------- /packages/qvism-preset/src/vars/index.mjs: -------------------------------------------------------------------------------- 1 | export * as vars from "./vars.mjs"; -------------------------------------------------------------------------------- /packages/react-headless/avatar/.gitignore: -------------------------------------------------------------------------------- 1 | /lib/ 2 | -------------------------------------------------------------------------------- /packages/react-headless/avatar/src/Avatar.namespace.ts: -------------------------------------------------------------------------------- 1 | export { 2 | AvatarFallback as Fallback, 3 | AvatarImage as Image, 4 | AvatarRoot as Root, 5 | } from "./Avatar"; 6 | 7 | export type { 8 | AvatarFallbackProps as FallbackProps, 9 | AvatarImageProps as ImageProps, 10 | AvatarRootProps as RootProps, 11 | } from "./Avatar"; 12 | -------------------------------------------------------------------------------- /packages/react-headless/avatar/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../../tsconfig.headless.json", 3 | "compilerOptions": { 4 | "rootDir": "src", 5 | "outDir": "lib", 6 | }, 7 | "include": ["src"], 8 | "exclude": ["src/**/*.test.*"] 9 | } 10 | -------------------------------------------------------------------------------- /packages/react-headless/checkbox/.gitignore: -------------------------------------------------------------------------------- 1 | /lib/ 2 | -------------------------------------------------------------------------------- /packages/react-headless/checkbox/src/Checkbox.namespace.ts: -------------------------------------------------------------------------------- 1 | export { 2 | CheckboxRoot as Root, 3 | CheckboxControl as Control, 4 | CheckboxHiddenInput as HiddenInput, 5 | type CheckboxRootProps as RootProps, 6 | type CheckboxControlProps as ControlProps, 7 | type CheckboxHiddenInputProps as HiddenInputProps, 8 | } from "./Checkbox"; 9 | -------------------------------------------------------------------------------- /packages/react-headless/checkbox/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../../tsconfig.headless.json", 3 | "compilerOptions": { 4 | "rootDir": "src", 5 | "outDir": "lib", 6 | }, 7 | "include": ["src"], 8 | "exclude": ["src/**/*.test.*"] 9 | } 10 | -------------------------------------------------------------------------------- /packages/react-headless/dialog/.gitignore: -------------------------------------------------------------------------------- 1 | /lib/ 2 | /dist/ 3 | -------------------------------------------------------------------------------- /packages/react-headless/dialog/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../../tsconfig.headless.json", 3 | "compilerOptions": { 4 | "rootDir": "src", 5 | "outDir": "lib", 6 | }, 7 | "include": ["src"], 8 | "exclude": ["src/**/*.test.*"] 9 | } 10 | -------------------------------------------------------------------------------- /packages/react-headless/popover/.gitignore: -------------------------------------------------------------------------------- 1 | /lib/ 2 | /dist/ 3 | -------------------------------------------------------------------------------- /packages/react-headless/popover/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../../tsconfig.headless.json", 3 | "compilerOptions": { 4 | "rootDir": "src", 5 | "outDir": "lib", 6 | }, 7 | "include": ["src"], 8 | "exclude": ["src/**/*.test.*"] 9 | } 10 | -------------------------------------------------------------------------------- /packages/react-headless/portal/.gitignore: -------------------------------------------------------------------------------- 1 | /lib/ 2 | /dist/ 3 | -------------------------------------------------------------------------------- /packages/react-headless/portal/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # @seed-design/react-portal 2 | 3 | ## 0.0.2 4 | 5 | ### Patch Changes 6 | 7 | - 7851a31: RSC 지원을 위한 "use client" directive를 추가합니다. 8 | 9 | ## 0.0.1 10 | 11 | ### Patch Changes 12 | 13 | - 3efe201: `` 컴포넌트를 제공합니다. 14 | -------------------------------------------------------------------------------- /packages/react-headless/portal/src/index.ts: -------------------------------------------------------------------------------- 1 | export { 2 | type PortalProps, 3 | Portal, 4 | } from "./Portal"; 5 | -------------------------------------------------------------------------------- /packages/react-headless/portal/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../../tsconfig.headless.json", 3 | "compilerOptions": { 4 | "rootDir": "src", 5 | "outDir": "lib", 6 | }, 7 | "include": ["src"], 8 | "exclude": ["src/**/*.test.*"] 9 | } 10 | -------------------------------------------------------------------------------- /packages/react-headless/primitive/.gitignore: -------------------------------------------------------------------------------- 1 | /lib/ 2 | -------------------------------------------------------------------------------- /packages/react-headless/primitive/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../../tsconfig.headless.json", 3 | "compilerOptions": { 4 | "rootDir": "src", 5 | "outDir": "lib", 6 | }, 7 | "include": ["src"], 8 | "exclude": ["src/**/*.test.*"] 9 | } 10 | -------------------------------------------------------------------------------- /packages/react-headless/progress/src/ProgressCircle.namespace.ts: -------------------------------------------------------------------------------- 1 | export { 2 | ProgressCircleRoot as Root, 3 | ProgressCircleTrack as Track, 4 | ProgressCircleRange as Range, 5 | type ProgressCircleRootProps as RootProps, 6 | type ProgressCircleTrackProps as TrackProps, 7 | type ProgressCircleRangeProps as RangeProps, 8 | } from "./ProgressCircle"; 9 | -------------------------------------------------------------------------------- /packages/react-headless/progress/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../../tsconfig.headless.json", 3 | "compilerOptions": { 4 | "rootDir": "src", 5 | "outDir": "lib", 6 | }, 7 | "include": ["src"], 8 | "exclude": ["src/**/*.test.*"] 9 | } 10 | -------------------------------------------------------------------------------- /packages/react-headless/pull-to-refresh/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../../tsconfig.headless.json", 3 | "compilerOptions": { 4 | "rootDir": "src", 5 | "outDir": "lib", 6 | }, 7 | "include": ["src"], 8 | "exclude": ["src/**/*.test.*"] 9 | } 10 | -------------------------------------------------------------------------------- /packages/react-headless/radio-group/.gitignore: -------------------------------------------------------------------------------- 1 | /lib/ 2 | -------------------------------------------------------------------------------- /packages/react-headless/radio-group/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../../tsconfig.headless.json", 3 | "compilerOptions": { 4 | "rootDir": "src", 5 | "outDir": "lib", 6 | }, 7 | "include": ["src"], 8 | "exclude": ["src/**/*.test.*"] 9 | } 10 | -------------------------------------------------------------------------------- /packages/react-headless/segmented-control/.gitignore: -------------------------------------------------------------------------------- 1 | /lib/ 2 | -------------------------------------------------------------------------------- /packages/react-headless/segmented-control/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../../tsconfig.headless.json", 3 | "compilerOptions": { 4 | "rootDir": "src", 5 | "outDir": "lib", 6 | }, 7 | "include": ["src"], 8 | "exclude": ["src/**/*.test.*"] 9 | } 10 | -------------------------------------------------------------------------------- /packages/react-headless/snackbar/.gitignore: -------------------------------------------------------------------------------- 1 | /lib/ 2 | -------------------------------------------------------------------------------- /packages/react-headless/snackbar/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../../tsconfig.headless.json", 3 | "compilerOptions": { 4 | "rootDir": "src", 5 | "outDir": "lib", 6 | }, 7 | "include": ["src"], 8 | "exclude": ["src/**/*.test.*"] 9 | } 10 | -------------------------------------------------------------------------------- /packages/react-headless/switch/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../../tsconfig.headless.json", 3 | "compilerOptions": { 4 | "rootDir": "src", 5 | "outDir": "lib", 6 | }, 7 | "include": ["src"], 8 | "exclude": ["src/**/*.test.*"] 9 | } 10 | -------------------------------------------------------------------------------- /packages/react-headless/tabs/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../../tsconfig.headless.json", 3 | "compilerOptions": { 4 | "rootDir": "src", 5 | "outDir": "lib", 6 | }, 7 | "include": ["src"], 8 | "exclude": ["src/**/*.test.*"] 9 | } 10 | -------------------------------------------------------------------------------- /packages/react-headless/text-field/src/dom.ts: -------------------------------------------------------------------------------- 1 | export const getLabelId = (id: string) => `text-field:${id}:label`; 2 | export const getInputId = (id: string) => `text-field:${id}:input`; 3 | export const getDescriptionId = (id: string) => `text-field:${id}:description`; 4 | export const getErrorMessageId = (id: string) => `text-field:${id}:error-message`; 5 | -------------------------------------------------------------------------------- /packages/react-headless/text-field/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../../tsconfig.headless.json", 3 | "compilerOptions": { 4 | "rootDir": "src", 5 | "outDir": "lib", 6 | }, 7 | "include": ["src"], 8 | "exclude": ["src/**/*.test.*"] 9 | } 10 | -------------------------------------------------------------------------------- /packages/react-headless/toggle/src/Toggle.namespace.ts: -------------------------------------------------------------------------------- 1 | export { 2 | ToggleRoot as Root, 3 | type ToggleRootProps as RootProps, 4 | } from "./Toggle"; 5 | -------------------------------------------------------------------------------- /packages/react-headless/toggle/src/index.ts: -------------------------------------------------------------------------------- 1 | export { 2 | ToggleRoot, 3 | type ToggleRootProps, 4 | } from "./Toggle"; 5 | 6 | export { useToggleContext, type UseToggleContext } from "./useToggleContext"; 7 | 8 | export * as Toggle from "./Toggle.namespace"; 9 | -------------------------------------------------------------------------------- /packages/react-headless/toggle/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../../tsconfig.headless.json", 3 | "compilerOptions": { 4 | "rootDir": "src", 5 | "outDir": "lib", 6 | }, 7 | "include": ["src"], 8 | "exclude": ["src/**/*.test.*"] 9 | } 10 | -------------------------------------------------------------------------------- /packages/react/README.md: -------------------------------------------------------------------------------- 1 | # @seed-design/react 2 | 3 | This package integrates following packages to provide full-featured React components. 4 | 5 | - [@seed-design/css](../css) 6 | - [@seed-design/react-headless](../react-headless) 7 | -------------------------------------------------------------------------------- /packages/react/src/components/ActionButton/index.ts: -------------------------------------------------------------------------------- 1 | export { 2 | ActionButton, 3 | type ActionButtonProps, 4 | } from "./ActionButton"; 5 | -------------------------------------------------------------------------------- /packages/react/src/components/ActionChip/index.ts: -------------------------------------------------------------------------------- 1 | export { 2 | ActionChip, 3 | type ActionChipProps, 4 | } from "./ActionChip"; 5 | -------------------------------------------------------------------------------- /packages/react/src/components/Badge/index.ts: -------------------------------------------------------------------------------- 1 | export { Badge, type BadgeProps } from "./Badge"; 2 | -------------------------------------------------------------------------------- /packages/react/src/components/Box/index.ts: -------------------------------------------------------------------------------- 1 | export { Box, type BoxProps } from "./Box"; 2 | -------------------------------------------------------------------------------- /packages/react/src/components/Celcius/Celcius.tsx: -------------------------------------------------------------------------------- 1 | import type * as React from "react"; 2 | 3 | export interface CelciusProps { 4 | value: number; 5 | } 6 | 7 | export const Celcius: React.FC = (props) => { 8 | return `${props.value}°C`; 9 | }; 10 | -------------------------------------------------------------------------------- /packages/react/src/components/Celcius/index.ts: -------------------------------------------------------------------------------- 1 | export { 2 | Celcius, 3 | type CelciusProps, 4 | } from "./Celcius"; 5 | -------------------------------------------------------------------------------- /packages/react/src/components/Columns/index.ts: -------------------------------------------------------------------------------- 1 | export { Columns, Column, type ColumnsProps, type ColumnProps } from "./Columns"; 2 | -------------------------------------------------------------------------------- /packages/react/src/components/ConsistentWidth/index.ts: -------------------------------------------------------------------------------- 1 | export { ConsistentWidth } from "./ConsistentWidth"; 2 | -------------------------------------------------------------------------------- /packages/react/src/components/ContextualFloatingButton/index.ts: -------------------------------------------------------------------------------- 1 | export { 2 | ContextualFloatingButton, 3 | type ContextualFloatingButtonProps, 4 | } from "./ContextualFloatingButton"; 5 | -------------------------------------------------------------------------------- /packages/react/src/components/ControlChip/index.ts: -------------------------------------------------------------------------------- 1 | export { 2 | ControlChip, 3 | type ControlChipBaseProps, 4 | type ControlChipProps, 5 | } from "./ControlChip"; 6 | -------------------------------------------------------------------------------- /packages/react/src/components/Count/index.ts: -------------------------------------------------------------------------------- 1 | export { 2 | Count, 3 | type CountProps, 4 | } from "./Count"; 5 | -------------------------------------------------------------------------------- /packages/react/src/components/Divider/index.ts: -------------------------------------------------------------------------------- 1 | export { Divider, type DividerProps } from "./Divider"; 2 | -------------------------------------------------------------------------------- /packages/react/src/components/ExtendedFab/index.ts: -------------------------------------------------------------------------------- 1 | export { 2 | ExtendedFab, 3 | type ExtendedFabProps, 4 | } from "./ExtendedFab"; 5 | -------------------------------------------------------------------------------- /packages/react/src/components/Fab/index.ts: -------------------------------------------------------------------------------- 1 | export { 2 | Fab, 3 | type FabProps, 4 | } from "./Fab"; 5 | -------------------------------------------------------------------------------- /packages/react/src/components/Flex/index.ts: -------------------------------------------------------------------------------- 1 | export { Flex, type FlexProps } from "./Flex"; 2 | -------------------------------------------------------------------------------- /packages/react/src/components/Float/index.ts: -------------------------------------------------------------------------------- 1 | export { Float, type FloatProps } from "./Float"; 2 | -------------------------------------------------------------------------------- /packages/react/src/components/Icon/index.ts: -------------------------------------------------------------------------------- 1 | export { 2 | Icon, 3 | PrefixIcon, 4 | SuffixIcon, 5 | type IconProps, 6 | type PrefixIconProps, 7 | type SuffixIconProps, 8 | } from "./Icon"; 9 | -------------------------------------------------------------------------------- /packages/react/src/components/IdentityPlaceholder/IdentityPlaceholder.namespace.ts: -------------------------------------------------------------------------------- 1 | export { 2 | IdentityPlaceholderRoot as Root, 3 | IdentityPlaceholderImage as Image, 4 | type IdentityPlaceholderRootProps as RootProps, 5 | type IdentityPlaceholderImageProps as ImageProps, 6 | } from "./IdentityPlaceholder"; 7 | -------------------------------------------------------------------------------- /packages/react/src/components/IdentityPlaceholder/index.ts: -------------------------------------------------------------------------------- 1 | export { 2 | IdentityPlaceholderRoot, 3 | IdentityPlaceholderImage, 4 | type IdentityPlaceholderRootProps, 5 | type IdentityPlaceholderImageProps, 6 | } from "./IdentityPlaceholder"; 7 | 8 | export * as IdentityPlaceholder from "./IdentityPlaceholder.namespace"; 9 | -------------------------------------------------------------------------------- /packages/react/src/components/Inline/index.ts: -------------------------------------------------------------------------------- 1 | export { Inline, type InlineProps } from "./Inline"; 2 | -------------------------------------------------------------------------------- /packages/react/src/components/LinkContent/index.ts: -------------------------------------------------------------------------------- 1 | export { 2 | LinkContent, 3 | type LinkContentProps, 4 | } from "./LinkContent"; 5 | -------------------------------------------------------------------------------- /packages/react/src/components/LoadingIndicator/index.ts: -------------------------------------------------------------------------------- 1 | export { 2 | LoadingIndicator, 3 | type LoadingIndicatorProps, 4 | } from "./LoadingIndicator"; 5 | -------------------------------------------------------------------------------- /packages/react/src/components/MannerTemp/index.ts: -------------------------------------------------------------------------------- 1 | export { MannerTemp, type MannerTempProps } from "./MannerTemp"; 2 | export { MannerTempEmote, type MannerTempEmoteProps } from "./MannerTempEmote"; 3 | -------------------------------------------------------------------------------- /packages/react/src/components/MannerTempBadge/index.ts: -------------------------------------------------------------------------------- 1 | export { 2 | MannerTempBadge, 3 | type MannerTempBadgeProps, 4 | } from "./MannerTempBadge"; 5 | -------------------------------------------------------------------------------- /packages/react/src/components/NotificationBadge/index.ts: -------------------------------------------------------------------------------- 1 | export { 2 | NotificationBadge, 3 | NotificationBadgePositioner, 4 | type NotificationBadgeProps, 5 | type NotificationBadgePositionerProps, 6 | } from "./NotificationBadge"; 7 | -------------------------------------------------------------------------------- /packages/react/src/components/Portal/index.ts: -------------------------------------------------------------------------------- 1 | export { 2 | type PortalProps, 3 | Portal, 4 | } from "@seed-design/react-portal"; 5 | -------------------------------------------------------------------------------- /packages/react/src/components/ProgressCircle/ProgressCircle.namespace.ts: -------------------------------------------------------------------------------- 1 | export { 2 | ProgressCircleRoot as Root, 3 | ProgressCircleTrack as Track, 4 | ProgressCircleRange as Range, 5 | type ProgressCircleRootProps as RootProps, 6 | type ProgressCircleTrackProps as TrackProps, 7 | type ProgressCircleRangeProps as RangeProps, 8 | } from "./ProgressCircle"; 9 | -------------------------------------------------------------------------------- /packages/react/src/components/ProgressCircle/index.ts: -------------------------------------------------------------------------------- 1 | export { 2 | ProgressCircleRoot, 3 | ProgressCircleTrack, 4 | ProgressCircleRange, 5 | type ProgressCircleRootProps, 6 | type ProgressCircleTrackProps, 7 | type ProgressCircleRangeProps, 8 | } from "./ProgressCircle"; 9 | 10 | export * as ProgressCircle from "./ProgressCircle.namespace"; 11 | -------------------------------------------------------------------------------- /packages/react/src/components/PullToRefresh/index.ts: -------------------------------------------------------------------------------- 1 | export { 2 | PullToRefreshContent, 3 | PullToRefreshIndicator, 4 | PullToRefreshRoot, 5 | type PullToRefreshContentProps, 6 | type PullToRefreshIndicatorProps, 7 | type PullToRefreshRootProps, 8 | } from "./PullToRefresh"; 9 | 10 | export * as PullToRefresh from "./PullToRefresh.namespace"; 11 | -------------------------------------------------------------------------------- /packages/react/src/components/ReactionButton/index.ts: -------------------------------------------------------------------------------- 1 | export { 2 | ReactionButton, 3 | type ReactionButtonProps, 4 | } from "./ReactionButton"; 5 | -------------------------------------------------------------------------------- /packages/react/src/components/ResponsivePair/index.ts: -------------------------------------------------------------------------------- 1 | export { ResponsivePair, type ResponsivePairProps } from "./ResponsivePair"; 2 | -------------------------------------------------------------------------------- /packages/react/src/components/Skeleton/index.ts: -------------------------------------------------------------------------------- 1 | export { Skeleton, type SkeletonProps } from "./Skeleton"; 2 | -------------------------------------------------------------------------------- /packages/react/src/components/Stack/index.ts: -------------------------------------------------------------------------------- 1 | export { 2 | Stack, 3 | VStack, 4 | HStack, 5 | type StackProps, 6 | type VStackProps, 7 | type HStackProps, 8 | } from "./Stack"; 9 | -------------------------------------------------------------------------------- /packages/react/src/components/Text/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./Text"; 2 | -------------------------------------------------------------------------------- /packages/react/src/components/ToggleButton/index.ts: -------------------------------------------------------------------------------- 1 | export { 2 | ToggleButton, 3 | type ToggleButtonProps, 4 | } from "./ToggleButton"; 5 | -------------------------------------------------------------------------------- /packages/react/src/components/VisuallyHidden/index.ts: -------------------------------------------------------------------------------- 1 | export { VisuallyHidden, type VisuallyHiddenProps } from "./VisuallyHidden"; 2 | -------------------------------------------------------------------------------- /packages/react/src/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./components"; 2 | 3 | // unstable_StyleProps is unstable and will be changed or removed without prior notice 4 | export type { StyleProps as unstable_StyleProps } from "./utils/styled"; 5 | -------------------------------------------------------------------------------- /packages/react/src/vars.ts: -------------------------------------------------------------------------------- 1 | export * from "@seed-design/css/vars"; 2 | -------------------------------------------------------------------------------- /packages/rootage/collections.yaml: -------------------------------------------------------------------------------- 1 | kind: TokenCollections 2 | metadata: 3 | id: collections 4 | name: collections 5 | data: 6 | - name: global 7 | modes: 8 | - default 9 | - name: color 10 | modes: 11 | - theme-light 12 | - theme-dark 13 | -------------------------------------------------------------------------------- /packages/stackflow/.gitignore: -------------------------------------------------------------------------------- 1 | /lib/ 2 | -------------------------------------------------------------------------------- /packages/stackflow/src/components/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./AppBar"; 2 | export * from "./AppScreen"; 3 | -------------------------------------------------------------------------------- /packages/stackflow/src/index.ts: -------------------------------------------------------------------------------- 1 | export { seedPlugin, type SeedPluginOptions } from "./plugin"; 2 | 3 | export * from "./components"; 4 | export * as Primitive from "./primitive"; 5 | -------------------------------------------------------------------------------- /packages/stackflow/src/primitive/AppBar/AppBar.namespace.ts: -------------------------------------------------------------------------------- 1 | export { 2 | AppBarRoot as Root, 3 | AppBarMain as Main, 4 | AppBarLeft as Left, 5 | AppBarRight as Right, 6 | type AppBarRootProps as RootProps, 7 | type AppBarMainProps as MainProps, 8 | type AppBarLeftProps as LeftProps, 9 | type AppBarRightProps as RightProps, 10 | } from "./AppBar"; 11 | -------------------------------------------------------------------------------- /packages/stackflow/src/primitive/AppBar/index.ts: -------------------------------------------------------------------------------- 1 | export { 2 | AppBarLeft, 3 | AppBarRight, 4 | AppBarRoot, 5 | AppBarMain, 6 | type AppBarLeftProps, 7 | type AppBarRightProps, 8 | type AppBarRootProps, 9 | type AppBarMainProps, 10 | } from "./AppBar"; 11 | 12 | export * as AppBar from "./AppBar.namespace"; 13 | -------------------------------------------------------------------------------- /packages/stackflow/src/primitive/GlobalInteraction/index.ts: -------------------------------------------------------------------------------- 1 | export { GlobalInteraction, type GlobalInteractionProps } from "./GlobalInteraction"; 2 | 3 | export { 4 | useGlobalInteractionContext, 5 | type UseGlobalInteractionContext, 6 | } from "./useGlobalInteractionContext"; 7 | -------------------------------------------------------------------------------- /packages/stackflow/src/primitive/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./AppScreen"; 2 | export * from "./AppBar"; 3 | export * from "./GlobalInteraction"; 4 | -------------------------------------------------------------------------------- /packages/tailwind3-plugin/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # @seed-design/tailwind3-plugin 2 | 3 | ## 0.0.21 4 | 5 | ### Patch Changes 6 | 7 | - e368c69: 패키지 의존성을 최신화합니다. 8 | 9 | ## 0.0.12 10 | 11 | ### Patch Changes 12 | 13 | - ac83753: tailwind plugin (v3), tailwind theme (v4)를 제공해요. 14 | -------------------------------------------------------------------------------- /packages/tailwind3-plugin/bunchee.config.js: -------------------------------------------------------------------------------- 1 | /** 2 | * @type {import('bunchee').Options} 3 | */ 4 | export default { 5 | target: "node", 6 | externals: ["tailwindcss", "tailwindcss/plugin"], 7 | format: ["esm", "cjs"], 8 | declaration: true, 9 | dts: true, 10 | outDir: "lib", 11 | }; 12 | -------------------------------------------------------------------------------- /packages/tailwind4-theme/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # @seed-design/tailwind4-theme 2 | 3 | ## 0.0.21 4 | 5 | ### Patch Changes 6 | 7 | - e368c69: 패키지 의존성을 최신화합니다. 8 | 9 | ## 0.0.12 10 | 11 | ### Patch Changes 12 | 13 | - ac83753: tailwind plugin (v3), tailwind theme (v4)를 제공해요. 14 | -------------------------------------------------------------------------------- /packages/utils/dom-utils/.gitignore: -------------------------------------------------------------------------------- 1 | /lib/ 2 | -------------------------------------------------------------------------------- /packages/utils/dom-utils/README.md: -------------------------------------------------------------------------------- 1 | # @seed-design/dom-utils 2 | 3 | This package is a internal utility, not intended for public use. -------------------------------------------------------------------------------- /packages/utils/dom-utils/src/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./dom"; 2 | export * from "./visuallyHidden"; 3 | export * from "./mergeProps"; 4 | -------------------------------------------------------------------------------- /tools/figma-checklist-widget/.gitignore: -------------------------------------------------------------------------------- 1 | # Node 2 | *.log 3 | *.log.* 4 | node_modules 5 | 6 | out/ 7 | dist/ 8 | code.js 9 | -------------------------------------------------------------------------------- /tools/figma-codegen/.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | *.log 3 | *.css.d.ts 4 | output.css 5 | /build/ 6 | /manifest.json 7 | node_modules/ 8 | 9 | .env 10 | -------------------------------------------------------------------------------- /tools/figma-codegen/build-figma-plugin.main.js: -------------------------------------------------------------------------------- 1 | module.exports = (buildOptions) => ({ 2 | ...buildOptions, 3 | resolveExtensions: [".ts", ".js", ".json", ".mjs"], 4 | }); 5 | -------------------------------------------------------------------------------- /tools/figma-codegen/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "ESNext", 4 | "lib": ["ESNext"], 5 | "strict": true, 6 | "types": ["@figma/plugin-typings"], 7 | "moduleResolution": "bundler", 8 | "allowSyntheticDefaultImports": true, 9 | "skipLibCheck": true, 10 | "noUncheckedIndexedAccess": true 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /tools/figma-contrast-checker/.gitignore: -------------------------------------------------------------------------------- 1 | # Node 2 | *.log 3 | *.log.* 4 | node_modules 5 | 6 | out/ 7 | dist/ 8 | code.js 9 | -------------------------------------------------------------------------------- /tools/figma-contrast-checker/widget-src/apca.d.ts: -------------------------------------------------------------------------------- 1 | export * from "apca-w3"; 2 | 3 | declare module "apca-w3" { 4 | export function fontLookupAPCA(contrast: number, places?: number): number[]; 5 | } 6 | -------------------------------------------------------------------------------- /tools/figma-expose-variables/.gitignore: -------------------------------------------------------------------------------- 1 | # Node 2 | *.log 3 | *.log.* 4 | node_modules 5 | 6 | out/ 7 | dist/ 8 | main.js 9 | -------------------------------------------------------------------------------- /tools/figma-expose-variables/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig.json", 3 | "compilerOptions": { 4 | "baseUrl": "src" 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /tools/figma-mcp/.gitignore: -------------------------------------------------------------------------------- 1 | dist 2 | -------------------------------------------------------------------------------- /tools/figma-mcp/README.md: -------------------------------------------------------------------------------- 1 | # MCP Figma Plugin 2 | 3 | [@seed-design/mcp](../../packages/mcp) 패키지와 통신하는 Figma 플러그인입니다. 4 | 5 | NOTE: Figma에서 MCP 혹은 유사한 기능을 직접 지원하게 될 가능성이 높으므로, 코드 수명을 의도적으로 짧게 잡습니다. -------------------------------------------------------------------------------- /tools/figma-mcp/seed-design.json: -------------------------------------------------------------------------------- 1 | { 2 | "tsx": true, 3 | "rsc": false, 4 | "path": "./src/design-system" 5 | } 6 | -------------------------------------------------------------------------------- /tools/figma-mcp/src/main/commands/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./annotation"; 2 | export * from "./clone"; 3 | export * from "./document-info"; 4 | export * from "./export"; 5 | export * from "./node-info"; 6 | export * from "./node-modification"; 7 | -------------------------------------------------------------------------------- /tools/figma-mcp/src/main/utils/id.ts: -------------------------------------------------------------------------------- 1 | export function generateCommandId(): string { 2 | return `cmd_${Date.now()}_${Math.floor(Math.random() * 1000)}`; 3 | } 4 | -------------------------------------------------------------------------------- /tools/figma-mcp/src/ui/main.tsx: -------------------------------------------------------------------------------- 1 | import "@seed-design/css/base.css"; 2 | import "./styles.css"; 3 | 4 | import React from "react"; 5 | import ReactDOM from "react-dom/client"; 6 | import App from "./App"; 7 | 8 | ReactDOM.createRoot(document.getElementById("root")!).render( 9 | 10 | 11 | , 12 | ); 13 | -------------------------------------------------------------------------------- /tools/figma-mcp/src/ui/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /tools/figma-spec-widget/.gitignore: -------------------------------------------------------------------------------- 1 | # Node 2 | *.log 3 | *.log.* 4 | node_modules 5 | 6 | out/ 7 | dist/ 8 | code.js 9 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/.env.example: -------------------------------------------------------------------------------- 1 | FIGMA_FILE_KEY= 2 | FIGMA_PERSONAL_ACCESS_TOKEN= 3 | 4 | VITE_POSTHOG_API_KEY= 5 | VITE_POSTHOG_HOST= 6 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/.gitignore: -------------------------------------------------------------------------------- 1 | dist 2 | 3 | .env 4 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/seed-design.json: -------------------------------------------------------------------------------- 1 | { 2 | "tsx": true, 3 | "rsc": false, 4 | "path": "./src/ui/shared/design-system" 5 | } 6 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-body-l1-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/body-l1-bold", 3 | "key": "S:a20aa26a2224c658a72596cd74762025a746069f," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-body-l1-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/body-l1-bold", 3 | "key": "S:a20aa26a2224c658a72596cd74762025a746069f," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-body-l1-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/body-l1-regular", 3 | "key": "S:5a6b3ea5ec493ea637d14e79786a3243f41805e2," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-body-l1-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/body-l1-regular", 3 | "key": "S:5a6b3ea5ec493ea637d14e79786a3243f41805e2," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-body-l2-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/body-l2-bold", 3 | "key": "S:b7cb2b46b68d3e0e520db38cce4debbd4537e600," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-body-l2-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/body-l2-bold", 3 | "key": "S:b7cb2b46b68d3e0e520db38cce4debbd4537e600," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-body-l2-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/body-l2-regular", 3 | "key": "S:bcca128ebfa6dfc9dd2e403f297bbbd7df3e7202," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-body-l2-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/body-l2-regular", 3 | "key": "S:bcca128ebfa6dfc9dd2e403f297bbbd7df3e7202," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-body-m1-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/body-m1-bold", 3 | "key": "S:ce80aef71c2ad7f3884ba29d9bb3399c6a94e368," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-body-m1-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/body-m1-bold", 3 | "key": "S:ce80aef71c2ad7f3884ba29d9bb3399c6a94e368," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-body-m1-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/body-m1-regular", 3 | "key": "S:5dc789838c953f7da730cd0a59820a79e57075c6," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-body-m1-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/body-m1-regular", 3 | "key": "S:5dc789838c953f7da730cd0a59820a79e57075c6," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-body-m2-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/body-m2-bold", 3 | "key": "S:c130e3c688e43468cf0d4c99274430c4cc6c1c85," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-body-m2-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/body-m2-bold", 3 | "key": "S:c130e3c688e43468cf0d4c99274430c4cc6c1c85," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-body-m2-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/body-m2-regular", 3 | "key": "S:3928e054d335a9f38092f55715d6b7b15de0863f," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-body-m2-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/body-m2-regular", 3 | "key": "S:3928e054d335a9f38092f55715d6b7b15de0863f," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-caption1-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/caption1-bold", 3 | "key": "S:6a6d30ef221f86eb253e80223cab259e640e335d," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-caption1-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/caption1-bold", 3 | "key": "S:6a6d30ef221f86eb253e80223cab259e640e335d," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-caption1-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/caption1-regular", 3 | "key": "S:e334049f03588c4a7750df02122ed1f444eb7a24," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-caption1-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/caption1-regular", 3 | "key": "S:e334049f03588c4a7750df02122ed1f444eb7a24," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-caption2-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/caption2-bold", 3 | "key": "S:7e484f5bf4b9e61bef69ce7bd74dac9ba65a7677," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-caption2-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/caption2-bold", 3 | "key": "S:7e484f5bf4b9e61bef69ce7bd74dac9ba65a7677," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-caption2-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/caption2-regular", 3 | "key": "S:9c95d2f7fd8e93d1570897c686fd4a29119c36f2," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-caption2-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/caption2-regular", 3 | "key": "S:9c95d2f7fd8e93d1570897c686fd4a29119c36f2," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-h1.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/h1", 3 | "key": "S:891420ff2d474f0f9333a7cd70737201773e3b60," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-h1.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/h1", 3 | "key": "S:891420ff2d474f0f9333a7cd70737201773e3b60," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-h2.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/h2", 3 | "key": "S:a2f2299113278a36032538414cb0140eacc582ae," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-h2.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/h2", 3 | "key": "S:a2f2299113278a36032538414cb0140eacc582ae," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-h3.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/h3", 3 | "key": "S:445385913fc4ef427c4974b1bfbd56038562d33b," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-h3.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/h3", 3 | "key": "S:445385913fc4ef427c4974b1bfbd56038562d33b," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-h4.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/h4", 3 | "key": "S:adba1b3fd32128e091829ce26ce2a31ecf999059," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-h4.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/h4", 3 | "key": "S:adba1b3fd32128e091829ce26ce2a31ecf999059," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-label1-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/label1-bold", 3 | "key": "S:36036f8f6679d1745b0156ab370e1f98d2c4b7ff," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-label1-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/label1-bold", 3 | "key": "S:36036f8f6679d1745b0156ab370e1f98d2c4b7ff," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-label1-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/label1-regular", 3 | "key": "S:de8b0877b4a45b707cc0a437fb691054afb3f188," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-label1-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/label1-regular", 3 | "key": "S:de8b0877b4a45b707cc0a437fb691054afb3f188," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-label2-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/label2-bold", 3 | "key": "S:7b6979bff6d4626c55b0c60fde816991c2e08753," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-label2-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/label2-bold", 3 | "key": "S:7b6979bff6d4626c55b0c60fde816991c2e08753," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-label2-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/label2-regular", 3 | "key": "S:9b38374f24de431409a9498b4d0ace08bbcc0945," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-label2-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/label2-regular", 3 | "key": "S:9b38374f24de431409a9498b4d0ace08bbcc0945," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-label3-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/label3-bold", 3 | "key": "S:9ca6c4114c3517fcf02bc0452ac23e8e796dac60," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-label3-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/label3-bold", 3 | "key": "S:9ca6c4114c3517fcf02bc0452ac23e8e796dac60," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-label3-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/label3-regular", 3 | "key": "S:3942f53c45827c98c6eb75033f37dd2e6328f981," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-label3-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/label3-regular", 3 | "key": "S:3942f53c45827c98c6eb75033f37dd2e6328f981," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-label4-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/label4-bold", 3 | "key": "S:824db792a29f097f4fe635ee95f67e27d196884f," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-label4-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/label4-bold", 3 | "key": "S:824db792a29f097f4fe635ee95f67e27d196884f," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-label4-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/label4-regular", 3 | "key": "S:47e9ebad3c1d886fdd0450c2047f4aa224f3c04f," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-label4-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/label4-regular", 3 | "key": "S:47e9ebad3c1d886fdd0450c2047f4aa224f3c04f," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-label5-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/label5-bold", 3 | "key": "S:8fbe18674df2a45b6b94dc86a1b8ff341e026e2b," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-label5-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/label5-bold", 3 | "key": "S:8fbe18674df2a45b6b94dc86a1b8ff341e026e2b," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-label5-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/label5-regular", 3 | "key": "S:1b74596280bbc6558566901fff3f6e9f91748071," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-label5-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/label5-regular", 3 | "key": "S:1b74596280bbc6558566901fff3f6e9f91748071," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-label6-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/label6-bold", 3 | "key": "S:b99ae56ceaff605afde86afcaf47f37ad0e1d19b," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-label6-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/label6-bold", 3 | "key": "S:b99ae56ceaff605afde86afcaf47f37ad0e1d19b," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-label6-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/label6-regular", 3 | "key": "S:fc5de37142c518e490c031437ac409ede4bec2f5," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-label6-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/label6-regular", 3 | "key": "S:fc5de37142c518e490c031437ac409ede4bec2f5," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-subtitle1-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/subtitle1-bold", 3 | "key": "S:708be1c6992f3422982dd0026351f2857d2c1c20," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-subtitle1-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/subtitle1-bold", 3 | "key": "S:708be1c6992f3422982dd0026351f2857d2c1c20," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-subtitle1-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/subtitle1-regular", 3 | "key": "S:c62fe6f7b40a2e8e6e999416f9db03ab6bcff957," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-subtitle1-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/subtitle1-regular", 3 | "key": "S:c62fe6f7b40a2e8e6e999416f9db03ab6bcff957," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-subtitle2-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/subtitle2-bold", 3 | "key": "S:658f97f4ef9c2321abe4c0f257600b35dac21cc8," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-subtitle2-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/subtitle2-bold", 3 | "key": "S:658f97f4ef9c2321abe4c0f257600b35dac21cc8," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-subtitle2-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/subtitle2-regular", 3 | "key": "S:56976b3ffab00680fb7ab48a2256c7d9d459e596," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-subtitle2-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/subtitle2-regular", 3 | "key": "S:56976b3ffab00680fb7ab48a2256c7d9d459e596," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-title1-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/title1-bold", 3 | "key": "S:1fb2aad91067712ffd52c1a7afb2004dc0cf3cc2," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-title1-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/title1-bold", 3 | "key": "S:1fb2aad91067712ffd52c1a7afb2004dc0cf3cc2," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-title1-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/title1-regular", 3 | "key": "S:0f0117292fa931060d095be34b2b98987d6cb030," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-title1-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/title1-regular", 3 | "key": "S:0f0117292fa931060d095be34b2b98987d6cb030," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-title2-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/title2-bold", 3 | "key": "S:ada0e42aacf128c4baa091aeeab9299867789eab," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-title2-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/title2-bold", 3 | "key": "S:ada0e42aacf128c4baa091aeeab9299867789eab," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-title2-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/title2-regular", 3 | "key": "S:203bc1e7c8e11e56879da11558bcf2d2cf5c8759," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-title2-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/title2-regular", 3 | "key": "S:203bc1e7c8e11e56879da11558bcf2d2cf5c8759," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-title3-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/title3-bold", 3 | "key": "S:6e1e77bba21da503fb256201b9dadabd1b2a9f11," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-title3-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/title3-bold", 3 | "key": "S:6e1e77bba21da503fb256201b9dadabd1b2a9f11," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-title3-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-android/title3-regular", 3 | "key": "S:d7e64c4cae725accb687fd1a5dfb60364ad54edc," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-android-title3-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-android/title3-regular", 3 | "key": "S:d7e64c4cae725accb687fd1a5dfb60364ad54edc," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-body-l1-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/body-l1-bold", 3 | "key": "S:03a4db099353bd0ae794b981fdba490f3a816cdb," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-body-l1-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/body-l1-bold", 3 | "key": "S:03a4db099353bd0ae794b981fdba490f3a816cdb," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-body-l1-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/body-l1-regular", 3 | "key": "S:d91040aeef66794117d9cb8ab5505c93bf2ba968," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-body-l1-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/body-l1-regular", 3 | "key": "S:d91040aeef66794117d9cb8ab5505c93bf2ba968," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-body-l2-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/body-l2-bold", 3 | "key": "S:e07979c2bc472f45e11549cc0dba301539cb3f8c," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-body-l2-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/body-l2-bold", 3 | "key": "S:e07979c2bc472f45e11549cc0dba301539cb3f8c," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-body-l2-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/body-l2-regular", 3 | "key": "S:7739cca26e81253bddef0c950aa21adb8a796464," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-body-l2-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/body-l2-regular", 3 | "key": "S:7739cca26e81253bddef0c950aa21adb8a796464," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-body-m1-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/body-m1-bold", 3 | "key": "S:cc98148312658a219cf5dc610ddc8067db951fee," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-body-m1-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/body-m1-bold", 3 | "key": "S:cc98148312658a219cf5dc610ddc8067db951fee," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-body-m1-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/body-m1-regular", 3 | "key": "S:862d03f5b46ec64400f90e2f60f9cb2f8aed090e," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-body-m1-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/body-m1-regular", 3 | "key": "S:862d03f5b46ec64400f90e2f60f9cb2f8aed090e," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-body-m2-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/body-m2-bold", 3 | "key": "S:5cec511b6e6673133d22c790790ae66daed9f01d," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-body-m2-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/body-m2-bold", 3 | "key": "S:5cec511b6e6673133d22c790790ae66daed9f01d," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-body-m2-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/body-m2-regular", 3 | "key": "S:20f32da5d5127941ce750b1b5cb6306a3c2a7004," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-body-m2-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/body-m2-regular", 3 | "key": "S:20f32da5d5127941ce750b1b5cb6306a3c2a7004," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-caption1-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/caption1-bold", 3 | "key": "S:f74d11e1404fe9e18f1cfa20fde605abb3835c81," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-caption1-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/caption1-bold", 3 | "key": "S:f74d11e1404fe9e18f1cfa20fde605abb3835c81," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-caption1-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/caption1-regular", 3 | "key": "S:36045e81581583e4e2bcb01ec2f3391ba2e77fa7," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-caption1-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/caption1-regular", 3 | "key": "S:36045e81581583e4e2bcb01ec2f3391ba2e77fa7," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-caption2-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/caption2-bold", 3 | "key": "S:d3c108d3bee4dbf07b36c85098a4e129630f6627," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-caption2-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/caption2-bold", 3 | "key": "S:d3c108d3bee4dbf07b36c85098a4e129630f6627," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-caption2-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/caption2-regular", 3 | "key": "S:568a4960b0c9020ce97eadb25b5d375385e5efe7," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-caption2-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/caption2-regular", 3 | "key": "S:568a4960b0c9020ce97eadb25b5d375385e5efe7," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-h1.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/h1", 3 | "key": "S:aef8f7f12e2d0654087f98f1bac3f9a05b9bdfa5," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-h2.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/h2", 3 | "key": "S:9c7ab4e0efbf01ca146251cc5d63e69e23b90e4b," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-h2.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/h2", 3 | "key": "S:9c7ab4e0efbf01ca146251cc5d63e69e23b90e4b," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-h3.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/h3", 3 | "key": "S:84269d3c215a48e7a990133849fedd318cb53b19," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-h3.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/h3", 3 | "key": "S:84269d3c215a48e7a990133849fedd318cb53b19," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-h4.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/h4", 3 | "key": "S:be9bf2ba12d9b783e748f8d068a896d4382772a1," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-h4.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/h4", 3 | "key": "S:be9bf2ba12d9b783e748f8d068a896d4382772a1," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-label1-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/label1-bold", 3 | "key": "S:784fbd825f0456c43a7ebf90c9477d59841d7ae0," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-label1-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/label1-bold", 3 | "key": "S:784fbd825f0456c43a7ebf90c9477d59841d7ae0," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-label1-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/label1-regular", 3 | "key": "S:8e44075645042e5044f7cea0980f40c0888db8fa," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-label1-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/label1-regular", 3 | "key": "S:8e44075645042e5044f7cea0980f40c0888db8fa," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-label2-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/label2-bold", 3 | "key": "S:23ebdc6f2c1faa9d378b6e6676f039099d313e6f," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-label2-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/label2-bold", 3 | "key": "S:23ebdc6f2c1faa9d378b6e6676f039099d313e6f," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-label2-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/label2-regular", 3 | "key": "S:af4aaafb9c5533013bba02f085c96dccc3d0b470," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-label2-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/label2-regular", 3 | "key": "S:af4aaafb9c5533013bba02f085c96dccc3d0b470," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-label3-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/label3-bold", 3 | "key": "S:1a31e919c029bdecca33ac0df8a475e26914b291," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-label3-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/label3-bold", 3 | "key": "S:1a31e919c029bdecca33ac0df8a475e26914b291," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-label3-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/label3-regular", 3 | "key": "S:4a1bade324138faa7d95dd7550d1666cf3d4ae6c," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-label3-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/label3-regular", 3 | "key": "S:4a1bade324138faa7d95dd7550d1666cf3d4ae6c," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-label4-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/label4-bold", 3 | "key": "S:3f3c58dc4149df251203fc0007eecd9331362fc4," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-label4-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/label4-bold", 3 | "key": "S:3f3c58dc4149df251203fc0007eecd9331362fc4," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-label4-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/label4-regular", 3 | "key": "S:d0ad23c15638a1fd2baf7343dcf5e5ffb0875aa2," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-label4-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/label4-regular", 3 | "key": "S:d0ad23c15638a1fd2baf7343dcf5e5ffb0875aa2," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-label5-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/label5-bold", 3 | "key": "S:530547ca7918b44828d633a10a62dd43fa4514b9," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-label5-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/label5-bold", 3 | "key": "S:530547ca7918b44828d633a10a62dd43fa4514b9," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-label5-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/label5-regular", 3 | "key": "S:397d20b5a3912bc277f3c93b31db0f4234d98717," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-label5-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/label5-regular", 3 | "key": "S:397d20b5a3912bc277f3c93b31db0f4234d98717," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-label6-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/label6-bold", 3 | "key": "S:ac4e700f9e0a4e91b426a12334f18ebabb2c02e8," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-label6-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/label6-bold", 3 | "key": "S:ac4e700f9e0a4e91b426a12334f18ebabb2c02e8," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-label6-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/label6-regular", 3 | "key": "S:110aa3cba82123f2b8a4e581ddbae7930615b0bb," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-label6-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/label6-regular", 3 | "key": "S:110aa3cba82123f2b8a4e581ddbae7930615b0bb," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-subtitle1-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/subtitle1-bold", 3 | "key": "S:b10525b67ca1572fa4a31db7b546156af5244483," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-subtitle1-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/subtitle1-bold", 3 | "key": "S:b10525b67ca1572fa4a31db7b546156af5244483," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-subtitle1-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/subtitle1-regular", 3 | "key": "S:8e87c2e4ca3710425e4f00d46fae410264cadd1e," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-subtitle1-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/subtitle1-regular", 3 | "key": "S:8e87c2e4ca3710425e4f00d46fae410264cadd1e," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-subtitle2-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/subtitle2-bold", 3 | "key": "S:1365941e2d64a9bef026cc99c0cf528924ef57c2," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-subtitle2-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/subtitle2-bold", 3 | "key": "S:1365941e2d64a9bef026cc99c0cf528924ef57c2," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-subtitle2-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/subtitle2-regular", 3 | "key": "S:41cae88add9c5694f6ad1e32813b417c1a9f26ed," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-subtitle2-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/subtitle2-regular", 3 | "key": "S:41cae88add9c5694f6ad1e32813b417c1a9f26ed," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-title1-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/title1-bold", 3 | "key": "S:e06473df30edecded948b5f1878d39aa09ee552c," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-title1-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/title1-bold", 3 | "key": "S:e06473df30edecded948b5f1878d39aa09ee552c," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-title1-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/title1-regular", 3 | "key": "S:376a846eea7722501719a3cbc98c13715c232dac," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-title1-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/title1-regular", 3 | "key": "S:376a846eea7722501719a3cbc98c13715c232dac," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-title2-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/title2-bold", 3 | "key": "S:864c90c1afc029a67eebba658ccc9af5bb90d8b9," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-title2-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/title2-bold", 3 | "key": "S:864c90c1afc029a67eebba658ccc9af5bb90d8b9," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-title2-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/title2-regular", 3 | "key": "S:28a2c32344cc10f12ca5ac63791abd8b3e2cca0e," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-title2-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | name: ".platform-ios/title2-regular", 3 | key: "S:28a2c32344cc10f12ca5ac63791abd8b3e2cca0e,", 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-title3-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/title3-bold", 3 | "key": "S:fdf05d38af2fdfddd1a9481180b3432a6b76edfe," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-title3-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/title3-bold", 3 | "key": "S:fdf05d38af2fdfddd1a9481180b3432a6b76edfe," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-title3-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": ".platform-ios/title3-regular", 3 | "key": "S:f1f2954f8a63f866098e030a6ec299d9a3fe5213," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platform-ios-title3-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": ".platform-ios/title3-regular", 3 | "key": "S:f1f2954f8a63f866098e030a6ec299d9a3fe5213," 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platforn-ios-h1.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | name: ".platform-ios/h1"; 3 | key: "S:aef8f7f12e2d0654087f98f1bac3f9a05b9bdfa5,"; 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v2-styles/platforn-ios-h1.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | name: ".platform-ios/h1", 3 | key: "S:aef8f7f12e2d0654087f98f1bac3f9a05b9bdfa5,", 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/legacy-13-150.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": "legacy-13-150", 3 | "key": "af24f9e7cc90af3bf2a18029dd59ae0646966486" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/legacy-13-150.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": "legacy-13-150", 3 | "key": "af24f9e7cc90af3bf2a18029dd59ae0646966486" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/legacy-14-150.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": "legacy-14-150", 3 | "key": "2fec4e47f53f75ea46bee4d740795e099af5472f" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/legacy-14-150.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": "legacy-14-150", 3 | "key": "2fec4e47f53f75ea46bee4d740795e099af5472f" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t1-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": "scale/t1-bold", 3 | "key": "337e113e2fafc22ccd5423b3fc7a7da69a6c917c" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t1-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": "scale/t1-bold", 3 | "key": "337e113e2fafc22ccd5423b3fc7a7da69a6c917c" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t1-medium.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": "scale/t1-medium", 3 | "key": "49735ed4693e2f7e9d98b6b6e3818f38e2fe77a8" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t1-medium.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": "scale/t1-medium", 3 | "key": "49735ed4693e2f7e9d98b6b6e3818f38e2fe77a8" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t1-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": "scale/t1-regular", 3 | "key": "4d54fb58fa4a63a6ddec973099b4babfbe502849" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t1-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": "scale/t1-regular", 3 | "key": "4d54fb58fa4a63a6ddec973099b4babfbe502849" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t10-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": "scale/t10-bold", 3 | "key": "6ea6b06312771259d59de265a5ef12cd1dae9102" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t10-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": "scale/t10-bold", 3 | "key": "6ea6b06312771259d59de265a5ef12cd1dae9102" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t2-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": "scale/t2-bold", 3 | "key": "8378bd59b14f5682dcaf20110efde4b7a1fb18e3" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t2-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": "scale/t2-bold", 3 | "key": "8378bd59b14f5682dcaf20110efde4b7a1fb18e3" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t2-medium.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": "scale/t2-medium", 3 | "key": "2aff06b0ad8be136acbfb3090fa4dde1f9eac48e" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t2-medium.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": "scale/t2-medium", 3 | "key": "2aff06b0ad8be136acbfb3090fa4dde1f9eac48e" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t2-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": "scale/t2-regular", 3 | "key": "711eaf0bd91b906e108f3508cf7845fc82294b1a" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t2-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": "scale/t2-regular", 3 | "key": "711eaf0bd91b906e108f3508cf7845fc82294b1a" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t3-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": "scale/t3-bold", 3 | "key": "f749d659a689cbbecbdbb1b559056731234332a3" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t3-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": "scale/t3-bold", 3 | "key": "f749d659a689cbbecbdbb1b559056731234332a3" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t3-medium.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": "scale/t3-medium", 3 | "key": "96a2f248d201c246587d63eb4d00cb7610897400" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t3-medium.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": "scale/t3-medium", 3 | "key": "96a2f248d201c246587d63eb4d00cb7610897400" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t3-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": "scale/t3-regular", 3 | "key": "22ead16ee07b342df4a26952bc987f3155988779" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t3-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": "scale/t3-regular", 3 | "key": "22ead16ee07b342df4a26952bc987f3155988779" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t4-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": "scale/t4-bold", 3 | "key": "a85ea49c1625319427c047bc206c26e708012030" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t4-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": "scale/t4-bold", 3 | "key": "a85ea49c1625319427c047bc206c26e708012030" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t4-medium.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": "scale/t4-medium", 3 | "key": "2c143ba862b3c1af10a0bd5d2e723bd12e7878ef" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t4-medium.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": "scale/t4-medium", 3 | "key": "2c143ba862b3c1af10a0bd5d2e723bd12e7878ef" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t4-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": "scale/t4-regular", 3 | "key": "b23d3e206b0244690c19472fd78bfc33b9b46d06" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t4-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": "scale/t4-regular", 3 | "key": "b23d3e206b0244690c19472fd78bfc33b9b46d06" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t5-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": "scale/t5-bold", 3 | "key": "8eff229c53f06eeb418f39ad1cb3dbe12480f12b" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t5-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": "scale/t5-bold", 3 | "key": "8eff229c53f06eeb418f39ad1cb3dbe12480f12b" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t5-medium.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": "scale/t5-medium", 3 | "key": "bc8bcf3caa904cdc2e1c2983d0f12d32832d7374" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t5-medium.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": "scale/t5-medium", 3 | "key": "bc8bcf3caa904cdc2e1c2983d0f12d32832d7374" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t5-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": "scale/t5-regular", 3 | "key": "54a5a4c2bfc09573fba3a8efe0dafff067cf53bd" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t5-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": "scale/t5-regular", 3 | "key": "54a5a4c2bfc09573fba3a8efe0dafff067cf53bd" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t6-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": "scale/t6-bold", 3 | "key": "adf921a56e89b5737a6b626034cfea184e828370" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t6-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": "scale/t6-bold", 3 | "key": "adf921a56e89b5737a6b626034cfea184e828370" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t6-medium.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": "scale/t6-medium", 3 | "key": "02ee25a9050a9c78dbaa03ea006aa4d1db593e99" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t6-medium.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": "scale/t6-medium", 3 | "key": "02ee25a9050a9c78dbaa03ea006aa4d1db593e99" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t6-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": "scale/t6-regular", 3 | "key": "6608eaab965859080a5effa6e23eb857d888057f" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t6-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": "scale/t6-regular", 3 | "key": "6608eaab965859080a5effa6e23eb857d888057f" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t7-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": "scale/t7-bold", 3 | "key": "182d9252d7f7380075915a89e6160d7595124bc3" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t7-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": "scale/t7-bold", 3 | "key": "182d9252d7f7380075915a89e6160d7595124bc3" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t7-medium.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": "scale/t7-medium", 3 | "key": "b2e24640e7dc1264fc638434511c9f994e1e149c" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t7-medium.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": "scale/t7-medium", 3 | "key": "b2e24640e7dc1264fc638434511c9f994e1e149c" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t7-regular.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": "scale/t7-regular", 3 | "key": "eb1c0409582609a51fe9afc9e31301d529e3d12f" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t7-regular.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": "scale/t7-regular", 3 | "key": "eb1c0409582609a51fe9afc9e31301d529e3d12f" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t8-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": "scale/t8-bold", 3 | "key": "b7f864e3f64524a863d38729e2cea18f44c7ebaa" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t8-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": "scale/t8-bold", 3 | "key": "b7f864e3f64524a863d38729e2cea18f44c7ebaa" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t9-bold.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": "scale/t9-bold", 3 | "key": "b146e1317c67db787834f1890493225bdbba4e48" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/scale-t9-bold.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": "scale/t9-bold", 3 | "key": "b146e1317c67db787834f1890493225bdbba4e48" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/semantic-article-body.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": "semantic/article-body", 3 | "key": "85422ef9f0230f821f1a9e6d2f8f86b3ba87f20d" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/semantic-article-body.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": "semantic/article-body", 3 | "key": "85422ef9f0230f821f1a9e6d2f8f86b3ba87f20d" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/semantic-screen-title.d.ts: -------------------------------------------------------------------------------- 1 | export declare const metadata: { 2 | "name": "semantic/screen-title", 3 | "key": "d918eb7069e10c8dd745abf40bc375004c1badb8" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/data/__generated__/v3-styles/semantic-screen-title.mjs: -------------------------------------------------------------------------------- 1 | export const metadata = { 2 | "name": "semantic/screen-title", 3 | "key": "d918eb7069e10c8dd745abf40bc375004c1badb8" 4 | }; 5 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/main/services/notify.ts: -------------------------------------------------------------------------------- 1 | export const notify = (message: string) => { 2 | figma.notify(message, { timeout: 2000 }); 3 | }; 4 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/shared/utils/link.ts: -------------------------------------------------------------------------------- 1 | export const createFigmaLink = ({ 2 | fileKey, 3 | rootName, 4 | nodeId, 5 | }: { 6 | fileKey: string; 7 | rootName: string; 8 | nodeId: string; 9 | }) => { 10 | return `https://www.figma.com/design/${fileKey}/${rootName}?node-id=${nodeId}`; 11 | }; 12 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/shared/utils/string.ts: -------------------------------------------------------------------------------- 1 | export function stripBeforeIcon(name: string) { 2 | if (!name) return name; 3 | 4 | if (name.includes("icon_")) { 5 | return name.replace(/^.*?(icon_)/, "$1"); 6 | } 7 | 8 | return name; 9 | } 10 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/shared/utils/variables.ts: -------------------------------------------------------------------------------- 1 | import type { SerializedVariable } from "@/features/design-system/types"; 2 | 3 | export function serializeVariable({ id, key, name }: Variable): SerializedVariable { 4 | return { id, key, name }; 5 | } 6 | -------------------------------------------------------------------------------- /tools/figma-v3-migration/src/ui/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "ESNext", 4 | "module": "ESNext", 5 | "moduleResolution": "Bundler", 6 | "strict": true, 7 | "composite": true, 8 | "incremental": true 9 | } 10 | } 11 | --------------------------------------------------------------------------------