@bagelink/vue 0.0.714 → 0.0.724

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 (189) hide show
  1. package/dist/components/Btn.vue.d.ts +3 -3
  2. package/dist/components/Btn.vue.d.ts.map +1 -1
  3. package/dist/components/Carousel.vue.d.ts +1 -1
  4. package/dist/components/ComboBox.vue.d.ts +3 -3
  5. package/dist/components/Comments.vue.d.ts +2 -2
  6. package/dist/components/ContactSubmissions.vue.d.ts +2 -2
  7. package/dist/components/DropDown.vue.d.ts +3 -3
  8. package/dist/components/FormSchema.vue.d.ts +4 -5
  9. package/dist/components/LangText.vue.d.ts +2 -2
  10. package/dist/components/MaterialIcon.vue.d.ts +0 -1
  11. package/dist/components/MaterialIcon.vue.d.ts.map +1 -1
  12. package/dist/components/ModalBglForm.vue.d.ts +20 -21
  13. package/dist/components/PersonPreview.vue.d.ts +4 -5
  14. package/dist/components/PersonPreviewFormkit.vue.d.ts +3 -4
  15. package/dist/components/Popover.vue.d.ts +10 -0
  16. package/dist/components/Popover.vue.d.ts.map +1 -0
  17. package/dist/components/RTXEditor.vue.d.ts +3 -3
  18. package/dist/components/TabbedLayout.vue.d.ts +4 -5
  19. package/dist/components/charts/BarChart.vue.d.ts +2 -2
  20. package/dist/components/form/BglForm.vue.d.ts +1 -1
  21. package/dist/components/form/BglMultiStepForm.vue.d.ts +11 -11
  22. package/dist/components/form/ItemRef.vue.d.ts +3 -5
  23. package/dist/components/form/ItemRef.vue.d.ts.map +1 -1
  24. package/dist/components/form/MaterialIcon.vue.d.ts +3 -4
  25. package/dist/components/form/PlainInputField.vue.d.ts +3 -3
  26. package/dist/components/form/inputs/CurrencyInput.vue.d.ts +3 -3
  27. package/dist/components/form/inputs/DatetimeInput.vue.d.ts +3 -3
  28. package/dist/components/form/inputs/DurationInput.vue.d.ts +3 -3
  29. package/dist/components/form/inputs/DynamicLinkField.vue.d.ts +3 -3
  30. package/dist/components/form/inputs/EmailInput.vue.d.ts +3 -3
  31. package/dist/components/form/inputs/FloatInput.vue.d.ts +3 -3
  32. package/dist/components/form/inputs/IntInput.vue.d.ts +3 -3
  33. package/dist/components/form/inputs/JSONInput.vue.d.ts +1 -1
  34. package/dist/components/form/inputs/JSONInput.vue.d.ts.map +1 -1
  35. package/dist/components/form/inputs/LinkField.vue.d.ts +3 -3
  36. package/dist/components/form/inputs/Password.vue.d.ts +3 -3
  37. package/dist/components/form/inputs/PasswordInput.vue.d.ts +3 -3
  38. package/dist/components/form/inputs/PlainText.vue.d.ts +3 -3
  39. package/dist/components/form/inputs/RadioPillsInput.vue.d.ts +1 -1
  40. package/dist/components/form/inputs/RadioPillsInput.vue.d.ts.map +1 -1
  41. package/dist/components/form/inputs/ReadOnlyInput.vue.d.ts +2 -2
  42. package/dist/components/form/inputs/RichText2/Toolbar.vue.d.ts.map +1 -1
  43. package/dist/components/form/inputs/RichText2/index.vue.d.ts.map +1 -1
  44. package/dist/components/form/inputs/RichTextEditor.vue.d.ts +3 -3
  45. package/dist/components/form/inputs/SelectField.vue.d.ts +8 -6
  46. package/dist/components/form/inputs/SelectField.vue.d.ts.map +1 -1
  47. package/dist/components/form/inputs/SelectInput.vue.d.ts.map +1 -1
  48. package/dist/components/form/inputs/TelInput.vue.d.ts +5 -5
  49. package/dist/components/form/inputs/TelInput.vue.d.ts.map +1 -1
  50. package/dist/components/form/inputs/TextArea.vue.d.ts +3 -3
  51. package/dist/components/formkit/AddressArray.vue.d.ts +2 -2
  52. package/dist/components/formkit/BankDetailsArray.vue.d.ts +2 -2
  53. package/dist/components/formkit/ContactArrayFormKit.vue.d.ts +2 -2
  54. package/dist/components/formkit/FileUploader.vue.d.ts +2 -2
  55. package/dist/components/formkit/MiscFields.vue.d.ts +2 -2
  56. package/dist/components/formkit/Toggle.vue.d.ts +2 -2
  57. package/dist/components/lightbox/Lightbox.vue.d.ts +10 -0
  58. package/dist/components/lightbox/Lightbox.vue.d.ts.map +1 -0
  59. package/dist/components/lightbox/index.d.ts +6 -0
  60. package/dist/components/lightbox/index.d.ts.map +1 -0
  61. package/dist/components/lightbox/lightbox.types.d.ts +7 -0
  62. package/dist/components/lightbox/lightbox.types.d.ts.map +1 -0
  63. package/dist/components/whatsapp/form/MsgTemplate.vue.d.ts +3 -4
  64. package/dist/components/whatsapp/form/TextVariableExamples.vue.d.ts +2 -2
  65. package/dist/index.cjs +334 -141
  66. package/dist/index.mjs +335 -142
  67. package/dist/plugins/bagel.d.ts.map +1 -1
  68. package/dist/style.css +157 -49
  69. package/dist/types/materialIcon.d.ts +2 -0
  70. package/dist/types/materialIcon.d.ts.map +1 -0
  71. package/dist/utils/BagelFormUtils.d.ts +48 -48
  72. package/dist/utils/objects.d.ts +0 -1
  73. package/package.json +1 -1
  74. package/src/components/form/inputs/RichText2/FontWithASyntaxHighlighter-Regular.woff2 +0 -0
  75. package/src/components/form/inputs/RichText2/Toolbar.vue +39 -62
  76. package/src/components/form/inputs/RichText2/index.vue +54 -16
  77. package/src/components/form/inputs/SelectInput.vue +20 -9
  78. package/src/components/lightbox/Lightbox.vue +228 -0
  79. package/src/components/lightbox/index.ts +61 -0
  80. package/src/components/lightbox/lightbox.types.ts +6 -0
  81. package/src/plugins/bagel.ts +2 -2
  82. package/dist/components/Accordion.d.ts +0 -12
  83. package/dist/components/Accordion.d.ts.map +0 -1
  84. package/dist/components/AccordionItem.d.ts +0 -34
  85. package/dist/components/AccordionItem.d.ts.map +0 -1
  86. package/dist/components/Alert.d.ts +0 -34
  87. package/dist/components/Alert.d.ts.map +0 -1
  88. package/dist/components/Avatar.d.ts +0 -36
  89. package/dist/components/Avatar.d.ts.map +0 -1
  90. package/dist/components/Badge.d.ts +0 -22
  91. package/dist/components/Badge.d.ts.map +0 -1
  92. package/dist/components/BglVideo.d.ts +0 -20
  93. package/dist/components/BglVideo.d.ts.map +0 -1
  94. package/dist/components/Btn.d.ts +0 -99
  95. package/dist/components/Btn.d.ts.map +0 -1
  96. package/dist/components/Card.d.ts +0 -39
  97. package/dist/components/Card.d.ts.map +0 -1
  98. package/dist/components/Carousel.d.ts +0 -74
  99. package/dist/components/Carousel.d.ts.map +0 -1
  100. package/dist/components/DataPreview.d.ts +0 -42
  101. package/dist/components/DataPreview.d.ts.map +0 -1
  102. package/dist/components/Drop.vue.d.ts +0 -34
  103. package/dist/components/Drop.vue.d.ts.map +0 -1
  104. package/dist/components/FileUploader.vue.d.ts +0 -60
  105. package/dist/components/FileUploader.vue.d.ts.map +0 -1
  106. package/dist/components/Flag.d.ts +0 -20
  107. package/dist/components/Flag.d.ts.map +0 -1
  108. package/dist/components/ListItem.d.ts +0 -34
  109. package/dist/components/ListItem.d.ts.map +0 -1
  110. package/dist/components/ListView.d.ts +0 -13
  111. package/dist/components/ListView.d.ts.map +0 -1
  112. package/dist/components/MapEmbed.d.ts +0 -3
  113. package/dist/components/MapEmbed.d.ts.map +0 -1
  114. package/dist/components/MaterialIcon.d.ts +0 -26
  115. package/dist/components/MaterialIcon.d.ts.map +0 -1
  116. package/dist/components/Modal.d.ts +0 -46
  117. package/dist/components/Modal.d.ts.map +0 -1
  118. package/dist/components/ModalConfirm.d.ts +0 -24
  119. package/dist/components/ModalConfirm.d.ts.map +0 -1
  120. package/dist/components/ModalForm.d.ts +0 -78
  121. package/dist/components/ModalForm.d.ts.map +0 -1
  122. package/dist/components/NavBar.d.ts +0 -64
  123. package/dist/components/NavBar.d.ts.map +0 -1
  124. package/dist/components/PageTitle.d.ts +0 -24
  125. package/dist/components/PageTitle.d.ts.map +0 -1
  126. package/dist/components/RouterWrapper.d.ts +0 -3
  127. package/dist/components/RouterWrapper.d.ts.map +0 -1
  128. package/dist/components/TableSchema.d.ts +0 -35
  129. package/dist/components/TableSchema.d.ts.map +0 -1
  130. package/dist/components/Title.d.ts +0 -42
  131. package/dist/components/Title.d.ts.map +0 -1
  132. package/dist/components/TopBar.d.ts +0 -12
  133. package/dist/components/TopBar.d.ts.map +0 -1
  134. package/dist/components/dashboard/Lineart.d.ts +0 -20
  135. package/dist/components/dashboard/Lineart.d.ts.map +0 -1
  136. package/dist/components/form/BglField.d.ts +0 -25
  137. package/dist/components/form/BglField.d.ts.map +0 -1
  138. package/dist/components/form/BglForm.d.ts +0 -75
  139. package/dist/components/form/BglForm.d.ts.map +0 -1
  140. package/dist/components/form/inputs/CheckInput.d.ts +0 -56
  141. package/dist/components/form/inputs/CheckInput.d.ts.map +0 -1
  142. package/dist/components/form/inputs/Checkbox.d.ts +0 -16
  143. package/dist/components/form/inputs/Checkbox.d.ts.map +0 -1
  144. package/dist/components/form/inputs/ColorPicker.d.ts +0 -48
  145. package/dist/components/form/inputs/ColorPicker.d.ts.map +0 -1
  146. package/dist/components/form/inputs/DateInput.d.ts +0 -64
  147. package/dist/components/form/inputs/DateInput.d.ts.map +0 -1
  148. package/dist/components/form/inputs/DatePicker.d.ts +0 -33
  149. package/dist/components/form/inputs/DatePicker.d.ts.map +0 -1
  150. package/dist/components/form/inputs/FileUpload.d.ts +0 -108
  151. package/dist/components/form/inputs/FileUpload.d.ts.map +0 -1
  152. package/dist/components/form/inputs/JSONInput.d.ts +0 -53
  153. package/dist/components/form/inputs/JSONInput.d.ts.map +0 -1
  154. package/dist/components/form/inputs/RadioGroup.d.ts +0 -42
  155. package/dist/components/form/inputs/RadioGroup.d.ts.map +0 -1
  156. package/dist/components/form/inputs/RadioPillsInput.d.ts +0 -48
  157. package/dist/components/form/inputs/RadioPillsInput.d.ts.map +0 -1
  158. package/dist/components/form/inputs/RichText.d.ts +0 -20
  159. package/dist/components/form/inputs/RichText.d.ts.map +0 -1
  160. package/dist/components/form/inputs/RichText2/Toolbar.d.ts +0 -22
  161. package/dist/components/form/inputs/RichText2/Toolbar.d.ts.map +0 -1
  162. package/dist/components/form/inputs/RichText2/index.d.ts +0 -24
  163. package/dist/components/form/inputs/RichText2/index.d.ts.map +0 -1
  164. package/dist/components/form/inputs/SelectInput.d.ts +0 -55
  165. package/dist/components/form/inputs/SelectInput.d.ts.map +0 -1
  166. package/dist/components/form/inputs/SignaturePad.d.ts +0 -72
  167. package/dist/components/form/inputs/SignaturePad.d.ts.map +0 -1
  168. package/dist/components/form/inputs/TableField.d.ts +0 -45
  169. package/dist/components/form/inputs/TableField.d.ts.map +0 -1
  170. package/dist/components/form/inputs/TelInput.d.ts +0 -241
  171. package/dist/components/form/inputs/TelInput.d.ts.map +0 -1
  172. package/dist/components/form/inputs/TextInput.d.ts +0 -90
  173. package/dist/components/form/inputs/TextInput.d.ts.map +0 -1
  174. package/dist/components/form/inputs/ToggleInput.d.ts +0 -58
  175. package/dist/components/form/inputs/ToggleInput.d.ts.map +0 -1
  176. package/dist/components/layout/BottomMenu.d.ts +0 -27
  177. package/dist/components/layout/BottomMenu.d.ts.map +0 -1
  178. package/dist/components/layout/Layout.d.ts +0 -58
  179. package/dist/components/layout/Layout.d.ts.map +0 -1
  180. package/dist/components/layout/SidebarMenu.d.ts +0 -38
  181. package/dist/components/layout/SidebarMenu.d.ts.map +0 -1
  182. package/dist/components/layout/TabbedLayout.d.ts +0 -42
  183. package/dist/components/layout/TabbedLayout.d.ts.map +0 -1
  184. package/dist/components/layout/Tabs.d.ts +0 -31
  185. package/dist/components/layout/Tabs.d.ts.map +0 -1
  186. package/dist/components/layout/TabsBody.d.ts +0 -23
  187. package/dist/components/layout/TabsBody.d.ts.map +0 -1
  188. package/dist/components/layout/TabsNav.d.ts +0 -35
  189. package/dist/components/layout/TabsNav.d.ts.map +0 -1
