vlite3 1.1.4 → 1.1.5

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 (84) hide show
  1. package/README.md +5 -0
  2. package/components/CategoryManager/CategoryManager.vue.js +1 -1
  3. package/components/Chart/BarChart.vue.d.ts +48 -0
  4. package/components/Chart/CircleChart.vue.d.ts +47 -0
  5. package/components/Chart/LineChart.vue.d.ts +55 -0
  6. package/components/Chart/PieChart.vue.d.ts +49 -0
  7. package/components/Chart/index.d.ts +5 -0
  8. package/components/Chart/types.d.ts +135 -0
  9. package/components/Chart/utils.d.ts +40 -0
  10. package/components/ColorPicker/ColorIro.vue3.js +2 -2
  11. package/components/ColorPicker/ColorPicker.vue.js +2 -2
  12. package/components/CommandPalette/CommandPaletteContent.vue2.js +1 -1
  13. package/components/CommandPalette/{CommandPaletteItem.vue2.js → CommandPaletteItem.vue.js} +1 -1
  14. package/components/Comment/CommentEditor.vue.d.ts +41 -0
  15. package/components/Comment/CommentEditor.vue.js +221 -0
  16. package/components/Comment/CommentEditor.vue2.js +4 -0
  17. package/components/Comment/CommentItem.vue.d.ts +70 -0
  18. package/components/Comment/CommentItem.vue.js +7 -0
  19. package/components/Comment/CommentItem.vue2.js +322 -0
  20. package/components/Comment/CommentThread.vue.d.ts +64 -0
  21. package/components/Comment/CommentThread.vue.js +185 -0
  22. package/components/Comment/CommentThread.vue2.js +4 -0
  23. package/components/Comment/index.d.ts +4 -0
  24. package/components/Comment/types.d.ts +34 -0
  25. package/components/DataTable/DataTable.vue.d.ts +2 -4
  26. package/components/DataTable/DataTable.vue.js +175 -226
  27. package/components/DataTable/DataTableHeader.vue.d.ts +2 -0
  28. package/components/DataTable/DataTableHeader.vue.js +24 -23
  29. package/components/DataTable/DataTableRow.vue.d.ts +2 -0
  30. package/components/DataTable/DataTableRow.vue.js +32 -31
  31. package/components/DataTable/types.d.ts +2 -9
  32. package/components/Dropdown/Dropdown.vue.d.ts +2 -0
  33. package/components/Dropdown/Dropdown.vue.js +60 -58
  34. package/components/Dropdown/DropdownTrigger.vue.d.ts +2 -0
  35. package/components/Dropdown/DropdownTrigger.vue.js +7 -6
  36. package/components/Empty/Empty.vue.js +7 -5
  37. package/components/Empty/index.d.ts +1 -1
  38. package/components/Empty/variants/Variant12.vue.d.ts +22 -0
  39. package/components/Empty/variants/Variant12.vue.js +35 -0
  40. package/components/Empty/variants/Variant12.vue2.js +4 -0
  41. package/components/Footer/Footer.vue.d.ts +3 -0
  42. package/components/Footer/Variant1.vue.d.ts +20 -0
  43. package/components/Footer/Variant2.vue.d.ts +20 -0
  44. package/components/Footer/Variant3.vue.d.ts +12 -0
  45. package/components/Footer/index.d.ts +2 -0
  46. package/components/Footer/types.d.ts +73 -0
  47. package/components/Form/CustomFields.vue.d.ts +2 -0
  48. package/components/Form/CustomFields.vue.js +2 -2
  49. package/components/Form/CustomFields.vue2.js +125 -122
  50. package/components/Form/FormField.vue.js +1 -1
  51. package/components/MultiSelect/MultiSelect.vue.d.ts +2 -0
  52. package/components/MultiSelect/MultiSelect.vue.js +95 -94
  53. package/components/NavbarCommandPalette.vue.js +1 -1
  54. package/components/NumberInput.vue.js +1 -1
  55. package/components/NumberInput.vue2.js +39 -38
  56. package/components/RichTextEditor/RichTextLinkPopover.vue.d.ts +26 -0
  57. package/components/RichTextEditor/RichTextReader.vue.d.ts +7 -0
  58. package/components/RichTextEditor/RichTextToolbar.vue.d.ts +24 -0
  59. package/components/RichTextEditor/composables/useRichTextImageUpload.d.ts +14 -0
  60. package/components/RichTextEditor/composables/useRichTextLinks.d.ts +32 -0
  61. package/components/RichTextEditor/index.d.ts +2 -0
  62. package/components/Screen/Screen.vue.js +45 -46
  63. package/components/Screen/ScreenFilter.vue.js +1 -1
  64. package/components/SidebarMenu/SidebarMenu.vue.d.ts +1 -1
  65. package/components/SidebarMenu/SidebarMenu.vue.js +192 -91
  66. package/components/SidebarMenu/SidebarMenu.vue3.js +5 -0
  67. package/components/SidebarMenu/SidebarMenuItem.vue.js +170 -157
  68. package/components/SidebarMenu/types.d.ts +12 -3
  69. package/components/{DataTable/DataTableToolbar.vue.d.ts → Splitter/Splitter.vue.d.ts} +18 -15
  70. package/components/Splitter/Splitter.vue.js +64 -0
  71. package/components/Splitter/Splitter.vue2.js +4 -0
  72. package/components/Splitter/index.d.ts +1 -0
  73. package/components/StatusChip/status-map.js +34 -2
  74. package/components/index.d.ts +4 -0
  75. package/core/config.d.ts +18 -0
  76. package/index.d.ts +2 -0
  77. package/index.js +316 -307
  78. package/package.json +1 -1
  79. package/style.css +42 -6
  80. package/types/config.type.d.ts +2 -0
  81. package/components/DataTable/DataTableToolbar.vue.js +0 -60
  82. package/components/DataTable/DataTableToolbar.vue2.js +0 -4
  83. package/components/SidebarMenu/SidebarMenu.vue2.js +0 -4
  84. /package/components/ColorPicker/{ColorIro.vue2.js → ColorIro.vue.js} +0 -0
