@oneflowui/ui 0.5.7 → 0.5.9

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.
Files changed (34) hide show
  1. package/README.md +11 -0
  2. package/dist/components/ContextMenu/index.vue.js +2 -2
  3. package/dist/components/Dashboard/index.vue.d.ts +1 -1
  4. package/dist/components/Dashboard/index.vue.js +3 -3
  5. package/dist/components/database/DatabaseView.vue.d.ts +6 -1
  6. package/dist/components/database/DatabaseView.vue.js +2 -2
  7. package/dist/components/database/DatabaseView.vue2.js +438 -293
  8. package/dist/components/overlay/Drawer.vue.d.ts +1 -1
  9. package/dist/components/overlay/Modal.vue.d.ts +1 -1
  10. package/dist/components/table/ColumnHeaderMenu.vue.d.ts +2 -2
  11. package/dist/components/table/DataTable.vue.d.ts +3 -1
  12. package/dist/components/table/DataTable.vue.js +2 -2
  13. package/dist/components/table/DataTable.vue2.js +598 -526
  14. package/dist/components/table/DetailSheet.vue.d.ts +2 -0
  15. package/dist/components/table/DetailSheet.vue.js +2 -2
  16. package/dist/components/table/DetailSheet.vue2.js +155 -76
  17. package/dist/components/table/TableDataRow.vue.d.ts +3 -1
  18. package/dist/components/table/TableDataRow.vue.js +3 -3
  19. package/dist/components/table/TableDataRow.vue2.js +95 -68
  20. package/dist/components/table/TableHeaderRow.vue.d.ts +3 -1
  21. package/dist/components/table/TableHeaderRow.vue.js +3 -3
  22. package/dist/components/table/TableHeaderRow.vue2.js +96 -60
  23. package/dist/composables/useColumnResize.d.ts +4 -1
  24. package/dist/composables/useColumnResize.js +114 -45
  25. package/dist/composables/useRowDrag.d.ts +1 -1
  26. package/dist/composables/useVirtualList.d.ts +1 -0
  27. package/dist/composables/useVirtualList.js +89 -77
  28. package/dist/plugin.js +240 -171
  29. package/dist/style.css +1 -1
  30. package/dist/types/index.d.ts +2 -1
  31. package/dist/utils/icon.js +25 -68
  32. package/dist/utils/iconRegistry.d.ts +7 -0
  33. package/dist/utils/iconRegistry.js +60 -0
  34. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- export type Density = "comfortable" | "compact";
1
+ export type Density = "compact" | "standard" | "comfortable";
2
2
  export type Priority = string;
3
3
  export type TaskStatus = string;
4
4
  export type ViewType = "table" | "kanban" | "gallery" | "timeline" | "detail";
