@atscript/vue-form 0.1.58

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 (190) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +35 -0
  3. package/dist/as-action-71f9E_bL.cjs +208 -0
  4. package/dist/as-action-DU17rykn.mjs +203 -0
  5. package/dist/as-action.cjs +2 -0
  6. package/dist/as-action.d.cts +2 -0
  7. package/dist/as-action.d.mts +2 -0
  8. package/dist/as-action.mjs +2 -0
  9. package/dist/as-action.vue-BdbAOZCL.d.cts +13 -0
  10. package/dist/as-action.vue-CmY3eil1.d.mts +13 -0
  11. package/dist/as-adornment-shell-9UmdNIPR.cjs +97 -0
  12. package/dist/as-adornment-shell-knFiB7Ct.mjs +92 -0
  13. package/dist/as-array-Bn27x9cq.cjs +466 -0
  14. package/dist/as-array-DwarTaKP.mjs +455 -0
  15. package/dist/as-array-clear-btn-DAGervXL.cjs +48 -0
  16. package/dist/as-array-clear-btn-DIhzCKC9.mjs +43 -0
  17. package/dist/as-array.cjs +11 -0
  18. package/dist/as-array.d.cts +2 -0
  19. package/dist/as-array.d.mts +2 -0
  20. package/dist/as-array.mjs +11 -0
  21. package/dist/as-array.vue-C5r_ycIa.d.mts +9 -0
  22. package/dist/as-array.vue-CeBZRVm7.d.cts +9 -0
  23. package/dist/as-checkbox-B_9mwla6.mjs +285 -0
  24. package/dist/as-checkbox-DXGTVHPE.cjs +296 -0
  25. package/dist/as-checkbox.cjs +6 -0
  26. package/dist/as-checkbox.d.cts +2 -0
  27. package/dist/as-checkbox.d.mts +2 -0
  28. package/dist/as-checkbox.mjs +6 -0
  29. package/dist/as-checkbox.vue-BL53Xjmi.d.mts +9 -0
  30. package/dist/as-checkbox.vue-Da1KVG5J.d.cts +9 -0
  31. package/dist/as-collapsible-CqxeJut7.cjs +148 -0
  32. package/dist/as-collapsible-DtNCofNT.mjs +143 -0
  33. package/dist/as-date-C7tFQDkh.mjs +253 -0
  34. package/dist/as-date-k3MW3dmA.cjs +258 -0
  35. package/dist/as-date.cjs +8 -0
  36. package/dist/as-date.d.cts +2 -0
  37. package/dist/as-date.d.mts +2 -0
  38. package/dist/as-date.mjs +8 -0
  39. package/dist/as-date.vue-C5JaS3Sd.d.mts +9 -0
  40. package/dist/as-date.vue-e2ewS_V4.d.cts +9 -0
  41. package/dist/as-datetime-C030mzI5.cjs +258 -0
  42. package/dist/as-datetime-elcOoDT5.mjs +253 -0
  43. package/dist/as-datetime.cjs +8 -0
  44. package/dist/as-datetime.d.cts +2 -0
  45. package/dist/as-datetime.d.mts +2 -0
  46. package/dist/as-datetime.mjs +8 -0
  47. package/dist/as-datetime.vue-ClsSnJSV.d.mts +9 -0
  48. package/dist/as-datetime.vue-vfHFsby6.d.cts +9 -0
  49. package/dist/as-decimal-BJIGgPXU.cjs +711 -0
  50. package/dist/as-decimal-DtXjFPhe.mjs +694 -0
  51. package/dist/as-decimal.cjs +7 -0
  52. package/dist/as-decimal.d.cts +2 -0
  53. package/dist/as-decimal.d.mts +2 -0
  54. package/dist/as-decimal.mjs +7 -0
  55. package/dist/as-decimal.vue-B1pEKdjM.d.cts +25 -0
  56. package/dist/as-decimal.vue-CSCtYRRa.d.mts +25 -0
  57. package/dist/as-field-CXVjrEPQ.mjs +481 -0
  58. package/dist/as-field-shell-B2iTn-iM.cjs +346 -0
  59. package/dist/as-field-shell-Pdy3sAvr.mjs +341 -0
  60. package/dist/as-field-shell.cjs +5 -0
  61. package/dist/as-field-shell.d.cts +2 -0
  62. package/dist/as-field-shell.d.mts +2 -0
  63. package/dist/as-field-shell.mjs +5 -0
  64. package/dist/as-field-shell.vue-Ddnp8KxY.d.mts +37 -0
  65. package/dist/as-field-shell.vue-Dmt05vGD.d.cts +37 -0
  66. package/dist/as-field-wLYoaZnT.cjs +498 -0
  67. package/dist/as-field.cjs +4 -0
  68. package/dist/as-field.d.cts +25 -0
  69. package/dist/as-field.d.mts +26 -0
  70. package/dist/as-field.mjs +4 -0
  71. package/dist/as-form-CWwgyvfw.mjs +425 -0
  72. package/dist/as-form-DAIkyt7H.cjs +448 -0
  73. package/dist/as-form.cjs +7 -0
  74. package/dist/as-form.d.cts +2 -0
  75. package/dist/as-form.d.mts +2 -0
  76. package/dist/as-form.mjs +7 -0
  77. package/dist/as-form.vue-B4Bn0pbC.d.cts +158 -0
  78. package/dist/as-form.vue-DRrb_yoj.d.mts +158 -0
  79. package/dist/as-input-CpbV2k3s.cjs +231 -0
  80. package/dist/as-input-DIa8BzLv.mjs +226 -0
  81. package/dist/as-input-control-BzELjheN.mjs +266 -0
  82. package/dist/as-input-control-C5-DelZT.cjs +271 -0
  83. package/dist/as-input.cjs +8 -0
  84. package/dist/as-input.d.cts +2 -0
  85. package/dist/as-input.d.mts +2 -0
  86. package/dist/as-input.mjs +8 -0
  87. package/dist/as-input.vue-11ldp9uT.d.cts +17 -0
  88. package/dist/as-input.vue-fUhcvfv2.d.mts +17 -0
  89. package/dist/as-iterator-BYMNe6UJ.cjs +61 -0
  90. package/dist/as-iterator-CT5y1jyn.mjs +56 -0
  91. package/dist/as-iterator.cjs +5 -0
  92. package/dist/as-iterator.d.cts +14 -0
  93. package/dist/as-iterator.d.mts +15 -0
  94. package/dist/as-iterator.mjs +5 -0
  95. package/dist/as-number-BA55JIq1.cjs +387 -0
  96. package/dist/as-number-JPEwPK8Q.mjs +376 -0
  97. package/dist/as-number.cjs +8 -0
  98. package/dist/as-number.d.cts +2 -0
  99. package/dist/as-number.d.mts +2 -0
  100. package/dist/as-number.mjs +8 -0
  101. package/dist/as-number.vue-Bk-W7Vwv.d.mts +26 -0
  102. package/dist/as-number.vue-C2Aih98s.d.cts +26 -0
  103. package/dist/as-object-CT6lNEqt.mjs +300 -0
  104. package/dist/as-object-qUL7l8V1.cjs +305 -0
  105. package/dist/as-object.cjs +11 -0
  106. package/dist/as-object.d.cts +2 -0
  107. package/dist/as-object.d.mts +2 -0
  108. package/dist/as-object.mjs +11 -0
  109. package/dist/as-object.vue-CKwMyM_F.d.cts +13 -0
  110. package/dist/as-object.vue-Cg52b61-.d.mts +13 -0
  111. package/dist/as-paragraph-BGO-j4US.cjs +203 -0
  112. package/dist/as-paragraph-jIG_dg7_.mjs +198 -0
  113. package/dist/as-paragraph.cjs +2 -0
  114. package/dist/as-paragraph.d.cts +2 -0
  115. package/dist/as-paragraph.d.mts +2 -0
  116. package/dist/as-paragraph.mjs +2 -0
  117. package/dist/as-paragraph.vue-BDt0pBG-.d.cts +9 -0
  118. package/dist/as-paragraph.vue-C3FgTEt5.d.mts +9 -0
  119. package/dist/as-radio-B1N-gmoI.mjs +242 -0
  120. package/dist/as-radio-U3OK7bTg.cjs +247 -0
  121. package/dist/as-radio.cjs +6 -0
  122. package/dist/as-radio.d.cts +2 -0
  123. package/dist/as-radio.d.mts +2 -0
  124. package/dist/as-radio.mjs +6 -0
  125. package/dist/as-radio.vue-D_fweoN1.d.mts +9 -0
  126. package/dist/as-radio.vue-ZC4kLBnT.d.cts +9 -0
  127. package/dist/as-ref-CIifSSCQ.mjs +337 -0
  128. package/dist/as-ref-SImaIrwK.cjs +342 -0
  129. package/dist/as-ref.cjs +7 -0
  130. package/dist/as-ref.d.cts +2 -0
  131. package/dist/as-ref.d.mts +2 -0
  132. package/dist/as-ref.mjs +7 -0
  133. package/dist/as-ref.vue-BNeQeQpO.d.cts +9 -0
  134. package/dist/as-ref.vue-Cr5jeNDn.d.mts +9 -0
  135. package/dist/as-select-BB3uxACS.cjs +246 -0
  136. package/dist/as-select-UBGCVhku.mjs +241 -0
  137. package/dist/as-select.cjs +6 -0
  138. package/dist/as-select.d.cts +2 -0
  139. package/dist/as-select.d.mts +2 -0
  140. package/dist/as-select.mjs +6 -0
  141. package/dist/as-select.vue-Dd7huPq2.d.cts +9 -0
  142. package/dist/as-select.vue-RYpbZbKt.d.mts +9 -0
  143. package/dist/as-time-C24rvslH.cjs +258 -0
  144. package/dist/as-time-CQsxUs8P.mjs +253 -0
  145. package/dist/as-time.cjs +8 -0
  146. package/dist/as-time.d.cts +2 -0
  147. package/dist/as-time.d.mts +2 -0
  148. package/dist/as-time.mjs +8 -0
  149. package/dist/as-time.vue-huLx2B4l.d.mts +9 -0
  150. package/dist/as-time.vue-nMEHLXke.d.cts +9 -0
  151. package/dist/as-tuple-BU--cuuI.cjs +351 -0
  152. package/dist/as-tuple-DkI9swlW.mjs +340 -0
  153. package/dist/as-tuple.cjs +11 -0
  154. package/dist/as-tuple.d.cts +2 -0
  155. package/dist/as-tuple.d.mts +2 -0
  156. package/dist/as-tuple.mjs +11 -0
  157. package/dist/as-tuple.vue-CQhzOJsn.d.mts +9 -0
  158. package/dist/as-tuple.vue-DyskCkf-.d.cts +9 -0
  159. package/dist/as-union-BGvdxr3G.mjs +351 -0
  160. package/dist/as-union-C0btoJn3.cjs +368 -0
  161. package/dist/as-union.cjs +6 -0
  162. package/dist/as-union.d.cts +2 -0
  163. package/dist/as-union.d.mts +2 -0
  164. package/dist/as-union.mjs +6 -0
  165. package/dist/as-union.vue-BjlDPZn0.d.mts +9 -0
  166. package/dist/as-union.vue-CqjU3O10.d.cts +9 -0
  167. package/dist/as-variant-picker-BVs0AvjK.mjs +96 -0
  168. package/dist/as-variant-picker-DObQZHmm.cjs +107 -0
  169. package/dist/index.cjs +173 -0
  170. package/dist/index.d.cts +966 -0
  171. package/dist/index.d.mts +966 -0
  172. package/dist/index.mjs +105 -0
  173. package/dist/types-C4HRSxgV.d.cts +233 -0
  174. package/dist/types-Czm-Gtud.d.mts +233 -0
  175. package/dist/use-as-date-B7CtcRQd.cjs +329 -0
  176. package/dist/use-as-date-C39i9mzE.mjs +318 -0
  177. package/dist/use-as-dropdown-BMnEm6jF.mjs +82 -0
  178. package/dist/use-as-dropdown-C-Qy7Vt0.cjs +105 -0
  179. package/dist/use-as-locale-BrFdAgnU.mjs +23 -0
  180. package/dist/use-as-locale-C4z5stwD.cjs +34 -0
  181. package/dist/use-as-nested-sections-store-jdMRxjBE.cjs +80 -0
  182. package/dist/use-as-nested-sections-store-lhi0z5z1.mjs +63 -0
  183. package/dist/use-as-optional-add-flow-CuXEir_i.mjs +43 -0
  184. package/dist/use-as-optional-add-flow-STOaQWo9.cjs +48 -0
  185. package/dist/use-as-value-help-CBykDEjZ.mjs +89 -0
  186. package/dist/use-as-value-help-uANI3zWa.cjs +100 -0
  187. package/dist/use-form-context-Dwr8Ai1v.cjs +207 -0
  188. package/dist/use-form-context-bAj7UoSe.mjs +106 -0
  189. package/package.json +180 -0
  190. package/styles.d.ts +2 -0
