@simitgroup/simpleapp-generator 1.6.6-h-alpha → 1.6.6-j-alpha

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 (185) hide show
  1. package/ReleaseNote.md +13 -1
  2. package/dist/buildinschemas/message.d.ts +3 -0
  3. package/dist/buildinschemas/message.d.ts.map +1 -0
  4. package/dist/buildinschemas/message.js +34 -0
  5. package/dist/buildinschemas/message.js.map +1 -0
  6. package/dist/buildinschemas/webhook.d.ts.map +1 -1
  7. package/dist/buildinschemas/webhook.js +1 -0
  8. package/dist/buildinschemas/webhook.js.map +1 -1
  9. package/dist/buildinschemas/webhookhistory.d.ts +3 -0
  10. package/dist/buildinschemas/webhookhistory.d.ts.map +1 -0
  11. package/dist/buildinschemas/webhookhistory.js +44 -0
  12. package/dist/buildinschemas/webhookhistory.js.map +1 -0
  13. package/dist/createproject.js +138 -0
  14. package/dist/createproject.js.map +1 -0
  15. package/dist/framework.d.ts.map +1 -1
  16. package/dist/framework.js +28 -3
  17. package/dist/framework.js.map +1 -1
  18. package/dist/generate-allow-changebackend.js +305 -0
  19. package/dist/generate-allow-changebackend.js.map +1 -0
  20. package/dist/index.js +0 -0
  21. package/dist/index2.js +118 -0
  22. package/dist/index2.js.map +1 -0
  23. package/dist/installdependency.js +20 -0
  24. package/dist/installdependency.js.map +1 -0
  25. package/dist/installnest.js +2 -0
  26. package/dist/installnest.js.map +1 -0
  27. package/dist/installnuxt.js +2 -0
  28. package/dist/installnuxt.js.map +1 -0
  29. package/dist/processors/groupsbuilder.js +2 -0
  30. package/dist/processors/groupsbuilder.js.map +1 -0
  31. package/dist/schematype/baseschema.js +25 -0
  32. package/dist/schematype/baseschema.js.map +1 -0
  33. package/dist/schematype/default.js +2 -0
  34. package/dist/schematype/default.js.map +1 -0
  35. package/dist/schematype/index.js +12 -0
  36. package/dist/schematype/index.js.map +1 -0
  37. package/dist/schematype/primarymasterdata.js +38 -0
  38. package/dist/schematype/primarymasterdata.js.map +1 -0
  39. package/dist/schematype/simple.js +24 -0
  40. package/dist/schematype/simple.js.map +1 -0
  41. package/dist/schematype/simplemasterdata.js +31 -0
  42. package/dist/schematype/simplemasterdata.js.map +1 -0
  43. package/dist/schematype/transaction.js +74 -0
  44. package/dist/schematype/transaction.js.map +1 -0
  45. package/package.json +1 -1
  46. package/src/buildinschemas/webhook.ts +1 -0
  47. package/src/framework.ts +31 -4
  48. package/templates/basic/nest/controller.ts.eta +6 -5
  49. package/templates/basic/nest/resolver.ts.eta +4 -2
  50. package/templates/basic/nest/service.ts.eta +5 -2
  51. package/templates/nest/.env._eta +1 -1
  52. package/templates/nest/src/simpleapp/generate/commons/middlewares/tenant.middleware.ts.eta +2 -2
  53. package/templates/nest/src/simpleapp/generate/commons/runwebhook.service.ts.eta +99 -107
  54. package/templates/nest/src/simpleapp/generate/commons/user.context.ts.eta +2 -2
  55. package/templates/nest/src/simpleapp/generate/processors/simpleapp.processor.ts.eta +3 -15
  56. package/templates/nuxt/assets/css/style.css._eta +74 -28
  57. package/templates/nuxt/components/calendar/CalendarInput.vue.eta +1 -1
  58. package/templates/nuxt/components/calendar/CalendarSmall.vue.eta +7 -7
  59. package/templates/nuxt/components/debug/DebugDocumentData.vue.eta +2 -3
  60. package/templates/nuxt/components/header/HeaderBreadcrumb.vue.eta +3 -3
  61. package/templates/nuxt/components/header/button/task/HeaderButtonTaskList.vue.eta +2 -2
  62. package/templates/nuxt/components/list/ListDocumentTable.vue.eta +1 -1
  63. package/templates/nuxt/components/list/ListMessages.vue.eta +2 -2
  64. package/templates/nuxt/components/overlay/OverlayPanelWithToolBar.vue.eta +3 -3
  65. package/templates/nuxt/components/overlay/OverlaySideBarCrud.vue.eta +2 -2
  66. package/templates/nuxt/components/page/PageDocList.vue.eta +3 -3
  67. package/templates/nuxt/components/renderer/RendererDateAge.vue.eta +19 -0
  68. package/templates/nuxt/components/simpleApp/SimpleAppCalendarInput.vue.eta +4 -4
  69. package/templates/nuxt/components/simpleApp/SimpleAppDocumentNo.vue.eta +3 -3
  70. package/templates/nuxt/components/simpleApp/SimpleAppInput.vue.eta +2 -3
  71. package/templates/nuxt/components/simpleApp/SimpleAppJsonSchemaForm.vue.eta +2 -15
  72. package/templates/nuxt/components/user/UserButtonPermissionInfo.vue.eta +2 -2
  73. package/templates/nuxt/nuxt.config.ts._eta +6 -5
  74. package/templates/nuxt/pages/index.vue._eta +1 -1
  75. package/templates/nuxt/plugins/40.pusher.ts.eta +8 -2
  76. package/templates/nuxt/presets/lara/accordion/index.js +79 -0
  77. package/templates/nuxt/presets/lara/accordioncontent/index.js +3 -0
  78. package/templates/nuxt/presets/lara/accordionheader/index.js +11 -0
  79. package/templates/nuxt/presets/lara/accordionpanel/index.js +18 -0
  80. package/templates/nuxt/presets/lara/autocomplete/index.js +208 -0
  81. package/templates/nuxt/presets/lara/avatar/index.js +43 -0
  82. package/templates/nuxt/presets/lara/avatargroup/index.js +5 -0
  83. package/templates/nuxt/presets/lara/badge/index.js +47 -0
  84. package/templates/nuxt/presets/lara/badgedirective/index.js +43 -0
  85. package/templates/nuxt/presets/lara/blockui/index.js +4 -0
  86. package/templates/nuxt/presets/lara/breadcrumb/index.js +64 -0
  87. package/templates/nuxt/presets/lara/button/index.js +238 -0
  88. package/templates/nuxt/presets/lara/buttongroup/index.js +12 -0
  89. package/templates/nuxt/presets/lara/card/index.js +37 -0
  90. package/templates/nuxt/presets/lara/carousel/index.js +103 -0
  91. package/templates/nuxt/presets/lara/cascadeselect/index.js +199 -0
  92. package/templates/nuxt/presets/lara/checkbox/index.js +104 -0
  93. package/templates/nuxt/presets/lara/chip/index.js +42 -0
  94. package/templates/nuxt/presets/lara/colorpicker/index.js +123 -0
  95. package/templates/nuxt/presets/lara/confirmdialog/index.js +3 -0
  96. package/templates/nuxt/presets/lara/confirmpopup/index.js +56 -0
  97. package/templates/nuxt/presets/lara/contextmenu/index.js +126 -0
  98. package/templates/nuxt/presets/lara/datatable/index.js +403 -0
  99. package/templates/nuxt/presets/lara/dataview/index.js +28 -0
  100. package/templates/nuxt/presets/lara/datepicker/index.js +435 -0
  101. package/templates/nuxt/presets/lara/deferred/index.js +3 -0
  102. package/templates/nuxt/presets/lara/dialog/index.js +148 -0
  103. package/templates/nuxt/presets/lara/divider/index.js +67 -0
  104. package/templates/nuxt/presets/lara/dock/index.js +86 -0
  105. package/templates/nuxt/presets/lara/drawer/index.js +149 -0
  106. package/templates/nuxt/presets/lara/fieldset/index.js +84 -0
  107. package/templates/nuxt/presets/lara/fileupload/index.js +95 -0
  108. package/templates/nuxt/presets/lara/floatlabel/index.js +26 -0
  109. package/templates/nuxt/presets/lara/galleria/index.js +308 -0
  110. package/templates/nuxt/presets/lara/global.js +90 -0
  111. package/templates/nuxt/presets/lara/iconfield/index.js +27 -0
  112. package/templates/nuxt/presets/lara/image/index.js +206 -0
  113. package/templates/nuxt/presets/lara/index.js +234 -0
  114. package/templates/nuxt/presets/lara/inplace/index.js +27 -0
  115. package/templates/nuxt/presets/lara/inputgroup/index.js +5 -0
  116. package/templates/nuxt/presets/lara/inputgroupaddon/index.js +28 -0
  117. package/templates/nuxt/presets/lara/inputmask/index.js +39 -0
  118. package/templates/nuxt/presets/lara/inputnumber/index.js +167 -0
  119. package/templates/nuxt/presets/lara/inputotp/index.js +10 -0
  120. package/templates/nuxt/presets/lara/inputswitch/index.js +80 -0
  121. package/templates/nuxt/presets/lara/inputtext/index.js +54 -0
  122. package/templates/nuxt/presets/lara/knob/index.js +44 -0
  123. package/templates/nuxt/presets/lara/listbox/index.js +117 -0
  124. package/templates/nuxt/presets/lara/megamenu/index.js +198 -0
  125. package/templates/nuxt/presets/lara/menu/index.js +96 -0
  126. package/templates/nuxt/presets/lara/menubar/index.js +176 -0
  127. package/templates/nuxt/presets/lara/message/index.js +92 -0
  128. package/templates/nuxt/presets/lara/metergroup/index.js +96 -0
  129. package/templates/nuxt/presets/lara/multiselect/index.js +201 -0
  130. package/templates/nuxt/presets/lara/orderlist/index.js +13 -0
  131. package/templates/nuxt/presets/lara/organizationchart/index.js +137 -0
  132. package/templates/nuxt/presets/lara/overlaybadge/index.js +18 -0
  133. package/templates/nuxt/presets/lara/paginator/index.js +178 -0
  134. package/templates/nuxt/presets/lara/panel/index.js +91 -0
  135. package/templates/nuxt/presets/lara/panelmenu/index.js +127 -0
  136. package/templates/nuxt/presets/lara/password/index.js +72 -0
  137. package/templates/nuxt/presets/lara/picklist/index.js +52 -0
  138. package/templates/nuxt/presets/lara/popover/index.js +31 -0
  139. package/templates/nuxt/presets/lara/progressbar/index.js +55 -0
  140. package/templates/nuxt/presets/lara/progressspinner/index.js +51 -0
  141. package/templates/nuxt/presets/lara/radiobutton/index.js +104 -0
  142. package/templates/nuxt/presets/lara/rating/index.js +63 -0
  143. package/templates/nuxt/presets/lara/ripple/index.js +6 -0
  144. package/templates/nuxt/presets/lara/scrollpanel/index.js +77 -0
  145. package/templates/nuxt/presets/lara/scrolltop/index.js +26 -0
  146. package/templates/nuxt/presets/lara/select/index.js +240 -0
  147. package/templates/nuxt/presets/lara/selectbutton/index.js +16 -0
  148. package/templates/nuxt/presets/lara/skeleton/index.js +16 -0
  149. package/templates/nuxt/presets/lara/slider/index.js +137 -0
  150. package/templates/nuxt/presets/lara/speeddial/index.js +57 -0
  151. package/templates/nuxt/presets/lara/splitbutton/index.js +19 -0
  152. package/templates/nuxt/presets/lara/splitter/index.js +61 -0
  153. package/templates/nuxt/presets/lara/splitterpanel/index.js +5 -0
  154. package/templates/nuxt/presets/lara/step/index.js +62 -0
  155. package/templates/nuxt/presets/lara/stepitem/index.js +11 -0
  156. package/templates/nuxt/presets/lara/steplist/index.js +3 -0
  157. package/templates/nuxt/presets/lara/steppanels/index.js +3 -0
  158. package/templates/nuxt/presets/lara/stepper/index.js +13 -0
  159. package/templates/nuxt/presets/lara/steps/index.js +111 -0
  160. package/templates/nuxt/presets/lara/tab/index.js +42 -0
  161. package/templates/nuxt/presets/lara/tablist/index.js +8 -0
  162. package/templates/nuxt/presets/lara/tabmenu/index.js +73 -0
  163. package/templates/nuxt/presets/lara/tabpanel/index.js +3 -0
  164. package/templates/nuxt/presets/lara/tabpanels/index.js +3 -0
  165. package/templates/nuxt/presets/lara/tabs/index.js +5 -0
  166. package/templates/nuxt/presets/lara/tabview/index.js +156 -0
  167. package/templates/nuxt/presets/lara/tag/index.js +38 -0
  168. package/templates/nuxt/presets/lara/terminal/index.js +60 -0
  169. package/templates/nuxt/presets/lara/textarea/index.js +39 -0
  170. package/templates/nuxt/presets/lara/tieredmenu/index.js +121 -0
  171. package/templates/nuxt/presets/lara/timeline/index.js +81 -0
  172. package/templates/nuxt/presets/lara/toast/index.js +102 -0
  173. package/templates/nuxt/presets/lara/togglebutton/index.js +45 -0
  174. package/templates/nuxt/presets/lara/toggleswitch/index.js +80 -0
  175. package/templates/nuxt/presets/lara/toolbar/index.js +28 -0
  176. package/templates/nuxt/presets/lara/tooltip/index.js +46 -0
  177. package/templates/nuxt/presets/lara/tree/index.js +101 -0
  178. package/templates/nuxt/presets/lara/treeselect/index.js +102 -0
  179. package/templates/nuxt/presets/lara/treetable/index.js +305 -0
  180. package/templates/nuxt/simpleapp/generate/clients/SimpleAppClient.ts.eta +2 -16
  181. package/templates/nuxt/tailwind.config.ts._eta +4 -15
  182. package/templates/project/sharelibs/validate.ts.eta +23 -0
  183. /package/templates/nuxt/components/image/{ImageAvatar.vue.eta._vue → ImageAvatar.vue.eta} +0 -0
  184. /package/templates/nuxt/components/image/{ImageOrganization.vue.eta.vue → ImageOrganization.vue.eta} +0 -0
  185. /package/templates/nuxt/components/image/{ImageToBase64Uploader.vue.eta.vue → ImageToBase64Uploader.vue.eta} +0 -0
