@questpie/admin 1.1.1 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +245 -474
- package/dist/_virtual/rolldown_runtime.mjs +18 -0
- package/dist/augmentation.d.mts +315 -0
- package/dist/augmentation.d.mts.map +1 -0
- package/dist/client/blocks/block-registry.d.mts +199 -0
- package/dist/client/blocks/block-registry.d.mts.map +1 -0
- package/dist/client/blocks/block-registry.mjs +88 -0
- package/dist/client/blocks/block-registry.mjs.map +1 -0
- package/dist/client/blocks/block-renderer.d.mts +52 -0
- package/dist/client/blocks/block-renderer.d.mts.map +1 -0
- package/dist/client/blocks/block-renderer.mjs +71 -0
- package/dist/client/blocks/block-renderer.mjs.map +1 -0
- package/dist/client/blocks/index.d.mts +4 -0
- package/dist/client/blocks/prefetch.d.mts +45 -0
- package/dist/client/blocks/prefetch.d.mts.map +1 -0
- package/dist/client/blocks/prefetch.mjs +26 -0
- package/dist/client/blocks/prefetch.mjs.map +1 -0
- package/dist/client/blocks/types.d.mts +69 -0
- package/dist/client/blocks/types.d.mts.map +1 -0
- package/dist/client/blocks/types.mjs +20 -0
- package/dist/client/blocks/types.mjs.map +1 -0
- package/dist/client/builder/admin-builder.d.mts +112 -0
- package/dist/client/builder/admin-builder.d.mts.map +1 -0
- package/dist/client/builder/admin-builder.mjs +185 -0
- package/dist/client/builder/admin-builder.mjs.map +1 -0
- package/dist/client/builder/admin-types.d.mts +73 -0
- package/dist/client/builder/admin-types.d.mts.map +1 -0
- package/dist/client/builder/admin.d.mts +121 -0
- package/dist/client/builder/admin.d.mts.map +1 -0
- package/dist/client/builder/admin.mjs +160 -0
- package/dist/client/builder/admin.mjs.map +1 -0
- package/dist/client/builder/defaults/components.mjs +20 -0
- package/dist/client/builder/defaults/components.mjs.map +1 -0
- package/dist/client/builder/defaults/core.d.mts +354 -0
- package/dist/client/builder/defaults/core.d.mts.map +1 -0
- package/dist/client/builder/defaults/core.mjs +49 -0
- package/dist/client/builder/defaults/core.mjs.map +1 -0
- package/dist/client/builder/defaults/fields.mjs +328 -0
- package/dist/client/builder/defaults/fields.mjs.map +1 -0
- package/dist/client/builder/defaults/pages.mjs +58 -0
- package/dist/client/builder/defaults/pages.mjs.map +1 -0
- package/dist/client/builder/defaults/starter.d.mts +351 -0
- package/dist/client/builder/defaults/starter.d.mts.map +1 -0
- package/dist/client/builder/defaults/starter.mjs +28 -0
- package/dist/client/builder/defaults/starter.mjs.map +1 -0
- package/dist/client/builder/defaults/views.mjs +27 -0
- package/dist/client/builder/defaults/views.mjs.map +1 -0
- package/dist/client/builder/defaults/widgets.mjs +31 -0
- package/dist/client/builder/defaults/widgets.mjs.map +1 -0
- package/dist/client/builder/field/field.d.mts +229 -0
- package/dist/client/builder/field/field.d.mts.map +1 -0
- package/dist/client/builder/field/field.mjs +83 -0
- package/dist/client/builder/field/field.mjs.map +1 -0
- package/dist/client/builder/index.d.mts +36 -0
- package/dist/client/builder/index.d.mts.map +1 -0
- package/dist/client/builder/page/page.d.mts +36 -0
- package/dist/client/builder/page/page.d.mts.map +1 -0
- package/dist/client/builder/page/page.mjs +27 -0
- package/dist/client/builder/page/page.mjs.map +1 -0
- package/dist/client/builder/proxies.d.mts +2 -0
- package/dist/client/builder/proxies.mjs +24 -0
- package/dist/client/builder/proxies.mjs.map +1 -0
- package/dist/client/builder/qa.d.mts +50 -0
- package/dist/client/builder/qa.d.mts.map +1 -0
- package/dist/client/builder/qa.mjs +42 -0
- package/dist/client/builder/qa.mjs.map +1 -0
- package/dist/client/builder/registry.d.mts +70 -0
- package/dist/client/builder/registry.d.mts.map +1 -0
- package/dist/client/builder/types/action-registry.d.mts +2 -0
- package/dist/client/builder/types/action-registry.mjs +142 -0
- package/dist/client/builder/types/action-registry.mjs.map +1 -0
- package/dist/client/builder/types/action-types.d.mts +253 -0
- package/dist/client/builder/types/action-types.d.mts.map +1 -0
- package/dist/client/builder/types/collection-types.d.mts +199 -0
- package/dist/client/builder/types/collection-types.d.mts.map +1 -0
- package/dist/client/builder/types/collection-types.mjs +11 -0
- package/dist/client/builder/types/collection-types.mjs.map +1 -0
- package/dist/client/builder/types/common.d.mts +60 -0
- package/dist/client/builder/types/common.d.mts.map +1 -0
- package/dist/client/builder/types/field-types.d.mts +593 -0
- package/dist/client/builder/types/field-types.d.mts.map +1 -0
- package/dist/client/builder/types/field-types.mjs +19 -0
- package/dist/client/builder/types/field-types.mjs.map +1 -0
- package/dist/client/builder/types/global-types.d.mts +22 -0
- package/dist/client/builder/types/global-types.d.mts.map +1 -0
- package/dist/client/builder/types/ui-config.d.mts +160 -0
- package/dist/client/builder/types/ui-config.d.mts.map +1 -0
- package/dist/client/builder/types/views.d.mts +89 -0
- package/dist/client/builder/types/views.d.mts.map +1 -0
- package/dist/client/builder/types/widget-types.d.mts +563 -0
- package/dist/client/builder/types/widget-types.d.mts.map +1 -0
- package/dist/client/builder/validation.d.mts +3 -0
- package/dist/client/builder/validation.mjs +208 -0
- package/dist/client/builder/validation.mjs.map +1 -0
- package/dist/client/builder/view/view.d.mts +129 -0
- package/dist/client/builder/view/view.d.mts.map +1 -0
- package/dist/client/builder/view/view.mjs +109 -0
- package/dist/client/builder/view/view.mjs.map +1 -0
- package/dist/client/builder/widget/widget.d.mts +33 -0
- package/dist/client/builder/widget/widget.d.mts.map +1 -0
- package/dist/client/builder/widget/widget.mjs +26 -0
- package/dist/client/builder/widget/widget.mjs.map +1 -0
- package/dist/client/components/actions/action-button.d.mts +2 -0
- package/dist/client/components/actions/action-button.mjs +135 -0
- package/dist/client/components/actions/action-button.mjs.map +1 -0
- package/dist/client/components/actions/action-dialog.d.mts +2 -0
- package/dist/client/components/actions/action-dialog.mjs +264 -0
- package/dist/client/components/actions/action-dialog.mjs.map +1 -0
- package/dist/client/components/actions/confirmation-dialog.d.mts +2 -0
- package/dist/client/components/actions/confirmation-dialog.mjs +82 -0
- package/dist/client/components/actions/confirmation-dialog.mjs.map +1 -0
- package/dist/client/components/actions/header-actions.d.mts +2 -0
- package/dist/client/components/actions/header-actions.mjs +117 -0
- package/dist/client/components/actions/header-actions.mjs.map +1 -0
- package/dist/client/components/actions/index.d.mts +4 -0
- package/dist/client/components/admin-link.d.mts +67 -0
- package/dist/client/components/admin-link.d.mts.map +1 -0
- package/dist/client/components/admin-link.mjs +92 -0
- package/dist/client/components/admin-link.mjs.map +1 -0
- package/dist/client/components/auth/auth-guard.d.mts +51 -0
- package/dist/client/components/auth/auth-guard.d.mts.map +1 -0
- package/dist/client/components/auth/auth-guard.mjs +60 -0
- package/dist/client/components/auth/auth-guard.mjs.map +1 -0
- package/dist/client/components/auth/auth-loading.d.mts +36 -0
- package/dist/client/components/auth/auth-loading.d.mts.map +1 -0
- package/dist/client/components/auth/auth-loading.mjs +27 -0
- package/dist/client/components/auth/auth-loading.mjs.map +1 -0
- package/dist/client/components/auth/index.d.mts +2 -0
- package/dist/client/components/blocks/block-canvas.mjs +90 -0
- package/dist/client/components/blocks/block-canvas.mjs.map +1 -0
- package/dist/client/components/blocks/block-editor-context.mjs +58 -0
- package/dist/client/components/blocks/block-editor-context.mjs.map +1 -0
- package/dist/client/components/blocks/block-editor-layout.mjs +82 -0
- package/dist/client/components/blocks/block-editor-layout.mjs.map +1 -0
- package/dist/client/components/blocks/block-editor-provider.mjs +155 -0
- package/dist/client/components/blocks/block-editor-provider.mjs.map +1 -0
- package/dist/client/components/blocks/block-fields-renderer.mjs +70 -0
- package/dist/client/components/blocks/block-fields-renderer.mjs.map +1 -0
- package/dist/client/components/blocks/block-insert-button.mjs +72 -0
- package/dist/client/components/blocks/block-insert-button.mjs.map +1 -0
- package/dist/client/components/blocks/block-item-menu.mjs +161 -0
- package/dist/client/components/blocks/block-item-menu.mjs.map +1 -0
- package/dist/client/components/blocks/block-item.mjs +187 -0
- package/dist/client/components/blocks/block-item.mjs.map +1 -0
- package/dist/client/components/blocks/block-library-sidebar.mjs +190 -0
- package/dist/client/components/blocks/block-library-sidebar.mjs.map +1 -0
- package/dist/client/components/blocks/block-tree.mjs +45 -0
- package/dist/client/components/blocks/block-tree.mjs.map +1 -0
- package/dist/client/components/blocks/block-type-icon.mjs +50 -0
- package/dist/client/components/blocks/block-type-icon.mjs.map +1 -0
- package/dist/client/components/blocks/utils/tree-utils.mjs +186 -0
- package/dist/client/components/blocks/utils/tree-utils.mjs.map +1 -0
- package/dist/client/components/component-renderer.d.mts +125 -0
- package/dist/client/components/component-renderer.d.mts.map +1 -0
- package/dist/client/components/component-renderer.mjs +145 -0
- package/dist/client/components/component-renderer.mjs.map +1 -0
- package/dist/client/components/error-boundary.mjs +92 -0
- package/dist/client/components/error-boundary.mjs.map +1 -0
- package/dist/client/components/fields/array-field.d.mts +44 -0
- package/dist/client/components/fields/array-field.d.mts.map +1 -0
- package/dist/client/components/fields/array-field.mjs +231 -0
- package/dist/client/components/fields/array-field.mjs.map +1 -0
- package/dist/client/components/fields/asset-preview-field.d.mts +52 -0
- package/dist/client/components/fields/asset-preview-field.d.mts.map +1 -0
- package/dist/client/components/fields/asset-preview-field.mjs +60 -0
- package/dist/client/components/fields/asset-preview-field.mjs.map +1 -0
- package/dist/client/components/fields/blocks-field/blocks-field.d.mts +41 -0
- package/dist/client/components/fields/blocks-field/blocks-field.d.mts.map +1 -0
- package/dist/client/components/fields/blocks-field/blocks-field.mjs +101 -0
- package/dist/client/components/fields/blocks-field/blocks-field.mjs.map +1 -0
- package/dist/client/components/fields/blocks-field/index.d.mts +1 -0
- package/dist/client/components/fields/boolean-field.d.mts +30 -0
- package/dist/client/components/fields/boolean-field.d.mts.map +1 -0
- package/dist/client/components/fields/boolean-field.mjs +47 -0
- package/dist/client/components/fields/boolean-field.mjs.map +1 -0
- package/dist/client/components/fields/custom-field.d.mts +3 -0
- package/dist/client/components/fields/date-field.d.mts +22 -0
- package/dist/client/components/fields/date-field.d.mts.map +1 -0
- package/dist/client/components/fields/date-field.mjs +42 -0
- package/dist/client/components/fields/date-field.mjs.map +1 -0
- package/dist/client/components/fields/datetime-field.d.mts +23 -0
- package/dist/client/components/fields/datetime-field.d.mts.map +1 -0
- package/dist/client/components/fields/datetime-field.mjs +43 -0
- package/dist/client/components/fields/datetime-field.mjs.map +1 -0
- package/dist/client/components/fields/email-field.d.mts +19 -0
- package/dist/client/components/fields/email-field.d.mts.map +1 -0
- package/dist/client/components/fields/email-field.mjs +38 -0
- package/dist/client/components/fields/email-field.mjs.map +1 -0
- package/dist/client/components/fields/embedded-collection.d.mts +3 -0
- package/dist/client/components/fields/field-types.d.mts +571 -0
- package/dist/client/components/fields/field-types.d.mts.map +1 -0
- package/dist/client/components/fields/field-utils.d.mts +1 -0
- package/dist/client/components/fields/field-utils.mjs +65 -0
- package/dist/client/components/fields/field-utils.mjs.map +1 -0
- package/dist/client/components/fields/field-wrapper.d.mts +3 -0
- package/dist/client/components/fields/field-wrapper.mjs +49 -0
- package/dist/client/components/fields/field-wrapper.mjs.map +1 -0
- package/dist/client/components/fields/index.d.mts +33 -0
- package/dist/client/components/fields/json-field.d.mts +84 -0
- package/dist/client/components/fields/json-field.d.mts.map +1 -0
- package/dist/client/components/fields/json-field.mjs +248 -0
- package/dist/client/components/fields/json-field.mjs.map +1 -0
- package/dist/client/components/fields/locale-badge.d.mts +1 -0
- package/dist/client/components/fields/locale-badge.mjs +17 -0
- package/dist/client/components/fields/locale-badge.mjs.map +1 -0
- package/dist/client/components/fields/number-field.d.mts +23 -0
- package/dist/client/components/fields/number-field.d.mts.map +1 -0
- package/dist/client/components/fields/number-field.mjs +40 -0
- package/dist/client/components/fields/number-field.mjs.map +1 -0
- package/dist/client/components/fields/object-array-field.d.mts +2 -0
- package/dist/client/components/fields/object-array-field.mjs +313 -0
- package/dist/client/components/fields/object-array-field.mjs.map +1 -0
- package/dist/client/components/fields/object-field.d.mts +32 -0
- package/dist/client/components/fields/object-field.d.mts.map +1 -0
- package/dist/client/components/fields/object-field.mjs +128 -0
- package/dist/client/components/fields/object-field.mjs.map +1 -0
- package/dist/client/components/fields/relation/displays/cards-display.d.mts +2 -0
- package/dist/client/components/fields/relation/displays/cards-display.mjs +140 -0
- package/dist/client/components/fields/relation/displays/cards-display.mjs.map +1 -0
- package/dist/client/components/fields/relation/displays/chips-display.d.mts +2 -0
- package/dist/client/components/fields/relation/displays/chips-display.mjs +100 -0
- package/dist/client/components/fields/relation/displays/chips-display.mjs.map +1 -0
- package/dist/client/components/fields/relation/displays/grid-display.d.mts +2 -0
- package/dist/client/components/fields/relation/displays/grid-display.mjs +114 -0
- package/dist/client/components/fields/relation/displays/grid-display.mjs.map +1 -0
- package/dist/client/components/fields/relation/displays/index.d.mts +6 -0
- package/dist/client/components/fields/relation/displays/list-display.d.mts +2 -0
- package/dist/client/components/fields/relation/displays/list-display.mjs +128 -0
- package/dist/client/components/fields/relation/displays/list-display.mjs.map +1 -0
- package/dist/client/components/fields/relation/displays/table-display.d.mts +2 -0
- package/dist/client/components/fields/relation/displays/table-display.mjs +134 -0
- package/dist/client/components/fields/relation/displays/table-display.mjs.map +1 -0
- package/dist/client/components/fields/relation/displays/types.d.mts +22 -0
- package/dist/client/components/fields/relation/displays/types.d.mts.map +1 -0
- package/dist/client/components/fields/relation/displays/types.mjs +73 -0
- package/dist/client/components/fields/relation/displays/types.mjs.map +1 -0
- package/dist/client/components/fields/relation/index.d.mts +3 -0
- package/dist/client/components/fields/relation/relation-items-display.d.mts +5 -0
- package/dist/client/components/fields/relation/relation-items-display.mjs +47 -0
- package/dist/client/components/fields/relation/relation-items-display.mjs.map +1 -0
- package/dist/client/components/fields/relation-field.d.mts +134 -0
- package/dist/client/components/fields/relation-field.d.mts.map +1 -0
- package/dist/client/components/fields/relation-field.mjs +106 -0
- package/dist/client/components/fields/relation-field.mjs.map +1 -0
- package/dist/client/components/fields/relation-picker.d.mts +4 -0
- package/dist/client/components/fields/relation-picker.mjs +301 -0
- package/dist/client/components/fields/relation-picker.mjs.map +1 -0
- package/dist/client/components/fields/relation-select.d.mts +3 -0
- package/dist/client/components/fields/relation-select.mjs +219 -0
- package/dist/client/components/fields/relation-select.mjs.map +1 -0
- package/dist/client/components/fields/reverse-relation-field.d.mts +2 -0
- package/dist/client/components/fields/rich-text-editor/bubble-menu.mjs +56 -0
- package/dist/client/components/fields/rich-text-editor/bubble-menu.mjs.map +1 -0
- package/dist/client/components/fields/rich-text-editor/extensions.mjs +118 -0
- package/dist/client/components/fields/rich-text-editor/extensions.mjs.map +1 -0
- package/dist/client/components/fields/rich-text-editor/image-popover.mjs +196 -0
- package/dist/client/components/fields/rich-text-editor/image-popover.mjs.map +1 -0
- package/dist/client/components/fields/rich-text-editor/index.d.mts +4 -0
- package/dist/client/components/fields/rich-text-editor/index.mjs +187 -0
- package/dist/client/components/fields/rich-text-editor/index.mjs.map +1 -0
- package/dist/client/components/fields/rich-text-editor/link-popover.mjs +86 -0
- package/dist/client/components/fields/rich-text-editor/link-popover.mjs.map +1 -0
- package/dist/client/components/fields/rich-text-editor/presets.d.mts +11 -0
- package/dist/client/components/fields/rich-text-editor/presets.d.mts.map +1 -0
- package/dist/client/components/fields/rich-text-editor/presets.mjs +124 -0
- package/dist/client/components/fields/rich-text-editor/presets.mjs.map +1 -0
- package/dist/client/components/fields/rich-text-editor/slash-commands.mjs +145 -0
- package/dist/client/components/fields/rich-text-editor/slash-commands.mjs.map +1 -0
- package/dist/client/components/fields/rich-text-editor/table-controls.mjs +124 -0
- package/dist/client/components/fields/rich-text-editor/table-controls.mjs.map +1 -0
- package/dist/client/components/fields/rich-text-editor/toolbar.mjs +280 -0
- package/dist/client/components/fields/rich-text-editor/toolbar.mjs.map +1 -0
- package/dist/client/components/fields/rich-text-editor/types.d.mts +78 -0
- package/dist/client/components/fields/rich-text-editor/types.d.mts.map +1 -0
- package/dist/client/components/fields/rich-text-editor/types.mjs +31 -0
- package/dist/client/components/fields/rich-text-editor/types.mjs.map +1 -0
- package/dist/client/components/fields/rich-text-editor/utils.mjs +51 -0
- package/dist/client/components/fields/rich-text-editor/utils.mjs.map +1 -0
- package/dist/client/components/fields/rich-text-editor/variants.d.mts +2 -0
- package/dist/client/components/fields/rich-text-field.d.mts +14 -0
- package/dist/client/components/fields/rich-text-field.d.mts.map +1 -0
- package/dist/client/components/fields/rich-text-field.mjs +26 -0
- package/dist/client/components/fields/rich-text-field.mjs.map +1 -0
- package/dist/client/components/fields/select-field.d.mts +25 -0
- package/dist/client/components/fields/select-field.d.mts.map +1 -0
- package/dist/client/components/fields/select-field.mjs +53 -0
- package/dist/client/components/fields/select-field.mjs.map +1 -0
- package/dist/client/components/fields/status-field.d.mts +2 -0
- package/dist/client/components/fields/text-field.d.mts +22 -0
- package/dist/client/components/fields/text-field.d.mts.map +1 -0
- package/dist/client/components/fields/text-field.mjs +39 -0
- package/dist/client/components/fields/text-field.mjs.map +1 -0
- package/dist/client/components/fields/textarea-field.d.mts +22 -0
- package/dist/client/components/fields/textarea-field.d.mts.map +1 -0
- package/dist/client/components/fields/textarea-field.mjs +39 -0
- package/dist/client/components/fields/textarea-field.mjs.map +1 -0
- package/dist/client/components/fields/time-field.d.mts +20 -0
- package/dist/client/components/fields/time-field.d.mts.map +1 -0
- package/dist/client/components/fields/time-field.mjs +39 -0
- package/dist/client/components/fields/time-field.mjs.map +1 -0
- package/dist/client/components/fields/upload-field.d.mts +97 -0
- package/dist/client/components/fields/upload-field.d.mts.map +1 -0
- package/dist/client/components/fields/upload-field.mjs +497 -0
- package/dist/client/components/fields/upload-field.mjs.map +1 -0
- package/dist/client/components/filter-builder/columns-tab.d.mts +1 -0
- package/dist/client/components/filter-builder/columns-tab.mjs +131 -0
- package/dist/client/components/filter-builder/columns-tab.mjs.map +1 -0
- package/dist/client/components/filter-builder/filter-builder-sheet.d.mts +1 -0
- package/dist/client/components/filter-builder/filter-builder-sheet.mjs +157 -0
- package/dist/client/components/filter-builder/filter-builder-sheet.mjs.map +1 -0
- package/dist/client/components/filter-builder/filters-tab.d.mts +1 -0
- package/dist/client/components/filter-builder/filters-tab.mjs +380 -0
- package/dist/client/components/filter-builder/filters-tab.mjs.map +1 -0
- package/dist/client/components/filter-builder/index.d.mts +5 -0
- package/dist/client/components/filter-builder/saved-views-tab.d.mts +1 -0
- package/dist/client/components/filter-builder/saved-views-tab.mjs +125 -0
- package/dist/client/components/filter-builder/saved-views-tab.mjs.map +1 -0
- package/dist/client/components/index.d.mts +80 -0
- package/dist/client/components/locale-switcher.d.mts +2 -0
- package/dist/client/components/locale-switcher.mjs +128 -0
- package/dist/client/components/locale-switcher.mjs.map +1 -0
- package/dist/client/components/media/media-grid.mjs +139 -0
- package/dist/client/components/media/media-grid.mjs.map +1 -0
- package/dist/client/components/media/media-picker-dialog.mjs +255 -0
- package/dist/client/components/media/media-picker-dialog.mjs.map +1 -0
- package/dist/client/components/preview/live-preview-mode.mjs +211 -0
- package/dist/client/components/preview/live-preview-mode.mjs.map +1 -0
- package/dist/client/components/preview/preview-pane.mjs +179 -0
- package/dist/client/components/preview/preview-pane.mjs.map +1 -0
- package/dist/client/components/primitives/asset-preview.mjs +363 -0
- package/dist/client/components/primitives/asset-preview.mjs.map +1 -0
- package/dist/client/components/primitives/checkbox-input.mjs +33 -0
- package/dist/client/components/primitives/checkbox-input.mjs.map +1 -0
- package/dist/client/components/primitives/date-input.mjs +218 -0
- package/dist/client/components/primitives/date-input.mjs.map +1 -0
- package/dist/client/components/primitives/dropzone.mjs +239 -0
- package/dist/client/components/primitives/dropzone.mjs.map +1 -0
- package/dist/client/components/primitives/number-input.mjs +113 -0
- package/dist/client/components/primitives/number-input.mjs.map +1 -0
- package/dist/client/components/primitives/select-multi.mjs +256 -0
- package/dist/client/components/primitives/select-multi.mjs.map +1 -0
- package/dist/client/components/primitives/select-single.mjs +183 -0
- package/dist/client/components/primitives/select-single.mjs.map +1 -0
- package/dist/client/components/primitives/text-input.mjs +40 -0
- package/dist/client/components/primitives/text-input.mjs.map +1 -0
- package/dist/client/components/primitives/textarea-input.mjs +38 -0
- package/dist/client/components/primitives/textarea-input.mjs.map +1 -0
- package/dist/client/components/primitives/time-input.mjs +72 -0
- package/dist/client/components/primitives/time-input.mjs.map +1 -0
- package/dist/client/components/primitives/toggle-input.mjs +31 -0
- package/dist/client/components/primitives/toggle-input.mjs.map +1 -0
- package/dist/client/components/primitives/types.d.mts +14 -0
- package/dist/client/components/primitives/types.d.mts.map +1 -0
- package/dist/client/components/primitives/types.mjs +13 -0
- package/dist/client/components/primitives/types.mjs.map +1 -0
- package/dist/client/components/sheets/index.d.mts +1 -0
- package/dist/client/components/sheets/resource-sheet.d.mts +1 -0
- package/dist/client/components/sheets/resource-sheet.mjs +78 -0
- package/dist/client/components/sheets/resource-sheet.mjs.map +1 -0
- package/dist/client/components/ui/accordion.d.mts +2 -0
- package/dist/client/components/ui/accordion.mjs +50 -0
- package/dist/client/components/ui/accordion.mjs.map +1 -0
- package/dist/client/components/ui/alert.mjs +32 -0
- package/dist/client/components/ui/alert.mjs.map +1 -0
- package/dist/client/components/ui/avatar.d.mts +3 -0
- package/dist/client/components/ui/badge.d.mts +3 -0
- package/dist/client/components/ui/badge.mjs +35 -0
- package/dist/client/components/ui/badge.mjs.map +1 -0
- package/dist/client/components/ui/button.d.mts +3 -0
- package/dist/client/components/ui/button.mjs +49 -0
- package/dist/client/components/ui/button.mjs.map +1 -0
- package/dist/client/components/ui/card.d.mts +2 -0
- package/dist/{card-BKHjBQfw.mjs → client/components/ui/card.mjs} +3 -10
- package/dist/{card-BKHjBQfw.mjs.map → client/components/ui/card.mjs.map} +1 -1
- package/dist/client/components/ui/checkbox.d.mts +2 -0
- package/dist/client/components/ui/checkbox.mjs +27 -0
- package/dist/client/components/ui/checkbox.mjs.map +1 -0
- package/dist/client/components/ui/combobox.d.mts +3 -0
- package/dist/client/components/ui/command.mjs +69 -0
- package/dist/client/components/ui/command.mjs.map +1 -0
- package/dist/client/components/ui/dialog.d.mts +3 -0
- package/dist/client/components/ui/dialog.mjs +83 -0
- package/dist/client/components/ui/dialog.mjs.map +1 -0
- package/dist/client/components/ui/drawer.mjs +75 -0
- package/dist/client/components/ui/drawer.mjs.map +1 -0
- package/dist/client/components/ui/dropdown-menu.d.mts +3 -0
- package/dist/client/components/ui/dropdown-menu.mjs +89 -0
- package/dist/client/components/ui/dropdown-menu.mjs.map +1 -0
- package/dist/client/components/ui/empty-state.mjs +53 -0
- package/dist/client/components/ui/empty-state.mjs.map +1 -0
- package/dist/client/components/ui/field.d.mts +3 -0
- package/dist/client/components/ui/field.mjs +78 -0
- package/dist/client/components/ui/field.mjs.map +1 -0
- package/dist/client/components/ui/input-group.d.mts +4 -0
- package/dist/client/components/ui/input-group.mjs +68 -0
- package/dist/client/components/ui/input-group.mjs.map +1 -0
- package/dist/client/components/ui/input.d.mts +2 -0
- package/dist/client/components/ui/input.mjs +17 -0
- package/dist/client/components/ui/input.mjs.map +1 -0
- package/dist/client/components/ui/kbd.mjs +24 -0
- package/dist/client/components/ui/kbd.mjs.map +1 -0
- package/dist/client/components/ui/label.d.mts +2 -0
- package/dist/client/components/ui/label.mjs +15 -0
- package/dist/client/components/ui/label.mjs.map +1 -0
- package/dist/client/components/ui/popover.d.mts +3 -0
- package/dist/client/components/ui/popover.mjs +49 -0
- package/dist/client/components/ui/popover.mjs.map +1 -0
- package/dist/client/components/ui/responsive-dialog.mjs +102 -0
- package/dist/client/components/ui/responsive-dialog.mjs.map +1 -0
- package/dist/client/components/ui/scroll-area.d.mts +2 -0
- package/dist/client/components/ui/search-input.mjs +74 -0
- package/dist/client/components/ui/search-input.mjs.map +1 -0
- package/dist/client/components/ui/select.d.mts +3 -0
- package/dist/client/components/ui/select.mjs +85 -0
- package/dist/client/components/ui/select.mjs.map +1 -0
- package/dist/client/components/ui/separator.d.mts +2 -0
- package/dist/client/components/ui/separator.mjs +17 -0
- package/dist/client/components/ui/separator.mjs.map +1 -0
- package/dist/client/components/ui/sheet.d.mts +3 -0
- package/dist/client/components/ui/sheet.mjs +78 -0
- package/dist/client/components/ui/sheet.mjs.map +1 -0
- package/dist/client/components/ui/sidebar.d.mts +8 -0
- package/dist/client/components/ui/sidebar.mjs +256 -0
- package/dist/client/components/ui/sidebar.mjs.map +1 -0
- package/dist/client/components/ui/skeleton.d.mts +1 -0
- package/dist/client/components/ui/skeleton.mjs +15 -0
- package/dist/client/components/ui/skeleton.mjs.map +1 -0
- package/dist/client/components/ui/sonner.d.mts +14 -0
- package/dist/client/components/ui/sonner.d.mts.map +1 -0
- package/dist/client/components/ui/sonner.mjs +55 -0
- package/dist/client/components/ui/sonner.mjs.map +1 -0
- package/dist/client/components/ui/spinner.d.mts +1 -0
- package/dist/client/components/ui/spinner.mjs +18 -0
- package/dist/client/components/ui/spinner.mjs.map +1 -0
- package/dist/client/components/ui/switch.d.mts +2 -0
- package/dist/client/components/ui/switch.mjs +23 -0
- package/dist/client/components/ui/switch.mjs.map +1 -0
- package/dist/client/components/ui/table.d.mts +2 -0
- package/dist/client/components/ui/table.mjs +66 -0
- package/dist/client/components/ui/table.mjs.map +1 -0
- package/dist/client/components/ui/tabs.d.mts +3 -0
- package/dist/client/components/ui/tabs.mjs +49 -0
- package/dist/client/components/ui/tabs.mjs.map +1 -0
- package/dist/client/components/ui/textarea.d.mts +2 -0
- package/dist/client/components/ui/textarea.mjs +15 -0
- package/dist/client/components/ui/textarea.mjs.map +1 -0
- package/dist/client/components/ui/toolbar.mjs +54 -0
- package/dist/client/components/ui/toolbar.mjs.map +1 -0
- package/dist/client/components/ui/tooltip.d.mts +2 -0
- package/dist/client/components/ui/tooltip.mjs +45 -0
- package/dist/client/components/ui/tooltip.mjs.map +1 -0
- package/dist/client/components/widgets/chart-widget.d.mts +57 -0
- package/dist/client/components/widgets/chart-widget.d.mts.map +1 -0
- package/dist/client/components/widgets/chart-widget.mjs +282 -0
- package/dist/client/components/widgets/chart-widget.mjs.map +1 -0
- package/dist/client/components/widgets/progress-widget.d.mts +41 -0
- package/dist/client/components/widgets/progress-widget.d.mts.map +1 -0
- package/dist/client/components/widgets/progress-widget.mjs +110 -0
- package/dist/client/components/widgets/progress-widget.mjs.map +1 -0
- package/dist/client/components/widgets/quick-actions-widget.d.mts +29 -0
- package/dist/client/components/widgets/quick-actions-widget.d.mts.map +1 -0
- package/dist/client/components/widgets/quick-actions-widget.mjs +121 -0
- package/dist/client/components/widgets/quick-actions-widget.mjs.map +1 -0
- package/dist/client/components/widgets/recent-items-widget.d.mts +51 -0
- package/dist/client/components/widgets/recent-items-widget.d.mts.map +1 -0
- package/dist/client/components/widgets/recent-items-widget.mjs +101 -0
- package/dist/client/components/widgets/recent-items-widget.mjs.map +1 -0
- package/dist/client/components/widgets/stats-widget.d.mts +55 -0
- package/dist/client/components/widgets/stats-widget.d.mts.map +1 -0
- package/dist/client/components/widgets/stats-widget.mjs +150 -0
- package/dist/client/components/widgets/stats-widget.mjs.map +1 -0
- package/dist/client/components/widgets/table-widget.d.mts +31 -0
- package/dist/client/components/widgets/table-widget.d.mts.map +1 -0
- package/dist/client/components/widgets/table-widget.mjs +139 -0
- package/dist/client/components/widgets/table-widget.mjs.map +1 -0
- package/dist/client/components/widgets/timeline-widget.d.mts +51 -0
- package/dist/client/components/widgets/timeline-widget.d.mts.map +1 -0
- package/dist/client/components/widgets/timeline-widget.mjs +168 -0
- package/dist/client/components/widgets/timeline-widget.mjs.map +1 -0
- package/dist/client/components/widgets/value-widget.d.mts +39 -0
- package/dist/client/components/widgets/value-widget.d.mts.map +1 -0
- package/dist/client/components/widgets/value-widget.mjs +111 -0
- package/dist/client/components/widgets/value-widget.mjs.map +1 -0
- package/dist/client/components/widgets/widget-skeletons.mjs +145 -0
- package/dist/client/components/widgets/widget-skeletons.mjs.map +1 -0
- package/dist/client/context/focus-context.d.mts +88 -0
- package/dist/client/context/focus-context.d.mts.map +1 -0
- package/dist/client/context/focus-context.mjs +178 -0
- package/dist/client/context/focus-context.mjs.map +1 -0
- package/dist/client/contexts/breadcrumb-context.mjs +32 -0
- package/dist/client/contexts/breadcrumb-context.mjs.map +1 -0
- package/dist/client/hooks/typed-hooks.d.mts +84 -0
- package/dist/client/hooks/typed-hooks.d.mts.map +1 -0
- package/dist/client/hooks/typed-hooks.mjs +272 -0
- package/dist/client/hooks/typed-hooks.mjs.map +1 -0
- package/dist/client/hooks/use-action.mjs +201 -0
- package/dist/client/hooks/use-action.mjs.map +1 -0
- package/dist/client/hooks/use-admin-config.mjs +40 -0
- package/dist/client/hooks/use-admin-config.mjs.map +1 -0
- package/dist/client/hooks/use-admin-preferences.mjs +68 -0
- package/dist/client/hooks/use-admin-preferences.mjs.map +1 -0
- package/dist/client/hooks/use-admin-routes.mjs +97 -0
- package/dist/client/hooks/use-admin-routes.mjs.map +1 -0
- package/dist/client/hooks/use-auth.d.mts +98 -0
- package/dist/client/hooks/use-auth.d.mts.map +1 -0
- package/dist/{use-auth-BoLmWtmU.mjs → client/hooks/use-auth.mjs} +3 -3
- package/dist/client/hooks/use-auth.mjs.map +1 -0
- package/dist/client/hooks/use-collection-fields.mjs +32 -0
- package/dist/client/hooks/use-collection-fields.mjs.map +1 -0
- package/dist/client/hooks/use-collection-meta.mjs +121 -0
- package/dist/client/hooks/use-collection-meta.mjs.map +1 -0
- package/dist/client/hooks/use-collection-schema.mjs +67 -0
- package/dist/client/hooks/use-collection-schema.mjs.map +1 -0
- package/dist/client/hooks/use-collection-validation.mjs +74 -0
- package/dist/client/hooks/use-collection-validation.mjs.map +1 -0
- package/dist/client/hooks/use-collection.d.mts +86 -0
- package/dist/client/hooks/use-collection.d.mts.map +1 -0
- package/dist/client/hooks/use-collection.mjs +214 -0
- package/dist/client/hooks/use-collection.mjs.map +1 -0
- package/dist/client/hooks/use-current-user.d.mts +57 -0
- package/dist/client/hooks/use-current-user.d.mts.map +1 -0
- package/dist/client/hooks/use-current-user.mjs +79 -0
- package/dist/client/hooks/use-current-user.mjs.map +1 -0
- package/dist/client/hooks/use-field-hooks.mjs +191 -0
- package/dist/client/hooks/use-field-hooks.mjs.map +1 -0
- package/dist/client/hooks/use-field-options.d.mts +90 -0
- package/dist/client/hooks/use-field-options.d.mts.map +1 -0
- package/dist/client/hooks/use-field-options.mjs +184 -0
- package/dist/client/hooks/use-field-options.mjs.map +1 -0
- package/dist/client/hooks/use-global-fields.mjs +27 -0
- package/dist/client/hooks/use-global-fields.mjs.map +1 -0
- package/dist/client/hooks/use-global-meta.mjs +59 -0
- package/dist/client/hooks/use-global-meta.mjs.map +1 -0
- package/dist/client/hooks/use-global-schema.mjs +33 -0
- package/dist/client/hooks/use-global-schema.mjs.map +1 -0
- package/dist/client/hooks/use-global.d.mts +40 -0
- package/dist/client/hooks/use-global.d.mts.map +1 -0
- package/dist/client/hooks/use-global.mjs +74 -0
- package/dist/client/hooks/use-global.mjs.map +1 -0
- package/dist/client/hooks/use-locks.mjs +245 -0
- package/dist/client/hooks/use-locks.mjs.map +1 -0
- package/dist/client/hooks/use-media-query.d.mts +23 -0
- package/dist/client/hooks/use-media-query.d.mts.map +1 -0
- package/dist/client/hooks/use-media-query.mjs +62 -0
- package/dist/client/hooks/use-media-query.mjs.map +1 -0
- package/dist/client/hooks/use-prefill-params.mjs +47 -0
- package/dist/client/hooks/use-prefill-params.mjs.map +1 -0
- package/dist/client/hooks/use-questpie-query-options.mjs +28 -0
- package/dist/client/hooks/use-questpie-query-options.mjs.map +1 -0
- package/dist/client/hooks/use-reactive-fields.d.mts +75 -0
- package/dist/client/hooks/use-reactive-fields.d.mts.map +1 -0
- package/dist/client/hooks/use-reactive-fields.mjs +164 -0
- package/dist/client/hooks/use-reactive-fields.mjs.map +1 -0
- package/dist/client/hooks/use-realtime-highlight.mjs +96 -0
- package/dist/client/hooks/use-realtime-highlight.mjs.map +1 -0
- package/dist/client/hooks/use-saved-views.mjs +65 -0
- package/dist/client/hooks/use-saved-views.mjs.map +1 -0
- package/dist/client/hooks/use-search.mjs +147 -0
- package/dist/client/hooks/use-search.mjs.map +1 -0
- package/dist/client/hooks/use-server-validation.mjs +199 -0
- package/dist/client/hooks/use-server-validation.mjs.map +1 -0
- package/dist/client/hooks/use-server-widget-data.d.mts +26 -0
- package/dist/client/hooks/use-server-widget-data.d.mts.map +1 -0
- package/dist/client/hooks/use-server-widget-data.mjs +40 -0
- package/dist/client/hooks/use-server-widget-data.mjs.map +1 -0
- package/dist/client/hooks/use-setup-status.d.mts +39 -0
- package/dist/client/hooks/use-setup-status.d.mts.map +1 -0
- package/dist/client/hooks/use-setup-status.mjs +50 -0
- package/dist/client/hooks/use-setup-status.mjs.map +1 -0
- package/dist/client/hooks/use-upload-collection.mjs +32 -0
- package/dist/client/hooks/use-upload-collection.mjs.map +1 -0
- package/dist/client/hooks/use-upload.d.mts +23 -0
- package/dist/client/hooks/use-upload.d.mts.map +1 -0
- package/dist/client/hooks/use-upload.mjs +145 -0
- package/dist/client/hooks/use-upload.mjs.map +1 -0
- package/dist/client/hooks/use-validation-error-map.mjs +53 -0
- package/dist/client/hooks/use-validation-error-map.mjs.map +1 -0
- package/dist/client/hooks/use-view-state.mjs +261 -0
- package/dist/client/hooks/use-view-state.mjs.map +1 -0
- package/dist/client/i18n/hooks.mjs +160 -0
- package/dist/client/i18n/hooks.mjs.map +1 -0
- package/dist/client/i18n/intl-cache.mjs +65 -0
- package/dist/client/i18n/intl-cache.mjs.map +1 -0
- package/dist/client/i18n/messages.mjs +7 -0
- package/dist/client/i18n/messages.mjs.map +1 -0
- package/dist/client/i18n/simple.d.mts +22 -0
- package/dist/client/i18n/simple.d.mts.map +1 -0
- package/dist/client/i18n/simple.mjs +157 -0
- package/dist/client/i18n/simple.mjs.map +1 -0
- package/dist/client/i18n/types.d.mts +110 -0
- package/dist/client/i18n/types.d.mts.map +1 -0
- package/dist/client/lib/utils.d.mts +1 -0
- package/dist/client/lib/utils.mjs +28 -0
- package/dist/client/lib/utils.mjs.map +1 -0
- package/dist/client/preview/block-scope-context.d.mts +74 -0
- package/dist/client/preview/block-scope-context.d.mts.map +1 -0
- package/dist/client/preview/block-scope-context.mjs +93 -0
- package/dist/client/preview/block-scope-context.mjs.map +1 -0
- package/dist/client/preview/index.d.mts +5 -0
- package/dist/client/preview/preview-banner.d.mts +46 -0
- package/dist/client/preview/preview-banner.d.mts.map +1 -0
- package/dist/client/preview/preview-banner.mjs +95 -0
- package/dist/client/preview/preview-banner.mjs.map +1 -0
- package/dist/client/preview/preview-field.d.mts +108 -0
- package/dist/client/preview/preview-field.d.mts.map +1 -0
- package/dist/client/preview/preview-field.mjs +125 -0
- package/dist/client/preview/preview-field.mjs.map +1 -0
- package/dist/client/preview/types.d.mts +115 -0
- package/dist/client/preview/types.d.mts.map +1 -0
- package/dist/client/preview/types.mjs +21 -0
- package/dist/client/preview/types.mjs.map +1 -0
- package/dist/client/preview/use-collection-preview.d.mts +71 -0
- package/dist/client/preview/use-collection-preview.d.mts.map +1 -0
- package/dist/client/preview/use-collection-preview.mjs +114 -0
- package/dist/client/preview/use-collection-preview.mjs.map +1 -0
- package/dist/client/runtime/content-locales-provider.d.mts +1 -0
- package/dist/client/runtime/content-locales-provider.mjs +85 -0
- package/dist/client/runtime/content-locales-provider.mjs.map +1 -0
- package/dist/client/runtime/index.d.mts +7 -0
- package/dist/client/runtime/index.mjs +8 -0
- package/dist/client/runtime/locale-scope.d.mts +2 -0
- package/dist/{runtime-6VZM878K.mjs → client/runtime/locale-scope.mjs} +3 -4
- package/dist/client/runtime/locale-scope.mjs.map +1 -0
- package/dist/client/runtime/provider.d.mts +10107 -0
- package/dist/client/runtime/provider.d.mts.map +1 -0
- package/dist/client/runtime/provider.mjs +229 -0
- package/dist/client/runtime/provider.mjs.map +1 -0
- package/dist/client/runtime/routes.d.mts +49 -0
- package/dist/client/runtime/routes.d.mts.map +1 -0
- package/dist/client/runtime/routes.mjs +107 -0
- package/dist/client/runtime/routes.mjs.map +1 -0
- package/dist/client/runtime/translations-provider.d.mts +2 -0
- package/dist/client/runtime/translations-provider.mjs +181 -0
- package/dist/client/runtime/translations-provider.mjs.map +1 -0
- package/dist/client/scope/index.d.mts +3 -0
- package/dist/client/scope/picker.d.mts +54 -0
- package/dist/client/scope/picker.d.mts.map +1 -0
- package/dist/client/scope/picker.mjs +161 -0
- package/dist/client/scope/picker.mjs.map +1 -0
- package/dist/client/scope/provider.d.mts +104 -0
- package/dist/client/scope/provider.d.mts.map +1 -0
- package/dist/client/scope/provider.mjs +159 -0
- package/dist/client/scope/provider.mjs.map +1 -0
- package/dist/client/scope/types.d.mts +112 -0
- package/dist/client/scope/types.d.mts.map +1 -0
- package/dist/client/styles/index.css +80 -0
- package/dist/client/utils/auto-expand-fields.mjs +65 -0
- package/dist/client/utils/auto-expand-fields.mjs.map +1 -0
- package/dist/client/utils/build-field-definitions-from-schema.mjs +256 -0
- package/dist/client/utils/build-field-definitions-from-schema.mjs.map +1 -0
- package/dist/client/utils/detect-relations.mjs +46 -0
- package/dist/client/utils/detect-relations.mjs.map +1 -0
- package/dist/client/utils/locale-to-flag.d.mts +118 -0
- package/dist/client/utils/locale-to-flag.d.mts.map +1 -0
- package/dist/client/utils/locale-to-flag.mjs +130 -0
- package/dist/client/utils/locale-to-flag.mjs.map +1 -0
- package/dist/client/utils/routes.mjs +196 -0
- package/dist/client/utils/routes.mjs.map +1 -0
- package/dist/client/views/auth/accept-invite-form.d.mts +73 -0
- package/dist/client/views/auth/accept-invite-form.d.mts.map +1 -0
- package/dist/client/views/auth/accept-invite-form.mjs +180 -0
- package/dist/client/views/auth/accept-invite-form.mjs.map +1 -0
- package/dist/client/views/auth/auth-layout.d.mts +44 -0
- package/dist/client/views/auth/auth-layout.d.mts.map +1 -0
- package/dist/client/views/auth/auth-layout.mjs +53 -0
- package/dist/client/views/auth/auth-layout.mjs.map +1 -0
- package/dist/client/views/auth/forgot-password-form.d.mts +59 -0
- package/dist/client/views/auth/forgot-password-form.d.mts.map +1 -0
- package/dist/{forgot-password-page-Bcp-An4Y.mjs → client/views/auth/forgot-password-form.mjs} +22 -89
- package/dist/client/views/auth/forgot-password-form.mjs.map +1 -0
- package/dist/client/views/auth/index.d.mts +7 -0
- package/dist/client/views/auth/invite-form.d.mts +1 -0
- package/dist/client/views/auth/invite-form.mjs +155 -0
- package/dist/client/views/auth/invite-form.mjs.map +1 -0
- package/dist/client/views/auth/login-form.d.mts +76 -0
- package/dist/client/views/auth/login-form.d.mts.map +1 -0
- package/dist/client/views/auth/login-form.mjs +167 -0
- package/dist/client/views/auth/login-form.mjs.map +1 -0
- package/dist/client/views/auth/reset-password-form.d.mts +66 -0
- package/dist/client/views/auth/reset-password-form.d.mts.map +1 -0
- package/dist/client/views/auth/reset-password-form.mjs +188 -0
- package/dist/client/views/auth/reset-password-form.mjs.map +1 -0
- package/dist/client/views/auth/setup-form.d.mts +61 -0
- package/dist/client/views/auth/setup-form.d.mts.map +1 -0
- package/dist/{setup-page-YAP_fzqh.mjs → client/views/auth/setup-form.mjs} +46 -124
- package/dist/client/views/auth/setup-form.mjs.map +1 -0
- package/dist/client/views/collection/auto-form-fields.d.mts +4 -0
- package/dist/client/views/collection/auto-form-fields.mjs +453 -0
- package/dist/client/views/collection/auto-form-fields.mjs.map +1 -0
- package/dist/client/views/collection/bulk-action-toolbar.mjs +291 -0
- package/dist/client/views/collection/bulk-action-toolbar.mjs.map +1 -0
- package/dist/client/views/collection/cells/complex-cells.d.mts +46 -0
- package/dist/client/views/collection/cells/complex-cells.d.mts.map +1 -0
- package/dist/client/views/collection/cells/complex-cells.mjs +327 -0
- package/dist/client/views/collection/cells/complex-cells.mjs.map +1 -0
- package/dist/client/views/collection/cells/index.d.mts +7 -0
- package/dist/client/views/collection/cells/primitive-cells.d.mts +76 -0
- package/dist/client/views/collection/cells/primitive-cells.d.mts.map +1 -0
- package/dist/client/views/collection/cells/primitive-cells.mjs +165 -0
- package/dist/client/views/collection/cells/primitive-cells.mjs.map +1 -0
- package/dist/client/views/collection/cells/relation-cells.d.mts +21 -0
- package/dist/client/views/collection/cells/relation-cells.d.mts.map +1 -0
- package/dist/client/views/collection/cells/relation-cells.mjs +105 -0
- package/dist/client/views/collection/cells/relation-cells.mjs.map +1 -0
- package/dist/client/views/collection/cells/shared/asset-thumbnail.d.mts +1 -0
- package/dist/client/views/collection/cells/shared/asset-thumbnail.mjs +189 -0
- package/dist/client/views/collection/cells/shared/asset-thumbnail.mjs.map +1 -0
- package/dist/client/views/collection/cells/shared/cell-helpers.d.mts +2 -0
- package/dist/client/views/collection/cells/shared/cell-helpers.mjs +78 -0
- package/dist/client/views/collection/cells/shared/cell-helpers.mjs.map +1 -0
- package/dist/client/views/collection/cells/shared/relation-chip.d.mts +1 -0
- package/dist/client/views/collection/cells/shared/relation-chip.mjs +37 -0
- package/dist/client/views/collection/cells/shared/relation-chip.mjs.map +1 -0
- package/dist/client/views/collection/cells/upload-cells.d.mts +25 -0
- package/dist/client/views/collection/cells/upload-cells.d.mts.map +1 -0
- package/dist/client/views/collection/cells/upload-cells.mjs +20 -0
- package/dist/client/views/collection/cells/upload-cells.mjs.map +1 -0
- package/dist/client/views/collection/columns/build-columns.d.mts +2 -0
- package/dist/client/views/collection/columns/build-columns.mjs +156 -0
- package/dist/client/views/collection/columns/build-columns.mjs.map +1 -0
- package/dist/client/views/collection/columns/column-defaults.d.mts +2 -0
- package/dist/client/views/collection/columns/column-defaults.mjs +108 -0
- package/dist/client/views/collection/columns/column-defaults.mjs.map +1 -0
- package/dist/client/views/collection/columns/index.d.mts +3 -0
- package/dist/client/views/collection/columns/types.d.mts +2 -0
- package/dist/client/views/collection/field-context.mjs +127 -0
- package/dist/client/views/collection/field-context.mjs.map +1 -0
- package/dist/client/views/collection/field-renderer.mjs +171 -0
- package/dist/client/views/collection/field-renderer.mjs.map +1 -0
- package/dist/client/views/collection/form-view.d.mts +112 -0
- package/dist/client/views/collection/form-view.d.mts.map +1 -0
- package/dist/client/views/collection/form-view.mjs +903 -0
- package/dist/client/views/collection/form-view.mjs.map +1 -0
- package/dist/client/views/collection/index.d.mts +9 -0
- package/dist/client/views/collection/table-view.d.mts +102 -0
- package/dist/client/views/collection/table-view.d.mts.map +1 -0
- package/dist/client/views/collection/table-view.mjs +695 -0
- package/dist/client/views/collection/table-view.mjs.map +1 -0
- package/dist/client/views/collection/view-skeletons.mjs +121 -0
- package/dist/client/views/collection/view-skeletons.mjs.map +1 -0
- package/dist/client/views/common/global-search.d.mts +1 -0
- package/dist/client/views/common/global-search.mjs +376 -0
- package/dist/client/views/common/global-search.mjs.map +1 -0
- package/dist/client/views/common/index.d.mts +1 -0
- package/dist/client/views/dashboard/dashboard-grid.mjs +385 -0
- package/dist/client/views/dashboard/dashboard-grid.mjs.map +1 -0
- package/dist/client/views/dashboard/dashboard-widget.mjs +178 -0
- package/dist/client/views/dashboard/dashboard-widget.mjs.map +1 -0
- package/dist/client/views/dashboard/widget-card.mjs +159 -0
- package/dist/client/views/dashboard/widget-card.mjs.map +1 -0
- package/dist/client/views/globals/global-form-view.d.mts +74 -0
- package/dist/client/views/globals/global-form-view.d.mts.map +1 -0
- package/dist/client/views/globals/global-form-view.mjs +181 -0
- package/dist/client/views/globals/global-form-view.mjs.map +1 -0
- package/dist/client/views/index.d.mts +28 -0
- package/dist/client/views/layout/admin-layout-provider.d.mts +140 -0
- package/dist/client/views/layout/admin-layout-provider.d.mts.map +1 -0
- package/dist/client/views/layout/admin-layout-provider.mjs +90 -0
- package/dist/client/views/layout/admin-layout-provider.mjs.map +1 -0
- package/dist/client/views/layout/admin-layout.d.mts +151 -0
- package/dist/client/views/layout/admin-layout.d.mts.map +1 -0
- package/dist/client/views/layout/admin-layout.mjs +144 -0
- package/dist/client/views/layout/admin-layout.mjs.map +1 -0
- package/dist/client/views/layout/admin-root.d.mts +7 -0
- package/dist/client/views/layout/admin-router.d.mts +125 -0
- package/dist/client/views/layout/admin-router.d.mts.map +1 -0
- package/dist/client/views/layout/admin-router.mjs +594 -0
- package/dist/client/views/layout/admin-router.mjs.map +1 -0
- package/dist/client/views/layout/admin-sidebar.d.mts +105 -0
- package/dist/client/views/layout/admin-sidebar.d.mts.map +1 -0
- package/dist/client/views/layout/admin-sidebar.mjs +550 -0
- package/dist/client/views/layout/admin-sidebar.mjs.map +1 -0
- package/dist/client/views/layout/admin-topbar.mjs +128 -0
- package/dist/client/views/layout/admin-topbar.mjs.map +1 -0
- package/dist/client/views/layout/index.d.mts +5 -0
- package/dist/client/views/pages/accept-invite-page.d.mts +67 -0
- package/dist/client/views/pages/accept-invite-page.d.mts.map +1 -0
- package/dist/client/views/pages/accept-invite-page.mjs +143 -0
- package/dist/client/views/pages/accept-invite-page.mjs.map +1 -0
- package/dist/client/views/pages/dashboard-page.d.mts +52 -0
- package/dist/client/views/pages/dashboard-page.d.mts.map +1 -0
- package/dist/client/views/pages/dashboard-page.mjs +45 -0
- package/dist/client/views/pages/dashboard-page.mjs.map +1 -0
- package/dist/client/views/pages/forgot-password-page.d.mts +59 -0
- package/dist/client/views/pages/forgot-password-page.d.mts.map +1 -0
- package/dist/client/views/pages/forgot-password-page.mjs +80 -0
- package/dist/client/views/pages/forgot-password-page.mjs.map +1 -0
- package/dist/client/views/pages/index.d.mts +7 -0
- package/dist/client/views/pages/invite-page.d.mts +71 -0
- package/dist/client/views/pages/invite-page.d.mts.map +1 -0
- package/dist/client/views/pages/invite-page.mjs +86 -0
- package/dist/client/views/pages/invite-page.mjs.map +1 -0
- package/dist/client/views/pages/login-page.d.mts +76 -0
- package/dist/client/views/pages/login-page.d.mts.map +1 -0
- package/dist/client/views/pages/login-page.mjs +98 -0
- package/dist/client/views/pages/login-page.mjs.map +1 -0
- package/dist/client/views/pages/reset-password-page.d.mts +66 -0
- package/dist/client/views/pages/reset-password-page.d.mts.map +1 -0
- package/dist/client/views/pages/reset-password-page.mjs +105 -0
- package/dist/client/views/pages/reset-password-page.mjs.map +1 -0
- package/dist/client/views/pages/setup-page.d.mts +64 -0
- package/dist/client/views/pages/setup-page.d.mts.map +1 -0
- package/dist/client/views/pages/setup-page.mjs +91 -0
- package/dist/client/views/pages/setup-page.mjs.map +1 -0
- package/dist/client.d.mts +92 -3
- package/dist/client.d.mts.map +1 -0
- package/dist/client.mjs +54 -12
- package/dist/components/rich-text/index.d.mts +1 -0
- package/dist/components/rich-text/rich-text-renderer.d.mts +104 -0
- package/dist/components/rich-text/rich-text-renderer.d.mts.map +1 -0
- package/dist/components/rich-text/rich-text-renderer.mjs +210 -0
- package/dist/components/rich-text/rich-text-renderer.mjs.map +1 -0
- package/dist/index.d.mts +62 -3
- package/dist/index.mjs +54 -12
- package/dist/server/adapters/nextjs.d.mts +121 -0
- package/dist/server/adapters/nextjs.d.mts.map +1 -0
- package/dist/server/adapters/nextjs.mjs +111 -0
- package/dist/server/adapters/nextjs.mjs.map +1 -0
- package/dist/server/adapters/tanstack.d.mts +133 -0
- package/dist/server/adapters/tanstack.d.mts.map +1 -0
- package/dist/server/adapters/tanstack.mjs +90 -0
- package/dist/server/adapters/tanstack.mjs.map +1 -0
- package/dist/server/augmentation.d.mts +1523 -0
- package/dist/server/augmentation.d.mts.map +1 -0
- package/dist/server/auth-helpers.d.mts +143 -0
- package/dist/server/auth-helpers.d.mts.map +1 -0
- package/dist/server/auth-helpers.mjs +108 -0
- package/dist/server/auth-helpers.mjs.map +1 -0
- package/dist/server/block/block-builder.d.mts +319 -0
- package/dist/server/block/block-builder.d.mts.map +1 -0
- package/dist/server/block/block-builder.mjs +217 -0
- package/dist/server/block/block-builder.mjs.map +1 -0
- package/dist/server/block/index.d.mts +3 -0
- package/dist/server/block/introspection.d.mts +84 -0
- package/dist/server/block/introspection.d.mts.map +1 -0
- package/dist/server/block/introspection.mjs +89 -0
- package/dist/server/block/introspection.mjs.map +1 -0
- package/dist/server/block/prefetch.d.mts +78 -0
- package/dist/server/block/prefetch.d.mts.map +1 -0
- package/dist/server/block/prefetch.mjs +240 -0
- package/dist/server/block/prefetch.mjs.map +1 -0
- package/dist/server/fields/blocks.d.mts +139 -0
- package/dist/server/fields/blocks.d.mts.map +1 -0
- package/dist/server/fields/blocks.mjs +192 -0
- package/dist/server/fields/blocks.mjs.map +1 -0
- package/dist/server/fields/index.d.mts +48 -0
- package/dist/server/fields/index.d.mts.map +1 -0
- package/dist/server/fields/index.mjs +16 -0
- package/dist/server/fields/index.mjs.map +1 -0
- package/dist/server/fields/rich-text.d.mts +135 -0
- package/dist/server/fields/rich-text.d.mts.map +1 -0
- package/dist/server/fields/rich-text.mjs +188 -0
- package/dist/server/fields/rich-text.mjs.map +1 -0
- package/dist/server/i18n/index.d.mts +16 -0
- package/dist/server/i18n/index.d.mts.map +1 -0
- package/dist/server/i18n/index.mjs +44 -0
- package/dist/server/i18n/index.mjs.map +1 -0
- package/dist/server/i18n/messages/cs.mjs +461 -0
- package/dist/server/i18n/messages/cs.mjs.map +1 -0
- package/dist/server/i18n/messages/de.mjs +461 -0
- package/dist/server/i18n/messages/de.mjs.map +1 -0
- package/dist/server/i18n/messages/en.mjs +493 -0
- package/dist/server/i18n/messages/en.mjs.map +1 -0
- package/dist/server/i18n/messages/es.mjs +461 -0
- package/dist/server/i18n/messages/es.mjs.map +1 -0
- package/dist/server/i18n/messages/fr.mjs +461 -0
- package/dist/server/i18n/messages/fr.mjs.map +1 -0
- package/dist/server/i18n/messages/index.mjs +24 -0
- package/dist/server/i18n/messages/index.mjs.map +1 -0
- package/dist/server/i18n/messages/pl.mjs +461 -0
- package/dist/server/i18n/messages/pl.mjs.map +1 -0
- package/dist/server/i18n/messages/pt.mjs +464 -0
- package/dist/server/i18n/messages/pt.mjs.map +1 -0
- package/dist/server/i18n/messages/sk.mjs +490 -0
- package/dist/server/i18n/messages/sk.mjs.map +1 -0
- package/dist/server/index.d.mts +20 -0
- package/dist/server/modules/admin/functions/admin-config.mjs +348 -0
- package/dist/server/modules/admin/functions/admin-config.mjs.map +1 -0
- package/dist/server/modules/admin/functions/execute-action.d.mts +107 -0
- package/dist/server/modules/admin/functions/execute-action.d.mts.map +1 -0
- package/dist/server/modules/admin/functions/execute-action.mjs +331 -0
- package/dist/server/modules/admin/functions/execute-action.mjs.map +1 -0
- package/dist/server/modules/admin/functions/locales.mjs +80 -0
- package/dist/server/modules/admin/functions/locales.mjs.map +1 -0
- package/dist/server/modules/admin/functions/preview.d.mts +70 -0
- package/dist/server/modules/admin/functions/preview.d.mts.map +1 -0
- package/dist/server/modules/admin/functions/preview.mjs +243 -0
- package/dist/server/modules/admin/functions/preview.mjs.map +1 -0
- package/dist/server/modules/admin/functions/reactive.d.mts +99 -0
- package/dist/server/modules/admin/functions/reactive.d.mts.map +1 -0
- package/dist/server/modules/admin/functions/reactive.mjs +378 -0
- package/dist/server/modules/admin/functions/reactive.mjs.map +1 -0
- package/dist/server/modules/admin/functions/setup.d.mts +84 -0
- package/dist/server/modules/admin/functions/setup.d.mts.map +1 -0
- package/dist/server/modules/admin/functions/setup.mjs +131 -0
- package/dist/server/modules/admin/functions/setup.mjs.map +1 -0
- package/dist/server/modules/admin/functions/translations.mjs +125 -0
- package/dist/server/modules/admin/functions/translations.mjs.map +1 -0
- package/dist/server/modules/admin/functions/widget-data.d.mts +33 -0
- package/dist/server/modules/admin/functions/widget-data.d.mts.map +1 -0
- package/dist/server/modules/admin/functions/widget-data.mjs +70 -0
- package/dist/server/modules/admin/functions/widget-data.mjs.map +1 -0
- package/dist/server/modules/admin/index.d.mts +16879 -0
- package/dist/server/modules/admin/index.d.mts.map +1 -0
- package/dist/server/modules/admin/index.mjs +249 -0
- package/dist/server/modules/admin/index.mjs.map +1 -0
- package/dist/server/modules/admin-preferences/collections/admin-preferences.collection.d.mts +3 -0
- package/dist/server/modules/admin-preferences/collections/admin-preferences.collection.mjs +48 -0
- package/dist/server/modules/admin-preferences/collections/admin-preferences.collection.mjs.map +1 -0
- package/dist/server/modules/admin-preferences/collections/locks.collection.d.mts +3 -0
- package/dist/server/modules/admin-preferences/collections/locks.collection.mjs +79 -0
- package/dist/server/modules/admin-preferences/collections/locks.collection.mjs.map +1 -0
- package/dist/server/modules/admin-preferences/collections/saved-views.collection.d.mts +1490 -0
- package/dist/server/modules/admin-preferences/collections/saved-views.collection.d.mts.map +1 -0
- package/dist/server/modules/admin-preferences/collections/saved-views.collection.mjs +57 -0
- package/dist/server/modules/admin-preferences/collections/saved-views.collection.mjs.map +1 -0
- package/dist/server/patch.d.mts +100 -0
- package/dist/server/patch.d.mts.map +1 -0
- package/dist/server/patch.mjs +1062 -0
- package/dist/server/patch.mjs.map +1 -0
- package/dist/server.d.mts +21 -250
- package/dist/server.mjs +19 -832
- package/dist/shared/preview-utils.d.mts +54 -0
- package/dist/shared/preview-utils.d.mts.map +1 -0
- package/dist/{preview-utils-BKQ9-TMa.mjs → shared/preview-utils.mjs} +2 -2
- package/dist/shared/preview-utils.mjs.map +1 -0
- package/dist/{saved-views.types-BMsz5mCy.d.mts → shared/types/saved-views.types.d.mts} +7 -2
- package/dist/shared/types/saved-views.types.d.mts.map +1 -0
- package/dist/shared.d.mts +3 -57
- package/dist/shared.mjs +1 -1
- package/package.json +12 -17
- package/dist/auth-layout-M8K8_q5R.mjs +0 -181
- package/dist/auth-layout-M8K8_q5R.mjs.map +0 -1
- package/dist/bulk-upload-dialog-D7w7W1Hl.mjs +0 -273
- package/dist/bulk-upload-dialog-D7w7W1Hl.mjs.map +0 -1
- package/dist/client-D1DqawtP.d.mts +0 -13403
- package/dist/client-D1DqawtP.d.mts.map +0 -1
- package/dist/client-njX1rZmi.mjs +0 -22612
- package/dist/client-njX1rZmi.mjs.map +0 -1
- package/dist/content-locales-provider-BXvuIgfg.mjs +0 -1650
- package/dist/content-locales-provider-BXvuIgfg.mjs.map +0 -1
- package/dist/dashboard-page-B4PGEdc2.mjs +0 -2500
- package/dist/dashboard-page-B4PGEdc2.mjs.map +0 -1
- package/dist/dashboard-page-mCY0pgZv.mjs +0 -3
- package/dist/dropzone-Do3awXKd.mjs +0 -634
- package/dist/dropzone-Do3awXKd.mjs.map +0 -1
- package/dist/forgot-password-page-Bcp-An4Y.mjs.map +0 -1
- package/dist/forgot-password-page-CEwsdLwn.mjs +0 -3
- package/dist/index-B4H3amCD.d.mts +0 -2753
- package/dist/index-B4H3amCD.d.mts.map +0 -1
- package/dist/login-page-BUnpCbCa.mjs +0 -3
- package/dist/login-page-CP4gA-dl.mjs +0 -298
- package/dist/login-page-CP4gA-dl.mjs.map +0 -1
- package/dist/preview-utils-BKQ9-TMa.mjs.map +0 -1
- package/dist/reset-password-page-BqfDmLxA.mjs +0 -281
- package/dist/reset-password-page-BqfDmLxA.mjs.map +0 -1
- package/dist/reset-password-page-CufHz3h3.mjs +0 -3
- package/dist/runtime-6VZM878K.mjs.map +0 -1
- package/dist/saved-views.types-BMsz5mCy.d.mts.map +0 -1
- package/dist/server.d.mts.map +0 -1
- package/dist/server.mjs.map +0 -1
- package/dist/setup-page-BNNzt_Z6.mjs +0 -3
- package/dist/setup-page-YAP_fzqh.mjs.map +0 -1
- package/dist/shared.d.mts.map +0 -1
- package/dist/use-auth-BoLmWtmU.mjs.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tabs.mjs","names":["Tabs","TabsPrimitive"],"sources":["../../../../src/client/components/ui/tabs.tsx"],"sourcesContent":["\"use client\";\n\nimport { Tabs as TabsPrimitive } from \"@base-ui/react/tabs\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"../../lib/utils\";\n\nfunction Tabs({\n className,\n orientation = \"horizontal\",\n ...props\n}: TabsPrimitive.Root.Props) {\n return (\n <TabsPrimitive.Root\n data-slot=\"tabs\"\n data-orientation={orientation}\n className={cn(\n \"gap-2 group/tabs flex data-[orientation=horizontal]:flex-col\",\n className,\n )}\n {...props}\n />\n );\n}\n\nconst tabsListVariants = cva(\n \"p-[3px] group-data-horizontal/tabs:h-8 group/tabs-list text-muted-foreground inline-flex w-fit items-center justify-center group-data-[orientation=vertical]/tabs:h-fit group-data-[orientation=vertical]/tabs:flex-col\",\n {\n variants: {\n variant: {\n default: \"bg-muted\",\n line: \"gap-1 bg-transparent\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n },\n);\n\nfunction TabsList({\n className,\n variant = \"default\",\n ...props\n}: TabsPrimitive.List.Props & VariantProps<typeof tabsListVariants>) {\n return (\n <TabsPrimitive.List\n data-slot=\"tabs-list\"\n data-variant={variant}\n className={cn(tabsListVariants({ variant }), className)}\n {...props}\n />\n );\n}\n\nfunction TabsTrigger({ className, ...props }: TabsPrimitive.Tab.Props) {\n return (\n <TabsPrimitive.Tab\n data-slot=\"tabs-trigger\"\n className={cn(\n \"gap-1.5 border border-transparent px-1.5 py-0.5 text-xs font-medium group-data-vertical/tabs:py-[calc(--spacing(1.25))] [&_svg:not([class*='size-'])]:size-3.5 focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring text-foreground/60 hover:text-foreground dark:text-muted-foreground dark:hover:text-foreground relative inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center whitespace-nowrap transition-all group-data-[orientation=vertical]/tabs:w-full group-data-[orientation=vertical]/tabs:justify-start focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0\",\n \"group-data-[variant=line]/tabs-list:bg-transparent group-data-[variant=line]/tabs-list:data-active:bg-transparent dark:group-data-[variant=line]/tabs-list:data-active:border-transparent dark:group-data-[variant=line]/tabs-list:data-active:bg-transparent\",\n \"data-active:bg-background dark:data-active:text-foreground dark:data-active:border-input dark:data-active:bg-input/30 data-active:text-foreground\",\n \"after:bg-foreground after:absolute after:opacity-0 after:transition-opacity group-data-[orientation=horizontal]/tabs:after:inset-x-0 group-data-[orientation=horizontal]/tabs:after:bottom-[-5px] group-data-[orientation=horizontal]/tabs:after:h-0.5 group-data-[orientation=vertical]/tabs:after:inset-y-0 group-data-[orientation=vertical]/tabs:after:-right-1 group-data-[orientation=vertical]/tabs:after:w-0.5 group-data-[variant=line]/tabs-list:data-active:after:opacity-100\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction TabsContent({ className, ...props }: TabsPrimitive.Panel.Props) {\n return (\n <TabsPrimitive.Panel\n data-slot=\"tabs-content\"\n className={cn(\"text-xs/relaxed flex-1 outline-none\", className)}\n {...props}\n />\n );\n}\n\nexport { Tabs, TabsList, TabsTrigger, TabsContent, tabsListVariants };\n"],"mappings":";;;;;;;;AAOA,SAASA,OAAK,EACZ,WACA,cAAc,cACd,GAAG,SACwB;AAC3B,QACE,oBAACC,KAAc;EACb,aAAU;EACV,oBAAkB;EAClB,WAAW,GACT,gEACA,UACD;EACD,GAAI;GACJ;;AAIN,MAAM,mBAAmB,IACvB,2NACA;CACE,UAAU,EACR,SAAS;EACP,SAAS;EACT,MAAM;EACP,EACF;CACD,iBAAiB,EACf,SAAS,WACV;CACF,CACF;AAED,SAAS,SAAS,EAChB,WACA,UAAU,WACV,GAAG,SACgE;AACnE,QACE,oBAACA,KAAc;EACb,aAAU;EACV,gBAAc;EACd,WAAW,GAAG,iBAAiB,EAAE,SAAS,CAAC,EAAE,UAAU;EACvD,GAAI;GACJ;;AAIN,SAAS,YAAY,EAAE,WAAW,GAAG,SAAkC;AACrE,QACE,oBAACA,KAAc;EACb,aAAU;EACV,WAAW,GACT,+qBACA,iQACA,qJACA,4dACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,YAAY,EAAE,WAAW,GAAG,SAAoC;AACvE,QACE,oBAACA,KAAc;EACb,aAAU;EACV,WAAW,GAAG,uCAAuC,UAAU;EAC/D,GAAI;GACJ"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { cn } from "../../lib/utils.mjs";
|
|
2
|
+
import { jsx } from "react/jsx-runtime";
|
|
3
|
+
|
|
4
|
+
//#region src/client/components/ui/textarea.tsx
|
|
5
|
+
function Textarea({ className, ...props }) {
|
|
6
|
+
return /* @__PURE__ */ jsx("textarea", {
|
|
7
|
+
"data-slot": "textarea",
|
|
8
|
+
className: cn("border-input/80 bg-input/20 backdrop-blur-sm focus-visible:border-ring focus-visible:ring-ring/30 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:aria-invalid:border-destructive/50 resize-none border px-3 py-2.5 text-sm transition-all focus-visible:ring-[2px] aria-invalid:ring-[2px] placeholder:text-muted-foreground flex field-sizing-content min-h-24 w-full outline-none disabled:cursor-not-allowed disabled:opacity-50", className),
|
|
9
|
+
...props
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
//#endregion
|
|
14
|
+
export { Textarea };
|
|
15
|
+
//# sourceMappingURL=textarea.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"textarea.mjs","names":[],"sources":["../../../../src/client/components/ui/textarea.tsx"],"sourcesContent":["import type * as React from \"react\";\n\nimport { cn } from \"../../lib/utils\";\n\nfunction Textarea({ className, ...props }: React.ComponentProps<\"textarea\">) {\n return (\n <textarea\n data-slot=\"textarea\"\n className={cn(\n \"border-input/80 bg-input/20 backdrop-blur-sm focus-visible:border-ring focus-visible:ring-ring/30 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:aria-invalid:border-destructive/50 resize-none border px-3 py-2.5 text-sm transition-all focus-visible:ring-[2px] aria-invalid:ring-[2px] placeholder:text-muted-foreground flex field-sizing-content min-h-24 w-full outline-none disabled:cursor-not-allowed disabled:opacity-50\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport { Textarea };\n"],"mappings":";;;;AAIA,SAAS,SAAS,EAAE,WAAW,GAAG,SAA2C;AAC3E,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,qeACA,UACD;EACD,GAAI;GACJ"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { cn } from "../../lib/utils.mjs";
|
|
2
|
+
import "react";
|
|
3
|
+
import { jsx } from "react/jsx-runtime";
|
|
4
|
+
|
|
5
|
+
//#region src/client/components/ui/toolbar.tsx
|
|
6
|
+
/**
|
|
7
|
+
* Toolbar - Container for toolbar elements with glass effect
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```tsx
|
|
11
|
+
* <Toolbar>
|
|
12
|
+
* <ToolbarSection className="flex-1">
|
|
13
|
+
* <SearchInput value={search} onChange={setSearch} />
|
|
14
|
+
* </ToolbarSection>
|
|
15
|
+
* <ToolbarSeparator />
|
|
16
|
+
* <ToolbarSection>
|
|
17
|
+
* <Button variant="outline" size="sm">Options</Button>
|
|
18
|
+
* </ToolbarSection>
|
|
19
|
+
* </Toolbar>
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
function Toolbar({ children, className, ...props }) {
|
|
23
|
+
return /* @__PURE__ */ jsx("div", {
|
|
24
|
+
"data-slot": "toolbar",
|
|
25
|
+
className: cn("bg-card/10 backdrop-blur-sm border border-border/40", "p-1 flex items-center gap-2", className),
|
|
26
|
+
...props,
|
|
27
|
+
children
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* ToolbarSection - Group of related toolbar elements
|
|
32
|
+
*/
|
|
33
|
+
function ToolbarSection({ children, className, ...props }) {
|
|
34
|
+
return /* @__PURE__ */ jsx("div", {
|
|
35
|
+
"data-slot": "toolbar-section",
|
|
36
|
+
className: cn("flex items-center gap-1", className),
|
|
37
|
+
...props,
|
|
38
|
+
children
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* ToolbarSeparator - Vertical separator between toolbar sections
|
|
43
|
+
*/
|
|
44
|
+
function ToolbarSeparator({ className, ...props }) {
|
|
45
|
+
return /* @__PURE__ */ jsx("div", {
|
|
46
|
+
"data-slot": "toolbar-separator",
|
|
47
|
+
className: cn("h-4 w-px bg-border/40", className),
|
|
48
|
+
...props
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
//#endregion
|
|
53
|
+
export { Toolbar, ToolbarSection, ToolbarSeparator };
|
|
54
|
+
//# sourceMappingURL=toolbar.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toolbar.mjs","names":[],"sources":["../../../../src/client/components/ui/toolbar.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { cn } from \"../../lib/utils\";\n\n// ============================================================================\n// Toolbar\n// ============================================================================\n\nexport interface ToolbarProps extends React.ComponentProps<\"div\"> {\n /**\n * Children elements\n */\n children: React.ReactNode;\n}\n\n/**\n * Toolbar - Container for toolbar elements with glass effect\n *\n * @example\n * ```tsx\n * <Toolbar>\n * <ToolbarSection className=\"flex-1\">\n * <SearchInput value={search} onChange={setSearch} />\n * </ToolbarSection>\n * <ToolbarSeparator />\n * <ToolbarSection>\n * <Button variant=\"outline\" size=\"sm\">Options</Button>\n * </ToolbarSection>\n * </Toolbar>\n * ```\n */\nexport function Toolbar({\n children,\n className,\n ...props\n}: ToolbarProps): React.ReactElement {\n return (\n <div\n data-slot=\"toolbar\"\n className={cn(\n \"bg-card/10 backdrop-blur-sm border border-border/40\",\n \"p-1 flex items-center gap-2\",\n className,\n )}\n {...props}\n >\n {children}\n </div>\n );\n}\n\n// ============================================================================\n// ToolbarSection\n// ============================================================================\n\nexport interface ToolbarSectionProps extends React.ComponentProps<\"div\"> {\n /**\n * Children elements\n */\n children: React.ReactNode;\n}\n\n/**\n * ToolbarSection - Group of related toolbar elements\n */\nexport function ToolbarSection({\n children,\n className,\n ...props\n}: ToolbarSectionProps): React.ReactElement {\n return (\n <div\n data-slot=\"toolbar-section\"\n className={cn(\"flex items-center gap-1\", className)}\n {...props}\n >\n {children}\n </div>\n );\n}\n\n// ============================================================================\n// ToolbarSeparator\n// ============================================================================\n\nexport interface ToolbarSeparatorProps extends React.ComponentProps<\"div\"> {}\n\n/**\n * ToolbarSeparator - Vertical separator between toolbar sections\n */\nexport function ToolbarSeparator({\n className,\n ...props\n}: ToolbarSeparatorProps): React.ReactElement {\n return (\n <div\n data-slot=\"toolbar-separator\"\n className={cn(\"h-4 w-px bg-border/40\", className)}\n {...props}\n />\n );\n}\n\n// ============================================================================\n// ToolbarGroup\n// ============================================================================\n\nexport interface ToolbarGroupProps extends React.ComponentProps<\"div\"> {\n /**\n * Children elements\n */\n children: React.ReactNode;\n}\n\n/**\n * ToolbarGroup - Tightly grouped toolbar buttons (no gap)\n */\nexport function ToolbarGroup({\n children,\n className,\n ...props\n}: ToolbarGroupProps): React.ReactElement {\n return (\n <div\n data-slot=\"toolbar-group\"\n className={cn(\"flex items-center\", className)}\n {...props}\n >\n {children}\n </div>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AA8BA,SAAgB,QAAQ,EACtB,UACA,WACA,GAAG,SACgC;AACnC,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,uDACA,+BACA,UACD;EACD,GAAI;EAEH;GACG;;;;;AAkBV,SAAgB,eAAe,EAC7B,UACA,WACA,GAAG,SACuC;AAC1C,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GAAG,2BAA2B,UAAU;EACnD,GAAI;EAEH;GACG;;;;;AAaV,SAAgB,iBAAiB,EAC/B,WACA,GAAG,SACyC;AAC5C,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GAAG,yBAAyB,UAAU;EACjD,GAAI;GACJ"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import { cn } from "../../lib/utils.mjs";
|
|
4
|
+
import { jsx } from "react/jsx-runtime";
|
|
5
|
+
import { Tooltip } from "@base-ui/react/tooltip";
|
|
6
|
+
|
|
7
|
+
//#region src/client/components/ui/tooltip.tsx
|
|
8
|
+
function TooltipProvider({ delay = 0, ...props }) {
|
|
9
|
+
return /* @__PURE__ */ jsx(Tooltip.Provider, {
|
|
10
|
+
"data-slot": "tooltip-provider",
|
|
11
|
+
delay,
|
|
12
|
+
...props
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
function Tooltip$1({ ...props }) {
|
|
16
|
+
return /* @__PURE__ */ jsx(TooltipProvider, { children: /* @__PURE__ */ jsx(Tooltip.Root, {
|
|
17
|
+
"data-slot": "tooltip",
|
|
18
|
+
...props
|
|
19
|
+
}) });
|
|
20
|
+
}
|
|
21
|
+
function TooltipTrigger({ ...props }) {
|
|
22
|
+
return /* @__PURE__ */ jsx(Tooltip.Trigger, {
|
|
23
|
+
"data-slot": "tooltip-trigger",
|
|
24
|
+
...props
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
function TooltipContent({ className, side = "top", sideOffset = 4, align = "center", alignOffset = 0, children, ...props }) {
|
|
28
|
+
return /* @__PURE__ */ jsx(Tooltip.Portal, { children: /* @__PURE__ */ jsx(Tooltip.Positioner, {
|
|
29
|
+
align,
|
|
30
|
+
alignOffset,
|
|
31
|
+
side,
|
|
32
|
+
sideOffset,
|
|
33
|
+
className: "isolate z-50",
|
|
34
|
+
children: /* @__PURE__ */ jsx(Tooltip.Popup, {
|
|
35
|
+
"data-slot": "tooltip-content",
|
|
36
|
+
className: cn("data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-[state=delayed-open]:animate-in data-[state=delayed-open]:fade-in-0 data-[state=delayed-open]:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 rounded-md px-3 py-1.5 text-xs bg-foreground text-background z-50 w-fit max-w-xs origin-(--transform-origin)", "bg-card/10 backdrop-blur-md border text-foreground border-border/60", className),
|
|
37
|
+
...props,
|
|
38
|
+
children
|
|
39
|
+
})
|
|
40
|
+
}) });
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
//#endregion
|
|
44
|
+
export { Tooltip$1 as Tooltip, TooltipContent, TooltipTrigger };
|
|
45
|
+
//# sourceMappingURL=tooltip.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tooltip.mjs","names":["TooltipPrimitive","Tooltip"],"sources":["../../../../src/client/components/ui/tooltip.tsx"],"sourcesContent":["\"use client\";\n\nimport { cn } from \"#questpie/admin/client/lib/utils.js\";\nimport { Tooltip as TooltipPrimitive } from \"@base-ui/react/tooltip\";\n\nfunction TooltipProvider({\n delay = 0,\n ...props\n}: TooltipPrimitive.Provider.Props) {\n return (\n <TooltipPrimitive.Provider\n data-slot=\"tooltip-provider\"\n delay={delay}\n {...props}\n />\n );\n}\n\nfunction Tooltip({ ...props }: TooltipPrimitive.Root.Props) {\n return (\n <TooltipProvider>\n <TooltipPrimitive.Root data-slot=\"tooltip\" {...props} />\n </TooltipProvider>\n );\n}\n\nfunction TooltipTrigger({ ...props }: TooltipPrimitive.Trigger.Props) {\n return <TooltipPrimitive.Trigger data-slot=\"tooltip-trigger\" {...props} />;\n}\n\nfunction TooltipContent({\n className,\n side = \"top\",\n sideOffset = 4,\n align = \"center\",\n alignOffset = 0,\n children,\n ...props\n}: TooltipPrimitive.Popup.Props &\n Pick<\n TooltipPrimitive.Positioner.Props,\n \"align\" | \"alignOffset\" | \"side\" | \"sideOffset\"\n >) {\n return (\n <TooltipPrimitive.Portal>\n <TooltipPrimitive.Positioner\n align={align}\n alignOffset={alignOffset}\n side={side}\n sideOffset={sideOffset}\n className=\"isolate z-50\"\n >\n <TooltipPrimitive.Popup\n data-slot=\"tooltip-content\"\n className={cn(\n \"data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-[state=delayed-open]:animate-in data-[state=delayed-open]:fade-in-0 data-[state=delayed-open]:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 rounded-md px-3 py-1.5 text-xs bg-foreground text-background z-50 w-fit max-w-xs origin-(--transform-origin)\",\n \"bg-card/10 backdrop-blur-md border text-foreground border-border/60\",\n className,\n )}\n {...props}\n >\n {children}\n {/* <TooltipPrimitive.Arrow\n\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\"size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px] z-50 data-[side=bottom]:top-1 data-[side=left]:top-1/2! data-[side=left]:-right-1 data-[side=left]:-translate-y-1/2 data-[side=right]:top-1/2! data-[side=right]:-left-1 data-[side=right]:-translate-y-1/2 data-[side=top]:-bottom-2.5\",\n\t\t\t\t\t\t\t\"bg-card/10 fill-card/10 backdrop-blur-md border-border/60\",\n\t\t\t\t\t\t)}\n\t\t\t\t\t/> */}\n </TooltipPrimitive.Popup>\n </TooltipPrimitive.Positioner>\n </TooltipPrimitive.Portal>\n );\n}\n\nexport { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider };\n"],"mappings":";;;;;;;AAKA,SAAS,gBAAgB,EACvB,QAAQ,GACR,GAAG,SAC+B;AAClC,QACE,oBAACA,QAAiB;EAChB,aAAU;EACH;EACP,GAAI;GACJ;;AAIN,SAASC,UAAQ,EAAE,GAAG,SAAsC;AAC1D,QACE,oBAAC,6BACC,oBAACD,QAAiB;EAAK,aAAU;EAAU,GAAI;GAAS,GACxC;;AAItB,SAAS,eAAe,EAAE,GAAG,SAAyC;AACpE,QAAO,oBAACA,QAAiB;EAAQ,aAAU;EAAkB,GAAI;GAAS;;AAG5E,SAAS,eAAe,EACtB,WACA,OAAO,OACP,aAAa,GACb,QAAQ,UACR,cAAc,GACd,UACA,GAAG,SAKA;AACH,QACE,oBAACA,QAAiB,oBAChB,oBAACA,QAAiB;EACT;EACM;EACP;EACM;EACZ,WAAU;YAEV,oBAACA,QAAiB;GAChB,aAAU;GACV,WAAW,GACT,+fACA,uEACA,UACD;GACD,GAAI;GAEH;IAOsB;GACG,GACN"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import * as react_jsx_runtime37 from "react/jsx-runtime";
|
|
2
|
+
|
|
3
|
+
//#region src/client/components/widgets/chart-widget.d.ts
|
|
4
|
+
declare namespace chart_widget_d_exports {
|
|
5
|
+
export { ChartWidgetConfig, ChartWidgetProps, ChartWidget as default };
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Chart Widget
|
|
9
|
+
*
|
|
10
|
+
* Displays data visualization over time.
|
|
11
|
+
* Uses WidgetCard for consistent styling.
|
|
12
|
+
*/
|
|
13
|
+
/**
|
|
14
|
+
* Chart widget config (local type for component props)
|
|
15
|
+
*/
|
|
16
|
+
type ChartWidgetConfig = {
|
|
17
|
+
id: string;
|
|
18
|
+
collection: string;
|
|
19
|
+
/** Field to aggregate by (e.g., "createdAt" for time series, "status" for categories) */
|
|
20
|
+
field: string;
|
|
21
|
+
chartType?: "line" | "bar" | "area" | "pie";
|
|
22
|
+
timeRange?: "7d" | "30d" | "90d" | "1y";
|
|
23
|
+
label?: string;
|
|
24
|
+
realtime?: boolean;
|
|
25
|
+
/** Color for the chart (CSS color value) */
|
|
26
|
+
color?: string;
|
|
27
|
+
/** Show grid lines */
|
|
28
|
+
showGrid?: boolean;
|
|
29
|
+
/** Aggregation type */
|
|
30
|
+
aggregation?: "count" | "sum" | "average";
|
|
31
|
+
/** Value field for sum/average aggregation */
|
|
32
|
+
valueField?: string;
|
|
33
|
+
/** Server has a fetchFn for this widget */
|
|
34
|
+
hasFetchFn?: boolean;
|
|
35
|
+
/** Refresh interval in ms */
|
|
36
|
+
refreshInterval?: number;
|
|
37
|
+
};
|
|
38
|
+
/**
|
|
39
|
+
* Chart widget props
|
|
40
|
+
*/
|
|
41
|
+
type ChartWidgetProps = {
|
|
42
|
+
config: ChartWidgetConfig;
|
|
43
|
+
};
|
|
44
|
+
/**
|
|
45
|
+
* Chart widget component
|
|
46
|
+
*
|
|
47
|
+
* Displays:
|
|
48
|
+
* - Time series data visualization
|
|
49
|
+
* - Multiple chart types (line, bar, area, pie)
|
|
50
|
+
* - Configurable time ranges
|
|
51
|
+
*/
|
|
52
|
+
declare function ChartWidget({
|
|
53
|
+
config
|
|
54
|
+
}: ChartWidgetProps): react_jsx_runtime37.JSX.Element;
|
|
55
|
+
//#endregion
|
|
56
|
+
export { chart_widget_d_exports };
|
|
57
|
+
//# sourceMappingURL=chart-widget.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chart-widget.d.mts","names":[],"sources":["../../../../src/client/components/widgets/chart-widget.tsx"],"sourcesContent":[],"mappings":";;;;;;;;;;;;;;;AAuCY,KAAA,iBAAA,GAAiB;EA0BjB,EAAA,EAAA,MAAA;EA6CY,UAAA,EAAA,MAAW;EAAG;EAAU,KAAA,EAAA,MAAA;EAAgB,SAAA,CAAA,EAAA,MAAA,GAAA,KAAA,GAAA,MAAA,GAAA,KAAA;EAAA,SAAA,CAAA,EAAA,IAAA,GAAA,KAAA,GAAA,KAAA,GAAA,IAAA;;;;;;;;;;;;;;;;;;;KA7CpD,gBAAA;UACF;;;;;;;;;;iBA4Cc,WAAA;;GAAwB,mBAAgB,mBAAA,CAAA,GAAA,CAAA"}
|
|
@@ -0,0 +1,282 @@
|
|
|
1
|
+
import { useResolveText } from "../../i18n/hooks.mjs";
|
|
2
|
+
import { formatCollectionName } from "../../lib/utils.mjs";
|
|
3
|
+
import { useCollectionList } from "../../hooks/use-collection.mjs";
|
|
4
|
+
import { WidgetCard } from "../../views/dashboard/widget-card.mjs";
|
|
5
|
+
import { useServerWidgetData } from "../../hooks/use-server-widget-data.mjs";
|
|
6
|
+
import { ChartWidgetSkeleton } from "./widget-skeletons.mjs";
|
|
7
|
+
import * as React$1 from "react";
|
|
8
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
9
|
+
import { Area, AreaChart, Bar, BarChart, CartesianGrid, Cell, Line, LineChart, Pie, PieChart, ResponsiveContainer, Tooltip, XAxis, YAxis } from "recharts";
|
|
10
|
+
|
|
11
|
+
//#region src/client/components/widgets/chart-widget.tsx
|
|
12
|
+
/**
|
|
13
|
+
* Chart Widget
|
|
14
|
+
*
|
|
15
|
+
* Displays data visualization over time.
|
|
16
|
+
* Uses WidgetCard for consistent styling.
|
|
17
|
+
*/
|
|
18
|
+
const CHART_COLORS = [
|
|
19
|
+
"var(--color-chart-1)",
|
|
20
|
+
"var(--color-chart-2)",
|
|
21
|
+
"var(--color-chart-3)",
|
|
22
|
+
"var(--color-chart-4)",
|
|
23
|
+
"var(--color-chart-5)"
|
|
24
|
+
];
|
|
25
|
+
/**
|
|
26
|
+
* Custom tooltip component matching shadcn style
|
|
27
|
+
*/
|
|
28
|
+
function ChartTooltip({ active, payload, label }) {
|
|
29
|
+
if (!active || !payload?.length) return null;
|
|
30
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
31
|
+
className: "rounded-md border border-border bg-background px-3 py-2 text-xs shadow-md",
|
|
32
|
+
children: [/* @__PURE__ */ jsx("p", {
|
|
33
|
+
className: "font-medium text-foreground",
|
|
34
|
+
children: label
|
|
35
|
+
}), payload.map((entry) => /* @__PURE__ */ jsxs("p", {
|
|
36
|
+
className: "text-muted-foreground",
|
|
37
|
+
children: [
|
|
38
|
+
entry.name,
|
|
39
|
+
":",
|
|
40
|
+
" ",
|
|
41
|
+
/* @__PURE__ */ jsx("span", {
|
|
42
|
+
className: "font-medium text-foreground",
|
|
43
|
+
children: entry.value
|
|
44
|
+
})
|
|
45
|
+
]
|
|
46
|
+
}, String(entry.name)))]
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Chart widget component
|
|
51
|
+
*
|
|
52
|
+
* Displays:
|
|
53
|
+
* - Time series data visualization
|
|
54
|
+
* - Multiple chart types (line, bar, area, pie)
|
|
55
|
+
* - Configurable time ranges
|
|
56
|
+
*/
|
|
57
|
+
function ChartWidget({ config }) {
|
|
58
|
+
const resolveText = useResolveText();
|
|
59
|
+
const { collection, field, chartType = "area", timeRange = "30d", label, color = "var(--color-chart-1)", showGrid = true, realtime, hasFetchFn, refreshInterval } = config;
|
|
60
|
+
const serverQuery = useServerWidgetData(config.id, {
|
|
61
|
+
enabled: !!hasFetchFn,
|
|
62
|
+
refreshInterval
|
|
63
|
+
});
|
|
64
|
+
const collectionQuery = useCollectionList(collection, { limit: 1e3 }, void 0, { realtime });
|
|
65
|
+
const { isLoading, error, refetch } = hasFetchFn ? serverQuery : collectionQuery;
|
|
66
|
+
const collectionItems = hasFetchFn ? [] : Array.isArray(collectionQuery.data?.docs) ? collectionQuery.data.docs : [];
|
|
67
|
+
const displayLabel = label ? resolveText(label) : `${formatCollectionName(collection)} by ${field}`;
|
|
68
|
+
const chartData = React$1.useMemo(() => {
|
|
69
|
+
if (hasFetchFn) return serverQuery.data ?? [];
|
|
70
|
+
if (!collectionItems.length) return [];
|
|
71
|
+
const grouped = collectionItems.reduce((acc, item) => {
|
|
72
|
+
const value = item[field];
|
|
73
|
+
if (value === void 0 || value === null) return acc;
|
|
74
|
+
let key;
|
|
75
|
+
if (value instanceof Date || !isNaN(Date.parse(value))) key = formatDateForRange(new Date(value), timeRange);
|
|
76
|
+
else key = String(value);
|
|
77
|
+
acc[key] = (acc[key] || 0) + 1;
|
|
78
|
+
return acc;
|
|
79
|
+
}, {});
|
|
80
|
+
return Object.entries(grouped).map(([name, value]) => ({
|
|
81
|
+
name,
|
|
82
|
+
value
|
|
83
|
+
})).sort((a, b) => a.name.localeCompare(b.name));
|
|
84
|
+
}, [
|
|
85
|
+
hasFetchFn,
|
|
86
|
+
serverQuery.data,
|
|
87
|
+
collectionItems,
|
|
88
|
+
field,
|
|
89
|
+
timeRange
|
|
90
|
+
]);
|
|
91
|
+
const emptyContent = /* @__PURE__ */ jsx("div", {
|
|
92
|
+
className: "flex h-48 items-center justify-center text-muted-foreground",
|
|
93
|
+
children: /* @__PURE__ */ jsx("p", {
|
|
94
|
+
className: "text-sm",
|
|
95
|
+
children: "No data available"
|
|
96
|
+
})
|
|
97
|
+
});
|
|
98
|
+
const chartContent = chartData.length === 0 ? emptyContent : /* @__PURE__ */ jsx("div", {
|
|
99
|
+
className: "h-48 w-full",
|
|
100
|
+
children: /* @__PURE__ */ jsx(ResponsiveContainer, {
|
|
101
|
+
width: "100%",
|
|
102
|
+
height: "100%",
|
|
103
|
+
children: renderChart(chartType, chartData, color, showGrid)
|
|
104
|
+
})
|
|
105
|
+
});
|
|
106
|
+
return /* @__PURE__ */ jsx(WidgetCard, {
|
|
107
|
+
title: displayLabel,
|
|
108
|
+
isLoading,
|
|
109
|
+
loadingSkeleton: /* @__PURE__ */ jsx(ChartWidgetSkeleton, {}),
|
|
110
|
+
error: error instanceof Error ? error : error ? new Error(String(error)) : null,
|
|
111
|
+
onRefresh: () => refetch(),
|
|
112
|
+
children: chartContent
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Render the appropriate chart type
|
|
117
|
+
*/
|
|
118
|
+
function renderChart(type, data, color, showGrid) {
|
|
119
|
+
const commonProps = {
|
|
120
|
+
data,
|
|
121
|
+
margin: {
|
|
122
|
+
top: 5,
|
|
123
|
+
right: 5,
|
|
124
|
+
left: -20,
|
|
125
|
+
bottom: 5
|
|
126
|
+
}
|
|
127
|
+
};
|
|
128
|
+
const axisStyle = {
|
|
129
|
+
fontSize: 10,
|
|
130
|
+
fill: "var(--color-muted-foreground)"
|
|
131
|
+
};
|
|
132
|
+
switch (type) {
|
|
133
|
+
case "line": return /* @__PURE__ */ jsxs(LineChart, {
|
|
134
|
+
...commonProps,
|
|
135
|
+
children: [
|
|
136
|
+
showGrid && /* @__PURE__ */ jsx(CartesianGrid, {
|
|
137
|
+
strokeDasharray: "3 3",
|
|
138
|
+
stroke: "var(--color-border)",
|
|
139
|
+
opacity: .5
|
|
140
|
+
}),
|
|
141
|
+
/* @__PURE__ */ jsx(XAxis, {
|
|
142
|
+
dataKey: "name",
|
|
143
|
+
tick: axisStyle,
|
|
144
|
+
tickLine: false,
|
|
145
|
+
axisLine: false
|
|
146
|
+
}),
|
|
147
|
+
/* @__PURE__ */ jsx(YAxis, {
|
|
148
|
+
tick: axisStyle,
|
|
149
|
+
tickLine: false,
|
|
150
|
+
axisLine: false
|
|
151
|
+
}),
|
|
152
|
+
/* @__PURE__ */ jsx(Tooltip, { content: /* @__PURE__ */ jsx(ChartTooltip, {}) }),
|
|
153
|
+
/* @__PURE__ */ jsx(Line, {
|
|
154
|
+
type: "monotone",
|
|
155
|
+
dataKey: "value",
|
|
156
|
+
stroke: color,
|
|
157
|
+
strokeWidth: 2,
|
|
158
|
+
dot: false
|
|
159
|
+
})
|
|
160
|
+
]
|
|
161
|
+
});
|
|
162
|
+
case "bar": return /* @__PURE__ */ jsxs(BarChart, {
|
|
163
|
+
...commonProps,
|
|
164
|
+
children: [
|
|
165
|
+
showGrid && /* @__PURE__ */ jsx(CartesianGrid, {
|
|
166
|
+
strokeDasharray: "3 3",
|
|
167
|
+
stroke: "var(--color-border)",
|
|
168
|
+
opacity: .5
|
|
169
|
+
}),
|
|
170
|
+
/* @__PURE__ */ jsx(XAxis, {
|
|
171
|
+
dataKey: "name",
|
|
172
|
+
tick: axisStyle,
|
|
173
|
+
tickLine: false,
|
|
174
|
+
axisLine: false
|
|
175
|
+
}),
|
|
176
|
+
/* @__PURE__ */ jsx(YAxis, {
|
|
177
|
+
tick: axisStyle,
|
|
178
|
+
tickLine: false,
|
|
179
|
+
axisLine: false
|
|
180
|
+
}),
|
|
181
|
+
/* @__PURE__ */ jsx(Tooltip, {
|
|
182
|
+
content: /* @__PURE__ */ jsx(ChartTooltip, {}),
|
|
183
|
+
cursor: {
|
|
184
|
+
fill: "var(--color-muted)",
|
|
185
|
+
opacity: .3
|
|
186
|
+
}
|
|
187
|
+
}),
|
|
188
|
+
/* @__PURE__ */ jsx(Bar, {
|
|
189
|
+
dataKey: "value",
|
|
190
|
+
fill: color,
|
|
191
|
+
radius: [
|
|
192
|
+
2,
|
|
193
|
+
2,
|
|
194
|
+
0,
|
|
195
|
+
0
|
|
196
|
+
]
|
|
197
|
+
})
|
|
198
|
+
]
|
|
199
|
+
});
|
|
200
|
+
case "pie": return /* @__PURE__ */ jsxs(PieChart, { children: [/* @__PURE__ */ jsx(Pie, {
|
|
201
|
+
data,
|
|
202
|
+
dataKey: "value",
|
|
203
|
+
nameKey: "name",
|
|
204
|
+
cx: "50%",
|
|
205
|
+
cy: "50%",
|
|
206
|
+
outerRadius: 60,
|
|
207
|
+
label: ({ name }) => name,
|
|
208
|
+
labelLine: false,
|
|
209
|
+
stroke: "var(--color-background)",
|
|
210
|
+
strokeWidth: 2,
|
|
211
|
+
children: data.map((entry) => /* @__PURE__ */ jsx(Cell, { fill: CHART_COLORS[data.indexOf(entry) % CHART_COLORS.length] }, `cell-${entry.name}`))
|
|
212
|
+
}), /* @__PURE__ */ jsx(Tooltip, { content: /* @__PURE__ */ jsx(ChartTooltip, {}) })] });
|
|
213
|
+
case "area":
|
|
214
|
+
default: return /* @__PURE__ */ jsxs(AreaChart, {
|
|
215
|
+
...commonProps,
|
|
216
|
+
children: [
|
|
217
|
+
showGrid && /* @__PURE__ */ jsx(CartesianGrid, {
|
|
218
|
+
strokeDasharray: "3 3",
|
|
219
|
+
stroke: "var(--color-border)",
|
|
220
|
+
opacity: .5
|
|
221
|
+
}),
|
|
222
|
+
/* @__PURE__ */ jsx(XAxis, {
|
|
223
|
+
dataKey: "name",
|
|
224
|
+
tick: axisStyle,
|
|
225
|
+
tickLine: false,
|
|
226
|
+
axisLine: false
|
|
227
|
+
}),
|
|
228
|
+
/* @__PURE__ */ jsx(YAxis, {
|
|
229
|
+
tick: axisStyle,
|
|
230
|
+
tickLine: false,
|
|
231
|
+
axisLine: false
|
|
232
|
+
}),
|
|
233
|
+
/* @__PURE__ */ jsx(Tooltip, { content: /* @__PURE__ */ jsx(ChartTooltip, {}) }),
|
|
234
|
+
/* @__PURE__ */ jsx(Area, {
|
|
235
|
+
type: "monotone",
|
|
236
|
+
dataKey: "value",
|
|
237
|
+
stroke: color,
|
|
238
|
+
fill: color,
|
|
239
|
+
fillOpacity: .15
|
|
240
|
+
})
|
|
241
|
+
]
|
|
242
|
+
});
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
/**
|
|
246
|
+
* Format date based on time range for grouping
|
|
247
|
+
*/
|
|
248
|
+
function formatDateForRange(date, timeRange) {
|
|
249
|
+
const months = [
|
|
250
|
+
"Jan",
|
|
251
|
+
"Feb",
|
|
252
|
+
"Mar",
|
|
253
|
+
"Apr",
|
|
254
|
+
"May",
|
|
255
|
+
"Jun",
|
|
256
|
+
"Jul",
|
|
257
|
+
"Aug",
|
|
258
|
+
"Sep",
|
|
259
|
+
"Oct",
|
|
260
|
+
"Nov",
|
|
261
|
+
"Dec"
|
|
262
|
+
];
|
|
263
|
+
switch (timeRange) {
|
|
264
|
+
case "7d": return `${[
|
|
265
|
+
"Sun",
|
|
266
|
+
"Mon",
|
|
267
|
+
"Tue",
|
|
268
|
+
"Wed",
|
|
269
|
+
"Thu",
|
|
270
|
+
"Fri",
|
|
271
|
+
"Sat"
|
|
272
|
+
][date.getDay()]} ${date.getDate()}`;
|
|
273
|
+
case "30d": return `${months[date.getMonth()]} ${date.getDate()}`;
|
|
274
|
+
case "90d": return `W${Math.ceil(date.getDate() / 7)} ${months[date.getMonth()]}`;
|
|
275
|
+
case "1y": return `${months[date.getMonth()]} ${date.getFullYear()}`;
|
|
276
|
+
default: return `${months[date.getMonth()]} ${date.getDate()}`;
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
|
|
280
|
+
//#endregion
|
|
281
|
+
export { ChartWidget as default };
|
|
282
|
+
//# sourceMappingURL=chart-widget.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chart-widget.mjs","names":["React","key: string"],"sources":["../../../../src/client/components/widgets/chart-widget.tsx"],"sourcesContent":["/**\n * Chart Widget\n *\n * Displays data visualization over time.\n * Uses WidgetCard for consistent styling.\n */\n\nimport * as React from \"react\";\nimport {\n Area,\n AreaChart,\n Bar,\n BarChart,\n CartesianGrid,\n Cell,\n Line,\n LineChart,\n Pie,\n PieChart,\n ResponsiveContainer,\n Tooltip,\n type TooltipProps,\n XAxis,\n YAxis,\n} from \"recharts\";\nimport type {\n NameType,\n ValueType,\n} from \"recharts/types/component/DefaultTooltipContent\";\nimport { useCollectionList } from \"../../hooks/use-collection\";\nimport { useServerWidgetData } from \"../../hooks/use-server-widget-data\";\nimport { useResolveText } from \"../../i18n/hooks\";\nimport { formatCollectionName } from \"../../lib/utils\";\nimport { WidgetCard } from \"../../views/dashboard/widget-card\";\nimport { ChartWidgetSkeleton } from \"./widget-skeletons\";\n\n/**\n * Chart widget config (local type for component props)\n */\nexport type ChartWidgetConfig = {\n id: string;\n collection: string;\n /** Field to aggregate by (e.g., \"createdAt\" for time series, \"status\" for categories) */\n field: string;\n chartType?: \"line\" | \"bar\" | \"area\" | \"pie\";\n timeRange?: \"7d\" | \"30d\" | \"90d\" | \"1y\";\n label?: string;\n realtime?: boolean;\n /** Color for the chart (CSS color value) */\n color?: string;\n /** Show grid lines */\n showGrid?: boolean;\n /** Aggregation type */\n aggregation?: \"count\" | \"sum\" | \"average\";\n /** Value field for sum/average aggregation */\n valueField?: string;\n /** Server has a fetchFn for this widget */\n hasFetchFn?: boolean;\n /** Refresh interval in ms */\n refreshInterval?: number;\n};\n\n/**\n * Chart widget props\n */\nexport type ChartWidgetProps = {\n config: ChartWidgetConfig;\n};\n\n// Theme-aware chart colors using CSS variables\n// Note: CSS vars contain full oklch() value, so use var() directly\nconst CHART_COLORS = [\n \"var(--color-chart-1)\",\n \"var(--color-chart-2)\",\n \"var(--color-chart-3)\",\n \"var(--color-chart-4)\",\n \"var(--color-chart-5)\",\n];\n\n/**\n * Custom tooltip component matching shadcn style\n */\nfunction ChartTooltip({\n active,\n payload,\n label,\n}: TooltipProps<ValueType, NameType>) {\n if (!active || !payload?.length) return null;\n\n return (\n <div className=\"rounded-md border border-border bg-background px-3 py-2 text-xs shadow-md\">\n <p className=\"font-medium text-foreground\">{label}</p>\n {payload.map((entry) => (\n <p key={String(entry.name)} className=\"text-muted-foreground\">\n {entry.name}:{\" \"}\n <span className=\"font-medium text-foreground\">{entry.value}</span>\n </p>\n ))}\n </div>\n );\n}\n\n/**\n * Chart widget component\n *\n * Displays:\n * - Time series data visualization\n * - Multiple chart types (line, bar, area, pie)\n * - Configurable time ranges\n */\nexport default function ChartWidget({ config }: ChartWidgetProps) {\n const resolveText = useResolveText();\n const {\n collection,\n field,\n chartType = \"area\",\n timeRange = \"30d\",\n label,\n color = \"var(--color-chart-1)\",\n showGrid = true,\n realtime,\n hasFetchFn,\n refreshInterval,\n } = config;\n\n // Server-side data fetching (when hasFetchFn is true)\n type ChartDataPoint = { name: string; value: number };\n const serverQuery = useServerWidgetData<ChartDataPoint[]>(config.id, {\n enabled: !!hasFetchFn,\n refreshInterval,\n });\n\n // Fetch collection data (limited to 1000 items for performance)\n const collectionQuery = useCollectionList(\n collection as any,\n {\n limit: 1000,\n },\n undefined,\n { realtime },\n );\n\n const { isLoading, error, refetch } = hasFetchFn\n ? serverQuery\n : collectionQuery;\n\n // API returns PaginatedResult with { docs, totalDocs, ... }\n const collectionItems = hasFetchFn\n ? []\n : Array.isArray((collectionQuery.data as any)?.docs)\n ? (collectionQuery.data as any).docs\n : [];\n const displayLabel = label\n ? resolveText(label)\n : `${formatCollectionName(collection)} by ${field}`;\n\n // Process data for chart\n const chartData = React.useMemo(() => {\n // When using server data, it's already in the right format\n if (hasFetchFn) {\n return (serverQuery.data as ChartDataPoint[] | undefined) ?? [];\n }\n\n if (!collectionItems.length) return [];\n\n // Group by field value\n const grouped = collectionItems.reduce(\n (acc: Record<string, number>, item: any) => {\n const value = item[field];\n if (value === undefined || value === null) return acc;\n\n // For date fields, group by day/week/month based on timeRange\n let key: string;\n if (value instanceof Date || !isNaN(Date.parse(value))) {\n const date = new Date(value);\n key = formatDateForRange(date, timeRange);\n } else {\n key = String(value);\n }\n\n acc[key] = (acc[key] || 0) + 1;\n return acc;\n },\n {} as Record<string, number>,\n );\n\n // Convert to array and sort\n return Object.entries(grouped)\n .map(([name, value]) => ({ name, value: value as number }))\n .sort((a, b) => a.name.localeCompare(b.name));\n }, [hasFetchFn, serverQuery.data, collectionItems, field, timeRange]);\n\n // Empty state content\n const emptyContent = (\n <div className=\"flex h-48 items-center justify-center text-muted-foreground\">\n <p className=\"text-sm\">No data available</p>\n </div>\n );\n\n // Chart content\n const chartContent =\n chartData.length === 0 ? (\n emptyContent\n ) : (\n <div className=\"h-48 w-full\">\n <ResponsiveContainer width=\"100%\" height=\"100%\">\n {renderChart(chartType, chartData, color, showGrid)}\n </ResponsiveContainer>\n </div>\n );\n\n return (\n <WidgetCard\n title={displayLabel}\n isLoading={isLoading}\n loadingSkeleton={<ChartWidgetSkeleton />}\n error={\n error instanceof Error ? error : error ? new Error(String(error)) : null\n }\n onRefresh={() => refetch()}\n >\n {chartContent}\n </WidgetCard>\n );\n}\n\n/**\n * Render the appropriate chart type\n */\nfunction renderChart(\n type: ChartWidgetConfig[\"chartType\"],\n data: Array<{ name: string; value: number }>,\n color: string,\n showGrid: boolean,\n) {\n const commonProps = {\n data,\n margin: { top: 5, right: 5, left: -20, bottom: 5 },\n };\n\n // Use CSS color variables (already contain full oklch values)\n const axisStyle = {\n fontSize: 10,\n fill: \"var(--color-muted-foreground)\",\n };\n\n switch (type) {\n case \"line\":\n return (\n <LineChart {...commonProps}>\n {showGrid && (\n <CartesianGrid\n strokeDasharray=\"3 3\"\n stroke=\"var(--color-border)\"\n opacity={0.5}\n />\n )}\n <XAxis\n dataKey=\"name\"\n tick={axisStyle}\n tickLine={false}\n axisLine={false}\n />\n <YAxis tick={axisStyle} tickLine={false} axisLine={false} />\n <Tooltip content={<ChartTooltip />} />\n <Line\n type=\"monotone\"\n dataKey=\"value\"\n stroke={color}\n strokeWidth={2}\n dot={false}\n />\n </LineChart>\n );\n\n case \"bar\":\n return (\n <BarChart {...commonProps}>\n {showGrid && (\n <CartesianGrid\n strokeDasharray=\"3 3\"\n stroke=\"var(--color-border)\"\n opacity={0.5}\n />\n )}\n <XAxis\n dataKey=\"name\"\n tick={axisStyle}\n tickLine={false}\n axisLine={false}\n />\n <YAxis tick={axisStyle} tickLine={false} axisLine={false} />\n <Tooltip\n content={<ChartTooltip />}\n cursor={{ fill: \"var(--color-muted)\", opacity: 0.3 }}\n />\n <Bar dataKey=\"value\" fill={color} radius={[2, 2, 0, 0]} />\n </BarChart>\n );\n\n case \"pie\":\n return (\n <PieChart>\n <Pie\n data={data}\n dataKey=\"value\"\n nameKey=\"name\"\n cx=\"50%\"\n cy=\"50%\"\n outerRadius={60}\n label={({ name }) => name}\n labelLine={false}\n stroke=\"var(--color-background)\"\n strokeWidth={2}\n >\n {data.map((entry) => (\n <Cell\n key={`cell-${entry.name}`}\n fill={CHART_COLORS[data.indexOf(entry) % CHART_COLORS.length]}\n />\n ))}\n </Pie>\n <Tooltip content={<ChartTooltip />} />\n </PieChart>\n );\n\n case \"area\":\n default:\n return (\n <AreaChart {...commonProps}>\n {showGrid && (\n <CartesianGrid\n strokeDasharray=\"3 3\"\n stroke=\"var(--color-border)\"\n opacity={0.5}\n />\n )}\n <XAxis\n dataKey=\"name\"\n tick={axisStyle}\n tickLine={false}\n axisLine={false}\n />\n <YAxis tick={axisStyle} tickLine={false} axisLine={false} />\n <Tooltip content={<ChartTooltip />} />\n <Area\n type=\"monotone\"\n dataKey=\"value\"\n stroke={color}\n fill={color}\n fillOpacity={0.15}\n />\n </AreaChart>\n );\n }\n}\n\n/**\n * Format date based on time range for grouping\n */\nfunction formatDateForRange(\n date: Date,\n timeRange: ChartWidgetConfig[\"timeRange\"],\n): string {\n const months = [\n \"Jan\",\n \"Feb\",\n \"Mar\",\n \"Apr\",\n \"May\",\n \"Jun\",\n \"Jul\",\n \"Aug\",\n \"Sep\",\n \"Oct\",\n \"Nov\",\n \"Dec\",\n ];\n\n switch (timeRange) {\n case \"7d\": {\n // Group by day: \"Mon 15\"\n const days = [\"Sun\", \"Mon\", \"Tue\", \"Wed\", \"Thu\", \"Fri\", \"Sat\"];\n return `${days[date.getDay()]} ${date.getDate()}`;\n }\n\n case \"30d\":\n // Group by day: \"Jan 15\"\n return `${months[date.getMonth()]} ${date.getDate()}`;\n\n case \"90d\": {\n // Group by week: \"W1 Jan\"\n const weekNum = Math.ceil(date.getDate() / 7);\n return `W${weekNum} ${months[date.getMonth()]}`;\n }\n\n case \"1y\":\n // Group by month: \"Jan 2024\"\n return `${months[date.getMonth()]} ${date.getFullYear()}`;\n\n default:\n return `${months[date.getMonth()]} ${date.getDate()}`;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AAuEA,MAAM,eAAe;CACnB;CACA;CACA;CACA;CACA;CACD;;;;AAKD,SAAS,aAAa,EACpB,QACA,SACA,SACoC;AACpC,KAAI,CAAC,UAAU,CAAC,SAAS,OAAQ,QAAO;AAExC,QACE,qBAAC;EAAI,WAAU;aACb,oBAAC;GAAE,WAAU;aAA+B;IAAU,EACrD,QAAQ,KAAK,UACZ,qBAAC;GAA2B,WAAU;;IACnC,MAAM;IAAK;IAAE;IACd,oBAAC;KAAK,WAAU;eAA+B,MAAM;MAAa;;KAF5D,OAAO,MAAM,KAAK,CAGtB,CACJ;GACE;;;;;;;;;;AAYV,SAAwB,YAAY,EAAE,UAA4B;CAChE,MAAM,cAAc,gBAAgB;CACpC,MAAM,EACJ,YACA,OACA,YAAY,QACZ,YAAY,OACZ,OACA,QAAQ,wBACR,WAAW,MACX,UACA,YACA,oBACE;CAIJ,MAAM,cAAc,oBAAsC,OAAO,IAAI;EACnE,SAAS,CAAC,CAAC;EACX;EACD,CAAC;CAGF,MAAM,kBAAkB,kBACtB,YACA,EACE,OAAO,KACR,EACD,QACA,EAAE,UAAU,CACb;CAED,MAAM,EAAE,WAAW,OAAO,YAAY,aAClC,cACA;CAGJ,MAAM,kBAAkB,aACpB,EAAE,GACF,MAAM,QAAS,gBAAgB,MAAc,KAAK,GAC/C,gBAAgB,KAAa,OAC9B,EAAE;CACR,MAAM,eAAe,QACjB,YAAY,MAAM,GAClB,GAAG,qBAAqB,WAAW,CAAC,MAAM;CAG9C,MAAM,YAAYA,QAAM,cAAc;AAEpC,MAAI,WACF,QAAQ,YAAY,QAAyC,EAAE;AAGjE,MAAI,CAAC,gBAAgB,OAAQ,QAAO,EAAE;EAGtC,MAAM,UAAU,gBAAgB,QAC7B,KAA6B,SAAc;GAC1C,MAAM,QAAQ,KAAK;AACnB,OAAI,UAAU,UAAa,UAAU,KAAM,QAAO;GAGlD,IAAIC;AACJ,OAAI,iBAAiB,QAAQ,CAAC,MAAM,KAAK,MAAM,MAAM,CAAC,CAEpD,OAAM,mBADO,IAAI,KAAK,MAAM,EACG,UAAU;OAEzC,OAAM,OAAO,MAAM;AAGrB,OAAI,QAAQ,IAAI,QAAQ,KAAK;AAC7B,UAAO;KAET,EAAE,CACH;AAGD,SAAO,OAAO,QAAQ,QAAQ,CAC3B,KAAK,CAAC,MAAM,YAAY;GAAE;GAAa;GAAiB,EAAE,CAC1D,MAAM,GAAG,MAAM,EAAE,KAAK,cAAc,EAAE,KAAK,CAAC;IAC9C;EAAC;EAAY,YAAY;EAAM;EAAiB;EAAO;EAAU,CAAC;CAGrE,MAAM,eACJ,oBAAC;EAAI,WAAU;YACb,oBAAC;GAAE,WAAU;aAAU;IAAqB;GACxC;CAIR,MAAM,eACJ,UAAU,WAAW,IACnB,eAEA,oBAAC;EAAI,WAAU;YACb,oBAAC;GAAoB,OAAM;GAAO,QAAO;aACtC,YAAY,WAAW,WAAW,OAAO,SAAS;IAC/B;GAClB;AAGV,QACE,oBAAC;EACC,OAAO;EACI;EACX,iBAAiB,oBAAC,wBAAsB;EACxC,OACE,iBAAiB,QAAQ,QAAQ,QAAQ,IAAI,MAAM,OAAO,MAAM,CAAC,GAAG;EAEtE,iBAAiB,SAAS;YAEzB;GACU;;;;;AAOjB,SAAS,YACP,MACA,MACA,OACA,UACA;CACA,MAAM,cAAc;EAClB;EACA,QAAQ;GAAE,KAAK;GAAG,OAAO;GAAG,MAAM;GAAK,QAAQ;GAAG;EACnD;CAGD,MAAM,YAAY;EAChB,UAAU;EACV,MAAM;EACP;AAED,SAAQ,MAAR;EACE,KAAK,OACH,QACE,qBAAC;GAAU,GAAI;;IACZ,YACC,oBAAC;KACC,iBAAgB;KAChB,QAAO;KACP,SAAS;MACT;IAEJ,oBAAC;KACC,SAAQ;KACR,MAAM;KACN,UAAU;KACV,UAAU;MACV;IACF,oBAAC;KAAM,MAAM;KAAW,UAAU;KAAO,UAAU;MAAS;IAC5D,oBAAC,WAAQ,SAAS,oBAAC,iBAAe,GAAI;IACtC,oBAAC;KACC,MAAK;KACL,SAAQ;KACR,QAAQ;KACR,aAAa;KACb,KAAK;MACL;;IACQ;EAGhB,KAAK,MACH,QACE,qBAAC;GAAS,GAAI;;IACX,YACC,oBAAC;KACC,iBAAgB;KAChB,QAAO;KACP,SAAS;MACT;IAEJ,oBAAC;KACC,SAAQ;KACR,MAAM;KACN,UAAU;KACV,UAAU;MACV;IACF,oBAAC;KAAM,MAAM;KAAW,UAAU;KAAO,UAAU;MAAS;IAC5D,oBAAC;KACC,SAAS,oBAAC,iBAAe;KACzB,QAAQ;MAAE,MAAM;MAAsB,SAAS;MAAK;MACpD;IACF,oBAAC;KAAI,SAAQ;KAAQ,MAAM;KAAO,QAAQ;MAAC;MAAG;MAAG;MAAG;MAAE;MAAI;;IACjD;EAGf,KAAK,MACH,QACE,qBAAC,uBACC,oBAAC;GACO;GACN,SAAQ;GACR,SAAQ;GACR,IAAG;GACH,IAAG;GACH,aAAa;GACb,QAAQ,EAAE,WAAW;GACrB,WAAW;GACX,QAAO;GACP,aAAa;aAEZ,KAAK,KAAK,UACT,oBAAC,QAEC,MAAM,aAAa,KAAK,QAAQ,MAAM,GAAG,aAAa,WADjD,QAAQ,MAAM,OAEnB,CACF;IACE,EACN,oBAAC,WAAQ,SAAS,oBAAC,iBAAe,GAAI,IAC7B;EAGf,KAAK;EACL,QACE,QACE,qBAAC;GAAU,GAAI;;IACZ,YACC,oBAAC;KACC,iBAAgB;KAChB,QAAO;KACP,SAAS;MACT;IAEJ,oBAAC;KACC,SAAQ;KACR,MAAM;KACN,UAAU;KACV,UAAU;MACV;IACF,oBAAC;KAAM,MAAM;KAAW,UAAU;KAAO,UAAU;MAAS;IAC5D,oBAAC,WAAQ,SAAS,oBAAC,iBAAe,GAAI;IACtC,oBAAC;KACC,MAAK;KACL,SAAQ;KACR,QAAQ;KACR,MAAM;KACN,aAAa;MACb;;IACQ;;;;;;AAQpB,SAAS,mBACP,MACA,WACQ;CACR,MAAM,SAAS;EACb;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD;AAED,SAAQ,WAAR;EACE,KAAK,KAGH,QAAO,GADM;GAAC;GAAO;GAAO;GAAO;GAAO;GAAO;GAAO;GAAM,CAC/C,KAAK,QAAQ,EAAE,GAAG,KAAK,SAAS;EAGjD,KAAK,MAEH,QAAO,GAAG,OAAO,KAAK,UAAU,EAAE,GAAG,KAAK,SAAS;EAErD,KAAK,MAGH,QAAO,IADS,KAAK,KAAK,KAAK,SAAS,GAAG,EAAE,CAC1B,GAAG,OAAO,KAAK,UAAU;EAG9C,KAAK,KAEH,QAAO,GAAG,OAAO,KAAK,UAAU,EAAE,GAAG,KAAK,aAAa;EAEzD,QACE,QAAO,GAAG,OAAO,KAAK,UAAU,EAAE,GAAG,KAAK,SAAS"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { ProgressWidgetConfig } from "../../builder/types/widget-types.mjs";
|
|
2
|
+
import * as react_jsx_runtime38 from "react/jsx-runtime";
|
|
3
|
+
|
|
4
|
+
//#region src/client/components/widgets/progress-widget.d.ts
|
|
5
|
+
declare namespace progress_widget_d_exports {
|
|
6
|
+
export { ProgressWidgetProps, ProgressWidget as default };
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Progress widget props
|
|
10
|
+
*/
|
|
11
|
+
interface ProgressWidgetProps {
|
|
12
|
+
config: ProgressWidgetConfig;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Progress Widget Component
|
|
16
|
+
*
|
|
17
|
+
* Displays a progress bar with current/target values.
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```tsx
|
|
21
|
+
* <ProgressWidget
|
|
22
|
+
* config={{
|
|
23
|
+
* type: "progress",
|
|
24
|
+
* id: "monthly-sales",
|
|
25
|
+
* title: "Monthly Sales Goal",
|
|
26
|
+
* fetchFn: async (client) => ({
|
|
27
|
+
* current: 75000,
|
|
28
|
+
* target: 100000,
|
|
29
|
+
* label: "$75,000 / $100,000"
|
|
30
|
+
* }),
|
|
31
|
+
* showPercentage: true,
|
|
32
|
+
* }}
|
|
33
|
+
* />
|
|
34
|
+
* ```
|
|
35
|
+
*/
|
|
36
|
+
declare function ProgressWidget({
|
|
37
|
+
config
|
|
38
|
+
}: ProgressWidgetProps): react_jsx_runtime38.JSX.Element;
|
|
39
|
+
//#endregion
|
|
40
|
+
export { progress_widget_d_exports };
|
|
41
|
+
//# sourceMappingURL=progress-widget.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"progress-widget.d.mts","names":[],"sources":["../../../../src/client/components/widgets/progress-widget.tsx"],"sourcesContent":[],"mappings":";;;;;;;;;AAmBA;AA0BwB,UA1BP,mBAAA,CA0BqB;EAAG,MAAA,EAzBhC,oBAyBgC;;;;;;;;;;;;;;;;;;;;;;;;iBAAjB,cAAA;;GAA2B,sBAAmB,mBAAA,CAAA,GAAA,CAAA"}
|