@questpie/admin 1.1.0 → 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-B7r47hEd.d.mts +0 -13403
- package/dist/client-B7r47hEd.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-BYyqkWtn.d.mts +0 -2753
- package/dist/index-BYyqkWtn.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,48 @@
|
|
|
1
|
+
import { BlockNode, BlockValues, BlocksDocument, BlocksFieldConfig, BlocksFieldMeta, blocksField } from "./blocks.mjs";
|
|
2
|
+
import { RichTextFeature, RichTextFieldConfig, RichTextFieldMeta, TipTapDocument, TipTapNode, richTextField } from "./rich-text.mjs";
|
|
3
|
+
import * as zod1802 from "zod";
|
|
4
|
+
import * as questpie10338 from "questpie";
|
|
5
|
+
import * as better_auth201 from "better-auth";
|
|
6
|
+
|
|
7
|
+
//#region src/server/fields/index.d.ts
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Admin field types to be registered with the field registry.
|
|
11
|
+
* These are automatically registered when adminModule is used.
|
|
12
|
+
*/
|
|
13
|
+
declare const adminFields: {
|
|
14
|
+
readonly richText: {
|
|
15
|
+
readonly type: "richText";
|
|
16
|
+
readonly _value: TipTapDocument;
|
|
17
|
+
readonly toColumn: (_name: string, config: RichTextFieldConfig) => any;
|
|
18
|
+
readonly toZodSchema: (config: RichTextFieldConfig) => any;
|
|
19
|
+
readonly getOperators: <TApp>() => questpie10338.ContextualOperators<questpie10338.OperatorMap, questpie10338.OperatorMap>;
|
|
20
|
+
readonly getMetadata: (config: RichTextFieldConfig) => questpie10338.FieldMetadataBase & {
|
|
21
|
+
maxCharacters?: number;
|
|
22
|
+
minCharacters?: number;
|
|
23
|
+
features: RichTextFeature[];
|
|
24
|
+
headingLevels: (1 | 2 | 3 | 4 | 5 | 6)[];
|
|
25
|
+
placeholder?: string;
|
|
26
|
+
allowImages?: boolean;
|
|
27
|
+
imageCollection?: string;
|
|
28
|
+
};
|
|
29
|
+
};
|
|
30
|
+
readonly blocks: {
|
|
31
|
+
readonly type: "blocks";
|
|
32
|
+
readonly _value: BlocksDocument;
|
|
33
|
+
readonly toColumn: (_name: string, config: BlocksFieldConfig) => any;
|
|
34
|
+
readonly toZodSchema: (config: BlocksFieldConfig) => zod1802.ZodType<BlocksDocument | null | undefined, unknown, better_auth201.$ZodTypeInternals<BlocksDocument | null | undefined, unknown>>;
|
|
35
|
+
readonly getOperators: <TApp>() => questpie10338.ContextualOperators<questpie10338.OperatorMap, questpie10338.OperatorMap>;
|
|
36
|
+
readonly getMetadata: (config: BlocksFieldConfig) => questpie10338.FieldMetadataBase & {
|
|
37
|
+
allowedBlocks?: string[];
|
|
38
|
+
minBlocks?: number;
|
|
39
|
+
maxBlocks?: number;
|
|
40
|
+
allowNesting: boolean;
|
|
41
|
+
maxDepth: number;
|
|
42
|
+
placeholder?: string;
|
|
43
|
+
};
|
|
44
|
+
};
|
|
45
|
+
};
|
|
46
|
+
//#endregion
|
|
47
|
+
export { adminFields };
|
|
48
|
+
//# sourceMappingURL=index.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../../../src/server/fields/index.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;;;cAgDa;;;qBAGH"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { blocksField } from "./blocks.mjs";
|
|
2
|
+
import { richTextField } from "./rich-text.mjs";
|
|
3
|
+
|
|
4
|
+
//#region src/server/fields/index.ts
|
|
5
|
+
/**
|
|
6
|
+
* Admin field types to be registered with the field registry.
|
|
7
|
+
* These are automatically registered when adminModule is used.
|
|
8
|
+
*/
|
|
9
|
+
const adminFields = {
|
|
10
|
+
richText: richTextField,
|
|
11
|
+
blocks: blocksField
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
//#endregion
|
|
15
|
+
export { adminFields };
|
|
16
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","names":[],"sources":["../../../src/server/fields/index.ts"],"sourcesContent":["/**\n * Admin Field Types\n *\n * Additional field types provided by the admin module.\n * These fields are registered automatically when adminModule is used.\n *\n * @example\n * ```ts\n * import { q } from \"questpie\";\n * import { adminModule } from \"@questpie/admin/server\";\n *\n * const cms = q({ name: \"my-cms\" })\n * .use(adminModule) // Registers richText and blocks fields\n * .collections({\n * pages: q.collection(\"pages\").fields((f) => ({\n * title: f.text({ required: true }),\n * content: f.richText({ features: [\"bold\", \"italic\", \"link\"] }),\n * sections: f.blocks({ allowedBlocks: [\"hero\", \"text\"] }),\n * })),\n * });\n * ```\n */\n\n// Export types\nexport type {\n BlockNode,\n BlocksDocument,\n BlocksFieldMeta,\n BlockValues,\n} from \"./blocks.js\";\n// Export field factories\nexport { type BlocksFieldConfig, blocksField } from \"./blocks.js\";\nexport type {\n RichTextFeature,\n RichTextFieldMeta,\n TipTapDocument,\n TipTapNode,\n} from \"./rich-text.js\";\nexport { type RichTextFieldConfig, richTextField } from \"./rich-text.js\";\n\n// Import for adminFields record\nimport { blocksField } from \"./blocks.js\";\nimport { richTextField } from \"./rich-text.js\";\n\n/**\n * Admin field types to be registered with the field registry.\n * These are automatically registered when adminModule is used.\n */\nexport const adminFields = {\n richText: richTextField,\n blocks: blocksField,\n} as const;\n"],"mappings":";;;;;;;;AAgDA,MAAa,cAAc;CACzB,UAAU;CACV,QAAQ;CACT"}
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
import * as questpie18984 from "questpie";
|
|
2
|
+
import { BaseFieldConfig, ContextualOperators, FieldMetadataBase } from "questpie";
|
|
3
|
+
|
|
4
|
+
//#region src/server/fields/rich-text.d.ts
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* TipTap node type.
|
|
8
|
+
* Represents a single node in the document tree.
|
|
9
|
+
*/
|
|
10
|
+
interface TipTapNode {
|
|
11
|
+
type: string;
|
|
12
|
+
attrs?: Record<string, any>;
|
|
13
|
+
content?: TipTapNode[];
|
|
14
|
+
marks?: Array<{
|
|
15
|
+
type: string;
|
|
16
|
+
attrs?: Record<string, any>;
|
|
17
|
+
}>;
|
|
18
|
+
text?: string;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* TipTap document structure.
|
|
22
|
+
* Root node always has type "doc".
|
|
23
|
+
*/
|
|
24
|
+
interface TipTapDocument {
|
|
25
|
+
type: "doc";
|
|
26
|
+
content?: TipTapNode[];
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Rich text field metadata - augmentable by external packages.
|
|
30
|
+
*
|
|
31
|
+
* @example Admin augmentation:
|
|
32
|
+
* ```ts
|
|
33
|
+
* declare module "@questpie/admin/server" {
|
|
34
|
+
* interface RichTextFieldMeta {
|
|
35
|
+
* admin?: {
|
|
36
|
+
* placeholder?: string;
|
|
37
|
+
* showCharacterCount?: boolean;
|
|
38
|
+
* }
|
|
39
|
+
* }
|
|
40
|
+
* }
|
|
41
|
+
* ```
|
|
42
|
+
*/
|
|
43
|
+
interface RichTextFieldMeta {
|
|
44
|
+
/** Phantom property to prevent interface collapse - enables module augmentation */
|
|
45
|
+
_?: never;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Available rich text editor features.
|
|
49
|
+
*/
|
|
50
|
+
type RichTextFeature = "bold" | "italic" | "underline" | "strike" | "code" | "subscript" | "superscript" | "heading" | "bulletList" | "orderedList" | "taskList" | "blockquote" | "codeBlock" | "horizontalRule" | "link" | "image" | "table" | "textAlign" | "textColor" | "highlight" | "mention";
|
|
51
|
+
/**
|
|
52
|
+
* Rich text field configuration options.
|
|
53
|
+
*/
|
|
54
|
+
interface RichTextFieldConfig extends BaseFieldConfig {
|
|
55
|
+
/** Field-specific metadata, augmentable by external packages. */
|
|
56
|
+
meta?: RichTextFieldMeta;
|
|
57
|
+
/**
|
|
58
|
+
* Maximum character count (excluding formatting).
|
|
59
|
+
* When set, shows character counter in editor.
|
|
60
|
+
*/
|
|
61
|
+
maxCharacters?: number;
|
|
62
|
+
/**
|
|
63
|
+
* Minimum character count (excluding formatting).
|
|
64
|
+
*/
|
|
65
|
+
minCharacters?: number;
|
|
66
|
+
/**
|
|
67
|
+
* Enabled editor features.
|
|
68
|
+
* If not specified, uses a sensible default set.
|
|
69
|
+
* @default ["bold", "italic", "link", "heading", "bulletList", "orderedList"]
|
|
70
|
+
*/
|
|
71
|
+
features?: RichTextFeature[];
|
|
72
|
+
/**
|
|
73
|
+
* Allowed heading levels when heading feature is enabled.
|
|
74
|
+
* @default [1, 2, 3]
|
|
75
|
+
*/
|
|
76
|
+
headingLevels?: (1 | 2 | 3 | 4 | 5 | 6)[];
|
|
77
|
+
/**
|
|
78
|
+
* Placeholder text shown when editor is empty.
|
|
79
|
+
*/
|
|
80
|
+
placeholder?: string;
|
|
81
|
+
/**
|
|
82
|
+
* Allow uploading/embedding images.
|
|
83
|
+
* Requires storage configuration.
|
|
84
|
+
*/
|
|
85
|
+
allowImages?: boolean;
|
|
86
|
+
/**
|
|
87
|
+
* Collection to use for image uploads.
|
|
88
|
+
* Defaults to "assets" if storage is configured.
|
|
89
|
+
*/
|
|
90
|
+
imageCollection?: string;
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Rich text field factory.
|
|
94
|
+
* Creates a TipTap-based rich text editor field.
|
|
95
|
+
*
|
|
96
|
+
* @example
|
|
97
|
+
* ```ts
|
|
98
|
+
* // Basic rich text
|
|
99
|
+
* const content = richTextField({ label: "Content" });
|
|
100
|
+
*
|
|
101
|
+
* // With all features
|
|
102
|
+
* const richContent = richTextField({
|
|
103
|
+
* label: "Article Content",
|
|
104
|
+
* features: ["bold", "italic", "underline", "heading", "bulletList", "orderedList", "link", "image", "blockquote", "codeBlock"],
|
|
105
|
+
* maxCharacters: 50000,
|
|
106
|
+
* allowImages: true,
|
|
107
|
+
* });
|
|
108
|
+
*
|
|
109
|
+
* // Minimal editor
|
|
110
|
+
* const bio = richTextField({
|
|
111
|
+
* label: "Bio",
|
|
112
|
+
* features: ["bold", "italic", "link"],
|
|
113
|
+
* maxCharacters: 500,
|
|
114
|
+
* });
|
|
115
|
+
* ```
|
|
116
|
+
*/
|
|
117
|
+
declare const richTextField: {
|
|
118
|
+
readonly type: "richText";
|
|
119
|
+
readonly _value: TipTapDocument;
|
|
120
|
+
readonly toColumn: (_name: string, config: RichTextFieldConfig) => any;
|
|
121
|
+
readonly toZodSchema: (config: RichTextFieldConfig) => any;
|
|
122
|
+
readonly getOperators: <TApp>() => ContextualOperators<questpie18984.OperatorMap, questpie18984.OperatorMap>;
|
|
123
|
+
readonly getMetadata: (config: RichTextFieldConfig) => FieldMetadataBase & {
|
|
124
|
+
maxCharacters?: number;
|
|
125
|
+
minCharacters?: number;
|
|
126
|
+
features: RichTextFeature[];
|
|
127
|
+
headingLevels: (1 | 2 | 3 | 4 | 5 | 6)[];
|
|
128
|
+
placeholder?: string;
|
|
129
|
+
allowImages?: boolean;
|
|
130
|
+
imageCollection?: string;
|
|
131
|
+
};
|
|
132
|
+
};
|
|
133
|
+
//#endregion
|
|
134
|
+
export { RichTextFeature, RichTextFieldConfig, RichTextFieldMeta, TipTapDocument, TipTapNode, richTextField };
|
|
135
|
+
//# sourceMappingURL=rich-text.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rich-text.d.mts","names":[],"sources":["../../../src/server/fields/rich-text.ts"],"sourcesContent":[],"mappings":";;;;;;AA4CA;AAwBA;AAYA;AA0BiB,UA7EA,UAAA,CA6EoB;EAE5B,IAAA,EAAA,MAAA;EAkBI,KAAA,CAAA,EA/FH,MA+FG,CAAA,MAAA,EAAA,GAAA,CAAA;EApBgC,OAAA,CAAA,EA1EjC,UA0EiC,EAAA;EAAe,KAAA,CAAA,EAzElD,KAyEkD,CAAA;IAiL/C,IAAA,EAAA,MA2FZ;IAxFmC,KAAA,CAAA,EA3PxB,MA2PwB,CAAA,MAAA,EAAA,GAAA,CAAA;EAEA,CAAA,CAAA;EAmBZ,IAAA,CAAA,EAAA,MAAA;;;;;;AAyCR,UAhTC,cAAA,CAgTD;EAAe,IAAA,EAAA,KAAA;YA9SnB;;;;;;;;;;;;;;;;;UAsBK,iBAAA;;;;;;;KAYL,eAAA;;;;UA0BK,mBAAA,SAA4B;;SAEpC;;;;;;;;;;;;;;;aAkBI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cA6JA;;mBAGuB;6CAEA;iCAmBZ;qCAkCH,oBAlCsB,aAAA,CAkCtB,WAAA,EAAA,aAAA,CAAA,WAAA;iCAIG,wBAAsB;;;cAG9B"}
|
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { field, isNotNull, isNull, jsonb, sql } from "questpie";
|
|
3
|
+
|
|
4
|
+
//#region src/server/fields/rich-text.ts
|
|
5
|
+
/**
|
|
6
|
+
* Rich Text Field Type
|
|
7
|
+
*
|
|
8
|
+
* TipTap-based WYSIWYG editor field stored as JSONB.
|
|
9
|
+
* Provides structured rich text editing with configurable features.
|
|
10
|
+
*
|
|
11
|
+
* This field type is only available when using adminModule.
|
|
12
|
+
*/
|
|
13
|
+
/**
|
|
14
|
+
* Get operators for rich text field.
|
|
15
|
+
* Provides text search within the JSON structure.
|
|
16
|
+
*/
|
|
17
|
+
function getRichTextOperators() {
|
|
18
|
+
return {
|
|
19
|
+
column: {
|
|
20
|
+
contains: (col, value) => {
|
|
21
|
+
return sql`EXISTS (
|
|
22
|
+
SELECT 1 FROM jsonb_array_elements_text(
|
|
23
|
+
jsonb_path_query_array(${col}, '$..text')
|
|
24
|
+
) AS t
|
|
25
|
+
WHERE t ILIKE ${"%" + value + "%"}
|
|
26
|
+
)`;
|
|
27
|
+
},
|
|
28
|
+
isEmpty: (col) => sql`(
|
|
29
|
+
${col} IS NULL
|
|
30
|
+
OR ${col} = '{"type":"doc"}'::jsonb
|
|
31
|
+
OR ${col} = '{"type":"doc","content":[]}'::jsonb
|
|
32
|
+
OR NOT EXISTS (
|
|
33
|
+
SELECT 1 FROM jsonb_array_elements_text(
|
|
34
|
+
jsonb_path_query_array(${col}, '$..text')
|
|
35
|
+
) AS t
|
|
36
|
+
WHERE length(trim(t)) > 0
|
|
37
|
+
)
|
|
38
|
+
)`,
|
|
39
|
+
isNotEmpty: (col) => sql`(
|
|
40
|
+
${col} IS NOT NULL
|
|
41
|
+
AND ${col} != '{"type":"doc"}'::jsonb
|
|
42
|
+
AND ${col} != '{"type":"doc","content":[]}'::jsonb
|
|
43
|
+
AND EXISTS (
|
|
44
|
+
SELECT 1 FROM jsonb_array_elements_text(
|
|
45
|
+
jsonb_path_query_array(${col}, '$..text')
|
|
46
|
+
) AS t
|
|
47
|
+
WHERE length(trim(t)) > 0
|
|
48
|
+
)
|
|
49
|
+
)`,
|
|
50
|
+
isNull: (col) => isNull(col),
|
|
51
|
+
isNotNull: (col) => isNotNull(col)
|
|
52
|
+
},
|
|
53
|
+
jsonb: {
|
|
54
|
+
contains: (col, value, ctx) => {
|
|
55
|
+
const path = ctx.jsonbPath?.join(",") ?? "";
|
|
56
|
+
return sql`EXISTS (
|
|
57
|
+
SELECT 1 FROM jsonb_array_elements_text(
|
|
58
|
+
jsonb_path_query_array(${col}#>'{${sql.raw(path)}}', '$..text')
|
|
59
|
+
) AS t
|
|
60
|
+
WHERE t ILIKE ${"%" + value + "%"}
|
|
61
|
+
)`;
|
|
62
|
+
},
|
|
63
|
+
isEmpty: (col, _value, ctx) => {
|
|
64
|
+
const path = ctx.jsonbPath?.join(",") ?? "";
|
|
65
|
+
return sql`(
|
|
66
|
+
${col}#>'{${sql.raw(path)}}' IS NULL
|
|
67
|
+
OR ${col}#>'{${sql.raw(path)}}' = '{"type":"doc"}'::jsonb
|
|
68
|
+
)`;
|
|
69
|
+
},
|
|
70
|
+
isNotEmpty: (col, _value, ctx) => {
|
|
71
|
+
const path = ctx.jsonbPath?.join(",") ?? "";
|
|
72
|
+
return sql`(
|
|
73
|
+
${col}#>'{${sql.raw(path)}}' IS NOT NULL
|
|
74
|
+
AND ${col}#>'{${sql.raw(path)}}' != '{"type":"doc"}'::jsonb
|
|
75
|
+
)`;
|
|
76
|
+
},
|
|
77
|
+
isNull: (col, _value, ctx) => {
|
|
78
|
+
const path = ctx.jsonbPath?.join(",") ?? "";
|
|
79
|
+
return sql`${col}#>'{${sql.raw(path)}}' IS NULL`;
|
|
80
|
+
},
|
|
81
|
+
isNotNull: (col, _value, ctx) => {
|
|
82
|
+
const path = ctx.jsonbPath?.join(",") ?? "";
|
|
83
|
+
return sql`${col}#>'{${sql.raw(path)}}' IS NOT NULL`;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Default features for rich text editor.
|
|
90
|
+
*/
|
|
91
|
+
const DEFAULT_FEATURES = [
|
|
92
|
+
"bold",
|
|
93
|
+
"italic",
|
|
94
|
+
"link",
|
|
95
|
+
"heading",
|
|
96
|
+
"bulletList",
|
|
97
|
+
"orderedList"
|
|
98
|
+
];
|
|
99
|
+
/**
|
|
100
|
+
* Default heading levels.
|
|
101
|
+
*/
|
|
102
|
+
const DEFAULT_HEADING_LEVELS = [
|
|
103
|
+
1,
|
|
104
|
+
2,
|
|
105
|
+
3
|
|
106
|
+
];
|
|
107
|
+
/**
|
|
108
|
+
* Rich text field factory.
|
|
109
|
+
* Creates a TipTap-based rich text editor field.
|
|
110
|
+
*
|
|
111
|
+
* @example
|
|
112
|
+
* ```ts
|
|
113
|
+
* // Basic rich text
|
|
114
|
+
* const content = richTextField({ label: "Content" });
|
|
115
|
+
*
|
|
116
|
+
* // With all features
|
|
117
|
+
* const richContent = richTextField({
|
|
118
|
+
* label: "Article Content",
|
|
119
|
+
* features: ["bold", "italic", "underline", "heading", "bulletList", "orderedList", "link", "image", "blockquote", "codeBlock"],
|
|
120
|
+
* maxCharacters: 50000,
|
|
121
|
+
* allowImages: true,
|
|
122
|
+
* });
|
|
123
|
+
*
|
|
124
|
+
* // Minimal editor
|
|
125
|
+
* const bio = richTextField({
|
|
126
|
+
* label: "Bio",
|
|
127
|
+
* features: ["bold", "italic", "link"],
|
|
128
|
+
* maxCharacters: 500,
|
|
129
|
+
* });
|
|
130
|
+
* ```
|
|
131
|
+
*/
|
|
132
|
+
const richTextField = field()({
|
|
133
|
+
type: "richText",
|
|
134
|
+
_value: void 0,
|
|
135
|
+
toColumn(_name, config) {
|
|
136
|
+
let column = jsonb();
|
|
137
|
+
if (config.required && config.nullable !== true) column = column.notNull();
|
|
138
|
+
if (config.default !== void 0) {
|
|
139
|
+
const defaultValue = typeof config.default === "function" ? config.default() : config.default;
|
|
140
|
+
column = column.default(defaultValue);
|
|
141
|
+
}
|
|
142
|
+
return column;
|
|
143
|
+
},
|
|
144
|
+
toZodSchema(config) {
|
|
145
|
+
const nodeSchema = z.lazy(() => z.object({
|
|
146
|
+
type: z.string(),
|
|
147
|
+
attrs: z.record(z.string(), z.any()).optional(),
|
|
148
|
+
content: z.array(nodeSchema).optional(),
|
|
149
|
+
marks: z.array(z.object({
|
|
150
|
+
type: z.string(),
|
|
151
|
+
attrs: z.record(z.string(), z.any()).optional()
|
|
152
|
+
})).optional(),
|
|
153
|
+
text: z.string().optional()
|
|
154
|
+
}));
|
|
155
|
+
const docSchema = z.object({
|
|
156
|
+
type: z.literal("doc"),
|
|
157
|
+
content: z.array(nodeSchema).optional()
|
|
158
|
+
});
|
|
159
|
+
if (!config.required && config.nullable !== false) return docSchema.nullish();
|
|
160
|
+
return docSchema;
|
|
161
|
+
},
|
|
162
|
+
getOperators() {
|
|
163
|
+
return getRichTextOperators();
|
|
164
|
+
},
|
|
165
|
+
getMetadata(config) {
|
|
166
|
+
return {
|
|
167
|
+
type: "richText",
|
|
168
|
+
label: config.label,
|
|
169
|
+
description: config.description,
|
|
170
|
+
required: config.required ?? false,
|
|
171
|
+
localized: config.localized ?? false,
|
|
172
|
+
readOnly: config.input === false,
|
|
173
|
+
writeOnly: config.output === false,
|
|
174
|
+
meta: config.meta,
|
|
175
|
+
maxCharacters: config.maxCharacters,
|
|
176
|
+
minCharacters: config.minCharacters,
|
|
177
|
+
features: config.features ?? DEFAULT_FEATURES,
|
|
178
|
+
headingLevels: config.headingLevels ?? DEFAULT_HEADING_LEVELS,
|
|
179
|
+
placeholder: config.placeholder,
|
|
180
|
+
allowImages: config.allowImages,
|
|
181
|
+
imageCollection: config.imageCollection
|
|
182
|
+
};
|
|
183
|
+
}
|
|
184
|
+
});
|
|
185
|
+
|
|
186
|
+
//#endregion
|
|
187
|
+
export { richTextField };
|
|
188
|
+
//# sourceMappingURL=rich-text.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rich-text.mjs","names":["DEFAULT_FEATURES: RichTextFeature[]","DEFAULT_HEADING_LEVELS: (1 | 2 | 3 | 4 | 5 | 6)[]","column: any","nodeSchema: z.ZodType<TipTapNode>"],"sources":["../../../src/server/fields/rich-text.ts"],"sourcesContent":["/**\n * Rich Text Field Type\n *\n * TipTap-based WYSIWYG editor field stored as JSONB.\n * Provides structured rich text editing with configurable features.\n *\n * This field type is only available when using adminModule.\n */\n\nimport {\n type BaseFieldConfig,\n type ContextualOperators,\n field,\n type FieldMetadataBase,\n isNotNull,\n isNull,\n jsonb,\n sql,\n} from \"questpie\";\nimport { z } from \"zod\";\n\n// ============================================================================\n// Rich Text Document Schema\n// ============================================================================\n\n/**\n * TipTap node type.\n * Represents a single node in the document tree.\n */\nexport interface TipTapNode {\n type: string;\n attrs?: Record<string, any>;\n content?: TipTapNode[];\n marks?: Array<{\n type: string;\n attrs?: Record<string, any>;\n }>;\n text?: string;\n}\n\n/**\n * TipTap document structure.\n * Root node always has type \"doc\".\n */\nexport interface TipTapDocument {\n type: \"doc\";\n content?: TipTapNode[];\n}\n\n// ============================================================================\n// Rich Text Field Meta (augmentable by admin)\n// ============================================================================\n\n/**\n * Rich text field metadata - augmentable by external packages.\n *\n * @example Admin augmentation:\n * ```ts\n * declare module \"@questpie/admin/server\" {\n * interface RichTextFieldMeta {\n * admin?: {\n * placeholder?: string;\n * showCharacterCount?: boolean;\n * }\n * }\n * }\n * ```\n */\nexport interface RichTextFieldMeta {\n /** Phantom property to prevent interface collapse - enables module augmentation */\n _?: never;\n}\n\n// ============================================================================\n// Rich Text Field Configuration\n// ============================================================================\n\n/**\n * Available rich text editor features.\n */\nexport type RichTextFeature =\n | \"bold\"\n | \"italic\"\n | \"underline\"\n | \"strike\"\n | \"code\"\n | \"subscript\"\n | \"superscript\"\n | \"heading\"\n | \"bulletList\"\n | \"orderedList\"\n | \"taskList\"\n | \"blockquote\"\n | \"codeBlock\"\n | \"horizontalRule\"\n | \"link\"\n | \"image\"\n | \"table\"\n | \"textAlign\"\n | \"textColor\"\n | \"highlight\"\n | \"mention\";\n\n/**\n * Rich text field configuration options.\n */\nexport interface RichTextFieldConfig extends BaseFieldConfig {\n /** Field-specific metadata, augmentable by external packages. */\n meta?: RichTextFieldMeta;\n\n /**\n * Maximum character count (excluding formatting).\n * When set, shows character counter in editor.\n */\n maxCharacters?: number;\n\n /**\n * Minimum character count (excluding formatting).\n */\n minCharacters?: number;\n\n /**\n * Enabled editor features.\n * If not specified, uses a sensible default set.\n * @default [\"bold\", \"italic\", \"link\", \"heading\", \"bulletList\", \"orderedList\"]\n */\n features?: RichTextFeature[];\n\n /**\n * Allowed heading levels when heading feature is enabled.\n * @default [1, 2, 3]\n */\n headingLevels?: (1 | 2 | 3 | 4 | 5 | 6)[];\n\n /**\n * Placeholder text shown when editor is empty.\n */\n placeholder?: string;\n\n /**\n * Allow uploading/embedding images.\n * Requires storage configuration.\n */\n allowImages?: boolean;\n\n /**\n * Collection to use for image uploads.\n * Defaults to \"assets\" if storage is configured.\n */\n imageCollection?: string;\n}\n\n// ============================================================================\n// Rich Text Field Operators\n// ============================================================================\n\n/**\n * Get operators for rich text field.\n * Provides text search within the JSON structure.\n */\nfunction getRichTextOperators(): ContextualOperators {\n return {\n column: {\n // Full-text search in document content\n contains: (col, value) => {\n // Search in text content using recursive CTE or JSON path\n return sql`EXISTS (\n\t\t\t\t\tSELECT 1 FROM jsonb_array_elements_text(\n\t\t\t\t\t\tjsonb_path_query_array(${col}, '$..text')\n\t\t\t\t\t) AS t\n\t\t\t\t\tWHERE t ILIKE ${\"%\" + value + \"%\"}\n\t\t\t\t)`;\n },\n // Check if document is empty (no content or only whitespace)\n isEmpty: (col) =>\n sql`(\n\t\t\t\t\t${col} IS NULL \n\t\t\t\t\tOR ${col} = '{\"type\":\"doc\"}'::jsonb \n\t\t\t\t\tOR ${col} = '{\"type\":\"doc\",\"content\":[]}'::jsonb\n\t\t\t\t\tOR NOT EXISTS (\n\t\t\t\t\t\tSELECT 1 FROM jsonb_array_elements_text(\n\t\t\t\t\t\t\tjsonb_path_query_array(${col}, '$..text')\n\t\t\t\t\t\t) AS t\n\t\t\t\t\t\tWHERE length(trim(t)) > 0\n\t\t\t\t\t)\n\t\t\t\t)`,\n isNotEmpty: (col) =>\n sql`(\n\t\t\t\t\t${col} IS NOT NULL \n\t\t\t\t\tAND ${col} != '{\"type\":\"doc\"}'::jsonb \n\t\t\t\t\tAND ${col} != '{\"type\":\"doc\",\"content\":[]}'::jsonb\n\t\t\t\t\tAND EXISTS (\n\t\t\t\t\t\tSELECT 1 FROM jsonb_array_elements_text(\n\t\t\t\t\t\t\tjsonb_path_query_array(${col}, '$..text')\n\t\t\t\t\t\t) AS t\n\t\t\t\t\t\tWHERE length(trim(t)) > 0\n\t\t\t\t\t)\n\t\t\t\t)`,\n isNull: (col) => isNull(col),\n isNotNull: (col) => isNotNull(col),\n },\n jsonb: {\n contains: (col, value, ctx) => {\n const path = ctx.jsonbPath?.join(\",\") ?? \"\";\n return sql`EXISTS (\n\t\t\t\t\tSELECT 1 FROM jsonb_array_elements_text(\n\t\t\t\t\t\tjsonb_path_query_array(${col}#>'{${sql.raw(path)}}', '$..text')\n\t\t\t\t\t) AS t\n\t\t\t\t\tWHERE t ILIKE ${\"%\" + value + \"%\"}\n\t\t\t\t)`;\n },\n isEmpty: (col, _value, ctx) => {\n const path = ctx.jsonbPath?.join(\",\") ?? \"\";\n return sql`(\n\t\t\t\t\t${col}#>'{${sql.raw(path)}}' IS NULL \n\t\t\t\t\tOR ${col}#>'{${sql.raw(path)}}' = '{\"type\":\"doc\"}'::jsonb\n\t\t\t\t)`;\n },\n isNotEmpty: (col, _value, ctx) => {\n const path = ctx.jsonbPath?.join(\",\") ?? \"\";\n return sql`(\n\t\t\t\t\t${col}#>'{${sql.raw(path)}}' IS NOT NULL \n\t\t\t\t\tAND ${col}#>'{${sql.raw(path)}}' != '{\"type\":\"doc\"}'::jsonb\n\t\t\t\t)`;\n },\n isNull: (col, _value, ctx) => {\n const path = ctx.jsonbPath?.join(\",\") ?? \"\";\n return sql`${col}#>'{${sql.raw(path)}}' IS NULL`;\n },\n isNotNull: (col, _value, ctx) => {\n const path = ctx.jsonbPath?.join(\",\") ?? \"\";\n return sql`${col}#>'{${sql.raw(path)}}' IS NOT NULL`;\n },\n },\n };\n}\n\n// ============================================================================\n// Rich Text Field Definition\n// ============================================================================\n\n/**\n * Default features for rich text editor.\n */\nconst DEFAULT_FEATURES: RichTextFeature[] = [\n \"bold\",\n \"italic\",\n \"link\",\n \"heading\",\n \"bulletList\",\n \"orderedList\",\n];\n\n/**\n * Default heading levels.\n */\nconst DEFAULT_HEADING_LEVELS: (1 | 2 | 3 | 4 | 5 | 6)[] = [1, 2, 3];\n\n/**\n * Rich text field factory.\n * Creates a TipTap-based rich text editor field.\n *\n * @example\n * ```ts\n * // Basic rich text\n * const content = richTextField({ label: \"Content\" });\n *\n * // With all features\n * const richContent = richTextField({\n * label: \"Article Content\",\n * features: [\"bold\", \"italic\", \"underline\", \"heading\", \"bulletList\", \"orderedList\", \"link\", \"image\", \"blockquote\", \"codeBlock\"],\n * maxCharacters: 50000,\n * allowImages: true,\n * });\n *\n * // Minimal editor\n * const bio = richTextField({\n * label: \"Bio\",\n * features: [\"bold\", \"italic\", \"link\"],\n * maxCharacters: 500,\n * });\n * ```\n */\nexport const richTextField = field<RichTextFieldConfig, TipTapDocument>()(\n {\n type: \"richText\" as const,\n _value: undefined as unknown as TipTapDocument,\n\n toColumn(_name: string, config: RichTextFieldConfig) {\n // Rich text is always stored as JSONB\n let column: any = jsonb();\n\n // Apply constraints\n if (config.required && config.nullable !== true) {\n column = column.notNull();\n }\n if (config.default !== undefined) {\n const defaultValue =\n typeof config.default === \"function\"\n ? config.default()\n : config.default;\n column = column.default(defaultValue);\n }\n\n return column;\n },\n\n toZodSchema(config: RichTextFieldConfig) {\n // TipTap document structure validation\n // We use a loose schema that validates the basic structure\n // but allows any valid TipTap content\n const nodeSchema: z.ZodType<TipTapNode> = z.lazy(() =>\n z.object({\n type: z.string(),\n attrs: z.record(z.string(), z.any()).optional(),\n content: z.array(nodeSchema).optional(),\n marks: z\n .array(\n z.object({\n type: z.string(),\n attrs: z.record(z.string(), z.any()).optional(),\n }),\n )\n .optional(),\n text: z.string().optional(),\n }),\n );\n\n const docSchema = z.object({\n type: z.literal(\"doc\"),\n content: z.array(nodeSchema).optional(),\n });\n\n // Nullability\n if (!config.required && config.nullable !== false) {\n return docSchema.nullish() as any;\n }\n\n return docSchema as any;\n },\n\n getOperators<TApp>() {\n return getRichTextOperators();\n },\n\n getMetadata(config: RichTextFieldConfig): FieldMetadataBase & {\n maxCharacters?: number;\n minCharacters?: number;\n features: RichTextFeature[];\n headingLevels: (1 | 2 | 3 | 4 | 5 | 6)[];\n placeholder?: string;\n allowImages?: boolean;\n imageCollection?: string;\n } {\n return {\n type: \"richText\",\n label: config.label,\n description: config.description,\n required: config.required ?? false,\n localized: config.localized ?? false,\n readOnly: config.input === false,\n writeOnly: config.output === false,\n meta: config.meta,\n // Rich text specific\n maxCharacters: config.maxCharacters,\n minCharacters: config.minCharacters,\n features: config.features ?? DEFAULT_FEATURES,\n headingLevels: config.headingLevels ?? DEFAULT_HEADING_LEVELS,\n placeholder: config.placeholder,\n allowImages: config.allowImages,\n imageCollection: config.imageCollection,\n };\n },\n },\n);\n"],"mappings":";;;;;;;;;;;;;;;;AAgKA,SAAS,uBAA4C;AACnD,QAAO;EACL,QAAQ;GAEN,WAAW,KAAK,UAAU;AAExB,WAAO,GAAG;;+BAEa,IAAI;;qBAEd,MAAM,QAAQ,IAAI;;;GAIjC,UAAU,QACR,GAAG;OACJ,IAAI;UACD,IAAI;UACJ,IAAI;;;gCAGkB,IAAI;;;;;GAK9B,aAAa,QACX,GAAG;OACJ,IAAI;WACA,IAAI;WACJ,IAAI;;;gCAGiB,IAAI;;;;;GAK9B,SAAS,QAAQ,OAAO,IAAI;GAC5B,YAAY,QAAQ,UAAU,IAAI;GACnC;EACD,OAAO;GACL,WAAW,KAAK,OAAO,QAAQ;IAC7B,MAAM,OAAO,IAAI,WAAW,KAAK,IAAI,IAAI;AACzC,WAAO,GAAG;;+BAEa,IAAI,MAAM,IAAI,IAAI,KAAK,CAAC;;qBAElC,MAAM,QAAQ,IAAI;;;GAGjC,UAAU,KAAK,QAAQ,QAAQ;IAC7B,MAAM,OAAO,IAAI,WAAW,KAAK,IAAI,IAAI;AACzC,WAAO,GAAG;OACX,IAAI,MAAM,IAAI,IAAI,KAAK,CAAC;UACrB,IAAI,MAAM,IAAI,IAAI,KAAK,CAAC;;;GAG5B,aAAa,KAAK,QAAQ,QAAQ;IAChC,MAAM,OAAO,IAAI,WAAW,KAAK,IAAI,IAAI;AACzC,WAAO,GAAG;OACX,IAAI,MAAM,IAAI,IAAI,KAAK,CAAC;WACpB,IAAI,MAAM,IAAI,IAAI,KAAK,CAAC;;;GAG7B,SAAS,KAAK,QAAQ,QAAQ;IAC5B,MAAM,OAAO,IAAI,WAAW,KAAK,IAAI,IAAI;AACzC,WAAO,GAAG,GAAG,IAAI,MAAM,IAAI,IAAI,KAAK,CAAC;;GAEvC,YAAY,KAAK,QAAQ,QAAQ;IAC/B,MAAM,OAAO,IAAI,WAAW,KAAK,IAAI,IAAI;AACzC,WAAO,GAAG,GAAG,IAAI,MAAM,IAAI,IAAI,KAAK,CAAC;;GAExC;EACF;;;;;AAUH,MAAMA,mBAAsC;CAC1C;CACA;CACA;CACA;CACA;CACA;CACD;;;;AAKD,MAAMC,yBAAoD;CAAC;CAAG;CAAG;CAAE;;;;;;;;;;;;;;;;;;;;;;;;;;AA2BnE,MAAa,gBAAgB,OAA4C,CACvE;CACE,MAAM;CACN,QAAQ;CAER,SAAS,OAAe,QAA6B;EAEnD,IAAIC,SAAc,OAAO;AAGzB,MAAI,OAAO,YAAY,OAAO,aAAa,KACzC,UAAS,OAAO,SAAS;AAE3B,MAAI,OAAO,YAAY,QAAW;GAChC,MAAM,eACJ,OAAO,OAAO,YAAY,aACtB,OAAO,SAAS,GAChB,OAAO;AACb,YAAS,OAAO,QAAQ,aAAa;;AAGvC,SAAO;;CAGT,YAAY,QAA6B;EAIvC,MAAMC,aAAoC,EAAE,WAC1C,EAAE,OAAO;GACP,MAAM,EAAE,QAAQ;GAChB,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,KAAK,CAAC,CAAC,UAAU;GAC/C,SAAS,EAAE,MAAM,WAAW,CAAC,UAAU;GACvC,OAAO,EACJ,MACC,EAAE,OAAO;IACP,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,KAAK,CAAC,CAAC,UAAU;IAChD,CAAC,CACH,CACA,UAAU;GACb,MAAM,EAAE,QAAQ,CAAC,UAAU;GAC5B,CAAC,CACH;EAED,MAAM,YAAY,EAAE,OAAO;GACzB,MAAM,EAAE,QAAQ,MAAM;GACtB,SAAS,EAAE,MAAM,WAAW,CAAC,UAAU;GACxC,CAAC;AAGF,MAAI,CAAC,OAAO,YAAY,OAAO,aAAa,MAC1C,QAAO,UAAU,SAAS;AAG5B,SAAO;;CAGT,eAAqB;AACnB,SAAO,sBAAsB;;CAG/B,YAAY,QAQV;AACA,SAAO;GACL,MAAM;GACN,OAAO,OAAO;GACd,aAAa,OAAO;GACpB,UAAU,OAAO,YAAY;GAC7B,WAAW,OAAO,aAAa;GAC/B,UAAU,OAAO,UAAU;GAC3B,WAAW,OAAO,WAAW;GAC7B,MAAM,OAAO;GAEb,eAAe,OAAO;GACtB,eAAe,OAAO;GACtB,UAAU,OAAO,YAAY;GAC7B,eAAe,OAAO,iBAAiB;GACvC,aAAa,OAAO;GACpB,aAAa,OAAO;GACpB,iBAAiB,OAAO;GACzB;;CAEJ,CACF"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
//#region src/server/i18n/index.d.ts
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Message value type - string or plural form
|
|
5
|
+
*/
|
|
6
|
+
type MessageValue = string | {
|
|
7
|
+
one: string;
|
|
8
|
+
other: string;
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* Messages record type
|
|
12
|
+
*/
|
|
13
|
+
type AdminMessages = Record<string, MessageValue>;
|
|
14
|
+
//#endregion
|
|
15
|
+
export { AdminMessages };
|
|
16
|
+
//# sourceMappingURL=index.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../../../src/server/i18n/index.ts"],"sourcesContent":[],"mappings":";;;;;KA+BY,YAAA;;;;;;;KAKA,aAAA,GAAgB,eAAe"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { messages } from "./messages/index.mjs";
|
|
2
|
+
|
|
3
|
+
//#region src/server/i18n/index.ts
|
|
4
|
+
/**
|
|
5
|
+
* Server-Side Admin i18n Messages
|
|
6
|
+
*
|
|
7
|
+
* These messages are served to the admin client via the getAdminTranslations RPC function.
|
|
8
|
+
* The client fetches translations for its current UI locale.
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```ts
|
|
12
|
+
* // Server: messages are stored here
|
|
13
|
+
* // Client: fetches via client.functions.getAdminTranslations({ locale: "sk" })
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
const adminMessagesEN = messages.en;
|
|
17
|
+
const adminMessagesSK = messages.sk;
|
|
18
|
+
const adminMessagesCS = messages.cs;
|
|
19
|
+
const adminMessagesDE = messages.de;
|
|
20
|
+
const adminMessagesFR = messages.fr;
|
|
21
|
+
const adminMessagesES = messages.es;
|
|
22
|
+
const adminMessagesPT = messages.pt;
|
|
23
|
+
const adminMessagesPL = messages.pl;
|
|
24
|
+
/**
|
|
25
|
+
* Get admin messages for a specific locale.
|
|
26
|
+
* Falls back to English if locale not found.
|
|
27
|
+
*
|
|
28
|
+
* @param locale - Locale code (e.g., "en", "sk")
|
|
29
|
+
* @returns Messages for the locale
|
|
30
|
+
*/
|
|
31
|
+
function getAdminMessagesForLocale(locale) {
|
|
32
|
+
return messages[locale] ?? messages.en ?? {};
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Get list of supported admin UI locales.
|
|
36
|
+
* These are locales that have message files.
|
|
37
|
+
*/
|
|
38
|
+
function getSupportedAdminLocales() {
|
|
39
|
+
return Object.keys(messages);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
//#endregion
|
|
43
|
+
export { getAdminMessagesForLocale, getSupportedAdminLocales };
|
|
44
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","names":[],"sources":["../../../src/server/i18n/index.ts"],"sourcesContent":["/**\n * Server-Side Admin i18n Messages\n *\n * These messages are served to the admin client via the getAdminTranslations RPC function.\n * The client fetches translations for its current UI locale.\n *\n * @example\n * ```ts\n * // Server: messages are stored here\n * // Client: fetches via client.functions.getAdminTranslations({ locale: \"sk\" })\n * ```\n */\n\nimport { messages } from \"./messages/index.js\";\n\n// Re-export messages\nexport { messages } from \"./messages/index.js\";\n\n// Export individual locale messages for direct access\nexport const adminMessagesEN = messages.en;\nexport const adminMessagesSK = messages.sk;\nexport const adminMessagesCS = messages.cs;\nexport const adminMessagesDE = messages.de;\nexport const adminMessagesFR = messages.fr;\nexport const adminMessagesES = messages.es;\nexport const adminMessagesPT = messages.pt;\nexport const adminMessagesPL = messages.pl;\n\n/**\n * Message value type - string or plural form\n */\nexport type MessageValue = string | { one: string; other: string };\n\n/**\n * Messages record type\n */\nexport type AdminMessages = Record<string, MessageValue>;\n\n/**\n * All admin messages indexed by locale code.\n * Used by getAdminTranslations to serve messages for requested locale.\n */\nexport const allAdminMessages: Record<string, AdminMessages> = messages;\n\n/**\n * Get admin messages for a specific locale.\n * Falls back to English if locale not found.\n *\n * @param locale - Locale code (e.g., \"en\", \"sk\")\n * @returns Messages for the locale\n */\nexport function getAdminMessagesForLocale(locale: string): AdminMessages {\n\treturn messages[locale as keyof typeof messages] ?? messages.en ?? {};\n}\n\n/**\n * Get list of supported admin UI locales.\n * These are locales that have message files.\n */\nexport function getSupportedAdminLocales(): string[] {\n\treturn Object.keys(messages);\n}\n"],"mappings":";;;;;;;;;;;;;;;AAmBA,MAAa,kBAAkB,SAAS;AACxC,MAAa,kBAAkB,SAAS;AACxC,MAAa,kBAAkB,SAAS;AACxC,MAAa,kBAAkB,SAAS;AACxC,MAAa,kBAAkB,SAAS;AACxC,MAAa,kBAAkB,SAAS;AACxC,MAAa,kBAAkB,SAAS;AACxC,MAAa,kBAAkB,SAAS;;;;;;;;AAyBxC,SAAgB,0BAA0B,QAA+B;AACxE,QAAO,SAAS,WAAoC,SAAS,MAAM,EAAE;;;;;;AAOtE,SAAgB,2BAAqC;AACpD,QAAO,OAAO,KAAK,SAAS"}
|