@@ -0,0 +1,64 @@
1
+ import { CommentNode, CommentAuthor, CommentSubmitPayload } from './types';
2
+ export interface CommentThreadProps {
3
+ comments: CommentNode[];
4
+ /** Object of currently logged-in user — controls edit/delete visibility and shows avatar in input */
5
+ currentUser?: CommentAuthor | null;
6
+ threaded?: boolean;
7
+ allowDelete?: boolean;
8
+ allowEdit?: boolean;
9
+ allowReply?: boolean;
10
+ /** Admin override — show delete on all comments */
11
+ allowDeleteAll?: boolean;
12
+ /** Admin override — show edit on all comments */
13
+ allowEditAll?: boolean;
14
+ confirmDelete?: boolean;
15
+ /** Where to display the root input. Set to 'hidden' to disable. */
16
+ inputPosition?: 'top' | 'bottom' | 'hidden';
17
+ folderId?: string;
18
+ maxFileSize?: number;
19
+ allowFileUpload?: boolean;
20
+ class?: string;
21
+ emptyText?: string;
22
+ placeholder?: string;
23
+ replyPlaceholder?: string;
24
+ editPlaceholder?: string;
25
+ replyText?: string;
26
+ editedText?: string;
27
+ editingText?: string;
28
+ cancelText?: string;
29
+ cancelEditText?: string;
30
+ hasMore?: boolean;
31
+ loadingMore?: boolean;
32
+ loadMoreText?: string;
33
+ }
34
+ declare const _default: import('vue').DefineComponent<CommentThreadProps, {
35
+ clearActiveReply: () => void;
36
+ clearActiveEdit: () => void;
37
+ activeReplyId: import('vue').Ref<string | number, string | number>;
38
+ activeEditId: import('vue').Ref<string | number, string | number>;
39
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
40
+ delete: (id: string | number) => any;
41
+ add: (payload: CommentSubmitPayload) => any;
42
+ "load-more": () => any;
43
+ edit: (updatedComment: CommentNode) => any;
44
+ "load-more-replies": (commentId: string | number) => any;
45
+ }, string, import('vue').PublicProps, Readonly<CommentThreadProps> & Readonly<{
46
+ onDelete?: (id: string | number) => any;
47
+ onAdd?: (payload: CommentSubmitPayload) => any;
48
+ "onLoad-more"?: () => any;
49
+ onEdit?: (updatedComment: CommentNode) => any;
50
+ "onLoad-more-replies"?: (commentId: string | number) => any;
51
+ }>, {
52
+ class: string;
53
+ confirmDelete: boolean;
54
+ allowDeleteAll: boolean;
55
+ allowEditAll: boolean;
56
+ allowFileUpload: boolean;
57
+ currentUser: CommentAuthor | null;
58
+ threaded: boolean;
59
+ allowDelete: boolean;
60
+ allowEdit: boolean;
61
+ allowReply: boolean;
62
+ inputPosition: "top" | "bottom" | "hidden";
63
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
64
+ export default _default;
@@ -0,0 +1,185 @@
1
+ import { defineComponent as p, ref as v, computed as h, openBlock as a, createElementBlock as n, normalizeClass as C, createVNode as u, createCommentVNode as f, createElementVNode as F, toDisplayString as w, TransitionGroup as D, withCtx as T, Fragment as U, renderList as P, createBlock as A, createTextVNode as N } from "vue";
2
+ import { $t as g } from "../../utils/i18n.js";
3
+ import V from "./CommentItem.vue.js";
4
+ import E from "./CommentEditor.vue.js";
5
+ import $ from "../Button.vue.js";
6
+ const L = {
7
+ key: 0,
8
+ class: "mb-8"
9
+ }, j = {
10
+ key: 1,
11
+ class: "flex flex-col items-center justify-center p-8 text-center bg-muted/20 border border-border rounded-xl border-dashed"
12
+ }, O = { class: "text-sm text-muted-foreground" }, G = {
13
+ key: 2,
14
+ class: "flex flex-col w-full relative"
15
+ }, q = {
16
+ key: 0,
17
+ class: "mt-2 mb-4 w-full flex justify-center"
18
+ }, H = {
19
+ key: 3,
20
+ class: "mt-4"
21
+ }, Y = /* @__PURE__ */ p({
22
+ __name: "CommentThread",
23
+ props: {
24
+ comments: {},
25
+ currentUser: { default: null },
26
+ threaded: { type: Boolean, default: !0 },
27
+ allowDelete: { type: Boolean, default: !0 },
28
+ allowEdit: { type: Boolean, default: !0 },
29
+ allowReply: { type: Boolean, default: !0 },
30
+ allowDeleteAll: { type: Boolean, default: !1 },
31
+ allowEditAll: { type: Boolean, default: !1 },
32
+ confirmDelete: { type: Boolean, default: !0 },
33
+ inputPosition: { default: "top" },
34
+ folderId: {},
35
+ maxFileSize: {},
36
+ allowFileUpload: { type: Boolean, default: !0 },
37
+ class: { default: "" },
38
+ emptyText: {},
39
+ placeholder: {},
40
+ replyPlaceholder: {},
41
+ editPlaceholder: {},
42
+ replyText: {},
43
+ editedText: {},
44
+ editingText: {},
45
+ cancelText: {},
46
+ cancelEditText: {},
47
+ hasMore: { type: Boolean },
48
+ loadingMore: { type: Boolean },
49
+ loadMoreText: {}
50
+ },
51
+ emits: ["add", "edit", "delete", "load-more", "load-more-replies"],
52
+ setup(e, { expose: b, emit: B }) {
53
+ const c = e, r = B, o = v(null), d = v(null), S = h(() => {
54
+ if (c.emptyText) return c.emptyText;
55
+ const t = g("vlite.comment.empty");
56
+ return t !== "vlite.comment.empty" ? t : "No comments yet. Start the conversation!";
57
+ }), z = h(() => {
58
+ if (c.loadMoreText) return c.loadMoreText;
59
+ const t = g("vlite.comment.loadMore");
60
+ return t !== "vlite.comment.loadMore" ? t : "View more comments";
61
+ }), R = (t) => {
62
+ if (o.value === t.commentId) {
63
+ o.value = null;
64
+ return;
65
+ }
66
+ o.value = t.commentId, d.value = null;
67
+ }, I = (t) => {
68
+ if (d.value === t.commentId) {
69
+ d.value = null;
70
+ return;
71
+ }
72
+ d.value = t.commentId, o.value = null;
73
+ }, m = () => {
74
+ o.value = null;
75
+ }, s = () => {
76
+ d.value = null;
77
+ }, y = (t, l) => {
78
+ r("add", { text: t, attachments: l });
79
+ }, M = (t, l, i) => {
80
+ r("add", { text: t, attachments: l, parentId: i }), m();
81
+ }, k = (t, l, i) => {
82
+ r("edit", { ...i, text: t, isEdited: !0 }), s();
83
+ };
84
+ return b({
85
+ clearActiveReply: m,
86
+ clearActiveEdit: s,
87
+ activeReplyId: o,
88
+ activeEditId: d
89
+ }), (t, l) => (a(), n("div", {
90
+ class: C(["vl-comment-thread flex flex-col w-full", c.class])
91
+ }, [
92
+ e.inputPosition === "top" ? (a(), n("div", L, [
93
+ u(E, {
94
+ variant: "root",
95
+ "current-user": e.currentUser,
96
+ "folder-id": e.folderId,
97
+ "max-file-size": e.maxFileSize,
98
+ "allow-file-upload": e.allowFileUpload,
99
+ placeholder: e.placeholder,
100
+ "editing-text": e.editingText,
101
+ "cancel-edit-text": e.cancelEditText,
102
+ "cancel-text": e.cancelText,
103
+ onSubmit: y
104
+ }, null, 8, ["current-user", "folder-id", "max-file-size", "allow-file-upload", "placeholder", "editing-text", "cancel-edit-text", "cancel-text"])
105
+ ])) : f("", !0),
106
+ e.comments.length === 0 ? (a(), n("div", j, [
107
+ F("p", O, w(S.value), 1)
108
+ ])) : (a(), n("div", G, [
109
+ u(D, {
110
+ "enter-active-class": "transition-all duration-300 ease-out",
111
+ "enter-from-class": "opacity-0 translate-y-2",
112
+ "enter-to-class": "opacity-100 translate-y-0",
113
+ "leave-active-class": "transition-none"
114
+ }, {
115
+ default: T(() => [
116
+ (a(!0), n(U, null, P(e.comments, (i) => (a(), A(V, {
117
+ key: i.id,
118
+ comment: i,
119
+ "current-user": e.currentUser,
120
+ threaded: e.threaded,
121
+ "allow-delete": e.allowDelete,
122
+ "allow-edit": e.allowEdit,
123
+ "allow-reply": e.allowReply,
124
+ "allow-delete-all": e.allowDeleteAll,
125
+ "allow-edit-all": e.allowEditAll,
126
+ "confirm-delete": e.confirmDelete,
127
+ "active-reply-id": o.value,
128
+ "active-edit-id": d.value,
129
+ "folder-id": e.folderId,
130
+ "max-file-size": e.maxFileSize,
131
+ "allow-file-upload": e.allowFileUpload,
132
+ "reply-placeholder": e.replyPlaceholder,
133
+ "edit-placeholder": e.editPlaceholder,
134
+ "reply-text": e.replyText,
135
+ "edited-text": e.editedText,
136
+ "editing-text": e.editingText,
137
+ "cancel-text": e.cancelText,
138
+ "cancel-edit-text": e.cancelEditText,
139
+ onReply: R,
140
+ onEdit: I,
141
+ onDelete: l[0] || (l[0] = (x) => r("delete", x)),
142
+ onSubmitReply: M,
143
+ onSubmitEdit: k,
144
+ onCancelReply: m,
145
+ onCancelEdit: s,
146
+ onLoadMoreReplies: l[1] || (l[1] = (x) => r("load-more-replies", x))
147
+ }, null, 8, ["comment", "current-user", "threaded", "allow-delete", "allow-edit", "allow-reply", "allow-delete-all", "allow-edit-all", "confirm-delete", "active-reply-id", "active-edit-id", "folder-id", "max-file-size", "allow-file-upload", "reply-placeholder", "edit-placeholder", "reply-text", "edited-text", "editing-text", "cancel-text", "cancel-edit-text"]))), 128))
148
+ ]),
149
+ _: 1
150
+ }),
151
+ e.hasMore ? (a(), n("div", q, [
152
+ u($, {
153
+ variant: "ghost",
154
+ size: "sm",
155
+ loading: e.loadingMore,
156
+ onClick: l[2] || (l[2] = (i) => r("load-more")),
157
+ class: "text-sm text-foreground/80 hover:text-foreground font-medium px-3"
158
+ }, {
159
+ default: T(() => [
160
+ N(w(z.value), 1)
161
+ ]),
162
+ _: 1
163
+ }, 8, ["loading"])
164
+ ])) : f("", !0)
165
+ ])),
166
+ e.inputPosition === "bottom" ? (a(), n("div", H, [
167
+ u(E, {
168
+ variant: "root",
169
+ "current-user": e.currentUser,
170
+ "folder-id": e.folderId,
171
+ "max-file-size": e.maxFileSize,
172
+ "allow-file-upload": e.allowFileUpload,
173
+ placeholder: e.placeholder,
174
+ "editing-text": e.editingText,
175
+ "cancel-edit-text": e.cancelEditText,
176
+ "cancel-text": e.cancelText,
177
+ onSubmit: y
178
+ }, null, 8, ["current-user", "folder-id", "max-file-size", "allow-file-upload", "placeholder", "editing-text", "cancel-edit-text", "cancel-text"])
179
+ ])) : f("", !0)
180
+ ], 2));
181
+ }
182
+ });
183
+ export {
184
+ Y as default
185
+ };
@@ -0,0 +1,4 @@
1
+ import f from "./CommentThread.vue.js";
2
+ export {
3
+ f as default
4
+ };
@@ -0,0 +1,4 @@
1
+ export * from './types';
2
+ export { default as CommentItem } from './CommentItem.vue';
3
+ export { default as CommentThread } from './CommentThread.vue';
4
+ export { default as CommentEditor } from './CommentEditor.vue';
@@ -0,0 +1,34 @@
1
+ import { AttachmentItem } from '../AttachmentsList';
2
+ export interface CommentAuthor {
3
+ id: string | number;
4
+ name: string;
5
+ avatar?: string;
6
+ role?: string;
7
+ }
8
+ export interface CommentNode {
9
+ id: string | number;
10
+ text: string;
11
+ author: CommentAuthor;
12
+ timestamp?: string | number | Date;
13
+ isEdited?: boolean;
14
+ editedAt?: string | number | Date;
15
+ attachments?: AttachmentItem[];
16
+ replies?: CommentNode[];
17
+ /** Any custom metadata such as 'status' or logic blocks */
18
+ meta?: Record<string, any>;
19
+ /** Pagination: flag indicating there are more replies to load natively */
20
+ hasMoreReplies?: boolean;
21
+ /** Pagination: flag used by parents to set a loading spinner on the expando */
22
+ loadingMoreReplies?: boolean;
23
+ /** Pagination: absolute count of replies if needed for UI text e.g. "View 4 more replies" */
24
+ replyCount?: number;
25
+ }
26
+ export interface CommentActionPayload {
27
+ commentId: string | number;
28
+ comment: CommentNode;
29
+ }
30
+ export interface CommentSubmitPayload {
31
+ text: string;
32
+ attachments?: AttachmentItem[];
33
+ parentId?: string | number;
34
+ }
@@ -7,8 +7,6 @@ declare function __VLS_template(): {
7
7
  index: number;
8
8
  field: string;
9
9
  }) => any>> & {
10
- 'toolbar-left'?(_: {}): any;
11
- 'toolbar-right'?(_: {}): any;
12
10
  empty?(_: {}): any;
13
11
  'empty-action'?(_: {}): any;
14
12
  };
@@ -31,13 +29,12 @@ declare const __VLS_component: import('vue').DefineComponent<DataTableProps, {},
31
29
  onRowClick?: (payload: RowClickPayload) => any;
32
30
  "onUpdate:selectedRows"?: (value: any[]) => any;
33
31
  }>, {
34
- search: string;
35
32
  variant: "default" | "raised";
33
+ size: "xs" | "sm" | "md" | "lg";
36
34
  loading: boolean;
37
35
  striped: boolean;
38
36
  compact: boolean;
39
37
  rows: any[];
40
- showSearch: boolean;
41
38
  headers: TableHeader[];
42
39
  emptyIcon: string;
43
40
  paginationProps: import('./types').DataTablePaginationProps;
@@ -48,6 +45,7 @@ declare const __VLS_component: import('vue').DefineComponent<DataTableProps, {},
48
45
  hoverable: boolean;
49
46
  bordered: boolean;
50
47
  sortable: boolean;
48
+ headerVariant: "default" | "minimal";
51
49
  }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
52
50
  declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
53
51
  export default _default;