@aziontech/webkit 1.2.0 → 1.4.0

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 (41) hide show
  1. package/.releaserc +61 -0
  2. package/CHANGELOG.md +93 -0
  3. package/package.json +3 -36
  4. package/src/components/azion-system-status/azion-system-status.vue +0 -1
  5. package/src/components/azion-system-status/azion-system-status.vue.d.ts.map +1 -1
  6. package/src/core/form/field-auto-complete/field-auto-complete.vue +48 -45
  7. package/src/core/form/field-auto-complete/field-auto-complete.vue.d.ts.map +1 -1
  8. package/src/core/form/field-dropdown/field-dropdown.vue +68 -65
  9. package/src/core/form/field-dropdown/field-dropdown.vue.d.ts.map +1 -1
  10. package/src/core/form/field-dropdown-icon/field-dropdown-icon.vue +49 -46
  11. package/src/core/form/field-dropdown-icon/field-dropdown-icon.vue.d.ts.map +1 -1
  12. package/src/core/form/field-dropdown-lazy-loader/field-dropdown-lazy-loader.vue +116 -113
  13. package/src/core/form/field-dropdown-lazy-loader/field-dropdown-lazy-loader.vue.d.ts.map +1 -1
  14. package/src/core/form/field-dropdown-lazy-loader-dynamic/field-dropdown-lazy-loader-dynamic.vue +93 -90
  15. package/src/core/form/field-dropdown-lazy-loader-dynamic/field-dropdown-lazy-loader-dynamic.vue.d.ts.map +1 -1
  16. package/src/core/form/field-dropdown-lazy-loader-with-filter/field-dropdown-lazy-loader-with-filter.vue +111 -108
  17. package/src/core/form/field-dropdown-lazy-loader-with-filter/field-dropdown-lazy-loader-with-filter.vue.d.ts.map +1 -1
  18. package/src/core/form/field-dropdown-multi-select-lazy-loader/field-dropdown-multi-select-lazy-loader.vue +92 -89
  19. package/src/core/form/field-dropdown-multi-select-lazy-loader/field-dropdown-multi-select-lazy-loader.vue.d.ts.map +1 -1
  20. package/src/core/form/field-input-group/field-input-group.vue +44 -41
  21. package/src/core/form/field-input-group/field-input-group.vue.d.ts.map +1 -1
  22. package/src/core/form/field-multi-select/field-multi-select.vue +2 -2
  23. package/src/core/form/field-number/field-number.vue +46 -43
  24. package/src/core/form/field-number/field-number.vue.d.ts.map +1 -1
  25. package/src/core/form/field-phone-number/field-phone-number.vue +2 -2
  26. package/src/core/form/field-text/field-text.vue +43 -40
  27. package/src/core/form/field-text/field-text.vue.d.ts.map +1 -1
  28. package/src/core/form/field-text-area/field-text-area.vue +61 -58
  29. package/src/core/form/field-text-area/field-text-area.vue.d.ts.map +1 -1
  30. package/src/core/form/field-text-icon/field-text-icon.vue +48 -42
  31. package/src/core/form/field-text-icon/field-text-icon.vue.d.ts.map +1 -1
  32. package/src/core/form/field-text-password/field-text-password.vue +42 -39
  33. package/src/core/form/field-text-password/field-text-password.vue.d.ts.map +1 -1
  34. package/src/core/form/field-text-privacy/field-text-privacy.vue +132 -129
  35. package/src/core/form/field-text-privacy/field-text-privacy.vue.d.ts.map +1 -1
  36. package/src/core/form/slots/input-slot/input-slot.vue +8 -0
  37. package/src/core/form/slots/input-slot/input-slot.vue.d.ts +11 -0
  38. package/src/core/form/slots/input-slot/input-slot.vue.d.ts.map +1 -0
  39. package/src/core/form/slots/input-slot/package.json +11 -0
  40. package/tsconfig.json +23 -0
  41. package/tsconfig.tsbuildinfo +1 -0