@@ -50,10 +50,13 @@ export declare function bglForm(idOrField?: string | Field, ...schema: Field[]):
50
50
  type: import('vue').PropType<import('..').BglFormSchemaFnT<any>>;
51
51
  required: true;
52
52
  };
53
- id: {
53
+ label: {
54
54
  type: import('vue').PropType<string>;
55
55
  };
56
- label: {
56
+ onSubmit: {
57
+ type: import('vue').PropType<(data: any) => void>;
58
+ };
59
+ id: {
57
60
  type: import('vue').PropType<string>;
58
61
  };
59
62
  modelValue: {
@@ -63,15 +66,12 @@ export declare function bglForm(idOrField?: string | Field, ...schema: Field[]):
63
66
  onDelete: {
64
67
  type: import('vue').PropType<(id: string) => void>;
65
68
  };
66
- onSubmit: {
67
- type: import('vue').PropType<(data: any) => void>;
68
- };
69
69
  status: {
70
70
  type: import('vue').PropType<import('../components/form/BglForm.vue').FormStatus>;
71
71
  };
72
72
  }>> & {
73
- "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
74
73
  onSubmit?: ((...args: any[]) => any) | undefined;
74
+ "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
75
75
  onDirty?: ((...args: any[]) => any) | undefined;
76
76
  }, {
77
77
  submit: () => void;
@@ -88,10 +88,13 @@ export declare function bglForm(idOrField?: string | Field, ...schema: Field[]):
88
88
  type: import('vue').PropType<import('..').BglFormSchemaFnT<any>>;
89
89
  required: true;
90
90
  };
91
- id: {
91
+ label: {
92
92
  type: import('vue').PropType<string>;
93
93
  };
94
- label: {
94
+ onSubmit: {
95
+ type: import('vue').PropType<(data: any) => void>;
96
+ };
97
+ id: {
95
98
  type: import('vue').PropType<string>;
96
99
  };
97
100
  modelValue: {
@@ -101,15 +104,12 @@ export declare function bglForm(idOrField?: string | Field, ...schema: Field[]):
101
104
  onDelete: {
102
105
  type: import('vue').PropType<(id: string) => void>;
103
106
  };
104
- onSubmit: {
105
- type: import('vue').PropType<(data: any) => void>;
106
- };
107
107
  status: {
108
108
  type: import('vue').PropType<import('../components/form/BglForm.vue').FormStatus>;
109
109
  };
110
110
  }>> & {
111
- "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
112
111
  onSubmit?: ((...args: any[]) => any) | undefined;
112
+ "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
113
113
  onDirty?: ((...args: any[]) => any) | undefined;
114
114
  }, {
115
115
  modelValue: Record<string, any>;
@@ -125,10 +125,13 @@ export declare function bglForm(idOrField?: string | Field, ...schema: Field[]):
125
125
  type: import('vue').PropType<import('..').BglFormSchemaFnT<any>>;
126
126
  required: true;
127
127
  };
128
- id: {
128
+ label: {
129
129
  type: import('vue').PropType<string>;
130
130
  };
131
- label: {
131
+ onSubmit: {
132
+ type: import('vue').PropType<(data: any) => void>;
133
+ };
134
+ id: {
132
135
  type: import('vue').PropType<string>;
133
136
  };
134
137
  modelValue: {
@@ -138,15 +141,12 @@ export declare function bglForm(idOrField?: string | Field, ...schema: Field[]):
138
141
  onDelete: {
139
142
  type: import('vue').PropType<(id: string) => void>;
140
143
  };
141
- onSubmit: {
142
- type: import('vue').PropType<(data: any) => void>;
143
- };
144
144
  status: {
145
145
  type: import('vue').PropType<import('../components/form/BglForm.vue').FormStatus>;
146
146
  };
147
147
  }>> & {
148
- "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
149
148
  onSubmit?: ((...args: any[]) => any) | undefined;
149
+ "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
150
150
  onDirty?: ((...args: any[]) => any) | undefined;
151
151
  }, {
152
152
  submit: () => void;
@@ -165,10 +165,13 @@ export declare function bglForm(idOrField?: string | Field, ...schema: Field[]):
165
165
  type: import('vue').PropType<import('..').BglFormSchemaFnT<any>>;
166
166
  required: true;
167
167
  };
168
- id: {
168
+ label: {
169
169
  type: import('vue').PropType<string>;
170
170
  };
171
- label: {
171
+ onSubmit: {
172
+ type: import('vue').PropType<(data: any) => void>;
173
+ };
174
+ id: {
172
175
  type: import('vue').PropType<string>;
173
176
  };
174
177
  modelValue: {
@@ -178,15 +181,12 @@ export declare function bglForm(idOrField?: string | Field, ...schema: Field[]):
178
181
  onDelete: {
179
182
  type: import('vue').PropType<(id: string) => void>;
180
183
  };
181
- onSubmit: {
182
- type: import('vue').PropType<(data: any) => void>;
183
- };
184
184
  status: {
185
185
  type: import('vue').PropType<import('../components/form/BglForm.vue').FormStatus>;
186
186
  };
187
187
  }>> & {
188
- "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
189
188
  onSubmit?: ((...args: any[]) => any) | undefined;
189
+ "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
190
190
  onDirty?: ((...args: any[]) => any) | undefined;
191
191
  }, {
192
192
  submit: () => void;
@@ -227,10 +227,13 @@ export declare function bglForm(idOrField?: string | Field, ...schema: Field[]):
227
227
  type: import('vue').PropType<import('..').BglFormSchemaFnT<any>>;
228
228
  required: true;
229
229
  };
230
- id: {
230
+ label: {
231
231
  type: import('vue').PropType<string>;
232
232
  };
233
- label: {
233
+ onSubmit: {
234
+ type: import('vue').PropType<(data: any) => void>;
235
+ };
236
+ id: {
234
237
  type: import('vue').PropType<string>;
235
238
  };
236
239
  modelValue: {
@@ -240,15 +243,12 @@ export declare function bglForm(idOrField?: string | Field, ...schema: Field[]):
240
243
  onDelete: {
241
244
  type: import('vue').PropType<(id: string) => void>;
242
245
  };
243
- onSubmit: {
244
- type: import('vue').PropType<(data: any) => void>;
245
- };
246
246
  status: {
247
247
  type: import('vue').PropType<import('../components/form/BglForm.vue').FormStatus>;
248
248
  };
249
249
  }>> & {
250
- "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
251
250
  onSubmit?: ((...args: any[]) => any) | undefined;
251
+ "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
252
252
  onDirty?: ((...args: any[]) => any) | undefined;
253
253
  }, {
254
254
  submit: () => void;
@@ -265,10 +265,13 @@ export declare function bglForm(idOrField?: string | Field, ...schema: Field[]):
265
265
  type: import('vue').PropType<import('..').BglFormSchemaFnT<any>>;
266
266
  required: true;
267
267
  };
268
- id: {
268
+ label: {
269
269
  type: import('vue').PropType<string>;
270
270
  };
271
- label: {
271
+ onSubmit: {
272
+ type: import('vue').PropType<(data: any) => void>;
273
+ };
274
+ id: {
272
275
  type: import('vue').PropType<string>;
273
276
  };
274
277
  modelValue: {
@@ -278,15 +281,12 @@ export declare function bglForm(idOrField?: string | Field, ...schema: Field[]):
278
281
  onDelete: {
279
282
  type: import('vue').PropType<(id: string) => void>;
280
283
  };
281
- onSubmit: {
282
- type: import('vue').PropType<(data: any) => void>;
283
- };
284
284
  status: {
285
285
  type: import('vue').PropType<import('../components/form/BglForm.vue').FormStatus>;
286
286
  };
287
287
  }>> & {
288
- "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
289
288
  onSubmit?: ((...args: any[]) => any) | undefined;
289
+ "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
290
290
  onDirty?: ((...args: any[]) => any) | undefined;
291
291
  }, {
292
292
  modelValue: Record<string, any>;
@@ -302,10 +302,13 @@ export declare function bglForm(idOrField?: string | Field, ...schema: Field[]):
302
302
  type: import('vue').PropType<import('..').BglFormSchemaFnT<any>>;
303
303
  required: true;
304
304
  };
305
- id: {
305
+ label: {
306
306
  type: import('vue').PropType<string>;
307
307
  };
308
- label: {
308
+ onSubmit: {
309
+ type: import('vue').PropType<(data: any) => void>;
310
+ };
311
+ id: {
309
312
  type: import('vue').PropType<string>;
310
313
  };
311
314
  modelValue: {
@@ -315,15 +318,12 @@ export declare function bglForm(idOrField?: string | Field, ...schema: Field[]):
315
318
  onDelete: {
316
319
  type: import('vue').PropType<(id: string) => void>;
317
320
  };
318
- onSubmit: {
319
- type: import('vue').PropType<(data: any) => void>;
320
- };
321
321
  status: {
322
322
  type: import('vue').PropType<import('../components/form/BglForm.vue').FormStatus>;
323
323
  };
324
324
  }>> & {
325
- "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
326
325
  onSubmit?: ((...args: any[]) => any) | undefined;
326
+ "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
327
327
  onDirty?: ((...args: any[]) => any) | undefined;
328
328
  }, {
329
329
  submit: () => void;
@@ -342,10 +342,13 @@ export declare function bglForm(idOrField?: string | Field, ...schema: Field[]):
342
342
  type: import('vue').PropType<import('..').BglFormSchemaFnT<any>>;
343
343
  required: true;
344
344
  };
345
- id: {
345
+ label: {
346
346
  type: import('vue').PropType<string>;
347
347
  };
348
- label: {
348
+ onSubmit: {
349
+ type: import('vue').PropType<(data: any) => void>;
350
+ };
351
+ id: {
349
352
  type: import('vue').PropType<string>;
350
353
  };
351
354
  modelValue: {
@@ -355,15 +358,12 @@ export declare function bglForm(idOrField?: string | Field, ...schema: Field[]):
355
358
  onDelete: {
356
359
  type: import('vue').PropType<(id: string) => void>;
357
360
  };
358
- onSubmit: {
359
- type: import('vue').PropType<(data: any) => void>;
360
- };
361
361
  status: {
362
362
  type: import('vue').PropType<import('../components/form/BglForm.vue').FormStatus>;
363
363
  };
364
364
  }>> & {
365
- "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
366
365
  onSubmit?: ((...args: any[]) => any) | undefined;
366
+ "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
367
367
  onDirty?: ((...args: any[]) => any) | undefined;
368
368
  }, {
369
369
  submit: () => void;
@@ -1,5 +1,4 @@
1
1
  import { BagelField } from '..';
2
-
3
2
  export declare function getPropByPath(obj: Record<string, any>, propPath?: string, bagelField?: BagelField): {};
4
3
  export declare function setPropByPath(obj: Record<string, any>, path?: string, value?: any): void;
5
4
  //# sourceMappingURL=objects.d.ts.map
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@bagelink/vue",
3
3
  "type": "module",
4
- "version": "0.0.714",
4
+ "version": "0.0.724",
5
5
  "description": "Bagel core sdk packages",
6
6
  "author": {
7
7
  "name": "Neveh Allon",
@@ -1,5 +1,6 @@
1
1
  <script lang="ts" setup>
2
2
  import { Btn, type MaterialIcons } from '@bagelink/vue'
3
+ import SelectInput from '../SelectInput.vue'
3
4
  import type { ToolbarConfig, ToolbarConfigOption } from './richtext-types'
4
5
 
5
6
  defineProps<{ config: ToolbarConfig }>()
@@ -9,33 +10,26 @@ const colorPicker = $ref<HTMLInputElement | null>(null)
9
10
  const fontSizeInput = $ref<HTMLInputElement | null>(null)
10
11
 
11
12
  interface toolbarOption {
12
- name: ToolbarConfigOption
13
+ name: ToolbarConfigOption | 'separator'
13
14
  icon: MaterialIcons
14
15
  }
15
16
 
16
17
  const toolbarOptions: toolbarOption[] = [
18
+ { name: 'separator' },
17
19
  { name: 'bold', icon: 'format_bold' },
18
20
  { name: 'italic', icon: 'format_italic' },
19
21
  { name: 'underline', icon: 'format_underlined' },
20
- { name: 'fontSize', icon: 'format_size' },
21
- { name: 'fontFamily', icon: 'font_download' },
22
- { name: 'textColor', icon: 'text_format' },
23
- { name: 'backgroundColor', icon: 'format_color_fill' },
24
- { name: 'alignLeft', icon: 'format_align_left' },
25
- { name: 'alignCenter', icon: 'format_align_center' },
26
- { name: 'alignRight', icon: 'format_align_right' },
27
- { name: 'alignJustify', icon: 'format_align_justify' },
22
+ { name: 'separator' },
28
23
  { name: 'orderedList', icon: 'format_list_numbered' },
29
24
  { name: 'unorderedList', icon: 'format_list_bulleted' },
30
- { name: 'indent', icon: 'format_indent_increase' },
31
- { name: 'outdent', icon: 'format_indent_decrease' },
32
- { name: 'link', icon: 'link' },
33
- { name: 'image', icon: 'image' },
34
- { name: 'table', icon: 'table_chart' },
35
- { name: 'blockquote', icon: 'format_quote' },
36
- { name: 'codeBlock', icon: 'code' },
37
- { name: 'splitView', icon: 'splitscreen_right' },
38
- { name: 'codeView', icon: 'code' },
25
+ { name: 'separator' },
26
+ { name: 'link', icon: 'add_link' },
27
+ { name: 'image', icon: 'add_photo_alternate' },
28
+ { name: 'youtube', icon: 'youtube_activity' },
29
+ { name: 'separator' },
30
+ { name: 'splitView', icon: 'code' },
31
+ { name: 'clear', icon: 'format_clear' },
32
+
39
33
  ]
40
34
 
41
35
  function handleColorPick(type: 'textColor' | 'backgroundColor') {
@@ -51,57 +45,40 @@ function handleFontSizeChange() {
51
45
  emit('action', 'fontSize', size)
52
46
  }
53
47
  }
48
+ function handleSelectChange(selectedOption: string) {
49
+ emit('action', 'formatBlock', selectedOption)
50
+ }
54
51
  </script>
55
52
 
56
53
  <template>
57
- <div class="toolbar" role="toolbar">
58
- <Btn
59
- v-for="action in toolbarOptions.filter(t => config.includes(t.name))"
60
- :key="action.name"
61
- v-tooltip="action.name"
62
- thin
63
- color="light"
64
- :aria-label="action.name"
65
- :icon="action.icon"
66
- @click="emit('action', action.name)"
54
+ <div class="toolbar flex gap-025 pb-05 flex-wrap" role="toolbar">
55
+ <SelectInput
56
+ class="m-0 w150"
57
+ :options="['Text', 'Heading 1', 'Heading 2', 'Heading 3', 'Heading 4', 'Heading 5', 'Heading 6', 'Blockquote', 'Code']"
58
+ @change="handleSelectChange"
67
59
  />
68
- <input
69
- v-if="config.includes('textColor') || config.includes('backgroundColor')"
70
- ref="colorPicker"
71
- type="color"
72
- @change="handleColorPick(config.includes('textColor') ? 'textColor' : 'backgroundColor')"
73
- >
74
- <input
75
- v-if="config.includes('fontSize')"
76
- ref="fontSizeInput"
77
- type="number"
78
- min="1"
79
- max="7"
80
- @change="handleFontSizeChange"
81
- >
60
+
61
+ <template v-for="(action, index) in toolbarOptions">
62
+ <Btn
63
+ v-if="action.name !== 'separator' && config.includes(action.name)"
64
+ :key="action.name"
65
+ v-tooltip="action.name"
66
+ thin
67
+ flat
68
+ class="rounded"
69
+ :aria-label="action.name"
70
+ :icon="action.icon"
71
+ @click="emit('action', action.name)"
72
+ />
73
+ <span
74
+ v-if="action.name === 'separator'"
75
+ :key="`separator-${index}`"
76
+ class=" opacity-2 mb-025"
77
+ >|</span>
78
+ </template>
82
79
  </div>
83
80
  </template>
84
81
 
85
82
  <style scoped>
86
- .toolbar {
87
- display: flex;
88
- flex-wrap: wrap;
89
- gap: 5px;
90
- padding: 10px;
91
- background-color: #f0f0f0;
92
- border-bottom: 1px solid #ccc;
93
- }
94
83
 
95
- button:hover {
96
- background-color: #e0e0e0;
97
- }
98
-
99
- input[type="color"],
100
- input[type="number"] {
101
- width: 40px;
102
- height: 30px;
103
- padding: 0;
104
- border: 1px solid #ccc;
105
- border-radius: 3px;
106
- }
107
84
  </style>
@@ -30,7 +30,9 @@ const defaultConfig: ToolbarConfig = [
30
30
  'blockquote',
31
31
  'codeBlock',
32
32
  'splitView',
33
- 'codeView'
33
+ 'youtube',
34
+ 'codeView',
35
+ 'clear',
34
36
  ]
35
37
  const config = $ref<ToolbarConfig>(props.toolbarConfig || defaultConfig)
36
38
  let contentHtml = $ref(props.modelValue)
@@ -121,15 +123,16 @@ function handleKeyDown(event: KeyboardEvent) {
121
123
  </script>
122
124
 
123
125
  <template>
124
- <div class="rich-text-editor">
126
+ <div class="rich-text-editor round pt-05 px-1 pb-1">
125
127
  <Toolbar :config @action="handleToolbarAction" />
126
- <div class="editor-container" :class="{ 'split-view': isSplitView }">
127
- <div class="content-area" :class="{ 'code-view': isCodeView }">
128
+ <div class="editor-container flex flex-stretch" :class="{ 'split-view': isSplitView }">
129
+ <div class="content-area rounded p-1 bg-white shadow-light w-100 grid" :class="{ 'code-view': isCodeView }">
128
130
  <textarea v-if="isCodeView" v-model="contentHtml" @input="updateContent" />
129
131
  <div
130
132
  v-else
131
133
  ref="editableContent"
132
134
  contenteditable="true"
135
+ class="editableContent"
133
136
  role="textbox"
134
137
  aria-multiline="true"
135
138
  tabindex="0"
@@ -137,25 +140,60 @@ function handleKeyDown(event: KeyboardEvent) {
137
140
  @keydown="handleKeyDown"
138
141
  />
139
142
  </div>
140
- <div v-if="isSplitView" class="preview-area" v-html="contentHtml" />
143
+ <code v-if="isSplitView" class="preview-area bg-black color-white w-100 rounded p-1">{{ contentHtml }}</code>
141
144
  </div>
142
145
  </div>
143
146
  </template>
144
147
 
145
148
  <style scoped>
149
+ @font-face {
150
+ font-family: 'FontWithASyntaxHighlighter';
151
+ font-style: normal;
152
+ font-weight: 400;
153
+ font-stretch: 100%;
154
+ font-display: swap;
155
+ src: url(https://bagel.sfo2.cdn.digitaloceanspaces.com/Fonts/FontWithASyntaxHighlighter-Regular.woff2) format('woff2')
156
+ }
157
+
158
+ @font-palette-values --myCustomPalette {
159
+ font-family: 'FontWithASyntaxHighlighter';
160
+ override-colors:
161
+ 0 #6191c2, /* keywords, {} */
162
+ 1 #75975d, /* comments */
163
+ 2 yellow, /* literals */
164
+ 3 #a3c19a, /* numbers */
165
+ 4 blue, /* functions, [] */
166
+ 5 orange, /* js others */
167
+ 6 black, /* not in use */
168
+ 7 #bc8abd, /* inside quotes, css properties, few chars */
169
+ 8 #818181 /* few chars */
170
+ ;
171
+ }
172
+ .preview-area{
173
+ font-family: "FontWithASyntaxHighlighter", monospace;
174
+ font-palette: --myCustomPalette;
175
+ }
146
176
  .rich-text-editor {
147
- font-family: Arial, sans-serif;
148
- max-width: 800px;
149
- margin: 0 auto;
177
+ background: var(--input-bg);
178
+ margin-bottom: 0.5rem;
179
+ width: 100%;
180
+ }
181
+ .editableContent{
182
+ min-height: 100%;
183
+ white-space: pre-wrap;
184
+ outline: none;
185
+ }
186
+ .content-area, .preview-area{
187
+ min-height: 200px;
150
188
  }
151
189
 
152
- [contenteditable='true'] {
153
- white-space: pre-wrap;
154
- word-wrap: break-word;
190
+ /* [contenteditable='true'] {
191
+ white-space: pre-wrap;
192
+ word-wrap: break-word;
155
193
  outline: none;
156
- border: none;
157
194
  height: 100%;
158
- }
195
+ } */
196
+ /*
159
197
 
160
198
  .editor-container {
161
199
  display: flex;
@@ -184,9 +222,9 @@ function handleKeyDown(event: KeyboardEvent) {
184
222
  .preview-area {
185
223
  background-color: #f9f9f9;
186
224
  border-left: 1px solid #ccc;
187
- }
225
+ } */
188
226
 
189
- @media (max-width: 768px) {
227
+ /* @media (max-width: 768px) {
190
228
  .split-view {
191
229
  flex-direction: column;
192
230
  }
@@ -200,5 +238,5 @@ function handleKeyDown(event: KeyboardEvent) {
200
238
  border-left: none;
201
239
  border-top: 1px solid #ccc;
202
240
  }
203
- }
241
+ } */
204
242
  </style>
@@ -203,9 +203,10 @@ onMounted(() => {
203
203
 
204
204
  <div v-if="clearable && selectedItemCount > 0" class="ms-auto ps-05 me-05">
205
205
  <Btn
206
+ flat
206
207
  thin
207
208
  icon="clear"
208
- class="color-primary bg-gray-20"
209
+ class="color-gray"
209
210
  @click="selectedItems = []; emitUpdate()"
210
211
  />
211
212
  </div>
@@ -238,7 +239,7 @@ onMounted(() => {
238
239
  placeholder="Search"
239
240
  icon="search"
240
241
  />
241
- <div class="selectinput-options">
242
+ <div class="selectinput-options" :class="{ multiselect }">
242
243
  <div
243
244
  v-for="(option, i) in filteredOptions"
244
245
  :key="`${option}${i}`"
@@ -250,12 +251,14 @@ onMounted(() => {
250
251
  @click="select(option)"
251
252
  @keydown.enter="select(option)"
252
253
  >
253
- <Icon v-if="isSelected(option)" icon="check" />
254
- <Icon
255
- v-if="!isSelected(option)"
256
- class="opacity-3"
257
- icon="fiber_manual_record"
258
- />
254
+ <template v-if="multiselect">
255
+ <Icon v-if="isSelected(option)" icon="select_check_box" />
256
+ <Icon
257
+ v-if="!isSelected(option)"
258
+ class="opacity-3"
259
+ icon="check_box_outline_blank"
260
+ />
261
+ </template>
259
262
  <span>
260
263
  {{ getLabel(option) }}
261
264
  </span>
@@ -278,10 +281,15 @@ onMounted(() => {
278
281
  border-radius: 5px;
279
282
  transition: all 0.2s;
280
283
  display: grid;
281
- grid-template-columns: 10px 1fr;
284
+ grid-template-columns:1fr;
282
285
  justify-content: space-between;
283
286
  width: 100%;
284
287
  font-size: var(--input-font-size);
288
+ margin-block: 0.15rem;
289
+ }
290
+ .selectinput-options.multiselect .selectinput-option {
291
+ grid-template-columns: 10px 1fr;
292
+
285
293
  }
286
294
 
287
295
  .selectinput-options {
@@ -295,6 +303,9 @@ onMounted(() => {
295
303
  .isEmpty p {
296
304
  opacity: 0.3;
297
305
  }
306
+ .selected{
307
+ background: var(--input-bg);
308
+ }
298
309
  </style>
299
310
 
300
311
  <style>