@@ -0,0 +1,266 @@
1
+ import { createElementBlock, defineComponent, openBlock, vModelDynamic, vModelText, withDirectives } from "vue";
2
+ //#region src/components/internal/as-input-control.vue?vue&type=script&setup=true&lang.ts
3
+ const _hoisted_1 = [
4
+ "id",
5
+ "placeholder",
6
+ "name",
7
+ "disabled",
8
+ "readonly",
9
+ "maxlength",
10
+ "aria-required",
11
+ "aria-invalid",
12
+ "aria-describedby",
13
+ "aria-label"
14
+ ];
15
+ const _hoisted_2 = [
16
+ "id",
17
+ "placeholder",
18
+ "autocomplete",
19
+ "name",
20
+ "type",
21
+ "disabled",
22
+ "readonly",
23
+ "aria-required",
24
+ "aria-invalid",
25
+ "aria-describedby",
26
+ "aria-label"
27
+ ];
28
+ //#endregion
29
+ //#region src/components/internal/as-input-control.vue
30
+ var as_input_control_default = /* @__PURE__ */ defineComponent({
31
+ __name: "as-input-control",
32
+ props: {
33
+ onBlur: {
34
+ type: Function,
35
+ required: true
36
+ },
37
+ error: {
38
+ type: String,
39
+ required: false
40
+ },
41
+ model: {
42
+ type: Object,
43
+ required: true
44
+ },
45
+ value: {
46
+ type: null,
47
+ required: false
48
+ },
49
+ label: {
50
+ type: String,
51
+ required: false
52
+ },
53
+ description: {
54
+ type: String,
55
+ required: false
56
+ },
57
+ hint: {
58
+ type: String,
59
+ required: false
60
+ },
61
+ placeholder: {
62
+ type: String,
63
+ required: false
64
+ },
65
+ prefixIcon: {
66
+ type: String,
67
+ required: false
68
+ },
69
+ suffixIcon: {
70
+ type: String,
71
+ required: false
72
+ },
73
+ class: {
74
+ type: [Object, String],
75
+ required: false
76
+ },
77
+ style: {
78
+ type: [Object, String],
79
+ required: false
80
+ },
81
+ optional: {
82
+ type: Boolean,
83
+ required: false,
84
+ skipCheck: true
85
+ },
86
+ onToggleOptional: {
87
+ type: Function,
88
+ required: false
89
+ },
90
+ required: {
91
+ type: Boolean,
92
+ required: false,
93
+ skipCheck: true
94
+ },
95
+ readonly: {
96
+ type: Boolean,
97
+ required: false,
98
+ skipCheck: true
99
+ },
100
+ type: {
101
+ type: String,
102
+ required: true
103
+ },
104
+ formAction: {
105
+ type: Object,
106
+ required: false
107
+ },
108
+ name: {
109
+ type: String,
110
+ required: false
111
+ },
112
+ field: {
113
+ type: Object,
114
+ required: false
115
+ },
116
+ options: {
117
+ type: Array,
118
+ required: false
119
+ },
120
+ maxLength: {
121
+ type: Number,
122
+ required: false
123
+ },
124
+ autocomplete: {
125
+ type: String,
126
+ required: false
127
+ },
128
+ title: {
129
+ type: String,
130
+ required: false
131
+ },
132
+ level: {
133
+ type: Number,
134
+ required: false
135
+ },
136
+ onRemove: {
137
+ type: Function,
138
+ required: false
139
+ },
140
+ canRemove: {
141
+ type: Boolean,
142
+ required: false
143
+ },
144
+ removeLabel: {
145
+ type: String,
146
+ required: false
147
+ },
148
+ arrayIndex: {
149
+ type: Number,
150
+ required: false
151
+ },
152
+ path: {
153
+ type: String,
154
+ required: true
155
+ },
156
+ valueHelp: {
157
+ type: Object,
158
+ required: false
159
+ },
160
+ singularLabel: {
161
+ type: String,
162
+ required: false
163
+ },
164
+ inputId: {
165
+ type: String,
166
+ required: true
167
+ },
168
+ errorId: {
169
+ type: String,
170
+ required: true
171
+ },
172
+ descId: {
173
+ type: String,
174
+ required: true
175
+ },
176
+ ariaDescribedBy: {
177
+ type: String,
178
+ required: false
179
+ },
180
+ currencyCode: {
181
+ type: String,
182
+ required: false
183
+ },
184
+ unitCode: {
185
+ type: String,
186
+ required: false
187
+ },
188
+ precisionScale: {
189
+ type: Number,
190
+ required: false
191
+ },
192
+ prefix: {
193
+ type: String,
194
+ required: false
195
+ },
196
+ suffix: {
197
+ type: String,
198
+ required: false
199
+ },
200
+ scale: {
201
+ type: Number,
202
+ required: false
203
+ },
204
+ hasAdornment: {
205
+ type: Boolean,
206
+ required: false
207
+ },
208
+ disabled: {
209
+ type: Boolean,
210
+ required: false
211
+ },
212
+ hidden: {
213
+ type: Boolean,
214
+ required: false
215
+ }
216
+ },
217
+ setup(__props) {
218
+ const props = __props;
219
+ /**
220
+ * UX polish — numeric inputs select-all on focus so the next keystroke
221
+ * replaces the existing value. Skipped for text/password/textarea where
222
+ * the cursor-at-position behaviour is expected (clicking inside a long
223
+ * email or sentence to fix one character shouldn't wipe it).
224
+ */
225
+ function onFocus(e) {
226
+ if (props.type !== "number") return;
227
+ const el = e.target;
228
+ if (el && typeof el.select === "function") el.select();
229
+ }
230
+ return (_ctx, _cache) => {
231
+ return __props.type === "textarea" ? withDirectives((openBlock(), createElementBlock("textarea", {
232
+ key: 0,
233
+ id: __props.inputId,
234
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => __props.model.value = $event),
235
+ onBlur: _cache[1] || (_cache[1] = (...args) => __props.onBlur && __props.onBlur(...args)),
236
+ placeholder: __props.placeholder,
237
+ name: __props.name,
238
+ disabled: __props.disabled,
239
+ readonly: __props.readonly,
240
+ maxlength: __props.maxLength,
241
+ "aria-required": __props.required || void 0,
242
+ "aria-invalid": !!__props.error || void 0,
243
+ "aria-describedby": __props.ariaDescribedBy,
244
+ "aria-label": !__props.label ? __props.name : void 0
245
+ }, null, 40, _hoisted_1)), [[vModelText, __props.model.value]]) : withDirectives((openBlock(), createElementBlock("input", {
246
+ key: 1,
247
+ id: __props.inputId,
248
+ "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => __props.model.value = $event),
249
+ onFocus,
250
+ onBlur: _cache[3] || (_cache[3] = (...args) => __props.onBlur && __props.onBlur(...args)),
251
+ placeholder: __props.placeholder,
252
+ autocomplete: __props.autocomplete,
253
+ name: __props.name,
254
+ type: __props.type,
255
+ disabled: __props.disabled,
256
+ readonly: __props.readonly,
257
+ "aria-required": __props.required || void 0,
258
+ "aria-invalid": !!__props.error || void 0,
259
+ "aria-describedby": __props.ariaDescribedBy,
260
+ "aria-label": !__props.label ? __props.name : void 0
261
+ }, null, 40, _hoisted_2)), [[vModelDynamic, __props.model.value]]);
262
+ };
263
+ }
264
+ });
265
+ //#endregion
266
+ export { as_input_control_default as t };
@@ -0,0 +1,271 @@
1
+ let vue = require("vue");
2
+ //#region src/components/internal/as-input-control.vue?vue&type=script&setup=true&lang.ts
3
+ const _hoisted_1 = [
4
+ "id",
5
+ "placeholder",
6
+ "name",
7
+ "disabled",
8
+ "readonly",
9
+ "maxlength",
10
+ "aria-required",
11
+ "aria-invalid",
12
+ "aria-describedby",
13
+ "aria-label"
14
+ ];
15
+ const _hoisted_2 = [
16
+ "id",
17
+ "placeholder",
18
+ "autocomplete",
19
+ "name",
20
+ "type",
21
+ "disabled",
22
+ "readonly",
23
+ "aria-required",
24
+ "aria-invalid",
25
+ "aria-describedby",
26
+ "aria-label"
27
+ ];
28
+ //#endregion
29
+ //#region src/components/internal/as-input-control.vue
30
+ var as_input_control_default = /* @__PURE__ */ (0, vue.defineComponent)({
31
+ __name: "as-input-control",
32
+ props: {
33
+ onBlur: {
34
+ type: Function,
35
+ required: true
36
+ },
37
+ error: {
38
+ type: String,
39
+ required: false
40
+ },
41
+ model: {
42
+ type: Object,
43
+ required: true
44
+ },
45
+ value: {
46
+ type: null,
47
+ required: false
48
+ },
49
+ label: {
50
+ type: String,
51
+ required: false
52
+ },
53
+ description: {
54
+ type: String,
55
+ required: false
56
+ },
57
+ hint: {
58
+ type: String,
59
+ required: false
60
+ },
61
+ placeholder: {
62
+ type: String,
63
+ required: false
64
+ },
65
+ prefixIcon: {
66
+ type: String,
67
+ required: false
68
+ },
69
+ suffixIcon: {
70
+ type: String,
71
+ required: false
72
+ },
73
+ class: {
74
+ type: [Object, String],
75
+ required: false
76
+ },
77
+ style: {
78
+ type: [Object, String],
79
+ required: false
80
+ },
81
+ optional: {
82
+ type: Boolean,
83
+ required: false,
84
+ skipCheck: true
85
+ },
86
+ onToggleOptional: {
87
+ type: Function,
88
+ required: false
89
+ },
90
+ required: {
91
+ type: Boolean,
92
+ required: false,
93
+ skipCheck: true
94
+ },
95
+ readonly: {
96
+ type: Boolean,
97
+ required: false,
98
+ skipCheck: true
99
+ },
100
+ type: {
101
+ type: String,
102
+ required: true
103
+ },
104
+ formAction: {
105
+ type: Object,
106
+ required: false
107
+ },
108
+ name: {
109
+ type: String,
110
+ required: false
111
+ },
112
+ field: {
113
+ type: Object,
114
+ required: false
115
+ },
116
+ options: {
117
+ type: Array,
118
+ required: false
119
+ },
120
+ maxLength: {
121
+ type: Number,
122
+ required: false
123
+ },
124
+ autocomplete: {
125
+ type: String,
126
+ required: false
127
+ },
128
+ title: {
129
+ type: String,
130
+ required: false
131
+ },
132
+ level: {
133
+ type: Number,
134
+ required: false
135
+ },
136
+ onRemove: {
137
+ type: Function,
138
+ required: false
139
+ },
140
+ canRemove: {
141
+ type: Boolean,
142
+ required: false
143
+ },
144
+ removeLabel: {
145
+ type: String,
146
+ required: false
147
+ },
148
+ arrayIndex: {
149
+ type: Number,
150
+ required: false
151
+ },
152
+ path: {
153
+ type: String,
154
+ required: true
155
+ },
156
+ valueHelp: {
157
+ type: Object,
158
+ required: false
159
+ },
160
+ singularLabel: {
161
+ type: String,
162
+ required: false
163
+ },
164
+ inputId: {
165
+ type: String,
166
+ required: true
167
+ },
168
+ errorId: {
169
+ type: String,
170
+ required: true
171
+ },
172
+ descId: {
173
+ type: String,
174
+ required: true
175
+ },
176
+ ariaDescribedBy: {
177
+ type: String,
178
+ required: false
179
+ },
180
+ currencyCode: {
181
+ type: String,
182
+ required: false
183
+ },
184
+ unitCode: {
185
+ type: String,
186
+ required: false
187
+ },
188
+ precisionScale: {
189
+ type: Number,
190
+ required: false
191
+ },
192
+ prefix: {
193
+ type: String,
194
+ required: false
195
+ },
196
+ suffix: {
197
+ type: String,
198
+ required: false
199
+ },
200
+ scale: {
201
+ type: Number,
202
+ required: false
203
+ },
204
+ hasAdornment: {
205
+ type: Boolean,
206
+ required: false
207
+ },
208
+ disabled: {
209
+ type: Boolean,
210
+ required: false
211
+ },
212
+ hidden: {
213
+ type: Boolean,
214
+ required: false
215
+ }
216
+ },
217
+ setup(__props) {
218
+ const props = __props;
219
+ /**
220
+ * UX polish — numeric inputs select-all on focus so the next keystroke
221
+ * replaces the existing value. Skipped for text/password/textarea where
222
+ * the cursor-at-position behaviour is expected (clicking inside a long
223
+ * email or sentence to fix one character shouldn't wipe it).
224
+ */
225
+ function onFocus(e) {
226
+ if (props.type !== "number") return;
227
+ const el = e.target;
228
+ if (el && typeof el.select === "function") el.select();
229
+ }
230
+ return (_ctx, _cache) => {
231
+ return __props.type === "textarea" ? (0, vue.withDirectives)(((0, vue.openBlock)(), (0, vue.createElementBlock)("textarea", {
232
+ key: 0,
233
+ id: __props.inputId,
234
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => __props.model.value = $event),
235
+ onBlur: _cache[1] || (_cache[1] = (...args) => __props.onBlur && __props.onBlur(...args)),
236
+ placeholder: __props.placeholder,
237
+ name: __props.name,
238
+ disabled: __props.disabled,
239
+ readonly: __props.readonly,
240
+ maxlength: __props.maxLength,
241
+ "aria-required": __props.required || void 0,
242
+ "aria-invalid": !!__props.error || void 0,
243
+ "aria-describedby": __props.ariaDescribedBy,
244
+ "aria-label": !__props.label ? __props.name : void 0
245
+ }, null, 40, _hoisted_1)), [[vue.vModelText, __props.model.value]]) : (0, vue.withDirectives)(((0, vue.openBlock)(), (0, vue.createElementBlock)("input", {
246
+ key: 1,
247
+ id: __props.inputId,
248
+ "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => __props.model.value = $event),
249
+ onFocus,
250
+ onBlur: _cache[3] || (_cache[3] = (...args) => __props.onBlur && __props.onBlur(...args)),
251
+ placeholder: __props.placeholder,
252
+ autocomplete: __props.autocomplete,
253
+ name: __props.name,
254
+ type: __props.type,
255
+ disabled: __props.disabled,
256
+ readonly: __props.readonly,
257
+ "aria-required": __props.required || void 0,
258
+ "aria-invalid": !!__props.error || void 0,
259
+ "aria-describedby": __props.ariaDescribedBy,
260
+ "aria-label": !__props.label ? __props.name : void 0
261
+ }, null, 40, _hoisted_2)), [[vue.vModelDynamic, __props.model.value]]);
262
+ };
263
+ }
264
+ });
265
+ //#endregion
266
+ Object.defineProperty(exports, "as_input_control_default", {
267
+ enumerable: true,
268
+ get: function() {
269
+ return as_input_control_default;
270
+ }
271
+ });
@@ -0,0 +1,8 @@
1
+ require("./use-form-context-Dwr8Ai1v.cjs");
2
+ require("./use-as-dropdown-C-Qy7Vt0.cjs");
3
+ require("./as-field-shell-B2iTn-iM.cjs");
4
+ require("./as-variant-picker-DObQZHmm.cjs");
5
+ require("./as-input-control-C5-DelZT.cjs");
6
+ require("./as-adornment-shell-9UmdNIPR.cjs");
7
+ const require_as_input = require("./as-input-CpbV2k3s.cjs");
8
+ module.exports = require_as_input.as_input_default;
@@ -0,0 +1,2 @@
1
+ import { t as _default } from "./as-input.vue-11ldp9uT.cjs";
2
+ export = _default;
@@ -0,0 +1,2 @@
1
+ import { t as _default } from "./as-input.vue-fUhcvfv2.mjs";
2
+ export { _default as default };
@@ -0,0 +1,8 @@
1
+ import "./use-form-context-bAj7UoSe.mjs";
2
+ import "./use-as-dropdown-BMnEm6jF.mjs";
3
+ import "./as-field-shell-Pdy3sAvr.mjs";
4
+ import "./as-variant-picker-BVs0AvjK.mjs";
5
+ import "./as-input-control-BzELjheN.mjs";
6
+ import "./as-adornment-shell-knFiB7Ct.mjs";
7
+ import { t as as_input_default } from "./as-input-DIa8BzLv.mjs";
8
+ export { as_input_default as default };
@@ -0,0 +1,17 @@
1
+ import { i as TAsComponentProps } from "./types-C4HRSxgV.cjs";
2
+ import * as vue from "vue";
3
+
4
+ //#region src/components/defaults/as-input.vue.d.ts
5
+ /**
6
+ * Default text/password/textarea input renderer. When AsField sees ANY
7
+ * adornment annotation on the field (`@ui.form.prefix*` /
8
+ * `@ui.form.suffix*` — text or icon), the input renders inside the merged
9
+ * `AsAdornmentShell` chrome family shared with AsNumber / AsDecimal:
10
+ * `[prefix-icon][prefix-text][input][suffix-text][suffix-icon]`. Without
11
+ * any adornment, the plain control renders directly.
12
+ */
13
+ type __VLS_Props = TAsComponentProps;
14
+ declare const __VLS_export: vue.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
15
+ declare const _default: typeof __VLS_export;
16
+ //#endregion
17
+ export { _default as t };
@@ -0,0 +1,17 @@
1
+ import { i as TAsComponentProps } from "./types-Czm-Gtud.mjs";
2
+ import * as vue from "vue";
3
+
4
+ //#region src/components/defaults/as-input.vue.d.ts
5
+ /**
6
+ * Default text/password/textarea input renderer. When AsField sees ANY
7
+ * adornment annotation on the field (`@ui.form.prefix*` /
8
+ * `@ui.form.suffix*` — text or icon), the input renders inside the merged
9
+ * `AsAdornmentShell` chrome family shared with AsNumber / AsDecimal:
10
+ * `[prefix-icon][prefix-text][input][suffix-text][suffix-icon]`. Without
11
+ * any adornment, the plain control renders directly.
12
+ */
13
+ type __VLS_Props = TAsComponentProps;
14
+ declare const __VLS_export: vue.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
15
+ declare const _default: typeof __VLS_export;
16
+ //#endregion
17
+ export { _default as t };
@@ -0,0 +1,61 @@
1
+ const require_use_form_context = require("./use-form-context-Dwr8Ai1v.cjs");
2
+ const require_as_field = require("./as-field-wLYoaZnT.cjs");
3
+ let vue = require("vue");
4
+ //#endregion
5
+ //#region src/components/as-iterator.vue
6
+ var as_iterator_default = /* @__PURE__ */ (0, vue.defineComponent)({
7
+ __name: "as-iterator",
8
+ props: {
9
+ def: {
10
+ type: Object,
11
+ required: true
12
+ },
13
+ pathPrefix: {
14
+ type: String,
15
+ required: false
16
+ },
17
+ onRemove: {
18
+ type: Function,
19
+ required: false
20
+ },
21
+ canRemove: {
22
+ type: Boolean,
23
+ required: false
24
+ },
25
+ removeLabel: {
26
+ type: String,
27
+ required: false
28
+ }
29
+ },
30
+ setup(__props) {
31
+ const props = __props;
32
+ const parentPrefix = (0, vue.inject)(require_use_form_context.PATH_PREFIX_KEY, (0, vue.computed)(() => ""));
33
+ (0, vue.provide)(require_use_form_context.PATH_PREFIX_KEY, (0, vue.computed)(() => {
34
+ if (props.pathPrefix !== void 0) return parentPrefix.value ? `${parentPrefix.value}.${props.pathPrefix}` : props.pathPrefix;
35
+ return parentPrefix.value;
36
+ }));
37
+ return (_ctx, _cache) => {
38
+ return (0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, null, (0, vue.renderList)(__props.def.fields, (f) => {
39
+ return (0, vue.openBlock)(), (0, vue.createBlock)(require_as_field.as_field_default, {
40
+ key: f.path ?? f.name,
41
+ field: f,
42
+ "on-remove": __props.onRemove,
43
+ "can-remove": __props.canRemove,
44
+ "remove-label": __props.removeLabel
45
+ }, null, 8, [
46
+ "field",
47
+ "on-remove",
48
+ "can-remove",
49
+ "remove-label"
50
+ ]);
51
+ }), 128);
52
+ };
53
+ }
54
+ });
55
+ //#endregion
56
+ Object.defineProperty(exports, "as_iterator_default", {
57
+ enumerable: true,
58
+ get: function() {
59
+ return as_iterator_default;
60
+ }
61
+ });
@@ -0,0 +1,56 @@
1
+ import { m as PATH_PREFIX_KEY } from "./use-form-context-bAj7UoSe.mjs";
2
+ import { t as as_field_default } from "./as-field-CXVjrEPQ.mjs";
3
+ import { Fragment, computed, createBlock, createElementBlock, defineComponent, inject, openBlock, provide, renderList } from "vue";
4
+ //#endregion
5
+ //#region src/components/as-iterator.vue
6
+ var as_iterator_default = /* @__PURE__ */ defineComponent({
7
+ __name: "as-iterator",
8
+ props: {
9
+ def: {
10
+ type: Object,
11
+ required: true
12
+ },
13
+ pathPrefix: {
14
+ type: String,
15
+ required: false
16
+ },
17
+ onRemove: {
18
+ type: Function,
19
+ required: false
20
+ },
21
+ canRemove: {
22
+ type: Boolean,
23
+ required: false
24
+ },
25
+ removeLabel: {
26
+ type: String,
27
+ required: false
28
+ }
29
+ },
30
+ setup(__props) {
31
+ const props = __props;
32
+ const parentPrefix = inject(PATH_PREFIX_KEY, computed(() => ""));
33
+ provide(PATH_PREFIX_KEY, computed(() => {
34
+ if (props.pathPrefix !== void 0) return parentPrefix.value ? `${parentPrefix.value}.${props.pathPrefix}` : props.pathPrefix;
35
+ return parentPrefix.value;
36
+ }));
37
+ return (_ctx, _cache) => {
38
+ return openBlock(true), createElementBlock(Fragment, null, renderList(__props.def.fields, (f) => {
39
+ return openBlock(), createBlock(as_field_default, {
40
+ key: f.path ?? f.name,
41
+ field: f,
42
+ "on-remove": __props.onRemove,
43
+ "can-remove": __props.canRemove,
44
+ "remove-label": __props.removeLabel
45
+ }, null, 8, [
46
+ "field",
47
+ "on-remove",
48
+ "can-remove",
49
+ "remove-label"
50
+ ]);
51
+ }), 128);
52
+ };
53
+ }
54
+ });
55
+ //#endregion
56
+ export { as_iterator_default as t };