@viax.io/uxm 4.38.0 → 4.40.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/CHANGELOG.md +20 -0
- package/LICENSE.md +21 -0
- package/README.md +34 -44
- package/dist/hooks/index.cjs +49 -0
- package/dist/hooks/index.cjs.map +1 -0
- package/dist/hooks/index.d.ts +19 -0
- package/dist/hooks/index.d.ts.map +1 -0
- package/dist/hooks/index.js +18 -0
- package/dist/hooks/index.js.map +1 -0
- package/dist/hooks/use-toast-store.cjs.map +1 -1
- package/dist/hooks/use-toast-store.d.ts +5 -3
- package/dist/hooks/use-toast-store.d.ts.map +1 -1
- package/dist/hooks/use-toast-store.js.map +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.js.map +1 -1
- package/dist/previews/composite/brand-settings-preview.d.ts +2 -2
- package/dist/previews/composite/brand-settings-preview.d.ts.map +1 -1
- package/dist/previews/composite/form-preview.d.ts +2 -2
- package/dist/previews/composite/form-preview.d.ts.map +1 -1
- package/dist/previews/composite/lifecycle-action-row-preview.d.ts +2 -2
- package/dist/previews/composite/lifecycle-action-row-preview.d.ts.map +1 -1
- package/dist/previews/composite/lifecycle-connector-knobs-preview.d.ts +2 -2
- package/dist/previews/composite/lifecycle-connector-knobs-preview.d.ts.map +1 -1
- package/dist/previews/composite/lifecycle-plus-button-preview.d.ts +2 -2
- package/dist/previews/composite/lifecycle-plus-button-preview.d.ts.map +1 -1
- package/dist/previews/composite/login-page-preview.d.ts +2 -2
- package/dist/previews/composite/login-page-preview.d.ts.map +1 -1
- package/dist/previews/composite/multirow-form-preview.d.ts +2 -2
- package/dist/previews/composite/multirow-form-preview.d.ts.map +1 -1
- package/dist/previews/demo-row-actions.d.ts +1 -1
- package/dist/previews/demo-row-actions.d.ts.map +1 -1
- package/dist/previews/index.cjs +7 -7
- package/dist/previews/index.cjs.map +1 -1
- package/dist/previews/index.d.ts +9 -9
- package/dist/previews/index.js +7 -7
- package/dist/previews/index.js.map +1 -1
- package/dist/studio/brand-font-styles.d.ts +1 -1
- package/dist/studio/brand-font-styles.d.ts.map +1 -1
- package/dist/studio/brand-token-styles.d.ts +1 -1
- package/dist/studio/brand-token-styles.d.ts.map +1 -1
- package/dist/studio/editors/code-editor.d.ts +1 -1
- package/dist/studio/editors/code-editor.d.ts.map +1 -1
- package/dist/studio/editors/color-picker.d.ts +1 -1
- package/dist/studio/editors/color-picker.d.ts.map +1 -1
- package/dist/studio/editors/number-input.d.ts +1 -1
- package/dist/studio/editors/number-input.d.ts.map +1 -1
- package/dist/studio/editors/select-input.d.ts +1 -1
- package/dist/studio/editors/select-input.d.ts.map +1 -1
- package/dist/studio/editors/slider-input.d.ts +1 -1
- package/dist/studio/editors/slider-input.d.ts.map +1 -1
- package/dist/studio/editors/text-input.d.ts +1 -1
- package/dist/studio/editors/text-input.d.ts.map +1 -1
- package/dist/studio/editors/toggle-input.d.ts +1 -1
- package/dist/studio/editors/toggle-input.d.ts.map +1 -1
- package/dist/studio/index.cjs.map +1 -1
- package/dist/studio/index.d.ts +2 -2
- package/dist/studio/index.js.map +1 -1
- package/dist/studio/lib/context.d.ts +1 -1
- package/dist/studio/lib/context.d.ts.map +1 -1
- package/dist/studio/lib/registry/buttons.cjs +4 -4
- package/dist/studio/lib/registry/buttons.cjs.map +1 -1
- package/dist/studio/lib/registry/buttons.js +4 -4
- package/dist/studio/lib/registry/buttons.js.map +1 -1
- package/dist/studio/lib/registry/composite/back-link.cjs +65 -0
- package/dist/studio/lib/registry/composite/back-link.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/back-link.d.ts +3 -0
- package/dist/studio/lib/registry/composite/back-link.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/back-link.js +41 -0
- package/dist/studio/lib/registry/composite/back-link.js.map +1 -0
- package/dist/studio/lib/registry/composite/badge.cjs +102 -0
- package/dist/studio/lib/registry/composite/badge.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/badge.d.ts +3 -0
- package/dist/studio/lib/registry/composite/badge.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/badge.js +78 -0
- package/dist/studio/lib/registry/composite/badge.js.map +1 -0
- package/dist/studio/lib/registry/composite/breadcrumb.cjs +83 -0
- package/dist/studio/lib/registry/composite/breadcrumb.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/breadcrumb.d.ts +3 -0
- package/dist/studio/lib/registry/composite/breadcrumb.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/breadcrumb.js +59 -0
- package/dist/studio/lib/registry/composite/breadcrumb.js.map +1 -0
- package/dist/studio/lib/registry/composite/button-group.cjs +76 -0
- package/dist/studio/lib/registry/composite/button-group.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/button-group.d.ts +3 -0
- package/dist/studio/lib/registry/composite/button-group.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/button-group.js +52 -0
- package/dist/studio/lib/registry/composite/button-group.js.map +1 -0
- package/dist/studio/lib/registry/composite/calendar.cjs +116 -0
- package/dist/studio/lib/registry/composite/calendar.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/calendar.d.ts +3 -0
- package/dist/studio/lib/registry/composite/calendar.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/calendar.js +92 -0
- package/dist/studio/lib/registry/composite/calendar.js.map +1 -0
- package/dist/studio/lib/registry/composite/content-tooltip.cjs +44 -0
- package/dist/studio/lib/registry/composite/content-tooltip.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/content-tooltip.d.ts +3 -0
- package/dist/studio/lib/registry/composite/content-tooltip.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/content-tooltip.js +20 -0
- package/dist/studio/lib/registry/composite/content-tooltip.js.map +1 -0
- package/dist/studio/lib/registry/composite/data-table.cjs +61 -0
- package/dist/studio/lib/registry/composite/data-table.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/data-table.d.ts +3 -0
- package/dist/studio/lib/registry/composite/data-table.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/data-table.js +37 -0
- package/dist/studio/lib/registry/composite/data-table.js.map +1 -0
- package/dist/studio/lib/registry/composite/detail-section.cjs +47 -0
- package/dist/studio/lib/registry/composite/detail-section.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/detail-section.d.ts +3 -0
- package/dist/studio/lib/registry/composite/detail-section.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/detail-section.js +23 -0
- package/dist/studio/lib/registry/composite/detail-section.js.map +1 -0
- package/dist/studio/lib/registry/composite/divider.cjs +43 -0
- package/dist/studio/lib/registry/composite/divider.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/divider.d.ts +3 -0
- package/dist/studio/lib/registry/composite/divider.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/divider.js +19 -0
- package/dist/studio/lib/registry/composite/divider.js.map +1 -0
- package/dist/studio/lib/registry/composite/error-page.cjs +58 -0
- package/dist/studio/lib/registry/composite/error-page.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/error-page.d.ts +3 -0
- package/dist/studio/lib/registry/composite/error-page.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/error-page.js +34 -0
- package/dist/studio/lib/registry/composite/error-page.js.map +1 -0
- package/dist/studio/lib/registry/composite/explorer-list-item.cjs +84 -0
- package/dist/studio/lib/registry/composite/explorer-list-item.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/explorer-list-item.d.ts +3 -0
- package/dist/studio/lib/registry/composite/explorer-list-item.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/explorer-list-item.js +60 -0
- package/dist/studio/lib/registry/composite/explorer-list-item.js.map +1 -0
- package/dist/studio/lib/registry/composite/explorer-section.cjs +90 -0
- package/dist/studio/lib/registry/composite/explorer-section.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/explorer-section.d.ts +3 -0
- package/dist/studio/lib/registry/composite/explorer-section.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/explorer-section.js +66 -0
- package/dist/studio/lib/registry/composite/explorer-section.js.map +1 -0
- package/dist/studio/lib/registry/composite/filter-tabs.cjs +77 -0
- package/dist/studio/lib/registry/composite/filter-tabs.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/filter-tabs.d.ts +3 -0
- package/dist/studio/lib/registry/composite/filter-tabs.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/filter-tabs.js +53 -0
- package/dist/studio/lib/registry/composite/filter-tabs.js.map +1 -0
- package/dist/studio/lib/registry/composite/form-field.cjs +119 -0
- package/dist/studio/lib/registry/composite/form-field.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/form-field.d.ts +3 -0
- package/dist/studio/lib/registry/composite/form-field.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/form-field.js +95 -0
- package/dist/studio/lib/registry/composite/form-field.js.map +1 -0
- package/dist/studio/lib/registry/composite/form-multirow.cjs +56 -0
- package/dist/studio/lib/registry/composite/form-multirow.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/form-multirow.d.ts +3 -0
- package/dist/studio/lib/registry/composite/form-multirow.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/form-multirow.js +32 -0
- package/dist/studio/lib/registry/composite/form-multirow.js.map +1 -0
- package/dist/studio/lib/registry/composite/icon-tile.cjs +42 -0
- package/dist/studio/lib/registry/composite/icon-tile.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/icon-tile.d.ts +3 -0
- package/dist/studio/lib/registry/composite/icon-tile.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/icon-tile.js +18 -0
- package/dist/studio/lib/registry/composite/icon-tile.js.map +1 -0
- package/dist/studio/lib/registry/composite/index.cjs +105 -0
- package/dist/studio/lib/registry/composite/index.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/index.d.ts +3 -0
- package/dist/studio/lib/registry/composite/index.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/index.js +81 -0
- package/dist/studio/lib/registry/composite/index.js.map +1 -0
- package/dist/studio/lib/registry/composite/inline-action.cjs +66 -0
- package/dist/studio/lib/registry/composite/inline-action.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/inline-action.d.ts +3 -0
- package/dist/studio/lib/registry/composite/inline-action.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/inline-action.js +42 -0
- package/dist/studio/lib/registry/composite/inline-action.js.map +1 -0
- package/dist/studio/lib/registry/composite/inline-filter.cjs +43 -0
- package/dist/studio/lib/registry/composite/inline-filter.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/inline-filter.d.ts +3 -0
- package/dist/studio/lib/registry/composite/inline-filter.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/inline-filter.js +19 -0
- package/dist/studio/lib/registry/composite/inline-filter.js.map +1 -0
- package/dist/studio/lib/registry/composite/link.cjs +88 -0
- package/dist/studio/lib/registry/composite/link.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/link.d.ts +3 -0
- package/dist/studio/lib/registry/composite/link.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/link.js +64 -0
- package/dist/studio/lib/registry/composite/link.js.map +1 -0
- package/dist/studio/lib/registry/composite/list-item.cjs +134 -0
- package/dist/studio/lib/registry/composite/list-item.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/list-item.d.ts +3 -0
- package/dist/studio/lib/registry/composite/list-item.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/list-item.js +110 -0
- package/dist/studio/lib/registry/composite/list-item.js.map +1 -0
- package/dist/studio/lib/registry/composite/login-page.cjs +66 -0
- package/dist/studio/lib/registry/composite/login-page.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/login-page.d.ts +3 -0
- package/dist/studio/lib/registry/composite/login-page.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/login-page.js +42 -0
- package/dist/studio/lib/registry/composite/login-page.js.map +1 -0
- package/dist/studio/lib/registry/composite/meta-row.cjs +42 -0
- package/dist/studio/lib/registry/composite/meta-row.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/meta-row.d.ts +3 -0
- package/dist/studio/lib/registry/composite/meta-row.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/meta-row.js +18 -0
- package/dist/studio/lib/registry/composite/meta-row.js.map +1 -0
- package/dist/studio/lib/registry/composite/page-header.cjs +47 -0
- package/dist/studio/lib/registry/composite/page-header.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/page-header.d.ts +3 -0
- package/dist/studio/lib/registry/composite/page-header.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/page-header.js +23 -0
- package/dist/studio/lib/registry/composite/page-header.js.map +1 -0
- package/dist/studio/lib/registry/composite/page-shell.cjs +49 -0
- package/dist/studio/lib/registry/composite/page-shell.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/page-shell.d.ts +3 -0
- package/dist/studio/lib/registry/composite/page-shell.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/page-shell.js +25 -0
- package/dist/studio/lib/registry/composite/page-shell.js.map +1 -0
- package/dist/studio/lib/registry/composite/pill-select.cjs +120 -0
- package/dist/studio/lib/registry/composite/pill-select.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/pill-select.d.ts +3 -0
- package/dist/studio/lib/registry/composite/pill-select.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/pill-select.js +96 -0
- package/dist/studio/lib/registry/composite/pill-select.js.map +1 -0
- package/dist/studio/lib/registry/composite/property-field.cjs +66 -0
- package/dist/studio/lib/registry/composite/property-field.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/property-field.d.ts +3 -0
- package/dist/studio/lib/registry/composite/property-field.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/property-field.js +42 -0
- package/dist/studio/lib/registry/composite/property-field.js.map +1 -0
- package/dist/studio/lib/registry/composite/property-grid.cjs +39 -0
- package/dist/studio/lib/registry/composite/property-grid.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/property-grid.d.ts +3 -0
- package/dist/studio/lib/registry/composite/property-grid.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/property-grid.js +15 -0
- package/dist/studio/lib/registry/composite/property-grid.js.map +1 -0
- package/dist/studio/lib/registry/composite/section-header.cjs +44 -0
- package/dist/studio/lib/registry/composite/section-header.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/section-header.d.ts +3 -0
- package/dist/studio/lib/registry/composite/section-header.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/section-header.js +20 -0
- package/dist/studio/lib/registry/composite/section-header.js.map +1 -0
- package/dist/studio/lib/registry/composite/side-flexpane.cjs +51 -0
- package/dist/studio/lib/registry/composite/side-flexpane.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/side-flexpane.d.ts +3 -0
- package/dist/studio/lib/registry/composite/side-flexpane.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/side-flexpane.js +27 -0
- package/dist/studio/lib/registry/composite/side-flexpane.js.map +1 -0
- package/dist/studio/lib/registry/composite/sidebar-nav-item.cjs +95 -0
- package/dist/studio/lib/registry/composite/sidebar-nav-item.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/sidebar-nav-item.d.ts +3 -0
- package/dist/studio/lib/registry/composite/sidebar-nav-item.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/sidebar-nav-item.js +71 -0
- package/dist/studio/lib/registry/composite/sidebar-nav-item.js.map +1 -0
- package/dist/studio/lib/registry/composite/sidebar-nav-trigger.cjs +224 -0
- package/dist/studio/lib/registry/composite/sidebar-nav-trigger.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/sidebar-nav-trigger.d.ts +3 -0
- package/dist/studio/lib/registry/composite/sidebar-nav-trigger.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/sidebar-nav-trigger.js +200 -0
- package/dist/studio/lib/registry/composite/sidebar-nav-trigger.js.map +1 -0
- package/dist/studio/lib/registry/composite/stat-card.cjs +45 -0
- package/dist/studio/lib/registry/composite/stat-card.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/stat-card.d.ts +3 -0
- package/dist/studio/lib/registry/composite/stat-card.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/stat-card.js +21 -0
- package/dist/studio/lib/registry/composite/stat-card.js.map +1 -0
- package/dist/studio/lib/registry/composite/tabs-underline.cjs +82 -0
- package/dist/studio/lib/registry/composite/tabs-underline.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/tabs-underline.d.ts +3 -0
- package/dist/studio/lib/registry/composite/tabs-underline.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/tabs-underline.js +58 -0
- package/dist/studio/lib/registry/composite/tabs-underline.js.map +1 -0
- package/dist/studio/lib/registry/composite/tabs.cjs +84 -0
- package/dist/studio/lib/registry/composite/tabs.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/tabs.d.ts +3 -0
- package/dist/studio/lib/registry/composite/tabs.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/tabs.js +60 -0
- package/dist/studio/lib/registry/composite/tabs.js.map +1 -0
- package/dist/studio/lib/registry/composite/thumbnail.cjs +62 -0
- package/dist/studio/lib/registry/composite/thumbnail.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/thumbnail.d.ts +3 -0
- package/dist/studio/lib/registry/composite/thumbnail.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/thumbnail.js +38 -0
- package/dist/studio/lib/registry/composite/thumbnail.js.map +1 -0
- package/dist/studio/lib/registry/composite/type-overview-card.cjs +51 -0
- package/dist/studio/lib/registry/composite/type-overview-card.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/type-overview-card.d.ts +3 -0
- package/dist/studio/lib/registry/composite/type-overview-card.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/type-overview-card.js +27 -0
- package/dist/studio/lib/registry/composite/type-overview-card.js.map +1 -0
- package/dist/studio/lib/registry/composite/view-switcher.cjs +76 -0
- package/dist/studio/lib/registry/composite/view-switcher.cjs.map +1 -0
- package/dist/studio/lib/registry/composite/view-switcher.d.ts +3 -0
- package/dist/studio/lib/registry/composite/view-switcher.d.ts.map +1 -0
- package/dist/studio/lib/registry/composite/view-switcher.js +52 -0
- package/dist/studio/lib/registry/composite/view-switcher.js.map +1 -0
- package/dist/studio/lib/registry/diagram.cjs +1 -1
- package/dist/studio/lib/registry/diagram.cjs.map +1 -1
- package/dist/studio/lib/registry/diagram.js +1 -1
- package/dist/studio/lib/registry/diagram.js.map +1 -1
- package/dist/studio/lib/registry/display.cjs +2 -2
- package/dist/studio/lib/registry/display.cjs.map +1 -1
- package/dist/studio/lib/registry/display.js +2 -2
- package/dist/studio/lib/registry/display.js.map +1 -1
- package/dist/studio/lib/registry/feedback.cjs +3 -3
- package/dist/studio/lib/registry/feedback.cjs.map +1 -1
- package/dist/studio/lib/registry/feedback.js +3 -3
- package/dist/studio/lib/registry/feedback.js.map +1 -1
- package/dist/studio/lib/registry/icons.cjs +32 -11
- package/dist/studio/lib/registry/icons.cjs.map +1 -1
- package/dist/studio/lib/registry/icons.d.ts.map +1 -1
- package/dist/studio/lib/registry/icons.js +32 -11
- package/dist/studio/lib/registry/icons.js.map +1 -1
- package/dist/studio/lib/registry/index.cjs +2 -2
- package/dist/studio/lib/registry/index.js +2 -2
- package/dist/studio/lib/registry/inputs/checkbox.cjs +84 -0
- package/dist/studio/lib/registry/inputs/checkbox.cjs.map +1 -0
- package/dist/studio/lib/registry/inputs/checkbox.d.ts +3 -0
- package/dist/studio/lib/registry/inputs/checkbox.d.ts.map +1 -0
- package/dist/studio/lib/registry/inputs/checkbox.js +60 -0
- package/dist/studio/lib/registry/inputs/checkbox.js.map +1 -0
- package/dist/studio/lib/registry/inputs/code-editor.cjs +90 -0
- package/dist/studio/lib/registry/inputs/code-editor.cjs.map +1 -0
- package/dist/studio/lib/registry/inputs/code-editor.d.ts +3 -0
- package/dist/studio/lib/registry/inputs/code-editor.d.ts.map +1 -0
- package/dist/studio/lib/registry/inputs/code-editor.js +66 -0
- package/dist/studio/lib/registry/inputs/code-editor.js.map +1 -0
- package/dist/studio/lib/registry/inputs/color-input.cjs +107 -0
- package/dist/studio/lib/registry/inputs/color-input.cjs.map +1 -0
- package/dist/studio/lib/registry/inputs/color-input.d.ts +3 -0
- package/dist/studio/lib/registry/inputs/color-input.d.ts.map +1 -0
- package/dist/studio/lib/registry/inputs/color-input.js +83 -0
- package/dist/studio/lib/registry/inputs/color-input.js.map +1 -0
- package/dist/studio/lib/registry/inputs/currency-input.cjs +112 -0
- package/dist/studio/lib/registry/inputs/currency-input.cjs.map +1 -0
- package/dist/studio/lib/registry/inputs/currency-input.d.ts +3 -0
- package/dist/studio/lib/registry/inputs/currency-input.d.ts.map +1 -0
- package/dist/studio/lib/registry/inputs/currency-input.js +88 -0
- package/dist/studio/lib/registry/inputs/currency-input.js.map +1 -0
- package/dist/studio/lib/registry/inputs/date-input.cjs +105 -0
- package/dist/studio/lib/registry/inputs/date-input.cjs.map +1 -0
- package/dist/studio/lib/registry/inputs/date-input.d.ts +3 -0
- package/dist/studio/lib/registry/inputs/date-input.d.ts.map +1 -0
- package/dist/studio/lib/registry/inputs/date-input.js +81 -0
- package/dist/studio/lib/registry/inputs/date-input.js.map +1 -0
- package/dist/studio/lib/registry/inputs/editable-cell.cjs +206 -0
- package/dist/studio/lib/registry/inputs/editable-cell.cjs.map +1 -0
- package/dist/studio/lib/registry/inputs/editable-cell.d.ts +3 -0
- package/dist/studio/lib/registry/inputs/editable-cell.d.ts.map +1 -0
- package/dist/studio/lib/registry/inputs/editable-cell.js +182 -0
- package/dist/studio/lib/registry/inputs/editable-cell.js.map +1 -0
- package/dist/studio/lib/registry/inputs/file-upload.cjs +161 -0
- package/dist/studio/lib/registry/inputs/file-upload.cjs.map +1 -0
- package/dist/studio/lib/registry/inputs/file-upload.d.ts +3 -0
- package/dist/studio/lib/registry/inputs/file-upload.d.ts.map +1 -0
- package/dist/studio/lib/registry/inputs/file-upload.js +137 -0
- package/dist/studio/lib/registry/inputs/file-upload.js.map +1 -0
- package/dist/studio/lib/registry/inputs/index.cjs +75 -0
- package/dist/studio/lib/registry/inputs/index.cjs.map +1 -0
- package/dist/studio/lib/registry/inputs/index.d.ts +3 -0
- package/dist/studio/lib/registry/inputs/index.d.ts.map +1 -0
- package/dist/studio/lib/registry/inputs/index.js +51 -0
- package/dist/studio/lib/registry/inputs/index.js.map +1 -0
- package/dist/studio/lib/registry/inputs/input-text.cjs +101 -0
- package/dist/studio/lib/registry/inputs/input-text.cjs.map +1 -0
- package/dist/studio/lib/registry/inputs/input-text.d.ts +3 -0
- package/dist/studio/lib/registry/inputs/input-text.d.ts.map +1 -0
- package/dist/studio/lib/registry/inputs/input-text.js +77 -0
- package/dist/studio/lib/registry/inputs/input-text.js.map +1 -0
- package/dist/studio/lib/registry/inputs/input-with-icon.cjs +85 -0
- package/dist/studio/lib/registry/inputs/input-with-icon.cjs.map +1 -0
- package/dist/studio/lib/registry/inputs/input-with-icon.d.ts +3 -0
- package/dist/studio/lib/registry/inputs/input-with-icon.d.ts.map +1 -0
- package/dist/studio/lib/registry/inputs/input-with-icon.js +61 -0
- package/dist/studio/lib/registry/inputs/input-with-icon.js.map +1 -0
- package/dist/studio/lib/registry/inputs/listbox.cjs +221 -0
- package/dist/studio/lib/registry/inputs/listbox.cjs.map +1 -0
- package/dist/studio/lib/registry/inputs/listbox.d.ts +3 -0
- package/dist/studio/lib/registry/inputs/listbox.d.ts.map +1 -0
- package/dist/studio/lib/registry/inputs/listbox.js +197 -0
- package/dist/studio/lib/registry/inputs/listbox.js.map +1 -0
- package/dist/studio/lib/registry/inputs/menu.cjs +208 -0
- package/dist/studio/lib/registry/inputs/menu.cjs.map +1 -0
- package/dist/studio/lib/registry/inputs/menu.d.ts +3 -0
- package/dist/studio/lib/registry/inputs/menu.d.ts.map +1 -0
- package/dist/studio/lib/registry/inputs/menu.js +184 -0
- package/dist/studio/lib/registry/inputs/menu.js.map +1 -0
- package/dist/studio/lib/registry/inputs/number-input.cjs +105 -0
- package/dist/studio/lib/registry/inputs/number-input.cjs.map +1 -0
- package/dist/studio/lib/registry/inputs/number-input.d.ts +3 -0
- package/dist/studio/lib/registry/inputs/number-input.d.ts.map +1 -0
- package/dist/studio/lib/registry/inputs/number-input.js +81 -0
- package/dist/studio/lib/registry/inputs/number-input.js.map +1 -0
- package/dist/studio/lib/registry/inputs/number-stepper.cjs +99 -0
- package/dist/studio/lib/registry/inputs/number-stepper.cjs.map +1 -0
- package/dist/studio/lib/registry/inputs/number-stepper.d.ts +3 -0
- package/dist/studio/lib/registry/inputs/number-stepper.d.ts.map +1 -0
- package/dist/studio/lib/registry/inputs/number-stepper.js +75 -0
- package/dist/studio/lib/registry/inputs/number-stepper.js.map +1 -0
- package/dist/studio/lib/registry/inputs/password-input.cjs +107 -0
- package/dist/studio/lib/registry/inputs/password-input.cjs.map +1 -0
- package/dist/studio/lib/registry/inputs/password-input.d.ts +3 -0
- package/dist/studio/lib/registry/inputs/password-input.d.ts.map +1 -0
- package/dist/studio/lib/registry/inputs/password-input.js +83 -0
- package/dist/studio/lib/registry/inputs/password-input.js.map +1 -0
- package/dist/studio/lib/registry/inputs/phone-input.cjs +105 -0
- package/dist/studio/lib/registry/inputs/phone-input.cjs.map +1 -0
- package/dist/studio/lib/registry/inputs/phone-input.d.ts +3 -0
- package/dist/studio/lib/registry/inputs/phone-input.d.ts.map +1 -0
- package/dist/studio/lib/registry/inputs/phone-input.js +81 -0
- package/dist/studio/lib/registry/inputs/phone-input.js.map +1 -0
- package/dist/studio/lib/registry/inputs/radio-group.cjs +86 -0
- package/dist/studio/lib/registry/inputs/radio-group.cjs.map +1 -0
- package/dist/studio/lib/registry/inputs/radio-group.d.ts +3 -0
- package/dist/studio/lib/registry/inputs/radio-group.d.ts.map +1 -0
- package/dist/studio/lib/registry/inputs/radio-group.js +62 -0
- package/dist/studio/lib/registry/inputs/radio-group.js.map +1 -0
- package/dist/studio/lib/registry/inputs/search-dropdown.cjs +86 -0
- package/dist/studio/lib/registry/inputs/search-dropdown.cjs.map +1 -0
- package/dist/studio/lib/registry/inputs/search-dropdown.d.ts +3 -0
- package/dist/studio/lib/registry/inputs/search-dropdown.d.ts.map +1 -0
- package/dist/studio/lib/registry/inputs/search-dropdown.js +62 -0
- package/dist/studio/lib/registry/inputs/search-dropdown.js.map +1 -0
- package/dist/studio/lib/registry/inputs/select-dropdown.cjs +103 -0
- package/dist/studio/lib/registry/inputs/select-dropdown.cjs.map +1 -0
- package/dist/studio/lib/registry/inputs/select-dropdown.d.ts +3 -0
- package/dist/studio/lib/registry/inputs/select-dropdown.d.ts.map +1 -0
- package/dist/studio/lib/registry/inputs/select-dropdown.js +79 -0
- package/dist/studio/lib/registry/inputs/select-dropdown.js.map +1 -0
- package/dist/studio/lib/registry/inputs/slider.cjs +99 -0
- package/dist/studio/lib/registry/inputs/slider.cjs.map +1 -0
- package/dist/studio/lib/registry/inputs/slider.d.ts +3 -0
- package/dist/studio/lib/registry/inputs/slider.d.ts.map +1 -0
- package/dist/studio/lib/registry/inputs/slider.js +75 -0
- package/dist/studio/lib/registry/inputs/slider.js.map +1 -0
- package/dist/studio/lib/registry/inputs/textarea.cjs +84 -0
- package/dist/studio/lib/registry/inputs/textarea.cjs.map +1 -0
- package/dist/studio/lib/registry/inputs/textarea.d.ts +3 -0
- package/dist/studio/lib/registry/inputs/textarea.d.ts.map +1 -0
- package/dist/studio/lib/registry/inputs/textarea.js +60 -0
- package/dist/studio/lib/registry/inputs/textarea.js.map +1 -0
- package/dist/studio/lib/registry/inputs/time-input.cjs +131 -0
- package/dist/studio/lib/registry/inputs/time-input.cjs.map +1 -0
- package/dist/studio/lib/registry/inputs/time-input.d.ts +3 -0
- package/dist/studio/lib/registry/inputs/time-input.d.ts.map +1 -0
- package/dist/studio/lib/registry/inputs/time-input.js +107 -0
- package/dist/studio/lib/registry/inputs/time-input.js.map +1 -0
- package/dist/studio/lib/registry/inputs/toggle-switch.cjs +80 -0
- package/dist/studio/lib/registry/inputs/toggle-switch.cjs.map +1 -0
- package/dist/studio/lib/registry/inputs/toggle-switch.d.ts +3 -0
- package/dist/studio/lib/registry/inputs/toggle-switch.d.ts.map +1 -0
- package/dist/studio/lib/registry/inputs/toggle-switch.js +56 -0
- package/dist/studio/lib/registry/inputs/toggle-switch.js.map +1 -0
- package/dist/studio/lib/types.cjs.map +1 -1
- package/dist/studio/mobile-gallery.d.ts +1 -1
- package/dist/studio/mobile-gallery.d.ts.map +1 -1
- package/dist/studio/persistence/css-sanitizers.cjs +75 -0
- package/dist/studio/persistence/css-sanitizers.cjs.map +1 -0
- package/dist/studio/persistence/css-sanitizers.d.ts +16 -0
- package/dist/studio/persistence/css-sanitizers.d.ts.map +1 -0
- package/dist/studio/persistence/css-sanitizers.js +45 -0
- package/dist/studio/persistence/css-sanitizers.js.map +1 -0
- package/dist/studio/persistence/generate-css-mapping.cjs +837 -0
- package/dist/studio/persistence/generate-css-mapping.cjs.map +1 -0
- package/dist/studio/persistence/generate-css-mapping.d.ts +13 -0
- package/dist/studio/persistence/generate-css-mapping.d.ts.map +1 -0
- package/dist/studio/persistence/generate-css-mapping.js +812 -0
- package/dist/studio/persistence/generate-css-mapping.js.map +1 -0
- package/dist/studio/persistence/generate-css.cjs +26 -865
- package/dist/studio/persistence/generate-css.cjs.map +1 -1
- package/dist/studio/persistence/generate-css.d.ts +1 -6
- package/dist/studio/persistence/generate-css.d.ts.map +1 -1
- package/dist/studio/persistence/generate-css.js +9 -848
- package/dist/studio/persistence/generate-css.js.map +1 -1
- package/dist/studio/shell/canvas.d.ts +1 -1
- package/dist/studio/shell/canvas.d.ts.map +1 -1
- package/dist/studio/shell/preview-modal.d.ts +1 -1
- package/dist/studio/shell/preview-modal.d.ts.map +1 -1
- package/dist/studio/shell/properties-panel/dev-tab.cjs +244 -0
- package/dist/studio/shell/properties-panel/dev-tab.cjs.map +1 -0
- package/dist/studio/shell/properties-panel/dev-tab.d.ts +27 -0
- package/dist/studio/shell/properties-panel/dev-tab.d.ts.map +1 -0
- package/dist/studio/shell/properties-panel/dev-tab.js +220 -0
- package/dist/studio/shell/properties-panel/dev-tab.js.map +1 -0
- package/dist/studio/shell/properties-panel/index.cjs +398 -0
- package/dist/studio/shell/properties-panel/index.cjs.map +1 -0
- package/dist/studio/shell/{properties-panel.d.ts → properties-panel/index.d.ts} +2 -2
- package/dist/studio/shell/properties-panel/index.d.ts.map +1 -0
- package/dist/studio/shell/properties-panel/index.js +374 -0
- package/dist/studio/shell/properties-panel/index.js.map +1 -0
- package/dist/studio/shell/properties-panel/property-row.cjs +155 -0
- package/dist/studio/shell/properties-panel/property-row.cjs.map +1 -0
- package/dist/studio/shell/properties-panel/property-row.d.ts +20 -0
- package/dist/studio/shell/properties-panel/property-row.d.ts.map +1 -0
- package/dist/studio/shell/properties-panel/property-row.js +130 -0
- package/dist/studio/shell/properties-panel/property-row.js.map +1 -0
- package/dist/studio/shell/properties-panel/variant-matrix.cjs +177 -0
- package/dist/studio/shell/properties-panel/variant-matrix.cjs.map +1 -0
- package/dist/studio/shell/properties-panel/variant-matrix.d.ts +30 -0
- package/dist/studio/shell/properties-panel/variant-matrix.d.ts.map +1 -0
- package/dist/studio/shell/properties-panel/variant-matrix.js +153 -0
- package/dist/studio/shell/properties-panel/variant-matrix.js.map +1 -0
- package/dist/studio/shell/sidebar.d.ts +1 -1
- package/dist/studio/shell/sidebar.d.ts.map +1 -1
- package/dist/studio/shell/wcag-panel.d.ts +1 -1
- package/dist/studio/shell/wcag-panel.d.ts.map +1 -1
- package/dist/studio/studio.css +2 -2
- package/dist/studio/uxm-app.cjs +1 -1
- package/dist/studio/uxm-app.d.ts +1 -1
- package/dist/studio/uxm-app.d.ts.map +1 -1
- package/dist/studio/uxm-app.js +1 -1
- package/dist/ui/app-sidebar/app-sidebar-preview.cjs +2 -2
- package/dist/ui/app-sidebar/app-sidebar-preview.d.ts +1 -1
- package/dist/ui/app-sidebar/app-sidebar-preview.d.ts.map +1 -1
- package/dist/ui/app-sidebar/app-sidebar-preview.js +2 -2
- package/dist/ui/app-sidebar/app-sidebar.d.ts +1 -1
- package/dist/ui/app-sidebar/app-sidebar.d.ts.map +1 -1
- package/dist/ui/app-top-bar/app-top-bar-preview.cjs +5 -5
- package/dist/ui/app-top-bar/app-top-bar-preview.d.ts +1 -1
- package/dist/ui/app-top-bar/app-top-bar-preview.d.ts.map +1 -1
- package/dist/ui/app-top-bar/app-top-bar-preview.js +5 -5
- package/dist/ui/app-top-bar/app-top-bar.cjs +1 -1
- package/dist/ui/app-top-bar/app-top-bar.d.ts +1 -1
- package/dist/ui/app-top-bar/app-top-bar.d.ts.map +1 -1
- package/dist/ui/app-top-bar/app-top-bar.js +1 -1
- package/dist/ui/avatar/avatar-preview.cjs +1 -1
- package/dist/ui/avatar/avatar-preview.d.ts +1 -1
- package/dist/ui/avatar/avatar-preview.d.ts.map +1 -1
- package/dist/ui/avatar/avatar-preview.js +1 -1
- package/dist/ui/avatar/avatar.d.ts +1 -1
- package/dist/ui/avatar/avatar.d.ts.map +1 -1
- package/dist/ui/back-link/back-link-preview.cjs +1 -1
- package/dist/ui/back-link/back-link-preview.d.ts +1 -1
- package/dist/ui/back-link/back-link-preview.d.ts.map +1 -1
- package/dist/ui/back-link/back-link-preview.js +1 -1
- package/dist/ui/back-link/back-link.cjs +1 -1
- package/dist/ui/back-link/back-link.d.ts +1 -1
- package/dist/ui/back-link/back-link.d.ts.map +1 -1
- package/dist/ui/back-link/back-link.js +1 -1
- package/dist/ui/badge/badge-preview.cjs +1 -1
- package/dist/ui/badge/badge-preview.d.ts +1 -1
- package/dist/ui/badge/badge-preview.d.ts.map +1 -1
- package/dist/ui/badge/badge-preview.js +1 -1
- package/dist/ui/badge/badge.d.ts +1 -1
- package/dist/ui/badge/badge.d.ts.map +1 -1
- package/dist/ui/banner/banner-preview.cjs +1 -1
- package/dist/ui/banner/banner-preview.d.ts +1 -1
- package/dist/ui/banner/banner-preview.d.ts.map +1 -1
- package/dist/ui/banner/banner-preview.js +1 -1
- package/dist/ui/banner/banner.d.ts +1 -1
- package/dist/ui/banner/banner.d.ts.map +1 -1
- package/dist/ui/breadcrumb/breadcrumb-preview.cjs +3 -3
- package/dist/ui/breadcrumb/breadcrumb-preview.d.ts +1 -1
- package/dist/ui/breadcrumb/breadcrumb-preview.d.ts.map +1 -1
- package/dist/ui/breadcrumb/breadcrumb-preview.js +3 -3
- package/dist/ui/breadcrumb/breadcrumb.d.ts +1 -1
- package/dist/ui/breadcrumb/breadcrumb.d.ts.map +1 -1
- package/dist/ui/bulk-action-bar/bulk-action-bar-preview.d.ts +1 -1
- package/dist/ui/bulk-action-bar/bulk-action-bar-preview.d.ts.map +1 -1
- package/dist/ui/bulk-action-bar/bulk-action-bar.d.ts +1 -1
- package/dist/ui/bulk-action-bar/bulk-action-bar.d.ts.map +1 -1
- package/dist/ui/button/button-preview.cjs +4 -4
- package/dist/ui/button/button-preview.d.ts +1 -1
- package/dist/ui/button/button-preview.d.ts.map +1 -1
- package/dist/ui/button/button-preview.js +4 -4
- package/dist/ui/button/button.d.ts +5 -5
- package/dist/ui/button/button.d.ts.map +1 -1
- package/dist/ui/button-group/button-group-preview.cjs +1 -1
- package/dist/ui/button-group/button-group-preview.d.ts +1 -1
- package/dist/ui/button-group/button-group-preview.d.ts.map +1 -1
- package/dist/ui/button-group/button-group-preview.js +1 -1
- package/dist/ui/button-group/button-group.d.ts +1 -1
- package/dist/ui/button-group/button-group.d.ts.map +1 -1
- package/dist/ui/button-icon/button-icon.cjs.map +1 -1
- package/dist/ui/button-icon/button-icon.d.ts +11 -1
- package/dist/ui/button-icon/button-icon.d.ts.map +1 -1
- package/dist/ui/button-icon/button-icon.js.map +1 -1
- package/dist/ui/button-with-icon/button-with-icon-preview.cjs +2 -2
- package/dist/ui/button-with-icon/button-with-icon-preview.d.ts +1 -1
- package/dist/ui/button-with-icon/button-with-icon-preview.d.ts.map +1 -1
- package/dist/ui/button-with-icon/button-with-icon-preview.js +2 -2
- package/dist/ui/button-with-icon/button-with-icon.d.ts +1 -1
- package/dist/ui/button-with-icon/button-with-icon.d.ts.map +1 -1
- package/dist/ui/calendar/calendar-preview.cjs +1 -1
- package/dist/ui/calendar/calendar-preview.d.ts +1 -1
- package/dist/ui/calendar/calendar-preview.d.ts.map +1 -1
- package/dist/ui/calendar/calendar-preview.js +1 -1
- package/dist/ui/calendar/calendar.d.ts +1 -1
- package/dist/ui/calendar/calendar.d.ts.map +1 -1
- package/dist/ui/card/card-preview.cjs +1 -1
- package/dist/ui/card/card-preview.d.ts +1 -1
- package/dist/ui/card/card-preview.d.ts.map +1 -1
- package/dist/ui/card/card-preview.js +1 -1
- package/dist/ui/card/card.d.ts +1 -1
- package/dist/ui/card/card.d.ts.map +1 -1
- package/dist/ui/checkbox/checkbox-preview.cjs +2 -2
- package/dist/ui/checkbox/checkbox-preview.d.ts +1 -1
- package/dist/ui/checkbox/checkbox-preview.d.ts.map +1 -1
- package/dist/ui/checkbox/checkbox-preview.js +2 -2
- package/dist/ui/checkbox/checkbox.cjs +2 -2
- package/dist/ui/checkbox/checkbox.d.ts +1 -1
- package/dist/ui/checkbox/checkbox.d.ts.map +1 -1
- package/dist/ui/checkbox/checkbox.js +2 -2
- package/dist/ui/chip/chip-preview.cjs +2 -2
- package/dist/ui/chip/chip-preview.d.ts +1 -1
- package/dist/ui/chip/chip-preview.d.ts.map +1 -1
- package/dist/ui/chip/chip-preview.js +2 -2
- package/dist/ui/chip/chip.cjs +1 -1
- package/dist/ui/chip/chip.d.ts +1 -1
- package/dist/ui/chip/chip.d.ts.map +1 -1
- package/dist/ui/chip/chip.js +1 -1
- package/dist/ui/cluster/cluster-preview.cjs +1 -1
- package/dist/ui/cluster/cluster-preview.d.ts +1 -1
- package/dist/ui/cluster/cluster-preview.d.ts.map +1 -1
- package/dist/ui/cluster/cluster-preview.js +1 -1
- package/dist/ui/cluster/cluster.d.ts +1 -1
- package/dist/ui/cluster/cluster.d.ts.map +1 -1
- package/dist/ui/code-editor/code-editor-preview.cjs +1 -1
- package/dist/ui/code-editor/code-editor-preview.d.ts +1 -1
- package/dist/ui/code-editor/code-editor-preview.d.ts.map +1 -1
- package/dist/ui/code-editor/code-editor-preview.js +1 -1
- package/dist/ui/code-editor/code-editor.d.ts +2 -2
- package/dist/ui/code-editor/code-editor.d.ts.map +1 -1
- package/dist/ui/color-input/color-input-preview.cjs +1 -1
- package/dist/ui/color-input/color-input-preview.d.ts +1 -1
- package/dist/ui/color-input/color-input-preview.d.ts.map +1 -1
- package/dist/ui/color-input/color-input-preview.js +1 -1
- package/dist/ui/color-input/color-input.d.ts +2 -2
- package/dist/ui/color-input/color-input.d.ts.map +1 -1
- package/dist/ui/component-row/component-row-preview.cjs +1 -1
- package/dist/ui/component-row/component-row-preview.d.ts +1 -1
- package/dist/ui/component-row/component-row-preview.d.ts.map +1 -1
- package/dist/ui/component-row/component-row-preview.js +1 -1
- package/dist/ui/component-row/component-row.cjs +1 -1
- package/dist/ui/component-row/component-row.d.ts +1 -1
- package/dist/ui/component-row/component-row.d.ts.map +1 -1
- package/dist/ui/component-row/component-row.js +1 -1
- package/dist/ui/config-component-row/config-component-row-preview.cjs +3 -3
- package/dist/ui/config-component-row/config-component-row-preview.d.ts +1 -1
- package/dist/ui/config-component-row/config-component-row-preview.d.ts.map +1 -1
- package/dist/ui/config-component-row/config-component-row-preview.js +3 -3
- package/dist/ui/config-component-row/config-component-row.cjs +1 -1
- package/dist/ui/config-component-row/config-component-row.d.ts +1 -1
- package/dist/ui/config-component-row/config-component-row.d.ts.map +1 -1
- package/dist/ui/config-component-row/config-component-row.js +1 -1
- package/dist/ui/config-segment-item/config-segment-item-preview.cjs +1 -1
- package/dist/ui/config-segment-item/config-segment-item-preview.d.ts +1 -1
- package/dist/ui/config-segment-item/config-segment-item-preview.d.ts.map +1 -1
- package/dist/ui/config-segment-item/config-segment-item-preview.js +1 -1
- package/dist/ui/config-segment-item/config-segment-item.d.ts +1 -1
- package/dist/ui/config-segment-item/config-segment-item.d.ts.map +1 -1
- package/dist/ui/currency-input/currency-input-preview.cjs +1 -1
- package/dist/ui/currency-input/currency-input-preview.d.ts +1 -1
- package/dist/ui/currency-input/currency-input-preview.d.ts.map +1 -1
- package/dist/ui/currency-input/currency-input-preview.js +1 -1
- package/dist/ui/currency-input/currency-input.d.ts +1 -1
- package/dist/ui/currency-input/currency-input.d.ts.map +1 -1
- package/dist/ui/data-table/data-table-preview.cjs +1 -1
- package/dist/ui/data-table/data-table-preview.d.ts +1 -1
- package/dist/ui/data-table/data-table-preview.d.ts.map +1 -1
- package/dist/ui/data-table/data-table-preview.js +1 -1
- package/dist/ui/data-table/data-table.d.ts +1 -1
- package/dist/ui/data-table/data-table.d.ts.map +1 -1
- package/dist/ui/date-input/date-input-preview.cjs +1 -1
- package/dist/ui/date-input/date-input-preview.d.ts +1 -1
- package/dist/ui/date-input/date-input-preview.d.ts.map +1 -1
- package/dist/ui/date-input/date-input-preview.js +1 -1
- package/dist/ui/date-input/date-input.d.ts +1 -1
- package/dist/ui/date-input/date-input.d.ts.map +1 -1
- package/dist/ui/detail-section/detail-section-preview.cjs +2 -2
- package/dist/ui/detail-section/detail-section-preview.d.ts +1 -1
- package/dist/ui/detail-section/detail-section-preview.d.ts.map +1 -1
- package/dist/ui/detail-section/detail-section-preview.js +2 -2
- package/dist/ui/detail-section/detail-section.d.ts +1 -1
- package/dist/ui/detail-section/detail-section.d.ts.map +1 -1
- package/dist/ui/disclosure/disclosure-preview.cjs +3 -3
- package/dist/ui/disclosure/disclosure-preview.d.ts +1 -1
- package/dist/ui/disclosure/disclosure-preview.d.ts.map +1 -1
- package/dist/ui/disclosure/disclosure-preview.js +3 -3
- package/dist/ui/disclosure/disclosure.d.ts +1 -1
- package/dist/ui/disclosure/disclosure.d.ts.map +1 -1
- package/dist/ui/divider/divider-preview.d.ts +1 -1
- package/dist/ui/divider/divider-preview.d.ts.map +1 -1
- package/dist/ui/divider/divider.d.ts +1 -1
- package/dist/ui/divider/divider.d.ts.map +1 -1
- package/dist/ui/editable-cell/editable-cell-date.cjs +226 -0
- package/dist/ui/editable-cell/editable-cell-date.cjs.map +1 -0
- package/dist/ui/editable-cell/editable-cell-date.d.ts +4 -0
- package/dist/ui/editable-cell/editable-cell-date.d.ts.map +1 -0
- package/dist/ui/editable-cell/editable-cell-date.js +202 -0
- package/dist/ui/editable-cell/editable-cell-date.js.map +1 -0
- package/dist/ui/editable-cell/editable-cell-preview.cjs +1 -1
- package/dist/ui/editable-cell/editable-cell-preview.d.ts +1 -1
- package/dist/ui/editable-cell/editable-cell-preview.d.ts.map +1 -1
- package/dist/ui/editable-cell/editable-cell-preview.js +1 -1
- package/dist/ui/editable-cell/editable-cell-select.cjs +297 -0
- package/dist/ui/editable-cell/editable-cell-select.cjs.map +1 -0
- package/dist/ui/editable-cell/editable-cell-select.d.ts +4 -0
- package/dist/ui/editable-cell/editable-cell-select.d.ts.map +1 -0
- package/dist/ui/editable-cell/editable-cell-select.js +273 -0
- package/dist/ui/editable-cell/editable-cell-select.js.map +1 -0
- package/dist/ui/editable-cell/editable-cell-text.cjs +175 -0
- package/dist/ui/editable-cell/editable-cell-text.cjs.map +1 -0
- package/dist/ui/editable-cell/editable-cell-text.d.ts +4 -0
- package/dist/ui/editable-cell/editable-cell-text.d.ts.map +1 -0
- package/dist/ui/editable-cell/editable-cell-text.js +151 -0
- package/dist/ui/editable-cell/editable-cell-text.js.map +1 -0
- package/dist/ui/editable-cell/editable-cell-utils.cjs +56 -0
- package/dist/ui/editable-cell/editable-cell-utils.cjs.map +1 -0
- package/dist/ui/editable-cell/editable-cell-utils.d.ts +20 -0
- package/dist/ui/editable-cell/editable-cell-utils.d.ts.map +1 -0
- package/dist/ui/editable-cell/editable-cell-utils.js +29 -0
- package/dist/ui/editable-cell/editable-cell-utils.js.map +1 -0
- package/dist/ui/editable-cell/editable-cell.cjs +27 -725
- package/dist/ui/editable-cell/editable-cell.cjs.map +1 -1
- package/dist/ui/editable-cell/editable-cell.d.ts +3 -145
- package/dist/ui/editable-cell/editable-cell.d.ts.map +1 -1
- package/dist/ui/editable-cell/editable-cell.js +28 -738
- package/dist/ui/editable-cell/editable-cell.js.map +1 -1
- package/dist/ui/editable-cell/editable-cell.types.cjs +17 -0
- package/dist/ui/editable-cell/editable-cell.types.cjs.map +1 -0
- package/dist/ui/editable-cell/editable-cell.types.d.ts +156 -0
- package/dist/ui/editable-cell/editable-cell.types.d.ts.map +1 -0
- package/dist/ui/editable-cell/editable-cell.types.js +1 -0
- package/dist/ui/editable-cell/editable-cell.types.js.map +1 -0
- package/dist/ui/editable-cell/use-editable-cell.cjs +284 -0
- package/dist/ui/editable-cell/use-editable-cell.cjs.map +1 -0
- package/dist/ui/editable-cell/use-editable-cell.d.ts +51 -0
- package/dist/ui/editable-cell/use-editable-cell.d.ts.map +1 -0
- package/dist/ui/editable-cell/use-editable-cell.js +260 -0
- package/dist/ui/editable-cell/use-editable-cell.js.map +1 -0
- package/dist/ui/empty-state/empty-state-preview.cjs +3 -3
- package/dist/ui/empty-state/empty-state-preview.d.ts +1 -1
- package/dist/ui/empty-state/empty-state-preview.d.ts.map +1 -1
- package/dist/ui/empty-state/empty-state-preview.js +3 -3
- package/dist/ui/empty-state/empty-state.d.ts +1 -1
- package/dist/ui/empty-state/empty-state.d.ts.map +1 -1
- package/dist/ui/error-page/error-page-preview.cjs +2 -2
- package/dist/ui/error-page/error-page-preview.d.ts +1 -1
- package/dist/ui/error-page/error-page-preview.d.ts.map +1 -1
- package/dist/ui/error-page/error-page-preview.js +2 -2
- package/dist/ui/error-page/error-page.d.ts +1 -1
- package/dist/ui/error-page/error-page.d.ts.map +1 -1
- package/dist/ui/explorer-list-item/explorer-list-item-preview.cjs +1 -1
- package/dist/ui/explorer-list-item/explorer-list-item-preview.d.ts +1 -1
- package/dist/ui/explorer-list-item/explorer-list-item-preview.d.ts.map +1 -1
- package/dist/ui/explorer-list-item/explorer-list-item-preview.js +1 -1
- package/dist/ui/explorer-list-item/explorer-list-item.d.ts +1 -1
- package/dist/ui/explorer-list-item/explorer-list-item.d.ts.map +1 -1
- package/dist/ui/explorer-section/explorer-section-preview.cjs +2 -2
- package/dist/ui/explorer-section/explorer-section-preview.d.ts +1 -1
- package/dist/ui/explorer-section/explorer-section-preview.d.ts.map +1 -1
- package/dist/ui/explorer-section/explorer-section-preview.js +2 -2
- package/dist/ui/explorer-section/explorer-section.d.ts +1 -1
- package/dist/ui/explorer-section/explorer-section.d.ts.map +1 -1
- package/dist/ui/field-error/field-error.d.ts +1 -1
- package/dist/ui/field-error/field-error.d.ts.map +1 -1
- package/dist/ui/file-upload/file-upload-preview.cjs +1 -1
- package/dist/ui/file-upload/file-upload-preview.d.ts +1 -1
- package/dist/ui/file-upload/file-upload-preview.d.ts.map +1 -1
- package/dist/ui/file-upload/file-upload-preview.js +1 -1
- package/dist/ui/file-upload/file-upload.d.ts +1 -1
- package/dist/ui/file-upload/file-upload.d.ts.map +1 -1
- package/dist/ui/filter-tabs/filter-tabs-preview.cjs +1 -1
- package/dist/ui/filter-tabs/filter-tabs-preview.d.ts +1 -1
- package/dist/ui/filter-tabs/filter-tabs-preview.d.ts.map +1 -1
- package/dist/ui/filter-tabs/filter-tabs-preview.js +1 -1
- package/dist/ui/filter-tabs/filter-tabs.d.ts +1 -1
- package/dist/ui/filter-tabs/filter-tabs.d.ts.map +1 -1
- package/dist/ui/form-field/form-field-preview.cjs +2 -2
- package/dist/ui/form-field/form-field-preview.d.ts +1 -1
- package/dist/ui/form-field/form-field-preview.d.ts.map +1 -1
- package/dist/ui/form-field/form-field-preview.js +2 -2
- package/dist/ui/form-field/form-field.d.ts +1 -1
- package/dist/ui/form-field/form-field.d.ts.map +1 -1
- package/dist/ui/hover-tooltip/hover-tooltip.d.ts +1 -1
- package/dist/ui/hover-tooltip/hover-tooltip.d.ts.map +1 -1
- package/dist/ui/icon/icon-preview.cjs +1 -1
- package/dist/ui/icon/icon-preview.d.ts +1 -1
- package/dist/ui/icon/icon-preview.d.ts.map +1 -1
- package/dist/ui/icon/icon-preview.js +1 -1
- package/dist/ui/icon/icon.d.ts +1 -1
- package/dist/ui/icon/icon.d.ts.map +1 -1
- package/dist/ui/icon-button/icon-button-preview.cjs +20 -7
- package/dist/ui/icon-button/icon-button-preview.cjs.map +1 -1
- package/dist/ui/icon-button/icon-button-preview.d.ts +1 -1
- package/dist/ui/icon-button/icon-button-preview.d.ts.map +1 -1
- package/dist/ui/icon-button/icon-button-preview.js +20 -7
- package/dist/ui/icon-button/icon-button-preview.js.map +1 -1
- package/dist/ui/icon-button/icon-button.cjs +16 -2
- package/dist/ui/icon-button/icon-button.cjs.map +1 -1
- package/dist/ui/icon-button/icon-button.css +26 -0
- package/dist/ui/icon-button/icon-button.d.ts +9 -1
- package/dist/ui/icon-button/icon-button.d.ts.map +1 -1
- package/dist/ui/icon-button/icon-button.js +16 -2
- package/dist/ui/icon-button/icon-button.js.map +1 -1
- package/dist/ui/icon-tile/icon-tile-preview.cjs +2 -2
- package/dist/ui/icon-tile/icon-tile-preview.d.ts +1 -1
- package/dist/ui/icon-tile/icon-tile-preview.d.ts.map +1 -1
- package/dist/ui/icon-tile/icon-tile-preview.js +2 -2
- package/dist/ui/icon-tile/icon-tile.d.ts +1 -1
- package/dist/ui/icon-tile/icon-tile.d.ts.map +1 -1
- package/dist/ui/index.cjs.map +1 -1
- package/dist/ui/index.d.ts +2 -2
- package/dist/ui/index.d.ts.map +1 -1
- package/dist/ui/index.js.map +1 -1
- package/dist/ui/inline-action/inline-action-preview.cjs +2 -2
- package/dist/ui/inline-action/inline-action-preview.d.ts +1 -1
- package/dist/ui/inline-action/inline-action-preview.d.ts.map +1 -1
- package/dist/ui/inline-action/inline-action-preview.js +2 -2
- package/dist/ui/inline-action/inline-action.d.ts +1 -1
- package/dist/ui/inline-action/inline-action.d.ts.map +1 -1
- package/dist/ui/inline-filter/inline-filter-preview.cjs +4 -4
- package/dist/ui/inline-filter/inline-filter-preview.d.ts +1 -1
- package/dist/ui/inline-filter/inline-filter-preview.d.ts.map +1 -1
- package/dist/ui/inline-filter/inline-filter-preview.js +4 -4
- package/dist/ui/inline-filter/inline-filter.d.ts +1 -1
- package/dist/ui/inline-filter/inline-filter.d.ts.map +1 -1
- package/dist/ui/input/input-preview.cjs +1 -1
- package/dist/ui/input/input-preview.d.ts +1 -1
- package/dist/ui/input/input-preview.d.ts.map +1 -1
- package/dist/ui/input/input-preview.js +1 -1
- package/dist/ui/input/input.d.ts +3 -3
- package/dist/ui/input/input.d.ts.map +1 -1
- package/dist/ui/input/select-preview.cjs +1 -1
- package/dist/ui/input/select-preview.d.ts +1 -1
- package/dist/ui/input/select-preview.d.ts.map +1 -1
- package/dist/ui/input/select-preview.js +1 -1
- package/dist/ui/input/textarea-preview.cjs +1 -1
- package/dist/ui/input/textarea-preview.d.ts +1 -1
- package/dist/ui/input/textarea-preview.d.ts.map +1 -1
- package/dist/ui/input/textarea-preview.js +1 -1
- package/dist/ui/input-with-icon/input-with-icon-preview.cjs +2 -2
- package/dist/ui/input-with-icon/input-with-icon-preview.d.ts +1 -1
- package/dist/ui/input-with-icon/input-with-icon-preview.d.ts.map +1 -1
- package/dist/ui/input-with-icon/input-with-icon-preview.js +2 -2
- package/dist/ui/input-with-icon/input-with-icon.cjs +3 -3
- package/dist/ui/input-with-icon/input-with-icon.d.ts +1 -1
- package/dist/ui/input-with-icon/input-with-icon.d.ts.map +1 -1
- package/dist/ui/input-with-icon/input-with-icon.js +3 -3
- package/dist/ui/language-switcher/language-switcher-preview.cjs +1 -1
- package/dist/ui/language-switcher/language-switcher-preview.d.ts +1 -1
- package/dist/ui/language-switcher/language-switcher-preview.d.ts.map +1 -1
- package/dist/ui/language-switcher/language-switcher-preview.js +1 -1
- package/dist/ui/language-switcher/language-switcher.d.ts +1 -1
- package/dist/ui/language-switcher/language-switcher.d.ts.map +1 -1
- package/dist/ui/lifecycle-connector/lifecycle-connector-preview.cjs +1 -1
- package/dist/ui/lifecycle-connector/lifecycle-connector-preview.d.ts +1 -1
- package/dist/ui/lifecycle-connector/lifecycle-connector-preview.d.ts.map +1 -1
- package/dist/ui/lifecycle-connector/lifecycle-connector-preview.js +1 -1
- package/dist/ui/lifecycle-connector/lifecycle-connector.d.ts +1 -1
- package/dist/ui/lifecycle-connector/lifecycle-connector.d.ts.map +1 -1
- package/dist/ui/lifecycle-drop-slot/lifecycle-drop-slot-preview.cjs +1 -1
- package/dist/ui/lifecycle-drop-slot/lifecycle-drop-slot-preview.d.ts +1 -1
- package/dist/ui/lifecycle-drop-slot/lifecycle-drop-slot-preview.d.ts.map +1 -1
- package/dist/ui/lifecycle-drop-slot/lifecycle-drop-slot-preview.js +1 -1
- package/dist/ui/lifecycle-drop-slot/lifecycle-drop-slot.cjs +1 -1
- package/dist/ui/lifecycle-drop-slot/lifecycle-drop-slot.d.ts +1 -1
- package/dist/ui/lifecycle-drop-slot/lifecycle-drop-slot.d.ts.map +1 -1
- package/dist/ui/lifecycle-drop-slot/lifecycle-drop-slot.js +1 -1
- package/dist/ui/lifecycle-edge-label/lifecycle-edge-label-preview.cjs +1 -1
- package/dist/ui/lifecycle-edge-label/lifecycle-edge-label-preview.d.ts +1 -1
- package/dist/ui/lifecycle-edge-label/lifecycle-edge-label-preview.d.ts.map +1 -1
- package/dist/ui/lifecycle-edge-label/lifecycle-edge-label-preview.js +1 -1
- package/dist/ui/lifecycle-edge-label/lifecycle-edge-label.d.ts +1 -1
- package/dist/ui/lifecycle-edge-label/lifecycle-edge-label.d.ts.map +1 -1
- package/dist/ui/lifecycle-group-box/lifecycle-group-box-preview.cjs +1 -1
- package/dist/ui/lifecycle-group-box/lifecycle-group-box-preview.d.ts +1 -1
- package/dist/ui/lifecycle-group-box/lifecycle-group-box-preview.d.ts.map +1 -1
- package/dist/ui/lifecycle-group-box/lifecycle-group-box-preview.js +1 -1
- package/dist/ui/lifecycle-group-box/lifecycle-group-box.d.ts +1 -1
- package/dist/ui/lifecycle-group-box/lifecycle-group-box.d.ts.map +1 -1
- package/dist/ui/lifecycle-minimap/lifecycle-minimap-preview.cjs +1 -1
- package/dist/ui/lifecycle-minimap/lifecycle-minimap-preview.d.ts +1 -1
- package/dist/ui/lifecycle-minimap/lifecycle-minimap-preview.d.ts.map +1 -1
- package/dist/ui/lifecycle-minimap/lifecycle-minimap-preview.js +1 -1
- package/dist/ui/lifecycle-minimap/lifecycle-minimap.d.ts +1 -1
- package/dist/ui/lifecycle-minimap/lifecycle-minimap.d.ts.map +1 -1
- package/dist/ui/lifecycle-node-card/lifecycle-node-card-preview.cjs +1 -1
- package/dist/ui/lifecycle-node-card/lifecycle-node-card-preview.d.ts +1 -1
- package/dist/ui/lifecycle-node-card/lifecycle-node-card-preview.d.ts.map +1 -1
- package/dist/ui/lifecycle-node-card/lifecycle-node-card-preview.js +1 -1
- package/dist/ui/lifecycle-node-card/lifecycle-node-card.cjs +2 -2
- package/dist/ui/lifecycle-node-card/lifecycle-node-card.d.ts +1 -1
- package/dist/ui/lifecycle-node-card/lifecycle-node-card.d.ts.map +1 -1
- package/dist/ui/lifecycle-node-card/lifecycle-node-card.js +2 -2
- package/dist/ui/lifecycle-terminal/lifecycle-terminal-preview.cjs +1 -1
- package/dist/ui/lifecycle-terminal/lifecycle-terminal-preview.d.ts +1 -1
- package/dist/ui/lifecycle-terminal/lifecycle-terminal-preview.d.ts.map +1 -1
- package/dist/ui/lifecycle-terminal/lifecycle-terminal-preview.js +1 -1
- package/dist/ui/lifecycle-terminal/lifecycle-terminal.d.ts +1 -1
- package/dist/ui/lifecycle-terminal/lifecycle-terminal.d.ts.map +1 -1
- package/dist/ui/lifecycle-zoom-control/lifecycle-zoom-control-preview.cjs +1 -1
- package/dist/ui/lifecycle-zoom-control/lifecycle-zoom-control-preview.d.ts +1 -1
- package/dist/ui/lifecycle-zoom-control/lifecycle-zoom-control-preview.d.ts.map +1 -1
- package/dist/ui/lifecycle-zoom-control/lifecycle-zoom-control-preview.js +1 -1
- package/dist/ui/lifecycle-zoom-control/lifecycle-zoom-control.cjs +1 -1
- package/dist/ui/lifecycle-zoom-control/lifecycle-zoom-control.d.ts +1 -1
- package/dist/ui/lifecycle-zoom-control/lifecycle-zoom-control.d.ts.map +1 -1
- package/dist/ui/lifecycle-zoom-control/lifecycle-zoom-control.js +1 -1
- package/dist/ui/link/link-preview.cjs +1 -1
- package/dist/ui/link/link-preview.d.ts +1 -1
- package/dist/ui/link/link-preview.d.ts.map +1 -1
- package/dist/ui/link/link-preview.js +1 -1
- package/dist/ui/link/link.d.ts +1 -1
- package/dist/ui/link/link.d.ts.map +1 -1
- package/dist/ui/list/list-item-preview.cjs +3 -3
- package/dist/ui/list/list-item-preview.d.ts +1 -1
- package/dist/ui/list/list-item-preview.d.ts.map +1 -1
- package/dist/ui/list/list-item-preview.js +3 -3
- package/dist/ui/list/list.d.ts +2 -2
- package/dist/ui/list/list.d.ts.map +1 -1
- package/dist/ui/listbox/listbox-preview.cjs +1 -1
- package/dist/ui/listbox/listbox-preview.d.ts +1 -1
- package/dist/ui/listbox/listbox-preview.d.ts.map +1 -1
- package/dist/ui/listbox/listbox-preview.js +1 -1
- package/dist/ui/listbox/listbox.d.ts +2 -2
- package/dist/ui/listbox/listbox.d.ts.map +1 -1
- package/dist/ui/loader/loader-preview.d.ts +1 -1
- package/dist/ui/loader/loader-preview.d.ts.map +1 -1
- package/dist/ui/loader/loader.d.ts +1 -1
- package/dist/ui/loader/loader.d.ts.map +1 -1
- package/dist/ui/locale/locale.d.ts +1 -1
- package/dist/ui/locale/locale.d.ts.map +1 -1
- package/dist/ui/menu/menu-preview.cjs +1 -1
- package/dist/ui/menu/menu-preview.d.ts +1 -1
- package/dist/ui/menu/menu-preview.d.ts.map +1 -1
- package/dist/ui/menu/menu-preview.js +1 -1
- package/dist/ui/menu/menu.d.ts +1 -1
- package/dist/ui/menu/menu.d.ts.map +1 -1
- package/dist/ui/meta-row/meta-row-preview.cjs +1 -1
- package/dist/ui/meta-row/meta-row-preview.d.ts +1 -1
- package/dist/ui/meta-row/meta-row-preview.d.ts.map +1 -1
- package/dist/ui/meta-row/meta-row-preview.js +1 -1
- package/dist/ui/meta-row/meta-row.d.ts +1 -1
- package/dist/ui/meta-row/meta-row.d.ts.map +1 -1
- package/dist/ui/modal/modal-preview.cjs +1 -1
- package/dist/ui/modal/modal-preview.d.ts +1 -1
- package/dist/ui/modal/modal-preview.d.ts.map +1 -1
- package/dist/ui/modal/modal-preview.js +1 -1
- package/dist/ui/modal/modal.cjs +13 -15
- package/dist/ui/modal/modal.cjs.map +1 -1
- package/dist/ui/modal/modal.d.ts +23 -5
- package/dist/ui/modal/modal.d.ts.map +1 -1
- package/dist/ui/modal/modal.js +13 -16
- package/dist/ui/modal/modal.js.map +1 -1
- package/dist/ui/number-input/number-input-preview.cjs +1 -1
- package/dist/ui/number-input/number-input-preview.d.ts +1 -1
- package/dist/ui/number-input/number-input-preview.d.ts.map +1 -1
- package/dist/ui/number-input/number-input-preview.js +1 -1
- package/dist/ui/number-input/number-input.cjs +3 -3
- package/dist/ui/number-input/number-input.d.ts +1 -1
- package/dist/ui/number-input/number-input.d.ts.map +1 -1
- package/dist/ui/number-input/number-input.js +3 -3
- package/dist/ui/number-stepper/number-stepper-preview.cjs +1 -1
- package/dist/ui/number-stepper/number-stepper-preview.d.ts +1 -1
- package/dist/ui/number-stepper/number-stepper-preview.d.ts.map +1 -1
- package/dist/ui/number-stepper/number-stepper-preview.js +1 -1
- package/dist/ui/number-stepper/number-stepper.d.ts +1 -1
- package/dist/ui/number-stepper/number-stepper.d.ts.map +1 -1
- package/dist/ui/option-list/option-list-preview.cjs +1 -1
- package/dist/ui/option-list/option-list-preview.d.ts +1 -1
- package/dist/ui/option-list/option-list-preview.d.ts.map +1 -1
- package/dist/ui/option-list/option-list-preview.js +1 -1
- package/dist/ui/option-list/option-list.cjs +1 -1
- package/dist/ui/option-list/option-list.d.ts +1 -1
- package/dist/ui/option-list/option-list.d.ts.map +1 -1
- package/dist/ui/option-list/option-list.js +1 -1
- package/dist/ui/page-header/page-header-preview.cjs +3 -3
- package/dist/ui/page-header/page-header-preview.d.ts +1 -1
- package/dist/ui/page-header/page-header-preview.d.ts.map +1 -1
- package/dist/ui/page-header/page-header-preview.js +3 -3
- package/dist/ui/page-header/page-header.d.ts +1 -1
- package/dist/ui/page-header/page-header.d.ts.map +1 -1
- package/dist/ui/page-shell/page-shell-preview.cjs +7 -7
- package/dist/ui/page-shell/page-shell-preview.d.ts +1 -1
- package/dist/ui/page-shell/page-shell-preview.d.ts.map +1 -1
- package/dist/ui/page-shell/page-shell-preview.js +7 -7
- package/dist/ui/page-shell/page-shell.cjs.map +1 -1
- package/dist/ui/page-shell/page-shell.d.ts +2 -2
- package/dist/ui/page-shell/page-shell.d.ts.map +1 -1
- package/dist/ui/page-shell/page-shell.js.map +1 -1
- package/dist/ui/password-input/password-input-preview.cjs +1 -1
- package/dist/ui/password-input/password-input-preview.d.ts +1 -1
- package/dist/ui/password-input/password-input-preview.d.ts.map +1 -1
- package/dist/ui/password-input/password-input-preview.js +1 -1
- package/dist/ui/password-input/password-input.d.ts +1 -1
- package/dist/ui/password-input/password-input.d.ts.map +1 -1
- package/dist/ui/phone-input/phone-input-preview.cjs +1 -1
- package/dist/ui/phone-input/phone-input-preview.d.ts +1 -1
- package/dist/ui/phone-input/phone-input-preview.d.ts.map +1 -1
- package/dist/ui/phone-input/phone-input-preview.js +1 -1
- package/dist/ui/phone-input/phone-input.d.ts +1 -1
- package/dist/ui/phone-input/phone-input.d.ts.map +1 -1
- package/dist/ui/pill-select/pill-select-preview.cjs +1 -1
- package/dist/ui/pill-select/pill-select-preview.d.ts +1 -1
- package/dist/ui/pill-select/pill-select-preview.d.ts.map +1 -1
- package/dist/ui/pill-select/pill-select-preview.js +1 -1
- package/dist/ui/pill-select/pill-select.d.ts +1 -1
- package/dist/ui/pill-select/pill-select.d.ts.map +1 -1
- package/dist/ui/popover/popover.d.ts +1 -1
- package/dist/ui/popover/popover.d.ts.map +1 -1
- package/dist/ui/progress-bar/progress-bar-preview.cjs +1 -1
- package/dist/ui/progress-bar/progress-bar-preview.d.ts +1 -1
- package/dist/ui/progress-bar/progress-bar-preview.d.ts.map +1 -1
- package/dist/ui/progress-bar/progress-bar-preview.js +1 -1
- package/dist/ui/progress-bar/progress-bar.d.ts +1 -1
- package/dist/ui/progress-bar/progress-bar.d.ts.map +1 -1
- package/dist/ui/property-field/property-field-preview.cjs +1 -1
- package/dist/ui/property-field/property-field-preview.d.ts +1 -1
- package/dist/ui/property-field/property-field-preview.d.ts.map +1 -1
- package/dist/ui/property-field/property-field-preview.js +1 -1
- package/dist/ui/property-field/property-field.d.ts +2 -2
- package/dist/ui/property-field/property-field.d.ts.map +1 -1
- package/dist/ui/property-field/property-grid-preview.cjs +1 -1
- package/dist/ui/property-field/property-grid-preview.d.ts +1 -1
- package/dist/ui/property-field/property-grid-preview.d.ts.map +1 -1
- package/dist/ui/property-field/property-grid-preview.js +1 -1
- package/dist/ui/radio-group/radio-group-preview.cjs +1 -1
- package/dist/ui/radio-group/radio-group-preview.d.ts +1 -1
- package/dist/ui/radio-group/radio-group-preview.d.ts.map +1 -1
- package/dist/ui/radio-group/radio-group-preview.js +1 -1
- package/dist/ui/radio-group/radio-group.cjs +1 -1
- package/dist/ui/radio-group/radio-group.d.ts +2 -2
- package/dist/ui/radio-group/radio-group.d.ts.map +1 -1
- package/dist/ui/radio-group/radio-group.js +1 -1
- package/dist/ui/range-slider/range-slider.d.ts +1 -1
- package/dist/ui/range-slider/range-slider.d.ts.map +1 -1
- package/dist/ui/responsive-grid/responsive-grid-preview.cjs +1 -1
- package/dist/ui/responsive-grid/responsive-grid-preview.d.ts +1 -1
- package/dist/ui/responsive-grid/responsive-grid-preview.d.ts.map +1 -1
- package/dist/ui/responsive-grid/responsive-grid-preview.js +1 -1
- package/dist/ui/responsive-grid/responsive-grid.d.ts +1 -1
- package/dist/ui/responsive-grid/responsive-grid.d.ts.map +1 -1
- package/dist/ui/search-dropdown/search-dropdown-preview.cjs +3 -3
- package/dist/ui/search-dropdown/search-dropdown-preview.d.ts +1 -1
- package/dist/ui/search-dropdown/search-dropdown-preview.d.ts.map +1 -1
- package/dist/ui/search-dropdown/search-dropdown-preview.js +3 -3
- package/dist/ui/search-dropdown/search-dropdown.d.ts +1 -1
- package/dist/ui/search-dropdown/search-dropdown.d.ts.map +1 -1
- package/dist/ui/section-header/section-header-preview.cjs +3 -3
- package/dist/ui/section-header/section-header-preview.d.ts +1 -1
- package/dist/ui/section-header/section-header-preview.d.ts.map +1 -1
- package/dist/ui/section-header/section-header-preview.js +3 -3
- package/dist/ui/section-header/section-header.d.ts +1 -1
- package/dist/ui/section-header/section-header.d.ts.map +1 -1
- package/dist/ui/segment-card/segment-card-preview.cjs +1 -1
- package/dist/ui/segment-card/segment-card-preview.d.ts +1 -1
- package/dist/ui/segment-card/segment-card-preview.d.ts.map +1 -1
- package/dist/ui/segment-card/segment-card-preview.js +1 -1
- package/dist/ui/segment-card/segment-card.d.ts +1 -1
- package/dist/ui/segment-card/segment-card.d.ts.map +1 -1
- package/dist/ui/segment-row/segment-row-preview.cjs +1 -1
- package/dist/ui/segment-row/segment-row-preview.d.ts +1 -1
- package/dist/ui/segment-row/segment-row-preview.d.ts.map +1 -1
- package/dist/ui/segment-row/segment-row-preview.js +1 -1
- package/dist/ui/segment-row/segment-row.cjs +1 -1
- package/dist/ui/segment-row/segment-row.d.ts +1 -1
- package/dist/ui/segment-row/segment-row.d.ts.map +1 -1
- package/dist/ui/segment-row/segment-row.js +1 -1
- package/dist/ui/side-flexpane/side-flexpane-preview.cjs +1 -1
- package/dist/ui/side-flexpane/side-flexpane-preview.d.ts +1 -1
- package/dist/ui/side-flexpane/side-flexpane-preview.d.ts.map +1 -1
- package/dist/ui/side-flexpane/side-flexpane-preview.js +1 -1
- package/dist/ui/side-flexpane/side-flexpane.d.ts +1 -1
- package/dist/ui/side-flexpane/side-flexpane.d.ts.map +1 -1
- package/dist/ui/sidebar-nav-item/sidebar-nav-item-preview.cjs +2 -2
- package/dist/ui/sidebar-nav-item/sidebar-nav-item-preview.d.ts +1 -1
- package/dist/ui/sidebar-nav-item/sidebar-nav-item-preview.d.ts.map +1 -1
- package/dist/ui/sidebar-nav-item/sidebar-nav-item-preview.js +2 -2
- package/dist/ui/sidebar-nav-item/sidebar-nav-item.d.ts +1 -1
- package/dist/ui/sidebar-nav-item/sidebar-nav-item.d.ts.map +1 -1
- package/dist/ui/sidebar-nav-trigger/sidebar-nav-trigger-preview.cjs +1 -1
- package/dist/ui/sidebar-nav-trigger/sidebar-nav-trigger-preview.d.ts +1 -1
- package/dist/ui/sidebar-nav-trigger/sidebar-nav-trigger-preview.d.ts.map +1 -1
- package/dist/ui/sidebar-nav-trigger/sidebar-nav-trigger-preview.js +1 -1
- package/dist/ui/sidebar-nav-trigger/sidebar-nav-trigger.d.ts +1 -1
- package/dist/ui/sidebar-nav-trigger/sidebar-nav-trigger.d.ts.map +1 -1
- package/dist/ui/slider/slider-preview.cjs +2 -2
- package/dist/ui/slider/slider-preview.d.ts +1 -1
- package/dist/ui/slider/slider-preview.d.ts.map +1 -1
- package/dist/ui/slider/slider-preview.js +2 -2
- package/dist/ui/slider/slider.d.ts +1 -1
- package/dist/ui/slider/slider.d.ts.map +1 -1
- package/dist/ui/stack/stack-preview.cjs +1 -1
- package/dist/ui/stack/stack-preview.d.ts +1 -1
- package/dist/ui/stack/stack-preview.d.ts.map +1 -1
- package/dist/ui/stack/stack-preview.js +1 -1
- package/dist/ui/stack/stack.d.ts +1 -1
- package/dist/ui/stack/stack.d.ts.map +1 -1
- package/dist/ui/stat-card/stat-card-preview.cjs +1 -1
- package/dist/ui/stat-card/stat-card-preview.d.ts +1 -1
- package/dist/ui/stat-card/stat-card-preview.d.ts.map +1 -1
- package/dist/ui/stat-card/stat-card-preview.js +1 -1
- package/dist/ui/stat-card/stat-card.cjs +1 -1
- package/dist/ui/stat-card/stat-card.d.ts +1 -1
- package/dist/ui/stat-card/stat-card.d.ts.map +1 -1
- package/dist/ui/stat-card/stat-card.js +1 -1
- package/dist/ui/styles.css +1 -1
- package/dist/ui/tabs/tabs-preview.cjs +2 -2
- package/dist/ui/tabs/tabs-preview.d.ts +1 -1
- package/dist/ui/tabs/tabs-preview.d.ts.map +1 -1
- package/dist/ui/tabs/tabs-preview.js +2 -2
- package/dist/ui/tabs/tabs.d.ts +1 -1
- package/dist/ui/tabs/tabs.d.ts.map +1 -1
- package/dist/ui/tabs-underline/tabs-underline-preview.cjs +2 -2
- package/dist/ui/tabs-underline/tabs-underline-preview.d.ts +1 -1
- package/dist/ui/tabs-underline/tabs-underline-preview.d.ts.map +1 -1
- package/dist/ui/tabs-underline/tabs-underline-preview.js +2 -2
- package/dist/ui/tabs-underline/tabs-underline.d.ts +1 -1
- package/dist/ui/tabs-underline/tabs-underline.d.ts.map +1 -1
- package/dist/ui/tag/tag-preview.cjs +2 -2
- package/dist/ui/tag/tag-preview.d.ts +1 -1
- package/dist/ui/tag/tag-preview.d.ts.map +1 -1
- package/dist/ui/tag/tag-preview.js +2 -2
- package/dist/ui/tag/tag.d.ts +1 -1
- package/dist/ui/tag/tag.d.ts.map +1 -1
- package/dist/ui/thumbnail/thumbnail-preview.cjs +1 -1
- package/dist/ui/thumbnail/thumbnail-preview.d.ts +1 -1
- package/dist/ui/thumbnail/thumbnail-preview.d.ts.map +1 -1
- package/dist/ui/thumbnail/thumbnail-preview.js +1 -1
- package/dist/ui/thumbnail/thumbnail.cjs +1 -1
- package/dist/ui/thumbnail/thumbnail.d.ts +1 -1
- package/dist/ui/thumbnail/thumbnail.d.ts.map +1 -1
- package/dist/ui/thumbnail/thumbnail.js +1 -1
- package/dist/ui/time-input/time-input-preview.cjs +1 -1
- package/dist/ui/time-input/time-input-preview.d.ts +1 -1
- package/dist/ui/time-input/time-input-preview.d.ts.map +1 -1
- package/dist/ui/time-input/time-input-preview.js +1 -1
- package/dist/ui/time-input/time-input.d.ts +1 -1
- package/dist/ui/time-input/time-input.d.ts.map +1 -1
- package/dist/ui/timeline-entry/timeline-entry-preview.cjs +2 -2
- package/dist/ui/timeline-entry/timeline-entry-preview.d.ts +1 -1
- package/dist/ui/timeline-entry/timeline-entry-preview.d.ts.map +1 -1
- package/dist/ui/timeline-entry/timeline-entry-preview.js +2 -2
- package/dist/ui/timeline-entry/timeline-entry.d.ts +1 -1
- package/dist/ui/timeline-entry/timeline-entry.d.ts.map +1 -1
- package/dist/ui/toast/toast-preview.cjs +1 -1
- package/dist/ui/toast/toast-preview.d.ts +1 -1
- package/dist/ui/toast/toast-preview.d.ts.map +1 -1
- package/dist/ui/toast/toast-preview.js +1 -1
- package/dist/ui/toast/toast.cjs.map +1 -1
- package/dist/ui/toast/toast.d.ts +3 -3
- package/dist/ui/toast/toast.d.ts.map +1 -1
- package/dist/ui/toast/toast.js.map +1 -1
- package/dist/ui/toggle-switch/toggle-preview.cjs +1 -1
- package/dist/ui/toggle-switch/toggle-preview.d.ts +1 -1
- package/dist/ui/toggle-switch/toggle-preview.d.ts.map +1 -1
- package/dist/ui/toggle-switch/toggle-preview.js +1 -1
- package/dist/ui/toggle-switch/toggle-switch.cjs +1 -1
- package/dist/ui/toggle-switch/toggle-switch.d.ts +1 -1
- package/dist/ui/toggle-switch/toggle-switch.d.ts.map +1 -1
- package/dist/ui/toggle-switch/toggle-switch.js +1 -1
- package/dist/ui/tooltip/content-tooltip-preview.cjs +1 -1
- package/dist/ui/tooltip/content-tooltip-preview.d.ts +1 -1
- package/dist/ui/tooltip/content-tooltip-preview.d.ts.map +1 -1
- package/dist/ui/tooltip/content-tooltip-preview.js +1 -1
- package/dist/ui/tooltip/tooltip-preview.d.ts +1 -1
- package/dist/ui/tooltip/tooltip-preview.d.ts.map +1 -1
- package/dist/ui/tooltip/tooltip.d.ts +2 -2
- package/dist/ui/tooltip/tooltip.d.ts.map +1 -1
- package/dist/ui/type-overview-card/type-overview-card-preview.cjs +2 -2
- package/dist/ui/type-overview-card/type-overview-card-preview.d.ts +1 -1
- package/dist/ui/type-overview-card/type-overview-card-preview.d.ts.map +1 -1
- package/dist/ui/type-overview-card/type-overview-card-preview.js +2 -2
- package/dist/ui/type-overview-card/type-overview-card.cjs +2 -2
- package/dist/ui/type-overview-card/type-overview-card.d.ts +1 -1
- package/dist/ui/type-overview-card/type-overview-card.d.ts.map +1 -1
- package/dist/ui/type-overview-card/type-overview-card.js +2 -2
- package/dist/ui/view-switcher/view-switcher-preview.cjs +2 -2
- package/dist/ui/view-switcher/view-switcher-preview.d.ts +1 -1
- package/dist/ui/view-switcher/view-switcher-preview.d.ts.map +1 -1
- package/dist/ui/view-switcher/view-switcher-preview.js +2 -2
- package/dist/ui/view-switcher/view-switcher.d.ts +1 -1
- package/dist/ui/view-switcher/view-switcher.d.ts.map +1 -1
- package/package.json +23 -8
- package/dist/studio/lib/registry/composite.cjs +0 -1732
- package/dist/studio/lib/registry/composite.cjs.map +0 -1
- package/dist/studio/lib/registry/composite.d.ts +0 -3
- package/dist/studio/lib/registry/composite.d.ts.map +0 -1
- package/dist/studio/lib/registry/composite.js +0 -1708
- package/dist/studio/lib/registry/composite.js.map +0 -1
- package/dist/studio/lib/registry/inputs.cjs +0 -1980
- package/dist/studio/lib/registry/inputs.cjs.map +0 -1
- package/dist/studio/lib/registry/inputs.d.ts +0 -3
- package/dist/studio/lib/registry/inputs.d.ts.map +0 -1
- package/dist/studio/lib/registry/inputs.js +0 -1956
- package/dist/studio/lib/registry/inputs.js.map +0 -1
- package/dist/studio/shell/properties-panel.cjs +0 -873
- package/dist/studio/shell/properties-panel.cjs.map +0 -1
- package/dist/studio/shell/properties-panel.d.ts.map +0 -1
- package/dist/studio/shell/properties-panel.js +0 -849
- package/dist/studio/shell/properties-panel.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/studio/persistence/generate-css.ts"],"sourcesContent":["import type { AllOverrides } from './types';\nimport type { BrandConfig } from '../lib/types';\n\n/**\n * Pure CSS generator for UXM Studio overrides.\n *\n * Single source of truth (R5): the modo Hono `/api/uxm/save` route imports\n * `generateOverridesCss` from here instead of keeping its own copy. No Node\n * APIs — runs in browser (client export) and server alike.\n *\n * Emits a stylesheet from per-component style overrides plus brand config\n * (font, logo/icon URLs, brand token blocks). All attacker-controlled brand\n * values are sanitised before interpolation because the output is served to\n * every browser session.\n */\n\nconst BRAND_FONT_WEIGHTS = 'wght@400;500;600;700';\n\nexport function fontFileUrl(fontFamily: string): string {\n const encoded = fontFamily.trim().replace(/\\s+/g, '+');\n return `https://fonts.googleapis.com/css2?family=${encoded}:${BRAND_FONT_WEIGHTS}&display=swap`;\n}\n\nconst REAL_CSS_PROPS = new Set([\n 'background', 'backgroundColor',\n 'color',\n 'border', 'borderColor', 'borderRadius', 'borderWidth', 'borderStyle',\n 'padding', 'paddingX', 'paddingY', 'margin',\n 'gap', 'rowGap', 'columnGap',\n 'width', 'height', 'minWidth', 'maxWidth', 'minHeight', 'maxHeight',\n 'fontSize', 'fontWeight', 'fontFamily', 'lineHeight',\n 'opacity',\n 'cursor', 'display', 'position', 'overflow', 'direction',\n]);\n\n// Per-component selector overrides for the emitted rule. Defaults to\n// `.uxm-{id}`. Override when the atom renders the styled element via a PORTAL\n// (Listbox / Popover panel mounts to document.body): CSS custom properties\n// cascade DOWN from the declaring element, so vars on the in-page wrapper\n// never reach a portaled descendant. Emit on BOTH wrapper and panel selector.\nconst PER_COMPONENT_SELECTOR: Record<string, string> = {\n listbox: '.uxm-listbox, .uxm-listbox__panel',\n // Menu mirrors Listbox: the `.uxm-menu` wrapper lives in-page around the\n // trigger, but the `.uxm-menu__panel` portals to document.body, so vars on\n // the wrapper never reach it. Emit on both so the panel carries them.\n menu: '.uxm-menu, .uxm-menu__panel',\n // PhoneInput no longer needs a panel-scoped selector: its country picker\n // now delegates to the shared `Listbox`, whose portaled panel already gets\n // its vars via the `listbox` entry above. All `--uxm-phone-input-*` knobs\n // target the in-page field, so the default `.uxm-phone-input` selector is\n // correct.\n};\n\n// One knob → one variable. A multi-target (string[]) form was briefly added so\n// Card's Row Gap could write both the Stack and Cluster gap vars; that was the\n// only use, and it was the wrong shape (see the `card` entry below), so the\n// mapping stays single-target on purpose — a knob that themes a SIBLING atom's\n// var cannot win against that atom's own knob.\nconst PER_COMPONENT_MAPPING: Record<string, Record<string, string>> = {\n 'input-with-icon': {\n backgroundColor: '--uxm-input-with-icon-bg',\n borderColor: '--uxm-input-with-icon-border-color',\n borderRadius: '--uxm-input-with-icon-radius',\n paddingX: '--uxm-input-with-icon-padding-x',\n paddingY: '--uxm-input-with-icon-padding-y',\n fontSize: '--uxm-input-with-icon-font-size',\n color: '--uxm-input-with-icon-color',\n },\n 'input-text': {\n backgroundColor: '--uxm-input-text-bg',\n borderColor: '--uxm-input-text-border-color',\n color: '--uxm-input-text-color',\n borderRadius: '--uxm-input-text-border-radius',\n paddingX: '--uxm-input-text-padding-x',\n paddingY: '--uxm-input-text-padding-y',\n fontSize: '--uxm-input-text-font-size',\n },\n 'number-input': {\n backgroundColor: '--uxm-number-input-bg',\n borderColor: '--uxm-number-input-border-color',\n color: '--uxm-number-input-color',\n borderRadius: '--uxm-number-input-border-radius',\n paddingX: '--uxm-number-input-padding-x',\n paddingY: '--uxm-number-input-padding-y',\n fontSize: '--uxm-number-input-font-size',\n },\n // Every key below collides with REAL_CSS_PROPS. The atom passes its class to\n // `Listbox`, so the emitted rule lands on that in-page ROOT while the styled\n // element is the `__trigger` child, which declares its own `color`,\n // `border-color`, `font-size` and `gap` from `--uxm-language-switcher-*` and\n // therefore beats anything inherited — every one of these would be a silent\n // no-op. Padding is worse: `padding-inline` on the root pads OUTSIDE the\n // button while the trigger keeps its default 10px/7px.\n 'language-switcher': {\n color: '--uxm-language-switcher-color',\n borderColor: '--uxm-language-switcher-border-color',\n fontSize: '--uxm-language-switcher-font-size',\n gap: '--uxm-language-switcher-gap',\n paddingX: '--uxm-language-switcher-padding-x',\n paddingY: '--uxm-language-switcher-padding-y',\n },\n // Without this entry `fontSize` falls through REAL_CSS_PROPS and emits a\n // literal `font-size` on `.uxm-color-input`, which the atom's own children\n // (`__value-field`, `__format`) always beat — so the knob did nothing at all.\n 'color-input': {\n fontSize: '--uxm-color-input-font-size',\n },\n // Every key here collides with REAL_CSS_PROPS, where the generic fallback\n // emits a REAL property on `.uxm-code-editor` instead of a var. That root is\n // pure chrome — the text lives in `__input` / `__gutter-lines`, which declare\n // their own `color` / `font-size` / `line-height` and always beat inherited\n // values, so Text / Font Size / Line Height would be silent no-ops. Padding is\n // worse than a no-op: `padding-inline` on the root pads OUTSIDE the code while\n // `--uxm-code-editor-padding-x` stays unset, so the gutter's absolutely\n // positioned `left` keeps its 14px default and the numbers leave their column.\n // Same defect as the `color-input` entry above.\n 'code-editor': {\n backgroundColor: '--uxm-code-editor-bg',\n borderColor: '--uxm-code-editor-border-color',\n color: '--uxm-code-editor-color',\n borderRadius: '--uxm-code-editor-border-radius',\n paddingX: '--uxm-code-editor-padding-x',\n paddingY: '--uxm-code-editor-padding-y',\n fontSize: '--uxm-code-editor-font-size',\n lineHeight: '--uxm-code-editor-line-height',\n minHeight: '--uxm-code-editor-min-height',\n },\n 'currency-input': {\n backgroundColor: '--uxm-currency-input-background-color',\n borderColor: '--uxm-currency-input-border-color',\n borderRadius: '--uxm-currency-input-border-radius',\n paddingX: '--uxm-currency-input-padding-x',\n paddingY: '--uxm-currency-input-padding-y',\n fontSize: '--uxm-currency-input-font-size',\n color: '--uxm-currency-input-color',\n },\n textarea: {\n backgroundColor: '--uxm-textarea-bg',\n borderColor: '--uxm-textarea-border-color',\n color: '--uxm-textarea-color',\n minHeight: '--uxm-textarea-min-height',\n borderRadius: '--uxm-textarea-border-radius',\n paddingX: '--uxm-textarea-padding-x',\n paddingY: '--uxm-textarea-padding-y',\n fontSize: '--uxm-textarea-font-size',\n },\n 'file-upload': {\n backgroundColor: '--uxm-file-upload-bg',\n borderColor: '--uxm-file-upload-border-color',\n color: '--uxm-file-upload-color',\n borderRadius: '--uxm-file-upload-border-radius',\n borderStyle: '--uxm-file-upload-border-style',\n borderWidth: '--uxm-file-upload-border-width',\n paddingX: '--uxm-file-upload-padding-x',\n paddingY: '--uxm-file-upload-padding-y',\n minHeight: '--uxm-file-upload-min-height',\n gap: '--uxm-file-upload-gap',\n rowGap: '--uxm-file-upload-row-gap',\n },\n 'select-dropdown': {\n backgroundColor: '--uxm-select-dropdown-bg',\n borderColor: '--uxm-select-dropdown-border-color',\n color: '--uxm-select-dropdown-color',\n borderRadius: '--uxm-select-dropdown-border-radius',\n paddingX: '--uxm-select-dropdown-padding-x',\n paddingY: '--uxm-select-dropdown-padding-y',\n fontSize: '--uxm-select-dropdown-font-size',\n },\n 'date-input': {\n backgroundColor: '--uxm-date-input-background-color',\n borderColor: '--uxm-date-input-border-color',\n borderRadius: '--uxm-date-input-border-radius',\n paddingX: '--uxm-date-input-padding-x',\n paddingY: '--uxm-date-input-padding-y',\n fontSize: '--uxm-date-input-font-size',\n color: '--uxm-date-input-color',\n },\n 'password-input': {\n backgroundColor: '--uxm-password-input-background-color',\n borderColor: '--uxm-password-input-border-color',\n borderRadius: '--uxm-password-input-border-radius',\n paddingX: '--uxm-password-input-padding-x',\n paddingY: '--uxm-password-input-padding-y',\n fontSize: '--uxm-password-input-font-size',\n color: '--uxm-password-input-color',\n },\n 'time-input': {\n backgroundColor: '--uxm-time-input-background-color',\n borderColor: '--uxm-time-input-border-color',\n borderRadius: '--uxm-time-input-border-radius',\n paddingX: '--uxm-time-input-padding-x',\n paddingY: '--uxm-time-input-padding-y',\n fontSize: '--uxm-time-input-font-size',\n color: '--uxm-time-input-color',\n },\n 'phone-input': {\n backgroundColor: '--uxm-phone-input-background-color',\n borderColor: '--uxm-phone-input-border-color',\n borderRadius: '--uxm-phone-input-border-radius',\n paddingX: '--uxm-phone-input-padding-x',\n paddingY: '--uxm-phone-input-padding-y',\n fontSize: '--uxm-phone-input-font-size',\n color: '--uxm-phone-input-color',\n },\n calendar: {\n backgroundColor: '--uxm-calendar-background-color',\n borderColor: '--uxm-calendar-border-color',\n borderRadius: '--uxm-calendar-border-radius',\n padding: '--uxm-calendar-padding',\n },\n tabs: {\n gap: '--uxm-tabs-gap',\n paddingX: '--uxm-tabs-padding-x',\n paddingY: '--uxm-tabs-padding-y',\n fontSize: '--uxm-tabs-font-size',\n fontWeight: '--uxm-tabs-font-weight',\n },\n 'tabs-underline': {\n gap: '--uxm-tabs-underline-gap',\n paddingX: '--uxm-tabs-underline-padding-x',\n paddingY: '--uxm-tabs-underline-padding-y',\n fontSize: '--uxm-tabs-underline-font-size',\n fontWeight: '--uxm-tabs-underline-font-weight',\n },\n 'filter-tabs': {\n gap: '--uxm-filter-tabs-gap',\n paddingX: '--uxm-filter-tabs-padding-x',\n paddingY: '--uxm-filter-tabs-padding-y',\n fontSize: '--uxm-filter-tabs-font-size',\n fontWeight: '--uxm-filter-tabs-font-weight',\n },\n 'view-switcher': {\n gap: '--uxm-view-switcher-gap',\n },\n 'button-group': {\n borderColor: '--uxm-button-group-border-color',\n borderRadius: '--uxm-button-group-border-radius',\n paddingX: '--uxm-button-group-padding-x',\n paddingY: '--uxm-button-group-padding-y',\n fontSize: '--uxm-button-group-font-size',\n },\n checkbox: {\n borderRadius: '--uxm-checkbox-border-radius',\n gap: '--uxm-checkbox-gap',\n },\n card: {\n backgroundColor: '--uxm-card-bg',\n borderColor: '--uxm-card-border-color',\n borderRadius: '--uxm-card-radius',\n padding: '--uxm-card-padding',\n // `gap` (\"Header Gap\") collides with REAL_CSS_PROPS — the generic fallback\n // would emit a literal `gap` property that `.uxm-card` never activates (the\n // card is only a flex column via the `--gap` modifier). Route it to the var\n // the modifier actually reads.\n //\n // There is deliberately NO Card knob for the CONTENT's row gap. It looks\n // like it belongs here, but the row gap is owned by the nested Stack /\n // Cluster, which already have their own Gap knobs — and those emit\n // `--uxm-stack-gap` DIRECTLY on `.uxm-stack`, where a directly-set custom\n // property always beats one inherited from `.uxm-card`. A Card-side knob\n // would therefore lose the moment anyone themed Stack, while also leaking\n // to every Stack/Cluster at any depth inside any card (custom properties\n // inherit). One owner per visual property; Card owns only its own gap.\n gap: '--uxm-card-gap',\n },\n 'toggle-switch': {\n width: '--uxm-toggle-switch-width',\n height: '--uxm-toggle-switch-height',\n },\n 'radio-group': {\n gap: '--uxm-radio-group-gap',\n },\n loader: {\n color: '--uxm-loader-color',\n gap: '--uxm-loader-gap',\n },\n 'data-table': {\n borderColor: '--uxm-data-table-border-color',\n fontSize: '--uxm-data-table-font-size',\n borderRadius: '--uxm-data-table-border-radius',\n },\n 'app-sidebar': {\n borderColor: '--uxm-app-sidebar-border-color',\n backgroundColor: '--uxm-app-sidebar-background-color',\n },\n // Every key here collides with REAL_CSS_PROPS, where the generic fallback\n // emits the LITERAL css property on the root selector instead of the var.\n //\n // For `fontSize` / `fontWeight` that is a silent no-op rather than a mere\n // detour: the atom reads those vars on `.uxm-sidebar-nav-trigger__value`, and\n // a `font-size` landing on the root is beaten by the child's own declaration.\n // The live workbench hides it — that path projects custom properties through\n // the preview's `buildVars`, so the knob only dies once a brand is SAVED.\n //\n // The rest (padding, gap, radius) do sit on the root and would survive the\n // literal route on source order alone, but they are mapped too: the sibling\n // `sidebar-nav-item` maps all six, and leaving half of them to cascade luck\n // invites exactly the question of which half.\n 'sidebar-nav-trigger': {\n paddingX: '--uxm-sidebar-nav-trigger-padding-x',\n paddingY: '--uxm-sidebar-nav-trigger-padding-y',\n fontSize: '--uxm-sidebar-nav-trigger-font-size',\n fontWeight: '--uxm-sidebar-nav-trigger-font-weight',\n gap: '--uxm-sidebar-nav-trigger-gap',\n borderRadius: '--uxm-sidebar-nav-trigger-border-radius',\n },\n 'sidebar-nav-item': {\n paddingX: '--uxm-sidebar-nav-item-padding-x',\n paddingY: '--uxm-sidebar-nav-item-padding-y',\n fontSize: '--uxm-sidebar-nav-item-font-size',\n fontWeight: '--uxm-sidebar-nav-item-font-weight',\n gap: '--uxm-sidebar-nav-item-gap',\n borderRadius: '--uxm-sidebar-nav-item-border-radius',\n },\n 'explorer-list-item': {\n paddingX: '--uxm-explorer-list-item-padding-x',\n paddingY: '--uxm-explorer-list-item-padding-y',\n fontSize: '--uxm-explorer-list-item-font-size',\n fontWeight: '--uxm-explorer-list-item-font-weight',\n gap: '--uxm-explorer-list-item-gap',\n borderRadius: '--uxm-explorer-list-item-border-radius',\n },\n 'app-top-bar': {\n borderColor: '--uxm-app-top-bar-border-color',\n backgroundColor: '--uxm-app-top-bar-background-color',\n height: '--uxm-app-top-bar-height',\n paddingX: '--uxm-app-top-bar-padding-x',\n gap: '--uxm-app-top-bar-gap',\n },\n 'explorer-section': {\n paddingX: '--uxm-explorer-section-padding-x',\n paddingY: '--uxm-explorer-section-padding-y',\n borderRadius: '--uxm-explorer-section-border-radius',\n gap: '--uxm-explorer-section-gap',\n fontSize: '--uxm-explorer-section-font-size',\n fontWeight: '--uxm-explorer-section-font-weight',\n },\n 'number-field': {\n backgroundColor: '--uxm-number-field-input-bg',\n borderColor: '--uxm-number-field-input-border',\n color: '--uxm-number-field-input-color',\n borderRadius: '--uxm-number-field-input-radius',\n paddingX: '--uxm-number-field-input-padding-x',\n paddingY: '--uxm-number-field-input-padding-y',\n fontSize: '--uxm-number-field-font-size',\n gap: '--uxm-number-field-gap',\n },\n 'icon-button': {\n color: '--uxm-icon-button-color',\n backgroundColor: '--uxm-icon-button-bg',\n hoverBackgroundColor: '--uxm-icon-button-hover-bg',\n activeBackgroundColor: '--uxm-icon-button-active-bg',\n borderRadius: '--uxm-icon-button-radius',\n },\n 'button-primary': {\n backgroundColor: '--uxm-button-primary-background-color',\n color: '--uxm-button-primary-color',\n borderRadius: '--uxm-button-primary-border-radius',\n fontSize: '--uxm-button-primary-font-size',\n fontWeight: '--uxm-button-primary-font-weight',\n paddingX: '--uxm-button-primary-padding-x',\n paddingY: '--uxm-button-primary-padding-y',\n },\n 'button-secondary': {\n backgroundColor: '--uxm-button-secondary-background-color',\n color: '--uxm-button-secondary-color',\n borderColor: '--uxm-button-secondary-border-color',\n borderRadius: '--uxm-button-secondary-border-radius',\n fontSize: '--uxm-button-secondary-font-size',\n fontWeight: '--uxm-button-secondary-font-weight',\n paddingX: '--uxm-button-secondary-padding-x',\n paddingY: '--uxm-button-secondary-padding-y',\n },\n 'button-tertiary': {\n backgroundColor: '--uxm-button-tertiary-background-color',\n color: '--uxm-button-tertiary-color',\n borderColor: '--uxm-button-tertiary-border-color',\n borderRadius: '--uxm-button-tertiary-border-radius',\n fontSize: '--uxm-button-tertiary-font-size',\n fontWeight: '--uxm-button-tertiary-font-weight',\n paddingX: '--uxm-button-tertiary-padding-x',\n paddingY: '--uxm-button-tertiary-padding-y',\n },\n 'button-ghost': {\n backgroundColor: '--uxm-button-ghost-background-color',\n color: '--uxm-button-ghost-color',\n borderRadius: '--uxm-button-ghost-border-radius',\n fontSize: '--uxm-button-ghost-font-size',\n fontWeight: '--uxm-button-ghost-font-weight',\n paddingX: '--uxm-button-ghost-padding-x',\n paddingY: '--uxm-button-ghost-padding-y',\n },\n 'button-danger': {\n backgroundColor: '--uxm-button-danger-background-color',\n color: '--uxm-button-danger-color',\n borderColor: '--uxm-button-danger-border-color',\n borderRadius: '--uxm-button-danger-border-radius',\n fontSize: '--uxm-button-danger-font-size',\n fontWeight: '--uxm-button-danger-font-weight',\n paddingX: '--uxm-button-danger-padding-x',\n paddingY: '--uxm-button-danger-padding-y',\n },\n 'button-with-icon': {\n backgroundColor: '--uxm-button-with-icon-background-color',\n color: '--uxm-button-with-icon-color',\n borderColor: '--uxm-button-with-icon-border-color',\n borderRadius: '--uxm-button-with-icon-border-radius',\n fontSize: '--uxm-button-with-icon-font-size',\n fontWeight: '--uxm-button-with-icon-font-weight',\n paddingX: '--uxm-button-with-icon-padding-x',\n paddingY: '--uxm-button-with-icon-padding-y',\n },\n 'button-icon': {\n backgroundColor: '--uxm-button-icon-background-color',\n color: '--uxm-button-icon-color',\n borderRadius: '--uxm-button-icon-border-radius',\n },\n 'back-link': {\n color: '--uxm-back-link-color',\n fontSize: '--uxm-back-link-font-size',\n fontWeight: '--uxm-back-link-font-weight',\n gap: '--uxm-back-link-gap',\n },\n breadcrumb: {\n fontSize: '--uxm-breadcrumb-font-size',\n gap: '--uxm-breadcrumb-gap',\n },\n disclosure: {\n paddingX: '--uxm-disclosure-padding-x',\n paddingY: '--uxm-disclosure-padding-y',\n fontSize: '--uxm-disclosure-font-size',\n gap: '--uxm-disclosure-gap',\n borderRadius: '--uxm-disclosure-border-radius',\n },\n 'side-flexpane': {\n paddingX: '--uxm-side-flexpane-padding-x',\n paddingY: '--uxm-side-flexpane-padding-y',\n backgroundColor: '--uxm-side-flexpane-background-color',\n borderColor: '--uxm-side-flexpane-border-color',\n borderRadius: '--uxm-side-flexpane-border-radius',\n width: '--uxm-side-flexpane-width',\n },\n 'list-item': {\n paddingX: '--uxm-list-item-padding-x',\n paddingY: '--uxm-list-item-padding-y',\n fontSize: '--uxm-list-item-font-size',\n gap: '--uxm-list-item-gap',\n borderRadius: '--uxm-list-item-border-radius',\n borderColor: '--uxm-list-item-border-color',\n },\n 'pill-select': {\n backgroundColor: '--uxm-pill-select-bg',\n borderColor: '--uxm-pill-select-border-color',\n paddingX: '--uxm-pill-select-padding-x',\n paddingY: '--uxm-pill-select-padding-y',\n },\n modal: {\n backgroundColor: '--uxm-modal-background-color',\n borderColor: '--uxm-modal-border-color',\n borderRadius: '--uxm-modal-border-radius',\n paddingX: '--uxm-modal-padding-x',\n paddingY: '--uxm-modal-padding-y',\n },\n toast: {\n backgroundColor: '--uxm-toast-background-color',\n color: '--uxm-toast-color',\n borderColor: '--uxm-toast-border-color',\n borderRadius: '--uxm-toast-border-radius',\n paddingX: '--uxm-toast-padding-x',\n paddingY: '--uxm-toast-padding-y',\n fontSize: '--uxm-toast-font-size',\n },\n avatar: {\n backgroundColor: '--uxm-avatar-background-color',\n borderColor: '--uxm-avatar-border-color',\n borderRadius: '--uxm-avatar-border-radius',\n borderWidth: '--uxm-avatar-border-width',\n color: '--uxm-avatar-color',\n fontSize: '--uxm-avatar-font-size',\n fontWeight: '--uxm-avatar-font-weight',\n },\n banner: {\n borderRadius: '--uxm-banner-border-radius',\n paddingX: '--uxm-banner-padding-x',\n paddingY: '--uxm-banner-padding-y',\n fontSize: '--uxm-banner-font-size',\n },\n 'bulk-action-bar': {\n backgroundColor: '--uxm-bulk-action-bar-background-color',\n color: '--uxm-bulk-action-bar-color',\n borderColor: '--uxm-bulk-action-bar-border-color',\n borderRadius: '--uxm-bulk-action-bar-border-radius',\n paddingX: '--uxm-bulk-action-bar-padding-x',\n paddingY: '--uxm-bulk-action-bar-padding-y',\n gap: '--uxm-bulk-action-bar-gap',\n fontSize: '--uxm-bulk-action-bar-font-size',\n },\n cluster: {\n gap: '--uxm-cluster-gap',\n },\n 'config-component-row': {\n padding: '--uxm-config-component-row-padding',\n borderRadius: '--uxm-config-component-row-radius',\n },\n 'config-segment-item': {\n paddingX: '--uxm-config-segment-item-padding-x',\n paddingY: '--uxm-config-segment-item-padding-y',\n borderRadius: '--uxm-config-segment-item-radius',\n },\n 'detail-section': {\n backgroundColor: '--uxm-detail-section-bg',\n borderColor: '--uxm-detail-section-border-color',\n borderRadius: '--uxm-detail-section-radius',\n padding: '--uxm-detail-section-padding',\n },\n divider: {\n color: '--uxm-divider-color',\n gap: '--uxm-divider-gap',\n },\n 'editable-cell': {\n // Dimensions are per-size keys (smallPaddingX, mediumMaxWidth, …) that\n // resolve via the generic `--uxm-editable-cell-{kebab(key)}` fallback in\n // toCSS; only the value colour needs an explicit entry (`color` is in\n // REAL_CSS_PROPS, so the fallback would emit a real CSS property that\n // outranks the component layer).\n color: '--uxm-editable-cell-color',\n // RETIRED knobs, kept mapped on purpose. The per-size split replaced these\n // four, but `generateOverridesCss` emits whatever keys are PERSISTED — not\n // what the registry currently declares — so a config saved before the split\n // still carries them. Without an entry here they'd fall through to\n // REAL_CSS_PROPS / the paddingX-paddingY special case in toCSS and emit\n // REAL `min-height` / `padding-inline` / `padding-block` declarations on\n // `.uxm-editable-cell`, which land in a sheet loaded after the library CSS\n // and would hard-override BOTH size presets (killing `medium`) and\n // resurrect the min-height the size work deliberately removed. Mapped to\n // their old, now-unread custom properties they are true no-ops instead.\n // Safe to delete once persisted overrides are pruned against the registry.\n minHeight: '--uxm-editable-cell-min-height',\n paddingX: '--uxm-editable-cell-padding-x',\n paddingY: '--uxm-editable-cell-padding-y',\n // `maxWidth` joined them when the cap went per-size: it is in\n // REAL_CSS_PROPS, so without this it would emit a real `max-width` that\n // pins BOTH presets (and would silently re-cap `medium`, whose whole point\n // is filling its container).\n maxWidth: '--uxm-editable-cell-max-width',\n },\n 'empty-state': {\n padding: '--uxm-empty-state-padding',\n },\n 'form-field': {\n gap: '--uxm-form-field-gap',\n // Per-tint label colours — the component reads `--uxm-form-field-label-\n // tint-*` (see form-field.scss tone classes); the generic kebab fallback\n // would emit `--uxm-form-field-tint-strong-color` etc., which nothing\n // reads, so the saved colour would silently not apply.\n tintStrongColor: '--uxm-form-field-label-tint-strong',\n tintDefaultColor: '--uxm-form-field-label-tint-default',\n tintMutedColor: '--uxm-form-field-label-tint-muted',\n // MIGRATION — `labelColor` was the single label-colour knob the tints\n // replaced. It is gone from the registry, but `generateOverridesCss` emits\n // whatever is PERSISTED, and its generic fallback lands on\n // `--uxm-form-field-label-color` — the very var the tint classes assign,\n // at equal specificity from a later sheet. Left alone it would beat ALL\n // THREE tints and silently disable them, with no knob left in the panel to\n // notice or clear it. Routed to the STRONG tint instead: strong was the\n // old (only) label colour and is still the default tone, so a pre-split\n // theme keeps the exact look it saved. A newly-saved `tintStrongColor`\n // still wins — overrides are appended, so it emits after this one.\n labelColor: '--uxm-form-field-label-tint-strong',\n },\n 'icon-tile': {\n borderRadius: '--uxm-icon-tile-radius',\n iconBg: '--uxm-icon-tile-bg',\n iconColor: '--uxm-icon-tile-color',\n },\n icon: {\n color: '--uxm-icon-color',\n },\n 'inline-action': {\n color: '--uxm-inline-action-color',\n fontSize: '--uxm-inline-action-font-size',\n fontWeight: '--uxm-inline-action-font-weight',\n gap: '--uxm-inline-action-gap',\n },\n 'inline-filter': {\n gap: '--uxm-inline-filter-gap',\n },\n 'lifecycle-edge-label': {\n paddingX: '--uxm-lifecycle-edge-label-padding-x',\n paddingY: '--uxm-lifecycle-edge-label-padding-y',\n borderRadius: '--uxm-lifecycle-edge-label-radius',\n borderWidth: '--uxm-lifecycle-edge-label-border-width',\n fontSize: '--uxm-lifecycle-edge-label-font-size',\n fontWeight: '--uxm-lifecycle-edge-label-font-weight',\n },\n // Same rule as lifecycle-group-box below — only the REAL_CSS_PROPS collisions\n // need an entry. `color` is the one that matters: a real `color` declaration\n // on `.uxm-lifecycle-drop-slot` from a later sheet would paint the text but\n // leave the dashes on the token, splitting a pair the atom deliberately drives\n // from one variable. The shape-scoped knobs (`cardRadius`, `pillFontSize`, …)\n // and `bg` need nothing: the generic `--uxm-{id}-{kebab}` rule already lands\n // on the names the stylesheet reads.\n 'lifecycle-drop-slot': {\n borderColor: '--uxm-lifecycle-drop-slot-border-color',\n borderStyle: '--uxm-lifecycle-drop-slot-border-style',\n borderWidth: '--uxm-lifecycle-drop-slot-border-width',\n color: '--uxm-lifecycle-drop-slot-color',\n },\n // Only the knobs whose keys collide with REAL_CSS_PROPS need an entry: left\n // to the generic path they'd emit a real `background-color` / `border-width` /\n // `padding` on `.uxm-lifecycle-group-box` from a later sheet, hard-overriding\n // the rule's own `var(--uxm-… , token)` chain — and `padding` is read BY THE\n // CONSUMER off the custom property to inset the group's members, so a real\n // declaration would leave that value unreadable.\n //\n // `blur` and the three `target*` knobs are absent on purpose: the generic\n // `--uxm-{id}-{kebab}` rule already lands on the names the stylesheet reads.\n 'lifecycle-group-box': {\n backgroundColor: '--uxm-lifecycle-group-box-bg',\n borderColor: '--uxm-lifecycle-group-box-border-color',\n borderWidth: '--uxm-lifecycle-group-box-border-width',\n borderRadius: '--uxm-lifecycle-group-box-radius',\n padding: '--uxm-lifecycle-group-box-padding',\n },\n 'lifecycle-minimap': {\n backgroundColor: '--uxm-lifecycle-minimap-bg',\n borderColor: '--uxm-lifecycle-minimap-border-color',\n borderRadius: '--uxm-lifecycle-minimap-radius',\n width: '--uxm-lifecycle-minimap-width',\n height: '--uxm-lifecycle-minimap-height',\n },\n 'lifecycle-node-card': {\n backgroundColor: '--uxm-lifecycle-node-card-bg',\n borderColor: '--uxm-lifecycle-node-card-border-color',\n borderRadius: '--uxm-lifecycle-node-card-radius',\n paddingX: '--uxm-lifecycle-node-card-padding-x',\n paddingY: '--uxm-lifecycle-node-card-padding-y',\n width: '--uxm-lifecycle-node-card-width',\n minHeight: '--uxm-lifecycle-node-card-min-height',\n },\n 'lifecycle-terminal': {\n backgroundColor: '--uxm-lifecycle-terminal-bg',\n borderColor: '--uxm-lifecycle-terminal-border-color',\n color: '--uxm-lifecycle-terminal-color',\n borderRadius: '--uxm-lifecycle-terminal-radius',\n width: '--uxm-lifecycle-terminal-width',\n height: '--uxm-lifecycle-terminal-height',\n fontSize: '--uxm-lifecycle-terminal-font-size',\n fontWeight: '--uxm-lifecycle-terminal-font-weight',\n },\n 'lifecycle-zoom-control': {\n backgroundColor: '--uxm-lifecycle-zoom-bg',\n borderColor: '--uxm-lifecycle-zoom-border-color',\n borderRadius: '--uxm-lifecycle-zoom-radius',\n fontSize: '--uxm-lifecycle-zoom-font-size',\n color: '--uxm-lifecycle-zoom-color',\n buttonSize: '--uxm-lifecycle-zoom-button-size',\n iconColor: '--uxm-lifecycle-zoom-icon-color',\n },\n link: {\n fontSize: '--uxm-link-font-size',\n fontWeight: '--uxm-link-font-weight',\n },\n 'meta-row': {\n fontSize: '--uxm-meta-row-font-size',\n color: '--uxm-meta-row-color',\n gap: '--uxm-meta-row-gap',\n },\n 'number-stepper': {\n backgroundColor: '--uxm-number-stepper-input-bg',\n borderColor: '--uxm-number-stepper-input-border',\n color: '--uxm-number-stepper-input-color',\n borderRadius: '--uxm-number-stepper-input-radius',\n paddingX: '--uxm-number-stepper-input-padding-x',\n paddingY: '--uxm-number-stepper-input-padding-y',\n fontSize: '--uxm-number-stepper-font-size',\n gap: '--uxm-number-stepper-gap',\n },\n 'page-header': {\n gap: '--uxm-page-header-gap',\n paddingX: '--uxm-page-header-padding-x',\n paddingY: '--uxm-page-header-padding-y',\n },\n 'page-shell': {\n backgroundColor: '--uxm-page-shell-bg',\n },\n 'property-field': {\n gap: '--uxm-property-field-gap',\n },\n 'property-grid': {\n rowGap: '--uxm-property-grid-row-gap',\n columnGap: '--uxm-property-grid-column-gap',\n },\n 'responsive-grid': {\n gap: '--uxm-responsive-grid-gap',\n },\n 'section-header': {\n gap: '--uxm-section-header-gap',\n },\n stack: {\n gap: '--uxm-stack-gap',\n },\n 'stat-card': {\n backgroundColor: '--uxm-stat-card-background-color',\n borderColor: '--uxm-stat-card-border-color',\n borderRadius: '--uxm-stat-card-border-radius',\n padding: '--uxm-stat-card-padding',\n },\n tag: {\n borderRadius: '--uxm-tag-border-radius',\n fontWeight: '--uxm-tag-font-weight',\n },\n thumbnail: {\n borderRadius: '--uxm-thumbnail-border-radius',\n backgroundColor: '--uxm-thumbnail-background-color',\n borderColor: '--uxm-thumbnail-border-color',\n borderWidth: '--uxm-thumbnail-border-width',\n },\n 'timeline-entry': {\n gap: '--uxm-timeline-entry-gap',\n },\n 'segment-row': {\n paddingX: '--uxm-segment-row-padding-x',\n paddingY: '--uxm-segment-row-padding-y',\n gap: '--uxm-segment-row-gap',\n dragColor: '--uxm-segment-row-drag-color',\n dragHoverColor: '--uxm-segment-row-drag-hover-color',\n chevronColor: '--uxm-segment-row-chevron-color',\n chevronSize: '--uxm-segment-row-chevron-size',\n accentColor: '--uxm-segment-row-accent-color',\n accentWidth: '--uxm-segment-row-accent-width',\n accentRadius: '--uxm-segment-row-accent-radius',\n titleColor: '--uxm-segment-row-title-color',\n titleSize: '--uxm-segment-row-title-size',\n titleWeight: '--uxm-segment-row-title-weight',\n countBg: '--uxm-segment-row-count-bg',\n countColor: '--uxm-segment-row-count-color',\n countSize: '--uxm-segment-row-count-size',\n countPaddingX: '--uxm-segment-row-count-padding-x',\n countPaddingY: '--uxm-segment-row-count-padding-y',\n countRadius: '--uxm-segment-row-count-radius',\n rowHoverBg: '--uxm-segment-row-row-hover-bg',\n rowHoverRadius: '--uxm-segment-row-row-hover-radius',\n },\n 'segment-card': {\n borderColor: '--uxm-segment-card-border-color',\n borderWidth: '--uxm-segment-card-border-width',\n borderRadius: '--uxm-segment-card-border-radius',\n backgroundColor: '--uxm-segment-card-background',\n paddingX: '--uxm-segment-card-padding-x',\n paddingY: '--uxm-segment-card-padding-y',\n childrenInsetX: '--uxm-segment-card-children-inset-x',\n childrenInsetY: '--uxm-segment-card-children-inset-y',\n childrenGap: '--uxm-segment-card-children-gap',\n dividerColor: '--uxm-segment-card-divider-color',\n dividerWidth: '--uxm-segment-card-divider-width',\n },\n 'component-row': {\n paddingX: '--uxm-component-row-padding-x',\n paddingY: '--uxm-component-row-padding-y',\n gap: '--uxm-component-row-gap',\n backgroundColor: '--uxm-component-row-background',\n dragColor: '--uxm-component-row-drag-color',\n dragHoverColor: '--uxm-component-row-drag-hover-color',\n iconBadgeSize: '--uxm-component-row-icon-badge-size',\n iconBadgeRadius: '--uxm-component-row-icon-badge-radius',\n iconBadgePadding: '--uxm-component-row-icon-badge-padding',\n nameColor: '--uxm-component-row-name-color',\n nameSize: '--uxm-component-row-name-size',\n nameWeight: '--uxm-component-row-name-weight',\n typeLabelColor: '--uxm-component-row-type-label-color',\n typeLabelSize: '--uxm-component-row-type-label-size',\n typeLabelWeight: '--uxm-component-row-type-label-weight',\n chevronColor: '--uxm-component-row-chevron-color',\n chevronSize: '--uxm-component-row-chevron-size',\n rowHoverBg: '--uxm-component-row-row-hover-bg',\n rowHoverRadius: '--uxm-component-row-row-hover-radius',\n },\n 'option-list': {\n indent: '--uxm-option-list-indent',\n backgroundColor: '--uxm-option-list-background',\n borderColor: '--uxm-option-list-border-color',\n borderWidth: '--uxm-option-list-border-width',\n borderRadius: '--uxm-option-list-border-radius',\n paddingX: '--uxm-option-list-padding-x',\n paddingY: '--uxm-option-list-padding-y',\n gap: '--uxm-option-list-gap',\n rowPaddingX: '--uxm-option-list-row-padding-x',\n rowPaddingY: '--uxm-option-list-row-padding-y',\n dragColor: '--uxm-option-list-drag-color',\n dragHoverColor: '--uxm-option-list-drag-hover-color',\n bulletSize: '--uxm-option-list-bullet-size',\n bulletGap: '--uxm-option-list-bullet-gap',\n nameColor: '--uxm-option-list-name-color',\n nameSize: '--uxm-option-list-name-size',\n nameWeight: '--uxm-option-list-name-weight',\n rowHoverBg: '--uxm-option-list-row-hover-bg',\n rowHoverRadius: '--uxm-option-list-row-hover-radius',\n },\n tooltip: {\n backgroundColor: '--uxm-tooltip-background-color',\n color: '--uxm-tooltip-color',\n borderRadius: '--uxm-tooltip-border-radius',\n paddingX: '--uxm-tooltip-padding-x',\n paddingY: '--uxm-tooltip-padding-y',\n fontSize: '--uxm-tooltip-font-size',\n },\n 'content-tooltip': {\n backgroundColor: '--uxm-content-tooltip-background-color',\n borderColor: '--uxm-content-tooltip-border-color',\n borderRadius: '--uxm-content-tooltip-border-radius',\n padding: '--uxm-content-tooltip-padding',\n maxWidth: '--uxm-content-tooltip-max-width',\n },\n 'type-overview-card': {\n backgroundColor: '--uxm-typeoverview-bg',\n borderColor: '--uxm-typeoverview-border-color',\n borderRadius: '--uxm-typeoverview-radius',\n padding: '--uxm-typeoverview-padding',\n accentColor: '--uxm-typeoverview-accent-color',\n accentWidth: '--uxm-typeoverview-accent-width',\n iconBg: '--uxm-typeoverview-icon-bg',\n iconColor: '--uxm-typeoverview-icon-color',\n iconBoxSize: '--uxm-typeoverview-icon-tile-size',\n iconRadius: '--uxm-typeoverview-icon-tile-radius',\n labelSize: '--uxm-typeoverview-label-size',\n labelColor: '--uxm-typeoverview-label-color',\n valueSize: '--uxm-typeoverview-value-size',\n valueColor: '--uxm-typeoverview-value-color',\n },\n // Without an entry here every knob would fall through to the generic\n // `--uxm-{id}-{kebab}` rule and double the segment — `connectorIdleColor`\n // under id `lifecycle-connector` becomes\n // `--uxm-lifecycle-connector-connector-idle-color`. The stylesheet reads the\n // canonical single-`connector` names (and still accepts the doubled ones as\n // a fallback alias), so map the knobs explicitly.\n //\n // `connectorArrowSize` sizes an SVG polygon rather than setting any CSS\n // property, so no rule can consume it — `useThemedArrowSize` in\n // lifecycle-connector.tsx reads `--uxm-lifecycle-connector-arrow-size` back\n // off the element instead. It is published here for that reason, not for\n // naming tidiness: drop this line and a saved Arrow Size stops applying.\n 'lifecycle-connector': {\n connectorIdleColor: '--uxm-lifecycle-connector-idle-color',\n connectorActiveColor: '--uxm-lifecycle-connector-active-color',\n connectorIdleStrokeWidth: '--uxm-lifecycle-connector-idle-stroke-width',\n connectorActiveStrokeWidth: '--uxm-lifecycle-connector-active-stroke-width',\n connectorDashedColor: '--uxm-lifecycle-connector-dashed-color',\n connectorDashedStrokeWidth: '--uxm-lifecycle-connector-dashed-stroke-width',\n connectorDashPattern: '--uxm-lifecycle-connector-dash-pattern',\n connectorArrowSize: '--uxm-lifecycle-connector-arrow-size',\n },\n};\n\nfunction toCSS(key: string, componentId: string): string {\n const componentMapping = PER_COMPONENT_MAPPING[componentId];\n if (componentMapping?.[key]) return componentMapping[key];\n\n const mapping: Record<string, string> = {\n paddingX: 'padding-inline',\n paddingY: 'padding-block',\n };\n if (mapping[key]) return mapping[key];\n\n const kebab = key.replace(/([A-Z])/g, '-$1').toLowerCase();\n if (REAL_CSS_PROPS.has(key)) return kebab;\n return `--uxm-${componentId}-${kebab}`;\n}\n\nfunction formatValue(value: string | number | boolean, key: string): string {\n if (typeof value === 'boolean') return value ? '1' : '0';\n if (typeof value === 'number') {\n // `lineHeight` is a ratio, not a length — without it here a knob saved as\n // 1.5 emits `line-height: 1.5px`, which collapses every line box.\n const unitless = ['fontWeight', 'titleWeight', 'nameWeight', 'typeLabelWeight', 'lineHeight', 'shadow', 'disabledOpacity'];\n // `opacity` is always unitless — match every *Opacity knob (e.g. the\n // per-element `itemDisabledOpacity` / `optionDisabledOpacity` variants)\n // so a saved value never gets a spurious `px` suffix.\n if (unitless.includes(key) || key.endsWith('Opacity')) return String(value);\n return `${value}px`;\n }\n // String style-override values are user/attacker-controlled and persisted\n // to a stylesheet served to every browser session — sanitise the same way\n // as brand token values so one can't break out of the declaration (e.g.\n // `red; } body{display:none}/*`). An unsafe value is dropped to '' rather\n // than throwing, so a single bad override can't blank the whole rule.\n return safeTokenValue(value) ?? '';\n}\n\n// CSS sanitizers — applied to every brand value before interpolation. The\n// output is persisted and served to all browser sessions, so attacker-\n// controlled values must not break out of the declaration they belong to.\nfunction safeUrl(v: unknown): string | undefined {\n if (typeof v !== 'string') return undefined;\n const trimmed = v.trim();\n if (!/^(https?:\\/\\/|\\/)/.test(trimmed)) return undefined;\n if (/[\")\\n\\r]/.test(trimmed)) return undefined;\n return trimmed;\n}\nexport function safeFontFamily(v: unknown): string | undefined {\n if (typeof v !== 'string') return undefined;\n const trimmed = v.trim();\n return /^[A-Za-z0-9 _-]+$/.test(trimmed) ? trimmed : undefined;\n}\n// Heading weight is a closed set (the editor offers exactly these three), so a\n// strict whitelist is both the sanitizer and the contract. Numbers are accepted\n// defensively — a persisted config may carry the JSON number rather than the\n// string the <select> yields.\nexport function safeFontWeight(v: unknown): string | undefined {\n const s = typeof v === 'number' ? String(v) : typeof v === 'string' ? v.trim() : undefined;\n return s !== undefined && /^(500|600|700)$/.test(s) ? s : undefined;\n}\n// Scales multiply a length inside calc(), which makes a bad value far worse\n// than a dropped declaration: `abc` or `1.2px` (length × length) is invalid at\n// computed-value time, so `font-size` resolves to `unset` and INHERITS — one\n// poisoned value on :root collapses the whole app to the parent's size. A\n// plain-number whitelist plus a sane range is the only safe gate; note\n// `safeTokenValue` is NOT sufficient (it passes `abc`, `-1` and unbalanced\n// parens). Range mirrors the editor's slider bounds.\nexport function safeTypeScale(v: unknown): string | undefined {\n const s = typeof v === 'number' ? String(v) : typeof v === 'string' ? v.trim() : undefined;\n if (s === undefined || !/^(?:0|[1-9]\\d?)(?:\\.\\d{1,3})?$/.test(s)) return undefined;\n const n = Number(s);\n return n >= 0.5 && n <= 2 ? s : undefined;\n}\n// Line height is a unitless ratio; same invalid-at-computed-value-time risk as\n// the scales, but it only affects the declarations that read it.\nexport function safeLineHeight(v: unknown): string | undefined {\n const s = typeof v === 'number' ? String(v) : typeof v === 'string' ? v.trim() : undefined;\n if (s === undefined || !/^[1-9](?:\\.\\d{1,2})?$/.test(s)) return undefined;\n const n = Number(s);\n return n >= 1 && n <= 2.5 ? s : undefined;\n}\nexport function safeTokenKey(v: string): boolean {\n return /^--[A-Za-z0-9-]+$/.test(v);\n}\nexport function safeTokenValue(v: unknown): string | undefined {\n if (typeof v !== 'string') return undefined;\n return /[{};\\n\\r]/.test(v) ? undefined : v;\n}\n\n// The three heading roles, in one place. Both the publish path below and the\n// live mirror (`brand-font-styles.tsx`) derive their emitted var names from\n// `role` by interpolation, so a rename here reaches both — keeping these in two\n// hand-maintained lists is how `--type-${role}-font` silently drifts away from\n// the names the stylesheets actually read.\nexport const TYPE_ROLES = [\n { role: 'display', family: 'displayFontFamily', weight: 'displayFontWeight', scale: 'displayScale' },\n { role: 'page-title', family: 'pageTitleFontFamily', weight: 'pageTitleFontWeight', scale: 'pageTitleScale' },\n { role: 'section-title', family: 'sectionTitleFontFamily', weight: 'sectionTitleFontWeight', scale: 'sectionTitleScale' },\n] as const satisfies ReadonlyArray<{\n role: string;\n family: keyof BrandConfig;\n weight: keyof BrandConfig;\n scale: keyof BrandConfig;\n}>;\n\n/** Sanitised per-role typography, shared by the generator and the live mirror. */\nexport function resolveTypeRoles(brand: BrandConfig) {\n return TYPE_ROLES.map((r) => ({\n role: r.role,\n family: safeFontFamily(brand[r.family]),\n weight: safeFontWeight(brand[r.weight]),\n scale: safeTypeScale(brand[r.scale]),\n }));\n}\n\n/** Generate the overrides stylesheet from style overrides + brand config. */\nexport function generateOverridesCss(allOverrides: AllOverrides, brand: BrandConfig): string {\n const lines: string[] = ['/* Auto-generated by UXM — do not edit manually */', ''];\n\n const fontFamily = safeFontFamily(brand.fontFamily);\n const headingFontFamily = safeFontFamily(brand.headingFontFamily);\n const headingFontWeight = safeFontWeight(brand.headingFontWeight);\n // Per-role refinements, layered under the umbrella heading vars above.\n const roles = resolveTypeRoles(brand);\n const typeScale = safeTypeScale(brand.typeScale);\n const bodyLineHeight = safeLineHeight(brand.bodyLineHeight);\n const logoUrl = safeUrl(brand.logoUrl);\n const iconUrl = safeUrl(brand.iconUrl);\n const logoUrlDark = safeUrl(brand.logoUrlDark);\n const iconUrlDark = safeUrl(brand.iconUrlDark);\n\n if (fontFamily) {\n lines.push(`@import url(\"${fontFileUrl(fontFamily)}\");`);\n lines.push('');\n }\n // Second font file only when the heading face is actually a different family\n // — picking the same one for both is a no-op, not a reason to fetch twice.\n if (headingFontFamily && headingFontFamily !== fontFamily) {\n lines.push(`@import url(\"${fontFileUrl(headingFontFamily)}\");`);\n lines.push('');\n }\n // A role may pick a face neither the body nor the umbrella uses — fetch each\n // distinct one exactly once (@import must stay above the rules below).\n const imported = new Set([fontFamily, headingFontFamily].filter(Boolean));\n for (const { family } of roles) {\n if (family && !imported.has(family)) {\n imported.add(family);\n lines.push(`@import url(\"${fontFileUrl(family)}\");`);\n lines.push('');\n }\n }\n\n const brandRules: string[] = [];\n if (fontFamily) {\n brandRules.push(` --brand-font: \"${fontFamily}\", var(--font-inter), system-ui, sans-serif;`);\n }\n // Heading vars are consumed by the components' own two-layer fallbacks (see\n // e.g. page-header.scss), so there is no `body` rule and no `!important`:\n // an unset var simply lets each component's own default paint.\n if (headingFontFamily) {\n brandRules.push(` --brand-heading-font: \"${headingFontFamily}\", var(--font-inter), system-ui, sans-serif;`);\n }\n if (headingFontWeight) {\n brandRules.push(` --brand-heading-weight: ${headingFontWeight};`);\n }\n // Role vars sit between the component var and the umbrella in each atom's\n // chain, so an unset role simply falls through to the umbrella.\n for (const { role, family, weight, scale } of roles) {\n if (family) {\n brandRules.push(` --type-${role}-font: \"${family}\", var(--font-inter), system-ui, sans-serif;`);\n }\n if (weight) brandRules.push(` --type-${role}-weight: ${weight};`);\n if (scale) brandRules.push(` --type-${role}-scale: ${scale};`);\n }\n if (typeScale) brandRules.push(` --type-scale: ${typeScale};`);\n if (bodyLineHeight) brandRules.push(` --type-body-line-height: ${bodyLineHeight};`);\n if (logoUrl) brandRules.push(` --brand-logo-url: url(\"${logoUrl}\");`);\n if (iconUrl) brandRules.push(` --brand-icon-url: url(\"${iconUrl}\");`);\n\n if (brandRules.length > 0) {\n lines.push(':root {');\n lines.push(...brandRules);\n lines.push('}');\n lines.push('');\n if (fontFamily) {\n lines.push('body { font-family: var(--brand-font) !important; }');\n lines.push('');\n }\n // Emitted ONLY when set. The library ships no element-level rules at all,\n // so an unconditional `body { line-height }` would reflow the host's own\n // content — same reasoning as the font-family rule above.\n if (bodyLineHeight) {\n // Explicit fallback: if the var is later cancelled (the studio mirror\n // re-declares it as `initial` on revert) a bare `var()` would be invalid\n // at computed-value time and `line-height` — being inherited — would\n // resolve to the parent's value, silently replacing whatever the host\n // had set on `body`. `normal` makes the wind-down state deliberate.\n lines.push(`body { line-height: var(--type-body-line-height, normal); }`);\n lines.push('');\n }\n }\n\n const darkBrandRules: string[] = [];\n if (logoUrlDark) darkBrandRules.push(` --brand-logo-url: url(\"${logoUrlDark}\");`);\n if (iconUrlDark) darkBrandRules.push(` --brand-icon-url: url(\"${iconUrlDark}\");`);\n if (darkBrandRules.length > 0) {\n lines.push('[data-theme=\"dark\"] {');\n lines.push(...darkBrandRules);\n lines.push('}');\n lines.push('');\n }\n\n const emitTokens = (selector: string, overrides: Record<string, string> | undefined) => {\n if (!overrides) return;\n const safeEntries = Object.entries(overrides).flatMap(([k, v]) => {\n if (!safeTokenKey(k)) return [];\n const safeValue = safeTokenValue(v);\n return safeValue === undefined ? [] : [[k, safeValue] as const];\n });\n if (safeEntries.length === 0) return;\n lines.push(`${selector} {`);\n for (const [cssVar, value] of safeEntries) {\n lines.push(` ${cssVar}: ${value};`);\n }\n lines.push('}');\n lines.push('');\n };\n // Scope customized light-mode color tokens to non-dark. `:root` and\n // `[data-theme=\"dark\"]` carry equal specificity, so an unconditional\n // `:root` block would win over this stylesheet's own dark block for any\n // token NOT also customized for dark (equal specificity, later source\n // order) — pinning that token to its light value in dark mode too. Scoping\n // lets an unset dark token fall through the cascade to tokens/index.css's\n // own `[data-theme=\"dark\"]` default instead.\n emitTokens(':root:not([data-theme=\"dark\"])', brand.tokens?.light);\n emitTokens('[data-theme=\"dark\"]', brand.tokens?.dark);\n\n const componentIds = Object.keys(allOverrides).sort();\n\n for (const id of componentIds) {\n const overrides = allOverrides[id];\n const entries = Object.entries(overrides);\n if (entries.length === 0) continue;\n\n const selector = PER_COMPONENT_SELECTOR[id] ?? `.uxm-${id}`;\n lines.push(`${selector} {`);\n for (const [key, value] of entries) {\n const cssProp = toCSS(key, id);\n const cssValue = formatValue(value, key);\n lines.push(` ${cssProp}: ${cssValue};`);\n }\n lines.push('}');\n lines.push('');\n }\n\n return lines.join('\\n');\n}\n"],"mappings":"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","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../../src/studio/persistence/generate-css.ts"],"sourcesContent":["import { safeFontFamily, safeFontWeight, safeLineHeight, safeTokenKey, safeTokenValue, safeTypeScale, safeUrl } from './css-sanitizers';\nimport { PER_COMPONENT_MAPPING, PER_COMPONENT_SELECTOR } from './generate-css-mapping';\n\nimport type { AllOverrides } from './types';\nimport type { BrandConfig } from '../lib/types';\n\n/**\n * Pure CSS generator for UXM Studio overrides.\n *\n * Single source of truth (R5): the modo Hono `/api/uxm/save` route imports\n * `generateOverridesCss` from here instead of keeping its own copy. No Node\n * APIs — runs in browser (client export) and server alike.\n *\n * Emits a stylesheet from per-component style overrides plus brand config\n * (font, logo/icon URLs, brand token blocks). All attacker-controlled brand\n * values are sanitised before interpolation because the output is served to\n * every browser session.\n */\n\nconst BRAND_FONT_WEIGHTS = 'wght@400;500;600;700';\n\nexport function fontFileUrl(fontFamily: string): string {\n const encoded = fontFamily.trim().replace(/\\s+/g, '+');\n return `https://fonts.googleapis.com/css2?family=${encoded}:${BRAND_FONT_WEIGHTS}&display=swap`;\n}\n\nconst REAL_CSS_PROPS = new Set([\n 'background', 'backgroundColor',\n 'color',\n 'border', 'borderColor', 'borderRadius', 'borderWidth', 'borderStyle',\n 'padding', 'paddingX', 'paddingY', 'margin',\n 'gap', 'rowGap', 'columnGap',\n 'width', 'height', 'minWidth', 'maxWidth', 'minHeight', 'maxHeight',\n 'fontSize', 'fontWeight', 'fontFamily', 'lineHeight',\n 'opacity',\n 'cursor', 'display', 'position', 'overflow', 'direction',\n]);\n\nfunction toCSS(key: string, componentId: string): string {\n const componentMapping = PER_COMPONENT_MAPPING[componentId];\n if (componentMapping?.[key]) return componentMapping[key];\n\n const mapping: Record<string, string> = {\n paddingX: 'padding-inline',\n paddingY: 'padding-block',\n };\n if (mapping[key]) return mapping[key];\n\n const kebab = key.replace(/([A-Z])/g, '-$1').toLowerCase();\n if (REAL_CSS_PROPS.has(key)) return kebab;\n return `--uxm-${componentId}-${kebab}`;\n}\n\nfunction formatValue(value: string | number | boolean, key: string): string {\n if (typeof value === 'boolean') return value ? '1' : '0';\n if (typeof value === 'number') {\n // `lineHeight` is a ratio, not a length — without it here a knob saved as\n // 1.5 emits `line-height: 1.5px`, which collapses every line box.\n const unitless = ['fontWeight', 'titleWeight', 'nameWeight', 'typeLabelWeight', 'lineHeight', 'shadow', 'disabledOpacity'];\n // `opacity` is always unitless — match every *Opacity knob (e.g. the\n // per-element `itemDisabledOpacity` / `optionDisabledOpacity` variants)\n // so a saved value never gets a spurious `px` suffix.\n if (unitless.includes(key) || key.endsWith('Opacity')) return String(value);\n return `${value}px`;\n }\n // String style-override values are user/attacker-controlled and persisted\n // to a stylesheet served to every browser session — sanitise the same way\n // as brand token values so one can't break out of the declaration (e.g.\n // `red; } body{display:none}/*`). An unsafe value is dropped to '' rather\n // than throwing, so a single bad override can't blank the whole rule.\n return safeTokenValue(value) ?? '';\n}\n\n// The sanitizers moved to ./css-sanitizers.ts; they stay part of this module's\n// public surface (`@viax.io/uxm/studio/generate-css`, brand-*-styles.tsx).\nexport { safeFontFamily, safeFontWeight, safeLineHeight, safeTokenKey, safeTokenValue, safeTypeScale } from './css-sanitizers';\n\n// The three heading roles, in one place. Both the publish path below and the\n// live mirror (`brand-font-styles.tsx`) derive their emitted var names from\n// `role` by interpolation, so a rename here reaches both — keeping these in two\n// hand-maintained lists is how `--type-${role}-font` silently drifts away from\n// the names the stylesheets actually read.\nexport const TYPE_ROLES = [\n { role: 'display', family: 'displayFontFamily', weight: 'displayFontWeight', scale: 'displayScale' },\n { role: 'page-title', family: 'pageTitleFontFamily', weight: 'pageTitleFontWeight', scale: 'pageTitleScale' },\n { role: 'section-title', family: 'sectionTitleFontFamily', weight: 'sectionTitleFontWeight', scale: 'sectionTitleScale' },\n] as const satisfies ReadonlyArray<{\n role: string;\n family: keyof BrandConfig;\n weight: keyof BrandConfig;\n scale: keyof BrandConfig;\n}>;\n\n/** Sanitised per-role typography, shared by the generator and the live mirror. */\nexport function resolveTypeRoles(brand: BrandConfig) {\n return TYPE_ROLES.map((r) => ({\n role: r.role,\n family: safeFontFamily(brand[r.family]),\n weight: safeFontWeight(brand[r.weight]),\n scale: safeTypeScale(brand[r.scale]),\n }));\n}\n\n/** Generate the overrides stylesheet from style overrides + brand config. */\nexport function generateOverridesCss(allOverrides: AllOverrides, brand: BrandConfig): string {\n const lines: string[] = ['/* Auto-generated by UXM — do not edit manually */', ''];\n\n const fontFamily = safeFontFamily(brand.fontFamily);\n const headingFontFamily = safeFontFamily(brand.headingFontFamily);\n const headingFontWeight = safeFontWeight(brand.headingFontWeight);\n // Per-role refinements, layered under the umbrella heading vars above.\n const roles = resolveTypeRoles(brand);\n const typeScale = safeTypeScale(brand.typeScale);\n const bodyLineHeight = safeLineHeight(brand.bodyLineHeight);\n const logoUrl = safeUrl(brand.logoUrl);\n const iconUrl = safeUrl(brand.iconUrl);\n const logoUrlDark = safeUrl(brand.logoUrlDark);\n const iconUrlDark = safeUrl(brand.iconUrlDark);\n\n if (fontFamily) {\n lines.push(`@import url(\"${fontFileUrl(fontFamily)}\");`);\n lines.push('');\n }\n // Second font file only when the heading face is actually a different family\n // — picking the same one for both is a no-op, not a reason to fetch twice.\n if (headingFontFamily && headingFontFamily !== fontFamily) {\n lines.push(`@import url(\"${fontFileUrl(headingFontFamily)}\");`);\n lines.push('');\n }\n // A role may pick a face neither the body nor the umbrella uses — fetch each\n // distinct one exactly once (@import must stay above the rules below).\n const imported = new Set([fontFamily, headingFontFamily].filter(Boolean));\n for (const { family } of roles) {\n if (family && !imported.has(family)) {\n imported.add(family);\n lines.push(`@import url(\"${fontFileUrl(family)}\");`);\n lines.push('');\n }\n }\n\n const brandRules: string[] = [];\n if (fontFamily) {\n brandRules.push(` --brand-font: \"${fontFamily}\", var(--font-inter), system-ui, sans-serif;`);\n }\n // Heading vars are consumed by the components' own two-layer fallbacks (see\n // e.g. page-header.scss), so there is no `body` rule and no `!important`:\n // an unset var simply lets each component's own default paint.\n if (headingFontFamily) {\n brandRules.push(` --brand-heading-font: \"${headingFontFamily}\", var(--font-inter), system-ui, sans-serif;`);\n }\n if (headingFontWeight) {\n brandRules.push(` --brand-heading-weight: ${headingFontWeight};`);\n }\n // Role vars sit between the component var and the umbrella in each atom's\n // chain, so an unset role simply falls through to the umbrella.\n for (const { role, family, weight, scale } of roles) {\n if (family) {\n brandRules.push(` --type-${role}-font: \"${family}\", var(--font-inter), system-ui, sans-serif;`);\n }\n if (weight) brandRules.push(` --type-${role}-weight: ${weight};`);\n if (scale) brandRules.push(` --type-${role}-scale: ${scale};`);\n }\n if (typeScale) brandRules.push(` --type-scale: ${typeScale};`);\n if (bodyLineHeight) brandRules.push(` --type-body-line-height: ${bodyLineHeight};`);\n if (logoUrl) brandRules.push(` --brand-logo-url: url(\"${logoUrl}\");`);\n if (iconUrl) brandRules.push(` --brand-icon-url: url(\"${iconUrl}\");`);\n\n if (brandRules.length > 0) {\n lines.push(':root {');\n lines.push(...brandRules);\n lines.push('}');\n lines.push('');\n if (fontFamily) {\n lines.push('body { font-family: var(--brand-font) !important; }');\n lines.push('');\n }\n // Emitted ONLY when set. The library ships no element-level rules at all,\n // so an unconditional `body { line-height }` would reflow the host's own\n // content — same reasoning as the font-family rule above.\n if (bodyLineHeight) {\n // Explicit fallback: if the var is later cancelled (the studio mirror\n // re-declares it as `initial` on revert) a bare `var()` would be invalid\n // at computed-value time and `line-height` — being inherited — would\n // resolve to the parent's value, silently replacing whatever the host\n // had set on `body`. `normal` makes the wind-down state deliberate.\n lines.push(`body { line-height: var(--type-body-line-height, normal); }`);\n lines.push('');\n }\n }\n\n const darkBrandRules: string[] = [];\n if (logoUrlDark) darkBrandRules.push(` --brand-logo-url: url(\"${logoUrlDark}\");`);\n if (iconUrlDark) darkBrandRules.push(` --brand-icon-url: url(\"${iconUrlDark}\");`);\n if (darkBrandRules.length > 0) {\n lines.push('[data-theme=\"dark\"] {');\n lines.push(...darkBrandRules);\n lines.push('}');\n lines.push('');\n }\n\n const emitTokens = (selector: string, overrides: Record<string, string> | undefined) => {\n if (!overrides) return;\n const safeEntries = Object.entries(overrides).flatMap(([k, v]) => {\n if (!safeTokenKey(k)) return [];\n const safeValue = safeTokenValue(v);\n return safeValue === undefined ? [] : [[k, safeValue] as const];\n });\n if (safeEntries.length === 0) return;\n lines.push(`${selector} {`);\n for (const [cssVar, value] of safeEntries) {\n lines.push(` ${cssVar}: ${value};`);\n }\n lines.push('}');\n lines.push('');\n };\n // Scope customized light-mode color tokens to non-dark. `:root` and\n // `[data-theme=\"dark\"]` carry equal specificity, so an unconditional\n // `:root` block would win over this stylesheet's own dark block for any\n // token NOT also customized for dark (equal specificity, later source\n // order) — pinning that token to its light value in dark mode too. Scoping\n // lets an unset dark token fall through the cascade to tokens/index.css's\n // own `[data-theme=\"dark\"]` default instead.\n emitTokens(':root:not([data-theme=\"dark\"])', brand.tokens?.light);\n emitTokens('[data-theme=\"dark\"]', brand.tokens?.dark);\n\n const componentIds = Object.keys(allOverrides).sort();\n\n for (const id of componentIds) {\n const overrides = allOverrides[id];\n const entries = Object.entries(overrides);\n if (entries.length === 0) continue;\n\n const selector = PER_COMPONENT_SELECTOR[id] ?? `.uxm-${id}`;\n lines.push(`${selector} {`);\n for (const [key, value] of entries) {\n const cssProp = toCSS(key, id);\n const cssValue = formatValue(value, key);\n lines.push(` ${cssProp}: ${cssValue};`);\n }\n lines.push('}');\n lines.push('');\n }\n\n return lines.join('\\n');\n}\n"],"mappings":"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","names":["import_css_sanitizers"]}
|
|
@@ -1,12 +1,7 @@
|
|
|
1
1
|
import type { AllOverrides } from './types.js';
|
|
2
2
|
import type { BrandConfig } from '../lib/types.js';
|
|
3
3
|
export declare function fontFileUrl(fontFamily: string): string;
|
|
4
|
-
export
|
|
5
|
-
export declare function safeFontWeight(v: unknown): string | undefined;
|
|
6
|
-
export declare function safeTypeScale(v: unknown): string | undefined;
|
|
7
|
-
export declare function safeLineHeight(v: unknown): string | undefined;
|
|
8
|
-
export declare function safeTokenKey(v: string): boolean;
|
|
9
|
-
export declare function safeTokenValue(v: unknown): string | undefined;
|
|
4
|
+
export { safeFontFamily, safeFontWeight, safeLineHeight, safeTokenKey, safeTokenValue, safeTypeScale } from './css-sanitizers.js';
|
|
10
5
|
export declare const TYPE_ROLES: readonly [{
|
|
11
6
|
readonly role: "display";
|
|
12
7
|
readonly family: "displayFontFamily";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-css.d.ts","sourceRoot":"","sources":["../../../src/studio/persistence/generate-css.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"generate-css.d.ts","sourceRoot":"","sources":["../../../src/studio/persistence/generate-css.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAiBhD,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAGtD;AAmDD,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAO/H,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;EASrB,CAAC;AAEH,kFAAkF;AAClF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,WAAW;;;;;IAOlD;AAED,6EAA6E;AAC7E,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,YAAY,EAAE,KAAK,EAAE,WAAW,GAAG,MAAM,CA4I3F"}
|