@@ -61,6 +61,7 @@ export interface DataTableProps {
61
61
  schema?: TableSchema;
62
62
  view?: ViewConfig;
63
63
  columns?: TableColumn[];
64
+ density?: Density;
64
65
  rowKey?: string;
65
66
  selectable?: boolean;
66
67
  addable?: boolean;
@@ -1,76 +1,33 @@
1
- import { defineAsyncComponent as c } from "vue";
2
- const r = /* @__PURE__ */ new Map(), e = {
3
- ActivityIcon: () => import("lucide-vue-next/dist/esm/icons/activity.js"),
4
- AlertCircleIcon: () => import("lucide-vue-next/dist/esm/icons/circle-alert.js"),
5
- AlertTriangleIcon: () => import("lucide-vue-next/dist/esm/icons/triangle-alert.js"),
6
- ArrowUpDownIcon: () => import("lucide-vue-next/dist/esm/icons/arrow-up-down.js"),
7
- BarChart3Icon: () => import("lucide-vue-next/dist/esm/icons/bar-chart-3.js"),
8
- BeakerIcon: () => import("lucide-vue-next/dist/esm/icons/beaker.js"),
9
- BellIcon: () => import("lucide-vue-next/dist/esm/icons/bell.js"),
10
- BookOpenIcon: () => import("lucide-vue-next/dist/esm/icons/book-open.js"),
11
- BotIcon: () => import("lucide-vue-next/dist/esm/icons/bot.js"),
12
- BugIcon: () => import("lucide-vue-next/dist/esm/icons/bug.js"),
13
- CalendarIcon: () => import("lucide-vue-next/dist/esm/icons/calendar.js"),
14
- CheckCircleIcon: () => import("lucide-vue-next/dist/esm/icons/circle-check.js"),
15
- ChevronDownIcon: () => import("lucide-vue-next/dist/esm/icons/chevron-down.js"),
16
- ClockIcon: () => import("lucide-vue-next/dist/esm/icons/clock.js"),
17
- Columns3Icon: () => import("lucide-vue-next/dist/esm/icons/columns-3.js"),
18
- DatabaseIcon: () => import("lucide-vue-next/dist/esm/icons/database.js"),
19
- EditIcon: () => import("lucide-vue-next/dist/esm/icons/pencil.js"),
20
- EyeIcon: () => import("lucide-vue-next/dist/esm/icons/eye.js"),
21
- FileTextIcon: () => import("lucide-vue-next/dist/esm/icons/file-text.js"),
22
- FlagIcon: () => import("lucide-vue-next/dist/esm/icons/flag.js"),
23
- GanttChartIcon: () => import("lucide-vue-next/dist/esm/icons/gantt-chart.js"),
24
- GitBranchIcon: () => import("lucide-vue-next/dist/esm/icons/git-branch.js"),
25
- GroupIcon: () => import("lucide-vue-next/dist/esm/icons/group.js"),
26
- HistoryIcon: () => import("lucide-vue-next/dist/esm/icons/history.js"),
27
- HomeIcon: () => import("lucide-vue-next/dist/esm/icons/house.js"),
28
- ImageIcon: () => import("lucide-vue-next/dist/esm/icons/image.js"),
29
- InboxIcon: () => import("lucide-vue-next/dist/esm/icons/inbox.js"),
30
- KanbanIcon: () => import("lucide-vue-next/dist/esm/icons/kanban.js"),
31
- LayersIcon: () => import("lucide-vue-next/dist/esm/icons/layers.js"),
32
- LayoutDashboardIcon: () => import("lucide-vue-next/dist/esm/icons/layout-dashboard.js"),
33
- LayoutGridIcon: () => import("lucide-vue-next/dist/esm/icons/layout-grid.js"),
34
- LinkIcon: () => import("lucide-vue-next/dist/esm/icons/link.js"),
35
- ListChecksIcon: () => import("lucide-vue-next/dist/esm/icons/list-checks.js"),
36
- ListFilterIcon: () => import("lucide-vue-next/dist/esm/icons/list-filter.js"),
37
- ListIcon: () => import("lucide-vue-next/dist/esm/icons/list.js"),
38
- Maximize2Icon: () => import("lucide-vue-next/dist/esm/icons/maximize-2.js"),
39
- MaximizeIcon: () => import("lucide-vue-next/dist/esm/icons/maximize.js"),
40
- MessageSquareIcon: () => import("lucide-vue-next/dist/esm/icons/message-square.js"),
41
- PackageIcon: () => import("lucide-vue-next/dist/esm/icons/package.js"),
42
- PanelRightIcon: () => import("lucide-vue-next/dist/esm/icons/panel-right.js"),
43
- PinIcon: () => import("lucide-vue-next/dist/esm/icons/pin.js"),
44
- PlusIcon: () => import("lucide-vue-next/dist/esm/icons/plus.js"),
45
- SearchIcon: () => import("lucide-vue-next/dist/esm/icons/search.js"),
46
- SettingsIcon: () => import("lucide-vue-next/dist/esm/icons/settings.js"),
47
- StickyNoteIcon: () => import("lucide-vue-next/dist/esm/icons/sticky-note.js"),
48
- Table2Icon: () => import("lucide-vue-next/dist/esm/icons/table-2.js"),
49
- TargetIcon: () => import("lucide-vue-next/dist/esm/icons/target.js"),
50
- Trash2Icon: () => import("lucide-vue-next/dist/esm/icons/trash-2.js"),
51
- UserIcon: () => import("lucide-vue-next/dist/esm/icons/user.js"),
52
- UsersIcon: () => import("lucide-vue-next/dist/esm/icons/users.js"),
53
- ZapIcon: () => import("lucide-vue-next/dist/esm/icons/zap.js")
54
- };
55
- function p(o) {
56
- return o.split("-").map((t) => t.charAt(0).toUpperCase() + t.slice(1)).join("") + "Icon";
1
+ import { defineAsyncComponent as s } from "vue";
2
+ const n = /* @__PURE__ */ new Map();
3
+ let o = null;
4
+ function i(t) {
5
+ return t.split("-").map((r) => r.charAt(0).toUpperCase() + r.slice(1)).join("") + "Icon";
6
+ }
7
+ function c(t) {
8
+ return t ? t.endsWith("Icon") ? t : t.includes("-") ? i(t) : `${t.charAt(0).toUpperCase()}${t.slice(1)}Icon` : "";
57
9
  }
58
- function I(o) {
59
- return o ? o.endsWith("Icon") ? o : o.includes("-") ? p(o) : `${o.charAt(0).toUpperCase()}${o.slice(1)}Icon` : "";
10
+ function u() {
11
+ return o ?? (o = import("./iconRegistry.js")), o;
60
12
  }
61
- function m(o) {
62
- return c({
63
- loader: o,
13
+ function f(t) {
14
+ return s({
15
+ loader: async () => {
16
+ const { getIconLoader: r } = await u(), e = r(t);
17
+ if (!e)
18
+ throw new Error(`Unknown icon loader: ${t}`);
19
+ return (await e()).default;
20
+ },
64
21
  suspensible: !1
65
22
  });
66
23
  }
67
- function a(o) {
68
- if (!o) return;
69
- if (typeof o != "string") return o;
70
- if (r.has(o)) return r.get(o);
71
- const t = I(o), n = e[t], i = n ? m(n) : void 0;
72
- return r.set(o, i), i;
24
+ function d(t) {
25
+ if (!t) return;
26
+ if (typeof t != "string") return t;
27
+ if (n.has(t)) return n.get(t);
28
+ const r = c(t), e = r ? f(r) : void 0;
29
+ return n.set(t, e), e;
73
30
  }
74
31
  export {
75
- a as resolveIcon
32
+ d as resolveIcon
76
33
  };
@@ -0,0 +1,7 @@
1
+ import { Component } from 'vue';
2
+ type IconLoader = () => Promise<{
3
+ default: Component;
4
+ }>;
5
+ export declare const iconLoaders: Record<string, IconLoader>;
6
+ export declare function getIconLoader(name: string): IconLoader | undefined;
7
+ export {};
@@ -0,0 +1,60 @@
1
+ const r = {
2
+ ActivityIcon: () => import("lucide-vue-next/dist/esm/icons/activity.js"),
3
+ AlertCircleIcon: () => import("lucide-vue-next/dist/esm/icons/circle-alert.js"),
4
+ AlertTriangleIcon: () => import("lucide-vue-next/dist/esm/icons/triangle-alert.js"),
5
+ ArrowUpDownIcon: () => import("lucide-vue-next/dist/esm/icons/arrow-up-down.js"),
6
+ BarChart3Icon: () => import("lucide-vue-next/dist/esm/icons/bar-chart-3.js"),
7
+ BeakerIcon: () => import("lucide-vue-next/dist/esm/icons/beaker.js"),
8
+ BellIcon: () => import("lucide-vue-next/dist/esm/icons/bell.js"),
9
+ BookOpenIcon: () => import("lucide-vue-next/dist/esm/icons/book-open.js"),
10
+ BotIcon: () => import("lucide-vue-next/dist/esm/icons/bot.js"),
11
+ BugIcon: () => import("lucide-vue-next/dist/esm/icons/bug.js"),
12
+ CalendarIcon: () => import("lucide-vue-next/dist/esm/icons/calendar.js"),
13
+ CheckCircleIcon: () => import("lucide-vue-next/dist/esm/icons/circle-check.js"),
14
+ ChevronDownIcon: () => import("lucide-vue-next/dist/esm/icons/chevron-down.js"),
15
+ ClockIcon: () => import("lucide-vue-next/dist/esm/icons/clock.js"),
16
+ Columns3Icon: () => import("lucide-vue-next/dist/esm/icons/columns-3.js"),
17
+ DatabaseIcon: () => import("lucide-vue-next/dist/esm/icons/database.js"),
18
+ EditIcon: () => import("lucide-vue-next/dist/esm/icons/pencil.js"),
19
+ EyeIcon: () => import("lucide-vue-next/dist/esm/icons/eye.js"),
20
+ FileTextIcon: () => import("lucide-vue-next/dist/esm/icons/file-text.js"),
21
+ FlagIcon: () => import("lucide-vue-next/dist/esm/icons/flag.js"),
22
+ GanttChartIcon: () => import("lucide-vue-next/dist/esm/icons/gantt-chart.js"),
23
+ GitBranchIcon: () => import("lucide-vue-next/dist/esm/icons/git-branch.js"),
24
+ GroupIcon: () => import("lucide-vue-next/dist/esm/icons/group.js"),
25
+ HistoryIcon: () => import("lucide-vue-next/dist/esm/icons/history.js"),
26
+ HomeIcon: () => import("lucide-vue-next/dist/esm/icons/house.js"),
27
+ ImageIcon: () => import("lucide-vue-next/dist/esm/icons/image.js"),
28
+ InboxIcon: () => import("lucide-vue-next/dist/esm/icons/inbox.js"),
29
+ KanbanIcon: () => import("lucide-vue-next/dist/esm/icons/kanban.js"),
30
+ LayersIcon: () => import("lucide-vue-next/dist/esm/icons/layers.js"),
31
+ LayoutDashboardIcon: () => import("lucide-vue-next/dist/esm/icons/layout-dashboard.js"),
32
+ LayoutGridIcon: () => import("lucide-vue-next/dist/esm/icons/layout-grid.js"),
33
+ LinkIcon: () => import("lucide-vue-next/dist/esm/icons/link.js"),
34
+ ListChecksIcon: () => import("lucide-vue-next/dist/esm/icons/list-checks.js"),
35
+ ListFilterIcon: () => import("lucide-vue-next/dist/esm/icons/list-filter.js"),
36
+ ListIcon: () => import("lucide-vue-next/dist/esm/icons/list.js"),
37
+ Maximize2Icon: () => import("lucide-vue-next/dist/esm/icons/maximize-2.js"),
38
+ MaximizeIcon: () => import("lucide-vue-next/dist/esm/icons/maximize.js"),
39
+ MessageSquareIcon: () => import("lucide-vue-next/dist/esm/icons/message-square.js"),
40
+ PackageIcon: () => import("lucide-vue-next/dist/esm/icons/package.js"),
41
+ PanelRightIcon: () => import("lucide-vue-next/dist/esm/icons/panel-right.js"),
42
+ PinIcon: () => import("lucide-vue-next/dist/esm/icons/pin.js"),
43
+ PlusIcon: () => import("lucide-vue-next/dist/esm/icons/plus.js"),
44
+ SearchIcon: () => import("lucide-vue-next/dist/esm/icons/search.js"),
45
+ SettingsIcon: () => import("lucide-vue-next/dist/esm/icons/settings.js"),
46
+ StickyNoteIcon: () => import("lucide-vue-next/dist/esm/icons/sticky-note.js"),
47
+ Table2Icon: () => import("lucide-vue-next/dist/esm/icons/table-2.js"),
48
+ TargetIcon: () => import("lucide-vue-next/dist/esm/icons/target.js"),
49
+ Trash2Icon: () => import("lucide-vue-next/dist/esm/icons/trash-2.js"),
50
+ UserIcon: () => import("lucide-vue-next/dist/esm/icons/user.js"),
51
+ UsersIcon: () => import("lucide-vue-next/dist/esm/icons/users.js"),
52
+ ZapIcon: () => import("lucide-vue-next/dist/esm/icons/zap.js")
53
+ };
54
+ function t(o) {
55
+ return r[o];
56
+ }
57
+ export {
58
+ t as getIconLoader,
59
+ r as iconLoaders
60
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oneflowui/ui",
3
- "version": "0.5.7",
3
+ "version": "0.5.9",
4
4
  "description": "OneFlow UI Component Library - Vue3 components for task management views",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",