@oneflowui/ui 0.4.2 → 0.4.4
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/dist/_virtual/_commonjsHelpers.js +6 -0
- package/dist/_virtual/_plugin-vue_export-helper.js +9 -0
- package/dist/assets/tableWorker-CTsbCPPP.js +1 -0
- package/dist/components/ContextMenu/index.vue.d.ts +2 -1
- package/dist/components/ContextMenu/index.vue.js +7 -0
- package/dist/components/ContextMenu/index.vue2.js +92 -0
- package/dist/components/Dashboard/charts/BarChart.vue.js +7 -0
- package/dist/components/Dashboard/charts/BarChart.vue2.js +43 -0
- package/dist/components/Dashboard/charts/DoughnutChart.vue.js +23 -0
- package/dist/components/Dashboard/charts/DoughnutChart.vue2.js +4 -0
- package/dist/components/Dashboard/charts/NumberCard.vue.js +7 -0
- package/dist/components/Dashboard/charts/NumberCard.vue2.js +41 -0
- package/dist/components/Dashboard/charts/PieChart.vue.js +7 -0
- package/dist/components/Dashboard/charts/PieChart.vue2.js +53 -0
- package/dist/components/Dashboard/charts/TableChart.vue.js +7 -0
- package/dist/components/Dashboard/charts/TableChart.vue2.js +50 -0
- package/dist/components/Dashboard/index.vue.js +7 -0
- package/dist/components/Dashboard/index.vue2.js +104 -0
- package/dist/components/ai/AiMessageBubble.vue.js +7 -0
- package/dist/components/ai/AiMessageBubble.vue2.js +47 -0
- package/dist/components/ai/AiMessageList.vue.js +7 -0
- package/dist/components/ai/AiMessageList.vue2.js +78 -0
- package/dist/components/ai/AiSender.vue.js +7 -0
- package/dist/components/ai/AiSender.vue2.js +86 -0
- package/dist/components/ai/AiStreamingCursor.vue.js +7 -0
- package/dist/components/ai/AiStreamingCursor.vue2.js +16 -0
- package/dist/components/ai/AiThinking.vue.js +7 -0
- package/dist/components/ai/AiThinking.vue2.js +19 -0
- package/dist/components/ai/UserMessageBubble.vue.js +7 -0
- package/dist/components/ai/UserMessageBubble.vue2.js +34 -0
- package/dist/components/auxiliary/ColorPanel.vue.js +7 -0
- package/dist/components/auxiliary/ColorPanel.vue2.js +65 -0
- package/dist/components/auxiliary/FileUpload.vue.js +7 -0
- package/dist/components/auxiliary/FileUpload.vue2.js +90 -0
- package/dist/components/auxiliary/PersonPanel.vue.js +7 -0
- package/dist/components/auxiliary/PersonPanel.vue2.js +66 -0
- package/dist/components/base/Accordion.vue.js +7 -0
- package/dist/components/base/Accordion.vue2.js +78 -0
- package/dist/components/base/AddViewBtn.vue.js +7 -0
- package/dist/components/base/AddViewBtn.vue2.js +25 -0
- package/dist/components/base/Avatar.vue.js +7 -0
- package/dist/components/base/Avatar.vue2.js +72 -0
- package/dist/components/base/Badge.vue.js +7 -0
- package/dist/components/base/Badge.vue2.js +70 -0
- package/dist/components/base/ButtonGroup.vue.js +7 -0
- package/dist/components/base/ButtonGroup.vue2.js +40 -0
- package/dist/components/base/ChainItem.vue.js +7 -0
- package/dist/components/base/ChainItem.vue2.js +68 -0
- package/dist/components/base/DescBlock.vue.js +7 -0
- package/dist/components/base/DescBlock.vue2.js +13 -0
- package/dist/components/base/DropdownMenu.vue.js +7 -0
- package/dist/components/base/DropdownMenu.vue2.js +91 -0
- package/dist/components/base/EmptyState.vue.js +7 -0
- package/dist/components/base/EmptyState.vue2.js +38 -0
- package/dist/components/base/InfoCard.vue.js +7 -0
- package/dist/components/base/InfoCard.vue2.js +167 -0
- package/dist/components/base/MonitorItem.vue.d.ts +1 -1
- package/dist/components/base/MonitorItem.vue.js +7 -0
- package/dist/components/base/MonitorItem.vue2.js +56 -0
- package/dist/components/base/PersonaCard.vue.d.ts +2 -1
- package/dist/components/base/PersonaCard.vue.js +7 -0
- package/dist/components/base/PersonaCard.vue2.js +185 -0
- package/dist/components/base/ProgressBar.vue.js +7 -0
- package/dist/components/base/ProgressBar.vue2.js +49 -0
- package/dist/components/base/RangeSlider.vue.js +7 -0
- package/dist/components/base/RangeSlider.vue2.js +35 -0
- package/dist/components/base/RefTag.vue.d.ts +2 -2
- package/dist/components/base/RefTag.vue.js +7 -0
- package/dist/components/base/RefTag.vue2.js +52 -0
- package/dist/components/base/SearchHighlight.vue.d.ts +6 -0
- package/dist/components/base/SearchHighlight.vue.js +7 -0
- package/dist/components/base/SearchHighlight.vue2.js +21 -0
- package/dist/components/base/SectionBlock.vue.js +7 -0
- package/dist/components/base/SectionBlock.vue2.js +115 -0
- package/dist/components/base/SelectBadge.vue.js +7 -0
- package/dist/components/base/SelectBadge.vue2.js +81 -0
- package/dist/components/base/StatisticCard.vue.js +7 -0
- package/dist/components/base/StatisticCard.vue2.js +57 -0
- package/dist/components/base/StatusIndicator.vue.js +7 -0
- package/dist/components/base/StatusIndicator.vue2.js +54 -0
- package/dist/components/base/StatusSummary.vue.js +7 -0
- package/dist/components/base/StatusSummary.vue2.js +64 -0
- package/dist/components/base/Stepper.vue.js +7 -0
- package/dist/components/base/Stepper.vue2.js +70 -0
- package/dist/components/base/Switch.vue.js +7 -0
- package/dist/components/base/Switch.vue2.js +43 -0
- package/dist/components/base/ToolbarBtn.vue.d.ts +2 -1
- package/dist/components/base/ToolbarBtn.vue.js +7 -0
- package/dist/components/base/ToolbarBtn.vue2.js +30 -0
- package/dist/components/base/ViewModeGroup.vue.d.ts +2 -1
- package/dist/components/base/ViewModeGroup.vue.js +7 -0
- package/dist/components/base/ViewModeGroup.vue2.js +32 -0
- package/dist/components/base/ViewSwitcher.vue.d.ts +2 -1
- package/dist/components/base/ViewSwitcher.vue.js +7 -0
- package/dist/components/base/ViewSwitcher.vue2.js +73 -0
- package/dist/components/base/ViewTab.vue.js +7 -0
- package/dist/components/base/ViewTab.vue2.js +42 -0
- package/dist/components/base/index.d.ts +1 -0
- package/dist/components/breadcrumb/Breadcrumb.vue.js +7 -0
- package/dist/components/breadcrumb/Breadcrumb.vue2.js +52 -0
- package/dist/components/breadcrumb/BreadcrumbItem.vue.js +7 -0
- package/dist/components/breadcrumb/BreadcrumbItem.vue2.js +35 -0
- package/dist/components/detail/CommentItem.vue.js +7 -0
- package/dist/components/detail/CommentItem.vue2.js +29 -0
- package/dist/components/detail/DetailLayout.vue.js +7 -0
- package/dist/components/detail/DetailLayout.vue2.js +118 -0
- package/dist/components/detail/PropPanel.vue.js +7 -0
- package/dist/components/detail/PropPanel.vue2.js +51 -0
- package/dist/components/detail/PropRow.vue.js +7 -0
- package/dist/components/detail/PropRow.vue2.js +51 -0
- package/dist/components/editor/BlockQuote.vue.js +7 -0
- package/dist/components/editor/BlockQuote.vue2.js +45 -0
- package/dist/components/editor/CodeBlock.vue.js +7 -0
- package/dist/components/editor/CodeBlock.vue2.js +48 -0
- package/dist/components/editor/ContentBlock.vue.js +7 -0
- package/dist/components/editor/ContentBlock.vue2.js +49 -0
- package/dist/components/editor/RefLink.vue.js +7 -0
- package/dist/components/editor/RefLink.vue2.js +37 -0
- package/dist/components/editor/RichTextEditor.vue.js +7 -0
- package/dist/components/editor/RichTextEditor.vue2.js +132 -0
- package/dist/components/field/FieldAttachment.vue.d.ts +17 -0
- package/dist/components/field/FieldAttachment.vue.js +7 -0
- package/dist/components/field/FieldAttachment.vue2.js +69 -0
- package/dist/components/field/FieldAutoNumber.vue.d.ts +7 -0
- package/dist/components/field/FieldAutoNumber.vue.js +7 -0
- package/dist/components/field/FieldAutoNumber.vue2.js +15 -0
- package/dist/components/field/FieldCheckbox.vue.js +7 -0
- package/dist/{FieldCheckbox-CV3QtQ4Y.js → components/field/FieldCheckbox.vue2.js} +8 -9
- package/dist/components/field/FieldCreator.vue.d.ts +7 -0
- package/dist/components/field/FieldCreator.vue.js +7 -0
- package/dist/components/field/FieldCreator.vue2.js +24 -0
- package/dist/components/field/FieldCurrency.vue.d.ts +17 -0
- package/dist/components/field/FieldCurrency.vue.js +7 -0
- package/dist/components/field/FieldCurrency.vue2.js +42 -0
- package/dist/components/field/FieldDate.vue.js +7 -0
- package/dist/components/field/FieldDate.vue2.js +36 -0
- package/dist/components/field/FieldDatetime.vue.js +7 -0
- package/dist/{FieldDatetime-B52GfWrK.js → components/field/FieldDatetime.vue2.js} +11 -12
- package/dist/components/field/FieldEmail.vue.js +7 -0
- package/dist/{FieldEmail-UREMoue-.js → components/field/FieldEmail.vue2.js} +12 -13
- package/dist/components/field/FieldMarkdownPreview.vue.d.ts +13 -0
- package/dist/components/field/FieldMarkdownPreview.vue.js +7 -0
- package/dist/components/field/FieldMarkdownPreview.vue2.js +37 -0
- package/dist/components/field/FieldMultiSelect.vue.js +7 -0
- package/dist/{FieldMultiSelect-Dlay1Fop.js → components/field/FieldMultiSelect.vue2.js} +32 -33
- package/dist/components/field/FieldNumber.vue.js +7 -0
- package/dist/{FieldNumber-BjhfFhs6.js → components/field/FieldNumber.vue2.js} +8 -9
- package/dist/components/field/FieldPhone.vue.d.ts +17 -0
- package/dist/components/field/FieldPhone.vue.js +7 -0
- package/dist/components/field/FieldPhone.vue2.js +34 -0
- package/dist/components/field/FieldProgress.vue.d.ts +15 -0
- package/dist/components/field/FieldProgress.vue.js +7 -0
- package/dist/components/field/FieldProgress.vue2.js +40 -0
- package/dist/components/field/FieldRating.vue.js +7 -0
- package/dist/components/field/FieldRating.vue2.js +31 -0
- package/dist/components/field/FieldRelation.vue.d.ts +17 -0
- package/dist/components/field/FieldRelation.vue.js +7 -0
- package/dist/components/field/FieldRelation.vue2.js +67 -0
- package/dist/components/field/FieldRichText.vue.d.ts +17 -0
- package/dist/components/field/FieldRichText.vue.js +7 -0
- package/dist/components/field/FieldRichText.vue2.js +65 -0
- package/dist/components/field/FieldSelect.vue.js +7 -0
- package/dist/{FieldSelect-B39Ad8VH.js → components/field/FieldSelect.vue2.js} +44 -44
- package/dist/components/field/FieldText.vue.js +7 -0
- package/dist/{FieldText-Ry7f72Ug.js → components/field/FieldText.vue2.js} +13 -14
- package/dist/components/field/FieldUrl.vue.js +7 -0
- package/dist/components/field/FieldUrl.vue2.js +33 -0
- package/dist/components/form/FormDesigner.vue.js +7 -0
- package/dist/components/form/FormDesigner.vue2.js +255 -0
- package/dist/components/gallery/GalleryCard.vue.js +7 -0
- package/dist/components/gallery/GalleryCard.vue2.js +87 -0
- package/dist/components/gallery/GalleryView.vue.d.ts +6 -2
- package/dist/components/gallery/GalleryView.vue.js +7 -0
- package/dist/components/gallery/GalleryView.vue2.js +58 -0
- package/dist/components/kanban/KanbanBoard.vue.d.ts +5 -1
- package/dist/components/kanban/KanbanBoard.vue.js +7 -0
- package/dist/components/kanban/KanbanBoard.vue2.js +119 -0
- package/dist/components/kanban/KanbanCard.vue.js +7 -0
- package/dist/components/kanban/KanbanCard.vue2.js +56 -0
- package/dist/components/kanban/KanbanColumn.vue.js +7 -0
- package/dist/components/kanban/KanbanColumn.vue2.js +103 -0
- package/dist/components/kanban/QuickAddRow.vue.js +7 -0
- package/dist/components/kanban/QuickAddRow.vue2.js +58 -0
- package/dist/components/layout/AppLayout.vue.js +7 -0
- package/dist/components/layout/AppLayout.vue2.js +82 -0
- package/dist/components/layout/Navbar.vue.js +7 -0
- package/dist/components/layout/Navbar.vue2.js +70 -0
- package/dist/components/layout/Sidebar.vue.js +7 -0
- package/dist/components/layout/Sidebar.vue2.js +88 -0
- package/dist/components/layout/StatusBar.vue.js +7 -0
- package/dist/components/layout/StatusBar.vue2.js +37 -0
- package/dist/components/mermaid/MermaidChart.vue.js +7 -0
- package/dist/components/mermaid/MermaidChart.vue2.js +75 -0
- package/dist/components/overlay/Dialog.vue.js +7 -0
- package/dist/components/overlay/Dialog.vue2.js +89 -0
- package/dist/components/overlay/Drawer.vue.js +7 -0
- package/dist/components/overlay/Drawer.vue2.js +96 -0
- package/dist/components/overlay/Modal.vue.js +7 -0
- package/dist/components/overlay/Modal.vue2.js +99 -0
- package/dist/components/overlay/SidePanel.vue.js +7 -0
- package/dist/components/overlay/SidePanel.vue2.js +121 -0
- package/dist/components/split/SplitPane.vue.js +8 -0
- package/dist/components/split/SplitPane.vue2.js +68 -0
- package/dist/components/table/ColumnHeaderMenu.vue.d.ts +33 -0
- package/dist/components/table/ColumnHeaderMenu.vue.js +7 -0
- package/dist/components/table/ColumnHeaderMenu.vue2.js +153 -0
- package/dist/components/table/DataTable.vue.d.ts +116 -25
- package/dist/components/table/DataTable.vue.js +7 -0
- package/dist/components/table/DataTable.vue2.js +821 -0
- package/dist/components/table/DetailSheet.vue.d.ts +43 -0
- package/dist/components/table/DetailSheet.vue.js +7 -0
- package/dist/components/table/DetailSheet.vue2.js +140 -0
- package/dist/components/table/FieldCell.vue.d.ts +1 -1
- package/dist/components/table/FieldCell.vue.js +7 -0
- package/dist/components/table/FieldCell.vue2.js +86 -0
- package/dist/components/table/FieldTypePicker.vue.d.ts +15 -0
- package/dist/components/table/FieldTypePicker.vue.js +7 -0
- package/dist/components/table/FieldTypePicker.vue2.js +92 -0
- package/dist/components/table/MobileListView.vue.d.ts +24 -0
- package/dist/components/table/MobileListView.vue.js +7 -0
- package/dist/components/table/MobileListView.vue2.js +90 -0
- package/dist/components/table/NewRowBtn.vue.js +7 -0
- package/dist/components/table/NewRowBtn.vue2.js +22 -0
- package/dist/components/table/TableColumnManager.vue.js +7 -0
- package/dist/components/table/TableColumnManager.vue2.js +100 -0
- package/dist/components/table/TableDataRow.vue.js +7 -0
- package/dist/components/table/TableDataRow.vue2.js +115 -0
- package/dist/components/table/TableFilterPanel.vue.js +7 -0
- package/dist/components/table/TableFilterPanel.vue2.js +142 -0
- package/dist/components/table/TableGroupRow.vue.d.ts +5 -0
- package/dist/components/table/TableGroupRow.vue.js +7 -0
- package/dist/components/table/TableGroupRow.vue2.js +58 -0
- package/dist/components/table/TableHeaderRow.vue.d.ts +16 -0
- package/dist/components/table/TableHeaderRow.vue.js +7 -0
- package/dist/components/table/TableHeaderRow.vue2.js +90 -0
- package/dist/components/table/TableToolbar.vue.d.ts +118 -0
- package/dist/components/table/TableToolbar.vue.js +7 -0
- package/dist/components/table/TableToolbar.vue2.js +273 -0
- package/dist/components/table/index.d.ts +5 -0
- package/dist/components/tabs/TabPanel.vue.js +7 -0
- package/dist/components/tabs/TabPanel.vue2.js +26 -0
- package/dist/components/tabs/Tabs.vue.js +7 -0
- package/dist/components/tabs/Tabs.vue2.js +87 -0
- package/dist/components/timeline/ActivityTimeline.vue.js +7 -0
- package/dist/components/timeline/ActivityTimeline.vue2.js +104 -0
- package/dist/components/timeline/GanttRow.vue.js +7 -0
- package/dist/components/timeline/GanttRow.vue2.js +110 -0
- package/dist/components/timeline/GanttTimeline.vue.js +7 -0
- package/dist/components/timeline/GanttTimeline.vue2.js +186 -0
- package/dist/components/toast/ToastContainer.vue.js +34 -0
- package/dist/components/toast/ToastContainer.vue3.js +5 -0
- package/dist/components/toast/ToastItem.vue.js +7 -0
- package/dist/components/toast/ToastItem.vue2.js +78 -0
- package/dist/composables/index.d.ts +19 -0
- package/dist/composables/useAiChat.js +103 -0
- package/dist/composables/useBadge.js +76 -0
- package/dist/composables/useBreakpoint.d.ts +2 -1
- package/dist/composables/useBreakpoint.js +18 -0
- package/dist/composables/useColumnResize.d.ts +19 -0
- package/dist/composables/useColumnResize.js +58 -0
- package/dist/composables/useDraftRows.d.ts +33 -0
- package/dist/composables/useDraftRows.js +103 -0
- package/dist/composables/useFixedColumns.d.ts +25 -0
- package/dist/composables/useFixedColumns.js +61 -0
- package/dist/composables/useFocusTrap.d.ts +10 -0
- package/dist/composables/useFocusTrap.js +37 -0
- package/dist/composables/useInlineEdit.js +28 -0
- package/dist/composables/useKeyboardNavigation.d.ts +45 -0
- package/dist/composables/useKeyboardNavigation.js +140 -0
- package/dist/composables/useMarkdown.js +69 -0
- package/dist/composables/useRowDrag.d.ts +32 -0
- package/dist/composables/useRowDrag.js +85 -0
- package/dist/composables/useSchemaEngine.d.ts +31 -0
- package/dist/composables/useSchemaEngine.js +129 -0
- package/dist/composables/useSearch.d.ts +30 -0
- package/dist/composables/useSearch.js +59 -0
- package/dist/composables/useStream.js +80 -0
- package/dist/composables/useSupabaseProvider.d.ts +70 -0
- package/dist/composables/useSupabaseProvider.js +126 -0
- package/dist/composables/useTable.d.ts +3 -0
- package/dist/composables/useTable.js +135 -0
- package/dist/composables/useTableColumns.js +24 -0
- package/dist/composables/useTableData.js +16 -0
- package/dist/composables/useTableFilter.js +97 -0
- package/dist/composables/useTableGroup.d.ts +14 -1
- package/dist/composables/useTableGroup.js +70 -0
- package/dist/composables/useToast.js +38 -0
- package/dist/composables/useTypewriter.js +56 -0
- package/dist/composables/useViewPersistence.d.ts +98 -0
- package/dist/composables/useViewPersistence.js +141 -0
- package/dist/composables/useVirtualList.d.ts +4 -1
- package/dist/composables/useVirtualList.js +140 -0
- package/dist/composables/useWorkerSort.d.ts +14 -0
- package/dist/composables/useWorkerSort.js +61 -0
- package/dist/constants/table.js +11 -0
- package/dist/index.d.ts +28 -4
- package/dist/index.js +349 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/es/core.js +5 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/es/languages/bash.js +377 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/es/languages/css.js +923 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/es/languages/go.js +151 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/es/languages/java.js +240 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/es/languages/javascript.js +658 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/es/languages/json.js +38 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/es/languages/markdown.js +216 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/es/languages/plaintext.js +13 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/es/languages/python.js +399 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/es/languages/rust.js +305 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/es/languages/sql.js +615 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/es/languages/typescript.js +753 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/es/languages/xml.js +219 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/es/languages/yaml.js +183 -0
- package/dist/node_modules/.pnpm/highlight.js@11.11.1/node_modules/highlight.js/lib/core.js +1063 -0
- package/dist/style.css +1 -1
- package/dist/types/index.d.ts +63 -2
- package/dist/types/index.js +94 -0
- package/dist/types/table-internal.d.ts +64 -0
- package/dist/utils/aggregation.d.ts +5 -0
- package/dist/utils/aggregation.js +38 -0
- package/dist/utils/icon.js +15 -0
- package/dist/utils/supabaseAdapter.d.ts +48 -0
- package/dist/utils/supabaseAdapter.js +76 -0
- package/dist/utils/supabaseSchema.d.ts +81 -0
- package/dist/utils/supabaseSchema.js +202 -0
- package/dist/workers/tableWorker.d.ts +31 -0
- package/package.json +13 -6
- package/dist/FieldDate-Bljx4jb7.js +0 -34
- package/dist/FieldRating-BKHUu-A1.js +0 -32
- package/dist/FieldUrl-bv0EB9sh.js +0 -34
- package/dist/index-DQph5iTq.js +0 -12936
- package/dist/oneflow-ui.js +0 -111
- package/dist/oneflow-ui.umd.cjs +0 -13
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
const l = {
|
|
2
|
+
// Text
|
|
3
|
+
text: "text",
|
|
4
|
+
varchar: "text",
|
|
5
|
+
char: "text",
|
|
6
|
+
"character varying": "text",
|
|
7
|
+
character: "text",
|
|
8
|
+
name: "text",
|
|
9
|
+
citext: "text",
|
|
10
|
+
// Numeric
|
|
11
|
+
int2: "number",
|
|
12
|
+
int4: "number",
|
|
13
|
+
int8: "number",
|
|
14
|
+
float4: "number",
|
|
15
|
+
float8: "number",
|
|
16
|
+
numeric: "number",
|
|
17
|
+
decimal: "number",
|
|
18
|
+
real: "number",
|
|
19
|
+
"double precision": "number",
|
|
20
|
+
integer: "number",
|
|
21
|
+
bigint: "number",
|
|
22
|
+
smallint: "number",
|
|
23
|
+
// Boolean
|
|
24
|
+
bool: "checkbox",
|
|
25
|
+
boolean: "checkbox",
|
|
26
|
+
// Date / Time
|
|
27
|
+
date: "date",
|
|
28
|
+
timestamp: "datetime",
|
|
29
|
+
timestamptz: "datetime",
|
|
30
|
+
"timestamp with time zone": "datetime",
|
|
31
|
+
"timestamp without time zone": "datetime",
|
|
32
|
+
// JSON → richtext (markdown / structured content)
|
|
33
|
+
json: "richtext",
|
|
34
|
+
jsonb: "richtext",
|
|
35
|
+
// UUID
|
|
36
|
+
uuid: "text",
|
|
37
|
+
// Array types
|
|
38
|
+
_text: "multi_select",
|
|
39
|
+
// text[]
|
|
40
|
+
_varchar: "multi_select",
|
|
41
|
+
// varchar[]
|
|
42
|
+
_int4: "multi_select",
|
|
43
|
+
// int[]
|
|
44
|
+
_uuid: "relation"
|
|
45
|
+
// uuid[] → relation
|
|
46
|
+
};
|
|
47
|
+
function x(n, r) {
|
|
48
|
+
const e = n.toLowerCase();
|
|
49
|
+
return e === "url" || e === "link" || e === "website" || e.endsWith("_url") || e.endsWith("_link") ? "url" : e === "email" || e.endsWith("_email") ? "email" : e === "phone" || e === "tel" || e === "mobile" || e.endsWith("_phone") ? "phone" : e === "progress" || e === "completion" || e === "percent" ? "progress" : e === "rating" || e === "score" || e === "stars" ? "rating" : e === "created_by" || e === "creator" || e === "author" || e === "updated_by" || e === "modifier" ? "creator" : (e === "price" || e === "amount" || e === "cost" || e === "total" || e.endsWith("_amount") || e.endsWith("_price")) && (r === "numeric" || r === "decimal" || r === "float8" || r === "money") ? "currency" : (e === "content" || e === "body" || e === "description" || e === "summary" || e === "notes") && (r === "text" || r === "jsonb") ? "richtext" : null;
|
|
50
|
+
}
|
|
51
|
+
function p(n) {
|
|
52
|
+
const {
|
|
53
|
+
tableName: r,
|
|
54
|
+
columns: e,
|
|
55
|
+
overrides: t = {},
|
|
56
|
+
skipColumns: i = [],
|
|
57
|
+
labelMap: u = {},
|
|
58
|
+
includeIdColumn: d = !1,
|
|
59
|
+
inferContentFields: _ = !0,
|
|
60
|
+
selectOptions: c = {}
|
|
61
|
+
} = n, h = /* @__PURE__ */ new Set(["id", "created_at", "updated_at", ...i]);
|
|
62
|
+
d && h.delete("id");
|
|
63
|
+
const m = [];
|
|
64
|
+
for (const a of e) {
|
|
65
|
+
if (h.has(a.column_name)) continue;
|
|
66
|
+
if (a.is_identity === "YES" || a.column_default && a.column_default.includes("nextval")) {
|
|
67
|
+
m.push({
|
|
68
|
+
id: a.column_name,
|
|
69
|
+
name: u[a.column_name] ?? s(a.column_name),
|
|
70
|
+
type: "auto_number",
|
|
71
|
+
prefix: ""
|
|
72
|
+
});
|
|
73
|
+
continue;
|
|
74
|
+
}
|
|
75
|
+
if (c[a.column_name]) {
|
|
76
|
+
m.push({
|
|
77
|
+
id: a.column_name,
|
|
78
|
+
name: u[a.column_name] ?? s(a.column_name),
|
|
79
|
+
type: "select",
|
|
80
|
+
options: c[a.column_name],
|
|
81
|
+
required: a.is_nullable === "NO"
|
|
82
|
+
});
|
|
83
|
+
continue;
|
|
84
|
+
}
|
|
85
|
+
let o = "text";
|
|
86
|
+
if (_) {
|
|
87
|
+
const b = x(a.column_name, a.udt_name);
|
|
88
|
+
b ? o = b : o = l[a.udt_name] ?? l[a.data_type] ?? "text";
|
|
89
|
+
} else
|
|
90
|
+
o = l[a.udt_name] ?? l[a.data_type] ?? "text";
|
|
91
|
+
let f = g(a, o, u);
|
|
92
|
+
t[a.column_name] && (f = { ...f, ...t[a.column_name] }), m.push(f);
|
|
93
|
+
}
|
|
94
|
+
return {
|
|
95
|
+
tableId: r,
|
|
96
|
+
name: u.__table__ ?? s(r),
|
|
97
|
+
fields: m,
|
|
98
|
+
views: []
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
function g(n, r, e) {
|
|
102
|
+
const t = {
|
|
103
|
+
id: n.column_name,
|
|
104
|
+
name: e[n.column_name] ?? s(n.column_name),
|
|
105
|
+
required: n.is_nullable === "NO"
|
|
106
|
+
};
|
|
107
|
+
switch (r) {
|
|
108
|
+
case "number":
|
|
109
|
+
return { ...t, type: "number" };
|
|
110
|
+
case "currency":
|
|
111
|
+
return { ...t, type: "currency", currencyCode: "CNY", precision: 2 };
|
|
112
|
+
case "progress":
|
|
113
|
+
return { ...t, type: "progress", min: 0, max: 100 };
|
|
114
|
+
case "rating":
|
|
115
|
+
return { ...t, type: "rating", max: 5 };
|
|
116
|
+
case "checkbox":
|
|
117
|
+
return { ...t, type: "checkbox" };
|
|
118
|
+
case "date":
|
|
119
|
+
return { ...t, type: "date" };
|
|
120
|
+
case "datetime":
|
|
121
|
+
return { ...t, type: "datetime" };
|
|
122
|
+
case "richtext":
|
|
123
|
+
return { ...t, type: "richtext" };
|
|
124
|
+
case "url":
|
|
125
|
+
return { ...t, type: "url" };
|
|
126
|
+
case "email":
|
|
127
|
+
return { ...t, type: "email" };
|
|
128
|
+
case "phone":
|
|
129
|
+
return { ...t, type: "phone" };
|
|
130
|
+
case "creator":
|
|
131
|
+
return { ...t, type: "creator" };
|
|
132
|
+
case "auto_number":
|
|
133
|
+
return { ...t, type: "auto_number", prefix: "" };
|
|
134
|
+
case "select":
|
|
135
|
+
case "multi_select":
|
|
136
|
+
return { ...t, type: r, options: [] };
|
|
137
|
+
case "relation":
|
|
138
|
+
return { ...t, type: "relation" };
|
|
139
|
+
case "attachment":
|
|
140
|
+
return { ...t, type: "attachment" };
|
|
141
|
+
default:
|
|
142
|
+
return { ...t, type: "text" };
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
async function w(n, r, e) {
|
|
146
|
+
if (n.rpc)
|
|
147
|
+
try {
|
|
148
|
+
const { data: t, error: i } = await n.rpc("get_table_columns", {
|
|
149
|
+
p_table_name: r
|
|
150
|
+
});
|
|
151
|
+
if (!i && Array.isArray(t) && t.length > 0)
|
|
152
|
+
return p({
|
|
153
|
+
tableName: r,
|
|
154
|
+
columns: t,
|
|
155
|
+
...e
|
|
156
|
+
});
|
|
157
|
+
} catch {
|
|
158
|
+
}
|
|
159
|
+
try {
|
|
160
|
+
const { data: t, error: i } = await n.from("information_schema.columns").select(
|
|
161
|
+
"column_name, data_type, udt_name, is_nullable, column_default, character_maximum_length, is_identity, identity_generation"
|
|
162
|
+
).eq("table_schema", "public").eq("table_name", r);
|
|
163
|
+
if (!i && t && t.length > 0)
|
|
164
|
+
return p({
|
|
165
|
+
tableName: r,
|
|
166
|
+
columns: t,
|
|
167
|
+
...e
|
|
168
|
+
});
|
|
169
|
+
} catch {
|
|
170
|
+
}
|
|
171
|
+
try {
|
|
172
|
+
const { data: t, error: i } = await n.from(r).select("*").limit(1);
|
|
173
|
+
if (!i && Array.isArray(t) && t.length > 0) {
|
|
174
|
+
const u = t[0], d = Object.entries(u).map(([_, c]) => ({
|
|
175
|
+
column_name: _,
|
|
176
|
+
data_type: y(c),
|
|
177
|
+
udt_name: y(c),
|
|
178
|
+
is_nullable: "YES",
|
|
179
|
+
column_default: null,
|
|
180
|
+
character_maximum_length: null,
|
|
181
|
+
is_identity: "NO",
|
|
182
|
+
identity_generation: null
|
|
183
|
+
}));
|
|
184
|
+
return p({ tableName: r, columns: d, ...e });
|
|
185
|
+
}
|
|
186
|
+
} catch {
|
|
187
|
+
}
|
|
188
|
+
throw new Error(
|
|
189
|
+
`Failed to fetch schema for "${r}". Create the get_table_columns() RPC function or provide schema manually via inferSchema().`
|
|
190
|
+
);
|
|
191
|
+
}
|
|
192
|
+
function y(n) {
|
|
193
|
+
return n == null ? "text" : typeof n == "boolean" ? "bool" : typeof n == "number" ? Number.isInteger(n) ? "int4" : "float8" : typeof n == "string" ? /^\d{4}-\d{2}-\d{2}T/.test(n) ? "timestamptz" : /^\d{4}-\d{2}-\d{2}$/.test(n) ? "date" : "text" : Array.isArray(n) ? "_text" : typeof n == "object" ? "jsonb" : "text";
|
|
194
|
+
}
|
|
195
|
+
function s(n) {
|
|
196
|
+
return n.replace(/_/g, " ").replace(/\b\w/g, (r) => r.toUpperCase()).trim();
|
|
197
|
+
}
|
|
198
|
+
export {
|
|
199
|
+
w as fetchSchemaFromSupabase,
|
|
200
|
+
s as humanizeColumnName,
|
|
201
|
+
p as inferSchema
|
|
202
|
+
};
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Web Worker for offloading sort/filter operations on large datasets.
|
|
3
|
+
* Activated when data.length > 5000 to avoid serialization overhead on small sets.
|
|
4
|
+
*/
|
|
5
|
+
export type WorkerRequest = {
|
|
6
|
+
type: "sort";
|
|
7
|
+
data: Record<string, unknown>[];
|
|
8
|
+
field: string;
|
|
9
|
+
order: "asc" | "desc";
|
|
10
|
+
} | {
|
|
11
|
+
type: "filter";
|
|
12
|
+
data: Record<string, unknown>[];
|
|
13
|
+
conditions: FilterConditionMsg[];
|
|
14
|
+
logic: "and" | "or";
|
|
15
|
+
};
|
|
16
|
+
export type WorkerResponse = {
|
|
17
|
+
type: "sort-result";
|
|
18
|
+
data: Record<string, unknown>[];
|
|
19
|
+
} | {
|
|
20
|
+
type: "filter-result";
|
|
21
|
+
data: Record<string, unknown>[];
|
|
22
|
+
} | {
|
|
23
|
+
type: "error";
|
|
24
|
+
message: string;
|
|
25
|
+
};
|
|
26
|
+
interface FilterConditionMsg {
|
|
27
|
+
field: string;
|
|
28
|
+
operator: string;
|
|
29
|
+
value: string;
|
|
30
|
+
}
|
|
31
|
+
export {};
|
package/package.json
CHANGED
|
@@ -1,19 +1,26 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@oneflowui/ui",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.4",
|
|
4
4
|
"description": "OneFlow UI Component Library - Vue3 components for task management views",
|
|
5
5
|
"type": "module",
|
|
6
|
-
"main": "./dist/
|
|
7
|
-
"module": "./dist/
|
|
6
|
+
"main": "./dist/index.js",
|
|
7
|
+
"module": "./dist/index.js",
|
|
8
8
|
"types": "./dist/index.d.ts",
|
|
9
9
|
"exports": {
|
|
10
10
|
".": {
|
|
11
11
|
"types": "./dist/index.d.ts",
|
|
12
|
-
"import": "./dist/
|
|
13
|
-
"require": "./dist/oneflow-ui.umd.cjs"
|
|
12
|
+
"import": "./dist/index.js"
|
|
14
13
|
},
|
|
15
|
-
"./styles": "./dist/style.css"
|
|
14
|
+
"./styles": "./dist/style.css",
|
|
15
|
+
"./*": {
|
|
16
|
+
"types": "./dist/*.d.ts",
|
|
17
|
+
"import": "./dist/*.js"
|
|
18
|
+
}
|
|
16
19
|
},
|
|
20
|
+
"sideEffects": [
|
|
21
|
+
"*.css",
|
|
22
|
+
"*.vue"
|
|
23
|
+
],
|
|
17
24
|
"files": [
|
|
18
25
|
"dist"
|
|
19
26
|
],
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { defineComponent as f, ref as u, onMounted as m, nextTick as s, withDirectives as d, openBlock as v, createElementBlock as y, vModelText as _ } from "vue";
|
|
2
|
-
import { _ as k } from "./index-DQph5iTq.js";
|
|
3
|
-
const x = /* @__PURE__ */ f({
|
|
4
|
-
__name: "FieldDate",
|
|
5
|
-
props: {
|
|
6
|
-
value: { type: [String, Number, Boolean, Array, null] },
|
|
7
|
-
field: {}
|
|
8
|
-
},
|
|
9
|
-
emits: ["commit", "cancel", "tabNext"],
|
|
10
|
-
setup(i, { emit: r }) {
|
|
11
|
-
const c = i, t = r, o = u(null), n = u(String(c.value ?? ""));
|
|
12
|
-
m(() => s(() => {
|
|
13
|
-
var e;
|
|
14
|
-
return (e = o.value) == null ? void 0 : e.focus();
|
|
15
|
-
}));
|
|
16
|
-
function p(e) {
|
|
17
|
-
e.key === "Enter" && (e.preventDefault(), t("commit", n.value || null)), e.key === "Escape" && (e.preventDefault(), t("cancel")), e.key === "Tab" && (e.preventDefault(), t("commit", n.value || null), t("tabNext"));
|
|
18
|
-
}
|
|
19
|
-
return (e, l) => d((v(), y("input", {
|
|
20
|
-
ref_key: "inputRef",
|
|
21
|
-
ref: o,
|
|
22
|
-
"onUpdate:modelValue": l[0] || (l[0] = (a) => n.value = a),
|
|
23
|
-
class: "of-field-input",
|
|
24
|
-
type: "date",
|
|
25
|
-
onKeydown: p,
|
|
26
|
-
onBlur: l[1] || (l[1] = (a) => t("commit", n.value || null))
|
|
27
|
-
}, null, 544)), [
|
|
28
|
-
[_, n.value]
|
|
29
|
-
]);
|
|
30
|
-
}
|
|
31
|
-
}), B = /* @__PURE__ */ k(x, [["__scopeId", "data-v-e0c4ed7c"]]);
|
|
32
|
-
export {
|
|
33
|
-
B as default
|
|
34
|
-
};
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { defineComponent as v, ref as _, openBlock as o, createElementBlock as r, withKeys as x, Fragment as g, renderList as k, unref as c, withModifiers as y, normalizeClass as b } from "vue";
|
|
2
|
-
import { _ as C } from "./index-DQph5iTq.js";
|
|
3
|
-
const M = ["onMouseenter", "onClick"], $ = /* @__PURE__ */ v({
|
|
4
|
-
__name: "FieldRating",
|
|
5
|
-
props: {
|
|
6
|
-
value: { type: [String, Number, Boolean, Array, null] },
|
|
7
|
-
field: {}
|
|
8
|
-
},
|
|
9
|
-
emits: ["commit", "cancel", "tabNext"],
|
|
10
|
-
setup(u, { emit: m }) {
|
|
11
|
-
const s = u, a = m, n = _(0), d = s.field.max ?? 5, f = Number(s.value ?? 0);
|
|
12
|
-
function p(i) {
|
|
13
|
-
a("commit", i);
|
|
14
|
-
}
|
|
15
|
-
return (i, t) => (o(), r("div", {
|
|
16
|
-
class: "of-field-rating",
|
|
17
|
-
onKeydown: t[1] || (t[1] = x((e) => a("cancel"), ["escape"])),
|
|
18
|
-
tabindex: "0"
|
|
19
|
-
}, [
|
|
20
|
-
(o(!0), r(g, null, k(c(d), (e) => (o(), r("span", {
|
|
21
|
-
key: e,
|
|
22
|
-
class: b(["of-field-rating__star", { filled: e <= (n.value || c(f)) }]),
|
|
23
|
-
onMouseenter: (l) => n.value = e,
|
|
24
|
-
onMouseleave: t[0] || (t[0] = (l) => n.value = 0),
|
|
25
|
-
onClick: y((l) => p(e), ["stop"])
|
|
26
|
-
}, "★", 42, M))), 128))
|
|
27
|
-
], 32));
|
|
28
|
-
}
|
|
29
|
-
}), F = /* @__PURE__ */ C($, [["__scopeId", "data-v-58a68101"]]);
|
|
30
|
-
export {
|
|
31
|
-
F as default
|
|
32
|
-
};
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { defineComponent as f, ref as i, onMounted as m, nextTick as s, withDirectives as d, openBlock as v, createElementBlock as y, vModelText as _ } from "vue";
|
|
2
|
-
import { _ as k } from "./index-DQph5iTq.js";
|
|
3
|
-
const x = /* @__PURE__ */ f({
|
|
4
|
-
__name: "FieldUrl",
|
|
5
|
-
props: {
|
|
6
|
-
value: { type: [String, Number, Boolean, Array, null] },
|
|
7
|
-
field: {}
|
|
8
|
-
},
|
|
9
|
-
emits: ["commit", "cancel", "tabNext"],
|
|
10
|
-
setup(u, { emit: a }) {
|
|
11
|
-
const p = u, t = a, o = i(null), n = i(String(p.value ?? ""));
|
|
12
|
-
m(() => s(() => {
|
|
13
|
-
var e;
|
|
14
|
-
return (e = o.value) == null ? void 0 : e.focus();
|
|
15
|
-
}));
|
|
16
|
-
function c(e) {
|
|
17
|
-
e.key === "Enter" && (e.preventDefault(), t("commit", n.value)), e.key === "Escape" && (e.preventDefault(), t("cancel")), e.key === "Tab" && (e.preventDefault(), t("commit", n.value), t("tabNext"));
|
|
18
|
-
}
|
|
19
|
-
return (e, l) => d((v(), y("input", {
|
|
20
|
-
ref_key: "inputRef",
|
|
21
|
-
ref: o,
|
|
22
|
-
class: "of-field-input",
|
|
23
|
-
type: "url",
|
|
24
|
-
"onUpdate:modelValue": l[0] || (l[0] = (r) => n.value = r),
|
|
25
|
-
onKeydown: c,
|
|
26
|
-
onBlur: l[1] || (l[1] = (r) => t("commit", n.value))
|
|
27
|
-
}, null, 544)), [
|
|
28
|
-
[_, n.value]
|
|
29
|
-
]);
|
|
30
|
-
}
|
|
31
|
-
}), D = /* @__PURE__ */ k(x, [["__scopeId", "data-v-8d4527db"]]);
|
|
32
|
-
export {
|
|
33
|
-
D as default
|
|
34
|
-
};
|