package/.releaserc ADDED
@@ -0,0 +1,61 @@
1
+ {
2
+ "branches": ["main"],
3
+ "tagFormat": "@aziontech/webkit@${version}",
4
+ "plugins": [
5
+ [
6
+ "@semantic-release/commit-analyzer",
7
+ {
8
+ "preset": "conventionalcommits",
9
+ "parserOpts": {
10
+ "headerPattern": "^(\\[\\w+-\\d+\\]\\s+)?(\\w+):\\s(.*)$",
11
+ "headerCorrespondence": ["ticket", "type", "subject"]
12
+ },
13
+ "releaseRules": [
14
+ { "type": "feat", "release": "minor" },
15
+ { "type": "fix", "release": "patch" },
16
+ { "type": "hotfix", "release": "patch" }
17
+ ]
18
+ }
19
+ ],
20
+ [
21
+ "@semantic-release/release-notes-generator",
22
+ {
23
+ "preset": "conventionalcommits",
24
+ "parserOpts": {
25
+ "headerPattern": "^(\\[\\w+-\\d+\\]\\s+)?(\\w+):\\s(.*)$",
26
+ "headerCorrespondence": ["ticket", "type", "subject"]
27
+ }
28
+ }
29
+ ],
30
+ "@semantic-release/changelog",
31
+ [
32
+ "@semantic-release/npm",
33
+ {
34
+ "npmPublish": false
35
+ }
36
+ ],
37
+ [
38
+ "@semantic-release/exec",
39
+ {
40
+ "prepareCmd": "vue-tsc --declaration --emitDeclarationOnly",
41
+ "publishCmd": "npm publish . --provenance --access public"
42
+ }
43
+ ],
44
+ [
45
+ "@semantic-release/git",
46
+ {
47
+ "assets": [
48
+ "package.json",
49
+ "CHANGELOG.md"
50
+ ],
51
+ "message": "chore(release): @aziontech/webkit ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"
52
+ }
53
+ ],
54
+ [
55
+ "@semantic-release/github",
56
+ {
57
+ "labels": false
58
+ }
59
+ ]
60
+ ]
61
+ }
package/CHANGELOG.md ADDED
@@ -0,0 +1,93 @@
1
+ ## [1.4.0](https://github.com/aziontech/webkit/compare/@aziontech/webkit@1.3.0...@aziontech/webkit@1.4.0) (2026-03-17)
2
+
3
+
4
+ ### Features
5
+
6
+ * add theme ([2b41a6d](https://github.com/aziontech/webkit/commit/2b41a6d9a00886ac77434cd271e44d83d0cdacff))
7
+ * adjust workflow ([cb67f25](https://github.com/aziontech/webkit/commit/cb67f252db65092325f881c0c800f60d7c125514))
8
+
9
+
10
+ ### Bug Fixes
11
+
12
+ * .releaserc of @aziontech/theme ([d71b3e3](https://github.com/aziontech/webkit/commit/d71b3e3846de4fe26c23641596f84ee22f991a9e))
13
+ * @aziontech/theme export ([e2a9170](https://github.com/aziontech/webkit/commit/e2a9170c7c6834a0e5474e005230de197db3dcdc))
14
+ * adding documentation theme ([bec0490](https://github.com/aziontech/webkit/commit/bec04901f809ac385503ce2f0eb3b1c15e583293))
15
+ * code review ([c2fb899](https://github.com/aziontech/webkit/commit/c2fb89959c50b3a2e1e80346d47714e2730d44fc))
16
+ * prevent GitHub Actions loop in theme package publish workflow ([5bdc561](https://github.com/aziontech/webkit/commit/5bdc561ee9067301b9252299c8a0f221b14c6c77))
17
+ * prevent GitHub Actions loop in webkit package publish workflow ([cd3db78](https://github.com/aziontech/webkit/commit/cd3db78a2f328eedf24078fb6219e4cce158f8be))
18
+ * remove dist from npm script of from theme repo ([9dd3205](https://github.com/aziontech/webkit/commit/9dd3205a8a2531ef4879271ea68d0b6664776b70))
19
+ * remove npm publish from theme package.json ([640ce7f](https://github.com/aziontech/webkit/commit/640ce7f4fc59b9c22c93f0df20c81a1b44a1d0a5))
20
+ * remove resolution and storybook ([f19b4f6](https://github.com/aziontech/webkit/commit/f19b4f6e3c07ca8994c1e9dde4bf6013f23216d7))
21
+ * theme exporting, packagejson["files"] updated ([3fc7359](https://github.com/aziontech/webkit/commit/3fc7359a43a2085e519bef167cc4f24f4b7d61fa))
22
+ * update documentation to trigger deploy ([6fb4680](https://github.com/aziontech/webkit/commit/6fb46804be7c176547f4f95fa2d745bad945a9dc))
23
+
24
+ ## [1.3.0](https://github.com/aziontech/webkit/compare/@aziontech/webkit@1.2.0...@aziontech/webkit@1.3.0) (2026-03-17)
25
+
26
+
27
+ ### Features
28
+
29
+ * storybook azion deploy ([6b2af1d](https://github.com/aziontech/webkit/commit/6b2af1dc0f7a912458a12d1cb870b370a56c3279))
30
+
31
+
32
+ ### Bug Fixes
33
+
34
+ * adding InputSlot to field-dropdown-lazy-loader-with-filter.vue ([4a4060b](https://github.com/aziontech/webkit/commit/4a4060b93908b3530299ba4e66e4c3aa911c039a))
35
+ * input space between label, input and descriptions ([594b601](https://github.com/aziontech/webkit/commit/594b601f2c0d7b0eebd30455f20e8db58ebdad97))
36
+ * input space between label, input and descriptions ([45c58a9](https://github.com/aziontech/webkit/commit/45c58a9d58de20cf4c9ee8c5a0352f419af48038))
37
+ * review exatly props .vue files to stories ([21ba95f](https://github.com/aziontech/webkit/commit/21ba95ff379831afb7db1e0c09952fc48ca80e54))
38
+
39
+ ## [1.2.0](https://github.com/aziontech/webkit/compare/@aziontech/webkit@1.1.0...@aziontech/webkit@1.2.0) (2026-03-12)
40
+
41
+
42
+ ### Features
43
+
44
+ * adding button azion system status ([a2cd287](https://github.com/aziontech/webkit/commit/a2cd287eea8c8a695d3e1b744b0ba729e082d2c7))
45
+
46
+
47
+ ### Bug Fixes
48
+
49
+ * publish trigger to npm publish ([fc2ae3c](https://github.com/aziontech/webkit/commit/fc2ae3cf3793a92e2045bdd80a4b5e2f1c94543e))
50
+
51
+ ## [1.1.0](https://github.com/aziontech/webkit/compare/@aziontech/webkit@1.0.1...@aziontech/webkit@1.1.0) (2026-03-12)
52
+
53
+
54
+ ### Features
55
+
56
+ * adding | core -> form -> field text privacy ([eaf5927](https://github.com/aziontech/webkit/commit/eaf59270ad78723388053c6cd24990bced57d8f7))
57
+
58
+ ## [1.0.1](https://github.com/aziontech/webkit/compare/@aziontech/webkit@1.0.0...@aziontech/webkit@1.0.1) (2026-03-12)
59
+
60
+
61
+ ### Bug Fixes
62
+
63
+ * add docs, trigger publish to use semantic release ([f24ca8f](https://github.com/aziontech/webkit/commit/f24ca8f6c459d201fb2d6bfd53bcedfe1b1abc3b))
64
+
65
+ ## 1.0.0 (2026-03-12)
66
+
67
+
68
+ ### Features
69
+
70
+ * @aziontech/webkit adding form inputs ([5b5eaf4](https://github.com/aziontech/webkit/commit/5b5eaf4aadb9e9f0695083b0a43295bc5e3f6c38))
71
+ * adding app/icons-gallery ([4ebf60f](https://github.com/aziontech/webkit/commit/4ebf60f5185694a17b920d350483f2a27d41c198))
72
+ * exporting all the form fields ([7316086](https://github.com/aziontech/webkit/commit/731608696ac0b179abbe61fa13097f386b815e5a))
73
+ * icons gallery cicd deploy to azion ([d5b538e](https://github.com/aziontech/webkit/commit/d5b538e597bff54fe587adb9f7e63408c31f97f3))
74
+ * icons gallery deploy to azion ([fe60b25](https://github.com/aziontech/webkit/commit/fe60b25fa0273376ee71ec922826c793a35553ac))
75
+ * migrating azion-theme to @aziontech/theme ([bf89e8d](https://github.com/aziontech/webkit/commit/bf89e8db5decf18e5b0e4bec5b7b918970532a8a))
76
+
77
+
78
+ ### Bug Fixes
79
+
80
+ * @aziontech/icons development mode export ([bbb28fb](https://github.com/aziontech/webkit/commit/bbb28fb8d98c4027427113b072c46b8c6ebd1d01))
81
+ * @aziontech/icons step 7 documentation ([1e623c0](https://github.com/aziontech/webkit/commit/1e623c0cacf66b830e5a6e021aed20caae08ca51))
82
+ * 9/10 vulnerabilities fixed ([ca4e9a6](https://github.com/aziontech/webkit/commit/ca4e9a6296a36d956f762cc675756e8e050d4768))
83
+ * ai-ask-azion added ([8e4343f](https://github.com/aziontech/webkit/commit/8e4343fc86fd2e55c9f0a63f0fc565b9836c4caf))
84
+ * catalog.json generated to be consumed by icons-gallery ([6ee87fa](https://github.com/aziontech/webkit/commit/6ee87fa08fbb8c1aa06b4b977d69c05e265bbe5a))
85
+ * format code, icons-gallery using exported @aziontech/icons/catalog.json ([431ef0f](https://github.com/aziontech/webkit/commit/431ef0f25ae13be3d24d6510a76b29baf1b3b49b))
86
+ * icons gallery cicd building @aziontech/icons ([17c9903](https://github.com/aziontech/webkit/commit/17c990308afa73fb8c04a10b428423bf3a76a9fb))
87
+ * packages/icons/.releaserc ([27b477b](https://github.com/aziontech/webkit/commit/27b477bf982d4fbf614edd977cb178c1513a6bfc))
88
+ * remove npm token, using only iodc to test ([1fccb01](https://github.com/aziontech/webkit/commit/1fccb01c3363e37d116deedeb59ccfc714b60c04))
89
+ * rollback of ai-ask-azion icon deletion ([cf7b46e](https://github.com/aziontech/webkit/commit/cf7b46e5c15c67d50d18d00821b41990fb075baa))
90
+ * semanctic release prepareCmd adjust cmd ([d42161f](https://github.com/aziontech/webkit/commit/d42161f717d1b8a2d78b790737a7fe27f31922a8))
91
+ * sync with new dev azionconsole fix ([63c6d8e](https://github.com/aziontech/webkit/commit/63c6d8e228fd5b0c7c84fecc4a8a53e92dc1c49d))
92
+ * trigger build ([7d50ce5](https://github.com/aziontech/webkit/commit/7d50ce5ee49fce84075fbf3f075410d5da5017bc))
93
+ * trigger cicd @aziontech/icons ([08b20a5](https://github.com/aziontech/webkit/commit/08b20a55acf26da5f0a5731019ef6ed8277e6a31))
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aziontech/webkit",
3
- "version": "1.2.0",
3
+ "version": "1.4.0",
4
4
  "description": "Reusable UI components and design system utilities for building Azion web interfaces.",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -22,7 +22,8 @@
22
22
  "dependencies": {
23
23
  "primevue": "3.35.0",
24
24
  "vee-validate": "^4.15.1",
25
- "vue-tsc": "^3.2.5"
25
+ "vue-tsc": "^3.2.5",
26
+ "@vueuse/core": "^10.11.1"
26
27
  },
27
28
  "devDependencies": {
28
29
  "@semantic-release/changelog": "^6.0.3",
@@ -34,39 +35,5 @@
34
35
  "@semantic-release/release-notes-generator": "^12.1.0",
35
36
  "conventional-changelog-conventionalcommits": "^7.0.0",
36
37
  "semantic-release": "^23.0.0"
37
- },
38
- "files": [
39
- "src",
40
- "package.json"
41
- ],
42
- "exports": {
43
- "./field-auto-complete": "./src/core/form/field-auto-complete/field-auto-complete.vue",
44
- "./field-checkbox-block": "./src/core/form/field-checkbox-block/field-checkbox-block.vue",
45
- "./field-dropdown": "./src/core/form/field-dropdown/field-dropdown.vue",
46
- "./field-dropdown-icon": "./src/core/form/field-dropdown-icon/field-dropdown-icon.vue",
47
- "./field-dropdown-lazy-loader": "./src/core/form/field-dropdown-lazy-loader/field-dropdown-lazy-loader.vue",
48
- "./field-dropdown-lazy-loader-dynamic": "./src/core/form/field-dropdown-lazy-loader-dynamic/field-dropdown-lazy-loader-dynamic.vue",
49
- "./field-dropdown-lazy-loader-with-filter": "./src/core/form/field-dropdown-lazy-loader-with-filter/field-dropdown-lazy-loader-with-filter.vue",
50
- "./field-dropdown-multi-select-lazy-loader": "./src/core/form/field-dropdown-multi-select-lazy-loader/field-dropdown-multi-select-lazy-loader.vue",
51
- "./field-group-checkbox": "./src/core/form/field-group-checkbox/field-group-checkbox.vue",
52
- "./field-group-radio": "./src/core/form/field-group-radio/field-group-radio.vue",
53
- "./field-group-switch": "./src/core/form/field-group-switch/field-group-switch.vue",
54
- "./field-input-group": "./src/core/form/field-input-group/field-input-group.vue",
55
- "./field-multi-select": "./src/core/form/field-multi-select/field-multi-select.vue",
56
- "./field-number": "./src/core/form/field-number/field-number.vue",
57
- "./field-phone-number": "./src/core/form/field-phone-number/field-phone-number.vue",
58
- "./field-phone-number-country": "./src/core/form/field-phone-number-country/field-phone-number-country.vue",
59
- "./field-pick-list": "./src/core/form/field-pick-list/field-pick-list.vue",
60
- "./field-radio-block": "./src/core/form/field-radio-block/field-radio-block.vue",
61
- "./field-switch": "./src/core/form/field-switch/field-switch.vue",
62
- "./field-switch-block": "./src/core/form/field-switch-block/field-switch-block.vue",
63
- "./field-text": "./src/core/form/field-text/field-text.vue",
64
- "./field-text-area": "./src/core/form/field-text-area/field-text-area.vue",
65
- "./field-text-icon": "./src/core/form/field-text-icon/field-text-icon.vue",
66
- "./field-text-password": "./src/core/form/field-text-password/field-text-password.vue",
67
- "./field-text-privacy": "./src/core/form/field-text-privacy/field-text-privacy.vue",
68
- "./label": "./src/core/form/label/label.vue",
69
- "./selector-block": "./src/core/selector-block/selector-block.vue",
70
- "./azion-system-status": "./src/components/azion-system-status/azion-system-status.vue"
71
38
  }
72
39
  }
@@ -1,5 +1,4 @@
1
1
  <script setup>
2
- // azion system status button
3
2
  import PrimeButton from 'primevue/button'
4
3
  import { ref, computed, onMounted } from 'vue'
5
4
 
@@ -1 +1 @@
1
- {"version":3,"file":"azion-system-status.vue.d.ts","sourceRoot":"","sources":["azion-system-status.vue"],"names":[],"mappings":"wBA0SqB,OAAO,YAAY;;AAFxC,0SACG"}
1
+ {"version":3,"file":"azion-system-status.vue.d.ts","sourceRoot":"","sources":["azion-system-status.vue"],"names":[],"mappings":"wBAwSqB,OAAO,YAAY;;AAFxC,0SACG"}
@@ -2,6 +2,7 @@
2
2
  import { ref, toRef } from 'vue'
3
3
  import { useField } from 'vee-validate'
4
4
  import AutoComplete from 'primevue/autocomplete'
5
+ import InputSlot from '../slots/input-slot'
5
6
 
6
7
  const props = defineProps({
7
8
  value: {
@@ -67,55 +68,57 @@
67
68
  </script>
68
69
 
69
70
  <template>
70
- <label
71
- :for="props.name"
72
- class="text-color text-base font-medium leading-5"
73
- >
74
- {{ props.label }}
75
- </label>
71
+ <InputSlot>
72
+ <label
73
+ :for="props.name"
74
+ class="text-color text-base font-medium leading-5"
75
+ >
76
+ {{ props.label }}
77
+ </label>
76
78
 
77
- <div
78
- class="p-inputgroup h-fit"
79
- :class="{ 'border border-red-500 rounded-md surface-border': errorMessage }"
80
- >
81
79
  <div
82
- class="p-inputgroup-addon"
83
- :class="{ 'opacity-20': props.disabled }"
80
+ class="p-inputgroup h-fit"
81
+ :class="{ 'border border-red-500 rounded-md surface-border': errorMessage }"
84
82
  >
85
- <i
86
- v-if="props.icon"
87
- :class="props.icon"
88
- class="text-color-secondary"
83
+ <div
84
+ class="p-inputgroup-addon"
85
+ :class="{ 'opacity-20': props.disabled }"
86
+ >
87
+ <i
88
+ v-if="props.icon"
89
+ :class="props.icon"
90
+ class="text-color-secondary"
91
+ />
92
+ </div>
93
+ <AutoComplete
94
+ ref="autoCompleteRef"
95
+ :readonly="props.readonly"
96
+ class="w-full"
97
+ :placeholder="props.placeholder"
98
+ :id="props.name"
99
+ :name="props.name"
100
+ v-model="inputValue"
101
+ :suggestions="props.suggestions"
102
+ @complete="props.onComplete"
103
+ :disabled="props.disabled"
104
+ :completeOnFocus="props.completeOnFocus"
105
+ @input="handleChange"
106
+ @blur="handleBlur"
107
+ v-bind="$attrs"
89
108
  />
90
109
  </div>
91
- <AutoComplete
92
- ref="autoCompleteRef"
93
- :readonly="props.readonly"
94
- class="w-full"
95
- :placeholder="props.placeholder"
96
- :id="props.name"
97
- :name="props.name"
98
- v-model="inputValue"
99
- :suggestions="props.suggestions"
100
- @complete="props.onComplete"
101
- :disabled="props.disabled"
102
- :completeOnFocus="props.completeOnFocus"
103
- @input="handleChange"
104
- @blur="handleBlur"
105
- v-bind="$attrs"
106
- />
107
- </div>
108
110
 
109
- <small
110
- v-if="errorMessage"
111
- class="p-error text-xs font-normal leading-tight"
112
- >
113
- {{ errorMessage }}
114
- </small>
115
- <small
116
- class="text-xs text-color-secondary font-normal leading-5"
117
- v-if="props.description"
118
- >
119
- {{ props.description }}
120
- </small>
111
+ <small
112
+ v-if="errorMessage"
113
+ class="p-error text-xs font-normal leading-tight"
114
+ >
115
+ {{ errorMessage }}
116
+ </small>
117
+ <small
118
+ class="text-xs text-color-secondary font-normal leading-5"
119
+ v-if="props.description"
120
+ >
121
+ {{ props.description }}
122
+ </small>
123
+ </InputSlot>
121
124
  </template>
@@ -1 +1 @@
1
- {"version":3,"file":"field-auto-complete.vue.d.ts","sourceRoot":"","sources":["field-auto-complete.vue"],"names":[],"mappings":"wBA+WqB,OAAO,YAAY;;AAjDxC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6EAgDG"}
1
+ {"version":3,"file":"field-auto-complete.vue.d.ts","sourceRoot":"","sources":["field-auto-complete.vue"],"names":[],"mappings":"wBAmYqB,OAAO,YAAY;;AAjDxC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6EAgDG"}
@@ -2,7 +2,8 @@
2
2
  import Dropdown from 'primevue/dropdown'
3
3
  import { useField } from 'vee-validate'
4
4
  import { computed, toRef, useSlots, useAttrs } from 'vue'
5
- import LabelBlock from '../label'
5
+ import Label from '../label'
6
+ import InputSlot from '../slots/input-slot'
6
7
 
7
8
  const props = defineProps({
8
9
  value: {
@@ -172,69 +173,71 @@
172
173
  </script>
173
174
 
174
175
  <template>
175
- <LabelBlock
176
- :for="props.name"
177
- :label="props.label"
178
- :isRequired="$attrs.required"
179
- :data-testid="customTestId.label"
180
- v-if="props.label"
181
- />
182
- <Dropdown
183
- :dropdown-icon="isDisabledIcon"
184
- :editable="props.editable"
185
- appendTo="self"
186
- :id="name"
187
- :name="props.name"
188
- :loading="props.loading"
189
- v-model="inputValue"
190
- :options="props.options"
191
- :optionLabel="props.optionLabel"
192
- :optionDisabled="props.optionDisabled"
193
- :filter="props.filter"
194
- :optionValue="props.optionValue"
195
- :optionGroupLabel="props.optionGroupLabel"
196
- :optionGroupChildren="props.optionGroupChildren"
197
- :placeholder="props.placeholder"
198
- :autoFilterFocus="props.filter"
199
- :emptyMessage="props.emptyMessage"
200
- :emptyFilterMessage="props.emptyFilterMessage"
201
- @change="emitChange"
202
- @blur="emitBlur"
203
- :class="{ 'p-invalid': aditionalError || errorMessage }"
204
- v-bind="$attrs"
205
- :disabled="props.disabled"
206
- class="w-full"
207
- :pt="passThrough"
208
- :data-testid="customTestId.dropdown"
209
- >
210
- <template
211
- v-if="enableCustomLabel"
212
- #value="slotProps"
176
+ <InputSlot>
177
+ <Label
178
+ :for="props.name"
179
+ :label="props.label"
180
+ :isRequired="$attrs.required"
181
+ :data-testid="customTestId.label"
182
+ v-if="props.label"
183
+ />
184
+ <Dropdown
185
+ :dropdown-icon="isDisabledIcon"
186
+ :editable="props.editable"
187
+ appendTo="self"
188
+ :id="name"
189
+ :name="props.name"
190
+ :loading="props.loading"
191
+ v-model="inputValue"
192
+ :options="props.options"
193
+ :optionLabel="props.optionLabel"
194
+ :optionDisabled="props.optionDisabled"
195
+ :filter="props.filter"
196
+ :optionValue="props.optionValue"
197
+ :optionGroupLabel="props.optionGroupLabel"
198
+ :optionGroupChildren="props.optionGroupChildren"
199
+ :placeholder="props.placeholder"
200
+ :autoFilterFocus="props.filter"
201
+ :emptyMessage="props.emptyMessage"
202
+ :emptyFilterMessage="props.emptyFilterMessage"
203
+ @change="emitChange"
204
+ @blur="emitBlur"
205
+ :class="{ 'p-invalid': aditionalError || errorMessage }"
206
+ v-bind="$attrs"
207
+ :disabled="props.disabled"
208
+ class="w-full"
209
+ :pt="passThrough"
210
+ :data-testid="customTestId.dropdown"
213
211
  >
214
- <span :data-testid="customTestId.value">
215
- {{ getLabelBySelectedValue(slotProps.value) }}
216
- </span>
217
- </template>
218
-
219
- <template #footer>
220
- <slot name="footer" />
221
- </template>
222
- </Dropdown>
223
-
224
- <small
225
- v-if="aditionalError || errorMessage"
226
- :data-testid="customTestId.error"
227
- class="p-error text-xs font-normal leading-tight"
228
- >
229
- {{ aditionalError || errorMessage }}
230
- </small>
231
- <small
232
- class="text-xs text-color-secondary font-normal leading-5"
233
- :data-testid="customTestId.description"
234
- v-if="props.description || hasDescriptionSlot"
235
- >
236
- <slot name="description">
237
- {{ props.description }}
238
- </slot>
239
- </small>
212
+ <template
213
+ v-if="enableCustomLabel"
214
+ #value="slotProps"
215
+ >
216
+ <span :data-testid="customTestId.value">
217
+ {{ getLabelBySelectedValue(slotProps.value) }}
218
+ </span>
219
+ </template>
220
+
221
+ <template #footer>
222
+ <slot name="footer" />
223
+ </template>
224
+ </Dropdown>
225
+
226
+ <small
227
+ v-if="aditionalError || errorMessage"
228
+ :data-testid="customTestId.error"
229
+ class="p-error text-xs font-normal leading-tight"
230
+ >
231
+ {{ aditionalError || errorMessage }}
232
+ </small>
233
+ <small
234
+ class="text-xs text-color-secondary font-normal leading-5"
235
+ :data-testid="customTestId.description"
236
+ v-if="props.description || hasDescriptionSlot"
237
+ >
238
+ <slot name="description">
239
+ {{ props.description }}
240
+ </slot>
241
+ </small>
242
+ </InputSlot>
240
243
  </template>
@@ -1 +1 @@
1
- {"version":3,"file":"field-dropdown.vue.d.ts","sourceRoot":"","sources":["field-dropdown.vue"],"names":[],"mappings":"wBA+pBqB,OAAO,YAAY;;AADxC,4BAA2B,eAAe,CAAC,OAAO,UAAU,EAAE,WAAW,CAAC,CAAC;qBAEtD,CAAC,EAAE,CAAC;;;AAvFzB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6EAoFG"}
1
+ {"version":3,"file":"field-dropdown.vue.d.ts","sourceRoot":"","sources":["field-dropdown.vue"],"names":[],"mappings":"wBAmrBqB,OAAO,YAAY;;AADxC,4BAA2B,eAAe,CAAC,OAAO,UAAU,EAAE,WAAW,CAAC,CAAC;qBAEtD,CAAC,EAAE,CAAC;;;AAvFzB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6EAoFG"}
@@ -2,6 +2,7 @@
2
2
  import { ref, toRef } from 'vue'
3
3
  import { useField } from 'vee-validate'
4
4
  import Dropdown from 'primevue/dropdown'
5
+ import InputSlot from '../slots/input-slot'
5
6
 
6
7
  const emit = defineEmits(['onChange'])
7
8
 
@@ -74,56 +75,58 @@
74
75
  </script>
75
76
 
76
77
  <template>
77
- <label
78
- :for="props.name"
79
- class="text-color text-base font-medium leading-5"
80
- >
81
- {{ props.label }}
82
- </label>
78
+ <InputSlot>
79
+ <label
80
+ :for="props.name"
81
+ class="text-color text-base font-medium leading-5"
82
+ >
83
+ {{ props.label }}
84
+ </label>
83
85
 
84
- <div
85
- class="p-inputgroup h-fit"
86
- :class="{ 'border border-red-500 rounded-md surface-border': errorMessage }"
87
- >
88
86
  <div
89
- class="p-inputgroup-addon"
90
- :class="{ 'opacity-20': props.disabled }"
87
+ class="p-inputgroup h-fit"
88
+ :class="{ 'border border-red-500 rounded-md surface-border': errorMessage }"
91
89
  >
92
- <i
93
- v-if="props.icon"
94
- :class="props.icon"
95
- class="text-color-secondary"
90
+ <div
91
+ class="p-inputgroup-addon"
92
+ :class="{ 'opacity-20': props.disabled }"
93
+ >
94
+ <i
95
+ v-if="props.icon"
96
+ :class="props.icon"
97
+ class="text-color-secondary"
98
+ />
99
+ </div>
100
+ <Dropdown
101
+ ref="autoCompleteRef"
102
+ :readonly="props.readonly"
103
+ class="w-full"
104
+ :placeholder="props.placeholder"
105
+ :id="props.name"
106
+ :name="props.name"
107
+ v-model="inputValue"
108
+ :suggestions="props.suggestions"
109
+ @complete="props.onComplete"
110
+ :disabled="props.disabled"
111
+ :completeOnFocus="props.completeOnFocus"
112
+ @input="handleChange"
113
+ @blur="handleBlur"
114
+ v-bind="$attrs"
115
+ @change="handleChangeEvent"
96
116
  />
97
117
  </div>
98
- <Dropdown
99
- ref="autoCompleteRef"
100
- :readonly="props.readonly"
101
- class="w-full"
102
- :placeholder="props.placeholder"
103
- :id="props.name"
104
- :name="props.name"
105
- v-model="inputValue"
106
- :suggestions="props.suggestions"
107
- @complete="props.onComplete"
108
- :disabled="props.disabled"
109
- :completeOnFocus="props.completeOnFocus"
110
- @input="handleChange"
111
- @blur="handleBlur"
112
- v-bind="$attrs"
113
- @change="handleChangeEvent"
114
- />
115
- </div>
116
118
 
117
- <small
118
- v-if="errorMessage"
119
- class="p-error text-xs font-normal leading-tight"
120
- >
121
- {{ errorMessage }}
122
- </small>
123
- <small
124
- class="text-xs text-color-secondary font-normal leading-5"
125
- v-if="props.description"
126
- >
127
- {{ props.description }}
128
- </small>
119
+ <small
120
+ v-if="errorMessage"
121
+ class="p-error text-xs font-normal leading-tight"
122
+ >
123
+ {{ errorMessage }}
124
+ </small>
125
+ <small
126
+ class="text-xs text-color-secondary font-normal leading-5"
127
+ v-if="props.description"
128
+ >
129
+ {{ props.description }}
130
+ </small>
131
+ </InputSlot>
129
132
  </template>
@@ -1 +1 @@
1
- {"version":3,"file":"field-dropdown-icon.vue.d.ts","sourceRoot":"","sources":["field-dropdown-icon.vue"],"names":[],"mappings":"wBAuYqB,OAAO,YAAY;;AAlDxC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6EAiDG"}
1
+ {"version":3,"file":"field-dropdown-icon.vue.d.ts","sourceRoot":"","sources":["field-dropdown-icon.vue"],"names":[],"mappings":"wBA2ZqB,OAAO,YAAY;;AAlDxC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6EAiDG"}