@finema/core 1.4.151 → 1.4.153

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 (166) hide show
  1. package/README.md +60 -60
  2. package/dist/module.json +1 -5
  3. package/dist/module.mjs +33 -37
  4. package/dist/runtime/components/Alert.vue +48 -48
  5. package/dist/runtime/components/Avatar.vue +27 -27
  6. package/dist/runtime/components/Badge.vue +11 -11
  7. package/dist/runtime/components/Breadcrumb.vue +44 -44
  8. package/dist/runtime/components/Button/Group.vue +37 -37
  9. package/dist/runtime/components/Button/index.vue +75 -75
  10. package/dist/runtime/components/Card.vue +38 -38
  11. package/dist/runtime/components/Core.vue +37 -37
  12. package/dist/runtime/components/Dialog/index.vue +108 -108
  13. package/dist/runtime/components/Dropdown/index.vue +70 -70
  14. package/dist/runtime/components/FlexDeck/Base.vue +143 -143
  15. package/dist/runtime/components/FlexDeck/index.vue +68 -68
  16. package/dist/runtime/components/Form/FieldWrapper.vue +23 -23
  17. package/dist/runtime/components/Form/Fields.vue +230 -230
  18. package/dist/runtime/components/Form/InputCheckbox/index.vue +28 -28
  19. package/dist/runtime/components/Form/InputDateTime/index.vue +60 -60
  20. package/dist/runtime/components/Form/InputDateTimeRange/date_range_time_field.types.d.ts +1 -1
  21. package/dist/runtime/components/Form/InputDateTimeRange/index.vue +83 -83
  22. package/dist/runtime/components/Form/InputNumber/index.vue +27 -27
  23. package/dist/runtime/components/Form/InputRadio/index.vue +27 -27
  24. package/dist/runtime/components/Form/InputSelect/index.vue +45 -45
  25. package/dist/runtime/components/Form/InputSelectMultiple/index.vue +54 -54
  26. package/dist/runtime/components/Form/InputStatic/index.vue +16 -16
  27. package/dist/runtime/components/Form/InputTags/index.vue +145 -145
  28. package/dist/runtime/components/Form/InputText/index.vue +67 -67
  29. package/dist/runtime/components/Form/InputTextarea/index.vue +25 -25
  30. package/dist/runtime/components/Form/InputToggle/index.vue +14 -14
  31. package/dist/runtime/components/Form/InputUploadDropzone/index.vue +206 -206
  32. package/dist/runtime/components/Form/InputUploadDropzone/types.d.ts +1 -1
  33. package/dist/runtime/components/Form/InputUploadDropzoneAuto/index.vue +342 -342
  34. package/dist/runtime/components/Form/InputUploadDropzoneAuto/types.d.ts +1 -1
  35. package/dist/runtime/components/Form/InputUploadDropzoneAutoMultiple/ItemUpload.vue +241 -241
  36. package/dist/runtime/components/Form/InputUploadDropzoneAutoMultiple/ItemView.vue +89 -89
  37. package/dist/runtime/components/Form/InputUploadDropzoneAutoMultiple/index.vue +164 -164
  38. package/dist/runtime/components/Form/InputUploadDropzoneAutoMultiple/types.d.ts +1 -1
  39. package/dist/runtime/components/Form/InputUploadDropzoneImageAutoMultiple/ItemUpload.vue +161 -161
  40. package/dist/runtime/components/Form/InputUploadDropzoneImageAutoMultiple/ItemView.vue +64 -64
  41. package/dist/runtime/components/Form/InputUploadDropzoneImageAutoMultiple/index.vue +172 -172
  42. package/dist/runtime/components/Form/InputUploadDropzoneImageAutoMultiple/types.d.ts +1 -1
  43. package/dist/runtime/components/Form/InputUploadFileClassic/index.vue +95 -95
  44. package/dist/runtime/components/Form/InputUploadFileClassicAuto/index.vue +151 -151
  45. package/dist/runtime/components/Form/InputUploadFileClassicAuto/types.d.ts +1 -1
  46. package/dist/runtime/components/Form/InputUploadImageAuto/index.vue +219 -219
  47. package/dist/runtime/components/Form/InputUploadImageAuto/types.d.ts +1 -1
  48. package/dist/runtime/components/Form/InputWYSIWYG/index.vue +53 -53
  49. package/dist/runtime/components/Form/index.vue +6 -6
  50. package/dist/runtime/components/Icon.vue +23 -23
  51. package/dist/runtime/components/Image.vue +36 -36
  52. package/dist/runtime/components/Loader.vue +27 -27
  53. package/dist/runtime/components/Modal/index.vue +146 -146
  54. package/dist/runtime/components/QRCode.vue +22 -22
  55. package/dist/runtime/components/SimplePagination.vue +96 -96
  56. package/dist/runtime/components/Slideover/index.vue +110 -110
  57. package/dist/runtime/components/Table/Base.vue +139 -139
  58. package/dist/runtime/components/Table/ColumnDate.vue +16 -16
  59. package/dist/runtime/components/Table/ColumnDateTime.vue +18 -18
  60. package/dist/runtime/components/Table/ColumnImage.vue +15 -15
  61. package/dist/runtime/components/Table/ColumnNumber.vue +14 -14
  62. package/dist/runtime/components/Table/ColumnText.vue +25 -25
  63. package/dist/runtime/components/Table/Simple.vue +69 -69
  64. package/dist/runtime/components/Table/index.vue +65 -65
  65. package/dist/runtime/components/Tabs/index.vue +64 -64
  66. package/dist/runtime/components/TeleportSafe.vue +40 -40
  67. package/dist/runtime/composables/loaderList.d.ts +2 -2
  68. package/dist/runtime/composables/{loaderList.js → loaderList.mjs} +2 -2
  69. package/dist/runtime/composables/loaderObject.d.ts +1 -1
  70. package/dist/runtime/composables/{loaderObject.js → loaderObject.mjs} +2 -2
  71. package/dist/runtime/composables/loaderPage.d.ts +1 -1
  72. package/dist/runtime/composables/{loaderPage.js → loaderPage.mjs} +3 -3
  73. package/dist/runtime/composables/useConfig.d.ts +1 -1
  74. package/dist/runtime/composables/useForm.d.ts +1 -1
  75. package/dist/runtime/composables/useTable.d.ts +2 -2
  76. package/dist/runtime/composables/{useTable.js → useTable.mjs} +1 -1
  77. package/dist/runtime/composables/{useUpload.js → useUpload.mjs} +1 -1
  78. package/dist/runtime/helpers/{apiListHelper.js → apiListHelper.mjs} +1 -1
  79. package/dist/runtime/helpers/{apiObjectHelper.js → apiObjectHelper.mjs} +1 -1
  80. package/dist/runtime/helpers/apiPageHelper.d.ts +1 -1
  81. package/dist/runtime/helpers/{apiPageHelper.js → apiPageHelper.mjs} +4 -4
  82. package/dist/runtime/ui.config/index.d.ts +16 -16
  83. package/dist/runtime/ui.config/index.mjs +16 -0
  84. package/dist/runtime/ui.config/{uploadDropzoneImage.js → uploadDropzoneImage.mjs} +1 -1
  85. package/dist/runtime/utils/ArrayHelper.d.ts +1 -1
  86. package/dist/runtime/utils/{ArrayHelper.spec.js → ArrayHelper.spec.mjs} +1 -1
  87. package/dist/runtime/utils/{FileHelper.spec.js → FileHelper.spec.mjs} +1 -1
  88. package/dist/runtime/utils/ObjectHelper.d.ts +2 -2
  89. package/dist/runtime/utils/{ObjectHelper.js → ObjectHelper.mjs} +2 -2
  90. package/dist/runtime/utils/{ObjectHelper.spec.js → ObjectHelper.spec.mjs} +1 -1
  91. package/dist/runtime/utils/ParamHelper.d.ts +1 -1
  92. package/dist/runtime/utils/{ParamHelper.spec.js → ParamHelper.spec.mjs} +1 -1
  93. package/dist/runtime/utils/{StringHelper.spec.js → StringHelper.spec.mjs} +1 -1
  94. package/dist/runtime/utils/{TimeHelper.spec.js → TimeHelper.spec.mjs} +1 -1
  95. package/dist/runtime/utils/{TimeHelper.thai.spec.js → TimeHelper.thai.spec.mjs} +1 -1
  96. package/package.json +92 -96
  97. package/dist/runtime/ui.config/index.js +0 -16
  98. /package/dist/runtime/components/Dropdown/{types.js → types.mjs} +0 -0
  99. /package/dist/runtime/components/FlexDeck/{types.js → types.mjs} +0 -0
  100. /package/dist/runtime/components/Form/InputCheckbox/{types.js → types.mjs} +0 -0
  101. /package/dist/runtime/components/Form/InputDateTime/{date_time_field.types.js → date_time_field.types.mjs} +0 -0
  102. /package/dist/runtime/components/Form/InputDateTimeRange/{date_range_time_field.types.js → date_range_time_field.types.mjs} +0 -0
  103. /package/dist/runtime/components/Form/InputNumber/{types.js → types.mjs} +0 -0
  104. /package/dist/runtime/components/Form/InputRadio/{types.js → types.mjs} +0 -0
  105. /package/dist/runtime/components/Form/InputSelect/{types.js → types.mjs} +0 -0
  106. /package/dist/runtime/components/Form/InputSelectMultiple/{types.js → types.mjs} +0 -0
  107. /package/dist/runtime/components/Form/InputStatic/{types.js → types.mjs} +0 -0
  108. /package/dist/runtime/components/Form/InputTags/{types.js → types.mjs} +0 -0
  109. /package/dist/runtime/components/Form/InputText/{types.js → types.mjs} +0 -0
  110. /package/dist/runtime/components/Form/InputTextarea/{types.js → types.mjs} +0 -0
  111. /package/dist/runtime/components/Form/InputToggle/{types.js → types.mjs} +0 -0
  112. /package/dist/runtime/components/Form/InputUploadDropzone/{types.js → types.mjs} +0 -0
  113. /package/dist/runtime/components/Form/InputUploadDropzoneAuto/{types.js → types.mjs} +0 -0
  114. /package/dist/runtime/components/Form/InputUploadDropzoneAutoMultiple/{types.js → types.mjs} +0 -0
  115. /package/dist/runtime/components/Form/InputUploadDropzoneImageAutoMultiple/{types.js → types.mjs} +0 -0
  116. /package/dist/runtime/components/Form/InputUploadFileClassic/{types.js → types.mjs} +0 -0
  117. /package/dist/runtime/components/Form/InputUploadFileClassicAuto/{types.js → types.mjs} +0 -0
  118. /package/dist/runtime/components/Form/InputUploadImageAuto/{types.js → types.mjs} +0 -0
  119. /package/dist/runtime/components/Form/InputWYSIWYG/{types.js → types.mjs} +0 -0
  120. /package/dist/runtime/components/Form/{types.js → types.mjs} +0 -0
  121. /package/dist/runtime/components/Table/{types.js → types.mjs} +0 -0
  122. /package/dist/runtime/composables/{useApp.js → useApp.mjs} +0 -0
  123. /package/dist/runtime/composables/{useConfig.js → useConfig.mjs} +0 -0
  124. /package/dist/runtime/composables/{useDialog.js → useDialog.mjs} +0 -0
  125. /package/dist/runtime/composables/{useFlexDeck.js → useFlexDeck.mjs} +0 -0
  126. /package/dist/runtime/composables/{useForm.js → useForm.mjs} +0 -0
  127. /package/dist/runtime/composables/{useNotification.js → useNotification.mjs} +0 -0
  128. /package/dist/runtime/composables/{useWatch.js → useWatch.mjs} +0 -0
  129. /package/dist/runtime/{core.config.js → core.config.mjs} +0 -0
  130. /package/dist/runtime/helpers/{componentHelper.js → componentHelper.mjs} +0 -0
  131. /package/dist/runtime/lib/{Requester.js → Requester.mjs} +0 -0
  132. /package/dist/runtime/{plugin.js → plugin.mjs} +0 -0
  133. /package/dist/runtime/{quill.plugin.js → quill.plugin.mjs} +0 -0
  134. /package/dist/runtime/types/{common.js → common.mjs} +0 -0
  135. /package/dist/runtime/types/{config.js → config.mjs} +0 -0
  136. /package/dist/runtime/types/{lib.js → lib.mjs} +0 -0
  137. /package/dist/runtime/ui.config/{alert.js → alert.mjs} +0 -0
  138. /package/dist/runtime/ui.config/{badge.js → badge.mjs} +0 -0
  139. /package/dist/runtime/ui.config/{breadcrumb.js → breadcrumb.mjs} +0 -0
  140. /package/dist/runtime/ui.config/{button.js → button.mjs} +0 -0
  141. /package/dist/runtime/ui.config/{buttonGroup.js → buttonGroup.mjs} +0 -0
  142. /package/dist/runtime/ui.config/{card.js → card.mjs} +0 -0
  143. /package/dist/runtime/ui.config/{checkbox.js → checkbox.mjs} +0 -0
  144. /package/dist/runtime/ui.config/{formGroup.js → formGroup.mjs} +0 -0
  145. /package/dist/runtime/ui.config/{icon.js → icon.mjs} +0 -0
  146. /package/dist/runtime/ui.config/{input.js → input.mjs} +0 -0
  147. /package/dist/runtime/ui.config/{modal.js → modal.mjs} +0 -0
  148. /package/dist/runtime/ui.config/{notification.js → notification.mjs} +0 -0
  149. /package/dist/runtime/ui.config/{pagination.js → pagination.mjs} +0 -0
  150. /package/dist/runtime/ui.config/{select.js → select.mjs} +0 -0
  151. /package/dist/runtime/ui.config/{selectMenu.js → selectMenu.mjs} +0 -0
  152. /package/dist/runtime/ui.config/{slideover.js → slideover.mjs} +0 -0
  153. /package/dist/runtime/ui.config/{table.js → table.mjs} +0 -0
  154. /package/dist/runtime/ui.config/{tabs.js → tabs.mjs} +0 -0
  155. /package/dist/runtime/ui.config/{tags.js → tags.mjs} +0 -0
  156. /package/dist/runtime/ui.config/{textarea.js → textarea.mjs} +0 -0
  157. /package/dist/runtime/ui.config/{toggle.js → toggle.mjs} +0 -0
  158. /package/dist/runtime/ui.config/{uploadFileDropzone.js → uploadFileDropzone.mjs} +0 -0
  159. /package/dist/runtime/ui.config/{uploadFileInputClassicAuto.js → uploadFileInputClassicAuto.mjs} +0 -0
  160. /package/dist/runtime/ui.config/{uploadImage.js → uploadImage.mjs} +0 -0
  161. /package/dist/runtime/utils/{ArrayHelper.js → ArrayHelper.mjs} +0 -0
  162. /package/dist/runtime/utils/{FileHelper.js → FileHelper.mjs} +0 -0
  163. /package/dist/runtime/utils/{ParamHelper.js → ParamHelper.mjs} +0 -0
  164. /package/dist/runtime/utils/{StringHelper.js → StringHelper.mjs} +0 -0
  165. /package/dist/runtime/utils/{TimeHelper.js → TimeHelper.mjs} +0 -0
  166. /package/dist/runtime/utils/{lodash.js → lodash.mjs} +0 -0
