@btst/stack 2.12.2 → 3.0.0-rc.1
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 +41 -2
- package/dist/api/index.cjs +24 -3
- package/dist/api/index.d.cts +29 -3
- package/dist/api/index.d.mts +29 -3
- package/dist/api/index.d.ts +29 -3
- package/dist/api/index.mjs +24 -4
- package/dist/client/components/index.d.cts +10 -2
- package/dist/client/components/index.d.mts +10 -2
- package/dist/client/components/index.d.ts +10 -2
- package/dist/client/index.cjs +6 -0
- package/dist/client/index.d.cts +64 -3
- package/dist/client/index.d.mts +64 -3
- package/dist/client/index.d.ts +64 -3
- package/dist/client/index.mjs +2 -0
- package/dist/context/index.cjs +10 -0
- package/dist/context/index.d.cts +228 -14
- package/dist/context/index.d.mts +228 -14
- package/dist/context/index.d.ts +228 -14
- package/dist/context/index.mjs +4 -1
- package/dist/index.cjs +1 -0
- package/dist/index.d.cts +3 -2
- package/dist/index.d.mts +3 -2
- package/dist/index.d.ts +3 -2
- package/dist/index.mjs +1 -1
- package/dist/next/index.cjs +11 -0
- package/dist/next/index.d.cts +91 -0
- package/dist/next/index.d.mts +91 -0
- package/dist/next/index.d.ts +91 -0
- package/dist/next/index.mjs +3 -0
- package/dist/packages/stack/src/client/components/compose.cjs +46 -3
- package/dist/packages/stack/src/client/components/compose.mjs +44 -5
- package/dist/packages/stack/src/client/hooks/use-list-state.cjs +151 -0
- package/dist/packages/stack/src/client/hooks/use-list-state.mjs +147 -0
- package/dist/packages/stack/src/context/auth.cjs +122 -0
- package/dist/packages/stack/src/context/auth.mjs +116 -0
- package/dist/packages/stack/src/context/i18n.cjs +28 -0
- package/dist/packages/stack/src/context/i18n.mjs +25 -0
- package/dist/packages/stack/src/context/notify.cjs +45 -0
- package/dist/packages/stack/src/context/notify.mjs +41 -0
- package/dist/packages/stack/src/context/provider.cjs +59 -7
- package/dist/packages/stack/src/context/provider.mjs +59 -8
- package/dist/packages/stack/src/next/handlers.cjs +13 -0
- package/dist/packages/stack/src/next/handlers.mjs +11 -0
- package/dist/packages/stack/src/next/page.cjs +50 -0
- package/dist/packages/stack/src/next/page.mjs +48 -0
- package/dist/packages/stack/src/next/router.cjs +83 -0
- package/dist/packages/stack/src/next/router.mjs +76 -0
- package/dist/packages/stack/src/plugins/ai-chat/api/plugin.cjs +6 -6
- package/dist/packages/stack/src/plugins/ai-chat/api/plugin.mjs +7 -7
- package/dist/packages/stack/src/plugins/ai-chat/client/components/chat-input.cjs +46 -9
- package/dist/packages/stack/src/plugins/ai-chat/client/components/chat-input.mjs +48 -11
- package/dist/packages/stack/src/plugins/ai-chat/client/components/chat-interface.cjs +43 -14
- package/dist/packages/stack/src/plugins/ai-chat/client/components/chat-interface.mjs +45 -16
- package/dist/packages/stack/src/plugins/ai-chat/client/components/chat-layout.cjs +47 -12
- package/dist/packages/stack/src/plugins/ai-chat/client/components/chat-layout.mjs +47 -12
- package/dist/packages/stack/src/plugins/ai-chat/client/components/chat-message.cjs +86 -17
- package/dist/packages/stack/src/plugins/ai-chat/client/components/chat-message.mjs +88 -19
- package/dist/packages/stack/src/plugins/ai-chat/client/components/chat-sidebar.cjs +220 -86
- package/dist/packages/stack/src/plugins/ai-chat/client/components/chat-sidebar.mjs +224 -90
- package/dist/packages/stack/src/plugins/ai-chat/client/components/pages/404-page.cjs +12 -3
- package/dist/packages/stack/src/plugins/ai-chat/client/components/pages/404-page.mjs +13 -4
- package/dist/packages/stack/src/plugins/ai-chat/client/components/pages/chat-page.cjs +6 -1
- package/dist/packages/stack/src/plugins/ai-chat/client/components/pages/chat-page.internal.cjs +19 -10
- package/dist/packages/stack/src/plugins/ai-chat/client/components/pages/chat-page.internal.mjs +19 -10
- package/dist/packages/stack/src/plugins/ai-chat/client/components/pages/chat-page.mjs +6 -1
- package/dist/packages/stack/src/plugins/ai-chat/client/components/shared/default-error.cjs +16 -3
- package/dist/packages/stack/src/plugins/ai-chat/client/components/shared/default-error.mjs +17 -4
- package/dist/packages/stack/src/plugins/ai-chat/client/components/tool-call-display.cjs +39 -23
- package/dist/packages/stack/src/plugins/ai-chat/client/components/tool-call-display.mjs +39 -23
- package/dist/packages/stack/src/plugins/ai-chat/client/hooks/ai-chat-resource.cjs +12 -0
- package/dist/packages/stack/src/plugins/ai-chat/client/hooks/ai-chat-resource.mjs +10 -0
- package/dist/packages/stack/src/plugins/ai-chat/client/hooks/chat-hooks.cjs +42 -160
- package/dist/packages/stack/src/plugins/ai-chat/client/hooks/chat-hooks.mjs +43 -162
- package/dist/packages/stack/src/plugins/ai-chat/client/localization/index.cjs +33 -60
- package/dist/packages/stack/src/plugins/ai-chat/client/localization/index.mjs +31 -60
- package/dist/packages/stack/src/plugins/ai-chat/client/plugin.cjs +79 -77
- package/dist/packages/stack/src/plugins/ai-chat/client/plugin.mjs +81 -79
- package/dist/packages/stack/src/plugins/ai-chat/schemas.cjs +1 -1
- package/dist/packages/stack/src/plugins/ai-chat/schemas.mjs +1 -1
- package/dist/packages/stack/src/plugins/api/create-endpoint.cjs +35 -0
- package/dist/packages/stack/src/plugins/api/create-endpoint.mjs +33 -0
- package/dist/packages/stack/src/plugins/blog/api/plugin.cjs +6 -6
- package/dist/packages/stack/src/plugins/blog/api/plugin.mjs +7 -7
- package/dist/packages/stack/src/plugins/blog/client/components/forms/image-field.cjs +52 -32
- package/dist/packages/stack/src/plugins/blog/client/components/forms/image-field.mjs +54 -34
- package/dist/packages/stack/src/plugins/blog/client/components/forms/markdown-editor-with-overrides.cjs +3 -6
- package/dist/packages/stack/src/plugins/blog/client/components/forms/markdown-editor-with-overrides.mjs +4 -7
- package/dist/packages/stack/src/plugins/blog/client/components/forms/post-forms.cjs +187 -109
- package/dist/packages/stack/src/plugins/blog/client/components/forms/post-forms.mjs +190 -112
- package/dist/packages/stack/src/plugins/blog/client/components/forms/tags-multiselect.cjs +3 -1
- package/dist/packages/stack/src/plugins/blog/client/components/forms/tags-multiselect.mjs +3 -1
- package/dist/packages/stack/src/plugins/blog/client/components/pages/404-page.cjs +7 -6
- package/dist/packages/stack/src/plugins/blog/client/components/pages/404-page.mjs +8 -7
- package/dist/packages/stack/src/plugins/blog/client/components/pages/edit-post-page.cjs +1 -0
- package/dist/packages/stack/src/plugins/blog/client/components/pages/edit-post-page.internal.cjs +11 -17
- package/dist/packages/stack/src/plugins/blog/client/components/pages/edit-post-page.internal.mjs +12 -18
- package/dist/packages/stack/src/plugins/blog/client/components/pages/edit-post-page.mjs +1 -0
- package/dist/packages/stack/src/plugins/blog/client/components/pages/home-page.cjs +1 -0
- package/dist/packages/stack/src/plugins/blog/client/components/pages/home-page.internal.cjs +4 -15
- package/dist/packages/stack/src/plugins/blog/client/components/pages/home-page.internal.mjs +5 -16
- package/dist/packages/stack/src/plugins/blog/client/components/pages/home-page.mjs +1 -0
- package/dist/packages/stack/src/plugins/blog/client/components/pages/new-post-page.cjs +1 -0
- package/dist/packages/stack/src/plugins/blog/client/components/pages/new-post-page.internal.cjs +11 -17
- package/dist/packages/stack/src/plugins/blog/client/components/pages/new-post-page.internal.mjs +12 -18
- package/dist/packages/stack/src/plugins/blog/client/components/pages/new-post-page.mjs +1 -0
- package/dist/packages/stack/src/plugins/blog/client/components/pages/post-page.internal.cjs +15 -14
- package/dist/packages/stack/src/plugins/blog/client/components/pages/post-page.internal.mjs +16 -15
- package/dist/packages/stack/src/plugins/blog/client/components/pages/tag-page.internal.cjs +20 -9
- package/dist/packages/stack/src/plugins/blog/client/components/pages/tag-page.internal.mjs +21 -10
- package/dist/packages/stack/src/plugins/blog/client/components/shared/collapsible-tag-list.cjs +8 -7
- package/dist/packages/stack/src/plugins/blog/client/components/shared/collapsible-tag-list.mjs +9 -8
- package/dist/packages/stack/src/plugins/blog/client/components/shared/default-error.cjs +5 -6
- package/dist/packages/stack/src/plugins/blog/client/components/shared/default-error.mjs +6 -7
- package/dist/packages/stack/src/plugins/blog/client/components/shared/markdown-content.cjs +3 -4
- package/dist/packages/stack/src/plugins/blog/client/components/shared/markdown-content.mjs +5 -6
- package/dist/packages/stack/src/plugins/blog/client/components/shared/on-this-page.cjs +11 -9
- package/dist/packages/stack/src/plugins/blog/client/components/shared/on-this-page.mjs +12 -10
- package/dist/packages/stack/src/plugins/blog/client/components/shared/post-card.cjs +6 -9
- package/dist/packages/stack/src/plugins/blog/client/components/shared/post-card.mjs +8 -11
- package/dist/packages/stack/src/plugins/blog/client/components/shared/post-navigation.cjs +5 -5
- package/dist/packages/stack/src/plugins/blog/client/components/shared/post-navigation.mjs +6 -6
- package/dist/packages/stack/src/plugins/blog/client/components/shared/posts-list.cjs +12 -10
- package/dist/packages/stack/src/plugins/blog/client/components/shared/posts-list.mjs +13 -11
- package/dist/packages/stack/src/plugins/blog/client/components/shared/recent-posts-carousel.cjs +7 -7
- package/dist/packages/stack/src/plugins/blog/client/components/shared/recent-posts-carousel.mjs +8 -8
- package/dist/packages/stack/src/plugins/blog/client/components/shared/search-input.cjs +14 -5
- package/dist/packages/stack/src/plugins/blog/client/components/shared/search-input.mjs +15 -6
- package/dist/packages/stack/src/plugins/blog/client/components/shared/search-modal.cjs +46 -22
- package/dist/packages/stack/src/plugins/blog/client/components/shared/search-modal.mjs +45 -21
- package/dist/packages/stack/src/plugins/blog/client/hooks/blog-hooks.cjs +30 -261
- package/dist/packages/stack/src/plugins/blog/client/hooks/blog-hooks.mjs +29 -261
- package/dist/packages/stack/src/plugins/blog/client/hooks/blog-resource.cjs +12 -0
- package/dist/packages/stack/src/plugins/blog/client/hooks/blog-resource.mjs +10 -0
- package/dist/packages/stack/src/plugins/blog/client/hooks/use-debounce.cjs +2 -11
- package/dist/packages/stack/src/plugins/blog/client/hooks/use-debounce.mjs +3 -12
- package/dist/packages/stack/src/plugins/blog/client/plugin.cjs +39 -68
- package/dist/packages/stack/src/plugins/blog/client/plugin.mjs +41 -70
- package/dist/packages/stack/src/plugins/client/resource/errors.cjs +74 -0
- package/dist/packages/stack/src/plugins/client/resource/errors.mjs +70 -0
- package/dist/packages/stack/src/plugins/client/resource/hooks.cjs +123 -0
- package/dist/packages/stack/src/plugins/client/resource/hooks.mjs +121 -0
- package/dist/packages/stack/src/plugins/client/resource/internal.cjs +90 -0
- package/dist/packages/stack/src/plugins/client/resource/internal.mjs +87 -0
- package/dist/packages/stack/src/plugins/client/resource/queries.cjs +68 -0
- package/dist/packages/stack/src/plugins/client/resource/queries.mjs +62 -0
- package/dist/packages/stack/src/plugins/client/resource/use-debounce.cjs +17 -0
- package/dist/packages/stack/src/plugins/client/resource/use-debounce.mjs +15 -0
- package/dist/packages/stack/src/plugins/client/resource/use-form.cjs +116 -0
- package/dist/packages/stack/src/plugins/client/resource/use-form.mjs +114 -0
- package/dist/packages/stack/src/plugins/client/resource/use-select.cjs +104 -0
- package/dist/packages/stack/src/plugins/client/resource/use-select.mjs +102 -0
- package/dist/packages/stack/src/plugins/cms/api/getters.cjs +42 -6
- package/dist/packages/stack/src/plugins/cms/api/getters.mjs +42 -6
- package/dist/packages/stack/src/plugins/cms/api/plugin.cjs +12 -7
- package/dist/packages/stack/src/plugins/cms/api/plugin.mjs +13 -8
- package/dist/packages/stack/src/plugins/cms/api/query-key-defs.cjs +3 -2
- package/dist/packages/stack/src/plugins/cms/api/query-key-defs.mjs +3 -2
- package/dist/packages/stack/src/plugins/cms/client/components/forms/content-form.cjs +58 -17
- package/dist/packages/stack/src/plugins/cms/client/components/forms/content-form.mjs +60 -19
- package/dist/packages/stack/src/plugins/cms/client/components/forms/file-upload.cjs +11 -4
- package/dist/packages/stack/src/plugins/cms/client/components/forms/file-upload.mjs +11 -4
- package/dist/packages/stack/src/plugins/cms/client/components/forms/relation-field.cjs +50 -110
- package/dist/packages/stack/src/plugins/cms/client/components/forms/relation-field.mjs +52 -112
- package/dist/packages/stack/src/plugins/cms/client/components/inverse-relations-panel.cjs +84 -87
- package/dist/packages/stack/src/plugins/cms/client/components/inverse-relations-panel.mjs +86 -89
- package/dist/packages/stack/src/plugins/cms/client/components/pages/404-page.cjs +10 -5
- package/dist/packages/stack/src/plugins/cms/client/components/pages/404-page.mjs +11 -6
- package/dist/packages/stack/src/plugins/cms/client/components/pages/content-editor-page.cjs +5 -0
- package/dist/packages/stack/src/plugins/cms/client/components/pages/content-editor-page.internal.cjs +35 -25
- package/dist/packages/stack/src/plugins/cms/client/components/pages/content-editor-page.internal.mjs +37 -27
- package/dist/packages/stack/src/plugins/cms/client/components/pages/content-editor-page.mjs +5 -0
- package/dist/packages/stack/src/plugins/cms/client/components/pages/content-list-page.internal.cjs +224 -88
- package/dist/packages/stack/src/plugins/cms/client/components/pages/content-list-page.internal.mjs +227 -91
- package/dist/packages/stack/src/plugins/cms/client/components/pages/dashboard-page.internal.cjs +22 -23
- package/dist/packages/stack/src/plugins/cms/client/components/pages/dashboard-page.internal.mjs +23 -24
- package/dist/packages/stack/src/plugins/cms/client/hooks/cms-hooks.cjs +126 -442
- package/dist/packages/stack/src/plugins/cms/client/hooks/cms-hooks.mjs +123 -443
- package/dist/packages/stack/src/plugins/cms/client/hooks/cms-resource.cjs +12 -0
- package/dist/packages/stack/src/plugins/cms/client/hooks/cms-resource.mjs +10 -0
- package/dist/packages/stack/src/plugins/cms/client/plugin.cjs +28 -62
- package/dist/packages/stack/src/plugins/cms/client/plugin.mjs +30 -64
- package/dist/packages/stack/src/plugins/cms/schemas.cjs +1 -0
- package/dist/packages/stack/src/plugins/cms/schemas.mjs +1 -0
- package/dist/packages/stack/src/plugins/comments/api/plugin.cjs +10 -10
- package/dist/packages/stack/src/plugins/comments/api/plugin.mjs +11 -11
- package/dist/packages/stack/src/plugins/comments/client/components/comment-count.cjs +3 -4
- package/dist/packages/stack/src/plugins/comments/client/components/comment-count.mjs +3 -4
- package/dist/packages/stack/src/plugins/comments/client/components/comment-form.cjs +19 -10
- package/dist/packages/stack/src/plugins/comments/client/components/comment-form.mjs +19 -10
- package/dist/packages/stack/src/plugins/comments/client/components/comment-thread.cjs +49 -37
- package/dist/packages/stack/src/plugins/comments/client/components/comment-thread.mjs +51 -39
- package/dist/packages/stack/src/plugins/comments/client/components/pages/moderation-page.cjs +3 -18
- package/dist/packages/stack/src/plugins/comments/client/components/pages/moderation-page.internal.cjs +222 -134
- package/dist/packages/stack/src/plugins/comments/client/components/pages/moderation-page.internal.mjs +220 -132
- package/dist/packages/stack/src/plugins/comments/client/components/pages/moderation-page.mjs +3 -18
- package/dist/packages/stack/src/plugins/comments/client/components/pages/my-comments-page.cjs +2 -15
- package/dist/packages/stack/src/plugins/comments/client/components/pages/my-comments-page.internal.cjs +76 -44
- package/dist/packages/stack/src/plugins/comments/client/components/pages/my-comments-page.internal.mjs +77 -45
- package/dist/packages/stack/src/plugins/comments/client/components/pages/my-comments-page.mjs +2 -15
- package/dist/packages/stack/src/plugins/comments/client/components/pages/resource-comments-page.cjs +2 -21
- package/dist/packages/stack/src/plugins/comments/client/components/pages/resource-comments-page.internal.cjs +94 -62
- package/dist/packages/stack/src/plugins/comments/client/components/pages/resource-comments-page.internal.mjs +94 -62
- package/dist/packages/stack/src/plugins/comments/client/components/pages/resource-comments-page.mjs +2 -21
- package/dist/packages/stack/src/plugins/comments/client/components/shared/pagination.cjs +8 -6
- package/dist/packages/stack/src/plugins/comments/client/components/shared/pagination.mjs +9 -7
- package/dist/packages/stack/src/plugins/comments/client/hooks/use-comments.cjs +54 -82
- package/dist/packages/stack/src/plugins/comments/client/hooks/use-comments.mjs +44 -72
- package/dist/packages/stack/src/plugins/comments/client/plugin.cjs +6 -6
- package/dist/packages/stack/src/plugins/comments/client/plugin.mjs +7 -7
- package/dist/packages/stack/src/plugins/comments/client/utils.cjs +8 -22
- package/dist/packages/stack/src/plugins/comments/client/utils.mjs +8 -21
- package/dist/packages/stack/src/plugins/form-builder/api/getters.cjs +31 -6
- package/dist/packages/stack/src/plugins/form-builder/api/getters.mjs +31 -6
- package/dist/packages/stack/src/plugins/form-builder/api/plugin.cjs +11 -14
- package/dist/packages/stack/src/plugins/form-builder/api/plugin.mjs +12 -15
- package/dist/packages/stack/src/plugins/form-builder/api/query-key-defs.cjs +2 -1
- package/dist/packages/stack/src/plugins/form-builder/api/query-key-defs.mjs +2 -1
- package/dist/packages/stack/src/plugins/form-builder/client/components/forms/form-renderer.cjs +39 -13
- package/dist/packages/stack/src/plugins/form-builder/client/components/forms/form-renderer.mjs +40 -14
- package/dist/packages/stack/src/plugins/form-builder/client/components/pages/404-page.cjs +10 -5
- package/dist/packages/stack/src/plugins/form-builder/client/components/pages/404-page.mjs +11 -6
- package/dist/packages/stack/src/plugins/form-builder/client/components/pages/form-builder-page.cjs +28 -3
- package/dist/packages/stack/src/plugins/form-builder/client/components/pages/form-builder-page.internal.cjs +67 -57
- package/dist/packages/stack/src/plugins/form-builder/client/components/pages/form-builder-page.internal.mjs +66 -56
- package/dist/packages/stack/src/plugins/form-builder/client/components/pages/form-builder-page.mjs +29 -4
- package/dist/packages/stack/src/plugins/form-builder/client/components/pages/form-list-page.cjs +23 -3
- package/dist/packages/stack/src/plugins/form-builder/client/components/pages/form-list-page.internal.cjs +163 -61
- package/dist/packages/stack/src/plugins/form-builder/client/components/pages/form-list-page.internal.mjs +167 -65
- package/dist/packages/stack/src/plugins/form-builder/client/components/pages/form-list-page.mjs +24 -4
- package/dist/packages/stack/src/plugins/form-builder/client/components/pages/submissions-page.cjs +31 -3
- package/dist/packages/stack/src/plugins/form-builder/client/components/pages/submissions-page.internal.cjs +84 -45
- package/dist/packages/stack/src/plugins/form-builder/client/components/pages/submissions-page.internal.mjs +85 -46
- package/dist/packages/stack/src/plugins/form-builder/client/components/pages/submissions-page.mjs +32 -4
- package/dist/packages/stack/src/plugins/form-builder/client/components/shared/pagination.cjs +3 -2
- package/dist/packages/stack/src/plugins/form-builder/client/components/shared/pagination.mjs +3 -2
- package/dist/packages/stack/src/plugins/form-builder/client/hooks/form-builder-hooks.cjs +53 -430
- package/dist/packages/stack/src/plugins/form-builder/client/hooks/form-builder-hooks.mjs +53 -431
- package/dist/packages/stack/src/plugins/form-builder/client/hooks/form-builder-resource.cjs +12 -0
- package/dist/packages/stack/src/plugins/form-builder/client/hooks/form-builder-resource.mjs +10 -0
- package/dist/packages/stack/src/plugins/form-builder/client/plugin.cjs +28 -76
- package/dist/packages/stack/src/plugins/form-builder/client/plugin.mjs +30 -78
- package/dist/packages/stack/src/plugins/form-builder/schemas.cjs +4 -1
- package/dist/packages/stack/src/plugins/form-builder/schemas.mjs +4 -2
- package/dist/packages/stack/src/plugins/kanban/api/plugin.cjs +14 -14
- package/dist/packages/stack/src/plugins/kanban/api/plugin.mjs +15 -15
- package/dist/packages/stack/src/plugins/kanban/client/components/forms/board-form.cjs +55 -35
- package/dist/packages/stack/src/plugins/kanban/client/components/forms/board-form.mjs +56 -36
- package/dist/packages/stack/src/plugins/kanban/client/components/forms/column-form.cjs +42 -26
- package/dist/packages/stack/src/plugins/kanban/client/components/forms/column-form.mjs +43 -27
- package/dist/packages/stack/src/plugins/kanban/client/components/forms/task-form.cjs +177 -95
- package/dist/packages/stack/src/plugins/kanban/client/components/forms/task-form.mjs +179 -97
- package/dist/packages/stack/src/plugins/kanban/client/components/pages/404-page.cjs +10 -5
- package/dist/packages/stack/src/plugins/kanban/client/components/pages/404-page.mjs +11 -6
- package/dist/packages/stack/src/plugins/kanban/client/components/pages/board-page.cjs +5 -0
- package/dist/packages/stack/src/plugins/kanban/client/components/pages/board-page.internal.cjs +132 -79
- package/dist/packages/stack/src/plugins/kanban/client/components/pages/board-page.internal.mjs +133 -80
- package/dist/packages/stack/src/plugins/kanban/client/components/pages/board-page.mjs +5 -0
- package/dist/packages/stack/src/plugins/kanban/client/components/pages/boards-list-page.cjs +1 -0
- package/dist/packages/stack/src/plugins/kanban/client/components/pages/boards-list-page.internal.cjs +21 -17
- package/dist/packages/stack/src/plugins/kanban/client/components/pages/boards-list-page.internal.mjs +22 -18
- package/dist/packages/stack/src/plugins/kanban/client/components/pages/boards-list-page.mjs +1 -0
- package/dist/packages/stack/src/plugins/kanban/client/components/pages/new-board-page.cjs +1 -0
- package/dist/packages/stack/src/plugins/kanban/client/components/pages/new-board-page.internal.cjs +15 -7
- package/dist/packages/stack/src/plugins/kanban/client/components/pages/new-board-page.internal.mjs +16 -8
- package/dist/packages/stack/src/plugins/kanban/client/components/pages/new-board-page.mjs +1 -0
- package/dist/packages/stack/src/plugins/kanban/client/components/shared/column-content.cjs +54 -15
- package/dist/packages/stack/src/plugins/kanban/client/components/shared/column-content.mjs +54 -15
- package/dist/packages/stack/src/plugins/kanban/client/components/shared/default-error.cjs +9 -3
- package/dist/packages/stack/src/plugins/kanban/client/components/shared/default-error.mjs +9 -3
- package/dist/packages/stack/src/plugins/kanban/client/components/shared/kanban-board.cjs +6 -0
- package/dist/packages/stack/src/plugins/kanban/client/components/shared/kanban-board.mjs +6 -0
- package/dist/packages/stack/src/plugins/kanban/client/components/shared/task-card.cjs +29 -8
- package/dist/packages/stack/src/plugins/kanban/client/components/shared/task-card.mjs +29 -8
- package/dist/packages/stack/src/plugins/kanban/client/components/shared/user-avatar.cjs +12 -1
- package/dist/packages/stack/src/plugins/kanban/client/components/shared/user-avatar.mjs +12 -1
- package/dist/packages/stack/src/plugins/kanban/client/hooks/kanban-hooks.cjs +33 -304
- package/dist/packages/stack/src/plugins/kanban/client/hooks/kanban-hooks.mjs +32 -306
- package/dist/packages/stack/src/plugins/kanban/client/hooks/kanban-resource.cjs +12 -0
- package/dist/packages/stack/src/plugins/kanban/client/hooks/kanban-resource.mjs +10 -0
- package/dist/packages/stack/src/plugins/kanban/client/plugin.cjs +22 -46
- package/dist/packages/stack/src/plugins/kanban/client/plugin.mjs +24 -48
- package/dist/packages/stack/src/plugins/kanban/utils.cjs +0 -7
- package/dist/packages/stack/src/plugins/kanban/utils.mjs +1 -7
- package/dist/packages/stack/src/plugins/media/api/getters.cjs +7 -4
- package/dist/packages/stack/src/plugins/media/api/getters.mjs +7 -4
- package/dist/packages/stack/src/plugins/media/api/plugin.cjs +11 -14
- package/dist/packages/stack/src/plugins/media/api/plugin.mjs +13 -16
- package/dist/packages/stack/src/plugins/media/api/query-key-defs.cjs +9 -4
- package/dist/packages/stack/src/plugins/media/api/query-key-defs.mjs +9 -5
- package/dist/packages/stack/src/plugins/media/client/components/media-picker/asset-card.cjs +41 -17
- package/dist/packages/stack/src/plugins/media/client/components/media-picker/asset-card.mjs +42 -18
- package/dist/packages/stack/src/plugins/media/client/components/media-picker/asset-preview-button.cjs +7 -3
- package/dist/packages/stack/src/plugins/media/client/components/media-picker/asset-preview-button.mjs +7 -3
- package/dist/packages/stack/src/plugins/media/client/components/media-picker/browse-tab.cjs +29 -11
- package/dist/packages/stack/src/plugins/media/client/components/media-picker/browse-tab.mjs +30 -12
- package/dist/packages/stack/src/plugins/media/client/components/media-picker/folder-tree.cjs +56 -27
- package/dist/packages/stack/src/plugins/media/client/components/media-picker/folder-tree.mjs +57 -28
- package/dist/packages/stack/src/plugins/media/client/components/media-picker/index.cjs +74 -49
- package/dist/packages/stack/src/plugins/media/client/components/media-picker/index.mjs +76 -51
- package/dist/packages/stack/src/plugins/media/client/components/media-picker/upload-tab.cjs +32 -7
- package/dist/packages/stack/src/plugins/media/client/components/media-picker/upload-tab.mjs +32 -7
- package/dist/packages/stack/src/plugins/media/client/components/media-picker/url-tab.cjs +28 -19
- package/dist/packages/stack/src/plugins/media/client/components/media-picker/url-tab.mjs +29 -20
- package/dist/packages/stack/src/plugins/media/client/components/pages/library-page.cjs +1 -0
- package/dist/packages/stack/src/plugins/media/client/components/pages/library-page.internal.cjs +62 -23
- package/dist/packages/stack/src/plugins/media/client/components/pages/library-page.internal.mjs +64 -25
- package/dist/packages/stack/src/plugins/media/client/components/pages/library-page.mjs +1 -0
- package/dist/packages/stack/src/plugins/media/client/hooks/media-resource.cjs +12 -0
- package/dist/packages/stack/src/plugins/media/client/hooks/media-resource.mjs +10 -0
- package/dist/packages/stack/src/plugins/media/client/hooks/use-media.cjs +75 -191
- package/dist/packages/stack/src/plugins/media/client/hooks/use-media.mjs +76 -194
- package/dist/packages/stack/src/plugins/media/client/plugin.cjs +8 -8
- package/dist/packages/stack/src/plugins/media/client/plugin.mjs +9 -9
- package/dist/packages/stack/src/plugins/media/schemas.cjs +9 -1
- package/dist/packages/stack/src/plugins/media/schemas.mjs +8 -2
- package/dist/packages/stack/src/plugins/route-docs/client/plugin.cjs +13 -15
- package/dist/packages/stack/src/plugins/route-docs/client/plugin.mjs +14 -16
- package/dist/packages/stack/src/plugins/ui-builder/client/components/page-renderer.cjs +19 -3
- package/dist/packages/stack/src/plugins/ui-builder/client/components/page-renderer.mjs +19 -3
- package/dist/packages/stack/src/plugins/ui-builder/client/components/pages/page-builder-page.cjs +23 -2
- package/dist/packages/stack/src/plugins/ui-builder/client/components/pages/page-builder-page.internal.cjs +127 -45
- package/dist/packages/stack/src/plugins/ui-builder/client/components/pages/page-builder-page.internal.mjs +130 -48
- package/dist/packages/stack/src/plugins/ui-builder/client/components/pages/page-builder-page.mjs +24 -3
- package/dist/packages/stack/src/plugins/ui-builder/client/components/pages/page-list-page.cjs +20 -2
- package/dist/packages/stack/src/plugins/ui-builder/client/components/pages/page-list-page.internal.cjs +145 -51
- package/dist/packages/stack/src/plugins/ui-builder/client/components/pages/page-list-page.internal.mjs +147 -53
- package/dist/packages/stack/src/plugins/ui-builder/client/components/pages/page-list-page.mjs +21 -3
- package/dist/packages/stack/src/plugins/ui-builder/client/components/shared/default-error.cjs +13 -3
- package/dist/packages/stack/src/plugins/ui-builder/client/components/shared/default-error.mjs +13 -3
- package/dist/packages/stack/src/plugins/ui-builder/client/components/shared/pagination.cjs +3 -2
- package/dist/packages/stack/src/plugins/ui-builder/client/components/shared/pagination.mjs +3 -2
- package/dist/packages/stack/src/plugins/ui-builder/client/hooks/ui-builder-hooks.cjs +33 -350
- package/dist/packages/stack/src/plugins/ui-builder/client/hooks/ui-builder-hooks.mjs +33 -351
- package/dist/packages/stack/src/plugins/ui-builder/client/hooks/ui-builder-resource.cjs +12 -0
- package/dist/packages/stack/src/plugins/ui-builder/client/hooks/ui-builder-resource.mjs +10 -0
- package/dist/packages/stack/src/plugins/ui-builder/client/localization/index.cjs +19 -6
- package/dist/packages/stack/src/plugins/ui-builder/client/localization/index.mjs +19 -6
- package/dist/packages/stack/src/plugins/ui-builder/client/plugin.cjs +30 -66
- package/dist/packages/stack/src/plugins/ui-builder/client/plugin.mjs +32 -68
- package/dist/packages/stack/src/plugins/utils.cjs +3 -35
- package/dist/packages/stack/src/plugins/utils.mjs +3 -34
- package/dist/packages/stack/src/react-router/handlers.cjs +10 -0
- package/dist/packages/stack/src/react-router/handlers.mjs +8 -0
- package/dist/packages/stack/src/react-router/page.cjs +57 -0
- package/dist/packages/stack/src/react-router/page.mjs +55 -0
- package/dist/packages/stack/src/react-router/router.cjs +42 -0
- package/dist/packages/stack/src/react-router/router.mjs +40 -0
- package/dist/packages/stack/src/shared/entry-factories.cjs +9 -0
- package/dist/packages/stack/src/shared/entry-factories.mjs +7 -0
- package/dist/packages/stack/src/shared/interpolate.cjs +11 -0
- package/dist/packages/stack/src/shared/interpolate.mjs +9 -0
- package/dist/packages/stack/src/shared/list-state.cjs +67 -0
- package/dist/packages/stack/src/shared/list-state.mjs +62 -0
- package/dist/packages/stack/src/tanstack/handlers.cjs +14 -0
- package/dist/packages/stack/src/tanstack/handlers.mjs +12 -0
- package/dist/packages/stack/src/tanstack/page.cjs +51 -0
- package/dist/packages/stack/src/tanstack/page.mjs +49 -0
- package/dist/packages/stack/src/tanstack/router.cjs +44 -0
- package/dist/packages/stack/src/tanstack/router.mjs +42 -0
- package/dist/packages/ui/src/hooks/use-route-lifecycle.cjs +1 -19
- package/dist/packages/ui/src/hooks/use-route-lifecycle.mjs +1 -19
- package/dist/plugins/ai-chat/api/index.cjs +1 -0
- package/dist/plugins/ai-chat/api/index.d.cts +1 -2
- package/dist/plugins/ai-chat/api/index.d.mts +1 -2
- package/dist/plugins/ai-chat/api/index.d.ts +1 -2
- package/dist/plugins/ai-chat/api/index.mjs +1 -1
- package/dist/plugins/ai-chat/client/components/index.d.cts +1 -1
- package/dist/plugins/ai-chat/client/components/index.d.mts +1 -1
- package/dist/plugins/ai-chat/client/components/index.d.ts +1 -1
- package/dist/plugins/ai-chat/client/hooks/index.cjs +1 -0
- package/dist/plugins/ai-chat/client/hooks/index.d.cts +29 -55
- package/dist/plugins/ai-chat/client/hooks/index.d.mts +29 -55
- package/dist/plugins/ai-chat/client/hooks/index.d.ts +29 -55
- package/dist/plugins/ai-chat/client/hooks/index.mjs +1 -1
- package/dist/plugins/ai-chat/client/index.d.cts +26 -32
- package/dist/plugins/ai-chat/client/index.d.mts +26 -32
- package/dist/plugins/ai-chat/client/index.d.ts +26 -32
- package/dist/plugins/ai-chat/query-keys.cjs +53 -50
- package/dist/plugins/ai-chat/query-keys.d.cts +1 -2
- package/dist/plugins/ai-chat/query-keys.d.mts +1 -2
- package/dist/plugins/ai-chat/query-keys.d.ts +1 -2
- package/dist/plugins/ai-chat/query-keys.mjs +52 -50
- package/dist/plugins/api/index.cjs +2 -1
- package/dist/plugins/api/index.d.cts +27 -5
- package/dist/plugins/api/index.d.mts +27 -5
- package/dist/plugins/api/index.d.ts +27 -5
- package/dist/plugins/api/index.mjs +2 -1
- package/dist/plugins/blog/api/index.d.cts +4 -4
- package/dist/plugins/blog/api/index.d.mts +4 -4
- package/dist/plugins/blog/api/index.d.ts +4 -4
- package/dist/plugins/blog/client/components/index.d.cts +1 -2
- package/dist/plugins/blog/client/components/index.d.mts +1 -2
- package/dist/plugins/blog/client/components/index.d.ts +1 -2
- package/dist/plugins/blog/client/hooks/index.cjs +3 -1
- package/dist/plugins/blog/client/hooks/index.d.cts +5 -5
- package/dist/plugins/blog/client/hooks/index.d.mts +5 -5
- package/dist/plugins/blog/client/hooks/index.d.ts +5 -5
- package/dist/plugins/blog/client/hooks/index.mjs +3 -2
- package/dist/plugins/blog/client/index.d.cts +138 -235
- package/dist/plugins/blog/client/index.d.mts +138 -235
- package/dist/plugins/blog/client/index.d.ts +138 -235
- package/dist/plugins/blog/query-keys.cjs +116 -175
- package/dist/plugins/blog/query-keys.d.cts +4 -4
- package/dist/plugins/blog/query-keys.d.mts +4 -4
- package/dist/plugins/blog/query-keys.d.ts +4 -4
- package/dist/plugins/blog/query-keys.mjs +116 -176
- package/dist/plugins/client/hooks/index.cjs +13 -0
- package/dist/plugins/client/hooks/index.d.cts +204 -0
- package/dist/plugins/client/hooks/index.d.mts +204 -0
- package/dist/plugins/client/hooks/index.d.ts +204 -0
- package/dist/plugins/client/hooks/index.mjs +4 -0
- package/dist/plugins/client/index.cjs +12 -1
- package/dist/plugins/client/index.d.cts +6 -11
- package/dist/plugins/client/index.d.mts +6 -11
- package/dist/plugins/client/index.d.ts +6 -11
- package/dist/plugins/client/index.mjs +4 -2
- package/dist/plugins/cms/api/index.d.cts +3 -2
- package/dist/plugins/cms/api/index.d.mts +3 -2
- package/dist/plugins/cms/api/index.d.ts +3 -2
- package/dist/plugins/cms/client/components/index.d.cts +1 -2
- package/dist/plugins/cms/client/components/index.d.mts +1 -2
- package/dist/plugins/cms/client/components/index.d.ts +1 -2
- package/dist/plugins/cms/client/hooks/index.cjs +4 -0
- package/dist/plugins/cms/client/hooks/index.d.cts +385 -16
- package/dist/plugins/cms/client/hooks/index.d.mts +385 -16
- package/dist/plugins/cms/client/hooks/index.d.ts +385 -16
- package/dist/plugins/cms/client/hooks/index.mjs +1 -1
- package/dist/plugins/cms/client/index.d.cts +97 -136
- package/dist/plugins/cms/client/index.d.mts +97 -136
- package/dist/plugins/cms/client/index.d.ts +97 -136
- package/dist/plugins/cms/query-keys.cjs +159 -125
- package/dist/plugins/cms/query-keys.d.cts +424 -439
- package/dist/plugins/cms/query-keys.d.mts +424 -439
- package/dist/plugins/cms/query-keys.d.ts +424 -439
- package/dist/plugins/cms/query-keys.mjs +159 -126
- package/dist/plugins/comments/api/index.d.cts +3 -4
- package/dist/plugins/comments/api/index.d.mts +3 -4
- package/dist/plugins/comments/api/index.d.ts +3 -4
- package/dist/plugins/comments/client/components/index.d.cts +5 -24
- package/dist/plugins/comments/client/components/index.d.mts +5 -24
- package/dist/plugins/comments/client/components/index.d.ts +5 -24
- package/dist/plugins/comments/client/hooks/index.d.cts +2 -2
- package/dist/plugins/comments/client/hooks/index.d.mts +2 -2
- package/dist/plugins/comments/client/hooks/index.d.ts +2 -2
- package/dist/plugins/comments/client/index.d.cts +50 -113
- package/dist/plugins/comments/client/index.d.mts +50 -113
- package/dist/plugins/comments/client/index.d.ts +50 -113
- package/dist/plugins/comments/query-keys.cjs +112 -101
- package/dist/plugins/comments/query-keys.d.cts +295 -40
- package/dist/plugins/comments/query-keys.d.mts +295 -40
- package/dist/plugins/comments/query-keys.d.ts +295 -40
- package/dist/plugins/comments/query-keys.mjs +113 -103
- package/dist/plugins/form-builder/api/index.d.cts +1 -1
- package/dist/plugins/form-builder/api/index.d.mts +1 -1
- package/dist/plugins/form-builder/api/index.d.ts +1 -1
- package/dist/plugins/form-builder/client/components/index.d.cts +1 -2
- package/dist/plugins/form-builder/client/components/index.d.mts +1 -2
- package/dist/plugins/form-builder/client/components/index.d.ts +1 -2
- package/dist/plugins/form-builder/client/hooks/index.cjs +1 -0
- package/dist/plugins/form-builder/client/hooks/index.d.cts +229 -34
- package/dist/plugins/form-builder/client/hooks/index.d.mts +229 -34
- package/dist/plugins/form-builder/client/hooks/index.d.ts +229 -34
- package/dist/plugins/form-builder/client/hooks/index.mjs +1 -1
- package/dist/plugins/form-builder/client/index.d.cts +87 -129
- package/dist/plugins/form-builder/client/index.d.mts +87 -129
- package/dist/plugins/form-builder/client/index.d.ts +87 -129
- package/dist/plugins/form-builder/query-keys.cjs +119 -130
- package/dist/plugins/form-builder/query-keys.d.cts +337 -47
- package/dist/plugins/form-builder/query-keys.d.mts +337 -47
- package/dist/plugins/form-builder/query-keys.d.ts +337 -47
- package/dist/plugins/form-builder/query-keys.mjs +120 -132
- package/dist/plugins/kanban/api/index.d.cts +1 -1
- package/dist/plugins/kanban/api/index.d.mts +1 -1
- package/dist/plugins/kanban/api/index.d.ts +1 -1
- package/dist/plugins/kanban/client/components/index.d.cts +15 -9
- package/dist/plugins/kanban/client/components/index.d.mts +15 -9
- package/dist/plugins/kanban/client/components/index.d.ts +15 -9
- package/dist/plugins/kanban/client/hooks/index.cjs +3 -0
- package/dist/plugins/kanban/client/hooks/index.d.cts +33 -73
- package/dist/plugins/kanban/client/hooks/index.d.mts +33 -73
- package/dist/plugins/kanban/client/hooks/index.d.ts +33 -73
- package/dist/plugins/kanban/client/hooks/index.mjs +1 -1
- package/dist/plugins/kanban/client/index.d.cts +66 -86
- package/dist/plugins/kanban/client/index.d.mts +66 -86
- package/dist/plugins/kanban/client/index.d.ts +66 -86
- package/dist/plugins/kanban/query-keys.cjs +157 -89
- package/dist/plugins/kanban/query-keys.d.cts +363 -28
- package/dist/plugins/kanban/query-keys.d.mts +363 -28
- package/dist/plugins/kanban/query-keys.d.ts +363 -28
- package/dist/plugins/kanban/query-keys.mjs +157 -90
- package/dist/plugins/media/api/index.cjs +1 -0
- package/dist/plugins/media/api/index.d.cts +1 -2
- package/dist/plugins/media/api/index.d.mts +1 -2
- package/dist/plugins/media/api/index.d.ts +1 -2
- package/dist/plugins/media/api/index.mjs +1 -1
- package/dist/plugins/media/client/components/index.d.cts +3 -5
- package/dist/plugins/media/client/components/index.d.mts +3 -5
- package/dist/plugins/media/client/components/index.d.ts +3 -5
- package/dist/plugins/media/client/hooks/index.cjs +2 -0
- package/dist/plugins/media/client/hooks/index.d.cts +41 -32
- package/dist/plugins/media/client/hooks/index.d.mts +41 -32
- package/dist/plugins/media/client/hooks/index.d.ts +41 -32
- package/dist/plugins/media/client/hooks/index.mjs +1 -1
- package/dist/plugins/media/client/index.d.cts +29 -71
- package/dist/plugins/media/client/index.d.mts +29 -71
- package/dist/plugins/media/client/index.d.ts +29 -71
- package/dist/plugins/media/query-keys.cjs +92 -63
- package/dist/plugins/media/query-keys.d.cts +219 -32
- package/dist/plugins/media/query-keys.d.mts +219 -32
- package/dist/plugins/media/query-keys.d.ts +219 -32
- package/dist/plugins/media/query-keys.mjs +92 -64
- package/dist/plugins/open-api/api/index.d.cts +2 -1
- package/dist/plugins/open-api/api/index.d.mts +2 -1
- package/dist/plugins/open-api/api/index.d.ts +2 -1
- package/dist/plugins/route-docs/client/index.d.cts +25 -23
- package/dist/plugins/route-docs/client/index.d.mts +25 -23
- package/dist/plugins/route-docs/client/index.d.ts +25 -23
- package/dist/plugins/ui-builder/client/components/index.d.cts +1 -1
- package/dist/plugins/ui-builder/client/components/index.d.mts +1 -1
- package/dist/plugins/ui-builder/client/components/index.d.ts +1 -1
- package/dist/plugins/ui-builder/client/hooks/index.cjs +1 -0
- package/dist/plugins/ui-builder/client/hooks/index.d.cts +24 -94
- package/dist/plugins/ui-builder/client/hooks/index.d.mts +24 -94
- package/dist/plugins/ui-builder/client/hooks/index.d.ts +24 -94
- package/dist/plugins/ui-builder/client/hooks/index.mjs +1 -1
- package/dist/plugins/ui-builder/client/index.cjs +1 -0
- package/dist/plugins/ui-builder/client/index.d.cts +130 -143
- package/dist/plugins/ui-builder/client/index.d.mts +130 -143
- package/dist/plugins/ui-builder/client/index.d.ts +130 -143
- package/dist/plugins/ui-builder/client/index.mjs +1 -1
- package/dist/plugins/ui-builder/index.d.cts +118 -5
- package/dist/plugins/ui-builder/index.d.mts +118 -5
- package/dist/plugins/ui-builder/index.d.ts +118 -5
- package/dist/plugins/ui-builder/query-keys.cjs +140 -0
- package/dist/plugins/ui-builder/query-keys.d.cts +273 -0
- package/dist/plugins/ui-builder/query-keys.d.mts +273 -0
- package/dist/plugins/ui-builder/query-keys.d.ts +273 -0
- package/dist/plugins/ui-builder/query-keys.mjs +137 -0
- package/dist/react-router/index.cjs +11 -0
- package/dist/react-router/index.d.cts +122 -0
- package/dist/react-router/index.d.mts +122 -0
- package/dist/react-router/index.d.ts +122 -0
- package/dist/react-router/index.mjs +3 -0
- package/dist/shared/{stack.Dfc44JiE.d.mts → stack.3di7vQs6.d.mts} +37 -12
- package/dist/shared/{stack.BmMB0LNC.d.ts → stack.7b3vsM8_.d.ts} +1 -1
- package/dist/shared/{stack.DiodAFAa.d.mts → stack.80-y2TTR.d.mts} +358 -82
- package/dist/shared/{stack.sba323Ml.d.mts → stack.9BAOaSqE.d.cts} +30 -43
- package/dist/shared/{stack.sba323Ml.d.ts → stack.9BAOaSqE.d.mts} +30 -43
- package/dist/shared/{stack.sba323Ml.d.cts → stack.9BAOaSqE.d.ts} +30 -43
- package/dist/shared/stack.B-hEIoUw.d.ts +406 -0
- package/dist/shared/{stack.BOCvd9HK.d.cts → stack.B2xi4jj7.d.cts} +1 -1
- package/dist/shared/{stack.BYN8wCV6.d.cts → stack.B8vdOMnQ.d.cts} +10 -3
- package/dist/shared/{stack.BMx2QYOK.d.ts → stack.B9NtGpAR.d.ts} +30 -49
- package/dist/shared/{stack.BgQrdSlo.d.mts → stack.BISAZ5LX.d.mts} +153 -23
- package/dist/shared/{stack.CQnwAN7x.d.ts → stack.BL5PvShn.d.mts} +10 -0
- package/dist/shared/{stack.Cbsrl06u.d.cts → stack.BjvOk_Bs.d.cts} +153 -23
- package/dist/shared/{stack.ufcExQIR.d.ts → stack.Bk5UB_BT.d.ts} +358 -82
- package/dist/shared/{stack.CQnwAN7x.d.mts → stack.BqTR6qi2.d.ts} +10 -0
- package/dist/shared/stack.BvxHSZYT.d.cts +406 -0
- package/dist/shared/stack.Bz-YPsuX.d.cts +5 -0
- package/dist/shared/stack.Bz-YPsuX.d.mts +5 -0
- package/dist/shared/stack.Bz-YPsuX.d.ts +5 -0
- package/dist/shared/{stack.CO1g47IS.d.mts → stack.C1ATQ3pd.d.ts} +84 -3
- package/dist/shared/stack.C3GBG8in.d.cts +62 -0
- package/dist/shared/stack.C3GBG8in.d.mts +62 -0
- package/dist/shared/stack.C3GBG8in.d.ts +62 -0
- package/dist/shared/stack.C4_gEENS.d.cts +97 -0
- package/dist/shared/stack.C4_gEENS.d.mts +97 -0
- package/dist/shared/stack.C4_gEENS.d.ts +97 -0
- package/dist/shared/{stack.BrNVff5Q.d.cts → stack.C5Y5lViI.d.cts} +83 -8
- package/dist/shared/{stack.COetIi--.d.ts → stack.C8SwdUz8.d.ts} +83 -8
- package/dist/shared/{stack.CQnwAN7x.d.cts → stack.CBsp9rDM.d.cts} +10 -0
- package/dist/shared/{stack.BnSAhKJi.d.ts → stack.CRelKJfH.d.ts} +37 -12
- package/dist/shared/stack.CbZenbej.d.cts +251 -0
- package/dist/shared/stack.CbZenbej.d.mts +251 -0
- package/dist/shared/stack.CbZenbej.d.ts +251 -0
- package/dist/shared/{stack.RuQ9JCLo.d.ts → stack.Cf-DbL1A.d.ts} +10 -3
- package/dist/shared/{stack.Cd6McBu1.d.mts → stack.Cp_6mO5s.d.mts} +30 -49
- package/dist/shared/{stack.Ldfkr5b2.d.mts → stack.D7bewlgt.d.cts} +5 -1
- package/dist/shared/{stack.Ldfkr5b2.d.ts → stack.D7bewlgt.d.mts} +5 -1
- package/dist/shared/{stack.Ldfkr5b2.d.cts → stack.D7bewlgt.d.ts} +5 -1
- package/dist/shared/{stack.D88yU4FT.d.mts → stack.DHTvwoNG.d.mts} +10 -3
- package/dist/shared/stack.DIZh2qIJ.d.cts +5 -0
- package/dist/shared/stack.DIZh2qIJ.d.mts +5 -0
- package/dist/shared/stack.DIZh2qIJ.d.ts +5 -0
- package/dist/shared/{stack.CCncwK6g.d.cts → stack.DKZMaVr6.d.cts} +84 -3
- package/dist/shared/{stack.zpwVhSJb.d.mts → stack.DQq8DEIv.d.mts} +83 -8
- package/dist/shared/stack.Db7crl9u.d.cts +5 -0
- package/dist/shared/stack.Db7crl9u.d.mts +5 -0
- package/dist/shared/stack.Db7crl9u.d.ts +5 -0
- package/dist/shared/{stack.Fl2Kl_bt.d.ts → stack.Dd-8shBE.d.ts} +153 -23
- package/dist/shared/stack.Dg_m1SkT.d.cts +5 -0
- package/dist/shared/stack.Dg_m1SkT.d.mts +5 -0
- package/dist/shared/stack.Dg_m1SkT.d.ts +5 -0
- package/dist/shared/{stack.DxQl8Wa1.d.cts → stack.Dlgtumru.d.cts} +30 -49
- package/dist/shared/stack.DrUBX-QE.d.cts +34 -0
- package/dist/shared/stack.DrUBX-QE.d.mts +34 -0
- package/dist/shared/stack.DrUBX-QE.d.ts +34 -0
- package/dist/shared/{stack.BFoBvGML.d.mts → stack.DycBcTeg.d.mts} +1 -1
- package/dist/shared/{stack.CLWhMntf.d.cts → stack.H5B8miAV.d.cts} +358 -82
- package/dist/shared/{stack.DNLuzDb3.d.cts → stack.INBa9-TO.d.cts} +37 -12
- package/dist/shared/stack.VEqnNtYQ.d.cts +7 -0
- package/dist/shared/stack.VEqnNtYQ.d.mts +7 -0
- package/dist/shared/stack.VEqnNtYQ.d.ts +7 -0
- package/dist/shared/{stack.DFtpFS00.d.cts → stack.aXdBOJAR.d.cts} +1 -1
- package/dist/shared/{stack.DFtpFS00.d.mts → stack.aXdBOJAR.d.mts} +1 -1
- package/dist/shared/{stack.DFtpFS00.d.ts → stack.aXdBOJAR.d.ts} +1 -1
- package/dist/shared/stack.aqVZ6PEW.d.cts +67 -0
- package/dist/shared/stack.aqVZ6PEW.d.mts +67 -0
- package/dist/shared/stack.aqVZ6PEW.d.ts +67 -0
- package/dist/shared/stack.f8Vke-eH.d.mts +406 -0
- package/dist/shared/{stack.Bq3kiUaM.d.ts → stack.oBokjN_J.d.mts} +84 -3
- package/dist/tanstack/index.cjs +11 -0
- package/dist/tanstack/index.d.cts +110 -0
- package/dist/tanstack/index.d.mts +110 -0
- package/dist/tanstack/index.d.ts +110 -0
- package/dist/tanstack/index.mjs +3 -0
- package/package.json +98 -4
- package/src/__tests__/ai-chat-query-keys.test.ts +126 -0
- package/src/__tests__/auth-provider.test.tsx +404 -0
- package/src/__tests__/blog-query-keys.test.ts +86 -0
- package/src/__tests__/client-plugin-ssr-loaders.test.ts +78 -9
- package/src/__tests__/cms-query-keys.test.ts +62 -0
- package/src/__tests__/comments-query-keys.test.ts +108 -0
- package/src/__tests__/entry-factories.test.tsx +300 -0
- package/src/__tests__/form-builder-query-keys.test.ts +72 -0
- package/src/__tests__/i18n-provider.test.tsx +99 -0
- package/src/__tests__/kanban-query-keys.test.ts +51 -0
- package/src/__tests__/list-state.test.ts +89 -0
- package/src/__tests__/media-query-keys.test.ts +87 -0
- package/src/__tests__/notify-provider.test.tsx +100 -0
- package/src/__tests__/page-component-overrides.test.tsx +63 -57
- package/src/__tests__/resource-factory.test.tsx +659 -0
- package/src/__tests__/resource-use-form.test.tsx +346 -0
- package/src/__tests__/resource-use-select.test.tsx +243 -0
- package/src/__tests__/router-overrides.test.tsx +118 -0
- package/src/__tests__/stack-auth.test.ts +160 -0
- package/src/__tests__/stack-error.test.ts +174 -0
- package/src/__tests__/use-list-state.test.tsx +353 -0
- package/src/api/index.ts +86 -2
- package/src/client/components/compose.tsx +91 -5
- package/src/client/hooks/use-list-state.ts +260 -0
- package/src/client/index.ts +12 -0
- package/src/context/auth.tsx +255 -0
- package/src/context/i18n.tsx +57 -0
- package/src/context/index.ts +15 -0
- package/src/context/notify.tsx +66 -0
- package/src/context/provider.tsx +170 -22
- package/src/context/router.tsx +70 -0
- package/src/next/handlers.ts +24 -0
- package/src/next/index.tsx +11 -0
- package/src/next/page.tsx +106 -0
- package/src/next/router.tsx +102 -0
- package/src/plugins/ai-chat/__tests__/client-sweep.test.tsx +317 -0
- package/src/plugins/ai-chat/__tests__/hooks.test.tsx +126 -0
- package/src/plugins/ai-chat/api/index.ts +7 -1
- package/src/plugins/ai-chat/api/plugin.ts +8 -9
- package/src/plugins/ai-chat/client/components/chat-input.tsx +51 -11
- package/src/plugins/ai-chat/client/components/chat-interface.tsx +81 -33
- package/src/plugins/ai-chat/client/components/chat-layout.tsx +59 -16
- package/src/plugins/ai-chat/client/components/chat-message.tsx +106 -24
- package/src/plugins/ai-chat/client/components/chat-sidebar.tsx +208 -68
- package/src/plugins/ai-chat/client/components/pages/404-page.tsx +13 -7
- package/src/plugins/ai-chat/client/components/pages/chat-page.internal.tsx +20 -7
- package/src/plugins/ai-chat/client/components/pages/chat-page.tsx +10 -1
- package/src/plugins/ai-chat/client/components/shared/default-error.tsx +18 -9
- package/src/plugins/ai-chat/client/components/tool-call-display.tsx +52 -25
- package/src/plugins/ai-chat/client/hooks/ai-chat-resource.ts +10 -0
- package/src/plugins/ai-chat/client/hooks/chat-hooks.tsx +89 -269
- package/src/plugins/ai-chat/client/localization/index.ts +110 -0
- package/src/plugins/ai-chat/client/overrides.ts +2 -52
- package/src/plugins/ai-chat/client/plugin.tsx +95 -93
- package/src/plugins/ai-chat/query-keys.ts +78 -73
- package/src/plugins/ai-chat/schemas.ts +1 -1
- package/src/plugins/api/create-endpoint.ts +82 -0
- package/src/plugins/api/index.ts +4 -1
- package/src/plugins/blog/__tests__/client-sweep.test.tsx +415 -0
- package/src/plugins/blog/api/plugin.ts +7 -7
- package/src/plugins/blog/client/components/forms/image-field.tsx +76 -37
- package/src/plugins/blog/client/components/forms/markdown-editor-with-overrides.tsx +7 -7
- package/src/plugins/blog/client/components/forms/post-forms.tsx +312 -164
- package/src/plugins/blog/client/components/forms/tags-multiselect.tsx +6 -1
- package/src/plugins/blog/client/components/pages/404-page.tsx +13 -10
- package/src/plugins/blog/client/components/pages/edit-post-page.internal.tsx +22 -20
- package/src/plugins/blog/client/components/pages/edit-post-page.tsx +1 -0
- package/src/plugins/blog/client/components/pages/home-page.internal.tsx +7 -19
- package/src/plugins/blog/client/components/pages/home-page.tsx +3 -0
- package/src/plugins/blog/client/components/pages/new-post-page.internal.tsx +22 -20
- package/src/plugins/blog/client/components/pages/new-post-page.tsx +1 -0
- package/src/plugins/blog/client/components/pages/post-page.internal.tsx +19 -17
- package/src/plugins/blog/client/components/pages/tag-page.internal.tsx +27 -12
- package/src/plugins/blog/client/components/shared/collapsible-tag-list.tsx +19 -17
- package/src/plugins/blog/client/components/shared/default-error.tsx +11 -11
- package/src/plugins/blog/client/components/shared/markdown-content.tsx +5 -10
- package/src/plugins/blog/client/components/shared/on-this-page.tsx +13 -16
- package/src/plugins/blog/client/components/shared/post-card.tsx +13 -13
- package/src/plugins/blog/client/components/shared/post-navigation.tsx +6 -10
- package/src/plugins/blog/client/components/shared/posts-list.tsx +28 -15
- package/src/plugins/blog/client/components/shared/recent-posts-carousel.tsx +14 -7
- package/src/plugins/blog/client/components/shared/search-input.tsx +19 -8
- package/src/plugins/blog/client/components/shared/search-modal.tsx +70 -22
- package/src/plugins/blog/client/hooks/blog-hooks.tsx +50 -356
- package/src/plugins/blog/client/hooks/blog-resource.ts +13 -0
- package/src/plugins/blog/client/hooks/use-debounce.ts +2 -13
- package/src/plugins/blog/client/localization/blog-forms.ts +1 -0
- package/src/plugins/blog/client/overrides.ts +2 -72
- package/src/plugins/blog/client/plugin.tsx +52 -87
- package/src/plugins/blog/query-keys.ts +157 -248
- package/src/plugins/client/hooks/index.tsx +32 -0
- package/src/plugins/client/index.ts +37 -3
- package/src/plugins/client/resource/errors.ts +160 -0
- package/src/plugins/client/resource/hooks.tsx +285 -0
- package/src/plugins/client/resource/internal.ts +136 -0
- package/src/plugins/client/resource/queries.ts +330 -0
- package/src/plugins/client/resource/use-debounce.ts +18 -0
- package/src/plugins/client/resource/use-form.ts +236 -0
- package/src/plugins/client/resource/use-select.ts +196 -0
- package/src/plugins/cms/__tests__/client-sweep.test.tsx +553 -0
- package/src/plugins/cms/__tests__/getters.test.ts +100 -0
- package/src/plugins/cms/api/getters.ts +72 -11
- package/src/plugins/cms/api/plugin.ts +17 -8
- package/src/plugins/cms/api/query-key-defs.ts +11 -2
- package/src/plugins/cms/client/components/forms/content-form.tsx +123 -21
- package/src/plugins/cms/client/components/forms/file-upload.tsx +18 -4
- package/src/plugins/cms/client/components/forms/relation-field.tsx +92 -129
- package/src/plugins/cms/client/components/inverse-relations-panel.tsx +120 -99
- package/src/plugins/cms/client/components/pages/404-page.tsx +20 -6
- package/src/plugins/cms/client/components/pages/content-editor-page.internal.tsx +76 -28
- package/src/plugins/cms/client/components/pages/content-editor-page.tsx +9 -0
- package/src/plugins/cms/client/components/pages/content-list-page.internal.tsx +316 -109
- package/src/plugins/cms/client/components/pages/dashboard-page.internal.tsx +46 -31
- package/src/plugins/cms/client/hooks/cms-hooks.tsx +223 -553
- package/src/plugins/cms/client/hooks/cms-resource.ts +13 -0
- package/src/plugins/cms/client/localization/cms-common.ts +8 -0
- package/src/plugins/cms/client/localization/cms-editor.ts +5 -0
- package/src/plugins/cms/client/localization/cms-list.ts +3 -0
- package/src/plugins/cms/client/localization/cms-relations.ts +23 -0
- package/src/plugins/cms/client/localization/index.ts +2 -0
- package/src/plugins/cms/client/overrides.ts +2 -62
- package/src/plugins/cms/client/plugin.tsx +53 -90
- package/src/plugins/cms/query-keys.ts +268 -160
- package/src/plugins/cms/schemas.ts +1 -0
- package/src/plugins/comments/__tests__/client-sweep.test.tsx +605 -0
- package/src/plugins/comments/api/plugin.ts +11 -11
- package/src/plugins/comments/client/components/comment-count.tsx +3 -9
- package/src/plugins/comments/client/components/comment-form.tsx +40 -13
- package/src/plugins/comments/client/components/comment-thread.tsx +112 -67
- package/src/plugins/comments/client/components/pages/moderation-page.internal.tsx +312 -143
- package/src/plugins/comments/client/components/pages/moderation-page.tsx +2 -14
- package/src/plugins/comments/client/components/pages/my-comments-page.internal.tsx +123 -57
- package/src/plugins/comments/client/components/pages/my-comments-page.tsx +1 -14
- package/src/plugins/comments/client/components/pages/resource-comments-page.internal.tsx +105 -65
- package/src/plugins/comments/client/components/pages/resource-comments-page.tsx +1 -21
- package/src/plugins/comments/client/components/shared/pagination.tsx +15 -7
- package/src/plugins/comments/client/hooks/use-comments.tsx +56 -70
- package/src/plugins/comments/client/overrides.ts +1 -67
- package/src/plugins/comments/client/plugin.tsx +10 -10
- package/src/plugins/comments/client/utils.ts +11 -42
- package/src/plugins/comments/query-keys.ts +162 -152
- package/src/plugins/form-builder/__tests__/client-sweep.test.tsx +564 -0
- package/src/plugins/form-builder/__tests__/getters.test.ts +48 -1
- package/src/plugins/form-builder/api/getters.ts +58 -11
- package/src/plugins/form-builder/api/plugin.ts +13 -17
- package/src/plugins/form-builder/api/query-key-defs.ts +10 -1
- package/src/plugins/form-builder/client/components/forms/form-renderer.tsx +56 -18
- package/src/plugins/form-builder/client/components/pages/404-page.tsx +21 -6
- package/src/plugins/form-builder/client/components/pages/form-builder-page.internal.tsx +121 -65
- package/src/plugins/form-builder/client/components/pages/form-builder-page.tsx +34 -8
- package/src/plugins/form-builder/client/components/pages/form-list-page.internal.tsx +252 -75
- package/src/plugins/form-builder/client/components/pages/form-list-page.tsx +24 -8
- package/src/plugins/form-builder/client/components/pages/submissions-page.internal.tsx +142 -47
- package/src/plugins/form-builder/client/components/pages/submissions-page.tsx +33 -8
- package/src/plugins/form-builder/client/components/shared/pagination.tsx +3 -1
- package/src/plugins/form-builder/client/hooks/form-builder-hooks.tsx +84 -537
- package/src/plugins/form-builder/client/hooks/form-builder-resource.ts +14 -0
- package/src/plugins/form-builder/client/localization/form-builder-common.ts +6 -0
- package/src/plugins/form-builder/client/localization/form-builder-list.ts +6 -2
- package/src/plugins/form-builder/client/localization/form-builder-renderer.ts +10 -0
- package/src/plugins/form-builder/client/localization/form-builder-submissions.ts +7 -0
- package/src/plugins/form-builder/client/localization/form-builder-toasts.ts +4 -0
- package/src/plugins/form-builder/client/localization/index.ts +2 -0
- package/src/plugins/form-builder/client/overrides.ts +2 -56
- package/src/plugins/form-builder/client/plugin.tsx +44 -102
- package/src/plugins/form-builder/query-keys.ts +200 -160
- package/src/plugins/form-builder/schemas.ts +8 -1
- package/src/plugins/kanban/__tests__/client-sweep.test.tsx +297 -0
- package/src/plugins/kanban/api/plugin.ts +15 -15
- package/src/plugins/kanban/client/components/forms/board-form.tsx +89 -42
- package/src/plugins/kanban/client/components/forms/column-form.tsx +68 -35
- package/src/plugins/kanban/client/components/forms/task-form.tsx +259 -128
- package/src/plugins/kanban/client/components/pages/404-page.tsx +22 -7
- package/src/plugins/kanban/client/components/pages/board-page.internal.tsx +229 -98
- package/src/plugins/kanban/client/components/pages/board-page.tsx +5 -0
- package/src/plugins/kanban/client/components/pages/boards-list-page.internal.tsx +46 -18
- package/src/plugins/kanban/client/components/pages/boards-list-page.tsx +1 -0
- package/src/plugins/kanban/client/components/pages/new-board-page.internal.tsx +26 -9
- package/src/plugins/kanban/client/components/pages/new-board-page.tsx +1 -0
- package/src/plugins/kanban/client/components/shared/column-content.tsx +96 -32
- package/src/plugins/kanban/client/components/shared/default-error.tsx +14 -3
- package/src/plugins/kanban/client/components/shared/kanban-board.tsx +9 -0
- package/src/plugins/kanban/client/components/shared/task-card.tsx +42 -8
- package/src/plugins/kanban/client/components/shared/user-avatar.tsx +12 -2
- package/src/plugins/kanban/client/hooks/index.tsx +3 -0
- package/src/plugins/kanban/client/hooks/kanban-hooks.tsx +74 -437
- package/src/plugins/kanban/client/hooks/kanban-resource.ts +13 -0
- package/src/plugins/kanban/client/localization/kanban-common.ts +24 -0
- package/src/plugins/kanban/client/localization/kanban-forms.ts +11 -0
- package/src/plugins/kanban/client/localization/kanban-list.ts +25 -0
- package/src/plugins/kanban/client/overrides.ts +2 -57
- package/src/plugins/kanban/client/plugin.tsx +31 -55
- package/src/plugins/kanban/query-keys.ts +253 -129
- package/src/plugins/media/__tests__/client-sweep.test.tsx +269 -0
- package/src/plugins/media/__tests__/getters.test.ts +33 -1
- package/src/plugins/media/__tests__/plugin.test.ts +23 -14
- package/src/plugins/media/api/getters.ts +7 -4
- package/src/plugins/media/api/index.ts +5 -1
- package/src/plugins/media/api/plugin.ts +14 -15
- package/src/plugins/media/api/query-key-defs.ts +13 -4
- package/src/plugins/media/client/components/media-picker/asset-card.tsx +55 -32
- package/src/plugins/media/client/components/media-picker/asset-preview-button.tsx +7 -3
- package/src/plugins/media/client/components/media-picker/browse-tab.tsx +35 -12
- package/src/plugins/media/client/components/media-picker/folder-tree.tsx +74 -34
- package/src/plugins/media/client/components/media-picker/index.tsx +82 -55
- package/src/plugins/media/client/components/media-picker/upload-tab.tsx +39 -7
- package/src/plugins/media/client/components/media-picker/url-tab.tsx +33 -20
- package/src/plugins/media/client/components/pages/library-page.internal.tsx +97 -42
- package/src/plugins/media/client/components/pages/library-page.tsx +1 -0
- package/src/plugins/media/client/hooks/index.tsx +8 -0
- package/src/plugins/media/client/hooks/media-resource.ts +10 -0
- package/src/plugins/media/client/hooks/use-media.tsx +132 -256
- package/src/plugins/media/client/overrides.ts +0 -51
- package/src/plugins/media/client/plugin.tsx +12 -11
- package/src/plugins/media/client/upload.ts +10 -6
- package/src/plugins/media/query-keys.ts +132 -81
- package/src/plugins/media/schemas.ts +16 -1
- package/src/plugins/route-docs/client/plugin.tsx +13 -15
- package/src/plugins/ui-builder/__tests__/client-sweep.test.tsx +333 -0
- package/src/plugins/ui-builder/client/components/page-renderer.tsx +26 -3
- package/src/plugins/ui-builder/client/components/pages/page-builder-page.internal.tsx +155 -47
- package/src/plugins/ui-builder/client/components/pages/page-builder-page.tsx +28 -7
- package/src/plugins/ui-builder/client/components/pages/page-list-page.internal.tsx +201 -57
- package/src/plugins/ui-builder/client/components/pages/page-list-page.tsx +21 -7
- package/src/plugins/ui-builder/client/components/shared/default-error.tsx +22 -5
- package/src/plugins/ui-builder/client/components/shared/pagination.tsx +3 -1
- package/src/plugins/ui-builder/client/hooks/index.tsx +3 -0
- package/src/plugins/ui-builder/client/hooks/ui-builder-hooks.tsx +73 -546
- package/src/plugins/ui-builder/client/hooks/ui-builder-resource.ts +10 -0
- package/src/plugins/ui-builder/client/index.ts +4 -0
- package/src/plugins/ui-builder/client/localization/index.ts +88 -11
- package/src/plugins/ui-builder/client/overrides.ts +6 -28
- package/src/plugins/ui-builder/client/plugin.tsx +38 -85
- package/src/plugins/ui-builder/query-keys.ts +216 -0
- package/src/plugins/utils.ts +4 -76
- package/src/react-router/handlers.ts +26 -0
- package/src/react-router/index.tsx +11 -0
- package/src/react-router/page.tsx +139 -0
- package/src/react-router/router.tsx +63 -0
- package/src/shared/auth-types.ts +98 -0
- package/src/shared/entry-factories.ts +55 -0
- package/src/shared/i18n-types.ts +31 -0
- package/src/shared/interpolate.ts +14 -0
- package/src/shared/list-state.ts +147 -0
- package/src/shared/notify-types.ts +29 -0
- package/src/tanstack/handlers.ts +28 -0
- package/src/tanstack/index.tsx +10 -0
- package/src/tanstack/page.tsx +96 -0
- package/src/tanstack/router.tsx +61 -0
- package/src/types.ts +17 -0
- package/dist/packages/stack/src/plugins/blog/client/localization/blog-card.cjs +0 -7
- package/dist/packages/stack/src/plugins/blog/client/localization/blog-card.mjs +0 -5
- package/dist/packages/stack/src/plugins/blog/client/localization/blog-common.cjs +0 -12
- package/dist/packages/stack/src/plugins/blog/client/localization/blog-common.mjs +0 -10
- package/dist/packages/stack/src/plugins/blog/client/localization/blog-forms.cjs +0 -48
- package/dist/packages/stack/src/plugins/blog/client/localization/blog-forms.mjs +0 -46
- package/dist/packages/stack/src/plugins/blog/client/localization/blog-list.cjs +0 -18
- package/dist/packages/stack/src/plugins/blog/client/localization/blog-list.mjs +0 -16
- package/dist/packages/stack/src/plugins/blog/client/localization/blog-post.cjs +0 -13
- package/dist/packages/stack/src/plugins/blog/client/localization/blog-post.mjs +0 -11
- package/dist/packages/stack/src/plugins/blog/client/localization/index.cjs +0 -17
- package/dist/packages/stack/src/plugins/blog/client/localization/index.mjs +0 -15
- package/dist/packages/stack/src/plugins/cms/client/localization/cms-common.cjs +0 -29
- package/dist/packages/stack/src/plugins/cms/client/localization/cms-common.mjs +0 -27
- package/dist/packages/stack/src/plugins/cms/client/localization/cms-dashboard.cjs +0 -13
- package/dist/packages/stack/src/plugins/cms/client/localization/cms-dashboard.mjs +0 -11
- package/dist/packages/stack/src/plugins/cms/client/localization/cms-editor.cjs +0 -12
- package/dist/packages/stack/src/plugins/cms/client/localization/cms-editor.mjs +0 -10
- package/dist/packages/stack/src/plugins/cms/client/localization/cms-list.cjs +0 -18
- package/dist/packages/stack/src/plugins/cms/client/localization/cms-list.mjs +0 -16
- package/dist/packages/stack/src/plugins/cms/client/localization/cms-toasts.cjs +0 -12
- package/dist/packages/stack/src/plugins/cms/client/localization/cms-toasts.mjs +0 -10
- package/dist/packages/stack/src/plugins/cms/client/localization/index.cjs +0 -17
- package/dist/packages/stack/src/plugins/cms/client/localization/index.mjs +0 -15
- package/dist/packages/stack/src/plugins/comments/error-utils.cjs +0 -15
- package/dist/packages/stack/src/plugins/comments/error-utils.mjs +0 -13
- package/dist/packages/stack/src/plugins/form-builder/client/localization/form-builder-common.cjs +0 -36
- package/dist/packages/stack/src/plugins/form-builder/client/localization/form-builder-common.mjs +0 -34
- package/dist/packages/stack/src/plugins/form-builder/client/localization/form-builder-editor.cjs +0 -19
- package/dist/packages/stack/src/plugins/form-builder/client/localization/form-builder-editor.mjs +0 -17
- package/dist/packages/stack/src/plugins/form-builder/client/localization/form-builder-list.cjs +0 -21
- package/dist/packages/stack/src/plugins/form-builder/client/localization/form-builder-list.mjs +0 -19
- package/dist/packages/stack/src/plugins/form-builder/client/localization/form-builder-submissions.cjs +0 -19
- package/dist/packages/stack/src/plugins/form-builder/client/localization/form-builder-submissions.mjs +0 -17
- package/dist/packages/stack/src/plugins/form-builder/client/localization/form-builder-toasts.cjs +0 -14
- package/dist/packages/stack/src/plugins/form-builder/client/localization/form-builder-toasts.mjs +0 -12
- package/dist/packages/stack/src/plugins/form-builder/client/localization/index.cjs +0 -17
- package/dist/packages/stack/src/plugins/form-builder/client/localization/index.mjs +0 -15
- package/dist/shared/stack.C1nXGBr6.d.cts +0 -116
- package/dist/shared/stack.C7KNNiJm.d.cts +0 -144
- package/dist/shared/stack.C7KNNiJm.d.mts +0 -144
- package/dist/shared/stack.C7KNNiJm.d.ts +0 -144
- package/dist/shared/stack.C7u9lq9T.d.mts +0 -75
- package/dist/shared/stack.DD-ZORI7.d.ts +0 -75
- package/dist/shared/stack.DLPa6Gzm.d.mts +0 -116
- package/dist/shared/stack.DxJ-tHLt.d.ts +0 -116
- package/dist/shared/stack.jU2iG86n.d.cts +0 -75
- package/src/plugins/cms/client/components/shared/pagination.tsx +0 -44
- package/src/plugins/comments/error-utils.ts +0 -17
- package/dist/shared/{stack.CuhcFsAx.d.cts → stack.B0muOwUF.d.cts} +9 -9
- package/dist/shared/{stack.CuhcFsAx.d.mts → stack.B0muOwUF.d.mts} +9 -9
- package/dist/shared/{stack.CuhcFsAx.d.ts → stack.B0muOwUF.d.ts} +9 -9
- package/dist/shared/{stack.D4Cea8II.d.ts → stack.CMbX8Q5C.d.ts} +13 -13
- package/dist/shared/{stack.HE_IvqV5.d.mts → stack.Dj04W2c3.d.mts} +13 -13
- package/dist/shared/{stack.Rtcvl8sS.d.cts → stack.eq5eg1yt.d.cts} +13 -13
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Comment status values
|
|
3
|
+
*/
|
|
4
|
+
type CommentStatus = "pending" | "approved" | "spam";
|
|
5
|
+
/**
|
|
6
|
+
* A comment record as stored in the database
|
|
7
|
+
*/
|
|
8
|
+
type Comment = {
|
|
9
|
+
id: string;
|
|
10
|
+
resourceId: string;
|
|
11
|
+
resourceType: string;
|
|
12
|
+
parentId: string | null;
|
|
13
|
+
authorId: string;
|
|
14
|
+
body: string;
|
|
15
|
+
status: CommentStatus;
|
|
16
|
+
likes: number;
|
|
17
|
+
editedAt?: Date;
|
|
18
|
+
createdAt: Date;
|
|
19
|
+
updatedAt: Date;
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* A comment enriched with server-resolved author info and like status.
|
|
23
|
+
* All dates are ISO strings (safe for serialisation over HTTP / React Query cache).
|
|
24
|
+
*/
|
|
25
|
+
interface SerializedComment {
|
|
26
|
+
id: string;
|
|
27
|
+
resourceId: string;
|
|
28
|
+
resourceType: string;
|
|
29
|
+
parentId: string | null;
|
|
30
|
+
authorId: string;
|
|
31
|
+
/** Resolved from resolveUser(authorId). Falls back to "[deleted]" when user cannot be found. */
|
|
32
|
+
resolvedAuthorName: string;
|
|
33
|
+
/** Resolved avatar URL or null */
|
|
34
|
+
resolvedAvatarUrl: string | null;
|
|
35
|
+
body: string;
|
|
36
|
+
status: CommentStatus;
|
|
37
|
+
/** Denormalized counter — updated atomically on toggleLike */
|
|
38
|
+
likes: number;
|
|
39
|
+
/** True when the currentUserId query param matches an existing commentLike row */
|
|
40
|
+
isLikedByCurrentUser: boolean;
|
|
41
|
+
/** ISO string set when the comment body was edited; null for unedited comments */
|
|
42
|
+
editedAt: string | null;
|
|
43
|
+
createdAt: string;
|
|
44
|
+
updatedAt: string;
|
|
45
|
+
/**
|
|
46
|
+
* Number of direct replies visible to the requesting user.
|
|
47
|
+
* Includes approved replies plus any pending replies authored by `currentUserId`.
|
|
48
|
+
* Always 0 for reply comments (non-null parentId).
|
|
49
|
+
*/
|
|
50
|
+
replyCount: number;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Paginated list result for comments
|
|
54
|
+
*/
|
|
55
|
+
interface CommentListResult {
|
|
56
|
+
items: SerializedComment[];
|
|
57
|
+
total: number;
|
|
58
|
+
limit: number;
|
|
59
|
+
offset: number;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
export type { CommentListResult as C, SerializedComment as S, Comment as a };
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared auth contract types used by both the client provider
|
|
3
|
+
* (`@btst/stack/context`) and the backend (`@btst/stack/api`).
|
|
4
|
+
*
|
|
5
|
+
* This module is intentionally type-only so it can be imported from server
|
|
6
|
+
* and client code alike.
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* The identity of the current user as resolved by an auth provider.
|
|
10
|
+
* Extra provider-specific fields are allowed.
|
|
11
|
+
*/
|
|
12
|
+
interface StackIdentity {
|
|
13
|
+
/** Unique user id */
|
|
14
|
+
id: string;
|
|
15
|
+
/** Display name */
|
|
16
|
+
name?: string;
|
|
17
|
+
/** Email address */
|
|
18
|
+
email?: string;
|
|
19
|
+
/** Avatar image URL */
|
|
20
|
+
image?: string;
|
|
21
|
+
/** Additional provider-specific fields */
|
|
22
|
+
[key: string]: unknown;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* A permission check request: "can the current user perform `action` on
|
|
26
|
+
* `resource`?" (e.g. resource `"blog:post"`, action `"delete"`).
|
|
27
|
+
*/
|
|
28
|
+
interface CanParams {
|
|
29
|
+
/** The resource being accessed (e.g. "blog:post", "comments:moderate") */
|
|
30
|
+
resource: string;
|
|
31
|
+
/** The action being performed (e.g. "read", "create", "delete") */
|
|
32
|
+
action: string;
|
|
33
|
+
/** Optional extra parameters (e.g. the specific record id) */
|
|
34
|
+
params?: Record<string, unknown>;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Client-side auth provider, passed to `StackProvider` via the `auth` prop.
|
|
38
|
+
*
|
|
39
|
+
* All fields besides `getIdentity` are optional:
|
|
40
|
+
* - Without `can`, every permission check resolves to `true`.
|
|
41
|
+
* - Without `loginPath`, denied route access is not redirected.
|
|
42
|
+
*
|
|
43
|
+
* @example
|
|
44
|
+
* ```tsx
|
|
45
|
+
* const authProvider: StackAuthProvider = {
|
|
46
|
+
* getIdentity: () => authClient.getSession().then((s) => s?.user ?? null),
|
|
47
|
+
* can: ({ resource, action }) => checkPermission(resource, action),
|
|
48
|
+
* loginPath: "/login",
|
|
49
|
+
* };
|
|
50
|
+
*
|
|
51
|
+
* <StackProvider auth={authProvider} ...>
|
|
52
|
+
* ```
|
|
53
|
+
*/
|
|
54
|
+
interface StackAuthProvider {
|
|
55
|
+
/**
|
|
56
|
+
* Resolve the current user's identity. Return `null` when unauthenticated.
|
|
57
|
+
*/
|
|
58
|
+
getIdentity: () => Promise<StackIdentity | null> | StackIdentity | null;
|
|
59
|
+
/**
|
|
60
|
+
* Permission check. When omitted, all `useCan()` / `<CanAccess>` checks
|
|
61
|
+
* resolve to `true`.
|
|
62
|
+
*/
|
|
63
|
+
can?: (params: CanParams & {
|
|
64
|
+
identity: StackIdentity | null;
|
|
65
|
+
}) => Promise<boolean> | boolean;
|
|
66
|
+
/**
|
|
67
|
+
* Path unauthenticated users are redirected to when route-level permission
|
|
68
|
+
* checks deny access (e.g. "/login").
|
|
69
|
+
*/
|
|
70
|
+
loginPath?: string;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Server-side auth provider, passed to `stack()` via the `auth` config option.
|
|
74
|
+
* `stack()` resolves the identity lazily and at most once per request; plugin
|
|
75
|
+
* lifecycle hooks can read it via `getRequestIdentity(headers)` from
|
|
76
|
+
* `@btst/stack/api`.
|
|
77
|
+
*/
|
|
78
|
+
interface StackServerAuthProvider {
|
|
79
|
+
/**
|
|
80
|
+
* Resolve the identity for an incoming request (e.g. from a session
|
|
81
|
+
* cookie). Return `null` when unauthenticated.
|
|
82
|
+
*/
|
|
83
|
+
getIdentity: (ctx: {
|
|
84
|
+
headers: Headers;
|
|
85
|
+
request: Request;
|
|
86
|
+
}) => Promise<StackIdentity | null> | StackIdentity | null;
|
|
87
|
+
/**
|
|
88
|
+
* Optional server-side permission check, for consumers and plugins that
|
|
89
|
+
* want to share one `can` implementation across lifecycle hooks.
|
|
90
|
+
*/
|
|
91
|
+
can?: (params: CanParams & {
|
|
92
|
+
identity: StackIdentity | null;
|
|
93
|
+
headers: Headers;
|
|
94
|
+
}) => Promise<boolean> | boolean;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
export type { CanParams as C, StackServerAuthProvider as S, StackAuthProvider as a, StackIdentity as b };
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared auth contract types used by both the client provider
|
|
3
|
+
* (`@btst/stack/context`) and the backend (`@btst/stack/api`).
|
|
4
|
+
*
|
|
5
|
+
* This module is intentionally type-only so it can be imported from server
|
|
6
|
+
* and client code alike.
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* The identity of the current user as resolved by an auth provider.
|
|
10
|
+
* Extra provider-specific fields are allowed.
|
|
11
|
+
*/
|
|
12
|
+
interface StackIdentity {
|
|
13
|
+
/** Unique user id */
|
|
14
|
+
id: string;
|
|
15
|
+
/** Display name */
|
|
16
|
+
name?: string;
|
|
17
|
+
/** Email address */
|
|
18
|
+
email?: string;
|
|
19
|
+
/** Avatar image URL */
|
|
20
|
+
image?: string;
|
|
21
|
+
/** Additional provider-specific fields */
|
|
22
|
+
[key: string]: unknown;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* A permission check request: "can the current user perform `action` on
|
|
26
|
+
* `resource`?" (e.g. resource `"blog:post"`, action `"delete"`).
|
|
27
|
+
*/
|
|
28
|
+
interface CanParams {
|
|
29
|
+
/** The resource being accessed (e.g. "blog:post", "comments:moderate") */
|
|
30
|
+
resource: string;
|
|
31
|
+
/** The action being performed (e.g. "read", "create", "delete") */
|
|
32
|
+
action: string;
|
|
33
|
+
/** Optional extra parameters (e.g. the specific record id) */
|
|
34
|
+
params?: Record<string, unknown>;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Client-side auth provider, passed to `StackProvider` via the `auth` prop.
|
|
38
|
+
*
|
|
39
|
+
* All fields besides `getIdentity` are optional:
|
|
40
|
+
* - Without `can`, every permission check resolves to `true`.
|
|
41
|
+
* - Without `loginPath`, denied route access is not redirected.
|
|
42
|
+
*
|
|
43
|
+
* @example
|
|
44
|
+
* ```tsx
|
|
45
|
+
* const authProvider: StackAuthProvider = {
|
|
46
|
+
* getIdentity: () => authClient.getSession().then((s) => s?.user ?? null),
|
|
47
|
+
* can: ({ resource, action }) => checkPermission(resource, action),
|
|
48
|
+
* loginPath: "/login",
|
|
49
|
+
* };
|
|
50
|
+
*
|
|
51
|
+
* <StackProvider auth={authProvider} ...>
|
|
52
|
+
* ```
|
|
53
|
+
*/
|
|
54
|
+
interface StackAuthProvider {
|
|
55
|
+
/**
|
|
56
|
+
* Resolve the current user's identity. Return `null` when unauthenticated.
|
|
57
|
+
*/
|
|
58
|
+
getIdentity: () => Promise<StackIdentity | null> | StackIdentity | null;
|
|
59
|
+
/**
|
|
60
|
+
* Permission check. When omitted, all `useCan()` / `<CanAccess>` checks
|
|
61
|
+
* resolve to `true`.
|
|
62
|
+
*/
|
|
63
|
+
can?: (params: CanParams & {
|
|
64
|
+
identity: StackIdentity | null;
|
|
65
|
+
}) => Promise<boolean> | boolean;
|
|
66
|
+
/**
|
|
67
|
+
* Path unauthenticated users are redirected to when route-level permission
|
|
68
|
+
* checks deny access (e.g. "/login").
|
|
69
|
+
*/
|
|
70
|
+
loginPath?: string;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Server-side auth provider, passed to `stack()` via the `auth` config option.
|
|
74
|
+
* `stack()` resolves the identity lazily and at most once per request; plugin
|
|
75
|
+
* lifecycle hooks can read it via `getRequestIdentity(headers)` from
|
|
76
|
+
* `@btst/stack/api`.
|
|
77
|
+
*/
|
|
78
|
+
interface StackServerAuthProvider {
|
|
79
|
+
/**
|
|
80
|
+
* Resolve the identity for an incoming request (e.g. from a session
|
|
81
|
+
* cookie). Return `null` when unauthenticated.
|
|
82
|
+
*/
|
|
83
|
+
getIdentity: (ctx: {
|
|
84
|
+
headers: Headers;
|
|
85
|
+
request: Request;
|
|
86
|
+
}) => Promise<StackIdentity | null> | StackIdentity | null;
|
|
87
|
+
/**
|
|
88
|
+
* Optional server-side permission check, for consumers and plugins that
|
|
89
|
+
* want to share one `can` implementation across lifecycle hooks.
|
|
90
|
+
*/
|
|
91
|
+
can?: (params: CanParams & {
|
|
92
|
+
identity: StackIdentity | null;
|
|
93
|
+
headers: Headers;
|
|
94
|
+
}) => Promise<boolean> | boolean;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
export type { CanParams as C, StackServerAuthProvider as S, StackAuthProvider as a, StackIdentity as b };
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared auth contract types used by both the client provider
|
|
3
|
+
* (`@btst/stack/context`) and the backend (`@btst/stack/api`).
|
|
4
|
+
*
|
|
5
|
+
* This module is intentionally type-only so it can be imported from server
|
|
6
|
+
* and client code alike.
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* The identity of the current user as resolved by an auth provider.
|
|
10
|
+
* Extra provider-specific fields are allowed.
|
|
11
|
+
*/
|
|
12
|
+
interface StackIdentity {
|
|
13
|
+
/** Unique user id */
|
|
14
|
+
id: string;
|
|
15
|
+
/** Display name */
|
|
16
|
+
name?: string;
|
|
17
|
+
/** Email address */
|
|
18
|
+
email?: string;
|
|
19
|
+
/** Avatar image URL */
|
|
20
|
+
image?: string;
|
|
21
|
+
/** Additional provider-specific fields */
|
|
22
|
+
[key: string]: unknown;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* A permission check request: "can the current user perform `action` on
|
|
26
|
+
* `resource`?" (e.g. resource `"blog:post"`, action `"delete"`).
|
|
27
|
+
*/
|
|
28
|
+
interface CanParams {
|
|
29
|
+
/** The resource being accessed (e.g. "blog:post", "comments:moderate") */
|
|
30
|
+
resource: string;
|
|
31
|
+
/** The action being performed (e.g. "read", "create", "delete") */
|
|
32
|
+
action: string;
|
|
33
|
+
/** Optional extra parameters (e.g. the specific record id) */
|
|
34
|
+
params?: Record<string, unknown>;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Client-side auth provider, passed to `StackProvider` via the `auth` prop.
|
|
38
|
+
*
|
|
39
|
+
* All fields besides `getIdentity` are optional:
|
|
40
|
+
* - Without `can`, every permission check resolves to `true`.
|
|
41
|
+
* - Without `loginPath`, denied route access is not redirected.
|
|
42
|
+
*
|
|
43
|
+
* @example
|
|
44
|
+
* ```tsx
|
|
45
|
+
* const authProvider: StackAuthProvider = {
|
|
46
|
+
* getIdentity: () => authClient.getSession().then((s) => s?.user ?? null),
|
|
47
|
+
* can: ({ resource, action }) => checkPermission(resource, action),
|
|
48
|
+
* loginPath: "/login",
|
|
49
|
+
* };
|
|
50
|
+
*
|
|
51
|
+
* <StackProvider auth={authProvider} ...>
|
|
52
|
+
* ```
|
|
53
|
+
*/
|
|
54
|
+
interface StackAuthProvider {
|
|
55
|
+
/**
|
|
56
|
+
* Resolve the current user's identity. Return `null` when unauthenticated.
|
|
57
|
+
*/
|
|
58
|
+
getIdentity: () => Promise<StackIdentity | null> | StackIdentity | null;
|
|
59
|
+
/**
|
|
60
|
+
* Permission check. When omitted, all `useCan()` / `<CanAccess>` checks
|
|
61
|
+
* resolve to `true`.
|
|
62
|
+
*/
|
|
63
|
+
can?: (params: CanParams & {
|
|
64
|
+
identity: StackIdentity | null;
|
|
65
|
+
}) => Promise<boolean> | boolean;
|
|
66
|
+
/**
|
|
67
|
+
* Path unauthenticated users are redirected to when route-level permission
|
|
68
|
+
* checks deny access (e.g. "/login").
|
|
69
|
+
*/
|
|
70
|
+
loginPath?: string;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Server-side auth provider, passed to `stack()` via the `auth` config option.
|
|
74
|
+
* `stack()` resolves the identity lazily and at most once per request; plugin
|
|
75
|
+
* lifecycle hooks can read it via `getRequestIdentity(headers)` from
|
|
76
|
+
* `@btst/stack/api`.
|
|
77
|
+
*/
|
|
78
|
+
interface StackServerAuthProvider {
|
|
79
|
+
/**
|
|
80
|
+
* Resolve the identity for an incoming request (e.g. from a session
|
|
81
|
+
* cookie). Return `null` when unauthenticated.
|
|
82
|
+
*/
|
|
83
|
+
getIdentity: (ctx: {
|
|
84
|
+
headers: Headers;
|
|
85
|
+
request: Request;
|
|
86
|
+
}) => Promise<StackIdentity | null> | StackIdentity | null;
|
|
87
|
+
/**
|
|
88
|
+
* Optional server-side permission check, for consumers and plugins that
|
|
89
|
+
* want to share one `can` implementation across lifecycle hooks.
|
|
90
|
+
*/
|
|
91
|
+
can?: (params: CanParams & {
|
|
92
|
+
identity: StackIdentity | null;
|
|
93
|
+
headers: Headers;
|
|
94
|
+
}) => Promise<boolean> | boolean;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
export type { CanParams as C, StackServerAuthProvider as S, StackAuthProvider as a, StackIdentity as b };
|
|
@@ -1,15 +1,84 @@
|
|
|
1
1
|
import * as _btst_stack_plugins_api from '@btst/stack/plugins/api';
|
|
2
2
|
import { S as StorageAdapter, b as S3UploadToken } from './stack.lkebw2nj.cjs';
|
|
3
|
-
import { d as AssetListResult, l as listAssets, a as listFolders, A as AssetListParams } from './stack.jU2iG86n.cjs';
|
|
4
3
|
import * as better_call from 'better-call';
|
|
5
4
|
import { z } from 'zod';
|
|
6
5
|
import { A as Asset, F as Folder } from './stack.BMlLOMED.cjs';
|
|
7
6
|
import { DBAdapter } from '@btst/db';
|
|
8
7
|
|
|
8
|
+
/**
|
|
9
|
+
* Parameters for filtering and paginating the asset list.
|
|
10
|
+
*/
|
|
11
|
+
interface AssetListParams {
|
|
12
|
+
folderId?: string;
|
|
13
|
+
mimeType?: string;
|
|
14
|
+
query?: string;
|
|
15
|
+
offset?: number;
|
|
16
|
+
limit?: number;
|
|
17
|
+
tenantId?: string;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Paginated result returned by {@link listAssets}.
|
|
21
|
+
*/
|
|
22
|
+
interface AssetListResult {
|
|
23
|
+
items: Asset[];
|
|
24
|
+
total: number;
|
|
25
|
+
limit?: number;
|
|
26
|
+
offset?: number;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Parameters for filtering the folder list.
|
|
30
|
+
*/
|
|
31
|
+
interface FolderListParams {
|
|
32
|
+
parentId?: string | null;
|
|
33
|
+
tenantId?: string;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Retrieve all assets matching optional filter criteria.
|
|
37
|
+
* Pure DB function — no hooks, no HTTP context. Safe for server-side use.
|
|
38
|
+
*
|
|
39
|
+
* @remarks **Security:** Authorization hooks are NOT called. The caller is
|
|
40
|
+
* responsible for any access-control checks before invoking this function.
|
|
41
|
+
*/
|
|
42
|
+
declare function listAssets(adapter: DBAdapter, params?: AssetListParams): Promise<AssetListResult>;
|
|
43
|
+
/**
|
|
44
|
+
* Retrieve a single asset by its ID.
|
|
45
|
+
* Returns `null` if no asset is found.
|
|
46
|
+
* Pure DB function — no hooks, no HTTP context.
|
|
47
|
+
*
|
|
48
|
+
* @remarks **Security:** Authorization hooks are NOT called.
|
|
49
|
+
*/
|
|
50
|
+
declare function getAssetById(adapter: DBAdapter, id: string): Promise<Asset | null>;
|
|
51
|
+
/**
|
|
52
|
+
* Retrieve all folders, optionally filtered by `parentId`.
|
|
53
|
+
* Pass `null` to list root-level folders (those without a parent).
|
|
54
|
+
* Pure DB function — no hooks, no HTTP context.
|
|
55
|
+
*
|
|
56
|
+
* @remarks **Security:** Authorization hooks are NOT called.
|
|
57
|
+
*/
|
|
58
|
+
declare function listFolders(adapter: DBAdapter, params?: FolderListParams): Promise<Folder[]>;
|
|
59
|
+
/**
|
|
60
|
+
* Retrieve a single folder by its ID.
|
|
61
|
+
* Returns `null` if no folder is found.
|
|
62
|
+
* Pure DB function — no hooks, no HTTP context.
|
|
63
|
+
*
|
|
64
|
+
* @remarks **Security:** Authorization hooks are NOT called.
|
|
65
|
+
*/
|
|
66
|
+
declare function getFolderById(adapter: DBAdapter, id: string): Promise<Folder | null>;
|
|
67
|
+
/**
|
|
68
|
+
* Find a single folder by name, optionally scoped to a specific parent and/or tenant.
|
|
69
|
+
* Pass `null` for `parentId` to search only root-level folders.
|
|
70
|
+
* Pass `undefined` for `parentId` to search regardless of parent.
|
|
71
|
+
* Returns `null` if no matching folder is found.
|
|
72
|
+
*
|
|
73
|
+
* Pure DB function — no hooks, no HTTP context.
|
|
74
|
+
* The caller is responsible for any access-control checks.
|
|
75
|
+
*/
|
|
76
|
+
declare function getFolderByName(adapter: DBAdapter, name: string, parentId?: string | null, tenantId?: string): Promise<Folder | null>;
|
|
77
|
+
|
|
9
78
|
declare const AssetListQuerySchema: z.ZodObject<{
|
|
10
79
|
folderId: z.ZodOptional<z.ZodString>;
|
|
11
80
|
mimeType: z.ZodOptional<z.ZodString>;
|
|
12
|
-
query: z.ZodOptional<z.ZodString
|
|
81
|
+
query: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<string | undefined, string>>>;
|
|
13
82
|
offset: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
|
|
14
83
|
limit: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
|
|
15
84
|
}, z.core.$strip>;
|
|
@@ -140,7 +209,7 @@ interface MediaBackendHooks {
|
|
|
140
209
|
* Called before listing folders. Throw to deny access.
|
|
141
210
|
*/
|
|
142
211
|
onBeforeListFolders?: (filter: {
|
|
143
|
-
parentId?: string;
|
|
212
|
+
parentId?: string | null;
|
|
144
213
|
}, context: MediaApiContext) => Promise<void> | void;
|
|
145
214
|
/**
|
|
146
215
|
* Called before creating a folder. Throw to deny access.
|
|
@@ -299,8 +368,12 @@ declare const mediaBackendPlugin: (config: MediaBackendConfig) => _btst_stack_pl
|
|
|
299
368
|
method: "GET";
|
|
300
369
|
} & {
|
|
301
370
|
query: better_call.StandardSchemaV1<{
|
|
371
|
+
parentId: string | null | undefined;
|
|
372
|
+
} | {
|
|
302
373
|
parentId?: string | undefined;
|
|
303
374
|
}, {
|
|
375
|
+
parentId: string | null | undefined;
|
|
376
|
+
} | {
|
|
304
377
|
parentId?: string | undefined;
|
|
305
378
|
}>;
|
|
306
379
|
}, Folder[]>;
|
|
@@ -375,12 +448,14 @@ interface AssetListDiscriminator {
|
|
|
375
448
|
offset: number | undefined;
|
|
376
449
|
}
|
|
377
450
|
declare function assetListDiscriminator(params?: AssetListParams): AssetListDiscriminator;
|
|
451
|
+
type FolderListDiscriminator = "all" | "root" | string;
|
|
452
|
+
declare function folderListDiscriminator(parentId?: string | null): FolderListDiscriminator;
|
|
378
453
|
/** Full query key builders — use these with `queryClient.setQueryData()`. */
|
|
379
454
|
declare const MEDIA_QUERY_KEYS: {
|
|
380
|
-
assetsList: (params?: AssetListParams) => readonly ["
|
|
381
|
-
assetDetail: (id: string) => readonly ["
|
|
382
|
-
foldersList: (parentId?: string | null) => readonly ["
|
|
455
|
+
assetsList: (params?: AssetListParams) => readonly ["mediaAssets", "list", AssetListDiscriminator];
|
|
456
|
+
assetDetail: (id: string) => readonly ["mediaAssets", "detail", string];
|
|
457
|
+
foldersList: (parentId?: string | null) => readonly ["mediaFolders", "list", string];
|
|
383
458
|
};
|
|
384
459
|
|
|
385
|
-
export { MEDIA_QUERY_KEYS as M,
|
|
386
|
-
export type {
|
|
460
|
+
export { MEDIA_QUERY_KEYS as M, listFolders as a, getFolderById as b, getFolderByName as c, createAsset as e, deleteAsset as f, getAssetById as g, createFolder as h, deleteFolder as i, assetListDiscriminator as k, listAssets as l, folderListDiscriminator as m, mediaBackendPlugin as q, updateAsset as u };
|
|
461
|
+
export type { AssetListParams as A, CreateAssetInput as C, FolderListParams as F, UpdateAssetInput as U, AssetListResult as d, CreateFolderInput as j, MediaApiContext as n, MediaBackendHooks as o, MediaBackendConfig as p, MediaApiRouter as r, AssetListDiscriminator as s };
|
|
@@ -1,15 +1,84 @@
|
|
|
1
1
|
import * as _btst_stack_plugins_api from '@btst/stack/plugins/api';
|
|
2
2
|
import { S as StorageAdapter, b as S3UploadToken } from './stack.lkebw2nj.js';
|
|
3
|
-
import { d as AssetListResult, l as listAssets, a as listFolders, A as AssetListParams } from './stack.DD-ZORI7.js';
|
|
4
3
|
import * as better_call from 'better-call';
|
|
5
4
|
import { z } from 'zod';
|
|
6
5
|
import { A as Asset, F as Folder } from './stack.BMlLOMED.js';
|
|
7
6
|
import { DBAdapter } from '@btst/db';
|
|
8
7
|
|
|
8
|
+
/**
|
|
9
|
+
* Parameters for filtering and paginating the asset list.
|
|
10
|
+
*/
|
|
11
|
+
interface AssetListParams {
|
|
12
|
+
folderId?: string;
|
|
13
|
+
mimeType?: string;
|
|
14
|
+
query?: string;
|
|
15
|
+
offset?: number;
|
|
16
|
+
limit?: number;
|
|
17
|
+
tenantId?: string;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Paginated result returned by {@link listAssets}.
|
|
21
|
+
*/
|
|
22
|
+
interface AssetListResult {
|
|
23
|
+
items: Asset[];
|
|
24
|
+
total: number;
|
|
25
|
+
limit?: number;
|
|
26
|
+
offset?: number;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Parameters for filtering the folder list.
|
|
30
|
+
*/
|
|
31
|
+
interface FolderListParams {
|
|
32
|
+
parentId?: string | null;
|
|
33
|
+
tenantId?: string;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Retrieve all assets matching optional filter criteria.
|
|
37
|
+
* Pure DB function — no hooks, no HTTP context. Safe for server-side use.
|
|
38
|
+
*
|
|
39
|
+
* @remarks **Security:** Authorization hooks are NOT called. The caller is
|
|
40
|
+
* responsible for any access-control checks before invoking this function.
|
|
41
|
+
*/
|
|
42
|
+
declare function listAssets(adapter: DBAdapter, params?: AssetListParams): Promise<AssetListResult>;
|
|
43
|
+
/**
|
|
44
|
+
* Retrieve a single asset by its ID.
|
|
45
|
+
* Returns `null` if no asset is found.
|
|
46
|
+
* Pure DB function — no hooks, no HTTP context.
|
|
47
|
+
*
|
|
48
|
+
* @remarks **Security:** Authorization hooks are NOT called.
|
|
49
|
+
*/
|
|
50
|
+
declare function getAssetById(adapter: DBAdapter, id: string): Promise<Asset | null>;
|
|
51
|
+
/**
|
|
52
|
+
* Retrieve all folders, optionally filtered by `parentId`.
|
|
53
|
+
* Pass `null` to list root-level folders (those without a parent).
|
|
54
|
+
* Pure DB function — no hooks, no HTTP context.
|
|
55
|
+
*
|
|
56
|
+
* @remarks **Security:** Authorization hooks are NOT called.
|
|
57
|
+
*/
|
|
58
|
+
declare function listFolders(adapter: DBAdapter, params?: FolderListParams): Promise<Folder[]>;
|
|
59
|
+
/**
|
|
60
|
+
* Retrieve a single folder by its ID.
|
|
61
|
+
* Returns `null` if no folder is found.
|
|
62
|
+
* Pure DB function — no hooks, no HTTP context.
|
|
63
|
+
*
|
|
64
|
+
* @remarks **Security:** Authorization hooks are NOT called.
|
|
65
|
+
*/
|
|
66
|
+
declare function getFolderById(adapter: DBAdapter, id: string): Promise<Folder | null>;
|
|
67
|
+
/**
|
|
68
|
+
* Find a single folder by name, optionally scoped to a specific parent and/or tenant.
|
|
69
|
+
* Pass `null` for `parentId` to search only root-level folders.
|
|
70
|
+
* Pass `undefined` for `parentId` to search regardless of parent.
|
|
71
|
+
* Returns `null` if no matching folder is found.
|
|
72
|
+
*
|
|
73
|
+
* Pure DB function — no hooks, no HTTP context.
|
|
74
|
+
* The caller is responsible for any access-control checks.
|
|
75
|
+
*/
|
|
76
|
+
declare function getFolderByName(adapter: DBAdapter, name: string, parentId?: string | null, tenantId?: string): Promise<Folder | null>;
|
|
77
|
+
|
|
9
78
|
declare const AssetListQuerySchema: z.ZodObject<{
|
|
10
79
|
folderId: z.ZodOptional<z.ZodString>;
|
|
11
80
|
mimeType: z.ZodOptional<z.ZodString>;
|
|
12
|
-
query: z.ZodOptional<z.ZodString
|
|
81
|
+
query: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<string | undefined, string>>>;
|
|
13
82
|
offset: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
|
|
14
83
|
limit: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
|
|
15
84
|
}, z.core.$strip>;
|
|
@@ -140,7 +209,7 @@ interface MediaBackendHooks {
|
|
|
140
209
|
* Called before listing folders. Throw to deny access.
|
|
141
210
|
*/
|
|
142
211
|
onBeforeListFolders?: (filter: {
|
|
143
|
-
parentId?: string;
|
|
212
|
+
parentId?: string | null;
|
|
144
213
|
}, context: MediaApiContext) => Promise<void> | void;
|
|
145
214
|
/**
|
|
146
215
|
* Called before creating a folder. Throw to deny access.
|
|
@@ -299,8 +368,12 @@ declare const mediaBackendPlugin: (config: MediaBackendConfig) => _btst_stack_pl
|
|
|
299
368
|
method: "GET";
|
|
300
369
|
} & {
|
|
301
370
|
query: better_call.StandardSchemaV1<{
|
|
371
|
+
parentId: string | null | undefined;
|
|
372
|
+
} | {
|
|
302
373
|
parentId?: string | undefined;
|
|
303
374
|
}, {
|
|
375
|
+
parentId: string | null | undefined;
|
|
376
|
+
} | {
|
|
304
377
|
parentId?: string | undefined;
|
|
305
378
|
}>;
|
|
306
379
|
}, Folder[]>;
|
|
@@ -375,12 +448,14 @@ interface AssetListDiscriminator {
|
|
|
375
448
|
offset: number | undefined;
|
|
376
449
|
}
|
|
377
450
|
declare function assetListDiscriminator(params?: AssetListParams): AssetListDiscriminator;
|
|
451
|
+
type FolderListDiscriminator = "all" | "root" | string;
|
|
452
|
+
declare function folderListDiscriminator(parentId?: string | null): FolderListDiscriminator;
|
|
378
453
|
/** Full query key builders — use these with `queryClient.setQueryData()`. */
|
|
379
454
|
declare const MEDIA_QUERY_KEYS: {
|
|
380
|
-
assetsList: (params?: AssetListParams) => readonly ["
|
|
381
|
-
assetDetail: (id: string) => readonly ["
|
|
382
|
-
foldersList: (parentId?: string | null) => readonly ["
|
|
455
|
+
assetsList: (params?: AssetListParams) => readonly ["mediaAssets", "list", AssetListDiscriminator];
|
|
456
|
+
assetDetail: (id: string) => readonly ["mediaAssets", "detail", string];
|
|
457
|
+
foldersList: (parentId?: string | null) => readonly ["mediaFolders", "list", string];
|
|
383
458
|
};
|
|
384
459
|
|
|
385
|
-
export { MEDIA_QUERY_KEYS as M,
|
|
386
|
-
export type {
|
|
460
|
+
export { MEDIA_QUERY_KEYS as M, listFolders as a, getFolderById as b, getFolderByName as c, createAsset as e, deleteAsset as f, getAssetById as g, createFolder as h, deleteFolder as i, assetListDiscriminator as k, listAssets as l, folderListDiscriminator as m, mediaBackendPlugin as q, updateAsset as u };
|
|
461
|
+
export type { AssetListParams as A, CreateAssetInput as C, FolderListParams as F, UpdateAssetInput as U, AssetListResult as d, CreateFolderInput as j, MediaApiContext as n, MediaBackendHooks as o, MediaBackendConfig as p, MediaApiRouter as r, AssetListDiscriminator as s };
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Route, createRouter } from '@btst/yar';
|
|
2
2
|
import { DBAdapter, DbPlugin, DatabaseDefinition } from '@btst/db';
|
|
3
3
|
import { Endpoint, Router } from 'better-call';
|
|
4
|
+
import { S as StackServerAuthProvider } from './stack.C4_gEENS.cjs';
|
|
4
5
|
|
|
5
6
|
/**
|
|
6
7
|
* Context passed to backend plugins during route creation
|
|
@@ -13,6 +14,8 @@ interface StackContext {
|
|
|
13
14
|
basePath: string;
|
|
14
15
|
/** The database adapter */
|
|
15
16
|
adapter: DBAdapter;
|
|
17
|
+
/** The server-side auth provider, when configured on `stack()` */
|
|
18
|
+
auth?: StackServerAuthProvider;
|
|
16
19
|
}
|
|
17
20
|
/**
|
|
18
21
|
* Context passed to client plugins during route creation
|
|
@@ -100,6 +103,13 @@ interface BackendLibConfig<TPlugins extends Record<string, BackendPlugin<any, an
|
|
|
100
103
|
dbSchema?: DatabaseDefinition;
|
|
101
104
|
plugins: TPlugins;
|
|
102
105
|
adapter: (db: DatabaseDefinition) => DBAdapter;
|
|
106
|
+
/**
|
|
107
|
+
* Optional server-side auth provider. When set, `stack()` resolves the
|
|
108
|
+
* request identity lazily and at most once per request; plugin lifecycle
|
|
109
|
+
* hooks and route handlers can read it via `getRequestIdentity(headers)`
|
|
110
|
+
* from `@btst/stack/api`. When omitted, behavior is unchanged.
|
|
111
|
+
*/
|
|
112
|
+
auth?: StackServerAuthProvider;
|
|
103
113
|
}
|
|
104
114
|
/**
|
|
105
115
|
* Configuration for creating the client library
|