@entifix/react-controls 0.1.0-0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +7 -0
- package/dist/i18n/catalog/en.d.ts +10 -0
- package/dist/i18n/catalog/en.d.ts.map +1 -0
- package/dist/i18n/catalog/en.js +211 -0
- package/dist/i18n/catalog/en.js.map +1 -0
- package/dist/i18n/catalog/es.d.ts +275 -0
- package/dist/i18n/catalog/es.d.ts.map +1 -0
- package/dist/i18n/catalog/es.js +261 -0
- package/dist/i18n/catalog/es.js.map +1 -0
- package/dist/i18n/catalog/index.d.ts +403 -0
- package/dist/i18n/catalog/index.d.ts.map +1 -0
- package/dist/i18n/catalog/index.js +23 -0
- package/dist/i18n/catalog/index.js.map +1 -0
- package/dist/i18n/entity-labels.d.ts +29 -0
- package/dist/i18n/entity-labels.d.ts.map +1 -0
- package/dist/i18n/entity-labels.js +49 -0
- package/dist/i18n/entity-labels.js.map +1 -0
- package/dist/i18n/fallback-catalogs.d.ts +5 -0
- package/dist/i18n/fallback-catalogs.d.ts.map +1 -0
- package/dist/i18n/fallback-catalogs.js +34 -0
- package/dist/i18n/fallback-catalogs.js.map +1 -0
- package/dist/i18n/i18n-context.d.ts +62 -0
- package/dist/i18n/i18n-context.d.ts.map +1 -0
- package/dist/i18n/i18n-context.js +128 -0
- package/dist/i18n/i18n-context.js.map +1 -0
- package/dist/i18n/index.d.ts +5 -0
- package/dist/i18n/index.d.ts.map +1 -0
- package/dist/i18n/index.js +6 -0
- package/dist/i18n/index.js.map +1 -0
- package/dist/i18n/spec-support/catalogs.d.ts +2 -0
- package/dist/i18n/spec-support/catalogs.d.ts.map +1 -0
- package/dist/i18n/spec-support/catalogs.js +142 -0
- package/dist/i18n/spec-support/catalogs.js.map +1 -0
- package/dist/i18next/index.d.ts +20 -0
- package/dist/i18next/index.d.ts.map +1 -0
- package/dist/i18next/index.js +60 -0
- package/dist/i18next/index.js.map +1 -0
- package/dist/index.d.ts +46 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +47 -0
- package/dist/index.js.map +1 -0
- package/dist/preferences/index.d.ts +7 -0
- package/dist/preferences/index.d.ts.map +1 -0
- package/dist/preferences/index.js +8 -0
- package/dist/preferences/index.js.map +1 -0
- package/dist/preferences/indexeddb-ui-preferences-state.d.ts +16 -0
- package/dist/preferences/indexeddb-ui-preferences-state.d.ts.map +1 -0
- package/dist/preferences/indexeddb-ui-preferences-state.js +50 -0
- package/dist/preferences/indexeddb-ui-preferences-state.js.map +1 -0
- package/dist/preferences/local-storage-ui-preferences-state.d.ts +16 -0
- package/dist/preferences/local-storage-ui-preferences-state.d.ts.map +1 -0
- package/dist/preferences/local-storage-ui-preferences-state.js +51 -0
- package/dist/preferences/local-storage-ui-preferences-state.js.map +1 -0
- package/dist/preferences/ui-preferences-context.d.ts +16 -0
- package/dist/preferences/ui-preferences-context.d.ts.map +1 -0
- package/dist/preferences/ui-preferences-context.js +31 -0
- package/dist/preferences/ui-preferences-context.js.map +1 -0
- package/dist/preferences/ui-preferences-state.d.ts +23 -0
- package/dist/preferences/ui-preferences-state.d.ts.map +1 -0
- package/dist/preferences/ui-preferences-state.js +5 -0
- package/dist/preferences/ui-preferences-state.js.map +1 -0
- package/dist/preferences/use-ui-preference.d.ts +20 -0
- package/dist/preferences/use-ui-preference.d.ts.map +1 -0
- package/dist/preferences/use-ui-preference.js +72 -0
- package/dist/preferences/use-ui-preference.js.map +1 -0
- package/dist/preferences/use-viewport-mode.d.ts +33 -0
- package/dist/preferences/use-viewport-mode.d.ts.map +1 -0
- package/dist/preferences/use-viewport-mode.js +53 -0
- package/dist/preferences/use-viewport-mode.js.map +1 -0
- package/dist/primitives.d.ts +25 -0
- package/dist/primitives.d.ts.map +1 -0
- package/dist/primitives.js +54 -0
- package/dist/primitives.js.map +1 -0
- package/dist/theme/index.d.ts +3 -0
- package/dist/theme/index.d.ts.map +1 -0
- package/dist/theme/index.js +4 -0
- package/dist/theme/index.js.map +1 -0
- package/dist/theme/theme-context.d.ts +26 -0
- package/dist/theme/theme-context.d.ts.map +1 -0
- package/dist/theme/theme-context.js +79 -0
- package/dist/theme/theme-context.js.map +1 -0
- package/dist/theme/types.d.ts +22 -0
- package/dist/theme/types.d.ts.map +1 -0
- package/dist/theme/types.js +6 -0
- package/dist/theme/types.js.map +1 -0
- package/dist/ui/actions/action-surfaces.d.ts +59 -0
- package/dist/ui/actions/action-surfaces.d.ts.map +1 -0
- package/dist/ui/actions/action-surfaces.js +109 -0
- package/dist/ui/actions/action-surfaces.js.map +1 -0
- package/dist/ui/actions/index.d.ts +2 -0
- package/dist/ui/actions/index.d.ts.map +1 -0
- package/dist/ui/actions/index.js +3 -0
- package/dist/ui/actions/index.js.map +1 -0
- package/dist/ui/atoms/button/button-link.d.ts +27 -0
- package/dist/ui/atoms/button/button-link.d.ts.map +1 -0
- package/dist/ui/atoms/button/button-link.js +23 -0
- package/dist/ui/atoms/button/button-link.js.map +1 -0
- package/dist/ui/atoms/button/button-recipe.d.ts +19 -0
- package/dist/ui/atoms/button/button-recipe.d.ts.map +1 -0
- package/dist/ui/atoms/button/button-recipe.js +42 -0
- package/dist/ui/atoms/button/button-recipe.js.map +1 -0
- package/dist/ui/atoms/button/button.d.ts +7 -0
- package/dist/ui/atoms/button/button.d.ts.map +1 -0
- package/dist/ui/atoms/button/button.js +22 -0
- package/dist/ui/atoms/button/button.js.map +1 -0
- package/dist/ui/atoms/button/index.d.ts +4 -0
- package/dist/ui/atoms/button/index.d.ts.map +1 -0
- package/dist/ui/atoms/button/index.js +5 -0
- package/dist/ui/atoms/button/index.js.map +1 -0
- package/dist/ui/atoms/cell-value/cell-value.d.ts +12 -0
- package/dist/ui/atoms/cell-value/cell-value.d.ts.map +1 -0
- package/dist/ui/atoms/cell-value/cell-value.js +101 -0
- package/dist/ui/atoms/cell-value/cell-value.js.map +1 -0
- package/dist/ui/atoms/cell-value/index.d.ts +2 -0
- package/dist/ui/atoms/cell-value/index.d.ts.map +1 -0
- package/dist/ui/atoms/cell-value/index.js +3 -0
- package/dist/ui/atoms/cell-value/index.js.map +1 -0
- package/dist/ui/atoms/field/checkbox.d.ts +35 -0
- package/dist/ui/atoms/field/checkbox.d.ts.map +1 -0
- package/dist/ui/atoms/field/checkbox.js +46 -0
- package/dist/ui/atoms/field/checkbox.js.map +1 -0
- package/dist/ui/atoms/field/field.d.ts +4 -0
- package/dist/ui/atoms/field/field.d.ts.map +1 -0
- package/dist/ui/atoms/field/field.js +29 -0
- package/dist/ui/atoms/field/field.js.map +1 -0
- package/dist/ui/atoms/field/index.d.ts +3 -0
- package/dist/ui/atoms/field/index.d.ts.map +1 -0
- package/dist/ui/atoms/field/index.js +4 -0
- package/dist/ui/atoms/field/index.js.map +1 -0
- package/dist/ui/atoms/field-control/field-control.d.ts +50 -0
- package/dist/ui/atoms/field-control/field-control.d.ts.map +1 -0
- package/dist/ui/atoms/field-control/field-control.js +82 -0
- package/dist/ui/atoms/field-control/field-control.js.map +1 -0
- package/dist/ui/atoms/field-control/index.d.ts +2 -0
- package/dist/ui/atoms/field-control/index.d.ts.map +1 -0
- package/dist/ui/atoms/field-control/index.js +3 -0
- package/dist/ui/atoms/field-control/index.js.map +1 -0
- package/dist/ui/atoms/skeleton/index.d.ts +2 -0
- package/dist/ui/atoms/skeleton/index.d.ts.map +1 -0
- package/dist/ui/atoms/skeleton/index.js +3 -0
- package/dist/ui/atoms/skeleton/index.js.map +1 -0
- package/dist/ui/atoms/skeleton/skeleton.d.ts +21 -0
- package/dist/ui/atoms/skeleton/skeleton.d.ts.map +1 -0
- package/dist/ui/atoms/skeleton/skeleton.js +33 -0
- package/dist/ui/atoms/skeleton/skeleton.js.map +1 -0
- package/dist/ui/atoms/table/index.d.ts +2 -0
- package/dist/ui/atoms/table/index.d.ts.map +1 -0
- package/dist/ui/atoms/table/index.js +3 -0
- package/dist/ui/atoms/table/index.js.map +1 -0
- package/dist/ui/atoms/table/table.d.ts +30 -0
- package/dist/ui/atoms/table/table.d.ts.map +1 -0
- package/dist/ui/atoms/table/table.js +84 -0
- package/dist/ui/atoms/table/table.js.map +1 -0
- package/dist/ui/atoms/text/index.d.ts +2 -0
- package/dist/ui/atoms/text/index.d.ts.map +1 -0
- package/dist/ui/atoms/text/index.js +3 -0
- package/dist/ui/atoms/text/index.js.map +1 -0
- package/dist/ui/atoms/text/text.d.ts +86 -0
- package/dist/ui/atoms/text/text.d.ts.map +1 -0
- package/dist/ui/atoms/text/text.js +221 -0
- package/dist/ui/atoms/text/text.js.map +1 -0
- package/dist/ui/layout/_demo.d.ts +6 -0
- package/dist/ui/layout/_demo.d.ts.map +1 -0
- package/dist/ui/layout/_demo.js +11 -0
- package/dist/ui/layout/_demo.js.map +1 -0
- package/dist/ui/layout/_shared.d.ts +9 -0
- package/dist/ui/layout/_shared.d.ts.map +1 -0
- package/dist/ui/layout/_shared.js +30 -0
- package/dist/ui/layout/_shared.js.map +1 -0
- package/dist/ui/layout/box/box.d.ts +10 -0
- package/dist/ui/layout/box/box.d.ts.map +1 -0
- package/dist/ui/layout/box/box.js +28 -0
- package/dist/ui/layout/box/box.js.map +1 -0
- package/dist/ui/layout/box/index.d.ts +2 -0
- package/dist/ui/layout/box/index.d.ts.map +1 -0
- package/dist/ui/layout/box/index.js +3 -0
- package/dist/ui/layout/box/index.js.map +1 -0
- package/dist/ui/layout/center/center.d.ts +13 -0
- package/dist/ui/layout/center/center.d.ts.map +1 -0
- package/dist/ui/layout/center/center.js +22 -0
- package/dist/ui/layout/center/center.js.map +1 -0
- package/dist/ui/layout/center/index.d.ts +2 -0
- package/dist/ui/layout/center/index.d.ts.map +1 -0
- package/dist/ui/layout/center/index.js +3 -0
- package/dist/ui/layout/center/index.js.map +1 -0
- package/dist/ui/layout/cluster/cluster.d.ts +11 -0
- package/dist/ui/layout/cluster/cluster.d.ts.map +1 -0
- package/dist/ui/layout/cluster/cluster.js +19 -0
- package/dist/ui/layout/cluster/cluster.js.map +1 -0
- package/dist/ui/layout/cluster/index.d.ts +2 -0
- package/dist/ui/layout/cluster/index.d.ts.map +1 -0
- package/dist/ui/layout/cluster/index.js +3 -0
- package/dist/ui/layout/cluster/index.js.map +1 -0
- package/dist/ui/layout/cover/cover.d.ts +26 -0
- package/dist/ui/layout/cover/cover.d.ts.map +1 -0
- package/dist/ui/layout/cover/cover.js +57 -0
- package/dist/ui/layout/cover/cover.js.map +1 -0
- package/dist/ui/layout/cover/index.d.ts +2 -0
- package/dist/ui/layout/cover/index.d.ts.map +1 -0
- package/dist/ui/layout/cover/index.js +3 -0
- package/dist/ui/layout/cover/index.js.map +1 -0
- package/dist/ui/layout/grid/grid.d.ts +14 -0
- package/dist/ui/layout/grid/grid.d.ts.map +1 -0
- package/dist/ui/layout/grid/grid.js +25 -0
- package/dist/ui/layout/grid/grid.js.map +1 -0
- package/dist/ui/layout/grid/index.d.ts +2 -0
- package/dist/ui/layout/grid/index.d.ts.map +1 -0
- package/dist/ui/layout/grid/index.js +3 -0
- package/dist/ui/layout/grid/index.js.map +1 -0
- package/dist/ui/layout/sidebar/index.d.ts +2 -0
- package/dist/ui/layout/sidebar/index.d.ts.map +1 -0
- package/dist/ui/layout/sidebar/index.js +3 -0
- package/dist/ui/layout/sidebar/index.js.map +1 -0
- package/dist/ui/layout/sidebar/sidebar.d.ts +33 -0
- package/dist/ui/layout/sidebar/sidebar.d.ts.map +1 -0
- package/dist/ui/layout/sidebar/sidebar.js +54 -0
- package/dist/ui/layout/sidebar/sidebar.js.map +1 -0
- package/dist/ui/layout/switcher/index.d.ts +2 -0
- package/dist/ui/layout/switcher/index.d.ts.map +1 -0
- package/dist/ui/layout/switcher/index.js +3 -0
- package/dist/ui/layout/switcher/index.js.map +1 -0
- package/dist/ui/layout/switcher/switcher.d.ts +15 -0
- package/dist/ui/layout/switcher/switcher.d.ts.map +1 -0
- package/dist/ui/layout/switcher/switcher.js +26 -0
- package/dist/ui/layout/switcher/switcher.js.map +1 -0
- package/dist/ui/molecules/breadcrumbs/breadcrumbs.d.ts +27 -0
- package/dist/ui/molecules/breadcrumbs/breadcrumbs.d.ts.map +1 -0
- package/dist/ui/molecules/breadcrumbs/breadcrumbs.js +50 -0
- package/dist/ui/molecules/breadcrumbs/breadcrumbs.js.map +1 -0
- package/dist/ui/molecules/breadcrumbs/index.d.ts +2 -0
- package/dist/ui/molecules/breadcrumbs/index.d.ts.map +1 -0
- package/dist/ui/molecules/breadcrumbs/index.js +3 -0
- package/dist/ui/molecules/breadcrumbs/index.js.map +1 -0
- package/dist/ui/molecules/bulk-action-bar/bulk-action-bar.d.ts +47 -0
- package/dist/ui/molecules/bulk-action-bar/bulk-action-bar.d.ts.map +1 -0
- package/dist/ui/molecules/bulk-action-bar/bulk-action-bar.js +63 -0
- package/dist/ui/molecules/bulk-action-bar/bulk-action-bar.js.map +1 -0
- package/dist/ui/molecules/bulk-action-bar/index.d.ts +2 -0
- package/dist/ui/molecules/bulk-action-bar/index.d.ts.map +1 -0
- package/dist/ui/molecules/bulk-action-bar/index.js +3 -0
- package/dist/ui/molecules/bulk-action-bar/index.js.map +1 -0
- package/dist/ui/molecules/bulk-result/bulk-result.d.ts +31 -0
- package/dist/ui/molecules/bulk-result/bulk-result.d.ts.map +1 -0
- package/dist/ui/molecules/bulk-result/bulk-result.js +86 -0
- package/dist/ui/molecules/bulk-result/bulk-result.js.map +1 -0
- package/dist/ui/molecules/bulk-result/index.d.ts +2 -0
- package/dist/ui/molecules/bulk-result/index.d.ts.map +1 -0
- package/dist/ui/molecules/bulk-result/index.js +3 -0
- package/dist/ui/molecules/bulk-result/index.js.map +1 -0
- package/dist/ui/molecules/card/card.d.ts +5 -0
- package/dist/ui/molecules/card/card.d.ts.map +1 -0
- package/dist/ui/molecules/card/card.js +14 -0
- package/dist/ui/molecules/card/card.js.map +1 -0
- package/dist/ui/molecules/card/index.d.ts +2 -0
- package/dist/ui/molecules/card/index.d.ts.map +1 -0
- package/dist/ui/molecules/card/index.js +3 -0
- package/dist/ui/molecules/card/index.js.map +1 -0
- package/dist/ui/molecules/column-settings/column-settings.d.ts +29 -0
- package/dist/ui/molecules/column-settings/column-settings.d.ts.map +1 -0
- package/dist/ui/molecules/column-settings/column-settings.js +117 -0
- package/dist/ui/molecules/column-settings/column-settings.js.map +1 -0
- package/dist/ui/molecules/column-settings/index.d.ts +2 -0
- package/dist/ui/molecules/column-settings/index.d.ts.map +1 -0
- package/dist/ui/molecules/column-settings/index.js +3 -0
- package/dist/ui/molecules/column-settings/index.js.map +1 -0
- package/dist/ui/molecules/confirm-dialog/confirm-dialog.d.ts +31 -0
- package/dist/ui/molecules/confirm-dialog/confirm-dialog.d.ts.map +1 -0
- package/dist/ui/molecules/confirm-dialog/confirm-dialog.js +68 -0
- package/dist/ui/molecules/confirm-dialog/confirm-dialog.js.map +1 -0
- package/dist/ui/molecules/confirm-dialog/index.d.ts +2 -0
- package/dist/ui/molecules/confirm-dialog/index.d.ts.map +1 -0
- package/dist/ui/molecules/confirm-dialog/index.js +3 -0
- package/dist/ui/molecules/confirm-dialog/index.js.map +1 -0
- package/dist/ui/molecules/drawer/drawer.d.ts +25 -0
- package/dist/ui/molecules/drawer/drawer.d.ts.map +1 -0
- package/dist/ui/molecules/drawer/drawer.js +60 -0
- package/dist/ui/molecules/drawer/drawer.js.map +1 -0
- package/dist/ui/molecules/drawer/index.d.ts +2 -0
- package/dist/ui/molecules/drawer/index.d.ts.map +1 -0
- package/dist/ui/molecules/drawer/index.js +3 -0
- package/dist/ui/molecules/drawer/index.js.map +1 -0
- package/dist/ui/molecules/entity-link-input/entity-link-input.d.ts +36 -0
- package/dist/ui/molecules/entity-link-input/entity-link-input.d.ts.map +1 -0
- package/dist/ui/molecules/entity-link-input/entity-link-input.js +191 -0
- package/dist/ui/molecules/entity-link-input/entity-link-input.js.map +1 -0
- package/dist/ui/molecules/entity-link-input/index.d.ts +2 -0
- package/dist/ui/molecules/entity-link-input/index.d.ts.map +1 -0
- package/dist/ui/molecules/entity-link-input/index.js +3 -0
- package/dist/ui/molecules/entity-link-input/index.js.map +1 -0
- package/dist/ui/molecules/entity-link-picker/entity-link-picker.d.ts +19 -0
- package/dist/ui/molecules/entity-link-picker/entity-link-picker.d.ts.map +1 -0
- package/dist/ui/molecules/entity-link-picker/entity-link-picker.js +78 -0
- package/dist/ui/molecules/entity-link-picker/entity-link-picker.js.map +1 -0
- package/dist/ui/molecules/entity-link-picker/index.d.ts +2 -0
- package/dist/ui/molecules/entity-link-picker/index.d.ts.map +1 -0
- package/dist/ui/molecules/entity-link-picker/index.js +3 -0
- package/dist/ui/molecules/entity-link-picker/index.js.map +1 -0
- package/dist/ui/molecules/entity-record-card/entity-record-card.d.ts +30 -0
- package/dist/ui/molecules/entity-record-card/entity-record-card.d.ts.map +1 -0
- package/dist/ui/molecules/entity-record-card/entity-record-card.js +39 -0
- package/dist/ui/molecules/entity-record-card/entity-record-card.js.map +1 -0
- package/dist/ui/molecules/entity-record-card/index.d.ts +2 -0
- package/dist/ui/molecules/entity-record-card/index.d.ts.map +1 -0
- package/dist/ui/molecules/entity-record-card/index.js +3 -0
- package/dist/ui/molecules/entity-record-card/index.js.map +1 -0
- package/dist/ui/molecules/filter-builder/filter-builder.d.ts +19 -0
- package/dist/ui/molecules/filter-builder/filter-builder.d.ts.map +1 -0
- package/dist/ui/molecules/filter-builder/filter-builder.js +333 -0
- package/dist/ui/molecules/filter-builder/filter-builder.js.map +1 -0
- package/dist/ui/molecules/filter-builder/filter-operators.d.ts +20 -0
- package/dist/ui/molecules/filter-builder/filter-operators.d.ts.map +1 -0
- package/dist/ui/molecules/filter-builder/filter-operators.js +56 -0
- package/dist/ui/molecules/filter-builder/filter-operators.js.map +1 -0
- package/dist/ui/molecules/filter-builder/index.d.ts +3 -0
- package/dist/ui/molecules/filter-builder/index.d.ts.map +1 -0
- package/dist/ui/molecules/filter-builder/index.js +4 -0
- package/dist/ui/molecules/filter-builder/index.js.map +1 -0
- package/dist/ui/molecules/loading-boundary/index.d.ts +2 -0
- package/dist/ui/molecules/loading-boundary/index.d.ts.map +1 -0
- package/dist/ui/molecules/loading-boundary/index.js +3 -0
- package/dist/ui/molecules/loading-boundary/index.js.map +1 -0
- package/dist/ui/molecules/loading-boundary/loading-boundary.d.ts +27 -0
- package/dist/ui/molecules/loading-boundary/loading-boundary.d.ts.map +1 -0
- package/dist/ui/molecules/loading-boundary/loading-boundary.js +42 -0
- package/dist/ui/molecules/loading-boundary/loading-boundary.js.map +1 -0
- package/dist/ui/molecules/menu/index.d.ts +2 -0
- package/dist/ui/molecules/menu/index.d.ts.map +1 -0
- package/dist/ui/molecules/menu/index.js +3 -0
- package/dist/ui/molecules/menu/index.js.map +1 -0
- package/dist/ui/molecules/menu/menu.d.ts +37 -0
- package/dist/ui/molecules/menu/menu.d.ts.map +1 -0
- package/dist/ui/molecules/menu/menu.js +71 -0
- package/dist/ui/molecules/menu/menu.js.map +1 -0
- package/dist/ui/molecules/pagination/index.d.ts +2 -0
- package/dist/ui/molecules/pagination/index.d.ts.map +1 -0
- package/dist/ui/molecules/pagination/index.js +3 -0
- package/dist/ui/molecules/pagination/index.js.map +1 -0
- package/dist/ui/molecules/pagination/pagination.d.ts +13 -0
- package/dist/ui/molecules/pagination/pagination.d.ts.map +1 -0
- package/dist/ui/molecules/pagination/pagination.js +68 -0
- package/dist/ui/molecules/pagination/pagination.js.map +1 -0
- package/dist/ui/molecules/sort-builder/index.d.ts +2 -0
- package/dist/ui/molecules/sort-builder/index.d.ts.map +1 -0
- package/dist/ui/molecules/sort-builder/index.js +3 -0
- package/dist/ui/molecules/sort-builder/index.js.map +1 -0
- package/dist/ui/molecules/sort-builder/sort-builder.d.ts +18 -0
- package/dist/ui/molecules/sort-builder/sort-builder.d.ts.map +1 -0
- package/dist/ui/molecules/sort-builder/sort-builder.js +185 -0
- package/dist/ui/molecules/sort-builder/sort-builder.js.map +1 -0
- package/dist/ui/molecules/stack/index.d.ts +2 -0
- package/dist/ui/molecules/stack/index.d.ts.map +1 -0
- package/dist/ui/molecules/stack/index.js +3 -0
- package/dist/ui/molecules/stack/index.js.map +1 -0
- package/dist/ui/molecules/stack/stack.d.ts +12 -0
- package/dist/ui/molecules/stack/stack.d.ts.map +1 -0
- package/dist/ui/molecules/stack/stack.js +36 -0
- package/dist/ui/molecules/stack/stack.js.map +1 -0
- package/dist/ui/molecules/tab-strip/index.d.ts +2 -0
- package/dist/ui/molecules/tab-strip/index.d.ts.map +1 -0
- package/dist/ui/molecules/tab-strip/index.js +3 -0
- package/dist/ui/molecules/tab-strip/index.js.map +1 -0
- package/dist/ui/molecules/tab-strip/tab-strip.d.ts +29 -0
- package/dist/ui/molecules/tab-strip/tab-strip.d.ts.map +1 -0
- package/dist/ui/molecules/tab-strip/tab-strip.js +82 -0
- package/dist/ui/molecules/tab-strip/tab-strip.js.map +1 -0
- package/dist/ui/molecules/table-toolbar/index.d.ts +2 -0
- package/dist/ui/molecules/table-toolbar/index.d.ts.map +1 -0
- package/dist/ui/molecules/table-toolbar/index.js +3 -0
- package/dist/ui/molecules/table-toolbar/index.js.map +1 -0
- package/dist/ui/molecules/table-toolbar/table-toolbar.d.ts +13 -0
- package/dist/ui/molecules/table-toolbar/table-toolbar.d.ts.map +1 -0
- package/dist/ui/molecules/table-toolbar/table-toolbar.js +28 -0
- package/dist/ui/molecules/table-toolbar/table-toolbar.js.map +1 -0
- package/dist/ui/molecules/theme-switcher/index.d.ts +2 -0
- package/dist/ui/molecules/theme-switcher/index.d.ts.map +1 -0
- package/dist/ui/molecules/theme-switcher/index.js +3 -0
- package/dist/ui/molecules/theme-switcher/index.js.map +1 -0
- package/dist/ui/molecules/theme-switcher/theme-switcher.d.ts +6 -0
- package/dist/ui/molecules/theme-switcher/theme-switcher.d.ts.map +1 -0
- package/dist/ui/molecules/theme-switcher/theme-switcher.js +24 -0
- package/dist/ui/molecules/theme-switcher/theme-switcher.js.map +1 -0
- package/dist/ui/organisms/command-palette/command-palette.d.ts +67 -0
- package/dist/ui/organisms/command-palette/command-palette.d.ts.map +1 -0
- package/dist/ui/organisms/command-palette/command-palette.js +226 -0
- package/dist/ui/organisms/command-palette/command-palette.js.map +1 -0
- package/dist/ui/organisms/command-palette/index.d.ts +2 -0
- package/dist/ui/organisms/command-palette/index.d.ts.map +1 -0
- package/dist/ui/organisms/command-palette/index.js +3 -0
- package/dist/ui/organisms/command-palette/index.js.map +1 -0
- package/dist/ui/organisms/entity-detail-grid/entity-detail-grid.d.ts +43 -0
- package/dist/ui/organisms/entity-detail-grid/entity-detail-grid.d.ts.map +1 -0
- package/dist/ui/organisms/entity-detail-grid/entity-detail-grid.js +281 -0
- package/dist/ui/organisms/entity-detail-grid/entity-detail-grid.js.map +1 -0
- package/dist/ui/organisms/entity-detail-grid/entity-detail-grid.types.d.ts +49 -0
- package/dist/ui/organisms/entity-detail-grid/entity-detail-grid.types.d.ts.map +1 -0
- package/dist/ui/organisms/entity-detail-grid/entity-detail-grid.types.js +3 -0
- package/dist/ui/organisms/entity-detail-grid/entity-detail-grid.types.js.map +1 -0
- package/dist/ui/organisms/entity-detail-grid/index.d.ts +3 -0
- package/dist/ui/organisms/entity-detail-grid/index.d.ts.map +1 -0
- package/dist/ui/organisms/entity-detail-grid/index.js +4 -0
- package/dist/ui/organisms/entity-detail-grid/index.js.map +1 -0
- package/dist/ui/organisms/entity-form/entity-form-slots.d.ts +53 -0
- package/dist/ui/organisms/entity-form/entity-form-slots.d.ts.map +1 -0
- package/dist/ui/organisms/entity-form/entity-form-slots.js +44 -0
- package/dist/ui/organisms/entity-form/entity-form-slots.js.map +1 -0
- package/dist/ui/organisms/entity-form/entity-form.d.ts +4 -0
- package/dist/ui/organisms/entity-form/entity-form.d.ts.map +1 -0
- package/dist/ui/organisms/entity-form/entity-form.js +494 -0
- package/dist/ui/organisms/entity-form/entity-form.js.map +1 -0
- package/dist/ui/organisms/entity-form/entity-form.types.d.ts +151 -0
- package/dist/ui/organisms/entity-form/entity-form.types.d.ts.map +1 -0
- package/dist/ui/organisms/entity-form/entity-form.types.js +3 -0
- package/dist/ui/organisms/entity-form/entity-form.types.js.map +1 -0
- package/dist/ui/organisms/entity-form/index.d.ts +5 -0
- package/dist/ui/organisms/entity-form/index.d.ts.map +1 -0
- package/dist/ui/organisms/entity-form/index.js +6 -0
- package/dist/ui/organisms/entity-form/index.js.map +1 -0
- package/dist/ui/organisms/entity-form/use-entity-form-fields.d.ts +13 -0
- package/dist/ui/organisms/entity-form/use-entity-form-fields.d.ts.map +1 -0
- package/dist/ui/organisms/entity-form/use-entity-form-fields.js +50 -0
- package/dist/ui/organisms/entity-form/use-entity-form-fields.js.map +1 -0
- package/dist/ui/organisms/entity-table/entity-table-slots.d.ts +55 -0
- package/dist/ui/organisms/entity-table/entity-table-slots.d.ts.map +1 -0
- package/dist/ui/organisms/entity-table/entity-table-slots.js +50 -0
- package/dist/ui/organisms/entity-table/entity-table-slots.js.map +1 -0
- package/dist/ui/organisms/entity-table/entity-table.d.ts +4 -0
- package/dist/ui/organisms/entity-table/entity-table.d.ts.map +1 -0
- package/dist/ui/organisms/entity-table/entity-table.js +529 -0
- package/dist/ui/organisms/entity-table/entity-table.js.map +1 -0
- package/dist/ui/organisms/entity-table/entity-table.types.d.ts +126 -0
- package/dist/ui/organisms/entity-table/entity-table.types.d.ts.map +1 -0
- package/dist/ui/organisms/entity-table/entity-table.types.js +3 -0
- package/dist/ui/organisms/entity-table/entity-table.types.js.map +1 -0
- package/dist/ui/organisms/entity-table/index.d.ts +5 -0
- package/dist/ui/organisms/entity-table/index.d.ts.map +1 -0
- package/dist/ui/organisms/entity-table/index.js +6 -0
- package/dist/ui/organisms/entity-table/index.js.map +1 -0
- package/dist/ui/organisms/entity-table/use-entity-table-columns.d.ts +29 -0
- package/dist/ui/organisms/entity-table/use-entity-table-columns.d.ts.map +1 -0
- package/dist/ui/organisms/entity-table/use-entity-table-columns.js +103 -0
- package/dist/ui/organisms/entity-table/use-entity-table-columns.js.map +1 -0
- package/dist/ui/organisms/top-bar/index.d.ts +2 -0
- package/dist/ui/organisms/top-bar/index.d.ts.map +1 -0
- package/dist/ui/organisms/top-bar/index.js +3 -0
- package/dist/ui/organisms/top-bar/index.js.map +1 -0
- package/dist/ui/organisms/top-bar/top-bar.d.ts +20 -0
- package/dist/ui/organisms/top-bar/top-bar.d.ts.map +1 -0
- package/dist/ui/organisms/top-bar/top-bar.js +43 -0
- package/dist/ui/organisms/top-bar/top-bar.js.map +1 -0
- package/dist/ui/organisms/wizard/index.d.ts +3 -0
- package/dist/ui/organisms/wizard/index.d.ts.map +1 -0
- package/dist/ui/organisms/wizard/index.js +4 -0
- package/dist/ui/organisms/wizard/index.js.map +1 -0
- package/dist/ui/organisms/wizard/wizard.d.ts +21 -0
- package/dist/ui/organisms/wizard/wizard.d.ts.map +1 -0
- package/dist/ui/organisms/wizard/wizard.js +260 -0
- package/dist/ui/organisms/wizard/wizard.js.map +1 -0
- package/dist/ui/organisms/wizard/wizard.types.d.ts +83 -0
- package/dist/ui/organisms/wizard/wizard.types.d.ts.map +1 -0
- package/dist/ui/organisms/wizard/wizard.types.js +3 -0
- package/dist/ui/organisms/wizard/wizard.types.js.map +1 -0
- package/dist/ui/utils/cn.d.ts +4 -0
- package/dist/ui/utils/cn.d.ts.map +1 -0
- package/dist/ui/utils/cn.js +5 -0
- package/dist/ui/utils/cn.js.map +1 -0
- package/dist/ui/utils/use-hotkey.d.ts +31 -0
- package/dist/ui/utils/use-hotkey.d.ts.map +1 -0
- package/dist/ui/utils/use-hotkey.js +69 -0
- package/dist/ui/utils/use-hotkey.js.map +1 -0
- package/package.json +118 -0
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
import { _ as _extends } from "@swc/helpers/_/_extends";
|
|
2
|
+
import { _ as _object_without_properties_loose } from "@swc/helpers/_/_object_without_properties_loose";
|
|
3
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
4
|
+
import { cn } from '../../utils/cn.js';
|
|
5
|
+
const STEP_CLASS = {
|
|
6
|
+
'-2': 'text-step-xs',
|
|
7
|
+
'-1': 'text-step-sm',
|
|
8
|
+
0: 'text-step-0',
|
|
9
|
+
1: 'text-step-1',
|
|
10
|
+
2: 'text-step-2',
|
|
11
|
+
3: 'text-step-3'
|
|
12
|
+
};
|
|
13
|
+
const WEIGHT_CLASS = {
|
|
14
|
+
normal: 'font-normal',
|
|
15
|
+
medium: 'font-medium',
|
|
16
|
+
semibold: 'font-semibold'
|
|
17
|
+
};
|
|
18
|
+
const TONE_CLASS = {
|
|
19
|
+
default: 'text-content',
|
|
20
|
+
muted: 'text-content-muted',
|
|
21
|
+
primary: 'text-primary',
|
|
22
|
+
accent: 'text-accent'
|
|
23
|
+
};
|
|
24
|
+
const ALIGN_CLASS = {
|
|
25
|
+
start: 'text-left',
|
|
26
|
+
center: 'text-center',
|
|
27
|
+
end: 'text-right'
|
|
28
|
+
};
|
|
29
|
+
const CLAMP_CLASS = {
|
|
30
|
+
1: 'line-clamp-1',
|
|
31
|
+
2: 'line-clamp-2',
|
|
32
|
+
3: 'line-clamp-3',
|
|
33
|
+
4: 'line-clamp-4'
|
|
34
|
+
};
|
|
35
|
+
/** Body text with fluid sizing and theme-driven color. */ export function Text(_0) {
|
|
36
|
+
let { step = 0, weight, tone = 'default', align, truncate = false, lineClamp, muted = false, as: Tag = 'p', className } = _0, props = _object_without_properties_loose(_0, [
|
|
37
|
+
"step",
|
|
38
|
+
"weight",
|
|
39
|
+
"tone",
|
|
40
|
+
"align",
|
|
41
|
+
"truncate",
|
|
42
|
+
"lineClamp",
|
|
43
|
+
"muted",
|
|
44
|
+
"as",
|
|
45
|
+
"className"
|
|
46
|
+
]);
|
|
47
|
+
return /*#__PURE__*/ _jsx(Tag, _extends({
|
|
48
|
+
className: cn(STEP_CLASS[step], weight && WEIGHT_CLASS[weight], TONE_CLASS[muted ? 'muted' : tone], align && ALIGN_CLASS[align], truncate && 'truncate', lineClamp && CLAMP_CLASS[lineClamp], className)
|
|
49
|
+
}, props));
|
|
50
|
+
}
|
|
51
|
+
/** Larger intro paragraph — sets a subject up before the body copy. */ export function Lead(_0) {
|
|
52
|
+
let { className } = _0, props = _object_without_properties_loose(_0, [
|
|
53
|
+
"className"
|
|
54
|
+
]);
|
|
55
|
+
return /*#__PURE__*/ _jsx(Text, _extends({
|
|
56
|
+
step: 1,
|
|
57
|
+
tone: "muted",
|
|
58
|
+
className: cn('max-w-prose leading-relaxed', className)
|
|
59
|
+
}, props));
|
|
60
|
+
}
|
|
61
|
+
/** Small supporting copy (helper text, meta). */ export function Small(_0) {
|
|
62
|
+
let { className } = _0, props = _object_without_properties_loose(_0, [
|
|
63
|
+
"className"
|
|
64
|
+
]);
|
|
65
|
+
return /*#__PURE__*/ _jsx(Text, _extends({
|
|
66
|
+
as: "small",
|
|
67
|
+
step: -1,
|
|
68
|
+
className: className
|
|
69
|
+
}, props));
|
|
70
|
+
}
|
|
71
|
+
/** Caption / fine print — smallest step, muted by default. */ export function Caption(_0) {
|
|
72
|
+
let { className } = _0, props = _object_without_properties_loose(_0, [
|
|
73
|
+
"className"
|
|
74
|
+
]);
|
|
75
|
+
return /*#__PURE__*/ _jsx(Text, _extends({
|
|
76
|
+
as: "span",
|
|
77
|
+
step: -2,
|
|
78
|
+
tone: "muted",
|
|
79
|
+
className: className
|
|
80
|
+
}, props));
|
|
81
|
+
}
|
|
82
|
+
/** Overline / eyebrow — uppercase tracked label above a heading. */ export function Overline(_0) {
|
|
83
|
+
let { className } = _0, props = _object_without_properties_loose(_0, [
|
|
84
|
+
"className"
|
|
85
|
+
]);
|
|
86
|
+
return /*#__PURE__*/ _jsx(Text, _extends({
|
|
87
|
+
as: "span",
|
|
88
|
+
step: -2,
|
|
89
|
+
weight: "semibold",
|
|
90
|
+
tone: "muted",
|
|
91
|
+
className: cn('tracking-wide uppercase', className)
|
|
92
|
+
}, props));
|
|
93
|
+
}
|
|
94
|
+
/* ---------- Inline emphasis ---------- */ /** Bold inline emphasis. */ export function Strong(_0) {
|
|
95
|
+
let { className } = _0, props = _object_without_properties_loose(_0, [
|
|
96
|
+
"className"
|
|
97
|
+
]);
|
|
98
|
+
return /*#__PURE__*/ _jsx("strong", _extends({
|
|
99
|
+
className: cn('font-semibold text-content', className)
|
|
100
|
+
}, props));
|
|
101
|
+
}
|
|
102
|
+
/** Italic inline emphasis. */ export function Em(_0) {
|
|
103
|
+
let { className } = _0, props = _object_without_properties_loose(_0, [
|
|
104
|
+
"className"
|
|
105
|
+
]);
|
|
106
|
+
return /*#__PURE__*/ _jsx("em", _extends({
|
|
107
|
+
className: cn('italic', className)
|
|
108
|
+
}, props));
|
|
109
|
+
}
|
|
110
|
+
/** Inline code. */ export function Code(_0) {
|
|
111
|
+
let { className } = _0, props = _object_without_properties_loose(_0, [
|
|
112
|
+
"className"
|
|
113
|
+
]);
|
|
114
|
+
return /*#__PURE__*/ _jsx("code", _extends({
|
|
115
|
+
className: cn('rounded-sm border border-border bg-surface px-2xs py-3xs', 'font-mono text-step-sm text-content tabular-nums', className)
|
|
116
|
+
}, props));
|
|
117
|
+
}
|
|
118
|
+
/** Keyboard key. */ export function Kbd(_0) {
|
|
119
|
+
let { className } = _0, props = _object_without_properties_loose(_0, [
|
|
120
|
+
"className"
|
|
121
|
+
]);
|
|
122
|
+
return /*#__PURE__*/ _jsx("kbd", _extends({
|
|
123
|
+
className: cn('inline-flex items-center rounded-md border border-border bg-surface-elevated', 'px-2xs py-3xs font-mono text-step-xs text-content-muted shadow-edge', className)
|
|
124
|
+
}, props));
|
|
125
|
+
}
|
|
126
|
+
/** Themed anchor. */ export function Link(_0) {
|
|
127
|
+
let { className, children } = _0, props = _object_without_properties_loose(_0, [
|
|
128
|
+
"className",
|
|
129
|
+
"children"
|
|
130
|
+
]);
|
|
131
|
+
return /*#__PURE__*/ _jsx("a", _extends({
|
|
132
|
+
className: cn('font-medium text-primary underline underline-offset-2', 'transition-colors duration-200 ease-smooth hover:text-accent', 'focus-ring', className)
|
|
133
|
+
}, props, {
|
|
134
|
+
children: children
|
|
135
|
+
}));
|
|
136
|
+
}
|
|
137
|
+
/* ---------- Block-level ---------- */ /** Pull quote — left border + muted italic body. */ export function Blockquote(_0) {
|
|
138
|
+
let { className } = _0, props = _object_without_properties_loose(_0, [
|
|
139
|
+
"className"
|
|
140
|
+
]);
|
|
141
|
+
return /*#__PURE__*/ _jsx("blockquote", _extends({
|
|
142
|
+
className: cn('border-l-4 border-primary pl-s italic', 'text-step-1 text-content-muted', className)
|
|
143
|
+
}, props));
|
|
144
|
+
}
|
|
145
|
+
/** Bulleted or numbered list with themed markers and fluid spacing. */ export function List(_0) {
|
|
146
|
+
let { ordered = false, className } = _0, props = _object_without_properties_loose(_0, [
|
|
147
|
+
"ordered",
|
|
148
|
+
"className"
|
|
149
|
+
]);
|
|
150
|
+
const Tag = ordered ? 'ol' : 'ul';
|
|
151
|
+
return /*#__PURE__*/ _jsx(Tag, _extends({
|
|
152
|
+
className: cn(ordered ? 'list-decimal' : 'list-disc', 'ms-m flex flex-col gap-2xs text-step-0 text-content marker:text-content-muted', className)
|
|
153
|
+
}, props));
|
|
154
|
+
}
|
|
155
|
+
/** List item — pairs with `List`. */ export function ListItem(_0) {
|
|
156
|
+
let { className } = _0, props = _object_without_properties_loose(_0, [
|
|
157
|
+
"className"
|
|
158
|
+
]);
|
|
159
|
+
return /*#__PURE__*/ _jsx("li", _extends({
|
|
160
|
+
className: cn('ps-2xs', className)
|
|
161
|
+
}, props));
|
|
162
|
+
}
|
|
163
|
+
/** Heading primitive — fluid step + weight, defaults to the largest step. */ export function Heading(_0) {
|
|
164
|
+
let { step = 3, weight = 'semibold', as: Tag = 'h2', className } = _0, props = _object_without_properties_loose(_0, [
|
|
165
|
+
"step",
|
|
166
|
+
"weight",
|
|
167
|
+
"as",
|
|
168
|
+
"className"
|
|
169
|
+
]);
|
|
170
|
+
return /*#__PURE__*/ _jsx(Tag, _extends({
|
|
171
|
+
className: cn(STEP_CLASS[step], WEIGHT_CLASS[weight], 'text-content', className)
|
|
172
|
+
}, props));
|
|
173
|
+
}
|
|
174
|
+
export function HeadingOne(props) {
|
|
175
|
+
return /*#__PURE__*/ _jsx(Heading, _extends({
|
|
176
|
+
as: "h1",
|
|
177
|
+
step: 3,
|
|
178
|
+
weight: "semibold"
|
|
179
|
+
}, props));
|
|
180
|
+
}
|
|
181
|
+
export function HeadingTwo(props) {
|
|
182
|
+
return /*#__PURE__*/ _jsx(Heading, _extends({
|
|
183
|
+
as: "h2",
|
|
184
|
+
step: 2,
|
|
185
|
+
weight: "semibold"
|
|
186
|
+
}, props));
|
|
187
|
+
}
|
|
188
|
+
export function HeadingThree(props) {
|
|
189
|
+
return /*#__PURE__*/ _jsx(Heading, _extends({
|
|
190
|
+
as: "h3",
|
|
191
|
+
step: 1,
|
|
192
|
+
weight: "semibold"
|
|
193
|
+
}, props));
|
|
194
|
+
}
|
|
195
|
+
export function HeadingFour(props) {
|
|
196
|
+
return /*#__PURE__*/ _jsx(Heading, _extends({
|
|
197
|
+
as: "h4",
|
|
198
|
+
step: 0,
|
|
199
|
+
weight: "semibold"
|
|
200
|
+
}, props));
|
|
201
|
+
}
|
|
202
|
+
export function HeadingFive(props) {
|
|
203
|
+
return /*#__PURE__*/ _jsx(Heading, _extends({
|
|
204
|
+
as: "h5",
|
|
205
|
+
step: 0,
|
|
206
|
+
weight: "medium"
|
|
207
|
+
}, props));
|
|
208
|
+
}
|
|
209
|
+
export function HeadingSix(_0) {
|
|
210
|
+
let { className } = _0, props = _object_without_properties_loose(_0, [
|
|
211
|
+
"className"
|
|
212
|
+
]);
|
|
213
|
+
return /*#__PURE__*/ _jsx(Heading, _extends({
|
|
214
|
+
as: "h6",
|
|
215
|
+
step: 0,
|
|
216
|
+
weight: "medium",
|
|
217
|
+
className: cn('tracking-wide text-content-muted uppercase', className)
|
|
218
|
+
}, props));
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
//# sourceMappingURL=text.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/ui/atoms/text/text.tsx"],"sourcesContent":["import type { ComponentPropsWithoutRef, ElementType } from 'react';\n\nimport { cn } from '../../utils/cn.js';\n\n/** Fluid type step (Utopia). Negatives taper below body for fine print. */\ntype Step = -2 | -1 | 0 | 1 | 2 | 3;\n\nconst STEP_CLASS: Record<Step, string> = {\n '-2': 'text-step-xs',\n '-1': 'text-step-sm',\n 0: 'text-step-0',\n 1: 'text-step-1',\n 2: 'text-step-2',\n 3: 'text-step-3',\n};\n\n/**\n * Three weights, and no fourth.\n *\n * 400 body, 500 secondary emphasis, 600 headings and labels. `bold` (700) was\n * removed: \"heading\" and \"emphatic heading\" were never distinct roles here,\n * only different authors — measured, `font-bold` appeared three times against\n * `font-semibold`'s thirteen, all of them headings that had no reason to differ\n * from their neighbours. A fourth weight comes back when a role needs it, not\n * when a screen wants one.\n */\ntype Weight = 'normal' | 'medium' | 'semibold';\n\nconst WEIGHT_CLASS: Record<Weight, string> = {\n normal: 'font-normal',\n medium: 'font-medium',\n semibold: 'font-semibold',\n};\n\n/** Semantic content color. Superset of the legacy `muted` flag. */\ntype Tone = 'default' | 'muted' | 'primary' | 'accent';\n\nconst TONE_CLASS: Record<Tone, string> = {\n default: 'text-content',\n muted: 'text-content-muted',\n primary: 'text-primary',\n accent: 'text-accent',\n};\n\ntype Align = 'start' | 'center' | 'end';\n\nconst ALIGN_CLASS: Record<Align, string> = {\n start: 'text-left',\n center: 'text-center',\n end: 'text-right',\n};\n\n/** Multi-line clamp (static classes so Tailwind can see them). */\ntype Clamp = 1 | 2 | 3 | 4;\n\nconst CLAMP_CLASS: Record<Clamp, string> = {\n 1: 'line-clamp-1',\n 2: 'line-clamp-2',\n 3: 'line-clamp-3',\n 4: 'line-clamp-4',\n};\n\nexport interface TextProps extends ComponentPropsWithoutRef<'p'> {\n /** Fluid type step (Utopia). Defaults to body (0). */\n step?: Step;\n /** Font weight. */\n weight?: Weight;\n /** Semantic color. */\n tone?: Tone;\n /** Text alignment. */\n align?: Align;\n /** Truncate to a single line with an ellipsis. */\n truncate?: boolean;\n /** Clamp to N lines with an ellipsis. */\n lineClamp?: Clamp;\n /** Shortcut for `tone=\"muted\"`. */\n muted?: boolean;\n as?: ElementType;\n}\n\n/** Body text with fluid sizing and theme-driven color. */\nexport function Text({\n step = 0,\n weight,\n tone = 'default',\n align,\n truncate = false,\n lineClamp,\n muted = false,\n as: Tag = 'p',\n className,\n ...props\n}: TextProps) {\n return (\n <Tag\n className={cn(\n STEP_CLASS[step],\n weight && WEIGHT_CLASS[weight],\n TONE_CLASS[muted ? 'muted' : tone],\n align && ALIGN_CLASS[align],\n truncate && 'truncate',\n lineClamp && CLAMP_CLASS[lineClamp],\n className,\n )}\n {...props}\n />\n );\n}\n\n/** Larger intro paragraph — sets a subject up before the body copy. */\nexport function Lead({ className, ...props }: Omit<TextProps, 'step'>) {\n return (\n <Text\n step={1}\n tone=\"muted\"\n className={cn('max-w-prose leading-relaxed', className)}\n {...props}\n />\n );\n}\n\n/** Small supporting copy (helper text, meta). */\nexport function Small({ className, ...props }: Omit<TextProps, 'step' | 'as'>) {\n return <Text as=\"small\" step={-1} className={className} {...props} />;\n}\n\n/** Caption / fine print — smallest step, muted by default. */\nexport function Caption({\n className,\n ...props\n}: Omit<TextProps, 'step' | 'as'>) {\n return (\n <Text as=\"span\" step={-2} tone=\"muted\" className={className} {...props} />\n );\n}\n\n/** Overline / eyebrow — uppercase tracked label above a heading. */\nexport function Overline({\n className,\n ...props\n}: Omit<TextProps, 'step' | 'as' | 'weight'>) {\n return (\n <Text\n as=\"span\"\n step={-2}\n weight=\"semibold\"\n tone=\"muted\"\n className={cn('tracking-wide uppercase', className)}\n {...props}\n />\n );\n}\n\n/* ---------- Inline emphasis ---------- */\n\n/** Bold inline emphasis. */\nexport function Strong({\n className,\n ...props\n}: ComponentPropsWithoutRef<'strong'>) {\n return (\n <strong\n className={cn('font-semibold text-content', className)}\n {...props}\n />\n );\n}\n\n/** Italic inline emphasis. */\nexport function Em({ className, ...props }: ComponentPropsWithoutRef<'em'>) {\n return <em className={cn('italic', className)} {...props} />;\n}\n\n/** Inline code. */\nexport function Code({\n className,\n ...props\n}: ComponentPropsWithoutRef<'code'>) {\n return (\n <code\n className={cn(\n 'rounded-sm border border-border bg-surface px-2xs py-3xs',\n 'font-mono text-step-sm text-content tabular-nums',\n className,\n )}\n {...props}\n />\n );\n}\n\n/** Keyboard key. */\nexport function Kbd({ className, ...props }: ComponentPropsWithoutRef<'kbd'>) {\n return (\n <kbd\n className={cn(\n 'inline-flex items-center rounded-md border border-border bg-surface-elevated',\n 'px-2xs py-3xs font-mono text-step-xs text-content-muted shadow-edge',\n className,\n )}\n {...props}\n />\n );\n}\n\n/** Themed anchor. */\nexport function Link({\n className,\n children,\n ...props\n}: ComponentPropsWithoutRef<'a'>) {\n return (\n <a\n className={cn(\n 'font-medium text-primary underline underline-offset-2',\n 'transition-colors duration-200 ease-smooth hover:text-accent',\n 'focus-ring',\n className,\n )}\n {...props}\n >\n {children}\n </a>\n );\n}\n\n/* ---------- Block-level ---------- */\n\n/** Pull quote — left border + muted italic body. */\nexport function Blockquote({\n className,\n ...props\n}: ComponentPropsWithoutRef<'blockquote'>) {\n return (\n <blockquote\n className={cn(\n 'border-l-4 border-primary pl-s italic',\n 'text-step-1 text-content-muted',\n className,\n )}\n {...props}\n />\n );\n}\n\nexport interface ListProps extends ComponentPropsWithoutRef<'ul'> {\n /** Render an ordered list (`<ol>`) with numeric markers. */\n ordered?: boolean;\n}\n\n/** Bulleted or numbered list with themed markers and fluid spacing. */\nexport function List({ ordered = false, className, ...props }: ListProps) {\n const Tag = ordered ? 'ol' : 'ul';\n return (\n <Tag\n className={cn(\n ordered ? 'list-decimal' : 'list-disc',\n 'ms-m flex flex-col gap-2xs text-step-0 text-content marker:text-content-muted',\n className,\n )}\n {...(props as ComponentPropsWithoutRef<'ol'>)}\n />\n );\n}\n\n/** List item — pairs with `List`. */\nexport function ListItem({\n className,\n ...props\n}: ComponentPropsWithoutRef<'li'>) {\n return <li className={cn('ps-2xs', className)} {...props} />;\n}\n\n/* ---------- Headings ---------- */\n\nexport interface HeadingProps extends ComponentPropsWithoutRef<'h2'> {\n step?: Step;\n weight?: Weight;\n as?: ElementType;\n}\n\n/** Heading primitive — fluid step + weight, defaults to the largest step. */\nexport function Heading({\n step = 3,\n weight = 'semibold',\n as: Tag = 'h2',\n className,\n ...props\n}: HeadingProps) {\n return (\n <Tag\n className={cn(\n STEP_CLASS[step],\n WEIGHT_CLASS[weight],\n 'text-content',\n className,\n )}\n {...props}\n />\n );\n}\n\n/**\n * Semantic heading components (h1–h6) mapped to the fluid type scale.\n * Sizes taper past the four Utopia steps by dropping weight for h5/h6.\n */\nexport type NamedHeadingProps = Omit<HeadingProps, 'as' | 'step'>;\n\nexport function HeadingOne(props: NamedHeadingProps) {\n return <Heading as=\"h1\" step={3} weight=\"semibold\" {...props} />;\n}\n\nexport function HeadingTwo(props: NamedHeadingProps) {\n return <Heading as=\"h2\" step={2} weight=\"semibold\" {...props} />;\n}\n\nexport function HeadingThree(props: NamedHeadingProps) {\n return <Heading as=\"h3\" step={1} weight=\"semibold\" {...props} />;\n}\n\nexport function HeadingFour(props: NamedHeadingProps) {\n return <Heading as=\"h4\" step={0} weight=\"semibold\" {...props} />;\n}\n\nexport function HeadingFive(props: NamedHeadingProps) {\n return <Heading as=\"h5\" step={0} weight=\"medium\" {...props} />;\n}\n\nexport function HeadingSix({ className, ...props }: NamedHeadingProps) {\n return (\n <Heading\n as=\"h6\"\n step={0}\n weight=\"medium\"\n className={cn('tracking-wide text-content-muted uppercase', className)}\n {...props}\n />\n );\n}\n"],"names":["cn","STEP_CLASS","WEIGHT_CLASS","normal","medium","semibold","TONE_CLASS","default","muted","primary","accent","ALIGN_CLASS","start","center","end","CLAMP_CLASS","Text","step","weight","tone","align","truncate","lineClamp","as","Tag","className","props","Lead","Small","Caption","Overline","Strong","strong","Em","em","Code","code","Kbd","kbd","Link","children","a","Blockquote","blockquote","List","ordered","ListItem","li","Heading","HeadingOne","HeadingTwo","HeadingThree","HeadingFour","HeadingFive","HeadingSix"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_demo.d.ts","sourceRoot":"","sources":["../../../src/ui/layout/_demo.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC,wBAAgB,OAAO,CAAC,EACtB,QAAQ,EACR,IAAgB,GACjB,EAAE;IACD,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,IAAI,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;CAC9B,+BAUA"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
// Shared visual filler for layout stories — not exported from the package.
|
|
3
|
+
export function DemoBox({ children, tone = 'primary' }) {
|
|
4
|
+
const cls = tone === 'primary' ? 'bg-primary text-primary-content' : 'border border-border bg-surface-elevated text-content';
|
|
5
|
+
return /*#__PURE__*/ _jsx("div", {
|
|
6
|
+
className: `rounded-md p-s text-center text-step-sm ${cls}`,
|
|
7
|
+
children: children != null ? children : 'Item'
|
|
8
|
+
});
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
//# sourceMappingURL=_demo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/ui/layout/_demo.tsx"],"sourcesContent":["import type { ReactNode } from 'react';\n\n// Shared visual filler for layout stories — not exported from the package.\nexport function DemoBox({\n children,\n tone = 'primary',\n}: {\n children?: ReactNode;\n tone?: 'primary' | 'surface';\n}) {\n const cls =\n tone === 'primary'\n ? 'bg-primary text-primary-content'\n : 'border border-border bg-surface-elevated text-content';\n return (\n <div className={`rounded-md p-s text-center text-step-sm ${cls}`}>\n {children ?? 'Item'}\n </div>\n );\n}\n"],"names":["DemoBox","children","tone","cls","div","className"],"mappings":";AAEA,2EAA2E;AAC3E,OAAO,SAASA,QAAQ,EACtBC,QAAQ,EACRC,OAAO,SAAS,EAIjB;IACC,MAAMC,MACJD,SAAS,YACL,oCACA;IACN,qBACE,KAACE;QAAIC,WAAW,CAAC,wCAAwC,EAAEF,KAAK;kBAC7DF,mBAAAA,WAAY;;AAGnB"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { SpacingToken } from '../molecules/stack/stack.js';
|
|
2
|
+
export type { SpacingToken };
|
|
3
|
+
/** Fluid gap tokens → the Utopia --spacing-* scale. */
|
|
4
|
+
export declare const GAP: Record<SpacingToken, string>;
|
|
5
|
+
export type Justify = 'start' | 'center' | 'end' | 'between';
|
|
6
|
+
export declare const JUSTIFY: Record<Justify, string>;
|
|
7
|
+
export type Align = 'start' | 'center' | 'end' | 'stretch' | 'baseline';
|
|
8
|
+
export declare const ALIGN: Record<Align, string>;
|
|
9
|
+
//# sourceMappingURL=_shared.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_shared.d.ts","sourceRoot":"","sources":["../../../src/ui/layout/_shared.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEhE,YAAY,EAAE,YAAY,EAAE,CAAC;AAE7B,uDAAuD;AACvD,eAAO,MAAM,GAAG,EAAE,MAAM,CAAC,YAAY,EAAE,MAAM,CAU5C,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,GAAG,SAAS,CAAC;AAC7D,eAAO,MAAM,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAK3C,CAAC;AAEF,MAAM,MAAM,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,GAAG,SAAS,GAAG,UAAU,CAAC;AACxE,eAAO,MAAM,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAMvC,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
// Shared token lookups for the flex-first layout primitives (Every Layout).
|
|
2
|
+
// Static class strings so Tailwind's scanner keeps them; keyed by union types
|
|
3
|
+
// so a caller cannot escape the Utopia spacing scale. Not part of the public
|
|
4
|
+
// barrel — primitives import from here, consumers import the primitives.
|
|
5
|
+
/** Fluid gap tokens → the Utopia --spacing-* scale. */ export const GAP = {
|
|
6
|
+
'3xs': 'gap-3xs',
|
|
7
|
+
'2xs': 'gap-2xs',
|
|
8
|
+
xs: 'gap-xs',
|
|
9
|
+
s: 'gap-s',
|
|
10
|
+
m: 'gap-m',
|
|
11
|
+
l: 'gap-l',
|
|
12
|
+
xl: 'gap-xl',
|
|
13
|
+
'2xl': 'gap-2xl',
|
|
14
|
+
'3xl': 'gap-3xl'
|
|
15
|
+
};
|
|
16
|
+
export const JUSTIFY = {
|
|
17
|
+
start: 'justify-start',
|
|
18
|
+
center: 'justify-center',
|
|
19
|
+
end: 'justify-end',
|
|
20
|
+
between: 'justify-between'
|
|
21
|
+
};
|
|
22
|
+
export const ALIGN = {
|
|
23
|
+
start: 'items-start',
|
|
24
|
+
center: 'items-center',
|
|
25
|
+
end: 'items-end',
|
|
26
|
+
stretch: 'items-stretch',
|
|
27
|
+
baseline: 'items-baseline'
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
//# sourceMappingURL=_shared.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/ui/layout/_shared.ts"],"sourcesContent":["// Shared token lookups for the flex-first layout primitives (Every Layout).\n// Static class strings so Tailwind's scanner keeps them; keyed by union types\n// so a caller cannot escape the Utopia spacing scale. Not part of the public\n// barrel — primitives import from here, consumers import the primitives.\n\nimport type { SpacingToken } from '../molecules/stack/stack.js';\n\nexport type { SpacingToken };\n\n/** Fluid gap tokens → the Utopia --spacing-* scale. */\nexport const GAP: Record<SpacingToken, string> = {\n '3xs': 'gap-3xs',\n '2xs': 'gap-2xs',\n xs: 'gap-xs',\n s: 'gap-s',\n m: 'gap-m',\n l: 'gap-l',\n xl: 'gap-xl',\n '2xl': 'gap-2xl',\n '3xl': 'gap-3xl',\n};\n\nexport type Justify = 'start' | 'center' | 'end' | 'between';\nexport const JUSTIFY: Record<Justify, string> = {\n start: 'justify-start',\n center: 'justify-center',\n end: 'justify-end',\n between: 'justify-between',\n};\n\nexport type Align = 'start' | 'center' | 'end' | 'stretch' | 'baseline';\nexport const ALIGN: Record<Align, string> = {\n start: 'items-start',\n center: 'items-center',\n end: 'items-end',\n stretch: 'items-stretch',\n baseline: 'items-baseline',\n};\n"],"names":["GAP","xs","s","m","l","xl","JUSTIFY","start","center","end","between","ALIGN","stretch","baseline"],"mappings":"AAAA,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yEAAyE;AAMzE,qDAAqD,GACrD,OAAO,MAAMA,MAAoC;IAC/C,OAAO;IACP,OAAO;IACPC,IAAI;IACJC,GAAG;IACHC,GAAG;IACHC,GAAG;IACHC,IAAI;IACJ,OAAO;IACP,OAAO;AACT,EAAE;AAGF,OAAO,MAAMC,UAAmC;IAC9CC,OAAO;IACPC,QAAQ;IACRC,KAAK;IACLC,SAAS;AACX,EAAE;AAGF,OAAO,MAAMC,QAA+B;IAC1CJ,OAAO;IACPC,QAAQ;IACRC,KAAK;IACLG,SAAS;IACTC,UAAU;AACZ,EAAE"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { ComponentPropsWithoutRef, ElementType } from 'react';
|
|
2
|
+
import type { SpacingToken } from '../_shared.js';
|
|
3
|
+
export interface BoxProps extends ComponentPropsWithoutRef<'div'> {
|
|
4
|
+
/** Fluid padding token (Utopia). */
|
|
5
|
+
padding?: SpacingToken;
|
|
6
|
+
as?: ElementType;
|
|
7
|
+
}
|
|
8
|
+
/** Padded container with a themed boundary and fluid padding. */
|
|
9
|
+
export declare function Box({ padding, as: Tag, className, ...props }: BoxProps): import("react").JSX.Element;
|
|
10
|
+
//# sourceMappingURL=box.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"box.d.ts","sourceRoot":"","sources":["../../../../src/ui/layout/box/box.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAGnE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAelD,MAAM,WAAW,QAAS,SAAQ,wBAAwB,CAAC,KAAK,CAAC;IAC/D,oCAAoC;IACpC,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,EAAE,CAAC,EAAE,WAAW,CAAC;CAClB;AAED,iEAAiE;AACjE,wBAAgB,GAAG,CAAC,EAClB,OAAa,EACb,EAAE,EAAE,GAAW,EACf,SAAS,EACT,GAAG,KAAK,EACT,EAAE,QAAQ,+BAWV"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { _ as _extends } from "@swc/helpers/_/_extends";
|
|
2
|
+
import { _ as _object_without_properties_loose } from "@swc/helpers/_/_object_without_properties_loose";
|
|
3
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
4
|
+
import { cn } from '../../utils/cn.js';
|
|
5
|
+
// Static strings so Tailwind's scanner keeps them.
|
|
6
|
+
const PADDING = {
|
|
7
|
+
'3xs': 'p-3xs',
|
|
8
|
+
'2xs': 'p-2xs',
|
|
9
|
+
xs: 'p-xs',
|
|
10
|
+
s: 'p-s',
|
|
11
|
+
m: 'p-m',
|
|
12
|
+
l: 'p-l',
|
|
13
|
+
xl: 'p-xl',
|
|
14
|
+
'2xl': 'p-2xl',
|
|
15
|
+
'3xl': 'p-3xl'
|
|
16
|
+
};
|
|
17
|
+
/** Padded container with a themed boundary and fluid padding. */ export function Box(_0) {
|
|
18
|
+
let { padding = 'm', as: Tag = 'div', className } = _0, props = _object_without_properties_loose(_0, [
|
|
19
|
+
"padding",
|
|
20
|
+
"as",
|
|
21
|
+
"className"
|
|
22
|
+
]);
|
|
23
|
+
return /*#__PURE__*/ _jsx(Tag, _extends({
|
|
24
|
+
className: cn(PADDING[padding], 'rounded-md border border-border bg-surface-elevated text-content', className)
|
|
25
|
+
}, props));
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
//# sourceMappingURL=box.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/ui/layout/box/box.tsx"],"sourcesContent":["import type { ComponentPropsWithoutRef, ElementType } from 'react';\n\nimport { cn } from '../../utils/cn.js';\nimport type { SpacingToken } from '../_shared.js';\n\n// Static strings so Tailwind's scanner keeps them.\nconst PADDING: Record<SpacingToken, string> = {\n '3xs': 'p-3xs',\n '2xs': 'p-2xs',\n xs: 'p-xs',\n s: 'p-s',\n m: 'p-m',\n l: 'p-l',\n xl: 'p-xl',\n '2xl': 'p-2xl',\n '3xl': 'p-3xl',\n};\n\nexport interface BoxProps extends ComponentPropsWithoutRef<'div'> {\n /** Fluid padding token (Utopia). */\n padding?: SpacingToken;\n as?: ElementType;\n}\n\n/** Padded container with a themed boundary and fluid padding. */\nexport function Box({\n padding = 'm',\n as: Tag = 'div',\n className,\n ...props\n}: BoxProps) {\n return (\n <Tag\n className={cn(\n PADDING[padding],\n 'rounded-md border border-border bg-surface-elevated text-content',\n className,\n )}\n {...props}\n />\n );\n}\n"],"names":["cn","PADDING","xs","s","m","l","xl","Box","padding","as","Tag","className","props"],"mappings":";;;AAEA,SAASA,EAAE,QAAQ,oBAAoB;AAGvC,mDAAmD;AACnD,MAAMC,UAAwC;IAC5C,OAAO;IACP,OAAO;IACPC,IAAI;IACJC,GAAG;IACHC,GAAG;IACHC,GAAG;IACHC,IAAI;IACJ,OAAO;IACP,OAAO;AACT;AAQA,+DAA+D,GAC/D,OAAO,SAASC,IAAI,EAKT;QALS,EAClBC,UAAU,GAAG,EACbC,IAAIC,MAAM,KAAK,EACfC,SAAS,EAEA,OADNC;;;;;IAEH,qBACE,KAACF;QACCC,WAAWX,GACTC,OAAO,CAACO,QAAQ,EAChB,oEACAG;OAEEC;AAGV"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ui/layout/box/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/ui/layout/box/index.ts"],"sourcesContent":["export * from './box.js';\n"],"names":[],"mappings":"AAAA,cAAc,WAAW"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { ComponentPropsWithoutRef, ElementType } from 'react';
|
|
2
|
+
export interface CenterProps extends ComponentPropsWithoutRef<'div'> {
|
|
3
|
+
/** Max line-length. Defaults to the --measure token; a string overrides it. */
|
|
4
|
+
measure?: string;
|
|
5
|
+
/** Horizontal gutters so content never touches the viewport edge. */
|
|
6
|
+
gutters?: boolean;
|
|
7
|
+
/** Also center the children themselves (not just the content box). */
|
|
8
|
+
intrinsic?: boolean;
|
|
9
|
+
as?: ElementType;
|
|
10
|
+
}
|
|
11
|
+
/** Horizontally centers content and caps its width to a readable measure. */
|
|
12
|
+
export declare function Center({ measure, gutters, intrinsic, as: Tag, className, style, ...props }: CenterProps): import("react").JSX.Element;
|
|
13
|
+
//# sourceMappingURL=center.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"center.d.ts","sourceRoot":"","sources":["../../../../src/ui/layout/center/center.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,wBAAwB,EAExB,WAAW,EACZ,MAAM,OAAO,CAAC;AAIf,MAAM,WAAW,WAAY,SAAQ,wBAAwB,CAAC,KAAK,CAAC;IAClE,+EAA+E;IAC/E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qEAAqE;IACrE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,sEAAsE;IACtE,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,EAAE,CAAC,EAAE,WAAW,CAAC;CAClB;AAED,6EAA6E;AAC7E,wBAAgB,MAAM,CAAC,EACrB,OAAO,EACP,OAAe,EACf,SAAiB,EACjB,EAAE,EAAE,GAAW,EACf,SAAS,EACT,KAAK,EACL,GAAG,KAAK,EACT,EAAE,WAAW,+BAeb"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { _ as _extends } from "@swc/helpers/_/_extends";
|
|
2
|
+
import { _ as _object_without_properties_loose } from "@swc/helpers/_/_object_without_properties_loose";
|
|
3
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
4
|
+
import { cn } from '../../utils/cn.js';
|
|
5
|
+
/** Horizontally centers content and caps its width to a readable measure. */ export function Center(_0) {
|
|
6
|
+
let { measure, gutters = false, intrinsic = false, as: Tag = 'div', className, style } = _0, props = _object_without_properties_loose(_0, [
|
|
7
|
+
"measure",
|
|
8
|
+
"gutters",
|
|
9
|
+
"intrinsic",
|
|
10
|
+
"as",
|
|
11
|
+
"className",
|
|
12
|
+
"style"
|
|
13
|
+
]);
|
|
14
|
+
return /*#__PURE__*/ _jsx(Tag, _extends({
|
|
15
|
+
className: cn('mx-auto max-w-[var(--measure)]', gutters && 'px-s', intrinsic && 'flex flex-col items-center', className),
|
|
16
|
+
style: measure ? _extends({}, style, {
|
|
17
|
+
'--measure': measure
|
|
18
|
+
}) : style
|
|
19
|
+
}, props));
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
//# sourceMappingURL=center.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/ui/layout/center/center.tsx"],"sourcesContent":["import type {\n ComponentPropsWithoutRef,\n CSSProperties,\n ElementType,\n} from 'react';\n\nimport { cn } from '../../utils/cn.js';\n\nexport interface CenterProps extends ComponentPropsWithoutRef<'div'> {\n /** Max line-length. Defaults to the --measure token; a string overrides it. */\n measure?: string;\n /** Horizontal gutters so content never touches the viewport edge. */\n gutters?: boolean;\n /** Also center the children themselves (not just the content box). */\n intrinsic?: boolean;\n as?: ElementType;\n}\n\n/** Horizontally centers content and caps its width to a readable measure. */\nexport function Center({\n measure,\n gutters = false,\n intrinsic = false,\n as: Tag = 'div',\n className,\n style,\n ...props\n}: CenterProps) {\n return (\n <Tag\n className={cn(\n 'mx-auto max-w-[var(--measure)]',\n gutters && 'px-s',\n intrinsic && 'flex flex-col items-center',\n className,\n )}\n style={\n measure ? ({ ...style, '--measure': measure } as CSSProperties) : style\n }\n {...props}\n />\n );\n}\n"],"names":["cn","Center","measure","gutters","intrinsic","as","Tag","className","style","props"],"mappings":";;;AAMA,SAASA,EAAE,QAAQ,oBAAoB;AAYvC,2EAA2E,GAC3E,OAAO,SAASC,OAAO,EAQT;QARS,EACrBC,OAAO,EACPC,UAAU,KAAK,EACfC,YAAY,KAAK,EACjBC,IAAIC,MAAM,KAAK,EACfC,SAAS,EACTC,KAAK,EAEO,OADTC;;;;;;;;IAEH,qBACE,KAACH;QACCC,WAAWP,GACT,kCACAG,WAAW,QACXC,aAAa,8BACbG;QAEFC,OACEN,UAAW,aAAKM;YAAO,aAAaN;aAA8BM;OAEhEC;AAGV"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ui/layout/center/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/ui/layout/center/index.ts"],"sourcesContent":["export * from './center.js';\n"],"names":[],"mappings":"AAAA,cAAc,cAAc"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { ComponentPropsWithoutRef, ElementType } from 'react';
|
|
2
|
+
import { type Align, type Justify, type SpacingToken } from '../_shared.js';
|
|
3
|
+
export interface ClusterProps extends ComponentPropsWithoutRef<'div'> {
|
|
4
|
+
gap?: SpacingToken;
|
|
5
|
+
justify?: Justify;
|
|
6
|
+
align?: Align;
|
|
7
|
+
as?: ElementType;
|
|
8
|
+
}
|
|
9
|
+
/** Horizontal group that wraps — toolbars, tag lists, button rows. */
|
|
10
|
+
export declare function Cluster({ gap, justify, align, as: Tag, className, ...props }: ClusterProps): import("react").JSX.Element;
|
|
11
|
+
//# sourceMappingURL=cluster.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cluster.d.ts","sourceRoot":"","sources":["../../../../src/ui/layout/cluster/cluster.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAGnE,OAAO,EAEL,KAAK,KAAK,EAGV,KAAK,OAAO,EACZ,KAAK,YAAY,EAClB,MAAM,eAAe,CAAC;AAEvB,MAAM,WAAW,YAAa,SAAQ,wBAAwB,CAAC,KAAK,CAAC;IACnE,GAAG,CAAC,EAAE,YAAY,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,EAAE,CAAC,EAAE,WAAW,CAAC;CAClB;AAED,sEAAsE;AACtE,wBAAgB,OAAO,CAAC,EACtB,GAAS,EACT,OAAiB,EACjB,KAAgB,EAChB,EAAE,EAAE,GAAW,EACf,SAAS,EACT,GAAG,KAAK,EACT,EAAE,YAAY,+BAad"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { _ as _extends } from "@swc/helpers/_/_extends";
|
|
2
|
+
import { _ as _object_without_properties_loose } from "@swc/helpers/_/_object_without_properties_loose";
|
|
3
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
4
|
+
import { cn } from '../../utils/cn.js';
|
|
5
|
+
import { ALIGN, GAP, JUSTIFY } from '../_shared.js';
|
|
6
|
+
/** Horizontal group that wraps — toolbars, tag lists, button rows. */ export function Cluster(_0) {
|
|
7
|
+
let { gap = 's', justify = 'start', align = 'center', as: Tag = 'div', className } = _0, props = _object_without_properties_loose(_0, [
|
|
8
|
+
"gap",
|
|
9
|
+
"justify",
|
|
10
|
+
"align",
|
|
11
|
+
"as",
|
|
12
|
+
"className"
|
|
13
|
+
]);
|
|
14
|
+
return /*#__PURE__*/ _jsx(Tag, _extends({
|
|
15
|
+
className: cn('flex flex-wrap', GAP[gap], JUSTIFY[justify], ALIGN[align], className)
|
|
16
|
+
}, props));
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
//# sourceMappingURL=cluster.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/ui/layout/cluster/cluster.tsx"],"sourcesContent":["import type { ComponentPropsWithoutRef, ElementType } from 'react';\n\nimport { cn } from '../../utils/cn.js';\nimport {\n ALIGN,\n type Align,\n GAP,\n JUSTIFY,\n type Justify,\n type SpacingToken,\n} from '../_shared.js';\n\nexport interface ClusterProps extends ComponentPropsWithoutRef<'div'> {\n gap?: SpacingToken;\n justify?: Justify;\n align?: Align;\n as?: ElementType;\n}\n\n/** Horizontal group that wraps — toolbars, tag lists, button rows. */\nexport function Cluster({\n gap = 's',\n justify = 'start',\n align = 'center',\n as: Tag = 'div',\n className,\n ...props\n}: ClusterProps) {\n return (\n <Tag\n className={cn(\n 'flex flex-wrap',\n GAP[gap],\n JUSTIFY[justify],\n ALIGN[align],\n className,\n )}\n {...props}\n />\n );\n}\n"],"names":["cn","ALIGN","GAP","JUSTIFY","Cluster","gap","justify","align","as","Tag","className","props"],"mappings":";;;AAEA,SAASA,EAAE,QAAQ,oBAAoB;AACvC,SACEC,KAAK,EAELC,GAAG,EACHC,OAAO,QAGF,gBAAgB;AASvB,oEAAoE,GACpE,OAAO,SAASC,QAAQ,EAOT;QAPS,EACtBC,MAAM,GAAG,EACTC,UAAU,OAAO,EACjBC,QAAQ,QAAQ,EAChBC,IAAIC,MAAM,KAAK,EACfC,SAAS,EAEI,OADVC;;;;;;;IAEH,qBACE,KAACF;QACCC,WAAWV,GACT,kBACAE,GAAG,CAACG,IAAI,EACRF,OAAO,CAACG,QAAQ,EAChBL,KAAK,CAACM,MAAM,EACZG;OAEEC;AAGV"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ui/layout/cluster/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/ui/layout/cluster/index.ts"],"sourcesContent":["export * from './cluster.js';\n"],"names":[],"mappings":"AAAA,cAAc,eAAe"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { ComponentPropsWithoutRef, ElementType } from 'react';
|
|
2
|
+
import { type SpacingToken } from '../_shared.js';
|
|
3
|
+
export interface CoverProps extends ComponentPropsWithoutRef<'div'> {
|
|
4
|
+
/** Minimum block size (defaults to 100vh). */
|
|
5
|
+
minHeight?: string;
|
|
6
|
+
gap?: SpacingToken;
|
|
7
|
+
as?: ElementType;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Vertical layout with a centered principal element and optional header/footer
|
|
11
|
+
* pinned to the edges. Compose with `Cover.Header`, `Cover.Main`, `Cover.Footer`.
|
|
12
|
+
*/
|
|
13
|
+
declare function CoverRoot({ minHeight, gap, as: Tag, className, style, ...props }: CoverProps): import("react").JSX.Element;
|
|
14
|
+
export interface CoverSlotProps extends ComponentPropsWithoutRef<'div'> {
|
|
15
|
+
as?: ElementType;
|
|
16
|
+
}
|
|
17
|
+
declare function CoverHeader({ as: Tag, className, ...props }: CoverSlotProps): import("react").JSX.Element;
|
|
18
|
+
declare function CoverMain({ as: Tag, className, ...props }: CoverSlotProps): import("react").JSX.Element;
|
|
19
|
+
declare function CoverFooter({ as: Tag, className, ...props }: CoverSlotProps): import("react").JSX.Element;
|
|
20
|
+
export declare const Cover: typeof CoverRoot & {
|
|
21
|
+
Header: typeof CoverHeader;
|
|
22
|
+
Main: typeof CoverMain;
|
|
23
|
+
Footer: typeof CoverFooter;
|
|
24
|
+
};
|
|
25
|
+
export {};
|
|
26
|
+
//# sourceMappingURL=cover.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cover.d.ts","sourceRoot":"","sources":["../../../../src/ui/layout/cover/cover.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,wBAAwB,EAExB,WAAW,EACZ,MAAM,OAAO,CAAC;AAGf,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;AAEvD,MAAM,WAAW,UAAW,SAAQ,wBAAwB,CAAC,KAAK,CAAC;IACjE,8CAA8C;IAC9C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,YAAY,CAAC;IACnB,EAAE,CAAC,EAAE,WAAW,CAAC;CAClB;AAED;;;GAGG;AACH,iBAAS,SAAS,CAAC,EACjB,SAAS,EACT,GAAS,EACT,EAAE,EAAE,GAAW,EACf,SAAS,EACT,KAAK,EACL,GAAG,KAAK,EACT,EAAE,UAAU,+BAgBZ;AAED,MAAM,WAAW,cAAe,SAAQ,wBAAwB,CAAC,KAAK,CAAC;IACrE,EAAE,CAAC,EAAE,WAAW,CAAC;CAClB;AAED,iBAAS,WAAW,CAAC,EAAE,EAAE,EAAE,GAAW,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,+BAE5E;AAED,iBAAS,SAAS,CAAC,EAAE,EAAE,EAAE,GAAW,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,+BAE1E;AAED,iBAAS,WAAW,CAAC,EAAE,EAAE,EAAE,GAAW,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,+BAE5E;AAED,eAAO,MAAM,KAAK;;;;CAIhB,CAAC"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { _ as _extends } from "@swc/helpers/_/_extends";
|
|
2
|
+
import { _ as _object_without_properties_loose } from "@swc/helpers/_/_object_without_properties_loose";
|
|
3
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
4
|
+
import { cn } from '../../utils/cn.js';
|
|
5
|
+
import { GAP } from '../_shared.js';
|
|
6
|
+
/**
|
|
7
|
+
* Vertical layout with a centered principal element and optional header/footer
|
|
8
|
+
* pinned to the edges. Compose with `Cover.Header`, `Cover.Main`, `Cover.Footer`.
|
|
9
|
+
*/ function CoverRoot(_0) {
|
|
10
|
+
let { minHeight, gap = 'm', as: Tag = 'div', className, style } = _0, props = _object_without_properties_loose(_0, [
|
|
11
|
+
"minHeight",
|
|
12
|
+
"gap",
|
|
13
|
+
"as",
|
|
14
|
+
"className",
|
|
15
|
+
"style"
|
|
16
|
+
]);
|
|
17
|
+
return /*#__PURE__*/ _jsx(Tag, _extends({
|
|
18
|
+
className: cn('flex min-h-[var(--_cover-min,100vh)] flex-col', GAP[gap], className),
|
|
19
|
+
style: minHeight ? _extends({}, style, {
|
|
20
|
+
'--_cover-min': minHeight
|
|
21
|
+
}) : style
|
|
22
|
+
}, props));
|
|
23
|
+
}
|
|
24
|
+
function CoverHeader(_0) {
|
|
25
|
+
let { as: Tag = 'div', className } = _0, props = _object_without_properties_loose(_0, [
|
|
26
|
+
"as",
|
|
27
|
+
"className"
|
|
28
|
+
]);
|
|
29
|
+
return /*#__PURE__*/ _jsx(Tag, _extends({
|
|
30
|
+
className: cn(className)
|
|
31
|
+
}, props));
|
|
32
|
+
}
|
|
33
|
+
function CoverMain(_0) {
|
|
34
|
+
let { as: Tag = 'div', className } = _0, props = _object_without_properties_loose(_0, [
|
|
35
|
+
"as",
|
|
36
|
+
"className"
|
|
37
|
+
]);
|
|
38
|
+
return /*#__PURE__*/ _jsx(Tag, _extends({
|
|
39
|
+
className: cn('my-auto', className)
|
|
40
|
+
}, props));
|
|
41
|
+
}
|
|
42
|
+
function CoverFooter(_0) {
|
|
43
|
+
let { as: Tag = 'div', className } = _0, props = _object_without_properties_loose(_0, [
|
|
44
|
+
"as",
|
|
45
|
+
"className"
|
|
46
|
+
]);
|
|
47
|
+
return /*#__PURE__*/ _jsx(Tag, _extends({
|
|
48
|
+
className: cn(className)
|
|
49
|
+
}, props));
|
|
50
|
+
}
|
|
51
|
+
export const Cover = Object.assign(CoverRoot, {
|
|
52
|
+
Header: CoverHeader,
|
|
53
|
+
Main: CoverMain,
|
|
54
|
+
Footer: CoverFooter
|
|
55
|
+
});
|
|
56
|
+
|
|
57
|
+
//# sourceMappingURL=cover.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/ui/layout/cover/cover.tsx"],"sourcesContent":["import type {\n ComponentPropsWithoutRef,\n CSSProperties,\n ElementType,\n} from 'react';\n\nimport { cn } from '../../utils/cn.js';\nimport { GAP, type SpacingToken } from '../_shared.js';\n\nexport interface CoverProps extends ComponentPropsWithoutRef<'div'> {\n /** Minimum block size (defaults to 100vh). */\n minHeight?: string;\n gap?: SpacingToken;\n as?: ElementType;\n}\n\n/**\n * Vertical layout with a centered principal element and optional header/footer\n * pinned to the edges. Compose with `Cover.Header`, `Cover.Main`, `Cover.Footer`.\n */\nfunction CoverRoot({\n minHeight,\n gap = 'm',\n as: Tag = 'div',\n className,\n style,\n ...props\n}: CoverProps) {\n return (\n <Tag\n className={cn(\n 'flex min-h-[var(--_cover-min,100vh)] flex-col',\n GAP[gap],\n className,\n )}\n style={\n minHeight\n ? ({ ...style, '--_cover-min': minHeight } as CSSProperties)\n : style\n }\n {...props}\n />\n );\n}\n\nexport interface CoverSlotProps extends ComponentPropsWithoutRef<'div'> {\n as?: ElementType;\n}\n\nfunction CoverHeader({ as: Tag = 'div', className, ...props }: CoverSlotProps) {\n return <Tag className={cn(className)} {...props} />;\n}\n\nfunction CoverMain({ as: Tag = 'div', className, ...props }: CoverSlotProps) {\n return <Tag className={cn('my-auto', className)} {...props} />;\n}\n\nfunction CoverFooter({ as: Tag = 'div', className, ...props }: CoverSlotProps) {\n return <Tag className={cn(className)} {...props} />;\n}\n\nexport const Cover = Object.assign(CoverRoot, {\n Header: CoverHeader,\n Main: CoverMain,\n Footer: CoverFooter,\n});\n"],"names":["cn","GAP","CoverRoot","minHeight","gap","as","Tag","className","style","props","CoverHeader","CoverMain","CoverFooter","Cover","Object","assign","Header","Main","Footer"],"mappings":";;;AAMA,SAASA,EAAE,QAAQ,oBAAoB;AACvC,SAASC,GAAG,QAA2B,gBAAgB;AASvD;;;CAGC,GACD,SAASC,UAAU,EAON;QAPM,EACjBC,SAAS,EACTC,MAAM,GAAG,EACTC,IAAIC,MAAM,KAAK,EACfC,SAAS,EACTC,KAAK,EAEM,OADRC;;;;;;;IAEH,qBACE,KAACH;QACCC,WAAWP,GACT,iDACAC,GAAG,CAACG,IAAI,EACRG;QAEFC,OACEL,YACK,aAAKK;YAAO,gBAAgBL;aAC7BK;OAEFC;AAGV;AAMA,SAASC,YAAY,EAAwD;QAAxD,EAAEL,IAAIC,MAAM,KAAK,EAAEC,SAAS,EAA4B,OAAvBE;;;;IACpD,qBAAO,KAACH;QAAIC,WAAWP,GAAGO;OAAgBE;AAC5C;AAEA,SAASE,UAAU,EAAwD;QAAxD,EAAEN,IAAIC,MAAM,KAAK,EAAEC,SAAS,EAA4B,OAAvBE;;;;IAClD,qBAAO,KAACH;QAAIC,WAAWP,GAAG,WAAWO;OAAgBE;AACvD;AAEA,SAASG,YAAY,EAAwD;QAAxD,EAAEP,IAAIC,MAAM,KAAK,EAAEC,SAAS,EAA4B,OAAvBE;;;;IACpD,qBAAO,KAACH;QAAIC,WAAWP,GAAGO;OAAgBE;AAC5C;AAEA,OAAO,MAAMI,QAAQC,OAAOC,MAAM,CAACb,WAAW;IAC5Cc,QAAQN;IACRO,MAAMN;IACNO,QAAQN;AACV,GAAG"}
|