package/README.md CHANGED
@@ -1,60 +1,60 @@
1
- # @finema/core Nuxt Module
2
-
3
- [✨  Release Notes](/CHANGELOG.md)
4
-
5
- ## Starter template
6
- https://gitlab.finema.co/finema/nuxt3-template-with-uikit
7
-
8
- ## Remark
9
- - Temporary use resolutions for vue 3.3.13 instead of ^3.4.0 due to [this issue](https://github.com/nuxt/ui/issues/1171) and planned to be fixed in the next vue 3.5 version.
10
-
11
- ## Quick Setup
12
-
13
- 1. Add `@finema/core` dependency to your project
14
-
15
- ```bash
16
- # Using pnpm
17
- pnpm add -D @finema/core
18
-
19
- # Using yarn
20
- yarn add --dev @finema/core
21
-
22
- ```
23
-
24
- 1. Add `@finema/core` to the `modules` section of `nuxt.config.ts`
25
-
26
- ```js
27
- export default defineNuxtConfig({
28
- modules: [
29
- '@finema/core'
30
- ]
31
- })
32
- ```
33
-
34
- That's it! You can now use @finema/core in your Nuxt app ✨
35
-
36
- ## Development
37
-
38
- ```bash
39
- # Install dependencies
40
- pnpm install
41
-
42
- # Generate type stubs
43
- pnpm dev:prepare
44
-
45
- # Develop with the playground
46
- pnpm dev
47
-
48
- # Build the playground
49
- pnpm dev:build
50
-
51
- # Run ESLint
52
- pnpm lint
53
-
54
- # Run Vitest
55
- pnpm test
56
- pnpm test:watch
57
-
58
- # Release new version
59
- pnpm release
60
- ```
1
+ # @finema/core Nuxt Module
2
+
3
+ [✨  Release Notes](/CHANGELOG.md)
4
+
5
+ ## Starter template
6
+ https://gitlab.finema.co/finema/nuxt3-template-with-uikit
7
+
8
+ ## Remark
9
+ - Temporary use resolutions for vue 3.3.13 instead of ^3.4.0 due to [this issue](https://github.com/nuxt/ui/issues/1171) and planned to be fixed in the next vue 3.5 version.
10
+
11
+ ## Quick Setup
12
+
13
+ 1. Add `@finema/core` dependency to your project
14
+
15
+ ```bash
16
+ # Using pnpm
17
+ pnpm add -D @finema/core
18
+
19
+ # Using yarn
20
+ yarn add --dev @finema/core
21
+
22
+ ```
23
+
24
+ 1. Add `@finema/core` to the `modules` section of `nuxt.config.ts`
25
+
26
+ ```js
27
+ export default defineNuxtConfig({
28
+ modules: [
29
+ '@finema/core'
30
+ ]
31
+ })
32
+ ```
33
+
34
+ That's it! You can now use @finema/core in your Nuxt app ✨
35
+
36
+ ## Development
37
+
38
+ ```bash
39
+ # Install dependencies
40
+ pnpm install
41
+
42
+ # Generate type stubs
43
+ pnpm dev:prepare
44
+
45
+ # Develop with the playground
46
+ pnpm dev
47
+
48
+ # Build the playground
49
+ pnpm dev:build
50
+
51
+ # Run ESLint
52
+ pnpm lint
53
+
54
+ # Run Vitest
55
+ pnpm test
56
+ pnpm test:watch
57
+
58
+ # Release new version
59
+ pnpm release
60
+ ```
package/dist/module.json CHANGED
@@ -1,12 +1,8 @@
1
1
  {
2
2
  "name": "@finema/core",
3
- "version": "1.4.151",
3
+ "version": "1.4.153",
4
4
  "configKey": "core",
5
5
  "compatibility": {
6
6
  "nuxt": "^3.7.4"
7
- },
8
- "builder": {
9
- "@nuxt/module-builder": "0.7.0",
10
- "unbuild": "2.0.0"
11
7
  }
12
8
  }
package/dist/module.mjs CHANGED
@@ -1,7 +1,7 @@
1
1
  import { defineNuxtModule, createResolver, installModule, addPlugin, addComponentsDir, addImportsDir } from '@nuxt/kit';
2
2
 
3
3
  const name = "@finema/core";
4
- const version = "1.4.151";
4
+ const version = "1.4.153";
5
5
 
6
6
  const colors = {
7
7
  black: "#20243E",
@@ -18,9 +18,9 @@ const colors = {
18
18
  DEFAULT: "#9095A6",
19
19
  disabled: "#C1C4D0",
20
20
  border: "#E2E4EA",
21
- fill: "#F4F5FA",
22
- 50: "#E0E0E0",
23
- 600: "#616161"
21
+ fill: "#F4F5FA"
22
+ // 50: '#E0E0E0',
23
+ // 600: '#616161',
24
24
  },
25
25
  secondary: {
26
26
  DEFAULT: "#EE8B36",
@@ -227,9 +227,6 @@ const toggle = {
227
227
 
228
228
  const badge = {};
229
229
 
230
- const colorModeOptions = {
231
- preference: "light"
232
- };
233
230
  const veeValidateNuxtOptions = {
234
231
  // disable or enable auto imports
235
232
  autoImports: true,
@@ -340,6 +337,13 @@ const module = defineNuxtModule({
340
337
  nuxt.options.build.transpile.push(runtimeDir);
341
338
  nuxt.options.alias["#core"] = runtimeDir;
342
339
  nuxt.options.css.push(resolve(runtimeDir, "ui.css"));
340
+ await installModule("@nuxt/ui", {
341
+ safelistColors: ["secondary", "success", "info", "danger", "warning"]
342
+ });
343
+ await installModule("nuxt-lodash", {
344
+ prefix: "_",
345
+ upperAfterPrefix: false
346
+ });
343
347
  nuxt.hook("tailwindcss:config", (tailwindConfig) => {
344
348
  tailwindConfig.content = {
345
349
  ...tailwindConfig.content,
@@ -354,38 +358,30 @@ const module = defineNuxtModule({
354
358
  ...tailwindConfig.theme.extend.colors,
355
359
  ...colors
356
360
  };
361
+ nuxt.options.appConfig.ui = _deepMerge(
362
+ {
363
+ table,
364
+ pagination,
365
+ alert,
366
+ button,
367
+ buttonGroup,
368
+ formGroup,
369
+ checkbox,
370
+ input,
371
+ select,
372
+ selectMenu,
373
+ textarea,
374
+ toggle,
375
+ badge,
376
+ icons: {
377
+ dynamic: true
378
+ }
379
+ },
380
+ nuxt.options.appConfig.ui
381
+ );
382
+ nuxt.options.appConfig.ui.strategy = "override";
357
383
  });
358
- await installModule("@nuxt/ui", {
359
- safelistColors: ["secondary", "success", "info", "danger", "warning"]
360
- });
361
- await installModule("nuxt-lodash", {
362
- prefix: "_",
363
- upperAfterPrefix: false
364
- });
365
- nuxt.options.appConfig.ui = _deepMerge(
366
- {
367
- table,
368
- pagination,
369
- alert,
370
- button,
371
- buttonGroup,
372
- formGroup,
373
- checkbox,
374
- input,
375
- select,
376
- selectMenu,
377
- textarea,
378
- toggle,
379
- badge,
380
- icons: {
381
- dynamic: true
382
- }
383
- },
384
- nuxt.options.appConfig.ui
385
- );
386
- nuxt.options.appConfig.ui.strategy = "override";
387
384
  nuxt.options.app = _deepMerge({}, nuxtAppOptions, nuxt.options.app);
388
- nuxt.options.colorMode = _deepMerge({}, colorModeOptions, nuxt.options.colorMode);
389
385
  nuxt.options.devtools = _deepMerge({}, { enabled: true }, nuxt.options.devtools);
390
386
  nuxt.options.runtimeConfig = _deepMerge(
391
387
  {},
@@ -1,48 +1,48 @@
1
- <template>
2
- <UAlert v-bind="$props">
3
- <template #title><slot name="title" :title="title" /></template>
4
- <template #description><slot name="description" :description="description" /></template>
5
- </UAlert>
6
- </template>
7
- <script lang="ts" setup>
8
- import { type PropType } from 'vue'
9
- import { type alert } from '#ui/ui.config'
10
- import type { AlertColor, AlertVariant, Avatar, Button, Strategy } from '#ui/types'
11
-
12
- defineProps({
13
- title: {
14
- type: String,
15
- required: true,
16
- },
17
- description: {
18
- type: String,
19
- default: null,
20
- },
21
- icon: {
22
- type: String,
23
- },
24
- avatar: {
25
- type: Object as PropType<Avatar>,
26
- default: null,
27
- },
28
- closeButton: {
29
- type: Object as PropType<Button>,
30
- },
31
- actions: {
32
- // eslint-disable-next-line @typescript-eslint/ban-types
33
- type: Array as PropType<Array<Button & { click?: Function }>>,
34
- },
35
- color: {
36
- type: String as PropType<AlertColor>,
37
- },
38
- variant: {
39
- type: String as PropType<AlertVariant>,
40
- },
41
- class: {
42
- type: [String, Object, Array] as PropType<any>,
43
- },
44
- ui: {
45
- type: Object as PropType<Partial<typeof alert> & { strategy?: Strategy }>,
46
- },
47
- })
48
- </script>
1
+ <template>
2
+ <UAlert v-bind="$props">
3
+ <template #title><slot name="title" :title="title" /></template>
4
+ <template #description><slot name="description" :description="description" /></template>
5
+ </UAlert>
6
+ </template>
7
+ <script lang="ts" setup>
8
+ import { type PropType } from 'vue'
9
+ import { type alert } from '#ui/ui.config'
10
+ import type { AlertColor, AlertVariant, Avatar, Button, Strategy } from '#ui/types'
11
+
12
+ defineProps({
13
+ title: {
14
+ type: String,
15
+ required: true,
16
+ },
17
+ description: {
18
+ type: String,
19
+ default: null,
20
+ },
21
+ icon: {
22
+ type: String,
23
+ },
24
+ avatar: {
25
+ type: Object as PropType<Avatar>,
26
+ default: null,
27
+ },
28
+ closeButton: {
29
+ type: Object as PropType<Button>,
30
+ },
31
+ actions: {
32
+ // eslint-disable-next-line @typescript-eslint/ban-types
33
+ type: Array as PropType<Array<Button & { click?: Function }>>,
34
+ },
35
+ color: {
36
+ type: String as PropType<AlertColor>,
37
+ },
38
+ variant: {
39
+ type: String as PropType<AlertVariant>,
40
+ },
41
+ class: {
42
+ type: [String, Object, Array] as PropType<any>,
43
+ },
44
+ ui: {
45
+ type: Object as PropType<Partial<typeof alert> & { strategy?: Strategy }>,
46
+ },
47
+ })
48
+ </script>
@@ -1,27 +1,27 @@
1
- <template>
2
- <UAvatar v-bind="$attrs" :src="src" :alt="alt" :size="size" />
3
- </template>
4
-
5
- <script lang="ts" setup>
6
- import type { AvatarSize } from '#ui/types'
7
- import type { PropType } from 'vue'
8
-
9
- defineOptions({
10
- inheritAttrs: true,
11
- })
12
-
13
- defineProps({
14
- src: {
15
- type: String,
16
- required: true,
17
- },
18
- alt: {
19
- type: String,
20
- required: true,
21
- },
22
- size: {
23
- type: String as PropType<AvatarSize>,
24
- default: 'sm',
25
- },
26
- })
27
- </script>
1
+ <template>
2
+ <UAvatar v-bind="$attrs" :src="src" :alt="alt" :size="size" />
3
+ </template>
4
+
5
+ <script lang="ts" setup>
6
+ import type { AvatarSize } from '#ui/types'
7
+ import type { PropType } from 'vue'
8
+
9
+ defineOptions({
10
+ inheritAttrs: true,
11
+ })
12
+
13
+ defineProps({
14
+ src: {
15
+ type: String,
16
+ required: true,
17
+ },
18
+ alt: {
19
+ type: String,
20
+ required: true,
21
+ },
22
+ size: {
23
+ type: String as PropType<AvatarSize>,
24
+ default: 'sm',
25
+ },
26
+ })
27
+ </script>
@@ -1,11 +1,11 @@
1
- <template>
2
- <UBadge v-bind="$props">
3
- <slot />
4
- </UBadge>
5
- </template>
6
-
7
- <script setup lang="ts">
8
- import type { Badge } from '#ui/types/badge'
9
-
10
- defineProps<Badge>()
11
- </script>
1
+ <template>
2
+ <UBadge v-bind="$props">
3
+ <slot />
4
+ </UBadge>
5
+ </template>
6
+
7
+ <script setup lang="ts">
8
+ import type { Badge } from '#ui/types/badge'
9
+
10
+ defineProps<Badge>()
11
+ </script>
@@ -1,44 +1,44 @@
1
- <template>
2
- <UBreadcrumb v-bind="attrs" :class="$props.class" :links="links" :divider="divider" :ui="ui">
3
- <template #default="{ link, isActive, index }">
4
- <slot name="default" :link="link" :is-active="isActive" :index="index" />
5
- </template>
6
-
7
- <template #icon="{ link, index, isActive }">
8
- <slot name="icon" :link="link" :is-active="isActive" :index="index" />
9
- </template>
10
-
11
- <template #divider>
12
- <slot name="divider" />
13
- </template>
14
- </UBreadcrumb>
15
- </template>
16
-
17
- <script setup lang="ts">
18
- import { useUiConfig, type PropType, useUI, toRef } from '#imports'
19
- import { breadcrumb } from '#core/ui.config'
20
- import type { BreadcrumbLink, Strategy } from '#ui/types'
21
-
22
- const config = useUiConfig<typeof breadcrumb>(breadcrumb, 'breadcrumb')
23
-
24
- const props = defineProps({
25
- links: {
26
- type: Array as PropType<BreadcrumbLink[]>,
27
- default: () => [],
28
- },
29
- divider: {
30
- type: String,
31
- default: () => breadcrumb.default.divider,
32
- },
33
- class: {
34
- type: [String, Object, Array] as PropType<any>,
35
- default: () => '',
36
- },
37
- ui: {
38
- type: Object as PropType<Partial<typeof config> & { strategy?: Strategy }>,
39
- default: () => ({}),
40
- },
41
- })
42
-
43
- const { ui, attrs } = useUI('breadcrumb', toRef(props, 'ui'), config, toRef(props, 'class'))
44
- </script>
1
+ <template>
2
+ <UBreadcrumb v-bind="attrs" :class="$props.class" :links="links" :divider="divider" :ui="ui">
3
+ <template #default="{ link, isActive, index }">
4
+ <slot name="default" :link="link" :is-active="isActive" :index="index" />
5
+ </template>
6
+
7
+ <template #icon="{ link, index, isActive }">
8
+ <slot name="icon" :link="link" :is-active="isActive" :index="index" />
9
+ </template>
10
+
11
+ <template #divider>
12
+ <slot name="divider" />
13
+ </template>
14
+ </UBreadcrumb>
15
+ </template>
16
+
17
+ <script setup lang="ts">
18
+ import { useUiConfig, type PropType, useUI, toRef } from '#imports'
19
+ import { breadcrumb } from '#core/ui.config'
20
+ import type { BreadcrumbLink, Strategy } from '#ui/types'
21
+
22
+ const config = useUiConfig<typeof breadcrumb>(breadcrumb, 'breadcrumb')
23
+
24
+ const props = defineProps({
25
+ links: {
26
+ type: Array as PropType<BreadcrumbLink[]>,
27
+ default: () => [],
28
+ },
29
+ divider: {
30
+ type: String,
31
+ default: () => breadcrumb.default.divider,
32
+ },
33
+ class: {
34
+ type: [String, Object, Array] as PropType<any>,
35
+ default: () => '',
36
+ },
37
+ ui: {
38
+ type: Object as PropType<Partial<typeof config> & { strategy?: Strategy }>,
39
+ default: () => ({}),
40
+ },
41
+ })
42
+
43
+ const { ui, attrs } = useUI('breadcrumb', toRef(props, 'ui'), config, toRef(props, 'class'))
44
+ </script>
@@ -1,37 +1,37 @@
1
- <template>
2
- <UButtonGroup v-bind="$props">
3
- <slot />
4
- </UButtonGroup>
5
- </template>
6
-
7
- <script lang="ts" setup>
8
- import type { PropType } from 'vue'
9
- import type { ButtonSize } from '#ui/types/button'
10
- import { button, type buttonGroup } from '#ui/ui.config'
11
- import type { Strategy } from '#ui/types'
12
-
13
- defineProps({
14
- size: {
15
- type: String as PropType<ButtonSize>,
16
- default: () => button.default.size,
17
- validator(value: string) {
18
- return Object.keys(button.size).includes(value)
19
- },
20
- },
21
- orientation: {
22
- type: String as PropType<'horizontal' | 'vertical'>,
23
- default: 'horizontal',
24
- validator(value: string) {
25
- return ['horizontal', 'vertical'].includes(value)
26
- },
27
- },
28
- class: {
29
- type: [String, Object, Array] as PropType<any>,
30
- default: undefined,
31
- },
32
- ui: {
33
- type: Object as PropType<Partial<typeof buttonGroup> & { strategy?: Strategy }>,
34
- default: undefined,
35
- },
36
- })
37
- </script>
1
+ <template>
2
+ <UButtonGroup v-bind="$props">
3
+ <slot />
4
+ </UButtonGroup>
5
+ </template>
6
+
7
+ <script lang="ts" setup>
8
+ import type { PropType } from 'vue'
9
+ import type { ButtonSize } from '#ui/types/button'
10
+ import { button, type buttonGroup } from '#ui/ui.config'
11
+ import type { Strategy } from '#ui/types'
12
+
13
+ defineProps({
14
+ size: {
15
+ type: String as PropType<ButtonSize>,
16
+ default: () => button.default.size,
17
+ validator(value: string) {
18
+ return Object.keys(button.size).includes(value)
19
+ },
20
+ },
21
+ orientation: {
22
+ type: String as PropType<'horizontal' | 'vertical'>,
23
+ default: 'horizontal',
24
+ validator(value: string) {
25
+ return ['horizontal', 'vertical'].includes(value)
26
+ },
27
+ },
28
+ class: {
29
+ type: [String, Object, Array] as PropType<any>,
30
+ default: undefined,
31
+ },
32
+ ui: {
33
+ type: Object as PropType<Partial<typeof buttonGroup> & { strategy?: Strategy }>,
34
+ default: undefined,
35
+ },
36
+ })
37
+ </script>