@alneas/appkit-react 0.2.0 → 0.3.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/CHANGELOG.md +86 -0
- package/README.md +18 -91
- package/consumer-ai/SKILL.md +8 -0
- package/consumer-ai/api-index.json +1244 -791
- package/consumer-ai/package-context.json +11 -11
- package/dist/ai/action/use-screen-action.cjs.map +1 -1
- package/dist/ai/action/use-screen-action.d.cts +5 -0
- package/dist/ai/action/use-screen-action.d.ts +5 -0
- package/dist/ai/action/use-screen-action.js.map +1 -1
- package/dist/ai/action/use-screen-context.cjs.map +1 -1
- package/dist/ai/action/use-screen-context.d.cts +6 -0
- package/dist/ai/action/use-screen-context.d.ts +6 -0
- package/dist/ai/action/use-screen-context.js.map +1 -1
- package/dist/ai/generative-ui/GenerativeUIRenderer.cjs.map +1 -1
- package/dist/ai/generative-ui/GenerativeUIRenderer.d.cts +5 -5
- package/dist/ai/generative-ui/GenerativeUIRenderer.d.ts +5 -5
- package/dist/ai/generative-ui/GenerativeUIRenderer.js.map +1 -1
- package/dist/ai/proposal/use-proposal-batch-review.cjs.map +1 -1
- package/dist/ai/proposal/use-proposal-batch-review.d.cts +4 -0
- package/dist/ai/proposal/use-proposal-batch-review.d.ts +4 -0
- package/dist/ai/proposal/use-proposal-batch-review.js.map +1 -1
- package/dist/consumer-ai/SKILL.md +8 -0
- package/dist/consumer-ai/api-index.json +1244 -791
- package/dist/consumer-ai/package-context.json +11 -11
- package/dist/mockServiceWorker.js +185 -86
- package/dist/styles.css +1 -1
- package/dist/tools/components/data-table/column-order.cjs +2 -0
- package/dist/tools/components/data-table/column-order.cjs.map +1 -0
- package/dist/tools/components/data-table/column-order.d.cts +11 -0
- package/dist/tools/components/data-table/column-order.d.ts +11 -0
- package/dist/tools/components/data-table/column-order.js +18 -0
- package/dist/tools/components/data-table/column-order.js.map +1 -0
- package/dist/tools/components/data-table/data-table.cjs +1 -1
- package/dist/tools/components/data-table/data-table.cjs.map +1 -1
- package/dist/tools/components/data-table/data-table.d.cts +18 -28
- package/dist/tools/components/data-table/data-table.d.ts +18 -28
- package/dist/tools/components/data-table/data-table.js +294 -263
- package/dist/tools/components/data-table/data-table.js.map +1 -1
- package/dist/tools/components/file-browser/FileBrowser.cjs +1 -1
- package/dist/tools/components/file-browser/FileBrowser.cjs.map +1 -1
- package/dist/tools/components/file-browser/FileBrowser.d.cts +17 -4
- package/dist/tools/components/file-browser/FileBrowser.d.ts +17 -4
- package/dist/tools/components/file-browser/FileBrowser.js +124 -90
- package/dist/tools/components/file-browser/FileBrowser.js.map +1 -1
- package/dist/tools/components/file-browser/FileGridView.cjs +1 -1
- package/dist/tools/components/file-browser/FileGridView.cjs.map +1 -1
- package/dist/tools/components/file-browser/FileGridView.d.cts +16 -1
- package/dist/tools/components/file-browser/FileGridView.d.ts +16 -1
- package/dist/tools/components/file-browser/FileGridView.js +27 -16
- package/dist/tools/components/file-browser/FileGridView.js.map +1 -1
- package/dist/tools/components/file-browser/FileListView.cjs +1 -1
- package/dist/tools/components/file-browser/FileListView.cjs.map +1 -1
- package/dist/tools/components/file-browser/FileListView.d.cts +16 -1
- package/dist/tools/components/file-browser/FileListView.d.ts +16 -1
- package/dist/tools/components/file-browser/FileListView.js +7 -9
- package/dist/tools/components/file-browser/FileListView.js.map +1 -1
- package/dist/tools/components/file-browser/file-drop.cjs +2 -0
- package/dist/tools/components/file-browser/file-drop.cjs.map +1 -0
- package/dist/tools/components/file-browser/file-drop.d.cts +20 -0
- package/dist/tools/components/file-browser/file-drop.d.ts +20 -0
- package/dist/tools/components/file-browser/file-drop.js +17 -0
- package/dist/tools/components/file-browser/file-drop.js.map +1 -0
- package/dist/tools/components/filter/use-filter.cjs +1 -1
- package/dist/tools/components/filter/use-filter.cjs.map +1 -1
- package/dist/tools/components/filter/use-filter.d.cts +3 -0
- package/dist/tools/components/filter/use-filter.d.ts +3 -0
- package/dist/tools/components/filter/use-filter.js +28 -30
- package/dist/tools/components/filter/use-filter.js.map +1 -1
- package/dist/tools/components/form/form-action-bar.cjs +1 -1
- package/dist/tools/components/form/form-action-bar.cjs.map +1 -1
- package/dist/tools/components/form/form-action-bar.d.cts +4 -1
- package/dist/tools/components/form/form-action-bar.d.ts +4 -1
- package/dist/tools/components/form/form-action-bar.js +29 -28
- package/dist/tools/components/form/form-action-bar.js.map +1 -1
- package/dist/tools/components/form/form-container.cjs +1 -1
- package/dist/tools/components/form/form-container.cjs.map +1 -1
- package/dist/tools/components/form/form-container.d.cts +4 -1
- package/dist/tools/components/form/form-container.d.ts +4 -1
- package/dist/tools/components/form/form-container.js +13 -10
- package/dist/tools/components/form/form-container.js.map +1 -1
- package/dist/tools/components/form/form-grid.cjs +1 -1
- package/dist/tools/components/form/form-grid.cjs.map +1 -1
- package/dist/tools/components/form/form-grid.d.cts +8 -2
- package/dist/tools/components/form/form-grid.d.ts +8 -2
- package/dist/tools/components/form/form-grid.js +24 -19
- package/dist/tools/components/form/form-grid.js.map +1 -1
- package/dist/tools/components/kanban/KanbanBoard.cjs +1 -1
- package/dist/tools/components/kanban/KanbanBoard.cjs.map +1 -1
- package/dist/tools/components/kanban/KanbanBoard.d.cts +4 -1
- package/dist/tools/components/kanban/KanbanBoard.d.ts +4 -1
- package/dist/tools/components/kanban/KanbanBoard.js +29 -28
- package/dist/tools/components/kanban/KanbanBoard.js.map +1 -1
- package/dist/tools/components/kanban/KanbanCard.cjs +1 -1
- package/dist/tools/components/kanban/KanbanCard.cjs.map +1 -1
- package/dist/tools/components/kanban/KanbanCard.d.cts +4 -1
- package/dist/tools/components/kanban/KanbanCard.d.ts +4 -1
- package/dist/tools/components/kanban/KanbanCard.js +16 -14
- package/dist/tools/components/kanban/KanbanCard.js.map +1 -1
- package/dist/tools/components/kanban/KanbanCardView.cjs +1 -1
- package/dist/tools/components/kanban/KanbanCardView.cjs.map +1 -1
- package/dist/tools/components/kanban/KanbanCardView.d.cts +4 -1
- package/dist/tools/components/kanban/KanbanCardView.d.ts +4 -1
- package/dist/tools/components/kanban/KanbanCardView.js +35 -34
- package/dist/tools/components/kanban/KanbanCardView.js.map +1 -1
- package/dist/tools/components/kanban/KanbanColumn.cjs +1 -1
- package/dist/tools/components/kanban/KanbanColumn.cjs.map +1 -1
- package/dist/tools/components/kanban/KanbanColumn.d.cts +23 -2
- package/dist/tools/components/kanban/KanbanColumn.d.ts +23 -2
- package/dist/tools/components/kanban/KanbanColumn.js +28 -33
- package/dist/tools/components/kanban/KanbanColumn.js.map +1 -1
- package/dist/tools/components/kanban/kanban-compound.cjs +1 -1
- package/dist/tools/components/kanban/kanban-compound.cjs.map +1 -1
- package/dist/tools/components/kanban/kanban-compound.js +43 -48
- package/dist/tools/components/kanban/kanban-compound.js.map +1 -1
- package/dist/tools/components/kanban/kanban-drag.cjs.map +1 -1
- package/dist/tools/components/kanban/kanban-drag.d.cts +26 -4
- package/dist/tools/components/kanban/kanban-drag.d.ts +26 -4
- package/dist/tools/components/kanban/kanban-drag.js.map +1 -1
- package/dist/tools/components/kanban/kanban-events.cjs +2 -0
- package/dist/tools/components/kanban/kanban-events.cjs.map +1 -0
- package/dist/tools/components/kanban/kanban-events.d.cts +19 -0
- package/dist/tools/components/kanban/kanban-events.d.ts +19 -0
- package/dist/tools/components/kanban/kanban-events.js +17 -0
- package/dist/tools/components/kanban/kanban-events.js.map +1 -0
- package/dist/tools/components/kanban/kanban-primitives.cjs +1 -1
- package/dist/tools/components/kanban/kanban-primitives.cjs.map +1 -1
- package/dist/tools/components/kanban/kanban-primitives.d.cts +71 -4
- package/dist/tools/components/kanban/kanban-primitives.d.ts +71 -4
- package/dist/tools/components/kanban/kanban-primitives.js +71 -48
- package/dist/tools/components/kanban/kanban-primitives.js.map +1 -1
- package/dist/tools/components/kanban/use-kanban-drag.cjs +1 -1
- package/dist/tools/components/kanban/use-kanban-drag.cjs.map +1 -1
- package/dist/tools/components/kanban/use-kanban-drag.d.cts +34 -17
- package/dist/tools/components/kanban/use-kanban-drag.d.ts +34 -17
- package/dist/tools/components/kanban/use-kanban-drag.js +20 -22
- package/dist/tools/components/kanban/use-kanban-drag.js.map +1 -1
- package/dist/tools/components/kanban/use-kanban-sensors.cjs +1 -1
- package/dist/tools/components/kanban/use-kanban-sensors.cjs.map +1 -1
- package/dist/tools/components/kanban/use-kanban-sensors.d.cts +21 -2
- package/dist/tools/components/kanban/use-kanban-sensors.d.ts +21 -2
- package/dist/tools/components/kanban/use-kanban-sensors.js +41 -26
- package/dist/tools/components/kanban/use-kanban-sensors.js.map +1 -1
- package/dist/tools/components/pane/SearchAndCreatePane.cjs.map +1 -1
- package/dist/tools/components/pane/SearchAndCreatePane.d.cts +5 -0
- package/dist/tools/components/pane/SearchAndCreatePane.d.ts +5 -0
- package/dist/tools/components/pane/SearchAndCreatePane.js.map +1 -1
- package/dist/tools/components/priority-queue/PriorityCard.cjs +1 -1
- package/dist/tools/components/priority-queue/PriorityCard.cjs.map +1 -1
- package/dist/tools/components/priority-queue/PriorityCard.d.cts +4 -1
- package/dist/tools/components/priority-queue/PriorityCard.d.ts +4 -1
- package/dist/tools/components/priority-queue/PriorityCard.js +35 -35
- package/dist/tools/components/priority-queue/PriorityCard.js.map +1 -1
- package/dist/tools/components/priority-queue/PriorityQueue.cjs +1 -1
- package/dist/tools/components/priority-queue/PriorityQueue.cjs.map +1 -1
- package/dist/tools/components/priority-queue/PriorityQueue.d.cts +4 -1
- package/dist/tools/components/priority-queue/PriorityQueue.d.ts +4 -1
- package/dist/tools/components/priority-queue/PriorityQueue.js +20 -20
- package/dist/tools/components/priority-queue/PriorityQueue.js.map +1 -1
- package/dist/tools/components/sidebar/sidebar-compound.d.cts +2 -1
- package/dist/tools/components/sidebar/sidebar-compound.d.ts +2 -1
- package/dist/tools/components/ui/chart.cjs +2 -2
- package/dist/tools/components/ui/chart.cjs.map +1 -1
- package/dist/tools/components/ui/chart.d.cts +15 -6
- package/dist/tools/components/ui/chart.d.ts +15 -6
- package/dist/tools/components/ui/chart.js +42 -40
- package/dist/tools/components/ui/chart.js.map +1 -1
- package/dist/tools/components/ui/dnd/DnDProvider.cjs +1 -1
- package/dist/tools/components/ui/dnd/DnDProvider.cjs.map +1 -1
- package/dist/tools/components/ui/dnd/DnDProvider.d.cts +27 -11
- package/dist/tools/components/ui/dnd/DnDProvider.d.ts +27 -11
- package/dist/tools/components/ui/dnd/DnDProvider.js +15 -12
- package/dist/tools/components/ui/dnd/DnDProvider.js.map +1 -1
- package/dist/tools/components/ui/dnd/Draggable.cjs +1 -1
- package/dist/tools/components/ui/dnd/Draggable.cjs.map +1 -1
- package/dist/tools/components/ui/dnd/Draggable.d.cts +32 -11
- package/dist/tools/components/ui/dnd/Draggable.d.ts +32 -11
- package/dist/tools/components/ui/dnd/Draggable.js +13 -16
- package/dist/tools/components/ui/dnd/Draggable.js.map +1 -1
- package/dist/tools/components/ui/dnd/Droppable.cjs +1 -1
- package/dist/tools/components/ui/dnd/Droppable.cjs.map +1 -1
- package/dist/tools/components/ui/dnd/Droppable.d.cts +30 -10
- package/dist/tools/components/ui/dnd/Droppable.d.ts +30 -10
- package/dist/tools/components/ui/dnd/Droppable.js +12 -11
- package/dist/tools/components/ui/dnd/Droppable.js.map +1 -1
- package/dist/tools/components/ui/dnd/use-accessible-drag-ref.cjs +2 -0
- package/dist/tools/components/ui/dnd/use-accessible-drag-ref.cjs.map +1 -0
- package/dist/tools/components/ui/dnd/use-accessible-drag-ref.d.cts +8 -0
- package/dist/tools/components/ui/dnd/use-accessible-drag-ref.d.ts +8 -0
- package/dist/tools/components/ui/dnd/use-accessible-drag-ref.js +27 -0
- package/dist/tools/components/ui/dnd/use-accessible-drag-ref.js.map +1 -0
- package/dist/tools/components/ui/field.cjs +1 -1
- package/dist/tools/components/ui/field.cjs.map +1 -1
- package/dist/tools/components/ui/field.d.cts +4 -1
- package/dist/tools/components/ui/field.d.ts +4 -1
- package/dist/tools/components/ui/field.js +48 -47
- package/dist/tools/components/ui/field.js.map +1 -1
- package/dist/tools/components/ui/form-helpers.d.cts +5 -14
- package/dist/tools/components/ui/form-helpers.d.ts +5 -14
- package/dist/tools/paraglide/messages/auth_alreadyhaveaccount2.cjs +1 -1
- package/dist/tools/paraglide/messages/auth_alreadyhaveaccount2.cjs.map +1 -1
- package/dist/tools/paraglide/messages/auth_alreadyhaveaccount2.d.cts +2 -0
- package/dist/tools/paraglide/messages/auth_alreadyhaveaccount2.d.ts +2 -0
- package/dist/tools/paraglide/messages/auth_alreadyhaveaccount2.js +4 -4
- package/dist/tools/paraglide/messages/auth_alreadyhaveaccount2.js.map +1 -1
- package/dist/tools/paraglide/messages/auth_donthaveaccount2.cjs +1 -1
- package/dist/tools/paraglide/messages/auth_donthaveaccount2.cjs.map +1 -1
- package/dist/tools/paraglide/messages/auth_donthaveaccount2.d.cts +2 -0
- package/dist/tools/paraglide/messages/auth_donthaveaccount2.d.ts +2 -0
- package/dist/tools/paraglide/messages/auth_donthaveaccount2.js +4 -4
- package/dist/tools/paraglide/messages/auth_donthaveaccount2.js.map +1 -1
- package/dist/tools/paraglide/messages/auth_email.cjs +1 -1
- package/dist/tools/paraglide/messages/auth_email.cjs.map +1 -1
- package/dist/tools/paraglide/messages/auth_email.d.cts +2 -0
- package/dist/tools/paraglide/messages/auth_email.d.ts +2 -0
- package/dist/tools/paraglide/messages/auth_email.js +4 -4
- package/dist/tools/paraglide/messages/auth_email.js.map +1 -1
- package/dist/tools/paraglide/messages/auth_emailplaceholder1.cjs +1 -1
- package/dist/tools/paraglide/messages/auth_emailplaceholder1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/auth_emailplaceholder1.d.cts +2 -0
- package/dist/tools/paraglide/messages/auth_emailplaceholder1.d.ts +2 -0
- package/dist/tools/paraglide/messages/auth_emailplaceholder1.js +2 -5
- package/dist/tools/paraglide/messages/auth_emailplaceholder1.js.map +1 -1
- package/dist/tools/paraglide/messages/auth_failedtologin2.cjs +1 -1
- package/dist/tools/paraglide/messages/auth_failedtologin2.cjs.map +1 -1
- package/dist/tools/paraglide/messages/auth_failedtologin2.d.cts +2 -0
- package/dist/tools/paraglide/messages/auth_failedtologin2.d.ts +2 -0
- package/dist/tools/paraglide/messages/auth_failedtologin2.js +4 -4
- package/dist/tools/paraglide/messages/auth_failedtologin2.js.map +1 -1
- package/dist/tools/paraglide/messages/auth_failedtoregister2.cjs +1 -1
- package/dist/tools/paraglide/messages/auth_failedtoregister2.cjs.map +1 -1
- package/dist/tools/paraglide/messages/auth_failedtoregister2.d.cts +2 -0
- package/dist/tools/paraglide/messages/auth_failedtoregister2.d.ts +2 -0
- package/dist/tools/paraglide/messages/auth_failedtoregister2.js +4 -4
- package/dist/tools/paraglide/messages/auth_failedtoregister2.js.map +1 -1
- package/dist/tools/paraglide/messages/auth_loggingin1.cjs +1 -1
- package/dist/tools/paraglide/messages/auth_loggingin1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/auth_loggingin1.d.cts +2 -0
- package/dist/tools/paraglide/messages/auth_loggingin1.d.ts +2 -0
- package/dist/tools/paraglide/messages/auth_loggingin1.js +4 -4
- package/dist/tools/paraglide/messages/auth_loggingin1.js.map +1 -1
- package/dist/tools/paraglide/messages/auth_loginwithapple2.cjs +1 -1
- package/dist/tools/paraglide/messages/auth_loginwithapple2.cjs.map +1 -1
- package/dist/tools/paraglide/messages/auth_loginwithapple2.d.cts +2 -0
- package/dist/tools/paraglide/messages/auth_loginwithapple2.d.ts +2 -0
- package/dist/tools/paraglide/messages/auth_loginwithapple2.js +4 -4
- package/dist/tools/paraglide/messages/auth_loginwithapple2.js.map +1 -1
- package/dist/tools/paraglide/messages/auth_loginwithgoogle2.cjs +1 -1
- package/dist/tools/paraglide/messages/auth_loginwithgoogle2.cjs.map +1 -1
- package/dist/tools/paraglide/messages/auth_loginwithgoogle2.d.cts +2 -0
- package/dist/tools/paraglide/messages/auth_loginwithgoogle2.d.ts +2 -0
- package/dist/tools/paraglide/messages/auth_loginwithgoogle2.js +4 -4
- package/dist/tools/paraglide/messages/auth_loginwithgoogle2.js.map +1 -1
- package/dist/tools/paraglide/messages/auth_name.cjs +1 -1
- package/dist/tools/paraglide/messages/auth_name.cjs.map +1 -1
- package/dist/tools/paraglide/messages/auth_name.d.cts +2 -0
- package/dist/tools/paraglide/messages/auth_name.d.ts +2 -0
- package/dist/tools/paraglide/messages/auth_name.js +4 -4
- package/dist/tools/paraglide/messages/auth_name.js.map +1 -1
- package/dist/tools/paraglide/messages/auth_nameplaceholder1.cjs +1 -1
- package/dist/tools/paraglide/messages/auth_nameplaceholder1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/auth_nameplaceholder1.d.cts +2 -0
- package/dist/tools/paraglide/messages/auth_nameplaceholder1.d.ts +2 -0
- package/dist/tools/paraglide/messages/auth_nameplaceholder1.js +4 -4
- package/dist/tools/paraglide/messages/auth_nameplaceholder1.js.map +1 -1
- package/dist/tools/paraglide/messages/auth_orcontinuewith2.cjs +1 -1
- package/dist/tools/paraglide/messages/auth_orcontinuewith2.cjs.map +1 -1
- package/dist/tools/paraglide/messages/auth_orcontinuewith2.d.cts +2 -0
- package/dist/tools/paraglide/messages/auth_orcontinuewith2.d.ts +2 -0
- package/dist/tools/paraglide/messages/auth_orcontinuewith2.js +4 -4
- package/dist/tools/paraglide/messages/auth_orcontinuewith2.js.map +1 -1
- package/dist/tools/paraglide/messages/auth_password.cjs +1 -1
- package/dist/tools/paraglide/messages/auth_password.cjs.map +1 -1
- package/dist/tools/paraglide/messages/auth_password.d.cts +2 -0
- package/dist/tools/paraglide/messages/auth_password.d.ts +2 -0
- package/dist/tools/paraglide/messages/auth_password.js +4 -4
- package/dist/tools/paraglide/messages/auth_password.js.map +1 -1
- package/dist/tools/paraglide/messages/auth_registering.cjs +1 -1
- package/dist/tools/paraglide/messages/auth_registering.cjs.map +1 -1
- package/dist/tools/paraglide/messages/auth_registering.d.cts +2 -0
- package/dist/tools/paraglide/messages/auth_registering.d.ts +2 -0
- package/dist/tools/paraglide/messages/auth_registering.js +4 -4
- package/dist/tools/paraglide/messages/auth_registering.js.map +1 -1
- package/dist/tools/paraglide/messages/auth_socialloginfailed2.cjs +1 -1
- package/dist/tools/paraglide/messages/auth_socialloginfailed2.cjs.map +1 -1
- package/dist/tools/paraglide/messages/auth_socialloginfailed2.d.cts +2 -0
- package/dist/tools/paraglide/messages/auth_socialloginfailed2.d.ts +2 -0
- package/dist/tools/paraglide/messages/auth_socialloginfailed2.js +4 -4
- package/dist/tools/paraglide/messages/auth_socialloginfailed2.js.map +1 -1
- package/dist/tools/paraglide/messages/auth_validation_invalidemail1.cjs +1 -1
- package/dist/tools/paraglide/messages/auth_validation_invalidemail1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/auth_validation_invalidemail1.d.cts +2 -0
- package/dist/tools/paraglide/messages/auth_validation_invalidemail1.d.ts +2 -0
- package/dist/tools/paraglide/messages/auth_validation_invalidemail1.js +4 -4
- package/dist/tools/paraglide/messages/auth_validation_invalidemail1.js.map +1 -1
- package/dist/tools/paraglide/messages/auth_validation_invalidnumber1.cjs +1 -1
- package/dist/tools/paraglide/messages/auth_validation_invalidnumber1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/auth_validation_invalidnumber1.d.cts +2 -0
- package/dist/tools/paraglide/messages/auth_validation_invalidnumber1.d.ts +2 -0
- package/dist/tools/paraglide/messages/auth_validation_invalidnumber1.js +4 -4
- package/dist/tools/paraglide/messages/auth_validation_invalidnumber1.js.map +1 -1
- package/dist/tools/paraglide/messages/auth_validation_passwordlength1.cjs +1 -1
- package/dist/tools/paraglide/messages/auth_validation_passwordlength1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/auth_validation_passwordlength1.d.cts +2 -0
- package/dist/tools/paraglide/messages/auth_validation_passwordlength1.d.ts +2 -0
- package/dist/tools/paraglide/messages/auth_validation_passwordlength1.js +4 -4
- package/dist/tools/paraglide/messages/auth_validation_passwordlength1.js.map +1 -1
- package/dist/tools/paraglide/messages/auth_validation_required.cjs +1 -1
- package/dist/tools/paraglide/messages/auth_validation_required.cjs.map +1 -1
- package/dist/tools/paraglide/messages/auth_validation_required.d.cts +2 -0
- package/dist/tools/paraglide/messages/auth_validation_required.d.ts +2 -0
- package/dist/tools/paraglide/messages/auth_validation_required.js +4 -4
- package/dist/tools/paraglide/messages/auth_validation_required.js.map +1 -1
- package/dist/tools/paraglide/messages/calendar_day.cjs +1 -1
- package/dist/tools/paraglide/messages/calendar_day.cjs.map +1 -1
- package/dist/tools/paraglide/messages/calendar_day.d.cts +2 -0
- package/dist/tools/paraglide/messages/calendar_day.d.ts +2 -0
- package/dist/tools/paraglide/messages/calendar_day.js +2 -5
- package/dist/tools/paraglide/messages/calendar_day.js.map +1 -1
- package/dist/tools/paraglide/messages/calendar_month.cjs +1 -1
- package/dist/tools/paraglide/messages/calendar_month.cjs.map +1 -1
- package/dist/tools/paraglide/messages/calendar_month.d.cts +2 -0
- package/dist/tools/paraglide/messages/calendar_month.d.ts +2 -0
- package/dist/tools/paraglide/messages/calendar_month.js +2 -5
- package/dist/tools/paraglide/messages/calendar_month.js.map +1 -1
- package/dist/tools/paraglide/messages/calendar_resources.cjs +1 -1
- package/dist/tools/paraglide/messages/calendar_resources.cjs.map +1 -1
- package/dist/tools/paraglide/messages/calendar_resources.d.cts +2 -0
- package/dist/tools/paraglide/messages/calendar_resources.d.ts +2 -0
- package/dist/tools/paraglide/messages/calendar_resources.js +4 -4
- package/dist/tools/paraglide/messages/calendar_resources.js.map +1 -1
- package/dist/tools/paraglide/messages/calendar_today.cjs +1 -1
- package/dist/tools/paraglide/messages/calendar_today.cjs.map +1 -1
- package/dist/tools/paraglide/messages/calendar_today.d.cts +2 -0
- package/dist/tools/paraglide/messages/calendar_today.d.ts +2 -0
- package/dist/tools/paraglide/messages/calendar_today.js +4 -4
- package/dist/tools/paraglide/messages/calendar_today.js.map +1 -1
- package/dist/tools/paraglide/messages/calendar_view_agenda.cjs +1 -1
- package/dist/tools/paraglide/messages/calendar_view_agenda.cjs.map +1 -1
- package/dist/tools/paraglide/messages/calendar_view_agenda.d.cts +2 -0
- package/dist/tools/paraglide/messages/calendar_view_agenda.d.ts +2 -0
- package/dist/tools/paraglide/messages/calendar_view_agenda.js +4 -4
- package/dist/tools/paraglide/messages/calendar_view_agenda.js.map +1 -1
- package/dist/tools/paraglide/messages/calendar_view_comingsoon1.cjs +1 -1
- package/dist/tools/paraglide/messages/calendar_view_comingsoon1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/calendar_view_comingsoon1.d.cts +2 -0
- package/dist/tools/paraglide/messages/calendar_view_comingsoon1.d.ts +2 -0
- package/dist/tools/paraglide/messages/calendar_view_comingsoon1.js +4 -4
- package/dist/tools/paraglide/messages/calendar_view_comingsoon1.js.map +1 -1
- package/dist/tools/paraglide/messages/calendar_view_day.cjs +1 -1
- package/dist/tools/paraglide/messages/calendar_view_day.cjs.map +1 -1
- package/dist/tools/paraglide/messages/calendar_view_day.d.cts +2 -0
- package/dist/tools/paraglide/messages/calendar_view_day.d.ts +2 -0
- package/dist/tools/paraglide/messages/calendar_view_day.js +4 -4
- package/dist/tools/paraglide/messages/calendar_view_day.js.map +1 -1
- package/dist/tools/paraglide/messages/calendar_view_grid.cjs +1 -1
- package/dist/tools/paraglide/messages/calendar_view_grid.cjs.map +1 -1
- package/dist/tools/paraglide/messages/calendar_view_grid.d.cts +2 -0
- package/dist/tools/paraglide/messages/calendar_view_grid.d.ts +2 -0
- package/dist/tools/paraglide/messages/calendar_view_grid.js +4 -4
- package/dist/tools/paraglide/messages/calendar_view_grid.js.map +1 -1
- package/dist/tools/paraglide/messages/calendar_view_month.cjs +1 -1
- package/dist/tools/paraglide/messages/calendar_view_month.cjs.map +1 -1
- package/dist/tools/paraglide/messages/calendar_view_month.d.cts +2 -0
- package/dist/tools/paraglide/messages/calendar_view_month.d.ts +2 -0
- package/dist/tools/paraglide/messages/calendar_view_month.js +2 -5
- package/dist/tools/paraglide/messages/calendar_view_month.js.map +1 -1
- package/dist/tools/paraglide/messages/calendar_view_resource.cjs +1 -1
- package/dist/tools/paraglide/messages/calendar_view_resource.cjs.map +1 -1
- package/dist/tools/paraglide/messages/calendar_view_resource.d.cts +2 -0
- package/dist/tools/paraglide/messages/calendar_view_resource.d.ts +2 -0
- package/dist/tools/paraglide/messages/calendar_view_resource.js +4 -4
- package/dist/tools/paraglide/messages/calendar_view_resource.js.map +1 -1
- package/dist/tools/paraglide/messages/calendar_view_timeline.cjs +1 -1
- package/dist/tools/paraglide/messages/calendar_view_timeline.cjs.map +1 -1
- package/dist/tools/paraglide/messages/calendar_view_timeline.d.cts +2 -0
- package/dist/tools/paraglide/messages/calendar_view_timeline.d.ts +2 -0
- package/dist/tools/paraglide/messages/calendar_view_timeline.js +4 -4
- package/dist/tools/paraglide/messages/calendar_view_timeline.js.map +1 -1
- package/dist/tools/paraglide/messages/calendar_view_week.cjs +1 -1
- package/dist/tools/paraglide/messages/calendar_view_week.cjs.map +1 -1
- package/dist/tools/paraglide/messages/calendar_view_week.d.cts +2 -0
- package/dist/tools/paraglide/messages/calendar_view_week.d.ts +2 -0
- package/dist/tools/paraglide/messages/calendar_view_week.js +4 -4
- package/dist/tools/paraglide/messages/calendar_view_week.js.map +1 -1
- package/dist/tools/paraglide/messages/calendar_week.cjs +1 -1
- package/dist/tools/paraglide/messages/calendar_week.cjs.map +1 -1
- package/dist/tools/paraglide/messages/calendar_week.d.cts +2 -0
- package/dist/tools/paraglide/messages/calendar_week.d.ts +2 -0
- package/dist/tools/paraglide/messages/calendar_week.js +4 -4
- package/dist/tools/paraglide/messages/calendar_week.js.map +1 -1
- package/dist/tools/paraglide/messages/calendar_year.cjs +1 -1
- package/dist/tools/paraglide/messages/calendar_year.cjs.map +1 -1
- package/dist/tools/paraglide/messages/calendar_year.d.cts +2 -0
- package/dist/tools/paraglide/messages/calendar_year.d.ts +2 -0
- package/dist/tools/paraglide/messages/calendar_year.js +2 -5
- package/dist/tools/paraglide/messages/calendar_year.js.map +1 -1
- package/dist/tools/paraglide/messages/common_actions_back.cjs +1 -1
- package/dist/tools/paraglide/messages/common_actions_back.cjs.map +1 -1
- package/dist/tools/paraglide/messages/common_actions_back.d.cts +2 -0
- package/dist/tools/paraglide/messages/common_actions_back.d.ts +2 -0
- package/dist/tools/paraglide/messages/common_actions_back.js +4 -4
- package/dist/tools/paraglide/messages/common_actions_back.js.map +1 -1
- package/dist/tools/paraglide/messages/common_actions_cancel.cjs +1 -1
- package/dist/tools/paraglide/messages/common_actions_cancel.cjs.map +1 -1
- package/dist/tools/paraglide/messages/common_actions_cancel.d.cts +2 -0
- package/dist/tools/paraglide/messages/common_actions_cancel.d.ts +2 -0
- package/dist/tools/paraglide/messages/common_actions_cancel.js +4 -4
- package/dist/tools/paraglide/messages/common_actions_cancel.js.map +1 -1
- package/dist/tools/paraglide/messages/common_actions_create.cjs +1 -1
- package/dist/tools/paraglide/messages/common_actions_create.cjs.map +1 -1
- package/dist/tools/paraglide/messages/common_actions_create.d.cts +2 -0
- package/dist/tools/paraglide/messages/common_actions_create.d.ts +2 -0
- package/dist/tools/paraglide/messages/common_actions_create.js +4 -4
- package/dist/tools/paraglide/messages/common_actions_create.js.map +1 -1
- package/dist/tools/paraglide/messages/common_actions_delete.cjs +1 -1
- package/dist/tools/paraglide/messages/common_actions_delete.cjs.map +1 -1
- package/dist/tools/paraglide/messages/common_actions_delete.d.cts +2 -0
- package/dist/tools/paraglide/messages/common_actions_delete.d.ts +2 -0
- package/dist/tools/paraglide/messages/common_actions_delete.js +4 -4
- package/dist/tools/paraglide/messages/common_actions_delete.js.map +1 -1
- package/dist/tools/paraglide/messages/common_actions_download.cjs +1 -1
- package/dist/tools/paraglide/messages/common_actions_download.cjs.map +1 -1
- package/dist/tools/paraglide/messages/common_actions_download.d.cts +2 -0
- package/dist/tools/paraglide/messages/common_actions_download.d.ts +2 -0
- package/dist/tools/paraglide/messages/common_actions_download.js +4 -4
- package/dist/tools/paraglide/messages/common_actions_download.js.map +1 -1
- package/dist/tools/paraglide/messages/common_actions_edit.cjs +1 -1
- package/dist/tools/paraglide/messages/common_actions_edit.cjs.map +1 -1
- package/dist/tools/paraglide/messages/common_actions_edit.d.cts +2 -0
- package/dist/tools/paraglide/messages/common_actions_edit.d.ts +2 -0
- package/dist/tools/paraglide/messages/common_actions_edit.js +4 -4
- package/dist/tools/paraglide/messages/common_actions_edit.js.map +1 -1
- package/dist/tools/paraglide/messages/common_actions_home.cjs +1 -1
- package/dist/tools/paraglide/messages/common_actions_home.cjs.map +1 -1
- package/dist/tools/paraglide/messages/common_actions_home.d.cts +2 -0
- package/dist/tools/paraglide/messages/common_actions_home.d.ts +2 -0
- package/dist/tools/paraglide/messages/common_actions_home.js +4 -4
- package/dist/tools/paraglide/messages/common_actions_home.js.map +1 -1
- package/dist/tools/paraglide/messages/common_actions_next.cjs +1 -1
- package/dist/tools/paraglide/messages/common_actions_next.cjs.map +1 -1
- package/dist/tools/paraglide/messages/common_actions_next.d.cts +2 -0
- package/dist/tools/paraglide/messages/common_actions_next.d.ts +2 -0
- package/dist/tools/paraglide/messages/common_actions_next.js +4 -4
- package/dist/tools/paraglide/messages/common_actions_next.js.map +1 -1
- package/dist/tools/paraglide/messages/common_actions_ok.cjs +1 -1
- package/dist/tools/paraglide/messages/common_actions_ok.cjs.map +1 -1
- package/dist/tools/paraglide/messages/common_actions_ok.d.cts +2 -0
- package/dist/tools/paraglide/messages/common_actions_ok.d.ts +2 -0
- package/dist/tools/paraglide/messages/common_actions_ok.js +4 -4
- package/dist/tools/paraglide/messages/common_actions_ok.js.map +1 -1
- package/dist/tools/paraglide/messages/common_actions_previous.cjs +1 -1
- package/dist/tools/paraglide/messages/common_actions_previous.cjs.map +1 -1
- package/dist/tools/paraglide/messages/common_actions_previous.d.cts +2 -0
- package/dist/tools/paraglide/messages/common_actions_previous.d.ts +2 -0
- package/dist/tools/paraglide/messages/common_actions_previous.js +4 -4
- package/dist/tools/paraglide/messages/common_actions_previous.js.map +1 -1
- package/dist/tools/paraglide/messages/common_actions_retry.cjs +1 -1
- package/dist/tools/paraglide/messages/common_actions_retry.cjs.map +1 -1
- package/dist/tools/paraglide/messages/common_actions_retry.d.cts +2 -0
- package/dist/tools/paraglide/messages/common_actions_retry.d.ts +2 -0
- package/dist/tools/paraglide/messages/common_actions_retry.js +4 -4
- package/dist/tools/paraglide/messages/common_actions_retry.js.map +1 -1
- package/dist/tools/paraglide/messages/common_actions_save.cjs +1 -1
- package/dist/tools/paraglide/messages/common_actions_save.cjs.map +1 -1
- package/dist/tools/paraglide/messages/common_actions_save.d.cts +2 -0
- package/dist/tools/paraglide/messages/common_actions_save.d.ts +2 -0
- package/dist/tools/paraglide/messages/common_actions_save.js +2 -5
- package/dist/tools/paraglide/messages/common_actions_save.js.map +1 -1
- package/dist/tools/paraglide/messages/common_actions_search.cjs +1 -1
- package/dist/tools/paraglide/messages/common_actions_search.cjs.map +1 -1
- package/dist/tools/paraglide/messages/common_actions_search.d.cts +2 -0
- package/dist/tools/paraglide/messages/common_actions_search.d.ts +2 -0
- package/dist/tools/paraglide/messages/common_actions_search.js +4 -4
- package/dist/tools/paraglide/messages/common_actions_search.js.map +1 -1
- package/dist/tools/paraglide/messages/common_actions_submit.cjs +1 -1
- package/dist/tools/paraglide/messages/common_actions_submit.cjs.map +1 -1
- package/dist/tools/paraglide/messages/common_actions_submit.d.cts +2 -0
- package/dist/tools/paraglide/messages/common_actions_submit.d.ts +2 -0
- package/dist/tools/paraglide/messages/common_actions_submit.js +4 -4
- package/dist/tools/paraglide/messages/common_actions_submit.js.map +1 -1
- package/dist/tools/paraglide/messages/common_actions_update.cjs +1 -1
- package/dist/tools/paraglide/messages/common_actions_update.cjs.map +1 -1
- package/dist/tools/paraglide/messages/common_actions_update.d.cts +2 -0
- package/dist/tools/paraglide/messages/common_actions_update.d.ts +2 -0
- package/dist/tools/paraglide/messages/common_actions_update.js +2 -5
- package/dist/tools/paraglide/messages/common_actions_update.js.map +1 -1
- package/dist/tools/paraglide/messages/common_advanced.cjs +1 -1
- package/dist/tools/paraglide/messages/common_advanced.cjs.map +1 -1
- package/dist/tools/paraglide/messages/common_advanced.d.cts +2 -0
- package/dist/tools/paraglide/messages/common_advanced.d.ts +2 -0
- package/dist/tools/paraglide/messages/common_advanced.js +4 -4
- package/dist/tools/paraglide/messages/common_advanced.js.map +1 -1
- package/dist/tools/paraglide/messages/common_language.cjs +1 -1
- package/dist/tools/paraglide/messages/common_language.cjs.map +1 -1
- package/dist/tools/paraglide/messages/common_language.d.cts +2 -0
- package/dist/tools/paraglide/messages/common_language.d.ts +2 -0
- package/dist/tools/paraglide/messages/common_language.js +4 -4
- package/dist/tools/paraglide/messages/common_language.js.map +1 -1
- package/dist/tools/paraglide/messages/common_no.cjs +1 -1
- package/dist/tools/paraglide/messages/common_no.cjs.map +1 -1
- package/dist/tools/paraglide/messages/common_no.d.cts +2 -0
- package/dist/tools/paraglide/messages/common_no.d.ts +2 -0
- package/dist/tools/paraglide/messages/common_no.js +4 -4
- package/dist/tools/paraglide/messages/common_no.js.map +1 -1
- package/dist/tools/paraglide/messages/common_status_error.cjs +1 -1
- package/dist/tools/paraglide/messages/common_status_error.cjs.map +1 -1
- package/dist/tools/paraglide/messages/common_status_error.d.cts +2 -0
- package/dist/tools/paraglide/messages/common_status_error.d.ts +2 -0
- package/dist/tools/paraglide/messages/common_status_error.js +4 -4
- package/dist/tools/paraglide/messages/common_status_error.js.map +1 -1
- package/dist/tools/paraglide/messages/common_status_loading.cjs +1 -1
- package/dist/tools/paraglide/messages/common_status_loading.cjs.map +1 -1
- package/dist/tools/paraglide/messages/common_status_loading.d.cts +2 -0
- package/dist/tools/paraglide/messages/common_status_loading.d.ts +2 -0
- package/dist/tools/paraglide/messages/common_status_loading.js +4 -4
- package/dist/tools/paraglide/messages/common_status_loading.js.map +1 -1
- package/dist/tools/paraglide/messages/common_stepprogress1.cjs +1 -1
- package/dist/tools/paraglide/messages/common_stepprogress1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/common_stepprogress1.d.cts +2 -0
- package/dist/tools/paraglide/messages/common_stepprogress1.d.ts +2 -0
- package/dist/tools/paraglide/messages/common_stepprogress1.js +4 -4
- package/dist/tools/paraglide/messages/common_stepprogress1.js.map +1 -1
- package/dist/tools/paraglide/messages/common_validation_noresults1.cjs +1 -1
- package/dist/tools/paraglide/messages/common_validation_noresults1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/common_validation_noresults1.d.cts +2 -0
- package/dist/tools/paraglide/messages/common_validation_noresults1.d.ts +2 -0
- package/dist/tools/paraglide/messages/common_validation_noresults1.js +4 -4
- package/dist/tools/paraglide/messages/common_validation_noresults1.js.map +1 -1
- package/dist/tools/paraglide/messages/common_validation_noschemas1.cjs +1 -1
- package/dist/tools/paraglide/messages/common_validation_noschemas1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/common_validation_noschemas1.d.cts +2 -0
- package/dist/tools/paraglide/messages/common_validation_noschemas1.d.ts +2 -0
- package/dist/tools/paraglide/messages/common_validation_noschemas1.js +4 -4
- package/dist/tools/paraglide/messages/common_validation_noschemas1.js.map +1 -1
- package/dist/tools/paraglide/messages/common_validation_notfound1.cjs +1 -1
- package/dist/tools/paraglide/messages/common_validation_notfound1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/common_validation_notfound1.d.cts +2 -0
- package/dist/tools/paraglide/messages/common_validation_notfound1.d.ts +2 -0
- package/dist/tools/paraglide/messages/common_validation_notfound1.js +4 -4
- package/dist/tools/paraglide/messages/common_validation_notfound1.js.map +1 -1
- package/dist/tools/paraglide/messages/common_yes.cjs +1 -1
- package/dist/tools/paraglide/messages/common_yes.cjs.map +1 -1
- package/dist/tools/paraglide/messages/common_yes.d.cts +2 -0
- package/dist/tools/paraglide/messages/common_yes.d.ts +2 -0
- package/dist/tools/paraglide/messages/common_yes.js +4 -4
- package/dist/tools/paraglide/messages/common_yes.js.map +1 -1
- package/dist/tools/paraglide/messages/datatable_filterplaceholder2.cjs +1 -1
- package/dist/tools/paraglide/messages/datatable_filterplaceholder2.cjs.map +1 -1
- package/dist/tools/paraglide/messages/datatable_filterplaceholder2.d.cts +2 -0
- package/dist/tools/paraglide/messages/datatable_filterplaceholder2.d.ts +2 -0
- package/dist/tools/paraglide/messages/datatable_filterplaceholder2.js +4 -4
- package/dist/tools/paraglide/messages/datatable_filterplaceholder2.js.map +1 -1
- package/dist/tools/paraglide/messages/datatable_gotofirstpage4.cjs +1 -1
- package/dist/tools/paraglide/messages/datatable_gotofirstpage4.cjs.map +1 -1
- package/dist/tools/paraglide/messages/datatable_gotofirstpage4.d.cts +2 -0
- package/dist/tools/paraglide/messages/datatable_gotofirstpage4.d.ts +2 -0
- package/dist/tools/paraglide/messages/datatable_gotofirstpage4.js +4 -4
- package/dist/tools/paraglide/messages/datatable_gotofirstpage4.js.map +1 -1
- package/dist/tools/paraglide/messages/datatable_gotolastpage4.cjs +1 -1
- package/dist/tools/paraglide/messages/datatable_gotolastpage4.cjs.map +1 -1
- package/dist/tools/paraglide/messages/datatable_gotolastpage4.d.cts +2 -0
- package/dist/tools/paraglide/messages/datatable_gotolastpage4.d.ts +2 -0
- package/dist/tools/paraglide/messages/datatable_gotolastpage4.js +4 -4
- package/dist/tools/paraglide/messages/datatable_gotolastpage4.js.map +1 -1
- package/dist/tools/paraglide/messages/datatable_gotonextpage4.cjs +1 -1
- package/dist/tools/paraglide/messages/datatable_gotonextpage4.cjs.map +1 -1
- package/dist/tools/paraglide/messages/datatable_gotonextpage4.d.cts +2 -0
- package/dist/tools/paraglide/messages/datatable_gotonextpage4.d.ts +2 -0
- package/dist/tools/paraglide/messages/datatable_gotonextpage4.js +4 -4
- package/dist/tools/paraglide/messages/datatable_gotonextpage4.js.map +1 -1
- package/dist/tools/paraglide/messages/datatable_gotopreviouspage4.cjs +1 -1
- package/dist/tools/paraglide/messages/datatable_gotopreviouspage4.cjs.map +1 -1
- package/dist/tools/paraglide/messages/datatable_gotopreviouspage4.d.cts +2 -0
- package/dist/tools/paraglide/messages/datatable_gotopreviouspage4.d.ts +2 -0
- package/dist/tools/paraglide/messages/datatable_gotopreviouspage4.js +4 -4
- package/dist/tools/paraglide/messages/datatable_gotopreviouspage4.js.map +1 -1
- package/dist/tools/paraglide/messages/datatable_items1.cjs +1 -1
- package/dist/tools/paraglide/messages/datatable_items1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/datatable_items1.d.cts +2 -0
- package/dist/tools/paraglide/messages/datatable_items1.d.ts +2 -0
- package/dist/tools/paraglide/messages/datatable_items1.js +4 -4
- package/dist/tools/paraglide/messages/datatable_items1.js.map +1 -1
- package/dist/tools/paraglide/messages/datatable_noresults2.cjs +1 -1
- package/dist/tools/paraglide/messages/datatable_noresults2.cjs.map +1 -1
- package/dist/tools/paraglide/messages/datatable_noresults2.d.cts +2 -0
- package/dist/tools/paraglide/messages/datatable_noresults2.d.ts +2 -0
- package/dist/tools/paraglide/messages/datatable_noresults2.js +4 -4
- package/dist/tools/paraglide/messages/datatable_noresults2.js.map +1 -1
- package/dist/tools/paraglide/messages/datatable_page1.cjs +1 -1
- package/dist/tools/paraglide/messages/datatable_page1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/datatable_page1.d.cts +2 -0
- package/dist/tools/paraglide/messages/datatable_page1.d.ts +2 -0
- package/dist/tools/paraglide/messages/datatable_page1.js +4 -4
- package/dist/tools/paraglide/messages/datatable_page1.js.map +1 -1
- package/dist/tools/paraglide/messages/datatable_rowsperpage3.cjs +1 -1
- package/dist/tools/paraglide/messages/datatable_rowsperpage3.cjs.map +1 -1
- package/dist/tools/paraglide/messages/datatable_rowsperpage3.d.cts +2 -0
- package/dist/tools/paraglide/messages/datatable_rowsperpage3.d.ts +2 -0
- package/dist/tools/paraglide/messages/datatable_rowsperpage3.js +4 -4
- package/dist/tools/paraglide/messages/datatable_rowsperpage3.js.map +1 -1
- package/dist/tools/paraglide/messages/datatable_rowsselected2.cjs +1 -1
- package/dist/tools/paraglide/messages/datatable_rowsselected2.cjs.map +1 -1
- package/dist/tools/paraglide/messages/datatable_rowsselected2.d.cts +2 -0
- package/dist/tools/paraglide/messages/datatable_rowsselected2.d.ts +2 -0
- package/dist/tools/paraglide/messages/datatable_rowsselected2.js +4 -4
- package/dist/tools/paraglide/messages/datatable_rowsselected2.js.map +1 -1
- package/dist/tools/paraglide/messages/datatable_togglecolumns2.cjs +1 -1
- package/dist/tools/paraglide/messages/datatable_togglecolumns2.cjs.map +1 -1
- package/dist/tools/paraglide/messages/datatable_togglecolumns2.d.cts +2 -0
- package/dist/tools/paraglide/messages/datatable_togglecolumns2.d.ts +2 -0
- package/dist/tools/paraglide/messages/datatable_togglecolumns2.js +4 -4
- package/dist/tools/paraglide/messages/datatable_togglecolumns2.js.map +1 -1
- package/dist/tools/paraglide/messages/datatable_view1.cjs +1 -1
- package/dist/tools/paraglide/messages/datatable_view1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/datatable_view1.d.cts +2 -0
- package/dist/tools/paraglide/messages/datatable_view1.d.ts +2 -0
- package/dist/tools/paraglide/messages/datatable_view1.js +4 -4
- package/dist/tools/paraglide/messages/datatable_view1.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_auth_account_exists_with_different_credential.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_auth_account_exists_with_different_credential.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_auth_account_exists_with_different_credential.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_auth_account_exists_with_different_credential.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_auth_account_exists_with_different_credential.js +4 -4
- package/dist/tools/paraglide/messages/errors_auth_account_exists_with_different_credential.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_auth_email_already_in_use.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_auth_email_already_in_use.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_auth_email_already_in_use.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_auth_email_already_in_use.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_auth_email_already_in_use.js +4 -4
- package/dist/tools/paraglide/messages/errors_auth_email_already_in_use.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_auth_expired_action_code.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_auth_expired_action_code.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_auth_expired_action_code.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_auth_expired_action_code.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_auth_expired_action_code.js +4 -4
- package/dist/tools/paraglide/messages/errors_auth_expired_action_code.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_auth_invalid_action_code.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_auth_invalid_action_code.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_auth_invalid_action_code.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_auth_invalid_action_code.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_auth_invalid_action_code.js +4 -4
- package/dist/tools/paraglide/messages/errors_auth_invalid_action_code.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_auth_invalid_credential.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_auth_invalid_credential.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_auth_invalid_credential.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_auth_invalid_credential.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_auth_invalid_credential.js +4 -4
- package/dist/tools/paraglide/messages/errors_auth_invalid_credential.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_auth_invalid_email.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_auth_invalid_email.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_auth_invalid_email.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_auth_invalid_email.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_auth_invalid_email.js +4 -4
- package/dist/tools/paraglide/messages/errors_auth_invalid_email.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_auth_network_request_failed.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_auth_network_request_failed.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_auth_network_request_failed.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_auth_network_request_failed.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_auth_network_request_failed.js +4 -4
- package/dist/tools/paraglide/messages/errors_auth_network_request_failed.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_auth_operation_not_allowed.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_auth_operation_not_allowed.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_auth_operation_not_allowed.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_auth_operation_not_allowed.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_auth_operation_not_allowed.js +4 -4
- package/dist/tools/paraglide/messages/errors_auth_operation_not_allowed.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_auth_popup_closed_by_user.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_auth_popup_closed_by_user.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_auth_popup_closed_by_user.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_auth_popup_closed_by_user.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_auth_popup_closed_by_user.js +4 -4
- package/dist/tools/paraglide/messages/errors_auth_popup_closed_by_user.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_auth_requires_recent_login.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_auth_requires_recent_login.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_auth_requires_recent_login.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_auth_requires_recent_login.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_auth_requires_recent_login.js +4 -4
- package/dist/tools/paraglide/messages/errors_auth_requires_recent_login.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_auth_too_many_requests.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_auth_too_many_requests.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_auth_too_many_requests.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_auth_too_many_requests.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_auth_too_many_requests.js +4 -4
- package/dist/tools/paraglide/messages/errors_auth_too_many_requests.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_auth_user_disabled.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_auth_user_disabled.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_auth_user_disabled.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_auth_user_disabled.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_auth_user_disabled.js +4 -4
- package/dist/tools/paraglide/messages/errors_auth_user_disabled.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_auth_user_not_found.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_auth_user_not_found.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_auth_user_not_found.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_auth_user_not_found.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_auth_user_not_found.js +4 -4
- package/dist/tools/paraglide/messages/errors_auth_user_not_found.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_auth_weak_password.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_auth_weak_password.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_auth_weak_password.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_auth_weak_password.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_auth_weak_password.js +4 -4
- package/dist/tools/paraglide/messages/errors_auth_weak_password.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_auth_wrong_password.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_auth_wrong_password.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_auth_wrong_password.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_auth_wrong_password.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_auth_wrong_password.js +4 -4
- package/dist/tools/paraglide/messages/errors_auth_wrong_password.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_code.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_code.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_code.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_code.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_code.js +4 -4
- package/dist/tools/paraglide/messages/errors_code.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_dialogtitle1.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_dialogtitle1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_dialogtitle1.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_dialogtitle1.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_dialogtitle1.js +4 -4
- package/dist/tools/paraglide/messages/errors_dialogtitle1.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_error_forbidden.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_error_forbidden.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_error_forbidden.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_error_forbidden.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_error_forbidden.js +4 -4
- package/dist/tools/paraglide/messages/errors_error_forbidden.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_error_network.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_error_network.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_error_network.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_error_network.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_error_network.js +4 -4
- package/dist/tools/paraglide/messages/errors_error_network.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_error_not_found.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_error_not_found.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_error_not_found.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_error_not_found.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_error_not_found.js +4 -4
- package/dist/tools/paraglide/messages/errors_error_not_found.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_error_server.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_error_server.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_error_server.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_error_server.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_error_server.js +4 -4
- package/dist/tools/paraglide/messages/errors_error_server.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_error_timeout.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_error_timeout.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_error_timeout.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_error_timeout.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_error_timeout.js +4 -4
- package/dist/tools/paraglide/messages/errors_error_timeout.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_error_unauthorized.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_error_unauthorized.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_error_unauthorized.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_error_unauthorized.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_error_unauthorized.js +4 -4
- package/dist/tools/paraglide/messages/errors_error_unauthorized.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_error_unknown.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_error_unknown.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_error_unknown.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_error_unknown.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_error_unknown.js +4 -4
- package/dist/tools/paraglide/messages/errors_error_unknown.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_error_validation.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_error_validation.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_error_validation.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_error_validation.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_error_validation.js +4 -4
- package/dist/tools/paraglide/messages/errors_error_validation.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_functions_aborted.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_functions_aborted.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_functions_aborted.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_functions_aborted.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_functions_aborted.js +4 -4
- package/dist/tools/paraglide/messages/errors_functions_aborted.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_functions_already_exists.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_functions_already_exists.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_functions_already_exists.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_functions_already_exists.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_functions_already_exists.js +4 -4
- package/dist/tools/paraglide/messages/errors_functions_already_exists.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_functions_cancelled.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_functions_cancelled.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_functions_cancelled.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_functions_cancelled.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_functions_cancelled.js +4 -4
- package/dist/tools/paraglide/messages/errors_functions_cancelled.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_functions_data_loss.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_functions_data_loss.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_functions_data_loss.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_functions_data_loss.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_functions_data_loss.js +4 -4
- package/dist/tools/paraglide/messages/errors_functions_data_loss.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_functions_deadline_exceeded.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_functions_deadline_exceeded.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_functions_deadline_exceeded.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_functions_deadline_exceeded.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_functions_deadline_exceeded.js +4 -4
- package/dist/tools/paraglide/messages/errors_functions_deadline_exceeded.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_functions_failed_precondition.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_functions_failed_precondition.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_functions_failed_precondition.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_functions_failed_precondition.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_functions_failed_precondition.js +4 -4
- package/dist/tools/paraglide/messages/errors_functions_failed_precondition.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_functions_internal.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_functions_internal.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_functions_internal.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_functions_internal.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_functions_internal.js +4 -4
- package/dist/tools/paraglide/messages/errors_functions_internal.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_functions_invalid_argument.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_functions_invalid_argument.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_functions_invalid_argument.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_functions_invalid_argument.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_functions_invalid_argument.js +4 -4
- package/dist/tools/paraglide/messages/errors_functions_invalid_argument.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_functions_not_found.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_functions_not_found.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_functions_not_found.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_functions_not_found.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_functions_not_found.js +4 -4
- package/dist/tools/paraglide/messages/errors_functions_not_found.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_functions_out_of_range.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_functions_out_of_range.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_functions_out_of_range.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_functions_out_of_range.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_functions_out_of_range.js +4 -4
- package/dist/tools/paraglide/messages/errors_functions_out_of_range.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_functions_permission_denied.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_functions_permission_denied.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_functions_permission_denied.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_functions_permission_denied.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_functions_permission_denied.js +4 -4
- package/dist/tools/paraglide/messages/errors_functions_permission_denied.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_functions_resource_exhausted.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_functions_resource_exhausted.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_functions_resource_exhausted.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_functions_resource_exhausted.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_functions_resource_exhausted.js +4 -4
- package/dist/tools/paraglide/messages/errors_functions_resource_exhausted.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_functions_unauthenticated.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_functions_unauthenticated.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_functions_unauthenticated.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_functions_unauthenticated.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_functions_unauthenticated.js +4 -4
- package/dist/tools/paraglide/messages/errors_functions_unauthenticated.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_functions_unavailable.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_functions_unavailable.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_functions_unavailable.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_functions_unavailable.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_functions_unavailable.js +4 -4
- package/dist/tools/paraglide/messages/errors_functions_unavailable.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_functions_unimplemented.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_functions_unimplemented.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_functions_unimplemented.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_functions_unimplemented.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_functions_unimplemented.js +4 -4
- package/dist/tools/paraglide/messages/errors_functions_unimplemented.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_functions_unknown.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_functions_unknown.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_functions_unknown.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_functions_unknown.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_functions_unknown.js +4 -4
- package/dist/tools/paraglide/messages/errors_functions_unknown.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_generic.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_generic.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_generic.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_generic.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_generic.js +4 -4
- package/dist/tools/paraglide/messages/errors_generic.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_generictitle1.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_generictitle1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_generictitle1.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_generictitle1.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_generictitle1.js +4 -4
- package/dist/tools/paraglide/messages/errors_generictitle1.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_storage_bucket_not_found.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_storage_bucket_not_found.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_storage_bucket_not_found.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_storage_bucket_not_found.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_storage_bucket_not_found.js +4 -4
- package/dist/tools/paraglide/messages/errors_storage_bucket_not_found.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_storage_file_too_large.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_storage_file_too_large.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_storage_file_too_large.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_storage_file_too_large.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_storage_file_too_large.js +4 -4
- package/dist/tools/paraglide/messages/errors_storage_file_too_large.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_storage_invalid_file_type.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_storage_invalid_file_type.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_storage_invalid_file_type.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_storage_invalid_file_type.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_storage_invalid_file_type.js +4 -4
- package/dist/tools/paraglide/messages/errors_storage_invalid_file_type.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_storage_object_not_found.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_storage_object_not_found.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_storage_object_not_found.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_storage_object_not_found.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_storage_object_not_found.js +4 -4
- package/dist/tools/paraglide/messages/errors_storage_object_not_found.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_storage_unauthorized.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_storage_unauthorized.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_storage_unauthorized.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_storage_unauthorized.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_storage_unauthorized.js +4 -4
- package/dist/tools/paraglide/messages/errors_storage_unauthorized.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_storage_upload_failed.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_storage_upload_failed.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_storage_upload_failed.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_storage_upload_failed.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_storage_upload_failed.js +4 -4
- package/dist/tools/paraglide/messages/errors_storage_upload_failed.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_bad_jwt.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_bad_jwt.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_bad_jwt.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_supabase_bad_jwt.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_supabase_bad_jwt.js +4 -4
- package/dist/tools/paraglide/messages/errors_supabase_bad_jwt.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_check_violation.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_check_violation.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_check_violation.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_supabase_check_violation.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_supabase_check_violation.js +4 -4
- package/dist/tools/paraglide/messages/errors_supabase_check_violation.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_email_not_confirmed.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_email_not_confirmed.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_email_not_confirmed.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_supabase_email_not_confirmed.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_supabase_email_not_confirmed.js +4 -4
- package/dist/tools/paraglide/messages/errors_supabase_email_not_confirmed.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_foreign_key_violation.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_foreign_key_violation.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_foreign_key_violation.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_supabase_foreign_key_violation.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_supabase_foreign_key_violation.js +4 -4
- package/dist/tools/paraglide/messages/errors_supabase_foreign_key_violation.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_insufficient_privilege.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_insufficient_privilege.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_insufficient_privilege.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_supabase_insufficient_privilege.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_supabase_insufficient_privilege.js +4 -4
- package/dist/tools/paraglide/messages/errors_supabase_insufficient_privilege.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_invalid_credentials.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_invalid_credentials.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_invalid_credentials.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_supabase_invalid_credentials.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_supabase_invalid_credentials.js +4 -4
- package/dist/tools/paraglide/messages/errors_supabase_invalid_credentials.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_invalid_grant.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_invalid_grant.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_invalid_grant.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_supabase_invalid_grant.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_supabase_invalid_grant.js +4 -4
- package/dist/tools/paraglide/messages/errors_supabase_invalid_grant.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_invalid_token.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_invalid_token.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_invalid_token.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_supabase_invalid_token.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_supabase_invalid_token.js +4 -4
- package/dist/tools/paraglide/messages/errors_supabase_invalid_token.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_not_admin.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_not_admin.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_not_admin.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_supabase_not_admin.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_supabase_not_admin.js +4 -4
- package/dist/tools/paraglide/messages/errors_supabase_not_admin.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_rate_limit_exceeded.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_rate_limit_exceeded.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_rate_limit_exceeded.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_supabase_rate_limit_exceeded.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_supabase_rate_limit_exceeded.js +4 -4
- package/dist/tools/paraglide/messages/errors_supabase_rate_limit_exceeded.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_session_expired.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_session_expired.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_session_expired.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_supabase_session_expired.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_supabase_session_expired.js +4 -4
- package/dist/tools/paraglide/messages/errors_supabase_session_expired.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_undefined_table.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_undefined_table.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_undefined_table.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_supabase_undefined_table.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_supabase_undefined_table.js +4 -4
- package/dist/tools/paraglide/messages/errors_supabase_undefined_table.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_unique_violation.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_unique_violation.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_unique_violation.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_supabase_unique_violation.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_supabase_unique_violation.js +4 -4
- package/dist/tools/paraglide/messages/errors_supabase_unique_violation.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_user_already_exists.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_user_already_exists.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_user_already_exists.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_supabase_user_already_exists.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_supabase_user_already_exists.js +4 -4
- package/dist/tools/paraglide/messages/errors_supabase_user_already_exists.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_user_not_found.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_user_not_found.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_supabase_user_not_found.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_supabase_user_not_found.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_supabase_user_not_found.js +4 -4
- package/dist/tools/paraglide/messages/errors_supabase_user_not_found.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_validation_invalidemail1.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_validation_invalidemail1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_validation_invalidemail1.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_validation_invalidemail1.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_validation_invalidemail1.js +4 -4
- package/dist/tools/paraglide/messages/errors_validation_invalidemail1.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_validation_maxlength1.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_validation_maxlength1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_validation_maxlength1.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_validation_maxlength1.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_validation_maxlength1.js +4 -4
- package/dist/tools/paraglide/messages/errors_validation_maxlength1.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_validation_minlength1.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_validation_minlength1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_validation_minlength1.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_validation_minlength1.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_validation_minlength1.js +4 -4
- package/dist/tools/paraglide/messages/errors_validation_minlength1.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_validation_pattern.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_validation_pattern.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_validation_pattern.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_validation_pattern.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_validation_pattern.js +4 -4
- package/dist/tools/paraglide/messages/errors_validation_pattern.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_validation_required.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_validation_required.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_validation_required.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_validation_required.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_validation_required.js +4 -4
- package/dist/tools/paraglide/messages/errors_validation_required.js.map +1 -1
- package/dist/tools/paraglide/messages/errors_validation_weakpassword1.cjs +1 -1
- package/dist/tools/paraglide/messages/errors_validation_weakpassword1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/errors_validation_weakpassword1.d.cts +2 -0
- package/dist/tools/paraglide/messages/errors_validation_weakpassword1.d.ts +2 -0
- package/dist/tools/paraglide/messages/errors_validation_weakpassword1.js +4 -4
- package/dist/tools/paraglide/messages/errors_validation_weakpassword1.js.map +1 -1
- package/dist/tools/paraglide/messages/filter_all.cjs +1 -1
- package/dist/tools/paraglide/messages/filter_all.cjs.map +1 -1
- package/dist/tools/paraglide/messages/filter_all.d.cts +2 -0
- package/dist/tools/paraglide/messages/filter_all.d.ts +2 -0
- package/dist/tools/paraglide/messages/filter_all.js +4 -4
- package/dist/tools/paraglide/messages/filter_all.js.map +1 -1
- package/dist/tools/paraglide/messages/filter_apply.cjs +1 -1
- package/dist/tools/paraglide/messages/filter_apply.cjs.map +1 -1
- package/dist/tools/paraglide/messages/filter_apply.d.cts +2 -0
- package/dist/tools/paraglide/messages/filter_apply.d.ts +2 -0
- package/dist/tools/paraglide/messages/filter_apply.js +4 -4
- package/dist/tools/paraglide/messages/filter_apply.js.map +1 -1
- package/dist/tools/paraglide/messages/filter_max.cjs +1 -1
- package/dist/tools/paraglide/messages/filter_max.cjs.map +1 -1
- package/dist/tools/paraglide/messages/filter_max.d.cts +2 -0
- package/dist/tools/paraglide/messages/filter_max.d.ts +2 -0
- package/dist/tools/paraglide/messages/filter_max.js +2 -5
- package/dist/tools/paraglide/messages/filter_max.js.map +1 -1
- package/dist/tools/paraglide/messages/filter_min.cjs +1 -1
- package/dist/tools/paraglide/messages/filter_min.cjs.map +1 -1
- package/dist/tools/paraglide/messages/filter_min.d.cts +2 -0
- package/dist/tools/paraglide/messages/filter_min.d.ts +2 -0
- package/dist/tools/paraglide/messages/filter_min.js +2 -5
- package/dist/tools/paraglide/messages/filter_min.js.map +1 -1
- package/dist/tools/paraglide/messages/filter_reset.cjs +1 -1
- package/dist/tools/paraglide/messages/filter_reset.cjs.map +1 -1
- package/dist/tools/paraglide/messages/filter_reset.d.cts +2 -0
- package/dist/tools/paraglide/messages/filter_reset.d.ts +2 -0
- package/dist/tools/paraglide/messages/filter_reset.js +4 -4
- package/dist/tools/paraglide/messages/filter_reset.js.map +1 -1
- package/dist/tools/paraglide/messages/kanban_sort_default.cjs +1 -1
- package/dist/tools/paraglide/messages/kanban_sort_default.cjs.map +1 -1
- package/dist/tools/paraglide/messages/kanban_sort_default.d.cts +2 -0
- package/dist/tools/paraglide/messages/kanban_sort_default.d.ts +2 -0
- package/dist/tools/paraglide/messages/kanban_sort_default.js +4 -4
- package/dist/tools/paraglide/messages/kanban_sort_default.js.map +1 -1
- package/dist/tools/paraglide/messages/kanban_sort_dueasc1.cjs +1 -1
- package/dist/tools/paraglide/messages/kanban_sort_dueasc1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/kanban_sort_dueasc1.d.cts +2 -0
- package/dist/tools/paraglide/messages/kanban_sort_dueasc1.d.ts +2 -0
- package/dist/tools/paraglide/messages/kanban_sort_dueasc1.js +4 -4
- package/dist/tools/paraglide/messages/kanban_sort_dueasc1.js.map +1 -1
- package/dist/tools/paraglide/messages/kanban_sort_duedesc1.cjs +1 -1
- package/dist/tools/paraglide/messages/kanban_sort_duedesc1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/kanban_sort_duedesc1.d.cts +2 -0
- package/dist/tools/paraglide/messages/kanban_sort_duedesc1.d.ts +2 -0
- package/dist/tools/paraglide/messages/kanban_sort_duedesc1.js +4 -4
- package/dist/tools/paraglide/messages/kanban_sort_duedesc1.js.map +1 -1
- package/dist/tools/paraglide/messages/kanban_sort_priorityasc1.cjs +1 -1
- package/dist/tools/paraglide/messages/kanban_sort_priorityasc1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/kanban_sort_priorityasc1.d.cts +2 -0
- package/dist/tools/paraglide/messages/kanban_sort_priorityasc1.d.ts +2 -0
- package/dist/tools/paraglide/messages/kanban_sort_priorityasc1.js +4 -4
- package/dist/tools/paraglide/messages/kanban_sort_priorityasc1.js.map +1 -1
- package/dist/tools/paraglide/messages/kanban_sort_prioritydesc1.cjs +1 -1
- package/dist/tools/paraglide/messages/kanban_sort_prioritydesc1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/kanban_sort_prioritydesc1.d.cts +2 -0
- package/dist/tools/paraglide/messages/kanban_sort_prioritydesc1.d.ts +2 -0
- package/dist/tools/paraglide/messages/kanban_sort_prioritydesc1.js +4 -4
- package/dist/tools/paraglide/messages/kanban_sort_prioritydesc1.js.map +1 -1
- package/dist/tools/paraglide/messages/kanban_sort_titleasc1.cjs +1 -1
- package/dist/tools/paraglide/messages/kanban_sort_titleasc1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/kanban_sort_titleasc1.d.cts +2 -0
- package/dist/tools/paraglide/messages/kanban_sort_titleasc1.d.ts +2 -0
- package/dist/tools/paraglide/messages/kanban_sort_titleasc1.js +4 -4
- package/dist/tools/paraglide/messages/kanban_sort_titleasc1.js.map +1 -1
- package/dist/tools/paraglide/messages/kanban_sort_titledesc1.cjs +1 -1
- package/dist/tools/paraglide/messages/kanban_sort_titledesc1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/kanban_sort_titledesc1.d.cts +2 -0
- package/dist/tools/paraglide/messages/kanban_sort_titledesc1.d.ts +2 -0
- package/dist/tools/paraglide/messages/kanban_sort_titledesc1.js +4 -4
- package/dist/tools/paraglide/messages/kanban_sort_titledesc1.js.map +1 -1
- package/dist/tools/paraglide/messages/pdf_close.cjs +1 -1
- package/dist/tools/paraglide/messages/pdf_close.cjs.map +1 -1
- package/dist/tools/paraglide/messages/pdf_close.d.cts +2 -0
- package/dist/tools/paraglide/messages/pdf_close.d.ts +2 -0
- package/dist/tools/paraglide/messages/pdf_close.js +4 -4
- package/dist/tools/paraglide/messages/pdf_close.js.map +1 -1
- package/dist/tools/paraglide/messages/pdf_description.cjs +1 -1
- package/dist/tools/paraglide/messages/pdf_description.cjs.map +1 -1
- package/dist/tools/paraglide/messages/pdf_description.d.cts +2 -0
- package/dist/tools/paraglide/messages/pdf_description.d.ts +2 -0
- package/dist/tools/paraglide/messages/pdf_description.js +4 -4
- package/dist/tools/paraglide/messages/pdf_description.js.map +1 -1
- package/dist/tools/paraglide/messages/pdf_export.cjs +1 -1
- package/dist/tools/paraglide/messages/pdf_export.cjs.map +1 -1
- package/dist/tools/paraglide/messages/pdf_export.d.cts +2 -0
- package/dist/tools/paraglide/messages/pdf_export.d.ts +2 -0
- package/dist/tools/paraglide/messages/pdf_export.js +4 -4
- package/dist/tools/paraglide/messages/pdf_export.js.map +1 -1
- package/dist/tools/paraglide/messages/pdf_options_landscape.cjs +1 -1
- package/dist/tools/paraglide/messages/pdf_options_landscape.cjs.map +1 -1
- package/dist/tools/paraglide/messages/pdf_options_landscape.d.cts +2 -0
- package/dist/tools/paraglide/messages/pdf_options_landscape.d.ts +2 -0
- package/dist/tools/paraglide/messages/pdf_options_landscape.js +4 -4
- package/dist/tools/paraglide/messages/pdf_options_landscape.js.map +1 -1
- package/dist/tools/paraglide/messages/pdf_options_portrait.cjs +1 -1
- package/dist/tools/paraglide/messages/pdf_options_portrait.cjs.map +1 -1
- package/dist/tools/paraglide/messages/pdf_options_portrait.d.cts +2 -0
- package/dist/tools/paraglide/messages/pdf_options_portrait.d.ts +2 -0
- package/dist/tools/paraglide/messages/pdf_options_portrait.js +4 -4
- package/dist/tools/paraglide/messages/pdf_options_portrait.js.map +1 -1
- package/dist/tools/paraglide/messages/pdf_options_shrink.cjs +1 -1
- package/dist/tools/paraglide/messages/pdf_options_shrink.cjs.map +1 -1
- package/dist/tools/paraglide/messages/pdf_options_shrink.d.cts +2 -0
- package/dist/tools/paraglide/messages/pdf_options_shrink.d.ts +2 -0
- package/dist/tools/paraglide/messages/pdf_options_shrink.js +4 -4
- package/dist/tools/paraglide/messages/pdf_options_shrink.js.map +1 -1
- package/dist/tools/paraglide/messages/pdf_options_truncate.cjs +1 -1
- package/dist/tools/paraglide/messages/pdf_options_truncate.cjs.map +1 -1
- package/dist/tools/paraglide/messages/pdf_options_truncate.d.cts +2 -0
- package/dist/tools/paraglide/messages/pdf_options_truncate.d.ts +2 -0
- package/dist/tools/paraglide/messages/pdf_options_truncate.js +4 -4
- package/dist/tools/paraglide/messages/pdf_options_truncate.js.map +1 -1
- package/dist/tools/paraglide/messages/pdf_options_wrap.cjs +1 -1
- package/dist/tools/paraglide/messages/pdf_options_wrap.cjs.map +1 -1
- package/dist/tools/paraglide/messages/pdf_options_wrap.d.cts +2 -0
- package/dist/tools/paraglide/messages/pdf_options_wrap.d.ts +2 -0
- package/dist/tools/paraglide/messages/pdf_options_wrap.js +4 -4
- package/dist/tools/paraglide/messages/pdf_options_wrap.js.map +1 -1
- package/dist/tools/paraglide/messages/pdf_preview.cjs +1 -1
- package/dist/tools/paraglide/messages/pdf_preview.cjs.map +1 -1
- package/dist/tools/paraglide/messages/pdf_preview.d.cts +2 -0
- package/dist/tools/paraglide/messages/pdf_preview.d.ts +2 -0
- package/dist/tools/paraglide/messages/pdf_preview.js +4 -4
- package/dist/tools/paraglide/messages/pdf_preview.js.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_aligncenter1.cjs +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_aligncenter1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_aligncenter1.d.cts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_aligncenter1.d.ts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_aligncenter1.js +4 -4
- package/dist/tools/paraglide/messages/pdf_settings_aligncenter1.js.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_alignleft1.cjs +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_alignleft1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_alignleft1.d.cts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_alignleft1.d.ts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_alignleft1.js +4 -4
- package/dist/tools/paraglide/messages/pdf_settings_alignleft1.js.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_alignright1.cjs +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_alignright1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_alignright1.d.cts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_alignright1.d.ts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_alignright1.js +4 -4
- package/dist/tools/paraglide/messages/pdf_settings_alignright1.js.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_bottom.cjs +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_bottom.cjs.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_bottom.d.cts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_bottom.d.ts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_bottom.js +2 -5
- package/dist/tools/paraglide/messages/pdf_settings_bottom.js.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_font.cjs +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_font.cjs.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_font.d.cts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_font.d.ts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_font.js +4 -4
- package/dist/tools/paraglide/messages/pdf_settings_font.js.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_fontsize1.cjs +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_fontsize1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_fontsize1.d.cts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_fontsize1.d.ts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_fontsize1.js +4 -4
- package/dist/tools/paraglide/messages/pdf_settings_fontsize1.js.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_footer.cjs +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_footer.cjs.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_footer.d.cts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_footer.d.ts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_footer.js +4 -4
- package/dist/tools/paraglide/messages/pdf_settings_footer.js.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_format.cjs +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_format.cjs.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_format.d.cts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_format.d.ts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_format.js +4 -4
- package/dist/tools/paraglide/messages/pdf_settings_format.js.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_header.cjs +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_header.cjs.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_header.d.cts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_header.d.ts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_header.js +4 -4
- package/dist/tools/paraglide/messages/pdf_settings_header.js.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_left.cjs +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_left.cjs.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_left.d.cts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_left.d.ts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_left.js +2 -5
- package/dist/tools/paraglide/messages/pdf_settings_left.js.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_margins.cjs +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_margins.cjs.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_margins.d.cts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_margins.d.ts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_margins.js +4 -4
- package/dist/tools/paraglide/messages/pdf_settings_margins.js.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_orientation.cjs +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_orientation.cjs.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_orientation.d.cts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_orientation.d.ts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_orientation.js +4 -4
- package/dist/tools/paraglide/messages/pdf_settings_orientation.js.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_overflow.cjs +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_overflow.cjs.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_overflow.d.cts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_overflow.d.ts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_overflow.js +4 -4
- package/dist/tools/paraglide/messages/pdf_settings_overflow.js.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_right.cjs +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_right.cjs.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_right.d.cts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_right.d.ts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_right.js +2 -5
- package/dist/tools/paraglide/messages/pdf_settings_right.js.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_showline1.cjs +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_showline1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_showline1.d.cts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_showline1.d.ts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_showline1.js +4 -4
- package/dist/tools/paraglide/messages/pdf_settings_showline1.js.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_shrinktable1.cjs +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_shrinktable1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_shrinktable1.d.cts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_shrinktable1.d.ts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_shrinktable1.js +4 -4
- package/dist/tools/paraglide/messages/pdf_settings_shrinktable1.js.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_shrinktabledesc2.cjs +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_shrinktabledesc2.cjs.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_shrinktabledesc2.d.cts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_shrinktabledesc2.d.ts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_shrinktabledesc2.js +4 -4
- package/dist/tools/paraglide/messages/pdf_settings_shrinktabledesc2.js.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_top.cjs +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_top.cjs.map +1 -1
- package/dist/tools/paraglide/messages/pdf_settings_top.d.cts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_top.d.ts +2 -0
- package/dist/tools/paraglide/messages/pdf_settings_top.js +2 -5
- package/dist/tools/paraglide/messages/pdf_settings_top.js.map +1 -1
- package/dist/tools/paraglide/messages/pdf_tabs_behavior.cjs +1 -1
- package/dist/tools/paraglide/messages/pdf_tabs_behavior.cjs.map +1 -1
- package/dist/tools/paraglide/messages/pdf_tabs_behavior.d.cts +2 -0
- package/dist/tools/paraglide/messages/pdf_tabs_behavior.d.ts +2 -0
- package/dist/tools/paraglide/messages/pdf_tabs_behavior.js +4 -4
- package/dist/tools/paraglide/messages/pdf_tabs_behavior.js.map +1 -1
- package/dist/tools/paraglide/messages/pdf_tabs_page.cjs +1 -1
- package/dist/tools/paraglide/messages/pdf_tabs_page.cjs.map +1 -1
- package/dist/tools/paraglide/messages/pdf_tabs_page.d.cts +2 -0
- package/dist/tools/paraglide/messages/pdf_tabs_page.d.ts +2 -0
- package/dist/tools/paraglide/messages/pdf_tabs_page.js +4 -4
- package/dist/tools/paraglide/messages/pdf_tabs_page.js.map +1 -1
- package/dist/tools/paraglide/messages/pdf_tabs_text.cjs +1 -1
- package/dist/tools/paraglide/messages/pdf_tabs_text.cjs.map +1 -1
- package/dist/tools/paraglide/messages/pdf_tabs_text.d.cts +2 -0
- package/dist/tools/paraglide/messages/pdf_tabs_text.d.ts +2 -0
- package/dist/tools/paraglide/messages/pdf_tabs_text.js +4 -4
- package/dist/tools/paraglide/messages/pdf_tabs_text.js.map +1 -1
- package/dist/tools/paraglide/messages/pdf_title.cjs +1 -1
- package/dist/tools/paraglide/messages/pdf_title.cjs.map +1 -1
- package/dist/tools/paraglide/messages/pdf_title.d.cts +2 -0
- package/dist/tools/paraglide/messages/pdf_title.d.ts +2 -0
- package/dist/tools/paraglide/messages/pdf_title.js +4 -4
- package/dist/tools/paraglide/messages/pdf_title.js.map +1 -1
- package/dist/tools/paraglide/messages/signin1.cjs +1 -1
- package/dist/tools/paraglide/messages/signin1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/signin1.d.cts +2 -0
- package/dist/tools/paraglide/messages/signin1.d.ts +2 -0
- package/dist/tools/paraglide/messages/signin1.js +4 -4
- package/dist/tools/paraglide/messages/signin1.js.map +1 -1
- package/dist/tools/paraglide/messages/signup1.cjs +1 -1
- package/dist/tools/paraglide/messages/signup1.cjs.map +1 -1
- package/dist/tools/paraglide/messages/signup1.d.cts +2 -0
- package/dist/tools/paraglide/messages/signup1.d.ts +2 -0
- package/dist/tools/paraglide/messages/signup1.js +4 -4
- package/dist/tools/paraglide/messages/signup1.js.map +1 -1
- package/dist/tools/paraglide/runtime.cjs +1 -1
- package/dist/tools/paraglide/runtime.cjs.map +1 -1
- package/dist/tools/paraglide/runtime.d.cts +18 -4
- package/dist/tools/paraglide/runtime.d.ts +18 -4
- package/dist/tools/paraglide/runtime.js +54 -36
- package/dist/tools/paraglide/runtime.js.map +1 -1
- package/dist/ui/components/ui/accordion.cjs +1 -1
- package/dist/ui/components/ui/accordion.cjs.map +1 -1
- package/dist/ui/components/ui/accordion.d.cts +16 -4
- package/dist/ui/components/ui/accordion.d.ts +16 -4
- package/dist/ui/components/ui/accordion.js +58 -50
- package/dist/ui/components/ui/accordion.js.map +1 -1
- package/dist/ui/components/ui/alert-dialog.cjs +1 -1
- package/dist/ui/components/ui/alert-dialog.cjs.map +1 -1
- package/dist/ui/components/ui/alert-dialog.d.cts +46 -12
- package/dist/ui/components/ui/alert-dialog.d.ts +46 -12
- package/dist/ui/components/ui/alert-dialog.js +103 -83
- package/dist/ui/components/ui/alert-dialog.js.map +1 -1
- package/dist/ui/components/ui/avatar.cjs +1 -1
- package/dist/ui/components/ui/avatar.cjs.map +1 -1
- package/dist/ui/components/ui/avatar.d.cts +18 -5
- package/dist/ui/components/ui/avatar.d.ts +18 -5
- package/dist/ui/components/ui/avatar.js +34 -28
- package/dist/ui/components/ui/avatar.js.map +1 -1
- package/dist/ui/components/ui/button-components.cjs +1 -1
- package/dist/ui/components/ui/button-components.cjs.map +1 -1
- package/dist/ui/components/ui/button-components.d.cts +4 -1
- package/dist/ui/components/ui/button-components.d.ts +4 -1
- package/dist/ui/components/ui/button-components.js +29 -27
- package/dist/ui/components/ui/button-components.js.map +1 -1
- package/dist/ui/components/ui/card.cjs +1 -1
- package/dist/ui/components/ui/card.cjs.map +1 -1
- package/dist/ui/components/ui/card.d.cts +30 -9
- package/dist/ui/components/ui/card.d.ts +30 -9
- package/dist/ui/components/ui/card.js +66 -52
- package/dist/ui/components/ui/card.js.map +1 -1
- package/dist/ui/components/ui/checkbox.cjs +1 -1
- package/dist/ui/components/ui/checkbox.cjs.map +1 -1
- package/dist/ui/components/ui/checkbox.d.cts +4 -1
- package/dist/ui/components/ui/checkbox.d.ts +4 -1
- package/dist/ui/components/ui/checkbox.js +19 -17
- package/dist/ui/components/ui/checkbox.js.map +1 -1
- package/dist/ui/components/ui/context-menu.cjs +1 -1
- package/dist/ui/components/ui/context-menu.cjs.map +1 -1
- package/dist/ui/components/ui/context-menu.d.cts +62 -17
- package/dist/ui/components/ui/context-menu.d.ts +62 -17
- package/dist/ui/components/ui/context-menu.js +145 -119
- package/dist/ui/components/ui/context-menu.js.map +1 -1
- package/dist/ui/components/ui/dialog.cjs +1 -1
- package/dist/ui/components/ui/dialog.cjs.map +1 -1
- package/dist/ui/components/ui/dialog.d.cts +28 -7
- package/dist/ui/components/ui/dialog.d.ts +28 -7
- package/dist/ui/components/ui/dialog.js +82 -70
- package/dist/ui/components/ui/dialog.js.map +1 -1
- package/dist/ui/components/ui/dropdown-menu.cjs +1 -1
- package/dist/ui/components/ui/dropdown-menu.cjs.map +1 -1
- package/dist/ui/components/ui/dropdown-menu.d.cts +46 -13
- package/dist/ui/components/ui/dropdown-menu.d.ts +46 -13
- package/dist/ui/components/ui/dropdown-menu.js +125 -107
- package/dist/ui/components/ui/dropdown-menu.js.map +1 -1
- package/dist/ui/components/ui/field.cjs +1 -1
- package/dist/ui/components/ui/field.cjs.map +1 -1
- package/dist/ui/components/ui/field.d.cts +24 -7
- package/dist/ui/components/ui/field.d.ts +24 -7
- package/dist/ui/components/ui/field.js +56 -50
- package/dist/ui/components/ui/field.js.map +1 -1
- package/dist/ui/components/ui/input.cjs +1 -1
- package/dist/ui/components/ui/input.cjs.map +1 -1
- package/dist/ui/components/ui/input.d.cts +4 -1
- package/dist/ui/components/ui/input.d.ts +4 -1
- package/dist/ui/components/ui/input.js +18 -18
- package/dist/ui/components/ui/input.js.map +1 -1
- package/dist/ui/components/ui/label.cjs +1 -1
- package/dist/ui/components/ui/label.cjs.map +1 -1
- package/dist/ui/components/ui/label.d.cts +4 -1
- package/dist/ui/components/ui/label.d.ts +4 -1
- package/dist/ui/components/ui/label.js +11 -9
- package/dist/ui/components/ui/label.js.map +1 -1
- package/dist/ui/components/ui/layout.cjs +1 -1
- package/dist/ui/components/ui/layout.cjs.map +1 -1
- package/dist/ui/components/ui/layout.d.cts +4 -1
- package/dist/ui/components/ui/layout.d.ts +4 -1
- package/dist/ui/components/ui/layout.js +22 -22
- package/dist/ui/components/ui/layout.js.map +1 -1
- package/dist/ui/components/ui/mobile-form.cjs +1 -1
- package/dist/ui/components/ui/mobile-form.cjs.map +1 -1
- package/dist/ui/components/ui/mobile-form.d.cts +24 -6
- package/dist/ui/components/ui/mobile-form.d.ts +24 -6
- package/dist/ui/components/ui/mobile-form.js +102 -94
- package/dist/ui/components/ui/mobile-form.js.map +1 -1
- package/dist/ui/components/ui/pagination.cjs +1 -1
- package/dist/ui/components/ui/pagination.cjs.map +1 -1
- package/dist/ui/components/ui/pagination.d.cts +22 -6
- package/dist/ui/components/ui/pagination.d.ts +22 -6
- package/dist/ui/components/ui/pagination.js +57 -48
- package/dist/ui/components/ui/pagination.js.map +1 -1
- package/dist/ui/components/ui/password-input.cjs +1 -1
- package/dist/ui/components/ui/password-input.cjs.map +1 -1
- package/dist/ui/components/ui/password-input.d.cts +4 -1
- package/dist/ui/components/ui/password-input.d.ts +4 -1
- package/dist/ui/components/ui/password-input.js +6 -6
- package/dist/ui/components/ui/password-input.js.map +1 -1
- package/dist/ui/components/ui/popover.cjs +1 -1
- package/dist/ui/components/ui/popover.cjs.map +1 -1
- package/dist/ui/components/ui/popover.d.cts +16 -4
- package/dist/ui/components/ui/popover.d.ts +16 -4
- package/dist/ui/components/ui/popover.js +51 -43
- package/dist/ui/components/ui/popover.js.map +1 -1
- package/dist/ui/components/ui/progress.cjs +1 -1
- package/dist/ui/components/ui/progress.cjs.map +1 -1
- package/dist/ui/components/ui/progress.d.cts +21 -5
- package/dist/ui/components/ui/progress.d.ts +21 -5
- package/dist/ui/components/ui/progress.js +50 -40
- package/dist/ui/components/ui/progress.js.map +1 -1
- package/dist/ui/components/ui/radio-card.cjs +1 -1
- package/dist/ui/components/ui/radio-card.cjs.map +1 -1
- package/dist/ui/components/ui/radio-card.d.cts +9 -3
- package/dist/ui/components/ui/radio-card.d.ts +9 -3
- package/dist/ui/components/ui/radio-card.js +46 -42
- package/dist/ui/components/ui/radio-card.js.map +1 -1
- package/dist/ui/components/ui/radio-group.cjs +1 -1
- package/dist/ui/components/ui/radio-group.cjs.map +1 -1
- package/dist/ui/components/ui/radio-group.d.cts +8 -2
- package/dist/ui/components/ui/radio-group.d.ts +8 -2
- package/dist/ui/components/ui/radio-group.js +28 -24
- package/dist/ui/components/ui/radio-group.js.map +1 -1
- package/dist/ui/components/ui/scroll-area.cjs +1 -1
- package/dist/ui/components/ui/scroll-area.cjs.map +1 -1
- package/dist/ui/components/ui/scroll-area.d.cts +4 -1
- package/dist/ui/components/ui/scroll-area.d.ts +4 -1
- package/dist/ui/components/ui/scroll-area.js +26 -24
- package/dist/ui/components/ui/scroll-area.js.map +1 -1
- package/dist/ui/components/ui/select.cjs +1 -1
- package/dist/ui/components/ui/select.cjs.map +1 -1
- package/dist/ui/components/ui/select.d.cts +8 -2
- package/dist/ui/components/ui/select.d.ts +8 -2
- package/dist/ui/components/ui/select.js +76 -72
- package/dist/ui/components/ui/select.js.map +1 -1
- package/dist/ui/components/ui/separator.cjs +1 -1
- package/dist/ui/components/ui/separator.cjs.map +1 -1
- package/dist/ui/components/ui/separator.d.cts +5 -1
- package/dist/ui/components/ui/separator.d.ts +5 -1
- package/dist/ui/components/ui/separator.js +13 -11
- package/dist/ui/components/ui/separator.js.map +1 -1
- package/dist/ui/components/ui/sheet.cjs +1 -1
- package/dist/ui/components/ui/sheet.cjs.map +1 -1
- package/dist/ui/components/ui/sheet.d.cts +20 -5
- package/dist/ui/components/ui/sheet.d.ts +20 -5
- package/dist/ui/components/ui/sheet.js +72 -62
- package/dist/ui/components/ui/sheet.js.map +1 -1
- package/dist/ui/components/ui/slider.cjs +1 -1
- package/dist/ui/components/ui/slider.cjs.map +1 -1
- package/dist/ui/components/ui/slider.d.cts +4 -1
- package/dist/ui/components/ui/slider.d.ts +4 -1
- package/dist/ui/components/ui/slider.js +15 -15
- package/dist/ui/components/ui/slider.js.map +1 -1
- package/dist/ui/components/ui/switch.cjs +1 -1
- package/dist/ui/components/ui/switch.cjs.map +1 -1
- package/dist/ui/components/ui/switch.d.cts +4 -1
- package/dist/ui/components/ui/switch.d.ts +4 -1
- package/dist/ui/components/ui/switch.js +18 -16
- package/dist/ui/components/ui/switch.js.map +1 -1
- package/dist/ui/components/ui/table.cjs +1 -1
- package/dist/ui/components/ui/table.cjs.map +1 -1
- package/dist/ui/components/ui/table.d.cts +32 -8
- package/dist/ui/components/ui/table.d.ts +32 -8
- package/dist/ui/components/ui/table.js +78 -62
- package/dist/ui/components/ui/table.js.map +1 -1
- package/dist/ui/components/ui/textarea.cjs +1 -1
- package/dist/ui/components/ui/textarea.cjs.map +1 -1
- package/dist/ui/components/ui/textarea.d.cts +4 -1
- package/dist/ui/components/ui/textarea.d.ts +4 -1
- package/dist/ui/components/ui/textarea.js +12 -10
- package/dist/ui/components/ui/textarea.js.map +1 -1
- package/dist/ui/components/ui/toast.cjs +1 -1
- package/dist/ui/components/ui/toast.cjs.map +1 -1
- package/dist/ui/components/ui/toast.d.cts +27 -8
- package/dist/ui/components/ui/toast.d.ts +27 -8
- package/dist/ui/components/ui/toast.js +64 -52
- package/dist/ui/components/ui/toast.js.map +1 -1
- package/dist/ui/components/ui/toggle-components.cjs +1 -1
- package/dist/ui/components/ui/toggle-components.cjs.map +1 -1
- package/dist/ui/components/ui/toggle-components.d.cts +5 -4
- package/dist/ui/components/ui/toggle-components.d.ts +5 -4
- package/dist/ui/components/ui/toggle-components.js +16 -14
- package/dist/ui/components/ui/toggle-components.js.map +1 -1
- package/dist/ui/components/ui/toggle-group.cjs +1 -1
- package/dist/ui/components/ui/toggle-group.cjs.map +1 -1
- package/dist/ui/components/ui/toggle-group.d.cts +9 -3
- package/dist/ui/components/ui/toggle-group.d.ts +9 -3
- package/dist/ui/components/ui/toggle-group.js +22 -18
- package/dist/ui/components/ui/toggle-group.js.map +1 -1
- package/dist/ui/components/ui/tooltip.cjs +1 -1
- package/dist/ui/components/ui/tooltip.cjs.map +1 -1
- package/dist/ui/components/ui/tooltip.d.cts +4 -1
- package/dist/ui/components/ui/tooltip.d.ts +4 -1
- package/dist/ui/components/ui/tooltip.js +26 -24
- package/dist/ui/components/ui/tooltip.js.map +1 -1
- package/dist/ui/lib/hooks/use-keyboard-shortcut.cjs +1 -1
- package/dist/ui/lib/hooks/use-keyboard-shortcut.cjs.map +1 -1
- package/dist/ui/lib/hooks/use-keyboard-shortcut.d.cts +4 -5
- package/dist/ui/lib/hooks/use-keyboard-shortcut.d.ts +4 -5
- package/dist/ui/lib/hooks/use-keyboard-shortcut.js +15 -14
- package/dist/ui/lib/hooks/use-keyboard-shortcut.js.map +1 -1
- package/docs/index.md +18 -91
- package/docs/migration.md +335 -18
- package/docs/tools.md +8 -0
- package/llms-full.txt +368 -189
- package/package.json +25 -20
- package/dist/tools/types/dnd-react19.cjs +0 -1
- package/dist/tools/types/dnd-react19.d.cts +0 -10
- package/dist/tools/types/dnd-react19.d.ts +0 -10
- package/dist/tools/types/dnd-react19.js +0 -1
- package/dist/types/dnd-react19.cjs +0 -1
- package/dist/types/dnd-react19.d.cts +0 -10
- package/dist/types/dnd-react19.d.ts +0 -10
- package/dist/types/dnd-react19.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileGridView.js","names":["FileIcon","FileIcon$1","FileGridView","handleItemClick","selectedIds","node","onSelect","id","renderNodeContent","tags","verification","verifyingIds","cn","isSelected","onOpen","Check","Loader2","ShieldCheck","ShieldAlert","Badge","tag","nodes","Empty","EmptyHeader","EmptyMedia","FolderOpen","EmptyTitle","EmptyDescription","FileContextMenu","Draggable","setNodeRef","attributes","listeners","Droppable","isOver"],"sources":["../../../../src/tools/components/file-browser/FileGridView.tsx"],"sourcesContent":["import React from 'react';\nimport { FileIcon } from '../ui/file-icon';\nimport type { FileNode } from './types';\nimport { cn } from '../../lib/utils';\nimport { Badge } from '../ui/badge';\nimport { FileContextMenu } from './FileContextMenu';\nimport { Draggable, Droppable } from '../ui/dnd';\nimport { ShieldCheck, ShieldAlert, Loader2, Check, FolderOpen } from 'lucide-react';\nimport { Empty, EmptyDescription, EmptyHeader, EmptyMedia, EmptyTitle } from '../ui/empty';\n\nexport interface FileGridViewProps {\n /** 表示するノード一覧 */\n nodes: FileNode[];\n /** 選択されているノードのID一覧 */\n selectedIds: string[];\n /** 検証状態のマップ */\n verifyingIds?: Record<string, { loading: boolean; valid?: boolean; error?: string }>;\n /** 選択状態が変更された時のコールバック */\n onSelect: (ids: string[]) => void;\n /** ノードがダブルクリック(またはフォルダ移動)された時のコールバック */\n onOpen: (node: FileNode) => void;\n /** ノードを削除する時のコールバック */\n onDelete: (node: FileNode) => void;\n /** 詳細を表示する時のコールバック */\n onDetails?: (node: FileNode) => void;\n /** 名前変更時のコールバック */\n onRename?: (node: FileNode) => void;\n /** タグ更新時のコールバック */\n onUpdateTags?: (node: FileNode) => void;\n /** 整合性検証時のコールバック */\n onVerify?: (node: FileNode) => void;\n}\n\n/**\n * ファイルの一覧表示(グリッド形式)\n */\nexport function FileGridView({\n nodes,\n selectedIds,\n verifyingIds = {},\n onSelect,\n onOpen,\n onDelete,\n onDetails,\n onRename,\n onUpdateTags,\n onVerify,\n}: FileGridViewProps) {\n const handleItemClick = (e: React.MouseEvent, node: FileNode) => {\n // Ctrl/Cmd キーで複数選択\n if (e.metaKey || e.ctrlKey) {\n if (selectedIds.includes(node.id)) {\n onSelect(selectedIds.filter((id) => id !== node.id));\n } else {\n onSelect([...selectedIds, node.id]);\n }\n } else {\n onSelect([node.id]);\n }\n };\n\n const renderNodeContent = (node: FileNode, isSelected: boolean) => {\n const tags = node.metadata?.tags?.split(',').filter(Boolean) || [];\n const verification = verifyingIds[node.id];\n\n return (\n <div\n className={cn(\n 'group flex flex-col items-center p-2 rounded-xl transition-all border border-transparent cursor-pointer select-none relative w-full h-full',\n isSelected\n ? 'bg-primary/10 border-primary/20 ring-2 ring-primary/10'\n : 'hover:bg-muted/50 hover:border-muted-foreground/10',\n )}\n onClick={(e) => handleItemClick(e, node)}\n onDoubleClick={() => onOpen(node)}\n >\n <div className='relative w-full aspect-square flex items-center justify-center mb-2'>\n <FileIcon\n kind={node.kind}\n contentType={node.contentType}\n className={cn(\n 'w-12 h-12 transition-transform',\n isSelected ? 'scale-110' : 'group-hover:scale-105',\n )}\n />\n\n {/* 選択チェックマーク */}\n {isSelected && (\n <div className='absolute top-0 right-0 bg-primary text-primary-foreground rounded-full p-0.5 shadow-sm z-10'>\n <Check className='w-3 h-3' strokeWidth={3} />\n </div>\n )}\n\n {/* 検証ステータス */}\n {verification?.loading && (\n <div className='absolute bottom-0 left-0 bg-background/80 rounded-full p-0.5 shadow-sm'>\n <Loader2 className='h-3 w-3 animate-spin' />\n </div>\n )}\n {verification?.valid === true && (\n <div\n className='absolute bottom-0 left-0 bg-green-100 text-green-700 rounded-full p-0.5 shadow-sm'\n title='Integrity Verified'\n >\n <ShieldCheck className='h-3 w-3' />\n </div>\n )}\n {verification?.valid === false && (\n <div\n className='absolute bottom-0 left-0 bg-destructive/10 text-destructive rounded-full p-0.5 shadow-sm'\n title={verification.error}\n >\n <ShieldAlert className='h-3 w-3' />\n </div>\n )}\n </div>\n\n <span className='w-full text-center text-xs font-medium truncate px-1 leading-relaxed'>\n {node.name}\n </span>\n\n <div className='flex flex-wrap justify-center gap-0.5 mt-1 min-h-[16px]'>\n {tags.slice(0, 2).map((tag) => (\n <Badge\n key={tag}\n variant='outline'\n className='px-1 py-0 text-[8px] h-3.5 leading-none bg-background/50'\n >\n {tag}\n </Badge>\n ))}\n {tags.length > 2 && (\n <span className='text-[8px] text-muted-foreground'>+{tags.length - 2}</span>\n )}\n </div>\n\n {node.size !== undefined && node.kind === 'file' && (\n <span className='text-[10px] text-muted-foreground opacity-0 group-hover:opacity-100 transition-opacity mt-0.5'>\n {Math.round(node.size / 1024)} KB\n </span>\n )}\n </div>\n );\n };\n\n if (nodes.length === 0) {\n return (\n <Empty className='flex-1 border-t rounded-none bg-muted/10'>\n <EmptyHeader>\n <EmptyMedia variant='icon'>\n <FolderOpen />\n </EmptyMedia>\n <EmptyTitle>This folder is empty</EmptyTitle>\n <EmptyDescription>Upload files to get started.</EmptyDescription>\n </EmptyHeader>\n </Empty>\n );\n }\n\n return (\n <div className='flex-1 overflow-auto p-4 bg-muted/5 border-t'>\n <div className='grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 lg:grid-cols-6 xl:grid-cols-8 gap-4'>\n {nodes.map((node) => {\n const isSelected = selectedIds.includes(node.id);\n\n return (\n <FileContextMenu\n key={node.id}\n node={node}\n onOpen={onOpen}\n onDelete={onDelete}\n onDetails={onDetails}\n onRename={onRename}\n onUpdateTags={onUpdateTags}\n onVerify={onVerify}\n >\n <div className='w-full h-full'>\n {node.kind === 'file' ? (\n <Draggable id={node.id} data={node}>\n {({ setNodeRef, style, attributes, listeners }) => (\n <div\n ref={setNodeRef}\n style={style}\n {...attributes}\n {...listeners}\n className='w-full h-full'\n >\n {renderNodeContent(node, isSelected)}\n </div>\n )}\n </Draggable>\n ) : (\n <Droppable id={node.id} data={node}>\n {({ setNodeRef, isOver }) => (\n <div\n ref={setNodeRef}\n className={cn(\n 'w-full h-full rounded-xl',\n isOver && 'bg-primary/10 ring-4 ring-primary/20',\n )}\n >\n {renderNodeContent(node, isSelected)}\n </div>\n )}\n </Droppable>\n )}\n </div>\n </FileContextMenu>\n );\n })}\n </div>\n </div>\n );\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FileGridView.js","names":["FileIcon","FileIcon$1","FileGridView","handleItemClick","selectedIds","node","onSelect","id","renderNodeContent","tags","verification","verifyingIds","cn","isSelected","onOpen","handleRef","Check","Loader2","ShieldCheck","ShieldAlert","Badge","tag","nodes","Empty","EmptyHeader","EmptyMedia","FolderOpen","EmptyTitle","EmptyDescription","FileContextMenu","Draggable","Droppable","isDropTarget"],"sources":["../../../../src/tools/components/file-browser/FileGridView.tsx"],"sourcesContent":["import React from 'react';\nimport { FileIcon } from '../ui/file-icon';\nimport type { FileNode } from './types';\nimport { cn } from '../../lib/utils';\nimport { Badge } from '../ui/badge';\nimport { FileContextMenu } from './FileContextMenu';\nimport { Draggable, Droppable } from '../ui/dnd';\nimport { ShieldCheck, ShieldAlert, Loader2, Check, FolderOpen } from 'lucide-react';\nimport { Empty, EmptyDescription, EmptyHeader, EmptyMedia, EmptyTitle } from '../ui/empty';\n\nexport interface FileGridViewProps {\n /** 表示するノード一覧 */\n nodes: FileNode[];\n /** 選択されているノードのID一覧 */\n selectedIds: string[];\n /** 検証状態のマップ */\n verifyingIds?: Record<string, { loading: boolean; valid?: boolean; error?: string }>;\n /** 選択状態が変更された時のコールバック */\n onSelect: (ids: string[]) => void;\n /** ノードがダブルクリック(またはフォルダ移動)された時のコールバック */\n onOpen: (node: FileNode) => void;\n /** ノードを削除する時のコールバック */\n onDelete: (node: FileNode) => void;\n /** 詳細を表示する時のコールバック */\n onDetails?: (node: FileNode) => void;\n /** 名前変更時のコールバック */\n onRename?: (node: FileNode) => void;\n /** タグ更新時のコールバック */\n onUpdateTags?: (node: FileNode) => void;\n /** 整合性検証時のコールバック */\n onVerify?: (node: FileNode) => void;\n}\n\n/**\n * Render a grid of host-owned file nodes with native icon drag handles.\n * @param props - Current nodes, selected ids, optional verification state and host\n * selection/open/delete/detail/rename/tag/verify callbacks; no storage is configured here.\n * @returns The grid view; empty listings show the corresponding empty state.\n * @remarks Place standalone views under DnDProvider from the same native engine.\n * Selection and open callbacks remain host-owned. Import Appkit CSS once.\n * @example\n * ```tsx\n * import {FileGridView} from '@alneas/appkit-react/tools/file-browser';\n * import {DnDProvider} from '@alneas/appkit-react/tools/ui';\n * import '@alneas/appkit-react/styles';\n * export function EmptyFiles() {\n * return <DnDProvider><FileGridView nodes={[]} selectedIds={[]}\n * onSelect={() => {}} onOpen={() => {}} onDelete={() => {}} /></DnDProvider>;\n * }\n * ```\n */\nexport function FileGridView({\n nodes,\n selectedIds,\n verifyingIds = {},\n onSelect,\n onOpen,\n onDelete,\n onDetails,\n onRename,\n onUpdateTags,\n onVerify,\n}: FileGridViewProps) {\n const handleItemClick = (e: React.MouseEvent, node: FileNode) => {\n // Ctrl/Cmd キーで複数選択\n if (e.metaKey || e.ctrlKey) {\n if (selectedIds.includes(node.id)) {\n onSelect(selectedIds.filter((id) => id !== node.id));\n } else {\n onSelect([...selectedIds, node.id]);\n }\n } else {\n onSelect([node.id]);\n }\n };\n\n const renderNodeContent = (node: FileNode, isSelected: boolean, handleRef?: (element: Element | null) => void) => {\n const tags = node.metadata?.tags?.split(',').filter(Boolean) || [];\n const verification = verifyingIds[node.id];\n\n return (\n <div\n className={cn(\n 'group flex flex-col items-center p-2 rounded-xl transition-all border border-transparent cursor-pointer select-none relative w-full h-full',\n isSelected\n ? 'bg-primary/10 border-primary/20 ring-2 ring-primary/10'\n : 'hover:bg-muted/50 hover:border-muted-foreground/10',\n )}\n onClick={(e) => handleItemClick(e, node)}\n onDoubleClick={() => onOpen(node)}\n >\n <div className='relative w-full aspect-square flex items-center justify-center mb-2'>\n {handleRef ? <button type='button' ref={handleRef} aria-label={`Move ${node.name}`} className='flex items-center justify-center w-full h-full border-0 bg-transparent p-0'>\n <FileIcon\n kind={node.kind}\n contentType={node.contentType}\n className={cn(\n 'w-12 h-12 transition-transform',\n isSelected ? 'scale-110' : 'group-hover:scale-105',\n )}\n />\n </button> : (\n <FileIcon\n kind={node.kind}\n contentType={node.contentType}\n className={cn(\n 'w-12 h-12 transition-transform',\n isSelected ? 'scale-110' : 'group-hover:scale-105',\n )}\n />\n )}\n\n {/* 選択チェックマーク */}\n {isSelected && (\n <div className='absolute top-0 right-0 bg-primary text-primary-foreground rounded-full p-0.5 shadow-sm z-10'>\n <Check className='w-3 h-3' strokeWidth={3} />\n </div>\n )}\n\n {/* 検証ステータス */}\n {verification?.loading && (\n <div className='absolute bottom-0 left-0 bg-background/80 rounded-full p-0.5 shadow-sm'>\n <Loader2 className='h-3 w-3 animate-spin' />\n </div>\n )}\n {verification?.valid === true && (\n <div\n className='absolute bottom-0 left-0 bg-green-100 text-green-700 rounded-full p-0.5 shadow-sm'\n title='Integrity Verified'\n >\n <ShieldCheck className='h-3 w-3' />\n </div>\n )}\n {verification?.valid === false && (\n <div\n className='absolute bottom-0 left-0 bg-destructive/10 text-destructive rounded-full p-0.5 shadow-sm'\n title={verification.error}\n >\n <ShieldAlert className='h-3 w-3' />\n </div>\n )}\n </div>\n\n <span className='w-full text-center text-xs font-medium truncate px-1 leading-relaxed'>\n {node.name}\n </span>\n\n <div className='flex flex-wrap justify-center gap-0.5 mt-1 min-h-[16px]'>\n {tags.slice(0, 2).map((tag) => (\n <Badge\n key={tag}\n variant='outline'\n className='px-1 py-0 text-[8px] h-3.5 leading-none bg-background/50'\n >\n {tag}\n </Badge>\n ))}\n {tags.length > 2 && (\n <span className='text-[8px] text-muted-foreground'>+{tags.length - 2}</span>\n )}\n </div>\n\n {node.size !== undefined && node.kind === 'file' && (\n <span className='text-[10px] text-muted-foreground opacity-0 group-hover:opacity-100 transition-opacity mt-0.5'>\n {Math.round(node.size / 1024)} KB\n </span>\n )}\n </div>\n );\n };\n\n if (nodes.length === 0) {\n return (\n <Empty className='flex-1 border-t rounded-none bg-muted/10'>\n <EmptyHeader>\n <EmptyMedia variant='icon'>\n <FolderOpen />\n </EmptyMedia>\n <EmptyTitle>This folder is empty</EmptyTitle>\n <EmptyDescription>Upload files to get started.</EmptyDescription>\n </EmptyHeader>\n </Empty>\n );\n }\n\n return (\n <div className='flex-1 overflow-auto p-4 bg-muted/5 border-t'>\n <div className='grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 lg:grid-cols-6 xl:grid-cols-8 gap-4'>\n {nodes.map((node) => {\n const isSelected = selectedIds.includes(node.id);\n\n return (\n <FileContextMenu\n key={node.id}\n node={node}\n onOpen={onOpen}\n onDelete={onDelete}\n onDetails={onDetails}\n onRename={onRename}\n onUpdateTags={onUpdateTags}\n onVerify={onVerify}\n >\n <div className='w-full h-full'>\n {node.kind === 'file' ? (\n <Draggable id={node.id} data={node}>\n {({ ref, handleRef, style }) => (\n <div\n ref={ref}\n data-file-drag={node.id}\n style={style}\n className='w-full h-full'\n >\n {renderNodeContent(node, isSelected, handleRef)}\n </div>\n )}\n </Draggable>\n ) : (\n <Droppable id={node.id} data={node}>\n {({ ref, isDropTarget }) => (\n <div\n ref={ref}\n data-file-drop={node.id}\n data-drop-over={isDropTarget}\n className={cn(\n 'w-full h-full rounded-xl',\n isDropTarget && 'bg-primary/10 ring-4 ring-primary/20',\n )}\n >\n {renderNodeContent(node, isSelected)}\n </div>\n )}\n </Droppable>\n )}\n </div>\n </FileContextMenu>\n );\n })}\n </div>\n </div>\n );\n}\n"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use client";Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../_virtual/_rolldown/runtime.cjs"),t=require("../../../ui/lib/utils.cjs"),n=require("../../../ui/components/ui/badge-components.cjs"),r=require("../../../ui/components/ui/file-icon.cjs"),i=require("../../../ui/components/ui/table.cjs"),a=require("../ui/dnd/Draggable.cjs"),o=require("../ui/dnd/Droppable.cjs"),s=require("./FileContextMenu.cjs");let c=require("react/jsx-runtime"),l=require("react");l=e.__toESM(l,1);let u=require("lucide-react"),d=require("date-fns");function f(e){if(e===void 0)return`-`;if(e===0)return`0 B`;let t=1024,n=[`B`,`KB`,`MB`,`GB`,`TB`],r=Math.floor(Math.log(e)/Math.log(t));return`${parseFloat((e/t**r).toFixed(1))} ${n[r]}`}function p({nodes:e,selectedIds:p,verifyingIds:m={},onSelect:h,onOpen:g,onDelete:_,onDetails:v,onRename:y,onUpdateTags:b,onVerify:x}){let S=(e,t)=>{e.metaKey||e.ctrlKey?p.includes(t.id)?h(p.filter(e=>e!==t.id)):h([...p,t.id]):h([t.id])},C=(e,a,o={},s)=>{let l=e.metadata?.tags?.split(`,`).filter(Boolean)||[],p=m[e.id];return(0,c.jsxs)(i.TableRow,{...o,className:t.cn(`cursor-pointer transition-colors group select-none w-full border-b`,a&&`bg-primary/5 hover:bg-primary/10`,o.className),onClick:t=>S(t,e),onDoubleClick:()=>g(e),children:[(0,c.jsx)(i.TableCell,{className:`font-medium`,children:(0,c.jsxs)(`div`,{className:`flex items-center gap-3`,children:[s?(0,c.jsx)(`button`,{type:`button`,"aria-label":`Move ${e.name}
|
|
1
|
+
"use client";Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../_virtual/_rolldown/runtime.cjs"),t=require("../../../ui/lib/utils.cjs"),n=require("../../../ui/components/ui/badge-components.cjs"),r=require("../../../ui/components/ui/file-icon.cjs"),i=require("../../../ui/components/ui/table.cjs"),a=require("../ui/dnd/Draggable.cjs"),o=require("../ui/dnd/Droppable.cjs"),s=require("./FileContextMenu.cjs");let c=require("react/jsx-runtime"),l=require("react");l=e.__toESM(l,1);let u=require("lucide-react"),d=require("date-fns");function f(e){if(e===void 0)return`-`;if(e===0)return`0 B`;let t=1024,n=[`B`,`KB`,`MB`,`GB`,`TB`],r=Math.floor(Math.log(e)/Math.log(t));return`${parseFloat((e/t**r).toFixed(1))} ${n[r]}`}function p({nodes:e,selectedIds:p,verifyingIds:m={},onSelect:h,onOpen:g,onDelete:_,onDetails:v,onRename:y,onUpdateTags:b,onVerify:x}){let S=(e,t)=>{e.metaKey||e.ctrlKey?p.includes(t.id)?h(p.filter(e=>e!==t.id)):h([...p,t.id]):h([t.id])},C=(e,a,o={},s)=>{let l=e.metadata?.tags?.split(`,`).filter(Boolean)||[],p=m[e.id];return(0,c.jsxs)(i.TableRow,{...o,className:t.cn(`cursor-pointer transition-colors group select-none w-full border-b`,a&&`bg-primary/5 hover:bg-primary/10`,o.className),onClick:t=>S(t,e),onDoubleClick:()=>g(e),children:[(0,c.jsx)(i.TableCell,{className:`font-medium`,children:(0,c.jsxs)(`div`,{className:`flex items-center gap-3`,children:[s?(0,c.jsx)(`button`,{type:`button`,"aria-label":`Move ${e.name}`,ref:s,children:(0,c.jsx)(r.FileIcon,{kind:e.kind,contentType:e.contentType,className:`h-4 w-4 shrink-0`})}):(0,c.jsx)(r.FileIcon,{kind:e.kind,contentType:e.contentType,className:`h-4 w-4 shrink-0`}),(0,c.jsx)(`span`,{className:`truncate`,children:e.name}),p?.loading&&(0,c.jsx)(u.Loader2,{className:`h-3 w-3 animate-spin text-muted-foreground`}),p?.valid===!0&&(0,c.jsx)(`span`,{title:`Integrity Verified`,children:(0,c.jsx)(u.ShieldCheck,{className:`h-3 w-3 text-green-600`})}),p?.valid===!1&&(0,c.jsx)(`span`,{title:p.error||`Integrity Failure`,children:(0,c.jsx)(u.ShieldAlert,{className:`h-3 w-3 text-destructive`})})]})}),(0,c.jsx)(i.TableCell,{className:`text-muted-foreground whitespace-nowrap`,children:e.kind===`file`?f(e.size):`--`}),(0,c.jsx)(i.TableCell,{className:`text-muted-foreground whitespace-nowrap`,children:e.kind===`folder`?`Folder`:e.contentType||`File`}),(0,c.jsx)(i.TableCell,{children:(0,c.jsx)(`div`,{className:`flex flex-wrap gap-1`,children:l.map(e=>(0,c.jsx)(n.Badge,{variant:`secondary`,className:`px-1.5 py-0 text-[10px] h-4 bg-muted/50`,children:e},e))})}),(0,c.jsx)(i.TableCell,{className:`text-right text-muted-foreground whitespace-nowrap`,children:e.lastModified?(0,d.format)(e.lastModified,`yyyy/MM/dd HH:mm`):`--`})]})};return(0,c.jsx)(`div`,{className:`flex-1 overflow-auto`,children:(0,c.jsxs)(i.Table,{className:`relative`,children:[(0,c.jsx)(i.TableHeader,{className:`bg-muted/30 sticky top-0 z-10`,children:(0,c.jsxs)(i.TableRow,{children:[(0,c.jsx)(i.TableHead,{className:`w-[35%]`,children:`Name`}),(0,c.jsx)(i.TableHead,{children:`Size`}),(0,c.jsx)(i.TableHead,{children:`Type`}),(0,c.jsx)(i.TableHead,{children:`Tags`}),(0,c.jsx)(i.TableHead,{className:`text-right`,children:`Modified`})]})}),(0,c.jsx)(i.TableBody,{children:e.length===0?(0,c.jsx)(i.TableRow,{children:(0,c.jsx)(i.TableCell,{colSpan:5,className:`h-32 text-center text-muted-foreground`,children:`No items found.`})}):e.map(e=>{let n=p.includes(e.id),r=t=>(0,c.jsx)(s.FileContextMenu,{node:e,onOpen:g,onDelete:_,onDetails:v,onRename:y,onUpdateTags:b,onVerify:x,children:t}),i=e.kind===`file`?(0,c.jsx)(a.Draggable,{id:e.id,data:e,children:({ref:i,style:a,handleRef:o,isDragging:s})=>r(C(e,n,{ref:i,style:a,className:t.cn(s&&`z-50`)},o))}):(0,c.jsx)(o.Droppable,{id:e.id,data:e,children:({ref:i,isDropTarget:a})=>r(C(e,n,{ref:i,"data-file-drop":e.id,"data-drop-over":a,className:t.cn(a&&`bg-primary/10 ring-2 ring-primary/20 inset-x-0`)}))});return(0,c.jsx)(l.default.Fragment,{children:i},e.id)})})]})})}exports.FileListView=p;
|
|
2
2
|
//# sourceMappingURL=FileListView.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileListView.cjs","names":["TableRow","cn","TableCell","FileIcon","Loader2","ShieldCheck","ShieldAlert","Badge","format","Table","TableHeader","TableHead","TableBody","FileContextMenu","Draggable","Droppable","React","require_runtime","require_ui_lib_utils","require_ui_components_ui_badge_components","require_ui_components_ui_file_icon","require_ui_components_ui_table","require_tools_components_ui_dnd_Draggable","require_tools_components_ui_dnd_Droppable","require_tools_components_file_browser_FileContextMenu","react_jsx_runtime","react","lucide_react","date_fns","formatSize","bytes","k","sizes","i","FileListView","handleRowClick","selectedIds","node","onSelect","id","renderNodeContent","tags","verification","verifyingIds","rowProps","isSelected","e","onOpen","dragHandle","tag","nodes","withContextMenu","row","item","setNodeRef","isDragging","isOver"],"sources":["../../../../src/tools/components/file-browser/FileListView.tsx"],"sourcesContent":["import React from 'react';\nimport { FileIcon } from '../ui/file-icon';\nimport type { FileNode } from './types';\nimport { format } from 'date-fns';\nimport { cn } from '../../lib/utils';\nimport { Table, TableBody, TableCell, TableHead, TableHeader, TableRow, Badge } from '../ui';\nimport { FileContextMenu } from './FileContextMenu';\nimport { Draggable, Droppable } from '../ui/dnd';\nimport { ShieldCheck, ShieldAlert, Loader2 } from 'lucide-react';\n\nexport interface FileListViewProps {\n /** 表示するノード一覧 */\n nodes: FileNode[];\n /** 選択されているノードのID一覧 */\n selectedIds: string[];\n /** 検証状態のマップ */\n verifyingIds?: Record<string, { loading: boolean; valid?: boolean; error?: string }>;\n /** 選択状態が変更された時のコールバック */\n onSelect: (ids: string[]) => void;\n /** ノードがダブルクリック(またはフォルダ移動)された時のコールバック */\n onOpen: (node: FileNode) => void;\n /** ノードを削除する時のコールバック */\n onDelete: (node: FileNode) => void;\n /** 詳細を表示する時のコールバック */\n onDetails?: (node: FileNode) => void;\n /** 名前変更時のコールバック */\n onRename?: (node: FileNode) => void;\n /** タグ更新時のコールバック */\n onUpdateTags?: (node: FileNode) => void;\n /** 整合性検証時のコールバック */\n onVerify?: (node: FileNode) => void;\n}\n\n/**\n * ファイルのバイト数を人間が読みやすい形式に変換\n */\nfunction formatSize(bytes?: number): string {\n if (bytes === undefined) return '-';\n if (bytes === 0) return '0 B';\n const k = 1024;\n const sizes = ['B', 'KB', 'MB', 'GB', 'TB'];\n const i = Math.floor(Math.log(bytes) / Math.log(k));\n return `${parseFloat((bytes / Math.pow(k, i)).toFixed(1))} ${sizes[i]}`;\n}\n\n/**\n * ファイルの一覧表示(詳細リスト形式)\n */\nexport function FileListView({\n nodes,\n selectedIds,\n verifyingIds = {},\n onSelect,\n onOpen,\n onDelete,\n onDetails,\n onRename,\n onUpdateTags,\n onVerify,\n}: FileListViewProps) {\n const handleRowClick = (e: React.MouseEvent, node: FileNode) => {\n if (e.metaKey || e.ctrlKey) {\n if (selectedIds.includes(node.id)) {\n onSelect(selectedIds.filter((id) => id !== node.id));\n } else {\n onSelect([...selectedIds, node.id]);\n }\n } else {\n onSelect([node.id]);\n }\n };\n\n const renderNodeContent = (\n node: FileNode, isSelected: boolean,\n rowProps: React.ComponentPropsWithRef<typeof TableRow> = {},\n dragHandle?: { attributes: React.HTMLAttributes<HTMLButtonElement>; listeners?: React.HTMLAttributes<HTMLButtonElement> },\n ) => {\n const tags = node.metadata?.tags?.split(',').filter(Boolean) || [];\n const verification = verifyingIds[node.id];\n\n return (\n <TableRow\n {...rowProps}\n className={cn(\n 'cursor-pointer transition-colors group select-none w-full border-b',\n isSelected && 'bg-primary/5 hover:bg-primary/10',\n rowProps.className,\n )}\n onClick={(e) => handleRowClick(e, node)}\n onDoubleClick={() => onOpen(node)}\n >\n <TableCell className='font-medium'>\n <div className='flex items-center gap-3'>\n {dragHandle ? (\n <button type='button' aria-label={`Move ${node.name}`} {...dragHandle.attributes} {...dragHandle.listeners}>\n <FileIcon kind={node.kind} contentType={node.contentType} className='h-4 w-4 shrink-0' />\n </button>\n ) : <FileIcon kind={node.kind} contentType={node.contentType} className='h-4 w-4 shrink-0' />}\n <span className='truncate'>{node.name}</span>\n {verification?.loading && (\n <Loader2 className='h-3 w-3 animate-spin text-muted-foreground' />\n )}\n {verification?.valid === true && (\n <span title='Integrity Verified'>\n <ShieldCheck className='h-3 w-3 text-green-600' />\n </span>\n )}\n {verification?.valid === false && (\n <span title={verification.error || 'Integrity Failure'}>\n <ShieldAlert className='h-3 w-3 text-destructive' />\n </span>\n )}\n </div>\n </TableCell>\n <TableCell className='text-muted-foreground whitespace-nowrap'>\n {node.kind === 'file' ? formatSize(node.size) : '--'}\n </TableCell>\n <TableCell className='text-muted-foreground whitespace-nowrap'>\n {node.kind === 'folder' ? 'Folder' : node.contentType || 'File'}\n </TableCell>\n <TableCell>\n <div className='flex flex-wrap gap-1'>\n {tags.map((tag) => (\n <Badge\n key={tag}\n variant='secondary'\n className='px-1.5 py-0 text-[10px] h-4 bg-muted/50'\n >\n {tag}\n </Badge>\n ))}\n </div>\n </TableCell>\n <TableCell className='text-right text-muted-foreground whitespace-nowrap'>\n {node.lastModified ? format(node.lastModified, 'yyyy/MM/dd HH:mm') : '--'}\n </TableCell>\n </TableRow>\n );\n };\n\n return (\n <div className='flex-1 overflow-auto'>\n <Table className='relative'>\n <TableHeader className='bg-muted/30 sticky top-0 z-10'>\n <TableRow>\n <TableHead className='w-[35%]'>Name</TableHead>\n <TableHead>Size</TableHead>\n <TableHead>Type</TableHead>\n <TableHead>Tags</TableHead>\n <TableHead className='text-right'>Modified</TableHead>\n </TableRow>\n </TableHeader>\n <TableBody>\n {nodes.length === 0 ? (\n <TableRow>\n <TableCell colSpan={5} className='h-32 text-center text-muted-foreground'>\n No items found.\n </TableCell>\n </TableRow>\n ) : (\n nodes.map((node) => {\n const isSelected = selectedIds.includes(node.id);\n\n const withContextMenu = (row: React.ReactElement) => (\n <FileContextMenu node={node} onOpen={onOpen} onDelete={onDelete}\n onDetails={onDetails} onRename={onRename} onUpdateTags={onUpdateTags} onVerify={onVerify}>\n {row}\n </FileContextMenu>\n );\n const item = node.kind === 'file' ? (\n <Draggable id={node.id} data={node}>\n {({ setNodeRef, style, attributes, listeners, isDragging }) =>\n withContextMenu(renderNodeContent(node, isSelected,\n { ref: setNodeRef, style, className: cn(isDragging && 'z-50') },\n { attributes, listeners }))}\n </Draggable>\n ) : (\n <Droppable id={node.id} data={node}>\n {({ setNodeRef, isOver }) => withContextMenu(renderNodeContent(node, isSelected,\n { ref: setNodeRef, className: cn(isOver && 'bg-primary/10 ring-2 ring-primary/20 inset-x-0') }))}\n </Droppable>\n );\n\n return <React.Fragment key={node.id}>{item}</React.Fragment>;\n })\n )}\n </TableBody>\n </Table>\n </div>\n );\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FileListView.cjs","names":["TableRow","cn","TableCell","FileIcon","Loader2","ShieldCheck","ShieldAlert","Badge","format","Table","TableHeader","TableHead","TableBody","FileContextMenu","Draggable","Droppable","React","require_runtime","require_ui_lib_utils","require_ui_components_ui_badge_components","require_ui_components_ui_file_icon","require_ui_components_ui_table","require_tools_components_ui_dnd_Draggable","require_tools_components_ui_dnd_Droppable","require_tools_components_file_browser_FileContextMenu","react_jsx_runtime","react","lucide_react","date_fns","formatSize","bytes","k","sizes","i","FileListView","handleRowClick","selectedIds","node","onSelect","id","renderNodeContent","tags","verification","verifyingIds","rowProps","isSelected","e","onOpen","dragHandle","tag","nodes","withContextMenu","row","item","isDragging","handleRef","isDropTarget"],"sources":["../../../../src/tools/components/file-browser/FileListView.tsx"],"sourcesContent":["import React from 'react';\nimport { FileIcon } from '../ui/file-icon';\nimport type { FileNode } from './types';\nimport { format } from 'date-fns';\nimport { cn } from '../../lib/utils';\nimport { Table, TableBody, TableCell, TableHead, TableHeader, TableRow, Badge } from '../ui';\nimport { FileContextMenu } from './FileContextMenu';\nimport { Draggable, Droppable } from '../ui/dnd';\nimport { ShieldCheck, ShieldAlert, Loader2 } from 'lucide-react';\n\nexport interface FileListViewProps {\n /** 表示するノード一覧 */\n nodes: FileNode[];\n /** 選択されているノードのID一覧 */\n selectedIds: string[];\n /** 検証状態のマップ */\n verifyingIds?: Record<string, { loading: boolean; valid?: boolean; error?: string }>;\n /** 選択状態が変更された時のコールバック */\n onSelect: (ids: string[]) => void;\n /** ノードがダブルクリック(またはフォルダ移動)された時のコールバック */\n onOpen: (node: FileNode) => void;\n /** ノードを削除する時のコールバック */\n onDelete: (node: FileNode) => void;\n /** 詳細を表示する時のコールバック */\n onDetails?: (node: FileNode) => void;\n /** 名前変更時のコールバック */\n onRename?: (node: FileNode) => void;\n /** タグ更新時のコールバック */\n onUpdateTags?: (node: FileNode) => void;\n /** 整合性検証時のコールバック */\n onVerify?: (node: FileNode) => void;\n}\n\n/**\n * ファイルのバイト数を人間が読みやすい形式に変換\n */\nfunction formatSize(bytes?: number): string {\n if (bytes === undefined) return '-';\n if (bytes === 0) return '0 B';\n const k = 1024;\n const sizes = ['B', 'KB', 'MB', 'GB', 'TB'];\n const i = Math.floor(Math.log(bytes) / Math.log(k));\n return `${parseFloat((bytes / Math.pow(k, i)).toFixed(1))} ${sizes[i]}`;\n}\n\n/**\n * Render a semantic table of host-owned file nodes with native icon drag handles.\n * @param props - Current nodes, selected ids, optional verification state and host\n * selection/open/delete/detail/rename/tag/verify callbacks; no storage is configured here.\n * @returns The table view; empty listings show the corresponding empty state.\n * @remarks Place standalone views under DnDProvider from the same native engine.\n * Selection and open callbacks remain host-owned. Import Appkit CSS once.\n * @example\n * ```tsx\n * import {FileListView} from '@alneas/appkit-react/tools/file-browser';\n * import {DnDProvider} from '@alneas/appkit-react/tools/ui';\n * import '@alneas/appkit-react/styles';\n * export function EmptyFiles() {\n * return <DnDProvider><FileListView nodes={[]} selectedIds={[]}\n * onSelect={() => {}} onOpen={() => {}} onDelete={() => {}} /></DnDProvider>;\n * }\n * ```\n */\nexport function FileListView({\n nodes,\n selectedIds,\n verifyingIds = {},\n onSelect,\n onOpen,\n onDelete,\n onDetails,\n onRename,\n onUpdateTags,\n onVerify,\n}: FileListViewProps) {\n const handleRowClick = (e: React.MouseEvent, node: FileNode) => {\n if (e.metaKey || e.ctrlKey) {\n if (selectedIds.includes(node.id)) {\n onSelect(selectedIds.filter((id) => id !== node.id));\n } else {\n onSelect([...selectedIds, node.id]);\n }\n } else {\n onSelect([node.id]);\n }\n };\n\n const renderNodeContent = (\n node: FileNode, isSelected: boolean,\n rowProps: React.ComponentPropsWithRef<typeof TableRow> & {'data-file-drop'?: string; 'data-drop-over'?: boolean} = {},\n dragHandle?: (element: Element | null) => void,\n ) => {\n const tags = node.metadata?.tags?.split(',').filter(Boolean) || [];\n const verification = verifyingIds[node.id];\n\n return (\n <TableRow\n {...rowProps}\n className={cn(\n 'cursor-pointer transition-colors group select-none w-full border-b',\n isSelected && 'bg-primary/5 hover:bg-primary/10',\n rowProps.className,\n )}\n onClick={(e) => handleRowClick(e, node)}\n onDoubleClick={() => onOpen(node)}\n >\n <TableCell className='font-medium'>\n <div className='flex items-center gap-3'>\n {dragHandle ? (\n <button type='button' aria-label={`Move ${node.name}`} ref={dragHandle}>\n <FileIcon kind={node.kind} contentType={node.contentType} className='h-4 w-4 shrink-0' />\n </button>\n ) : <FileIcon kind={node.kind} contentType={node.contentType} className='h-4 w-4 shrink-0' />}\n <span className='truncate'>{node.name}</span>\n {verification?.loading && (\n <Loader2 className='h-3 w-3 animate-spin text-muted-foreground' />\n )}\n {verification?.valid === true && (\n <span title='Integrity Verified'>\n <ShieldCheck className='h-3 w-3 text-green-600' />\n </span>\n )}\n {verification?.valid === false && (\n <span title={verification.error || 'Integrity Failure'}>\n <ShieldAlert className='h-3 w-3 text-destructive' />\n </span>\n )}\n </div>\n </TableCell>\n <TableCell className='text-muted-foreground whitespace-nowrap'>\n {node.kind === 'file' ? formatSize(node.size) : '--'}\n </TableCell>\n <TableCell className='text-muted-foreground whitespace-nowrap'>\n {node.kind === 'folder' ? 'Folder' : node.contentType || 'File'}\n </TableCell>\n <TableCell>\n <div className='flex flex-wrap gap-1'>\n {tags.map((tag) => (\n <Badge\n key={tag}\n variant='secondary'\n className='px-1.5 py-0 text-[10px] h-4 bg-muted/50'\n >\n {tag}\n </Badge>\n ))}\n </div>\n </TableCell>\n <TableCell className='text-right text-muted-foreground whitespace-nowrap'>\n {node.lastModified ? format(node.lastModified, 'yyyy/MM/dd HH:mm') : '--'}\n </TableCell>\n </TableRow>\n );\n };\n\n return (\n <div className='flex-1 overflow-auto'>\n <Table className='relative'>\n <TableHeader className='bg-muted/30 sticky top-0 z-10'>\n <TableRow>\n <TableHead className='w-[35%]'>Name</TableHead>\n <TableHead>Size</TableHead>\n <TableHead>Type</TableHead>\n <TableHead>Tags</TableHead>\n <TableHead className='text-right'>Modified</TableHead>\n </TableRow>\n </TableHeader>\n <TableBody>\n {nodes.length === 0 ? (\n <TableRow>\n <TableCell colSpan={5} className='h-32 text-center text-muted-foreground'>\n No items found.\n </TableCell>\n </TableRow>\n ) : (\n nodes.map((node) => {\n const isSelected = selectedIds.includes(node.id);\n\n const withContextMenu = (row: React.ReactElement) => (\n <FileContextMenu node={node} onOpen={onOpen} onDelete={onDelete}\n onDetails={onDetails} onRename={onRename} onUpdateTags={onUpdateTags} onVerify={onVerify}>\n {row}\n </FileContextMenu>\n );\n const item = node.kind === 'file' ? (\n <Draggable id={node.id} data={node}>\n {({ ref, style, handleRef, isDragging }) =>\n withContextMenu(renderNodeContent(node, isSelected,\n { ref, style, className: cn(isDragging && 'z-50') },\n handleRef))}\n </Draggable>\n ) : (\n <Droppable id={node.id} data={node}>\n {({ ref, isDropTarget }) => withContextMenu(renderNodeContent(node, isSelected,\n { ref, 'data-file-drop': node.id, 'data-drop-over': isDropTarget, className: cn(isDropTarget && 'bg-primary/10 ring-2 ring-primary/20 inset-x-0') }))}\n </Droppable>\n );\n\n return <React.Fragment key={node.id}>{item}</React.Fragment>;\n })\n )}\n </TableBody>\n </Table>\n </div>\n );\n}\n"],"mappings":"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"}
|
|
@@ -27,6 +27,21 @@ export interface FileListViewProps {
|
|
|
27
27
|
onVerify?: (node: FileNode) => void;
|
|
28
28
|
}
|
|
29
29
|
/**
|
|
30
|
-
*
|
|
30
|
+
* Render a semantic table of host-owned file nodes with native icon drag handles.
|
|
31
|
+
* @param props - Current nodes, selected ids, optional verification state and host
|
|
32
|
+
* selection/open/delete/detail/rename/tag/verify callbacks; no storage is configured here.
|
|
33
|
+
* @returns The table view; empty listings show the corresponding empty state.
|
|
34
|
+
* @remarks Place standalone views under DnDProvider from the same native engine.
|
|
35
|
+
* Selection and open callbacks remain host-owned. Import Appkit CSS once.
|
|
36
|
+
* @example
|
|
37
|
+
* ```tsx
|
|
38
|
+
* import {FileListView} from '@alneas/appkit-react/tools/file-browser';
|
|
39
|
+
* import {DnDProvider} from '@alneas/appkit-react/tools/ui';
|
|
40
|
+
* import '@alneas/appkit-react/styles';
|
|
41
|
+
* export function EmptyFiles() {
|
|
42
|
+
* return <DnDProvider><FileListView nodes={[]} selectedIds={[]}
|
|
43
|
+
* onSelect={() => {}} onOpen={() => {}} onDelete={() => {}} /></DnDProvider>;
|
|
44
|
+
* }
|
|
45
|
+
* ```
|
|
31
46
|
*/
|
|
32
47
|
export declare function FileListView({ nodes, selectedIds, verifyingIds, onSelect, onOpen, onDelete, onDetails, onRename, onUpdateTags, onVerify, }: FileListViewProps): React.JSX.Element;
|
|
@@ -27,6 +27,21 @@ export interface FileListViewProps {
|
|
|
27
27
|
onVerify?: (node: FileNode) => void;
|
|
28
28
|
}
|
|
29
29
|
/**
|
|
30
|
-
*
|
|
30
|
+
* Render a semantic table of host-owned file nodes with native icon drag handles.
|
|
31
|
+
* @param props - Current nodes, selected ids, optional verification state and host
|
|
32
|
+
* selection/open/delete/detail/rename/tag/verify callbacks; no storage is configured here.
|
|
33
|
+
* @returns The table view; empty listings show the corresponding empty state.
|
|
34
|
+
* @remarks Place standalone views under DnDProvider from the same native engine.
|
|
35
|
+
* Selection and open callbacks remain host-owned. Import Appkit CSS once.
|
|
36
|
+
* @example
|
|
37
|
+
* ```tsx
|
|
38
|
+
* import {FileListView} from '@alneas/appkit-react/tools/file-browser';
|
|
39
|
+
* import {DnDProvider} from '@alneas/appkit-react/tools/ui';
|
|
40
|
+
* import '@alneas/appkit-react/styles';
|
|
41
|
+
* export function EmptyFiles() {
|
|
42
|
+
* return <DnDProvider><FileListView nodes={[]} selectedIds={[]}
|
|
43
|
+
* onSelect={() => {}} onOpen={() => {}} onDelete={() => {}} /></DnDProvider>;
|
|
44
|
+
* }
|
|
45
|
+
* ```
|
|
31
46
|
*/
|
|
32
47
|
export declare function FileListView({ nodes, selectedIds, verifyingIds, onSelect, onOpen, onDelete, onDetails, onRename, onUpdateTags, onVerify, }: FileListViewProps): React.JSX.Element;
|
|
@@ -42,8 +42,7 @@ function b({ nodes: b, selectedIds: x, verifyingIds: S = {}, onSelect: C, onOpen
|
|
|
42
42
|
s ? /* @__PURE__ */ f("button", {
|
|
43
43
|
type: "button",
|
|
44
44
|
"aria-label": `Move ${r.name}`,
|
|
45
|
-
|
|
46
|
-
...s.listeners,
|
|
45
|
+
ref: s,
|
|
47
46
|
children: /* @__PURE__ */ f(n, {
|
|
48
47
|
kind: r.kind,
|
|
49
48
|
contentType: r.contentType,
|
|
@@ -129,19 +128,18 @@ function b({ nodes: b, selectedIds: x, verifyingIds: S = {}, onSelect: C, onOpen
|
|
|
129
128
|
}), i = t.kind === "file" ? /* @__PURE__ */ f(l, {
|
|
130
129
|
id: t.id,
|
|
131
130
|
data: t,
|
|
132
|
-
children: ({
|
|
131
|
+
children: ({ ref: i, style: a, handleRef: o, isDragging: s }) => r(j(t, n, {
|
|
133
132
|
ref: i,
|
|
134
133
|
style: a,
|
|
135
|
-
className: e(
|
|
136
|
-
},
|
|
137
|
-
attributes: o,
|
|
138
|
-
listeners: s
|
|
139
|
-
}))
|
|
134
|
+
className: e(s && "z-50")
|
|
135
|
+
}, o))
|
|
140
136
|
}) : /* @__PURE__ */ f(u, {
|
|
141
137
|
id: t.id,
|
|
142
138
|
data: t,
|
|
143
|
-
children: ({
|
|
139
|
+
children: ({ ref: i, isDropTarget: a }) => r(j(t, n, {
|
|
144
140
|
ref: i,
|
|
141
|
+
"data-file-drop": t.id,
|
|
142
|
+
"data-drop-over": a,
|
|
145
143
|
className: e(a && "bg-primary/10 ring-2 ring-primary/20 inset-x-0")
|
|
146
144
|
}))
|
|
147
145
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileListView.js","names":["FileIcon","FileIcon$1","React","formatSize","bytes","k","sizes","i","FileListView","handleRowClick","selectedIds","node","onSelect","id","renderNodeContent","tags","verification","verifyingIds","TableRow","rowProps","cn","isSelected","onOpen","TableCell","dragHandle","Loader2","ShieldCheck","ShieldAlert","Badge","tag","format","Table","TableHeader","TableHead","TableBody","nodes","withContextMenu","FileContextMenu","row","item","Draggable","setNodeRef","isDragging","Droppable","isOver"],"sources":["../../../../src/tools/components/file-browser/FileListView.tsx"],"sourcesContent":["import React from 'react';\nimport { FileIcon } from '../ui/file-icon';\nimport type { FileNode } from './types';\nimport { format } from 'date-fns';\nimport { cn } from '../../lib/utils';\nimport { Table, TableBody, TableCell, TableHead, TableHeader, TableRow, Badge } from '../ui';\nimport { FileContextMenu } from './FileContextMenu';\nimport { Draggable, Droppable } from '../ui/dnd';\nimport { ShieldCheck, ShieldAlert, Loader2 } from 'lucide-react';\n\nexport interface FileListViewProps {\n /** 表示するノード一覧 */\n nodes: FileNode[];\n /** 選択されているノードのID一覧 */\n selectedIds: string[];\n /** 検証状態のマップ */\n verifyingIds?: Record<string, { loading: boolean; valid?: boolean; error?: string }>;\n /** 選択状態が変更された時のコールバック */\n onSelect: (ids: string[]) => void;\n /** ノードがダブルクリック(またはフォルダ移動)された時のコールバック */\n onOpen: (node: FileNode) => void;\n /** ノードを削除する時のコールバック */\n onDelete: (node: FileNode) => void;\n /** 詳細を表示する時のコールバック */\n onDetails?: (node: FileNode) => void;\n /** 名前変更時のコールバック */\n onRename?: (node: FileNode) => void;\n /** タグ更新時のコールバック */\n onUpdateTags?: (node: FileNode) => void;\n /** 整合性検証時のコールバック */\n onVerify?: (node: FileNode) => void;\n}\n\n/**\n * ファイルのバイト数を人間が読みやすい形式に変換\n */\nfunction formatSize(bytes?: number): string {\n if (bytes === undefined) return '-';\n if (bytes === 0) return '0 B';\n const k = 1024;\n const sizes = ['B', 'KB', 'MB', 'GB', 'TB'];\n const i = Math.floor(Math.log(bytes) / Math.log(k));\n return `${parseFloat((bytes / Math.pow(k, i)).toFixed(1))} ${sizes[i]}`;\n}\n\n/**\n * ファイルの一覧表示(詳細リスト形式)\n */\nexport function FileListView({\n nodes,\n selectedIds,\n verifyingIds = {},\n onSelect,\n onOpen,\n onDelete,\n onDetails,\n onRename,\n onUpdateTags,\n onVerify,\n}: FileListViewProps) {\n const handleRowClick = (e: React.MouseEvent, node: FileNode) => {\n if (e.metaKey || e.ctrlKey) {\n if (selectedIds.includes(node.id)) {\n onSelect(selectedIds.filter((id) => id !== node.id));\n } else {\n onSelect([...selectedIds, node.id]);\n }\n } else {\n onSelect([node.id]);\n }\n };\n\n const renderNodeContent = (\n node: FileNode, isSelected: boolean,\n rowProps: React.ComponentPropsWithRef<typeof TableRow> = {},\n dragHandle?: { attributes: React.HTMLAttributes<HTMLButtonElement>; listeners?: React.HTMLAttributes<HTMLButtonElement> },\n ) => {\n const tags = node.metadata?.tags?.split(',').filter(Boolean) || [];\n const verification = verifyingIds[node.id];\n\n return (\n <TableRow\n {...rowProps}\n className={cn(\n 'cursor-pointer transition-colors group select-none w-full border-b',\n isSelected && 'bg-primary/5 hover:bg-primary/10',\n rowProps.className,\n )}\n onClick={(e) => handleRowClick(e, node)}\n onDoubleClick={() => onOpen(node)}\n >\n <TableCell className='font-medium'>\n <div className='flex items-center gap-3'>\n {dragHandle ? (\n <button type='button' aria-label={`Move ${node.name}`} {...dragHandle.attributes} {...dragHandle.listeners}>\n <FileIcon kind={node.kind} contentType={node.contentType} className='h-4 w-4 shrink-0' />\n </button>\n ) : <FileIcon kind={node.kind} contentType={node.contentType} className='h-4 w-4 shrink-0' />}\n <span className='truncate'>{node.name}</span>\n {verification?.loading && (\n <Loader2 className='h-3 w-3 animate-spin text-muted-foreground' />\n )}\n {verification?.valid === true && (\n <span title='Integrity Verified'>\n <ShieldCheck className='h-3 w-3 text-green-600' />\n </span>\n )}\n {verification?.valid === false && (\n <span title={verification.error || 'Integrity Failure'}>\n <ShieldAlert className='h-3 w-3 text-destructive' />\n </span>\n )}\n </div>\n </TableCell>\n <TableCell className='text-muted-foreground whitespace-nowrap'>\n {node.kind === 'file' ? formatSize(node.size) : '--'}\n </TableCell>\n <TableCell className='text-muted-foreground whitespace-nowrap'>\n {node.kind === 'folder' ? 'Folder' : node.contentType || 'File'}\n </TableCell>\n <TableCell>\n <div className='flex flex-wrap gap-1'>\n {tags.map((tag) => (\n <Badge\n key={tag}\n variant='secondary'\n className='px-1.5 py-0 text-[10px] h-4 bg-muted/50'\n >\n {tag}\n </Badge>\n ))}\n </div>\n </TableCell>\n <TableCell className='text-right text-muted-foreground whitespace-nowrap'>\n {node.lastModified ? format(node.lastModified, 'yyyy/MM/dd HH:mm') : '--'}\n </TableCell>\n </TableRow>\n );\n };\n\n return (\n <div className='flex-1 overflow-auto'>\n <Table className='relative'>\n <TableHeader className='bg-muted/30 sticky top-0 z-10'>\n <TableRow>\n <TableHead className='w-[35%]'>Name</TableHead>\n <TableHead>Size</TableHead>\n <TableHead>Type</TableHead>\n <TableHead>Tags</TableHead>\n <TableHead className='text-right'>Modified</TableHead>\n </TableRow>\n </TableHeader>\n <TableBody>\n {nodes.length === 0 ? (\n <TableRow>\n <TableCell colSpan={5} className='h-32 text-center text-muted-foreground'>\n No items found.\n </TableCell>\n </TableRow>\n ) : (\n nodes.map((node) => {\n const isSelected = selectedIds.includes(node.id);\n\n const withContextMenu = (row: React.ReactElement) => (\n <FileContextMenu node={node} onOpen={onOpen} onDelete={onDelete}\n onDetails={onDetails} onRename={onRename} onUpdateTags={onUpdateTags} onVerify={onVerify}>\n {row}\n </FileContextMenu>\n );\n const item = node.kind === 'file' ? (\n <Draggable id={node.id} data={node}>\n {({ setNodeRef, style, attributes, listeners, isDragging }) =>\n withContextMenu(renderNodeContent(node, isSelected,\n { ref: setNodeRef, style, className: cn(isDragging && 'z-50') },\n { attributes, listeners }))}\n </Draggable>\n ) : (\n <Droppable id={node.id} data={node}>\n {({ setNodeRef, isOver }) => withContextMenu(renderNodeContent(node, isSelected,\n { ref: setNodeRef, className: cn(isOver && 'bg-primary/10 ring-2 ring-primary/20 inset-x-0') }))}\n </Droppable>\n );\n\n return <React.Fragment key={node.id}>{item}</React.Fragment>;\n })\n )}\n </TableBody>\n </Table>\n </div>\n );\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FileListView.js","names":["FileIcon","FileIcon$1","React","formatSize","bytes","k","sizes","i","FileListView","handleRowClick","selectedIds","node","onSelect","id","renderNodeContent","tags","verification","verifyingIds","TableRow","rowProps","cn","isSelected","onOpen","TableCell","dragHandle","Loader2","ShieldCheck","ShieldAlert","Badge","tag","format","Table","TableHeader","TableHead","TableBody","nodes","withContextMenu","FileContextMenu","row","item","Draggable","isDragging","handleRef","Droppable","isDropTarget"],"sources":["../../../../src/tools/components/file-browser/FileListView.tsx"],"sourcesContent":["import React from 'react';\nimport { FileIcon } from '../ui/file-icon';\nimport type { FileNode } from './types';\nimport { format } from 'date-fns';\nimport { cn } from '../../lib/utils';\nimport { Table, TableBody, TableCell, TableHead, TableHeader, TableRow, Badge } from '../ui';\nimport { FileContextMenu } from './FileContextMenu';\nimport { Draggable, Droppable } from '../ui/dnd';\nimport { ShieldCheck, ShieldAlert, Loader2 } from 'lucide-react';\n\nexport interface FileListViewProps {\n /** 表示するノード一覧 */\n nodes: FileNode[];\n /** 選択されているノードのID一覧 */\n selectedIds: string[];\n /** 検証状態のマップ */\n verifyingIds?: Record<string, { loading: boolean; valid?: boolean; error?: string }>;\n /** 選択状態が変更された時のコールバック */\n onSelect: (ids: string[]) => void;\n /** ノードがダブルクリック(またはフォルダ移動)された時のコールバック */\n onOpen: (node: FileNode) => void;\n /** ノードを削除する時のコールバック */\n onDelete: (node: FileNode) => void;\n /** 詳細を表示する時のコールバック */\n onDetails?: (node: FileNode) => void;\n /** 名前変更時のコールバック */\n onRename?: (node: FileNode) => void;\n /** タグ更新時のコールバック */\n onUpdateTags?: (node: FileNode) => void;\n /** 整合性検証時のコールバック */\n onVerify?: (node: FileNode) => void;\n}\n\n/**\n * ファイルのバイト数を人間が読みやすい形式に変換\n */\nfunction formatSize(bytes?: number): string {\n if (bytes === undefined) return '-';\n if (bytes === 0) return '0 B';\n const k = 1024;\n const sizes = ['B', 'KB', 'MB', 'GB', 'TB'];\n const i = Math.floor(Math.log(bytes) / Math.log(k));\n return `${parseFloat((bytes / Math.pow(k, i)).toFixed(1))} ${sizes[i]}`;\n}\n\n/**\n * Render a semantic table of host-owned file nodes with native icon drag handles.\n * @param props - Current nodes, selected ids, optional verification state and host\n * selection/open/delete/detail/rename/tag/verify callbacks; no storage is configured here.\n * @returns The table view; empty listings show the corresponding empty state.\n * @remarks Place standalone views under DnDProvider from the same native engine.\n * Selection and open callbacks remain host-owned. Import Appkit CSS once.\n * @example\n * ```tsx\n * import {FileListView} from '@alneas/appkit-react/tools/file-browser';\n * import {DnDProvider} from '@alneas/appkit-react/tools/ui';\n * import '@alneas/appkit-react/styles';\n * export function EmptyFiles() {\n * return <DnDProvider><FileListView nodes={[]} selectedIds={[]}\n * onSelect={() => {}} onOpen={() => {}} onDelete={() => {}} /></DnDProvider>;\n * }\n * ```\n */\nexport function FileListView({\n nodes,\n selectedIds,\n verifyingIds = {},\n onSelect,\n onOpen,\n onDelete,\n onDetails,\n onRename,\n onUpdateTags,\n onVerify,\n}: FileListViewProps) {\n const handleRowClick = (e: React.MouseEvent, node: FileNode) => {\n if (e.metaKey || e.ctrlKey) {\n if (selectedIds.includes(node.id)) {\n onSelect(selectedIds.filter((id) => id !== node.id));\n } else {\n onSelect([...selectedIds, node.id]);\n }\n } else {\n onSelect([node.id]);\n }\n };\n\n const renderNodeContent = (\n node: FileNode, isSelected: boolean,\n rowProps: React.ComponentPropsWithRef<typeof TableRow> & {'data-file-drop'?: string; 'data-drop-over'?: boolean} = {},\n dragHandle?: (element: Element | null) => void,\n ) => {\n const tags = node.metadata?.tags?.split(',').filter(Boolean) || [];\n const verification = verifyingIds[node.id];\n\n return (\n <TableRow\n {...rowProps}\n className={cn(\n 'cursor-pointer transition-colors group select-none w-full border-b',\n isSelected && 'bg-primary/5 hover:bg-primary/10',\n rowProps.className,\n )}\n onClick={(e) => handleRowClick(e, node)}\n onDoubleClick={() => onOpen(node)}\n >\n <TableCell className='font-medium'>\n <div className='flex items-center gap-3'>\n {dragHandle ? (\n <button type='button' aria-label={`Move ${node.name}`} ref={dragHandle}>\n <FileIcon kind={node.kind} contentType={node.contentType} className='h-4 w-4 shrink-0' />\n </button>\n ) : <FileIcon kind={node.kind} contentType={node.contentType} className='h-4 w-4 shrink-0' />}\n <span className='truncate'>{node.name}</span>\n {verification?.loading && (\n <Loader2 className='h-3 w-3 animate-spin text-muted-foreground' />\n )}\n {verification?.valid === true && (\n <span title='Integrity Verified'>\n <ShieldCheck className='h-3 w-3 text-green-600' />\n </span>\n )}\n {verification?.valid === false && (\n <span title={verification.error || 'Integrity Failure'}>\n <ShieldAlert className='h-3 w-3 text-destructive' />\n </span>\n )}\n </div>\n </TableCell>\n <TableCell className='text-muted-foreground whitespace-nowrap'>\n {node.kind === 'file' ? formatSize(node.size) : '--'}\n </TableCell>\n <TableCell className='text-muted-foreground whitespace-nowrap'>\n {node.kind === 'folder' ? 'Folder' : node.contentType || 'File'}\n </TableCell>\n <TableCell>\n <div className='flex flex-wrap gap-1'>\n {tags.map((tag) => (\n <Badge\n key={tag}\n variant='secondary'\n className='px-1.5 py-0 text-[10px] h-4 bg-muted/50'\n >\n {tag}\n </Badge>\n ))}\n </div>\n </TableCell>\n <TableCell className='text-right text-muted-foreground whitespace-nowrap'>\n {node.lastModified ? format(node.lastModified, 'yyyy/MM/dd HH:mm') : '--'}\n </TableCell>\n </TableRow>\n );\n };\n\n return (\n <div className='flex-1 overflow-auto'>\n <Table className='relative'>\n <TableHeader className='bg-muted/30 sticky top-0 z-10'>\n <TableRow>\n <TableHead className='w-[35%]'>Name</TableHead>\n <TableHead>Size</TableHead>\n <TableHead>Type</TableHead>\n <TableHead>Tags</TableHead>\n <TableHead className='text-right'>Modified</TableHead>\n </TableRow>\n </TableHeader>\n <TableBody>\n {nodes.length === 0 ? (\n <TableRow>\n <TableCell colSpan={5} className='h-32 text-center text-muted-foreground'>\n No items found.\n </TableCell>\n </TableRow>\n ) : (\n nodes.map((node) => {\n const isSelected = selectedIds.includes(node.id);\n\n const withContextMenu = (row: React.ReactElement) => (\n <FileContextMenu node={node} onOpen={onOpen} onDelete={onDelete}\n onDetails={onDetails} onRename={onRename} onUpdateTags={onUpdateTags} onVerify={onVerify}>\n {row}\n </FileContextMenu>\n );\n const item = node.kind === 'file' ? (\n <Draggable id={node.id} data={node}>\n {({ ref, style, handleRef, isDragging }) =>\n withContextMenu(renderNodeContent(node, isSelected,\n { ref, style, className: cn(isDragging && 'z-50') },\n handleRef))}\n </Draggable>\n ) : (\n <Droppable id={node.id} data={node}>\n {({ ref, isDropTarget }) => withContextMenu(renderNodeContent(node, isSelected,\n { ref, 'data-file-drop': node.id, 'data-drop-over': isDropTarget, className: cn(isDropTarget && 'bg-primary/10 ring-2 ring-primary/20 inset-x-0') }))}\n </Droppable>\n );\n\n return <React.Fragment key={node.id}>{item}</React.Fragment>;\n })\n )}\n </TableBody>\n </Table>\n </div>\n );\n}\n"],"mappings":";;;;;;;;;;;;;AAoCA,SAASG,EAAW,GAAwB;CAC1C,IAAIC,MAAU,KAAA,GAAW,OAAO;CAChC,IAAIA,MAAU,GAAG,OAAO;CACxB,IAAMC,IAAI,MACJC,IAAQ;EAAC;EAAK;EAAM;EAAM;EAAM;CAAI,GACpCC,IAAI,KAAK,MAAM,KAAK,IAAIH,CAAK,IAAI,KAAK,IAAIC,CAAC,CAAC;CAClD,OAAO,GAAG,YAAYD,IAAiBC,KAAGE,EAAC,CAAG,QAAQ,CAAC,CAAC,EAAE,GAAGD,EAAMC;AACrE;AAoBA,SAAgBC,EAAa,EAC3B,UACA,gBACA,kBAAe,CAAC,GAChB,aACA,WACA,aACA,cACA,aACA,iBACA,eACoB;CACpB,IAAMC,KAAkB,GAAqB,MAAmB;EAC9D,AAAI,EAAE,WAAW,EAAE,UACbC,EAAY,SAASC,EAAK,EAAE,IAC9BC,EAASF,EAAY,QAAQ,MAAOG,MAAOF,EAAK,EAAE,CAAC,IAEnDC,EAAS,CAAC,GAAGF,GAAaC,EAAK,EAAE,CAAC,IAGpCC,EAAS,CAACD,EAAK,EAAE,CAAC;CAEtB,GAEMG,KACJ,GAAgB,GAChB,IAAmH,CAAC,GACpH,MACG;EACH,IAAMC,IAAOJ,EAAK,UAAU,MAAM,MAAM,GAAG,CAAC,CAAC,OAAO,OAAO,KAAK,CAAC,GAC3DK,IAAeC,EAAaN,EAAK;EAEvC,OACE,kBAACO,GAAD;GACE,GAAIC;GACJ,WAAWC,EACT,sEACAC,KAAc,oCACdF,EAAS,SACX;GACA,UAAU,MAAMV,EAAe,GAAGE,CAAI;GACtC,qBAAqBW,EAAOX,CAAI;GARlC,UAAA;IAUE,kBAACY,GAAD;KAAW,WAAU;KACnB,UAAA,kBAAC,OAAD;MAAK,WAAU;MAAf,UAAA;OACGC,IACC,kBAAC,UAAD;QAAQ,MAAK;QAAS,cAAY,QAAQb,EAAK;QAAQ,KAAKa;QAC1D,UAAA,kBAACxB,GAAD;SAAU,MAAMW,EAAK;SAAM,aAAaA,EAAK;SAAa,WAAU;QAAoB,CAAA;OAClF,CAAA,IACN,kBAACX,GAAD;QAAU,MAAMW,EAAK;QAAM,aAAaA,EAAK;QAAa,WAAU;OAAoB,CAAA;OAC5F,kBAAC,QAAD;QAAM,WAAU;QAAY,UAAAA,EAAK;OAAW,CAAA;OAC3CK,GAAc,WACb,kBAACS,GAAD,EAAS,WAAU,6CAA8C,CAAA;OAElET,GAAc,UAAU,MACvB,kBAAC,QAAD;QAAM,OAAM;QACV,UAAA,kBAACU,GAAD,EAAa,WAAU,yBAA0B,CAAA;OAC7C,CAAA;OAEPV,GAAc,UAAU,MACvB,kBAAC,QAAD;QAAM,OAAOA,EAAa,SAAS;QACjC,UAAA,kBAACW,GAAD,EAAa,WAAU,2BAA4B,CAAA;OAC/C,CAAA;MAEL;;IACI,CAAA;IACX,kBAACJ,GAAD;KAAW,WAAU;KAClB,UAAAZ,EAAK,SAAS,SAASR,EAAWQ,EAAK,IAAI,IAAI;IACvC,CAAA;IACX,kBAACY,GAAD;KAAW,WAAU;KAClB,UAAAZ,EAAK,SAAS,WAAW,WAAWA,EAAK,eAAe;IAChD,CAAA;IACX,kBAACY,GAAD,EAAA,UACE,kBAAC,OAAD;KAAK,WAAU;KACZ,UAAAR,EAAK,KAAK,MACT,kBAACa,GAAD;MAEE,SAAQ;MACR,WAAU;MAET,UAAAC;KACI,GALAA,CAKA,CACR;IACE,CAAA,EACI,CAAA;IACX,kBAACN,GAAD;KAAW,WAAU;KAClB,UAAAZ,EAAK,eAAemB,EAAOnB,EAAK,cAAc,kBAAkB,IAAI;IAC5D,CAAA;GACH;;CAEd;CAEA,OACE,kBAAC,OAAD;EAAK,WAAU;EACb,UAAA,kBAACoB,GAAD;GAAO,WAAU;GAAjB,UAAA,CACE,kBAACC,GAAD;IAAa,WAAU;IACrB,UAAA,kBAACd,GAAD,EAAA,UAAA;KACE,kBAACe,GAAD;MAAW,WAAU;MAAU,UAAA;KAAe,CAAA;KAC9C,kBAACA,GAAD,EAAA,UAAW,OAAe,CAAA;KAC1B,kBAACA,GAAD,EAAA,UAAW,OAAe,CAAA;KAC1B,kBAACA,GAAD,EAAA,UAAW,OAAe,CAAA;KAC1B,kBAACA,GAAD;MAAW,WAAU;MAAa,UAAA;KAAmB,CAAA;IAC7C,EAAA,CAAA;GACC,CAAA,GACb,kBAACC,GAAD,EAAA,UACGC,EAAM,WAAW,IAChB,kBAACjB,GAAD,EAAA,UACE,kBAACK,GAAD;IAAW,SAAS;IAAG,WAAU;IAAyC,UAAA;GAE/D,CAAA,EACH,CAAA,IAEVY,EAAM,KAAK,MAAS;IAClB,IAAMd,IAAaX,EAAY,SAASC,EAAK,EAAE,GAEzCyB,KAAmB,MACvB,kBAACC,GAAD;KAAuB;KAAc;KAAkB;KAC1C;KAAqB;KAAwB;KAAwB;KAC/E,UAAAC;IACc,CAAA,GAEbC,IAAO5B,EAAK,SAAS,SACzB,kBAAC6B,GAAD;KAAW,IAAI7B,EAAK;KAAI,MAAMA;KAC1B,WAAA,EAAE,QAAK,UAAO,cAAW,oBACzByB,EAAgBtB,EAAkBH,GAAMU,GACtC;MAAE;MAAK;MAAO,WAAWD,EAAGqB,KAAc,MAAM;KAAE,GAClDC,CAAS,CAAC;IACL,CAAA,IAEX,kBAACC,GAAD;KAAW,IAAIhC,EAAK;KAAI,MAAMA;KAC1B,WAAA,EAAE,QAAK,sBAAmByB,EAAgBtB,EAAkBH,GAAMU,GAClE;MAAE;MAAK,kBAAkBV,EAAK;MAAI,kBAAkBiC;MAAc,WAAWxB,EAAGwB,KAAgB,gDAAgD;KAAE,CAAC,CAAC;IAC7I,CAAA;IAGb,OAAO,kBAAC1C,EAAM,UAAP,EAAA,UAA+BqC,EAAqB,GAA/B5B,EAAK,EAA0B;GAC7D,CAAC,EAEM,CAAA,CACN;;CACJ,CAAA;AAET"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use client";Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});function e(e,t){let{source:n,target:r}=e.operation;if(e.canceled||!n||!r)return null;let i=t.find(e=>e.id===n.id),a=t.find(e=>e.id===r.id);if(!i||!a||i.kind!==`file`||a.kind!==`folder`||n.data.id!==i.id||n.data.kind!==`file`||r.data.id!==a.id||r.data.kind!==`folder`)return null;let o=a.id.endsWith(`/`)?a.id:`${a.id}/`;return i.id.startsWith(o)?null:{nodeId:i.id,targetPath:o}}exports.resolveFileDrop=e;
|
|
2
|
+
//# sourceMappingURL=file-drop.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-drop.cjs","names":["resolveFileDrop","event","source","target","file","nodes","node","folder","targetPath"],"sources":["../../../../src/tools/components/file-browser/file-drop.ts"],"sourcesContent":["import type {FileNode} from './types';\ninterface FileDrop {\n canceled: boolean;\n operation: {\n source: {id: string | number; data: Record<string, unknown>} | null | undefined;\n target: {id: string | number; data: Record<string, unknown>} | null | undefined;\n };\n}\n/** Resolve against the live listing, not the metadata captured before navigation. */\nexport function resolveFileDrop(event: FileDrop, nodes: readonly FileNode[]) {\n const {source, target} = event.operation;\n if (event.canceled || !source || !target) return null;\n const file = nodes.find(node => node.id === source.id);\n const folder = nodes.find(node => node.id === target.id);\n if (!file || !folder || file.kind !== 'file' || folder.kind !== 'folder') return null;\n if (source.data.id !== file.id || source.data.kind !== 'file' || target.data.id !== folder.id || target.data.kind !== 'folder') return null;\n const targetPath = folder.id.endsWith('/') ? folder.id : `${folder.id}/`;\n if (file.id.startsWith(targetPath)) return null;\n return {nodeId: file.id, targetPath};\n}\n"],"mappings":"A,gFASA,SAAgBA,EAAgB,EAAiB,EAA4B,CAC3E,GAAM,CAAC,SAAQ,UAAUC,EAAM,UAC/B,GAAIA,EAAM,UAAY,CAACC,GAAU,CAACC,EAAQ,OAAO,KACjD,IAAMC,EAAOC,EAAM,KAAK,GAAQC,EAAK,KAAOJ,EAAO,EAAE,EAC/CK,EAASF,EAAM,KAAK,GAAQC,EAAK,KAAOH,EAAO,EAAE,EAEvD,GADI,CAACC,GAAQ,CAACG,GAAUH,EAAK,OAAS,QAAUG,EAAO,OAAS,UAC5DL,EAAO,KAAK,KAAOE,EAAK,IAAMF,EAAO,KAAK,OAAS,QAAUC,EAAO,KAAK,KAAOI,EAAO,IAAMJ,EAAO,KAAK,OAAS,SAAU,OAAO,KACvI,IAAMK,EAAaD,EAAO,GAAG,SAAS,GAAG,EAAIA,EAAO,GAAK,GAAGA,EAAO,GAAG,GAEtE,OADIH,EAAK,GAAG,WAAWI,CAAU,EAAU,KACpC,CAAC,OAAQJ,EAAK,GAAI,YAAU,CACrC,C"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { FileNode } from './types.cjs';
|
|
2
|
+
interface FileDrop {
|
|
3
|
+
canceled: boolean;
|
|
4
|
+
operation: {
|
|
5
|
+
source: {
|
|
6
|
+
id: string | number;
|
|
7
|
+
data: Record<string, unknown>;
|
|
8
|
+
} | null | undefined;
|
|
9
|
+
target: {
|
|
10
|
+
id: string | number;
|
|
11
|
+
data: Record<string, unknown>;
|
|
12
|
+
} | null | undefined;
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
/** Resolve against the live listing, not the metadata captured before navigation. */
|
|
16
|
+
export declare function resolveFileDrop(event: FileDrop, nodes: readonly FileNode[]): {
|
|
17
|
+
nodeId: string;
|
|
18
|
+
targetPath: string;
|
|
19
|
+
} | null;
|
|
20
|
+
export {};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { FileNode } from './types.js';
|
|
2
|
+
interface FileDrop {
|
|
3
|
+
canceled: boolean;
|
|
4
|
+
operation: {
|
|
5
|
+
source: {
|
|
6
|
+
id: string | number;
|
|
7
|
+
data: Record<string, unknown>;
|
|
8
|
+
} | null | undefined;
|
|
9
|
+
target: {
|
|
10
|
+
id: string | number;
|
|
11
|
+
data: Record<string, unknown>;
|
|
12
|
+
} | null | undefined;
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
/** Resolve against the live listing, not the metadata captured before navigation. */
|
|
16
|
+
export declare function resolveFileDrop(event: FileDrop, nodes: readonly FileNode[]): {
|
|
17
|
+
nodeId: string;
|
|
18
|
+
targetPath: string;
|
|
19
|
+
} | null;
|
|
20
|
+
export {};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
//#region src/tools/components/file-browser/file-drop.ts
|
|
3
|
+
function e(e, t) {
|
|
4
|
+
let { source: n, target: r } = e.operation;
|
|
5
|
+
if (e.canceled || !n || !r) return null;
|
|
6
|
+
let i = t.find((e) => e.id === n.id), a = t.find((e) => e.id === r.id);
|
|
7
|
+
if (!i || !a || i.kind !== "file" || a.kind !== "folder" || n.data.id !== i.id || n.data.kind !== "file" || r.data.id !== a.id || r.data.kind !== "folder") return null;
|
|
8
|
+
let o = a.id.endsWith("/") ? a.id : `${a.id}/`;
|
|
9
|
+
return i.id.startsWith(o) ? null : {
|
|
10
|
+
nodeId: i.id,
|
|
11
|
+
targetPath: o
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
//#endregion
|
|
15
|
+
export { e as resolveFileDrop };
|
|
16
|
+
|
|
17
|
+
//# sourceMappingURL=file-drop.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-drop.js","names":["resolveFileDrop","event","source","target","file","nodes","node","folder","targetPath"],"sources":["../../../../src/tools/components/file-browser/file-drop.ts"],"sourcesContent":["import type {FileNode} from './types';\ninterface FileDrop {\n canceled: boolean;\n operation: {\n source: {id: string | number; data: Record<string, unknown>} | null | undefined;\n target: {id: string | number; data: Record<string, unknown>} | null | undefined;\n };\n}\n/** Resolve against the live listing, not the metadata captured before navigation. */\nexport function resolveFileDrop(event: FileDrop, nodes: readonly FileNode[]) {\n const {source, target} = event.operation;\n if (event.canceled || !source || !target) return null;\n const file = nodes.find(node => node.id === source.id);\n const folder = nodes.find(node => node.id === target.id);\n if (!file || !folder || file.kind !== 'file' || folder.kind !== 'folder') return null;\n if (source.data.id !== file.id || source.data.kind !== 'file' || target.data.id !== folder.id || target.data.kind !== 'folder') return null;\n const targetPath = folder.id.endsWith('/') ? folder.id : `${folder.id}/`;\n if (file.id.startsWith(targetPath)) return null;\n return {nodeId: file.id, targetPath};\n}\n"],"mappings":";;AASA,SAAgBA,EAAgB,GAAiB,GAA4B;CAC3E,IAAM,EAAC,WAAQ,cAAUC,EAAM;CAC/B,IAAIA,EAAM,YAAY,CAACC,KAAU,CAACC,GAAQ,OAAO;CACjD,IAAMC,IAAOC,EAAM,MAAK,MAAQC,EAAK,OAAOJ,EAAO,EAAE,GAC/CK,IAASF,EAAM,MAAK,MAAQC,EAAK,OAAOH,EAAO,EAAE;CAEvD,IADI,CAACC,KAAQ,CAACG,KAAUH,EAAK,SAAS,UAAUG,EAAO,SAAS,YAC5DL,EAAO,KAAK,OAAOE,EAAK,MAAMF,EAAO,KAAK,SAAS,UAAUC,EAAO,KAAK,OAAOI,EAAO,MAAMJ,EAAO,KAAK,SAAS,UAAU,OAAO;CACvI,IAAMK,IAAaD,EAAO,GAAG,SAAS,GAAG,IAAIA,EAAO,KAAK,GAAGA,EAAO,GAAG;CAEtE,OADIH,EAAK,GAAG,WAAWI,CAAU,IAAU,OACpC;EAAC,QAAQJ,EAAK;EAAI;CAAU;AACrC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use client";Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./filter-types.cjs");let t=require("react");function n(e,t){if(t==null||t===``)return;let{type:n,operator:r}=e;if(n===`boolean`)return t;if(n===`array`&&Array.isArray(t))return t.length===0?void 0:{$in:t};if(n===`string`&&typeof t==`string`){if(!t.trim())return;if(r===`contains`)return{$regex:t,$options:`i`};if(r===`startsWith`)return{$regex:`^${t}`,$options:`i`};if(r===`endsWith`)return{$regex:`${t}$`,$options:`i`}}if(r===`range`&&typeof t==`object`&&!Array.isArray(t)&&!(t instanceof Date)){let e=t,n={};return e.min!==void 0&&e.min!==null&&(n.$gte=e.min),e.max!==void 0&&e.max!==null&&(n.$lte=e.max),Object.keys(n).length>0?n:void 0}return t}function r(e){if(e==null||typeof e==`string`&&e.trim()===``||Array.isArray(e)&&e.length===0)return!0;if(typeof e==`object`&&!(e instanceof Date)){let t=e;return t.min===void 0&&t.max===void 0}return!1}function i(e,t){let n={};for(let r of e)n[r.field]=r.defaultValue??t?.[r.field]??void 0;return{...n,...t}}function a(a){let{schema:o,fields:s,defaultValues:c,onChange:l}=a,u=(0,t.useMemo)(()=>JSON.stringify(s),[s]),[d,f]=(0,t.useState)(s),[p,m]=(0,t.useState)(u);u!==p&&(f(s),m(u));let h=(0,t.useMemo)(()=>d.map(t=>e.resolveFilterField(t,o)),[d,o]),g=(0,t.useMemo)(()=>i(h,c),[h,c]),[_,v]=(0,t.useState)(g),y=(0,t.useRef)(c);(0,t.useEffect)(()=>{JSON.stringify(c)!==JSON.stringify(y.current)&&v(i(h,c)),y.current=c},[c,h]);let b=(0,t.useMemo)(()=>{let e={};for(let t of h){let r=_[t.field],i=n(t,r);i!==void 0&&(e[t.field]=i)}return e},[_,h]),x=JSON.stringify(b),S=(0,t.useMemo)(()=>JSON.parse(x),[x]),C=(0,t.useMemo)(()=>h.every(e=>r(_[e.field])),[_,h]),w=(0,t.
|
|
1
|
+
"use client";Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./filter-types.cjs");let t=require("react");function n(e,t){if(t==null||t===``)return;let{type:n,operator:r}=e;if(n===`boolean`)return t;if(n===`array`&&Array.isArray(t))return t.length===0?void 0:{$in:t};if(n===`string`&&typeof t==`string`){if(!t.trim())return;if(r===`contains`)return{$regex:t,$options:`i`};if(r===`startsWith`)return{$regex:`^${t}`,$options:`i`};if(r===`endsWith`)return{$regex:`${t}$`,$options:`i`}}if(r===`range`&&typeof t==`object`&&!Array.isArray(t)&&!(t instanceof Date)){let e=t,n={};return e.min!==void 0&&e.min!==null&&(n.$gte=e.min),e.max!==void 0&&e.max!==null&&(n.$lte=e.max),Object.keys(n).length>0?n:void 0}return t}function r(e){if(e==null||typeof e==`string`&&e.trim()===``||Array.isArray(e)&&e.length===0)return!0;if(typeof e==`object`&&!(e instanceof Date)){let t=e;return t.min===void 0&&t.max===void 0}return!1}function i(e,t){let n={};for(let r of e)n[r.field]=r.defaultValue??t?.[r.field]??void 0;return{...n,...t}}function a(a){let{schema:o,fields:s,defaultValues:c,onChange:l}=a,u=(0,t.useMemo)(()=>JSON.stringify(s),[s]),[d,f]=(0,t.useState)(s),[p,m]=(0,t.useState)(u);u!==p&&(f(s),m(u));let h=(0,t.useMemo)(()=>d.map(t=>e.resolveFilterField(t,o)),[d,o]),g=(0,t.useMemo)(()=>i(h,c),[h,c]),[_,v]=(0,t.useState)(g),y=(0,t.useRef)(c);(0,t.useEffect)(()=>{JSON.stringify(c)!==JSON.stringify(y.current)&&v(i(h,c)),y.current=c},[c,h]);let b=(0,t.useMemo)(()=>{let e={};for(let t of h){let r=_[t.field],i=n(t,r);i!==void 0&&(e[t.field]=i)}return e},[_,h]),x=JSON.stringify(b),S=(0,t.useMemo)(()=>JSON.parse(x),[x]),C=(0,t.useMemo)(()=>h.every(e=>r(_[e.field])),[_,h]),w=(0,t.useEffectEvent)(e=>{l?.(e)}),T=(0,t.useRef)({});return(0,t.useEffect)(()=>{JSON.stringify(S)!==JSON.stringify(T.current)&&(T.current=S,w(S))},[S]),{values:_,filter:S,fields:h,setField:(0,t.useCallback)((e,t)=>{v(n=>({...n,[e]:t}))},[]),setValues:(0,t.useCallback)(e=>{v(t=>({...t,...e}))},[]),reset:(0,t.useCallback)(()=>{v(g)},[g]),isEmpty:C}}function o(e,t,n){let r=t||Object.keys(e),i=new Set(n||[]);return r.filter(t=>!i.has(t)&&e[t]).map(e=>e)}exports.createFieldsFromSchema=o,exports.useFilter=a,exports.valueToQuery=n;
|
|
2
2
|
//# sourceMappingURL=use-filter.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-filter.cjs","names":["useMemo","useState","resolveFilterField","useRef","useCallback","require_tools_components_filter_filter_types","react","valueToQuery","value","field","type","operator","range","query","isValueEmpty","buildDefaultValues","defaults","fields","userDefaults","useFilter","fieldSpecs","options","currentFieldSpecsStr","stabilizedFieldSpecs","setStabilizedFieldSpecs","prevFieldSpecsStr","setPrevFieldSpecsStr","resolvedFields","spec","schema","defaultValues","values","setValuesState","prevUserDefaultsRef","rawFilter","result","queryValue","filterJson","filter","isEmpty","onChangeRef","onChange","lastSentFilterRef","prev","newValues","createFieldsFromSchema","keys","include","excludeSet","exclude","key"],"sources":["../../../../src/tools/components/filter/use-filter.ts"],"sourcesContent":["/**\n * @fileoverview フィルター状態管理フック\n *\n * ヘッドレスなフィルター状態管理とMongoDBスタイルのクエリ生成を提供します。\n * UI無しでもクエリビルダーとして使用できます。\n *\n * @module filter/use-filter\n */\n\nimport { useState, useMemo, useCallback, useEffect, useRef } from 'react';\nimport {\n CollectionSchema,\n FilterResult,\n FilterFieldSpec,\n FilterValue,\n FilterValues,\n RangeValue,\n ResolvedFilterField,\n resolveFilterField,\n UseFilterOptions,\n} from './filter-types';\n\n// =============================================================================\n// Types\n// =============================================================================\n\n/**\n * useFilterフックの戻り値\n * Return type for the useFilter hook\n */\nexport interface UseFilterReturn {\n /** 現在のフィルター値 / Current filter values */\n values: FilterValues;\n /** MongoDBスタイルのフィルターオブジェクト / MongoDB-style filter object */\n filter: FilterResult;\n /** 解決済みフィールド定義 / Resolved field definitions */\n fields: ResolvedFilterField[];\n /** 単一フィールドの値を設定 / Set value for a single field */\n setField: (field: string, value: FilterValue) => void;\n /** 複数フィールドの値を設定 / Set multiple field values */\n setValues: (values: Partial<FilterValues>) => void;\n /** フィルターをリセット / Reset filter to defaults */\n reset: () => void;\n /** フィルターが空かどうか / Check if filter is empty */\n isEmpty: boolean;\n}\n\n// =============================================================================\n// Helper Functions\n// =============================================================================\n\n/**\n * フィルター値をMongoDBスタイルのクエリに変換する\n * Converts a filter value to MongoDB-style query format\n *\n * @param {ResolvedFilterField} field - フィールド定義 / Field definition\n * @param {FilterValue} value - フィルター値 / Filter value\n * @returns {unknown} MongoDBクエリ値 / MongoDB query value\n */\nexport function valueToQuery(field: ResolvedFilterField, value: FilterValue): unknown {\n if (value === null || value === undefined || value === '') {\n return undefined;\n }\n\n const { type, operator } = field;\n\n // Boolean: return as-is\n if (type === 'boolean') {\n return value;\n }\n\n // Array type (checkbox multi): use $in\n if (type === 'array' && Array.isArray(value)) {\n if (value.length === 0) return undefined;\n return { $in: value };\n }\n\n // String operators: use $regex\n if (type === 'string' && typeof value === 'string') {\n if (!value.trim()) return undefined;\n\n if (operator === 'contains') {\n return { $regex: value, $options: 'i' };\n }\n if (operator === 'startsWith') {\n return { $regex: `^${value}`, $options: 'i' };\n }\n if (operator === 'endsWith') {\n return { $regex: `${value}$`, $options: 'i' };\n }\n // If 'eq', it falls through to the default exact match at the end\n }\n\n // Range operator for number/date\n if (\n operator === 'range' &&\n typeof value === 'object' &&\n !Array.isArray(value) &&\n !(value instanceof Date)\n ) {\n const range = value as RangeValue<number | Date>;\n const query: Record<string, unknown> = {};\n if (range.min !== undefined && range.min !== null) {\n query.$gte = range.min;\n }\n if (range.max !== undefined && range.max !== null) {\n query.$lte = range.max;\n }\n return Object.keys(query).length > 0 ? query : undefined;\n }\n\n // Default: exact match\n return value;\n}\n\n/**\n * フィルター値が空かどうかを判定する\n * Checks if a filter value is considered empty\n *\n * @param {FilterValue} value - フィルター値 / Filter value\n * @returns {boolean} 空の場合true / True if empty\n */\nfunction isValueEmpty(value: FilterValue): boolean {\n if (value === null || value === undefined) return true;\n if (typeof value === 'string' && value.trim() === '') return true;\n if (Array.isArray(value) && value.length === 0) return true;\n if (typeof value === 'object' && !(value instanceof Date)) {\n const range = value as RangeValue<unknown>;\n return range.min === undefined && range.max === undefined;\n }\n return false;\n}\n\n/**\n * デフォルト値マップを構築する\n * Builds the default values map from field definitions\n *\n * @param {ResolvedFilterField[]} fields - フィールド定義 / Field definitions\n * @param {FilterValues} [userDefaults] - ユーザー指定のデフォルト値 / User-provided defaults\n * @returns {FilterValues} デフォルト値マップ / Default values map\n */\nfunction buildDefaultValues(\n fields: ResolvedFilterField[],\n userDefaults?: FilterValues,\n): FilterValues {\n const defaults: FilterValues = {};\n\n for (const field of fields) {\n defaults[field.field] = field.defaultValue ?? userDefaults?.[field.field] ?? undefined;\n }\n\n return { ...defaults, ...userDefaults };\n}\n\n// =============================================================================\n// Hook\n// =============================================================================\n\n/**\n * フィルター状態管理フック\n * Headless hook for managing filter state and generating MongoDB queries\n *\n * スキーマから型を推論し、MongoDBスタイルのフィルターオブジェクトを生成します。\n * UI無しでクエリビルダーとして使用することもできます。\n *\n * @param {UseFilterOptions} options - フックオプション / Hook options\n * @returns {UseFilterReturn} フィルター状態とアクション / Filter state and actions\n *\n * @example\n * // Basic usage with schema\n * const { filter, values, setField, reset } = useFilter({\n * schema: userSchema,\n * fields: ['name', 'age', 'status'],\n * });\n *\n * // Use filter with useFind\n * const { data } = useFind('users', filter);\n *\n * @example\n * // With operator overrides\n * const { filter } = useFilter({\n * schema: userSchema,\n * fields: [\n * 'name',\n * { field: 'age', operator: 'range' },\n * { field: 'createdAt', operator: 'range' },\n * ],\n * });\n *\n * @example\n * // Headless query builder (no UI)\n * const { filter, setField } = useFilter({\n * fields: [\n * { field: 'status', operator: 'eq' },\n * ],\n * });\n * setField('status', 'active');\n * // filter = { status: 'active' }\n */\nexport function useFilter(options: UseFilterOptions): UseFilterReturn {\n const { schema, fields: fieldSpecs, defaultValues: userDefaults, onChange } = options;\n\n // Stabilize fieldSpecs to avoid unnecessary re-resolving\n const currentFieldSpecsStr = useMemo(() => JSON.stringify(fieldSpecs), [fieldSpecs]);\n const [stabilizedFieldSpecs, setStabilizedFieldSpecs] = useState(fieldSpecs);\n const [prevFieldSpecsStr, setPrevFieldSpecsStr] = useState(currentFieldSpecsStr);\n\n if (currentFieldSpecsStr !== prevFieldSpecsStr) {\n setStabilizedFieldSpecs(fieldSpecs);\n setPrevFieldSpecsStr(currentFieldSpecsStr);\n }\n\n // Resolve field specifications\n const resolvedFields = useMemo(() => {\n return stabilizedFieldSpecs.map((spec) => resolveFilterField(spec, schema));\n }, [stabilizedFieldSpecs, schema]);\n\n // Build default values\n const defaultValues = useMemo(() => {\n return buildDefaultValues(resolvedFields, userDefaults);\n }, [resolvedFields, userDefaults]);\n\n // Filter values state\n const [values, setValuesState] = useState<FilterValues>(defaultValues);\n\n // Sync state if userDefaults changes (from parent component)\n const prevUserDefaultsRef = useRef(userDefaults);\n useEffect(() => {\n if (JSON.stringify(userDefaults) !== JSON.stringify(prevUserDefaultsRef.current)) {\n setValuesState(buildDefaultValues(resolvedFields, userDefaults));\n }\n prevUserDefaultsRef.current = userDefaults;\n }, [userDefaults, resolvedFields]);\n\n // Generate MongoDB-style filter\n const rawFilter = useMemo(() => {\n const result: FilterResult = {};\n\n for (const field of resolvedFields) {\n const value = values[field.field];\n const queryValue = valueToQuery(field, value);\n\n if (queryValue !== undefined) {\n result[field.field] = queryValue;\n }\n }\n\n return result;\n }, [values, resolvedFields]);\n\n const filterJson = JSON.stringify(rawFilter);\n const filter = useMemo(() => {\n return JSON.parse(filterJson);\n }, [filterJson]);\n\n // Check if filter is empty\n const isEmpty = useMemo(() => {\n return resolvedFields.every((field) => isValueEmpty(values[field.field]));\n }, [values, resolvedFields]);\n\n // Keep a stable ref to onChange to avoid stale closures\n const onChangeRef = useRef(onChange);\n useEffect(() => {\n onChangeRef.current = onChange;\n }, [onChange]);\n\n // Trigger onChange callback when filter changes, preventing loops with deep comparison ref\n const lastSentFilterRef = useRef<FilterResult>({});\n useEffect(() => {\n if (JSON.stringify(filter) !== JSON.stringify(lastSentFilterRef.current)) {\n lastSentFilterRef.current = filter;\n onChangeRef.current?.(filter);\n }\n }, [filter]);\n\n // Set single field value\n const setField = useCallback((field: string, value: FilterValue) => {\n setValuesState((prev) => ({\n ...prev,\n [field]: value,\n }));\n }, []);\n\n // Set multiple field values\n const setValues = useCallback((newValues: Partial<FilterValues>) => {\n setValuesState((prev) => ({\n ...prev,\n ...newValues,\n }));\n }, []);\n\n // Reset to default values\n const reset = useCallback(() => {\n setValuesState(defaultValues);\n }, [defaultValues]);\n\n return {\n values,\n filter,\n fields: resolvedFields,\n setField,\n setValues,\n reset,\n isEmpty,\n };\n}\n\n// =============================================================================\n// Utility Exports\n// =============================================================================\n\n/**\n * スキーマからフィルターフィールドを自動生成する\n * Auto-generates filter fields from a schema\n *\n * @param {CollectionSchema} schema - コレクションスキーマ / Collection schema\n * @param {string[]} [include] - 含めるフィールド / Fields to include (all if not specified)\n * @param {string[]} [exclude] - 除外するフィールド / Fields to exclude\n * @returns {FilterFieldSpec[]} フィルターフィールド配列 / Filter field specifications\n *\n * @example\n * const fields = createFieldsFromSchema(userSchema, ['name', 'age', 'status']);\n */\nexport function createFieldsFromSchema(\n schema: CollectionSchema,\n include?: string[],\n exclude?: string[],\n): FilterFieldSpec[] {\n const keys = include || Object.keys(schema);\n const excludeSet = new Set(exclude || []);\n\n return keys.filter((key) => !excludeSet.has(key) && schema[key]).map((key) => key);\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"use-filter.cjs","names":["useMemo","useState","resolveFilterField","useRef","useEffectEvent","useCallback","require_tools_components_filter_filter_types","react","valueToQuery","value","field","type","operator","range","query","isValueEmpty","buildDefaultValues","defaults","fields","userDefaults","useFilter","fieldSpecs","options","currentFieldSpecsStr","stabilizedFieldSpecs","setStabilizedFieldSpecs","prevFieldSpecsStr","setPrevFieldSpecsStr","resolvedFields","spec","schema","defaultValues","values","setValuesState","prevUserDefaultsRef","rawFilter","result","queryValue","filterJson","filter","isEmpty","onFilterChange","onChange","nextFilter","lastSentFilterRef","prev","newValues","createFieldsFromSchema","keys","include","excludeSet","exclude","key"],"sources":["../../../../src/tools/components/filter/use-filter.ts"],"sourcesContent":["/**\n * @fileoverview フィルター状態管理フック\n *\n * ヘッドレスなフィルター状態管理とMongoDBスタイルのクエリ生成を提供します。\n * UI無しでもクエリビルダーとして使用できます。\n *\n * @module filter/use-filter\n */\n\nimport { useState, useMemo, useCallback, useEffect, useEffectEvent, useRef } from 'react';\nimport {\n CollectionSchema,\n FilterResult,\n FilterFieldSpec,\n FilterValue,\n FilterValues,\n RangeValue,\n ResolvedFilterField,\n resolveFilterField,\n UseFilterOptions,\n} from './filter-types';\n\n// =============================================================================\n// Types\n// =============================================================================\n\n/**\n * useFilterフックの戻り値\n * Return type for the useFilter hook\n */\nexport interface UseFilterReturn {\n /** 現在のフィルター値 / Current filter values */\n values: FilterValues;\n /** MongoDBスタイルのフィルターオブジェクト / MongoDB-style filter object */\n filter: FilterResult;\n /** 解決済みフィールド定義 / Resolved field definitions */\n fields: ResolvedFilterField[];\n /** 単一フィールドの値を設定 / Set value for a single field */\n setField: (field: string, value: FilterValue) => void;\n /** 複数フィールドの値を設定 / Set multiple field values */\n setValues: (values: Partial<FilterValues>) => void;\n /** フィルターをリセット / Reset filter to defaults */\n reset: () => void;\n /** フィルターが空かどうか / Check if filter is empty */\n isEmpty: boolean;\n}\n\n// =============================================================================\n// Helper Functions\n// =============================================================================\n\n/**\n * フィルター値をMongoDBスタイルのクエリに変換する\n * Converts a filter value to MongoDB-style query format\n *\n * @param {ResolvedFilterField} field - フィールド定義 / Field definition\n * @param {FilterValue} value - フィルター値 / Filter value\n * @returns {unknown} MongoDBクエリ値 / MongoDB query value\n */\nexport function valueToQuery(field: ResolvedFilterField, value: FilterValue): unknown {\n if (value === null || value === undefined || value === '') {\n return undefined;\n }\n\n const { type, operator } = field;\n\n // Boolean: return as-is\n if (type === 'boolean') {\n return value;\n }\n\n // Array type (checkbox multi): use $in\n if (type === 'array' && Array.isArray(value)) {\n if (value.length === 0) return undefined;\n return { $in: value };\n }\n\n // String operators: use $regex\n if (type === 'string' && typeof value === 'string') {\n if (!value.trim()) return undefined;\n\n if (operator === 'contains') {\n return { $regex: value, $options: 'i' };\n }\n if (operator === 'startsWith') {\n return { $regex: `^${value}`, $options: 'i' };\n }\n if (operator === 'endsWith') {\n return { $regex: `${value}$`, $options: 'i' };\n }\n // If 'eq', it falls through to the default exact match at the end\n }\n\n // Range operator for number/date\n if (\n operator === 'range' &&\n typeof value === 'object' &&\n !Array.isArray(value) &&\n !(value instanceof Date)\n ) {\n const range = value as RangeValue<number | Date>;\n const query: Record<string, unknown> = {};\n if (range.min !== undefined && range.min !== null) {\n query.$gte = range.min;\n }\n if (range.max !== undefined && range.max !== null) {\n query.$lte = range.max;\n }\n return Object.keys(query).length > 0 ? query : undefined;\n }\n\n // Default: exact match\n return value;\n}\n\n/**\n * フィルター値が空かどうかを判定する\n * Checks if a filter value is considered empty\n *\n * @param {FilterValue} value - フィルター値 / Filter value\n * @returns {boolean} 空の場合true / True if empty\n */\nfunction isValueEmpty(value: FilterValue): boolean {\n if (value === null || value === undefined) return true;\n if (typeof value === 'string' && value.trim() === '') return true;\n if (Array.isArray(value) && value.length === 0) return true;\n if (typeof value === 'object' && !(value instanceof Date)) {\n const range = value as RangeValue<unknown>;\n return range.min === undefined && range.max === undefined;\n }\n return false;\n}\n\n/**\n * デフォルト値マップを構築する\n * Builds the default values map from field definitions\n *\n * @param {ResolvedFilterField[]} fields - フィールド定義 / Field definitions\n * @param {FilterValues} [userDefaults] - ユーザー指定のデフォルト値 / User-provided defaults\n * @returns {FilterValues} デフォルト値マップ / Default values map\n */\nfunction buildDefaultValues(\n fields: ResolvedFilterField[],\n userDefaults?: FilterValues,\n): FilterValues {\n const defaults: FilterValues = {};\n\n for (const field of fields) {\n defaults[field.field] = field.defaultValue ?? userDefaults?.[field.field] ?? undefined;\n }\n\n return { ...defaults, ...userDefaults };\n}\n\n// =============================================================================\n// Hook\n// =============================================================================\n\n/**\n * フィルター状態管理フック\n * Headless hook for managing filter state and generating MongoDB queries\n *\n * スキーマから型を推論し、MongoDBスタイルのフィルターオブジェクトを生成します。\n * UI無しでクエリビルダーとして使用することもできます。\n *\n * @remarks Filter changes call the latest committed onChange callback. Replacing only\n * the callback does not replay an unchanged filter; deep-equal queries are deduplicated.\n *\n * @param {UseFilterOptions} options - フックオプション / Hook options\n * @returns {UseFilterReturn} フィルター状態とアクション / Filter state and actions\n *\n * @example\n * // Basic usage with schema\n * const { filter, values, setField, reset } = useFilter({\n * schema: userSchema,\n * fields: ['name', 'age', 'status'],\n * });\n *\n * // Use filter with useFind\n * const { data } = useFind('users', filter);\n *\n * @example\n * // With operator overrides\n * const { filter } = useFilter({\n * schema: userSchema,\n * fields: [\n * 'name',\n * { field: 'age', operator: 'range' },\n * { field: 'createdAt', operator: 'range' },\n * ],\n * });\n *\n * @example\n * // Headless query builder (no UI)\n * const { filter, setField } = useFilter({\n * fields: [\n * { field: 'status', operator: 'eq' },\n * ],\n * });\n * setField('status', 'active');\n * // filter = { status: 'active' }\n */\nexport function useFilter(options: UseFilterOptions): UseFilterReturn {\n const { schema, fields: fieldSpecs, defaultValues: userDefaults, onChange } = options;\n\n // Stabilize fieldSpecs to avoid unnecessary re-resolving\n const currentFieldSpecsStr = useMemo(() => JSON.stringify(fieldSpecs), [fieldSpecs]);\n const [stabilizedFieldSpecs, setStabilizedFieldSpecs] = useState(fieldSpecs);\n const [prevFieldSpecsStr, setPrevFieldSpecsStr] = useState(currentFieldSpecsStr);\n\n if (currentFieldSpecsStr !== prevFieldSpecsStr) {\n setStabilizedFieldSpecs(fieldSpecs);\n setPrevFieldSpecsStr(currentFieldSpecsStr);\n }\n\n // Resolve field specifications\n const resolvedFields = useMemo(() => {\n return stabilizedFieldSpecs.map((spec) => resolveFilterField(spec, schema));\n }, [stabilizedFieldSpecs, schema]);\n\n // Build default values\n const defaultValues = useMemo(() => {\n return buildDefaultValues(resolvedFields, userDefaults);\n }, [resolvedFields, userDefaults]);\n\n // Filter values state\n const [values, setValuesState] = useState<FilterValues>(defaultValues);\n\n // Sync state if userDefaults changes (from parent component)\n const prevUserDefaultsRef = useRef(userDefaults);\n useEffect(() => {\n if (JSON.stringify(userDefaults) !== JSON.stringify(prevUserDefaultsRef.current)) {\n setValuesState(buildDefaultValues(resolvedFields, userDefaults));\n }\n prevUserDefaultsRef.current = userDefaults;\n }, [userDefaults, resolvedFields]);\n\n // Generate MongoDB-style filter\n const rawFilter = useMemo(() => {\n const result: FilterResult = {};\n\n for (const field of resolvedFields) {\n const value = values[field.field];\n const queryValue = valueToQuery(field, value);\n\n if (queryValue !== undefined) {\n result[field.field] = queryValue;\n }\n }\n\n return result;\n }, [values, resolvedFields]);\n\n const filterJson = JSON.stringify(rawFilter);\n const filter = useMemo(() => {\n return JSON.parse(filterJson);\n }, [filterJson]);\n\n // Check if filter is empty\n const isEmpty = useMemo(() => {\n return resolvedFields.every((field) => isValueEmpty(values[field.field]));\n }, [values, resolvedFields]);\n\n const onFilterChange = useEffectEvent((nextFilter: FilterResult) => {\n onChange?.(nextFilter);\n });\n\n // Trigger onChange callback when filter changes, preventing loops with deep comparison ref\n const lastSentFilterRef = useRef<FilterResult>({});\n useEffect(() => {\n if (JSON.stringify(filter) !== JSON.stringify(lastSentFilterRef.current)) {\n lastSentFilterRef.current = filter;\n onFilterChange(filter);\n }\n }, [filter]);\n\n // Set single field value\n const setField = useCallback((field: string, value: FilterValue) => {\n setValuesState((prev) => ({\n ...prev,\n [field]: value,\n }));\n }, []);\n\n // Set multiple field values\n const setValues = useCallback((newValues: Partial<FilterValues>) => {\n setValuesState((prev) => ({\n ...prev,\n ...newValues,\n }));\n }, []);\n\n // Reset to default values\n const reset = useCallback(() => {\n setValuesState(defaultValues);\n }, [defaultValues]);\n\n return {\n values,\n filter,\n fields: resolvedFields,\n setField,\n setValues,\n reset,\n isEmpty,\n };\n}\n\n// =============================================================================\n// Utility Exports\n// =============================================================================\n\n/**\n * スキーマからフィルターフィールドを自動生成する\n * Auto-generates filter fields from a schema\n *\n * @param {CollectionSchema} schema - コレクションスキーマ / Collection schema\n * @param {string[]} [include] - 含めるフィールド / Fields to include (all if not specified)\n * @param {string[]} [exclude] - 除外するフィールド / Fields to exclude\n * @returns {FilterFieldSpec[]} フィルターフィールド配列 / Filter field specifications\n *\n * @example\n * const fields = createFieldsFromSchema(userSchema, ['name', 'age', 'status']);\n */\nexport function createFieldsFromSchema(\n schema: CollectionSchema,\n include?: string[],\n exclude?: string[],\n): FilterFieldSpec[] {\n const keys = include || Object.keys(schema);\n const excludeSet = new Set(exclude || []);\n\n return keys.filter((key) => !excludeSet.has(key) && schema[key]).map((key) => key);\n}\n"],"mappings":"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"}
|
|
@@ -35,6 +35,9 @@ export declare function valueToQuery(field: ResolvedFilterField, value: FilterVa
|
|
|
35
35
|
* スキーマから型を推論し、MongoDBスタイルのフィルターオブジェクトを生成します。
|
|
36
36
|
* UI無しでクエリビルダーとして使用することもできます。
|
|
37
37
|
*
|
|
38
|
+
* @remarks Filter changes call the latest committed onChange callback. Replacing only
|
|
39
|
+
* the callback does not replay an unchanged filter; deep-equal queries are deduplicated.
|
|
40
|
+
*
|
|
38
41
|
* @param {UseFilterOptions} options - フックオプション / Hook options
|
|
39
42
|
* @returns {UseFilterReturn} フィルター状態とアクション / Filter state and actions
|
|
40
43
|
*
|
|
@@ -35,6 +35,9 @@ export declare function valueToQuery(field: ResolvedFilterField, value: FilterVa
|
|
|
35
35
|
* スキーマから型を推論し、MongoDBスタイルのフィルターオブジェクトを生成します。
|
|
36
36
|
* UI無しでクエリビルダーとして使用することもできます。
|
|
37
37
|
*
|
|
38
|
+
* @remarks Filter changes call the latest committed onChange callback. Replacing only
|
|
39
|
+
* the callback does not replay an unchanged filter; deep-equal queries are deduplicated.
|
|
40
|
+
*
|
|
38
41
|
* @param {UseFilterOptions} options - フックオプション / Hook options
|
|
39
42
|
* @returns {UseFilterReturn} フィルター状態とアクション / Filter state and actions
|
|
40
43
|
*
|