@@ -0,0 +1,435 @@
1
+ export default {
2
+ root: ({ props }) => ({
3
+ class: [
4
+ // Display and Position
5
+ {
6
+ flex: props.fluid,
7
+ 'inline-flex': !props.fluid
8
+ },
9
+ 'max-w-full',
10
+ 'relative',
11
+
12
+ // Misc
13
+ { 'opacity-60 select-none pointer-events-none cursor-default': props.disabled }
14
+ ]
15
+ }),
16
+ pcInput: ({ props, parent }) => ({
17
+ root: {
18
+ class: [
19
+ // Display
20
+ 'flex-auto w-[1%]',
21
+
22
+ // Font
23
+ 'leading-none',
24
+
25
+ // Colors
26
+ 'text-surface-600 dark:text-surface-200',
27
+ 'placeholder:text-surface-400 dark:placeholder:text-surface-500',
28
+ 'bg-surface-0 dark:bg-surface-900',
29
+ 'border',
30
+ { 'border-surface-300 dark:border-surface-600': !props.invalid },
31
+
32
+ // Invalid State
33
+ { 'border-red-500 dark:border-red-400': props.invalid },
34
+
35
+ // Spacing
36
+ 'm-0 p-3',
37
+
38
+ // Shape
39
+ 'appearance-none',
40
+ { 'rounded-md': !props.showIcon || props.iconDisplay == 'input' },
41
+ { 'rounded-l-md flex-1 pr-9': props.showIcon && props.iconDisplay !== 'input' },
42
+ { 'rounded-md flex-1 pr-9': props.showIcon && props.iconDisplay === 'input' },
43
+
44
+ // Transitions
45
+ 'transition-colors',
46
+ 'duration-200',
47
+
48
+ // States
49
+ { 'hover:border-primary-emphasis': !props.invalid },
50
+ 'focus:outline-none focus:outline-offset-0 focus:ring focus:ring-primary-500/50 dark:focus:ring-primary-400/50',
51
+
52
+ // Filled State *for FloatLabel
53
+ { filled: parent.instance?.$name == 'FloatLabel' && props.modelValue !== null }
54
+ ]
55
+ }
56
+ }),
57
+ dropdownIcon: {
58
+ class: ['absolute top-[50%] -mt-2', 'text-surface-600 dark:text-surface-200', 'right-[.75rem]']
59
+ },
60
+ dropdown: {
61
+ class: [
62
+ 'relative w-10',
63
+
64
+ // Alignments
65
+ 'items-center inline-flex text-center align-bottom justify-center',
66
+
67
+ // Shape
68
+ 'rounded-r-md',
69
+
70
+ // Size
71
+ 'px-4 py-3 leading-none',
72
+
73
+ // Colors
74
+ 'text-primary-inverse',
75
+ 'bg-primary',
76
+ 'border border-primary',
77
+
78
+ // States
79
+ 'focus:outline-none focus:outline-offset-0 focus:ring',
80
+ 'hover:bg-primary-hover hover:border-primary-hover',
81
+ 'focus:ring-primary-400/50 dark:focus:ring-primary-300/50'
82
+ ]
83
+ },
84
+ inputIconContainer: 'absolute cursor-pointer top-1/2 right-3 -mt-3',
85
+ inputIcon: 'inline-block text-base',
86
+ panel: ({ props }) => ({
87
+ class: [
88
+ // Display & Position
89
+ {
90
+ absolute: !props.inline,
91
+ 'inline-block': props.inline
92
+ },
93
+
94
+ // Size
95
+ { 'w-auto p-2 ': !props.inline },
96
+ { 'min-w-[80vw] w-auto p-2 ': props.touchUI },
97
+ { 'p-2 min-w-full': props.inline },
98
+
99
+ // Shape
100
+ 'border rounded-lg',
101
+ {
102
+ 'shadow-md': !props.inline
103
+ },
104
+
105
+ // Colors
106
+ 'bg-surface-0 dark:bg-surface-800',
107
+ 'border-surface-200 dark:border-surface-700',
108
+
109
+ //misc
110
+ { 'overflow-x-auto': props.inline }
111
+ ]
112
+ }),
113
+ header: {
114
+ class: [
115
+ //Font
116
+ 'font-semibold',
117
+
118
+ // Flexbox and Alignment
119
+ 'flex items-center justify-between',
120
+
121
+ // Spacing
122
+ 'p-2',
123
+ 'm-0',
124
+
125
+ // Shape
126
+ 'border-b',
127
+ 'rounded-t-md',
128
+
129
+ // Colors
130
+ 'text-surface-700 dark:text-white/80',
131
+ 'bg-surface-0 dark:bg-surface-800',
132
+ 'border-surface-200 dark:border-surface-700'
133
+ ]
134
+ },
135
+ title: {
136
+ class: [
137
+ // Text
138
+ 'leading-8',
139
+ 'mx-auto my-0'
140
+ ]
141
+ },
142
+ selectMonth: {
143
+ class: [
144
+ // Font
145
+ 'text-base leading-[normal]',
146
+ 'font-semibold',
147
+
148
+ // Colors
149
+ 'text-surface-700 dark:text-white/80',
150
+
151
+ // Transitions
152
+ 'transition duration-200',
153
+
154
+ // Spacing
155
+ 'p-2',
156
+ 'm-0 mr-2',
157
+
158
+ // States
159
+ 'hover:text-primary-500 dark:hover:text-primary-400',
160
+
161
+ // Misc
162
+ 'cursor-pointer'
163
+ ]
164
+ },
165
+ selectYear: {
166
+ class: [
167
+ // Font
168
+ 'text-base leading-[normal]',
169
+ 'font-semibold',
170
+
171
+ // Colors
172
+ 'text-surface-700 dark:text-white/80',
173
+
174
+ // Transitions
175
+ 'transition duration-200',
176
+
177
+ // Spacing
178
+ 'p-2',
179
+ 'm-0',
180
+
181
+ // States
182
+ 'hover:text-primary-500 dark:hover:text-primary-400',
183
+
184
+ // Misc
185
+ 'cursor-pointer'
186
+ ]
187
+ },
188
+ table: {
189
+ class: [
190
+ // Font
191
+ 'text-base leading-none',
192
+ // Size & Shape
193
+ 'border-collapse',
194
+ 'w-full',
195
+
196
+ // Spacing
197
+ 'm-0 my-2'
198
+ ]
199
+ },
200
+ tableHeaderCell: {
201
+ class: [
202
+ // Spacing
203
+ 'p-0 md:p-2'
204
+ ]
205
+ },
206
+ weekHeader: {
207
+ class: ['leading-[normal]', 'text-surface-600 dark:text-white/70', 'opacity-60 cursor-default']
208
+ },
209
+ weekNumber: {
210
+ class: ['text-surface-600 dark:text-white/70', 'opacity-60 cursor-default']
211
+ },
212
+ weekday: {
213
+ class: [
214
+ // Colors
215
+ 'text-surface-500 dark:text-white/60'
216
+ ]
217
+ },
218
+ dayCell: {
219
+ class: [
220
+ // Spacing
221
+ 'p-0 md:p-2'
222
+ ]
223
+ },
224
+ weekLabelContainer: {
225
+ class: [
226
+ // Flexbox and Alignment
227
+ 'flex items-center justify-center',
228
+ 'mx-auto',
229
+
230
+ // Shape & Size
231
+ 'w-10 h-10',
232
+ 'rounded-full',
233
+ 'border-transparent border',
234
+
235
+ // Colors
236
+ 'opacity-60 cursor-default'
237
+ ]
238
+ },
239
+ dayView: 'w-full',
240
+ day: ({ context }) => ({
241
+ class: [
242
+ // Flexbox and Alignment
243
+ 'flex items-center justify-center',
244
+ 'mx-auto',
245
+
246
+ // Shape & Size
247
+ 'w-10 h-10',
248
+ 'rounded-full',
249
+ 'border-transparent border',
250
+
251
+ // Colors
252
+ {
253
+ 'text-primary': context.date.today,
254
+ 'text-surface-600 dark:text-white/70 bg-transparent': !context.selected && !context.disabled && !context.date.today,
255
+ 'bg-highlight': context.selected && !context.disabled
256
+ },
257
+
258
+ // States
259
+ 'focus:outline-none focus:outline-offset-0 focus:ring focus:ring-primary-400/50 dark:focus:ring-primary-300/50',
260
+ {
261
+ 'hover:bg-surface-100 dark:hover:bg-surface-600/80': !context.selected && !context.disabled,
262
+ 'hover:bg-primary-highlight-hover': context.selected && !context.disabled
263
+ },
264
+ {
265
+ 'opacity-60 cursor-default': context.disabled,
266
+ 'cursor-pointer': !context.disabled
267
+ }
268
+ ]
269
+ }),
270
+ monthView: {
271
+ class: [
272
+ // Spacing
273
+ 'my-2'
274
+ ]
275
+ },
276
+ month: ({ context }) => ({
277
+ class: [
278
+ // Flexbox and Alignment
279
+ 'inline-flex items-center justify-center',
280
+
281
+ // Size
282
+ 'w-1/3',
283
+ 'p-2',
284
+
285
+ // Shape
286
+ 'rounded-md',
287
+
288
+ // Colors
289
+ {
290
+ 'text-surface-600 dark:text-white/70 bg-transparent': !context.selected && !context.disabled,
291
+ 'bg-highlight': context.selected && !context.disabled
292
+ },
293
+
294
+ // States
295
+ 'focus:outline-none focus:outline-offset-0 focus:ring focus:ring-primary-400/50 dark:focus:ring-primary-300/50',
296
+ {
297
+ 'hover:bg-surface-100 dark:hover:bg-surface-600/80': !context.selected && !context.disabled,
298
+ 'hover:bg-primary-highlight-hover': context.selected && !context.disabled
299
+ },
300
+
301
+ // Misc
302
+ 'cursor-pointer'
303
+ ]
304
+ }),
305
+ yearView: {
306
+ class: [
307
+ // Spacing
308
+ 'my-2'
309
+ ]
310
+ },
311
+ year: ({ context }) => ({
312
+ class: [
313
+ // Flexbox and Alignment
314
+ 'inline-flex items-center justify-center',
315
+
316
+ // Size
317
+ 'w-1/3',
318
+ 'p-2',
319
+
320
+ // Shape
321
+ 'rounded-md',
322
+
323
+ // Colors
324
+ {
325
+ 'text-surface-600 dark:text-white/70 bg-transparent': !context.selected && !context.disabled,
326
+ 'bg-highlight': context.selected && !context.disabled
327
+ },
328
+
329
+ // States
330
+ 'focus:outline-none focus:outline-offset-0 focus:ring focus:ring-primary-400/50 dark:focus:ring-primary-300/50',
331
+ {
332
+ 'hover:bg-surface-100 dark:hover:bg-surface-600/80': !context.selected && !context.disabled,
333
+ 'hover:bg-primary-highlight-hover': context.selected && !context.disabled
334
+ },
335
+
336
+ // Misc
337
+ 'cursor-pointer'
338
+ ]
339
+ }),
340
+ timePicker: {
341
+ class: [
342
+ // Flexbox
343
+ 'flex',
344
+ 'justify-center items-center',
345
+
346
+ // Borders
347
+ 'border-t-1',
348
+ 'border-solid border-surface-200',
349
+
350
+ // Spacing
351
+ 'p-2'
352
+ ]
353
+ },
354
+ separatorContainer: {
355
+ class: [
356
+ // Flexbox and Alignment
357
+ 'flex',
358
+ 'items-center',
359
+ 'flex-col',
360
+
361
+ // Spacing
362
+ 'px-2'
363
+ ]
364
+ },
365
+ separator: {
366
+ class: [
367
+ // Text
368
+ 'text-xl'
369
+ ]
370
+ },
371
+ hourPicker: {
372
+ class: [
373
+ // Flexbox and Alignment
374
+ 'flex',
375
+ 'items-center',
376
+ 'flex-col',
377
+
378
+ // Spacing
379
+ 'px-2'
380
+ ]
381
+ },
382
+ minutePicker: {
383
+ class: [
384
+ // Flexbox and Alignment
385
+ 'flex',
386
+ 'items-center',
387
+ 'flex-col',
388
+
389
+ // Spacing
390
+ 'px-2'
391
+ ]
392
+ },
393
+ secondPicker: {
394
+ class: [
395
+ // Flexbox and Alignment
396
+ 'flex',
397
+ 'items-center',
398
+ 'flex-col',
399
+
400
+ // Spacing
401
+ 'px-2'
402
+ ]
403
+ },
404
+ ampmPicker: {
405
+ class: [
406
+ // Flexbox and Alignment
407
+ 'flex',
408
+ 'items-center',
409
+ 'flex-col',
410
+
411
+ // Spacing
412
+ 'px-2'
413
+ ]
414
+ },
415
+ calendarContainer: 'flex',
416
+ calendar: 'flex-auto border-l first:border-l-0 border-surface-200',
417
+ buttonbar: {
418
+ class: [
419
+ // Flexbox
420
+ 'flex justify-between items-center',
421
+
422
+ // Spacing
423
+ 'py-3 px-0',
424
+
425
+ // Shape
426
+ 'border-t border-surface-200 dark:border-surface-700'
427
+ ]
428
+ },
429
+ transition: {
430
+ enterFromClass: 'opacity-0 scale-y-[0.8]',
431
+ enterActiveClass: 'transition-[transform,opacity] duration-[120ms] ease-[cubic-bezier(0,0,0.2,1)]',
432
+ leaveActiveClass: 'transition-opacity duration-100 ease-linear',
433
+ leaveToClass: 'opacity-0'
434
+ }
435
+ };
@@ -0,0 +1,3 @@
1
+ export default {
2
+ root: {}
3
+ };
@@ -0,0 +1,148 @@
1
+ export default {
2
+ root: ({ state }) => ({
3
+ class: [
4
+ // Shape
5
+ 'rounded-lg',
6
+ 'shadow-lg',
7
+ 'border-0',
8
+
9
+ // Size
10
+ 'max-h-[90vh]',
11
+ 'm-0',
12
+
13
+ // Color
14
+ 'dark:border',
15
+ 'dark:border-surface-700',
16
+
17
+ // Transitions
18
+ 'transform',
19
+ 'scale-100',
20
+
21
+ // Maximized State
22
+ {
23
+ 'transition-none': state.maximized,
24
+ 'transform-none': state.maximized,
25
+ '!w-screen': state.maximized,
26
+ '!h-screen': state.maximized,
27
+ '!max-h-full': state.maximized,
28
+ '!top-0': state.maximized,
29
+ '!left-0': state.maximized
30
+ }
31
+ ]
32
+ }),
33
+ header: {
34
+ class: [
35
+ // Flexbox and Alignment
36
+ 'flex items-center justify-between',
37
+ 'shrink-0',
38
+
39
+ // Spacing
40
+ 'p-6',
41
+
42
+ // Shape
43
+ 'border-t-0',
44
+ 'rounded-tl-lg',
45
+ 'rounded-tr-lg',
46
+
47
+ // Colors
48
+ 'bg-surface-0 dark:bg-surface-800',
49
+ 'text-surface-700 dark:text-surface-0/80'
50
+ ]
51
+ },
52
+ title: {
53
+ class: ['font-bold text-lg']
54
+ },
55
+ headerActions: {
56
+ class: ['flex items-center']
57
+ },
58
+ content: ({ state, instance }) => ({
59
+ class: [
60
+ // Spacing
61
+ 'px-6',
62
+ 'pb-8',
63
+ 'pt-0',
64
+
65
+ // Shape
66
+ {
67
+ grow: state.maximized,
68
+ 'rounded-bl-lg': !instance.$slots.footer,
69
+ 'rounded-br-lg': !instance.$slots.footer
70
+ },
71
+
72
+ // Colors
73
+ 'bg-surface-0 dark:bg-surface-800',
74
+ 'text-surface-700 dark:text-surface-0/80',
75
+
76
+ // Misc
77
+ 'overflow-y-auto'
78
+ ]
79
+ }),
80
+ footer: {
81
+ class: [
82
+ // Flexbox and Alignment
83
+ 'flex items-center justify-end',
84
+ 'shrink-0',
85
+ 'text-right',
86
+ 'gap-2',
87
+
88
+ // Spacing
89
+ 'px-6',
90
+ 'pb-6',
91
+
92
+ // Shape
93
+ 'border-t-0',
94
+ 'rounded-b-lg',
95
+
96
+ // Colors
97
+ 'bg-surface-0 dark:bg-surface-800',
98
+ 'text-surface-700 dark:text-surface-0/80'
99
+ ]
100
+ },
101
+ mask: ({ props }) => ({
102
+ class: [
103
+ // Transitions
104
+ 'transition-all',
105
+ 'duration-300',
106
+ { 'p-5': !props.position == 'full' },
107
+
108
+ // Background and Effects
109
+ { 'has-[.mask-active]:bg-transparent bg-black/40': props.modal, 'has-[.mask-active]:backdrop-blur-none backdrop-blur-sm': props.modal }
110
+ ]
111
+ }),
112
+ transition: ({ props }) => {
113
+ return props.position === 'top'
114
+ ? {
115
+ enterFromClass: 'opacity-0 scale-75 translate-x-0 -translate-y-full translate-z-0 mask-active',
116
+ enterActiveClass: 'transition-all duration-200 ease-out',
117
+ leaveActiveClass: 'transition-all duration-200 ease-out',
118
+ leaveToClass: 'opacity-0 scale-75 translate-x-0 -translate-y-full translate-z-0 mask-active'
119
+ }
120
+ : props.position === 'bottom'
121
+ ? {
122
+ enterFromClass: 'opacity-0 scale-75 translate-y-full mask-active',
123
+ enterActiveClass: 'transition-all duration-200 ease-out',
124
+ leaveActiveClass: 'transition-all duration-200 ease-out',
125
+ leaveToClass: 'opacity-0 scale-75 translate-x-0 translate-y-full translate-z-0 mask-active'
126
+ }
127
+ : props.position === 'left' || props.position === 'topleft' || props.position === 'bottomleft'
128
+ ? {
129
+ enterFromClass: 'opacity-0 scale-75 -translate-x-full translate-y-0 translate-z-0 mask-active',
130
+ enterActiveClass: 'transition-all duration-200 ease-out',
131
+ leaveActiveClass: 'transition-all duration-200 ease-out',
132
+ leaveToClass: 'opacity-0 scale-75 -translate-x-full translate-y-0 translate-z-0 mask-active'
133
+ }
134
+ : props.position === 'right' || props.position === 'topright' || props.position === 'bottomright'
135
+ ? {
136
+ enterFromClass: 'opacity-0 scale-75 translate-x-full translate-y-0 translate-z-0 mask-active',
137
+ enterActiveClass: 'transition-all duration-200 ease-out',
138
+ leaveActiveClass: 'transition-all duration-200 ease-out',
139
+ leaveToClass: 'opacity-0 scale-75 translate-x-full translate-y-0 translate-z-0 mask-active'
140
+ }
141
+ : {
142
+ enterFromClass: 'opacity-0 scale-75 mask-active',
143
+ enterActiveClass: 'transition-all duration-200 ease-out',
144
+ leaveActiveClass: 'transition-all duration-200 ease-out',
145
+ leaveToClass: 'opacity-0 scale-75 mask-active'
146
+ };
147
+ }
148
+ };
@@ -0,0 +1,67 @@
1
+ export default {
2
+ root: ({ props }) => ({
3
+ class: [
4
+ // Flex and Position
5
+ 'flex relative',
6
+ { 'justify-center': props.layout == 'vertical' },
7
+ { 'items-center': props.layout == 'vertical' },
8
+ {
9
+ 'justify-start': props?.align == 'left' && props.layout == 'horizontal',
10
+ 'justify-center': props?.align == 'center' && props.layout == 'horizontal',
11
+ 'justify-end': props?.align == 'right' && props.layout == 'horizontal',
12
+ 'items-center': props?.align == 'top' && props.layout == 'vertical',
13
+ 'items-start': props?.align == 'center' && props.layout == 'vertical',
14
+ 'items-end': props?.align == 'bottom' && props.layout == 'vertical'
15
+ },
16
+
17
+ // Spacing
18
+ {
19
+ 'my-5 mx-0 py-0 px-5': props.layout == 'horizontal',
20
+ 'mx-4 md:mx-5 py-5': props.layout == 'vertical'
21
+ },
22
+
23
+ // Size
24
+ {
25
+ 'w-full': props.layout == 'horizontal',
26
+ 'min-h-full': props.layout == 'vertical'
27
+ },
28
+
29
+ // Before: Line
30
+ 'before:block',
31
+
32
+ // Position
33
+ {
34
+ 'before:absolute before:left-0 before:top-1/2': props.layout == 'horizontal',
35
+ 'before:absolute before:left-1/2 before:top-0 before:transform before:-translate-x-1/2': props.layout == 'vertical'
36
+ },
37
+
38
+ // Size
39
+ {
40
+ 'before:w-full': props.layout == 'horizontal',
41
+ 'before:min-h-full': props.layout == 'vertical'
42
+ },
43
+
44
+ // Shape
45
+ {
46
+ 'before:border-solid': props.type == 'solid',
47
+ 'before:border-dotted': props.type == 'dotted',
48
+ 'before:border-dashed': props.type == 'dashed'
49
+ },
50
+
51
+ // Color
52
+ {
53
+ 'before:border-t before:border-surface-200 before:dark:border-surface-600': props.layout == 'horizontal',
54
+ 'before:border-l before:border-surface-200 before:dark:border-surface-600': props.layout == 'vertical'
55
+ }
56
+ ]
57
+ }),
58
+ content: {
59
+ class: [
60
+ // Space and Position
61
+ 'px-1 z-10',
62
+
63
+ // Color
64
+ 'bg-surface-0 dark:bg-surface-800'
65
+ ]
66
+ }
67
+ };