@websolutespa/bom-mixer-ui 1.2.2 → 1.3.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 (275) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/dist/cjs/index.js +443 -211
  3. package/dist/cjs/index.js.map +1 -1
  4. package/dist/esm/accessibility/index.js +13 -0
  5. package/dist/esm/accessibility/index.js.map +1 -0
  6. package/dist/esm/components/breakpoint/breakpoint.js +2 -1
  7. package/dist/esm/components/breakpoint/breakpoint.js.map +1 -1
  8. package/dist/esm/components/media/media-image.js +6 -7
  9. package/dist/esm/components/media/media-image.js.map +1 -1
  10. package/dist/esm/components/media/media.js +15 -5
  11. package/dist/esm/components/media/media.js.map +1 -1
  12. package/dist/esm/fields/field-accept.js +22 -8
  13. package/dist/esm/fields/field-accept.js.map +1 -1
  14. package/dist/esm/fields/field-autocomplete.js +19 -13
  15. package/dist/esm/fields/field-autocomplete.js.map +1 -1
  16. package/dist/esm/fields/field-card.js +7 -4
  17. package/dist/esm/fields/field-card.js.map +1 -1
  18. package/dist/esm/fields/field-checkbox.js +7 -4
  19. package/dist/esm/fields/field-checkbox.js.map +1 -1
  20. package/dist/esm/fields/field-collection.js +44 -35
  21. package/dist/esm/fields/field-collection.js.map +1 -1
  22. package/dist/esm/fields/field-error.variants.js +8 -7
  23. package/dist/esm/fields/field-error.variants.js.map +1 -1
  24. package/dist/esm/fields/field-password.js +12 -6
  25. package/dist/esm/fields/field-password.js.map +1 -1
  26. package/dist/esm/fields/field-select.js +15 -8
  27. package/dist/esm/fields/field-select.js.map +1 -1
  28. package/dist/esm/fields/field-text.js +16 -8
  29. package/dist/esm/fields/field-text.js.map +1 -1
  30. package/dist/esm/fields/field-textarea.js +92 -0
  31. package/dist/esm/fields/field-textarea.js.map +1 -0
  32. package/dist/esm/fields/fields.js +5 -0
  33. package/dist/esm/fields/fields.js.map +1 -1
  34. package/dist/esm/forms/autocomplete/autocomplete.js +17 -11
  35. package/dist/esm/forms/autocomplete/autocomplete.js.map +1 -1
  36. package/dist/esm/forms/custom-select/custom-select-input.js +15 -13
  37. package/dist/esm/forms/custom-select/custom-select-input.js.map +1 -1
  38. package/dist/esm/forms/custom-select/custom-select.js +8 -5
  39. package/dist/esm/forms/custom-select/custom-select.js.map +1 -1
  40. package/dist/esm/forms/field/field.js +3 -2
  41. package/dist/esm/forms/field/field.js.map +1 -1
  42. package/dist/esm/forms/field/field.variants.js +24 -3
  43. package/dist/esm/forms/field/field.variants.js.map +1 -1
  44. package/dist/esm/forms/form/form.js +0 -22
  45. package/dist/esm/forms/form/form.js.map +1 -1
  46. package/dist/esm/forms/form-error/form-error.variants.js +14 -2
  47. package/dist/esm/forms/form-error/form-error.variants.js.map +1 -1
  48. package/dist/esm/forms/form-tester/form-tester.variants.js +1 -1
  49. package/dist/esm/forms/form-tester/form-tester.variants.js.map +1 -1
  50. package/dist/esm/forms/input/input.js +6 -2
  51. package/dist/esm/forms/input/input.js.map +1 -1
  52. package/dist/esm/forms/input/input.variants.js +4 -3
  53. package/dist/esm/forms/input/input.variants.js.map +1 -1
  54. package/dist/esm/forms/input-group/input-group.js +4 -3
  55. package/dist/esm/forms/input-group/input-group.js.map +1 -1
  56. package/dist/esm/forms/label/label.variants.js +3 -1
  57. package/dist/esm/forms/label/label.variants.js.map +1 -1
  58. package/dist/esm/forms/select/select.js +1 -1
  59. package/dist/esm/forms/select/select.js.map +1 -1
  60. package/dist/esm/forms/textarea/textarea.js +21 -3
  61. package/dist/esm/forms/textarea/textarea.js.map +1 -1
  62. package/dist/esm/forms/textarea/textarea.variants.js +1 -1
  63. package/dist/esm/forms/textarea/textarea.variants.js.map +1 -1
  64. package/dist/esm/forms/utils/utils.js +3 -2
  65. package/dist/esm/forms/utils/utils.js.map +1 -1
  66. package/dist/esm/index.js +2 -0
  67. package/dist/esm/index.js.map +1 -1
  68. package/dist/esm/layouts/layout-default/layout-default.js +2 -1
  69. package/dist/esm/layouts/layout-default/layout-default.js.map +1 -1
  70. package/dist/esm/lazy/carousel-1/carousel-1.js +1 -1
  71. package/dist/esm/lazy/carousel-1/carousel-1.js.map +1 -1
  72. package/dist/esm/lazy/download-1/download-1.js +1 -1
  73. package/dist/esm/lazy/download-1/download-1.js.map +1 -1
  74. package/dist/esm/lazy/lazy-loader/lazy-loader.js +11 -6
  75. package/dist/esm/lazy/lazy-loader/lazy-loader.js.map +1 -1
  76. package/dist/esm/lazy/media-full-1/media-full-1.js +1 -1
  77. package/dist/esm/lazy/media-full-1/media-full-1.js.map +1 -1
  78. package/dist/esm/lazy/media-full-2/media-full-2.js +1 -1
  79. package/dist/esm/lazy/media-full-2/media-full-2.js.map +1 -1
  80. package/dist/esm/lazy/media-media-1/media-media-1.js +1 -1
  81. package/dist/esm/lazy/media-media-1/media-media-1.js.map +1 -1
  82. package/dist/esm/lazy/related-1/related-1.js +1 -1
  83. package/dist/esm/lazy/related-1/related-1.js.map +1 -1
  84. package/dist/esm/lazy/sizes-colors-1/sizes-colors-1.js +1 -1
  85. package/dist/esm/lazy/sizes-colors-1/sizes-colors-1.js.map +1 -1
  86. package/dist/esm/lazy/text-1/text-1.js +1 -1
  87. package/dist/esm/lazy/text-1/text-1.js.map +1 -1
  88. package/dist/esm/lazy/text-aside-1/text-aside-1.js +1 -1
  89. package/dist/esm/lazy/text-aside-1/text-aside-1.js.map +1 -1
  90. package/dist/esm/lazy/text-media-1/text-media-1.js +1 -1
  91. package/dist/esm/lazy/text-media-1/text-media-1.js.map +1 -1
  92. package/dist/esm/lazy/text-text-1/text-text-1.js +1 -1
  93. package/dist/esm/lazy/text-text-1/text-text-1.js.map +1 -1
  94. package/dist/esm/sections/auth/auth-change-password.js +2 -1
  95. package/dist/esm/sections/auth/auth-change-password.js.map +1 -1
  96. package/dist/esm/sections/auth/auth-forgot.js +2 -1
  97. package/dist/esm/sections/auth/auth-forgot.js.map +1 -1
  98. package/dist/esm/sections/auth/auth-login.js +2 -1
  99. package/dist/esm/sections/auth/auth-login.js.map +1 -1
  100. package/dist/esm/sections/auth/auth-register.js +2 -1
  101. package/dist/esm/sections/auth/auth-register.js.map +1 -1
  102. package/dist/esm/sections/auth/auth-update.js +2 -1
  103. package/dist/esm/sections/auth/auth-update.js.map +1 -1
  104. package/dist/esm/sections/checkout/checkout-delivery.js +2 -1
  105. package/dist/esm/sections/checkout/checkout-delivery.js.map +1 -1
  106. package/dist/esm/sections/checkout/checkout-discount.js +2 -1
  107. package/dist/esm/sections/checkout/checkout-discount.js.map +1 -1
  108. package/dist/esm/sections/checkout/checkout-payment.js +2 -1
  109. package/dist/esm/sections/checkout/checkout-payment.js.map +1 -1
  110. package/dist/esm/sections/checkout/checkout-review.js +2 -1
  111. package/dist/esm/sections/checkout/checkout-review.js.map +1 -1
  112. package/dist/esm/sections/footer/footer.js +1 -0
  113. package/dist/esm/sections/footer/footer.js.map +1 -1
  114. package/dist/esm/sections/magazine-related/magazine-related.js +1 -1
  115. package/dist/esm/sections/magazine-related/magazine-related.js.map +1 -1
  116. package/dist/esm/sections/products-detail-download/products-detail-download.js +1 -1
  117. package/dist/esm/sections/products-detail-download/products-detail-download.js.map +1 -1
  118. package/dist/esm/sections/products-detail-related/products-detail-related.js +1 -1
  119. package/dist/esm/sections/products-detail-related/products-detail-related.js.map +1 -1
  120. package/dist/esm/sections/products-detail-size-color/products-detail-size-color.js +1 -1
  121. package/dist/esm/sections/products-detail-size-color/products-detail-size-color.js.map +1 -1
  122. package/dist/esm/sections/shop-detail-related/shop-detail-related.js +1 -1
  123. package/dist/esm/sections/shop-detail-related/shop-detail-related.js.map +1 -1
  124. package/dist/esm/theme/global.vars.js +34 -7
  125. package/dist/esm/theme/global.vars.js.map +1 -1
  126. package/dist/esm/theme/theme.json.js +26 -5
  127. package/dist/esm/theme/theme.json.js.map +1 -1
  128. package/dist/types/accessibility/index.d.ts +3 -0
  129. package/dist/types/accessibility/index.d.ts.map +1 -0
  130. package/dist/types/components/breakpoint/breakpoint.d.ts.map +1 -1
  131. package/dist/types/components/media/media-image.d.ts +1 -1
  132. package/dist/types/components/media/media-image.d.ts.map +1 -1
  133. package/dist/types/components/media/media.d.ts +17 -0
  134. package/dist/types/components/media/media.d.ts.map +1 -1
  135. package/dist/types/fields/field-accept.d.ts +2 -2
  136. package/dist/types/fields/field-accept.d.ts.map +1 -1
  137. package/dist/types/fields/field-autocomplete.d.ts +2 -2
  138. package/dist/types/fields/field-autocomplete.d.ts.map +1 -1
  139. package/dist/types/fields/field-card.d.ts +2 -2
  140. package/dist/types/fields/field-card.d.ts.map +1 -1
  141. package/dist/types/fields/field-checkbox.d.ts +2 -2
  142. package/dist/types/fields/field-checkbox.d.ts.map +1 -1
  143. package/dist/types/fields/field-collection.d.ts +4 -2
  144. package/dist/types/fields/field-collection.d.ts.map +1 -1
  145. package/dist/types/fields/field-error.variants.d.ts.map +1 -1
  146. package/dist/types/fields/field-password.d.ts +2 -2
  147. package/dist/types/fields/field-password.d.ts.map +1 -1
  148. package/dist/types/fields/field-select.d.ts +2 -2
  149. package/dist/types/fields/field-select.d.ts.map +1 -1
  150. package/dist/types/fields/field-text.d.ts +2 -2
  151. package/dist/types/fields/field-text.d.ts.map +1 -1
  152. package/dist/types/fields/field-textarea.d.ts +8 -0
  153. package/dist/types/fields/field-textarea.d.ts.map +1 -0
  154. package/dist/types/fields/fields.d.ts +1 -1
  155. package/dist/types/fields/fields.d.ts.map +1 -1
  156. package/dist/types/fields/index.d.ts +1 -0
  157. package/dist/types/fields/index.d.ts.map +1 -1
  158. package/dist/types/forms/autocomplete/autocomplete.d.ts.map +1 -1
  159. package/dist/types/forms/custom-select/custom-select-input.d.ts.map +1 -1
  160. package/dist/types/forms/custom-select/custom-select.d.ts.map +1 -1
  161. package/dist/types/forms/field/field.d.ts +2 -0
  162. package/dist/types/forms/field/field.d.ts.map +1 -1
  163. package/dist/types/forms/field/field.variants.d.ts.map +1 -1
  164. package/dist/types/forms/form/form.d.ts.map +1 -1
  165. package/dist/types/forms/form-error/form-error.variants.d.ts.map +1 -1
  166. package/dist/types/forms/input/input.d.ts.map +1 -1
  167. package/dist/types/forms/input/input.variants.d.ts.map +1 -1
  168. package/dist/types/forms/input-group/input-group.d.ts.map +1 -1
  169. package/dist/types/forms/label/label.variants.d.ts.map +1 -1
  170. package/dist/types/forms/textarea/textarea.d.ts.map +1 -1
  171. package/dist/types/forms/utils/utils.d.ts.map +1 -1
  172. package/dist/types/index.d.ts +1 -0
  173. package/dist/types/index.d.ts.map +1 -1
  174. package/dist/types/lazy/carousel-1/carousel-1.d.ts +4 -8
  175. package/dist/types/lazy/carousel-1/carousel-1.d.ts.map +1 -1
  176. package/dist/types/lazy/download-1/download-1.d.ts +4 -8
  177. package/dist/types/lazy/download-1/download-1.d.ts.map +1 -1
  178. package/dist/types/lazy/lazy-loader/lazy-loader-client.d.ts +5 -2
  179. package/dist/types/lazy/lazy-loader/lazy-loader-client.d.ts.map +1 -1
  180. package/dist/types/lazy/lazy-loader/lazy-loader.d.ts +5 -3
  181. package/dist/types/lazy/lazy-loader/lazy-loader.d.ts.map +1 -1
  182. package/dist/types/lazy/media-full-1/media-full-1.d.ts +4 -8
  183. package/dist/types/lazy/media-full-1/media-full-1.d.ts.map +1 -1
  184. package/dist/types/lazy/media-full-2/media-full-2.d.ts +4 -8
  185. package/dist/types/lazy/media-full-2/media-full-2.d.ts.map +1 -1
  186. package/dist/types/lazy/media-media-1/media-media-1.d.ts +4 -7
  187. package/dist/types/lazy/media-media-1/media-media-1.d.ts.map +1 -1
  188. package/dist/types/lazy/not-found/not-found.d.ts +4 -8
  189. package/dist/types/lazy/not-found/not-found.d.ts.map +1 -1
  190. package/dist/types/lazy/related-1/related-1-card.d.ts +1 -2
  191. package/dist/types/lazy/related-1/related-1-card.d.ts.map +1 -1
  192. package/dist/types/lazy/related-1/related-1.d.ts +4 -8
  193. package/dist/types/lazy/related-1/related-1.d.ts.map +1 -1
  194. package/dist/types/lazy/sizes-colors-1/sizes-colors-1.d.ts +4 -7
  195. package/dist/types/lazy/sizes-colors-1/sizes-colors-1.d.ts.map +1 -1
  196. package/dist/types/lazy/text-1/text-1.d.ts +4 -7
  197. package/dist/types/lazy/text-1/text-1.d.ts.map +1 -1
  198. package/dist/types/lazy/text-aside-1/text-aside-1.d.ts +4 -8
  199. package/dist/types/lazy/text-aside-1/text-aside-1.d.ts.map +1 -1
  200. package/dist/types/lazy/text-media-1/text-media-1.d.ts +4 -8
  201. package/dist/types/lazy/text-media-1/text-media-1.d.ts.map +1 -1
  202. package/dist/types/lazy/text-text-1/text-text-1.d.ts +4 -8
  203. package/dist/types/lazy/text-text-1/text-text-1.d.ts.map +1 -1
  204. package/dist/types/sections/magazine-related/magazine-related.d.ts +4 -8
  205. package/dist/types/sections/magazine-related/magazine-related.d.ts.map +1 -1
  206. package/dist/types/sections/products-detail-download/products-detail-download.d.ts +6 -9
  207. package/dist/types/sections/products-detail-download/products-detail-download.d.ts.map +1 -1
  208. package/dist/types/sections/products-detail-related/products-detail-related.d.ts +6 -9
  209. package/dist/types/sections/products-detail-related/products-detail-related.d.ts.map +1 -1
  210. package/dist/types/sections/products-detail-size-color/products-detail-size-color.d.ts +6 -9
  211. package/dist/types/sections/products-detail-size-color/products-detail-size-color.d.ts.map +1 -1
  212. package/dist/types/sections/shop-detail-related/shop-detail-related.d.ts +6 -9
  213. package/dist/types/sections/shop-detail-related/shop-detail-related.d.ts.map +1 -1
  214. package/dist/types/theme/global.vars.d.ts.map +1 -1
  215. package/dist/types/theme/types.d.ts +11 -2
  216. package/dist/types/theme/types.d.ts.map +1 -1
  217. package/package.json +2 -1
  218. package/src/accessibility/index.ts +10 -0
  219. package/src/components/breakpoint/breakpoint.tsx +1 -0
  220. package/src/components/media/media-image.tsx +6 -3
  221. package/src/components/media/media.tsx +36 -13
  222. package/src/fields/field-accept.tsx +18 -8
  223. package/src/fields/field-autocomplete.tsx +15 -15
  224. package/src/fields/field-card.tsx +4 -8
  225. package/src/fields/field-checkbox.tsx +4 -8
  226. package/src/fields/field-collection.tsx +42 -27
  227. package/src/fields/field-error.variants.ts +8 -7
  228. package/src/fields/field-password.tsx +9 -9
  229. package/src/fields/field-select.tsx +12 -13
  230. package/src/fields/field-text.tsx +11 -12
  231. package/src/fields/field-textarea.tsx +62 -0
  232. package/src/fields/fields.tsx +3 -1
  233. package/src/fields/index.ts +1 -0
  234. package/src/forms/autocomplete/autocomplete.tsx +24 -10
  235. package/src/forms/custom-select/custom-select-input.tsx +16 -14
  236. package/src/forms/custom-select/custom-select.tsx +12 -5
  237. package/src/forms/field/field.tsx +4 -1
  238. package/src/forms/field/field.variants.ts +24 -3
  239. package/src/forms/form/form.tsx +0 -22
  240. package/src/forms/form-error/form-error.variants.ts +14 -2
  241. package/src/forms/form-tester/form-tester.variants.ts +1 -1
  242. package/src/forms/input/input.tsx +3 -1
  243. package/src/forms/input/input.variants.ts +4 -3
  244. package/src/forms/input-group/input-group.tsx +4 -3
  245. package/src/forms/label/label.variants.ts +3 -1
  246. package/src/forms/select/select.tsx +1 -1
  247. package/src/forms/textarea/textarea.tsx +19 -3
  248. package/src/forms/textarea/textarea.variants.ts +1 -1
  249. package/src/forms/utils/utils.tsx +3 -2
  250. package/src/index.ts +1 -0
  251. package/src/lazy/carousel-1/carousel-1.tsx +5 -10
  252. package/src/lazy/download-1/download-1.tsx +5 -10
  253. package/src/lazy/lazy-loader/lazy-loader-client.tsx +13 -17
  254. package/src/lazy/lazy-loader/lazy-loader.tsx +13 -9
  255. package/src/lazy/media-full-1/media-full-1.tsx +5 -10
  256. package/src/lazy/media-full-2/media-full-2.tsx +5 -10
  257. package/src/lazy/media-media-1/media-media-1.tsx +5 -9
  258. package/src/lazy/not-found/not-found.tsx +4 -9
  259. package/src/lazy/related-1/related-1-card.tsx +1 -1
  260. package/src/lazy/related-1/related-1.tsx +5 -9
  261. package/src/lazy/sizes-colors-1/sizes-colors-1.tsx +5 -9
  262. package/src/lazy/text-1/text-1.tsx +5 -9
  263. package/src/lazy/text-aside-1/text-aside-1.tsx +5 -10
  264. package/src/lazy/text-media-1/text-media-1.tsx +5 -10
  265. package/src/lazy/text-text-1/text-text-1.tsx +5 -10
  266. package/src/sections/footer/footer.tsx +1 -1
  267. package/src/sections/magazine-related/magazine-related.tsx +5 -10
  268. package/src/sections/products-detail-download/products-detail-download.tsx +5 -11
  269. package/src/sections/products-detail-related/products-detail-related.tsx +5 -11
  270. package/src/sections/products-detail-size-color/products-detail-size-color.tsx +5 -11
  271. package/src/sections/shop-detail-related/shop-detail-related.tsx +5 -11
  272. package/src/theme/global.vars.scss +34 -7
  273. package/src/theme/global.vars.ts +34 -7
  274. package/src/theme/theme.json +26 -5
  275. package/src/theme/types.ts +12 -2
@@ -1,6 +1,8 @@
1
1
  import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
2
2
  import { FormGroup, FormArray } from '@websolutespa/bom-mixer-forms';
3
3
  import { useLabel } from '@websolutespa/bom-mixer-hooks';
4
+ import { useMemo } from 'react';
5
+ import styled from 'styled-components';
4
6
  import '../components/accordion/accordion.js';
5
7
  import '../components/accordion/accordion-base.js';
6
8
  import '../components/badge/badge.js';
@@ -50,71 +52,78 @@ import '../components/tabs/tabs.js';
50
52
  import '../components/text/text.js';
51
53
  import '../components/tooltip/tooltip.js';
52
54
  import '../components/transition/transition.js';
53
- import 'react';
54
- import 'styled-components';
55
55
  import '../components/css.js';
56
56
  import { FIELDS } from './fields.js';
57
57
 
58
- function FieldCollection(props) {
58
+ const StyledGrid = styled(Grid)`
59
+ flex-direction: column;
60
+ align-items: flex-start;
61
+ `;
62
+ function FieldCollection(_ref) {
63
+ let {
64
+ collection,
65
+ fields,
66
+ uid
67
+ } = _ref;
59
68
  const label = useLabel();
60
- let uid = props.uid || 0;
61
- const controls = props.collection instanceof FormGroup ? Object.keys(props.collection.controls).map(key => {
62
- return {
63
- key,
64
- control: props.collection.controls[key]
65
- };
66
- }) : props.collection.controls.map((control, i) => {
67
- return {
68
- key: i,
69
- control
70
- };
71
- });
69
+ const controls = useMemo(() => {
70
+ return collection instanceof FormGroup ? Object.keys(collection.controls).map(key => {
71
+ return {
72
+ key,
73
+ control: collection.controls[key]
74
+ };
75
+ }) : collection.controls.map((control, i) => {
76
+ return {
77
+ key: i,
78
+ control
79
+ };
80
+ });
81
+ }, [collection]);
82
+ const customFields = useMemo(() => {
83
+ return Object.assign(Object.assign({}, FIELDS), fields);
84
+ }, [fields]);
85
+ let uniqueId = uid || 0;
72
86
  function resolveField(item) {
73
87
  const {
74
88
  control,
75
89
  key
76
90
  } = item;
77
- ++uid;
91
+ ++uniqueId;
78
92
  if (control instanceof FormGroup || control instanceof FormArray) {
79
93
  return jsx(FieldCollection, {
80
94
  collection: control,
81
- uid: uid
82
- }, getFieldUID(uid, control.name));
95
+ fields: fields,
96
+ uid: uniqueId
97
+ }, getFieldUID(uniqueId, control.name));
83
98
  } else {
84
- if (control.schema in FIELDS) {
85
- return FIELDS[control.schema](control, uid);
99
+ if (control.schema in customFields) {
100
+ return customFields[control.schema](control, uniqueId);
86
101
  } else {
87
- return FIELDS.text(control, uid);
102
+ return customFields.text(control, uniqueId);
88
103
  }
89
104
  }
90
105
  }
91
106
  return jsxs(Fragment, {
92
- children: [props.collection.label && jsx(Grid, {
107
+ children: [collection.label && jsx(Grid, {
93
108
  xs: 12,
94
109
  children: jsx(Divider, {
95
- children: label(props.collection.label)
110
+ children: label(collection.label)
96
111
  })
97
- }, getFieldUID(++uid, props.collection.name)), controls.length > 0 && controls.map(item => {
112
+ }, getFieldUID(++uniqueId, collection.name)), controls.length > 0 && controls.map(item => {
98
113
  const control = item.control;
99
114
  if (!control) {
100
115
  return;
101
116
  }
102
- if (control instanceof FormGroup || control instanceof FormArray || control.state.hidden) {
103
- // console.log(control);
104
- if (control.state.hidden) {
105
- return;
106
- }
117
+ if (control.state.hidden) {
118
+ return;
119
+ } else if (control instanceof FormGroup || control instanceof FormArray) {
107
120
  return resolveField(item);
108
121
  } else {
109
- return jsx(Grid, {
122
+ return jsx(StyledGrid, {
110
123
  xs: 12,
111
124
  sm: ['checkbox', 'accept'].includes(control.schema) ? 12 : 6,
112
- style: {
113
- flexDirection: 'column',
114
- alignItems: 'flex-start'
115
- },
116
125
  children: resolveField(item)
117
- }, getFieldUID(++uid, item.key));
126
+ }, getFieldUID(++uniqueId, item.key));
118
127
  }
119
128
  })]
120
129
  });
@@ -1 +1 @@
1
- {"version":3,"file":"field-collection.js","sources":["../../../src/fields/field-collection.tsx"],"sourcesContent":["import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { FormArray, FormGroup } from '@websolutespa/bom-mixer-forms';\nimport { useLabel } from '@websolutespa/bom-mixer-hooks';\nimport { Divider, Grid } from '../components';\nimport { FIELDS } from './fields';\nexport function FieldCollection(props) {\n const label = useLabel();\n let uid = props.uid || 0;\n const controls = (props.collection instanceof FormGroup) ?\n Object.keys(props.collection.controls).map(key => {\n return { key, control: props.collection.controls[key] };\n }) :\n props.collection.controls.map((control, i) => {\n return { key: i, control };\n });\n function resolveField(item) {\n const { control, key } = item;\n ++uid;\n if (control instanceof FormGroup || control instanceof FormArray) {\n return _jsx(FieldCollection, { collection: control, uid: uid }, getFieldUID(uid, control.name));\n }\n else {\n if (control.schema in FIELDS) {\n return FIELDS[control.schema](control, uid);\n }\n else {\n return FIELDS.text(control, uid);\n }\n }\n }\n return (_jsxs(_Fragment, { children: [props.collection.label &&\n _jsx(Grid, { xs: 12, children: _jsx(Divider, { children: label(props.collection.label) }) }, getFieldUID(++uid, props.collection.name)), controls.length > 0 && controls.map(item => {\n const control = item.control;\n if (!control) {\n return;\n }\n if (control instanceof FormGroup || control instanceof FormArray || control.state.hidden) {\n // console.log(control);\n if (control.state.hidden) {\n return;\n }\n return resolveField(item);\n }\n else {\n return _jsx(Grid, { xs: 12, sm: ['checkbox', 'accept'].includes(control.schema) ? 12 : 6, style: { flexDirection: 'column', alignItems: 'flex-start' }, children: resolveField(item) }, getFieldUID(++uid, item.key));\n }\n })] }));\n}\nfunction getFieldUID(uid, key = 'none') {\n const fieldUID = `${++uid}-${key}`;\n return fieldUID;\n}\n//# sourceMappingURL=field-collection.js.map"],"names":["FieldCollection","props","label","useLabel","uid","controls","collection","FormGroup","Object","keys","map","key","control","i","resolveField","item","FormArray","_jsx","getFieldUID","name","schema","FIELDS","text","_jsxs","_Fragment","children","Grid","xs","Divider","length","state","hidden","sm","includes","style","flexDirection","alignItems","fieldUID"],"mappings":"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"}
1
+ {"version":3,"file":"field-collection.js","sources":["../../../src/fields/field-collection.tsx"],"sourcesContent":["import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { FormArray, FormGroup } from '@websolutespa/bom-mixer-forms';\nimport { useLabel } from '@websolutespa/bom-mixer-hooks';\nimport { useMemo } from 'react';\nimport styled from 'styled-components';\nimport { Divider, Grid } from '../components';\nimport { FIELDS } from './fields';\nconst StyledGrid = styled(Grid) `\r\n flex-direction: column;\r\n align-items: flex-start;\r\n`;\nexport function FieldCollection({ collection, fields, uid }) {\n const label = useLabel();\n const controls = useMemo(() => {\n return (collection instanceof FormGroup) ?\n Object.keys(collection.controls).map(key => {\n return { key, control: collection.controls[key] };\n }) :\n collection.controls.map((control, i) => {\n return { key: i, control };\n });\n }, [collection]);\n const customFields = useMemo(() => {\n return Object.assign(Object.assign({}, FIELDS), fields);\n }, [fields]);\n let uniqueId = uid || 0;\n function resolveField(item) {\n const { control, key } = item;\n ++uniqueId;\n if (control instanceof FormGroup || control instanceof FormArray) {\n return _jsx(FieldCollection, { collection: control, fields: fields, uid: uniqueId }, getFieldUID(uniqueId, control.name));\n }\n else {\n if (control.schema in customFields) {\n return customFields[control.schema](control, uniqueId);\n }\n else {\n return customFields.text(control, uniqueId);\n }\n }\n }\n return (_jsxs(_Fragment, { children: [collection.label &&\n _jsx(Grid, { xs: 12, children: _jsx(Divider, { children: label(collection.label) }) }, getFieldUID(++uniqueId, collection.name)), controls.length > 0 && controls.map(item => {\n const control = item.control;\n if (!control) {\n return;\n }\n if (control.state.hidden) {\n return;\n }\n else if (control instanceof FormGroup || control instanceof FormArray) {\n return resolveField(item);\n }\n else {\n return _jsx(StyledGrid, { xs: 12, sm: ['checkbox', 'accept'].includes(control.schema) ? 12 : 6, children: resolveField(item) }, getFieldUID(++uniqueId, item.key));\n }\n })] }));\n}\nfunction getFieldUID(uid, key = 'none') {\n const fieldUID = `${++uid}-${key}`;\n return fieldUID;\n}\n//# sourceMappingURL=field-collection.js.map"],"names":["StyledGrid","styled","Grid","FieldCollection","_ref","collection","fields","uid","label","useLabel","controls","useMemo","FormGroup","Object","keys","map","key","control","i","customFields","assign","FIELDS","uniqueId","resolveField","item","FormArray","_jsx","getFieldUID","name","schema","text","_jsxs","_Fragment","children","xs","Divider","length","state","hidden","sm","includes","fieldUID"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,MAAMA,UAAU,GAAGC,MAAM,CAACC,IAAI,CAAG,CAAA;AACjC;AACA;AACA,CAAC,CAAA;AACM,SAASC,eAAeA,CAAAC,IAAA,EAA8B;EAAA,IAA7B;IAAEC,UAAU;IAAEC,MAAM;AAAEC,IAAAA,GAAAA;AAAI,GAAC,GAAAH,IAAA,CAAA;AACvD,EAAA,MAAMI,KAAK,GAAGC,QAAQ,EAAE,CAAA;AACxB,EAAA,MAAMC,QAAQ,GAAGC,OAAO,CAAC,MAAM;AAC3B,IAAA,OAAQN,UAAU,YAAYO,SAAS,GACnCC,MAAM,CAACC,IAAI,CAACT,UAAU,CAACK,QAAQ,CAAC,CAACK,GAAG,CAACC,GAAG,IAAI;MACxC,OAAO;QAAEA,GAAG;AAAEC,QAAAA,OAAO,EAAEZ,UAAU,CAACK,QAAQ,CAACM,GAAG,CAAA;OAAG,CAAA;AACrD,KAAC,CAAC,GACFX,UAAU,CAACK,QAAQ,CAACK,GAAG,CAAC,CAACE,OAAO,EAAEC,CAAC,KAAK;MACpC,OAAO;AAAEF,QAAAA,GAAG,EAAEE,CAAC;AAAED,QAAAA,OAAAA;OAAS,CAAA;AAC9B,KAAC,CAAC,CAAA;AACV,GAAC,EAAE,CAACZ,UAAU,CAAC,CAAC,CAAA;AAChB,EAAA,MAAMc,YAAY,GAAGR,OAAO,CAAC,MAAM;AAC/B,IAAA,OAAOE,MAAM,CAACO,MAAM,CAACP,MAAM,CAACO,MAAM,CAAC,EAAE,EAAEC,MAAM,CAAC,EAAEf,MAAM,CAAC,CAAA;AAC3D,GAAC,EAAE,CAACA,MAAM,CAAC,CAAC,CAAA;AACZ,EAAA,IAAIgB,QAAQ,GAAGf,GAAG,IAAI,CAAC,CAAA;EACvB,SAASgB,YAAYA,CAACC,IAAI,EAAE;IACxB,MAAM;MAAEP,OAAO;AAAED,MAAAA,GAAAA;AAAI,KAAC,GAAGQ,IAAI,CAAA;AAC7B,IAAA,EAAEF,QAAQ,CAAA;AACV,IAAA,IAAIL,OAAO,YAAYL,SAAS,IAAIK,OAAO,YAAYQ,SAAS,EAAE;MAC9D,OAAOC,GAAI,CAACvB,eAAe,EAAE;AAAEE,QAAAA,UAAU,EAAEY,OAAO;AAAEX,QAAAA,MAAM,EAAEA,MAAM;AAAEC,QAAAA,GAAG,EAAEe,QAAAA;OAAU,EAAEK,WAAW,CAACL,QAAQ,EAAEL,OAAO,CAACW,IAAI,CAAC,CAAC,CAAA;AAC7H,KAAC,MACI;AACD,MAAA,IAAIX,OAAO,CAACY,MAAM,IAAIV,YAAY,EAAE;QAChC,OAAOA,YAAY,CAACF,OAAO,CAACY,MAAM,CAAC,CAACZ,OAAO,EAAEK,QAAQ,CAAC,CAAA;AAC1D,OAAC,MACI;AACD,QAAA,OAAOH,YAAY,CAACW,IAAI,CAACb,OAAO,EAAEK,QAAQ,CAAC,CAAA;AAC/C,OAAA;AACJ,KAAA;AACJ,GAAA;EACA,OAAQS,IAAK,CAACC,QAAS,EAAE;IAAEC,QAAQ,EAAE,CAAC5B,UAAU,CAACG,KAAK,IAC1CkB,GAAI,CAACxB,IAAI,EAAE;AAAEgC,MAAAA,EAAE,EAAE,EAAE;AAAED,MAAAA,QAAQ,EAAEP,GAAI,CAACS,OAAO,EAAE;AAAEF,QAAAA,QAAQ,EAAEzB,KAAK,CAACH,UAAU,CAACG,KAAK,CAAA;OAAG,CAAA;KAAG,EAAEmB,WAAW,CAAC,EAAEL,QAAQ,EAAEjB,UAAU,CAACuB,IAAI,CAAC,CAAC,EAAElB,QAAQ,CAAC0B,MAAM,GAAG,CAAC,IAAI1B,QAAQ,CAACK,GAAG,CAACS,IAAI,IAAI;AAC9K,MAAA,MAAMP,OAAO,GAAGO,IAAI,CAACP,OAAO,CAAA;MAC5B,IAAI,CAACA,OAAO,EAAE;AACV,QAAA,OAAA;AACJ,OAAA;AACA,MAAA,IAAIA,OAAO,CAACoB,KAAK,CAACC,MAAM,EAAE;AACtB,QAAA,OAAA;OACH,MACI,IAAIrB,OAAO,YAAYL,SAAS,IAAIK,OAAO,YAAYQ,SAAS,EAAE;QACnE,OAAOF,YAAY,CAACC,IAAI,CAAC,CAAA;AAC7B,OAAC,MACI;QACD,OAAOE,GAAI,CAAC1B,UAAU,EAAE;AAAEkC,UAAAA,EAAE,EAAE,EAAE;AAAEK,UAAAA,EAAE,EAAE,CAAC,UAAU,EAAE,QAAQ,CAAC,CAACC,QAAQ,CAACvB,OAAO,CAACY,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC;UAAEI,QAAQ,EAAEV,YAAY,CAACC,IAAI,CAAA;SAAG,EAAEG,WAAW,CAAC,EAAEL,QAAQ,EAAEE,IAAI,CAACR,GAAG,CAAC,CAAC,CAAA;AACtK,OAAA;AACJ,KAAC,CAAC,CAAA;AAAE,GAAC,CAAC,CAAA;AAClB,CAAA;AACA,SAASW,WAAWA,CAACpB,GAAG,EAAES,GAAG,EAAW;AAAA,EAAA,IAAdA,GAAG,KAAA,KAAA,CAAA,EAAA;AAAHA,IAAAA,GAAG,GAAG,MAAM,CAAA;AAAA,GAAA;AAClC,EAAA,MAAMyB,QAAQ,GAAI,CAAA,EAAE,EAAElC,GAAI,CAAA,CAAA,EAAGS,GAAI,CAAC,CAAA,CAAA;AAClC,EAAA,OAAOyB,QAAQ,CAAA;AACnB;;;;"}
@@ -1,13 +1,14 @@
1
1
  import { css } from 'styled-components';
2
2
 
3
3
  const CssFieldErrorDefault = css`
4
- margin: 0.5em 0;
5
- padding: 0.2em 0.5em;
6
- font-size: var(--font-paragraph50-size, --form-font-size, 1rem);
7
- font-weight: 500;
8
- border: 1px solid var(--form-border-color-error);
9
- background: var(--form-background-color-error);
10
- color: var(--form-color-error);
4
+ margin: var(--form-error-margin, 0.5em 0);
5
+ padding: var(--form-error-padding, 0.2em 0.4em);
6
+ font-size: var(--form-error-font-size, 0.9rem);
7
+ font-weight: var(--form-error-font-weight, 500);
8
+ line-height: var(--form-error-line-height, 1.2);
9
+ border: var(--form-error-border, none);
10
+ background: var(--form-error-background-color, transparent);
11
+ color: var(--form-error-color, transparent);
11
12
  `;
12
13
  const fieldErrorVariants = {
13
14
  default: CssFieldErrorDefault
@@ -1 +1 @@
1
- {"version":3,"file":"field-error.variants.js","sources":["../../../src/fields/field-error.variants.ts"],"sourcesContent":["import { css } from 'styled-components';\nexport const CssFieldErrorDefault = css `\r\n margin: 0.5em 0;\r\n padding: 0.2em 0.5em;\r\n font-size: var(--font-paragraph50-size, --form-font-size, 1rem);\r\n font-weight: 500;\r\n border: 1px solid var(--form-border-color-error);\r\n background: var(--form-background-color-error);\r\n color: var(--form-color-error);\r\n`;\nexport const fieldErrorVariants = {\n default: CssFieldErrorDefault,\n};\n//# sourceMappingURL=field-error.variants.js.map"],"names":["CssFieldErrorDefault","css","fieldErrorVariants","default"],"mappings":";;AACO,MAAMA,oBAAoB,GAAGC,GAAK,CAAA;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;AACM,MAAMC,kBAAkB,GAAG;AAC9BC,EAAAA,OAAO,EAAEH,oBAAAA;AACb;;;;"}
1
+ {"version":3,"file":"field-error.variants.js","sources":["../../../src/fields/field-error.variants.ts"],"sourcesContent":["import { css } from 'styled-components';\nexport const CssFieldErrorDefault = css `\r\n margin: var(--form-error-margin, 0.5em 0);\r\n padding: var(--form-error-padding, 0.2em 0.4em);\r\n font-size: var(--form-error-font-size, 0.9rem);\r\n font-weight: var(--form-error-font-weight, 500);\r\n line-height: var(--form-error-line-height, 1.2);\r\n border: var(--form-error-border, none);\r\n background: var(--form-error-background-color, transparent);\r\n color: var(--form-error-color, transparent);\r\n`;\nexport const fieldErrorVariants = {\n default: CssFieldErrorDefault,\n};\n//# sourceMappingURL=field-error.variants.js.map"],"names":["CssFieldErrorDefault","css","fieldErrorVariants","default"],"mappings":";;AACO,MAAMA,oBAAoB,GAAGC,GAAK,CAAA;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAC;AACM,MAAMC,kBAAkB,GAAG;AAC9BC,EAAAA,OAAO,EAAEH,oBAAAA;AACb;;;;"}
@@ -42,14 +42,18 @@ import '../forms/textarea/textarea.variants.js';
42
42
  import '../forms/utils/utils.js';
43
43
  import { FieldError } from './field-error.js';
44
44
 
45
- function FieldPassword(props) {
45
+ function FieldPassword(_ref) {
46
+ let {
47
+ control,
48
+ uid = 0
49
+ } = _ref;
46
50
  const label = useLabel();
47
- const uniqueName = `${props.control.name}-${props.uid}`;
48
- const [state, setValue, setTouched] = useControl(props.control);
51
+ const uniqueName = `${control.name}-${uid}`;
52
+ const [state, setValue, setTouched] = useControl(control);
49
53
  const onChange = event => {
50
54
  // console.log('FieldPassword', event.target.value);
51
55
  setValue(event.target.value);
52
- // props.control.value = event.target.value;
56
+ // control.value = event.target.value;
53
57
  };
54
58
 
55
59
  const [focus, setFocus] = useState(false);
@@ -68,13 +72,15 @@ function FieldPassword(props) {
68
72
  type: "hidden",
69
73
  value: state.value || ''
70
74
  }) : jsxs(Field, {
75
+ state: state,
71
76
  children: [jsx(Label, {
72
- children: props.control.label && label(props.control.label)
77
+ htmlFor: uniqueName,
78
+ children: control.label && label(control.label)
73
79
  }), jsx(Input, {
74
80
  id: uniqueName,
75
81
  name: uniqueName,
76
82
  type: type,
77
- placeholder: label(props.control.placeholder || props.control.label || ''),
83
+ placeholder: label(control.placeholder || control.label || ''),
78
84
  value: state.value || '',
79
85
  onChange: onChange,
80
86
  onBlur: onBlur,
@@ -1 +1 @@
1
- {"version":3,"file":"field-password.js","sources":["../../../src/fields/field-password.tsx"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { useControl } from '@websolutespa/bom-mixer-forms';\nimport { useLabel } from '@websolutespa/bom-mixer-hooks';\nimport { IconEye } from '@websolutespa/bom-mixer-icons';\nimport { useState } from 'react';\nimport { Field, Input, Label } from '../forms';\nimport { FieldError } from './field-error';\nexport function FieldPassword(props) {\n const label = useLabel();\n const uniqueName = `${props.control.name}-${props.uid}`;\n const [state, setValue, setTouched] = useControl(props.control);\n const onChange = (event) => {\n // console.log('FieldPassword', event.target.value);\n setValue(event.target.value);\n // props.control.value = event.target.value;\n };\n const [focus, setFocus] = useState(false);\n const [type, setType] = useState('password');\n const onBlur = (_) => {\n setTouched();\n setFocus(false);\n };\n const onFocus = (_) => {\n setFocus(true);\n };\n const onToggle = () => {\n setType(type === 'password' ? 'text' : 'password');\n };\n return (state.flags.hidden ? (_jsx(\"input\", { type: \"hidden\", value: state.value || '' })) : (_jsxs(Field, { children: [_jsx(Label, { children: props.control.label && label(props.control.label) }), _jsx(Input, { id: uniqueName, name: uniqueName, type: type, placeholder: label(props.control.placeholder || props.control.label || ''), value: state.value || '', onChange: onChange, onBlur: onBlur, onFocus: onFocus, disabled: state.flags.disabled, readOnly: state.flags.readonly, width: \"100%\", after: _jsx(IconEye, { color: type === 'password' ? 'var(--color-neutral-400)' : 'var(--color-primary-500)', onClick: () => onToggle() }) }), _jsx(FieldError, { state: state })] })));\n}\n//# sourceMappingURL=field-password.js.map"],"names":["FieldPassword","props","label","useLabel","uniqueName","control","name","uid","state","setValue","setTouched","useControl","onChange","event","target","value","focus","setFocus","useState","type","setType","onBlur","_","onFocus","onToggle","flags","hidden","_jsx","_jsxs","Field","children","Label","Input","id","placeholder","disabled","readOnly","readonly","width","after","IconEye","color","onClick","FieldError"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOO,SAASA,aAAaA,CAACC,KAAK,EAAE;AACjC,EAAA,MAAMC,KAAK,GAAGC,QAAQ,EAAE,CAAA;AACxB,EAAA,MAAMC,UAAU,GAAI,CAAEH,EAAAA,KAAK,CAACI,OAAO,CAACC,IAAK,CAAGL,CAAAA,EAAAA,KAAK,CAACM,GAAI,CAAC,CAAA,CAAA;AACvD,EAAA,MAAM,CAACC,KAAK,EAAEC,QAAQ,EAAEC,UAAU,CAAC,GAAGC,UAAU,CAACV,KAAK,CAACI,OAAO,CAAC,CAAA;EAC/D,MAAMO,QAAQ,GAAIC,KAAK,IAAK;AACxB;AACAJ,IAAAA,QAAQ,CAACI,KAAK,CAACC,MAAM,CAACC,KAAK,CAAC,CAAA;AAC5B;GACH,CAAA;;EACD,MAAM,CAACC,KAAK,EAAEC,QAAQ,CAAC,GAAGC,QAAQ,CAAC,KAAK,CAAC,CAAA;EACzC,MAAM,CAACC,IAAI,EAAEC,OAAO,CAAC,GAAGF,QAAQ,CAAC,UAAU,CAAC,CAAA;EAC5C,MAAMG,MAAM,GAAIC,CAAC,IAAK;AAClBZ,IAAAA,UAAU,EAAE,CAAA;IACZO,QAAQ,CAAC,KAAK,CAAC,CAAA;GAClB,CAAA;EACD,MAAMM,OAAO,GAAID,CAAC,IAAK;IACnBL,QAAQ,CAAC,IAAI,CAAC,CAAA;GACjB,CAAA;EACD,MAAMO,QAAQ,GAAGA,MAAM;IACnBJ,OAAO,CAACD,IAAI,KAAK,UAAU,GAAG,MAAM,GAAG,UAAU,CAAC,CAAA;GACrD,CAAA;EACD,OAAQX,KAAK,CAACiB,KAAK,CAACC,MAAM,GAAIC,GAAI,CAAC,OAAO,EAAE;AAAER,IAAAA,IAAI,EAAE,QAAQ;AAAEJ,IAAAA,KAAK,EAAEP,KAAK,CAACO,KAAK,IAAI,EAAA;AAAG,GAAC,CAAC,GAAKa,IAAK,CAACC,KAAK,EAAE;AAAEC,IAAAA,QAAQ,EAAE,CAACH,GAAI,CAACI,KAAK,EAAE;AAAED,MAAAA,QAAQ,EAAE7B,KAAK,CAACI,OAAO,CAACH,KAAK,IAAIA,KAAK,CAACD,KAAK,CAACI,OAAO,CAACH,KAAK,CAAA;AAAE,KAAC,CAAC,EAAEyB,GAAI,CAACK,KAAK,EAAE;AAAEC,MAAAA,EAAE,EAAE7B,UAAU;AAAEE,MAAAA,IAAI,EAAEF,UAAU;AAAEe,MAAAA,IAAI,EAAEA,IAAI;AAAEe,MAAAA,WAAW,EAAEhC,KAAK,CAACD,KAAK,CAACI,OAAO,CAAC6B,WAAW,IAAIjC,KAAK,CAACI,OAAO,CAACH,KAAK,IAAI,EAAE,CAAC;AAAEa,MAAAA,KAAK,EAAEP,KAAK,CAACO,KAAK,IAAI,EAAE;AAAEH,MAAAA,QAAQ,EAAEA,QAAQ;AAAES,MAAAA,MAAM,EAAEA,MAAM;AAAEE,MAAAA,OAAO,EAAEA,OAAO;AAAEY,MAAAA,QAAQ,EAAE3B,KAAK,CAACiB,KAAK,CAACU,QAAQ;AAAEC,MAAAA,QAAQ,EAAE5B,KAAK,CAACiB,KAAK,CAACY,QAAQ;AAAEC,MAAAA,KAAK,EAAE,MAAM;AAAEC,MAAAA,KAAK,EAAEZ,GAAI,CAACa,OAAO,EAAE;AAAEC,QAAAA,KAAK,EAAEtB,IAAI,KAAK,UAAU,GAAG,0BAA0B,GAAG,0BAA0B;AAAEuB,QAAAA,OAAO,EAAEA,MAAMlB,QAAQ,EAAC;OAAG,CAAA;AAAE,KAAC,CAAC,EAAEG,GAAI,CAACgB,UAAU,EAAE;AAAEnC,MAAAA,KAAK,EAAEA,KAAAA;AAAM,KAAC,CAAC,CAAA;AAAE,GAAC,CAAE,CAAA;AACtqB;;;;"}
1
+ {"version":3,"file":"field-password.js","sources":["../../../src/fields/field-password.tsx"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { useControl } from '@websolutespa/bom-mixer-forms';\nimport { useLabel } from '@websolutespa/bom-mixer-hooks';\nimport { IconEye } from '@websolutespa/bom-mixer-icons';\nimport { useState } from 'react';\nimport { Field, Input, Label } from '../forms';\nimport { FieldError } from './field-error';\nexport function FieldPassword({ control, uid = 0 }) {\n const label = useLabel();\n const uniqueName = `${control.name}-${uid}`;\n const [state, setValue, setTouched] = useControl(control);\n const onChange = (event) => {\n // console.log('FieldPassword', event.target.value);\n setValue(event.target.value);\n // control.value = event.target.value;\n };\n const [focus, setFocus] = useState(false);\n const [type, setType] = useState('password');\n const onBlur = (_) => {\n setTouched();\n setFocus(false);\n };\n const onFocus = (_) => {\n setFocus(true);\n };\n const onToggle = () => {\n setType(type === 'password' ? 'text' : 'password');\n };\n return (state.flags.hidden ? (_jsx(\"input\", { type: \"hidden\", value: state.value || '' })) : (_jsxs(Field, { state: state, children: [_jsx(Label, { htmlFor: uniqueName, children: control.label && label(control.label) }), _jsx(Input, { id: uniqueName, name: uniqueName, type: type, placeholder: label(control.placeholder || control.label || ''), value: state.value || '', onChange: onChange, onBlur: onBlur, onFocus: onFocus, disabled: state.flags.disabled, readOnly: state.flags.readonly, width: \"100%\", after: _jsx(IconEye, { color: type === 'password' ? 'var(--color-neutral-400)' : 'var(--color-primary-500)', onClick: () => onToggle() }) }), _jsx(FieldError, { state: state })] })));\n}\n//# sourceMappingURL=field-password.js.map"],"names":["FieldPassword","_ref","control","uid","label","useLabel","uniqueName","name","state","setValue","setTouched","useControl","onChange","event","target","value","focus","setFocus","useState","type","setType","onBlur","_","onFocus","onToggle","flags","hidden","_jsx","_jsxs","Field","children","Label","htmlFor","Input","id","placeholder","disabled","readOnly","readonly","width","after","IconEye","color","onClick","FieldError"],"mappings":"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"}
@@ -41,12 +41,16 @@ import '../forms/textarea/textarea.variants.js';
41
41
  import '../forms/utils/utils.js';
42
42
  import { FieldError } from './field-error.js';
43
43
 
44
- function FieldSelect(props) {
44
+ function FieldSelect(_ref) {
45
+ let {
46
+ control,
47
+ uid = 0
48
+ } = _ref;
45
49
  const label = useLabel();
46
- const uniqueName = `${props.control.name}-${props.uid}`;
47
- const [state, setValue, setTouched] = useControl(props.control);
50
+ const uniqueName = `${control.name}-${uid}`;
51
+ const [state, setValue, setTouched] = useControl(control);
48
52
  const onChange = value => {
49
- const valueOrValues = stringToValue(value, props.control.options, props.control.optionsExtra);
53
+ const valueOrValues = stringToValue(value, control.options, control.optionsExtra);
50
54
  setValue(valueOrValues);
51
55
  };
52
56
  const [focus, setFocus] = useState(false);
@@ -61,18 +65,21 @@ function FieldSelect(props) {
61
65
  type: "hidden",
62
66
  value: valueToString(state.value)
63
67
  }) : jsxs(Field, {
64
- children: [props.control.label && jsx(Label, {
65
- children: label(props.control.label)
68
+ state: state,
69
+ children: [jsx(Label, {
70
+ htmlFor: uniqueName,
71
+ children: control.label && label(control.label)
66
72
  }), jsx(CustomSelect, {
67
73
  id: uniqueName,
68
- placeholder: label(props.control.placeholder || props.control.label || ''),
74
+ name: uniqueName,
75
+ placeholder: label(control.placeholder || control.label || ''),
69
76
  value: valueToString(state.value),
70
77
  onChange: onChange,
71
78
  onBlur: onBlur,
72
79
  onFocus: onFocus,
73
80
  disabled: state.flags.disabled || state.flags.readonly,
74
81
  width: "100%",
75
- children: props.control.options && props.control.options.map((option, i) => jsx(CustomSelect.Option, {
82
+ children: control.options && control.options.map((option, i) => jsx(CustomSelect.Option, {
76
83
  value: option.id.toString(),
77
84
  children: option.name
78
85
  }, i))
@@ -1 +1 @@
1
- {"version":3,"file":"field-select.js","sources":["../../../src/fields/field-select.tsx"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { stringToValue, useControl, valueToString } from '@websolutespa/bom-mixer-forms';\nimport { useLabel } from '@websolutespa/bom-mixer-hooks';\nimport { useState } from 'react';\nimport { CustomSelect, Field, Label } from '../forms';\nimport { FieldError } from './field-error';\nexport function FieldSelect(props) {\n const label = useLabel();\n const uniqueName = `${props.control.name}-${props.uid}`;\n const [state, setValue, setTouched] = useControl(props.control);\n const onChange = (value) => {\n const valueOrValues = stringToValue(value, props.control.options, props.control.optionsExtra);\n setValue(valueOrValues);\n };\n const [focus, setFocus] = useState(false);\n const onBlur = (_) => {\n setTouched();\n setFocus(false);\n };\n const onFocus = (_) => {\n setFocus(true);\n };\n return (state.flags.hidden ? (_jsx(\"input\", { type: \"hidden\", value: valueToString(state.value) })) : (_jsxs(Field, { children: [props.control.label &&\n _jsx(Label, { children: label(props.control.label) }), _jsx(CustomSelect, { id: uniqueName, placeholder: label(props.control.placeholder || props.control.label || ''), value: valueToString(state.value), onChange: onChange, onBlur: onBlur, onFocus: onFocus, disabled: state.flags.disabled || state.flags.readonly, width: \"100%\", children: props.control.options && props.control.options.map((option, i) => (_jsx(CustomSelect.Option, { value: option.id.toString(), children: option.name }, i))) }), _jsx(FieldError, { state: state })] })));\n}\n//# sourceMappingURL=field-select.js.map"],"names":["FieldSelect","props","label","useLabel","uniqueName","control","name","uid","state","setValue","setTouched","useControl","onChange","value","valueOrValues","stringToValue","options","optionsExtra","focus","setFocus","useState","onBlur","_","onFocus","flags","hidden","_jsx","type","valueToString","_jsxs","Field","children","Label","CustomSelect","id","placeholder","disabled","readonly","width","map","option","i","Option","toString","FieldError"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMO,SAASA,WAAWA,CAACC,KAAK,EAAE;AAC/B,EAAA,MAAMC,KAAK,GAAGC,QAAQ,EAAE,CAAA;AACxB,EAAA,MAAMC,UAAU,GAAI,CAAEH,EAAAA,KAAK,CAACI,OAAO,CAACC,IAAK,CAAGL,CAAAA,EAAAA,KAAK,CAACM,GAAI,CAAC,CAAA,CAAA;AACvD,EAAA,MAAM,CAACC,KAAK,EAAEC,QAAQ,EAAEC,UAAU,CAAC,GAAGC,UAAU,CAACV,KAAK,CAACI,OAAO,CAAC,CAAA;EAC/D,MAAMO,QAAQ,GAAIC,KAAK,IAAK;AACxB,IAAA,MAAMC,aAAa,GAAGC,aAAa,CAACF,KAAK,EAAEZ,KAAK,CAACI,OAAO,CAACW,OAAO,EAAEf,KAAK,CAACI,OAAO,CAACY,YAAY,CAAC,CAAA;IAC7FR,QAAQ,CAACK,aAAa,CAAC,CAAA;GAC1B,CAAA;EACD,MAAM,CAACI,KAAK,EAAEC,QAAQ,CAAC,GAAGC,QAAQ,CAAC,KAAK,CAAC,CAAA;EACzC,MAAMC,MAAM,GAAIC,CAAC,IAAK;AAClBZ,IAAAA,UAAU,EAAE,CAAA;IACZS,QAAQ,CAAC,KAAK,CAAC,CAAA;GAClB,CAAA;EACD,MAAMI,OAAO,GAAID,CAAC,IAAK;IACnBH,QAAQ,CAAC,IAAI,CAAC,CAAA;GACjB,CAAA;EACD,OAAQX,KAAK,CAACgB,KAAK,CAACC,MAAM,GAAIC,GAAI,CAAC,OAAO,EAAE;AAAEC,IAAAA,IAAI,EAAE,QAAQ;AAAEd,IAAAA,KAAK,EAAEe,aAAa,CAACpB,KAAK,CAACK,KAAK,CAAA;AAAE,GAAC,CAAC,GAAKgB,IAAK,CAACC,KAAK,EAAE;IAAEC,QAAQ,EAAE,CAAC9B,KAAK,CAACI,OAAO,CAACH,KAAK,IACxIwB,GAAI,CAACM,KAAK,EAAE;AAAED,MAAAA,QAAQ,EAAE7B,KAAK,CAACD,KAAK,CAACI,OAAO,CAACH,KAAK,CAAA;AAAE,KAAC,CAAC,EAAEwB,GAAI,CAACO,YAAY,EAAE;AAAEC,MAAAA,EAAE,EAAE9B,UAAU;AAAE+B,MAAAA,WAAW,EAAEjC,KAAK,CAACD,KAAK,CAACI,OAAO,CAAC8B,WAAW,IAAIlC,KAAK,CAACI,OAAO,CAACH,KAAK,IAAI,EAAE,CAAC;AAAEW,MAAAA,KAAK,EAAEe,aAAa,CAACpB,KAAK,CAACK,KAAK,CAAC;AAAED,MAAAA,QAAQ,EAAEA,QAAQ;AAAES,MAAAA,MAAM,EAAEA,MAAM;AAAEE,MAAAA,OAAO,EAAEA,OAAO;MAAEa,QAAQ,EAAE5B,KAAK,CAACgB,KAAK,CAACY,QAAQ,IAAI5B,KAAK,CAACgB,KAAK,CAACa,QAAQ;AAAEC,MAAAA,KAAK,EAAE,MAAM;MAAEP,QAAQ,EAAE9B,KAAK,CAACI,OAAO,CAACW,OAAO,IAAIf,KAAK,CAACI,OAAO,CAACW,OAAO,CAACuB,GAAG,CAAC,CAACC,MAAM,EAAEC,CAAC,KAAMf,GAAI,CAACO,YAAY,CAACS,MAAM,EAAE;AAAE7B,QAAAA,KAAK,EAAE2B,MAAM,CAACN,EAAE,CAACS,QAAQ,EAAE;QAAEZ,QAAQ,EAAES,MAAM,CAAClC,IAAAA;OAAM,EAAEmC,CAAC,CAAE,CAAA;AAAE,KAAC,CAAC,EAAEf,GAAI,CAACkB,UAAU,EAAE;AAAEpC,MAAAA,KAAK,EAAEA,KAAAA;AAAM,KAAC,CAAC,CAAA;AAAE,GAAC,CAAE,CAAA;AACviB;;;;"}
1
+ {"version":3,"file":"field-select.js","sources":["../../../src/fields/field-select.tsx"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { stringToValue, useControl, valueToString } from '@websolutespa/bom-mixer-forms';\nimport { useLabel } from '@websolutespa/bom-mixer-hooks';\nimport { useState } from 'react';\nimport { CustomSelect, Field, Label } from '../forms';\nimport { FieldError } from './field-error';\nexport function FieldSelect({ control, uid = 0 }) {\n const label = useLabel();\n const uniqueName = `${control.name}-${uid}`;\n const [state, setValue, setTouched] = useControl(control);\n const onChange = (value) => {\n const valueOrValues = stringToValue(value, control.options, control.optionsExtra);\n setValue(valueOrValues);\n };\n const [focus, setFocus] = useState(false);\n const onBlur = (_) => {\n setTouched();\n setFocus(false);\n };\n const onFocus = (_) => {\n setFocus(true);\n };\n return (state.flags.hidden ? (_jsx(\"input\", { type: \"hidden\", value: valueToString(state.value) })) : (_jsxs(Field, { state: state, children: [_jsx(Label, { htmlFor: uniqueName, children: control.label && label(control.label) }), _jsx(CustomSelect, { id: uniqueName, name: uniqueName, placeholder: label(control.placeholder || control.label || ''), value: valueToString(state.value), onChange: onChange, onBlur: onBlur, onFocus: onFocus, disabled: state.flags.disabled || state.flags.readonly, width: \"100%\", children: control.options && control.options.map((option, i) => (_jsx(CustomSelect.Option, { value: option.id.toString(), children: option.name }, i))) }), _jsx(FieldError, { state: state })] })));\n}\n//# sourceMappingURL=field-select.js.map"],"names":["FieldSelect","_ref","control","uid","label","useLabel","uniqueName","name","state","setValue","setTouched","useControl","onChange","value","valueOrValues","stringToValue","options","optionsExtra","focus","setFocus","useState","onBlur","_","onFocus","flags","hidden","_jsx","type","valueToString","_jsxs","Field","children","Label","htmlFor","CustomSelect","id","placeholder","disabled","readonly","width","map","option","i","Option","toString","FieldError"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMO,SAASA,WAAWA,CAAAC,IAAA,EAAuB;EAAA,IAAtB;IAAEC,OAAO;AAAEC,IAAAA,GAAG,GAAG,CAAA;AAAE,GAAC,GAAAF,IAAA,CAAA;AAC5C,EAAA,MAAMG,KAAK,GAAGC,QAAQ,EAAE,CAAA;EACxB,MAAMC,UAAU,GAAI,CAAEJ,EAAAA,OAAO,CAACK,IAAK,CAAA,CAAA,EAAGJ,GAAI,CAAC,CAAA,CAAA;EAC3C,MAAM,CAACK,KAAK,EAAEC,QAAQ,EAAEC,UAAU,CAAC,GAAGC,UAAU,CAACT,OAAO,CAAC,CAAA;EACzD,MAAMU,QAAQ,GAAIC,KAAK,IAAK;AACxB,IAAA,MAAMC,aAAa,GAAGC,aAAa,CAACF,KAAK,EAAEX,OAAO,CAACc,OAAO,EAAEd,OAAO,CAACe,YAAY,CAAC,CAAA;IACjFR,QAAQ,CAACK,aAAa,CAAC,CAAA;GAC1B,CAAA;EACD,MAAM,CAACI,KAAK,EAAEC,QAAQ,CAAC,GAAGC,QAAQ,CAAC,KAAK,CAAC,CAAA;EACzC,MAAMC,MAAM,GAAIC,CAAC,IAAK;AAClBZ,IAAAA,UAAU,EAAE,CAAA;IACZS,QAAQ,CAAC,KAAK,CAAC,CAAA;GAClB,CAAA;EACD,MAAMI,OAAO,GAAID,CAAC,IAAK;IACnBH,QAAQ,CAAC,IAAI,CAAC,CAAA;GACjB,CAAA;EACD,OAAQX,KAAK,CAACgB,KAAK,CAACC,MAAM,GAAIC,GAAI,CAAC,OAAO,EAAE;AAAEC,IAAAA,IAAI,EAAE,QAAQ;AAAEd,IAAAA,KAAK,EAAEe,aAAa,CAACpB,KAAK,CAACK,KAAK,CAAA;AAAE,GAAC,CAAC,GAAKgB,IAAK,CAACC,KAAK,EAAE;AAAEtB,IAAAA,KAAK,EAAEA,KAAK;AAAEuB,IAAAA,QAAQ,EAAE,CAACL,GAAI,CAACM,KAAK,EAAE;AAAEC,MAAAA,OAAO,EAAE3B,UAAU;MAAEyB,QAAQ,EAAE7B,OAAO,CAACE,KAAK,IAAIA,KAAK,CAACF,OAAO,CAACE,KAAK,CAAA;AAAE,KAAC,CAAC,EAAEsB,GAAI,CAACQ,YAAY,EAAE;AAAEC,MAAAA,EAAE,EAAE7B,UAAU;AAAEC,MAAAA,IAAI,EAAED,UAAU;AAAE8B,MAAAA,WAAW,EAAEhC,KAAK,CAACF,OAAO,CAACkC,WAAW,IAAIlC,OAAO,CAACE,KAAK,IAAI,EAAE,CAAC;AAAES,MAAAA,KAAK,EAAEe,aAAa,CAACpB,KAAK,CAACK,KAAK,CAAC;AAAED,MAAAA,QAAQ,EAAEA,QAAQ;AAAES,MAAAA,MAAM,EAAEA,MAAM;AAAEE,MAAAA,OAAO,EAAEA,OAAO;MAAEc,QAAQ,EAAE7B,KAAK,CAACgB,KAAK,CAACa,QAAQ,IAAI7B,KAAK,CAACgB,KAAK,CAACc,QAAQ;AAAEC,MAAAA,KAAK,EAAE,MAAM;MAAER,QAAQ,EAAE7B,OAAO,CAACc,OAAO,IAAId,OAAO,CAACc,OAAO,CAACwB,GAAG,CAAC,CAACC,MAAM,EAAEC,CAAC,KAAMhB,GAAI,CAACQ,YAAY,CAACS,MAAM,EAAE;AAAE9B,QAAAA,KAAK,EAAE4B,MAAM,CAACN,EAAE,CAACS,QAAQ,EAAE;QAAEb,QAAQ,EAAEU,MAAM,CAAClC,IAAAA;OAAM,EAAEmC,CAAC,CAAE,CAAA;AAAE,KAAC,CAAC,EAAEhB,GAAI,CAACmB,UAAU,EAAE;AAAErC,MAAAA,KAAK,EAAEA,KAAAA;AAAM,KAAC,CAAC,CAAA;AAAE,GAAC,CAAE,CAAA;AACpsB;;;;"}
@@ -41,14 +41,20 @@ import '../forms/textarea/textarea.variants.js';
41
41
  import '../forms/utils/utils.js';
42
42
  import { FieldError } from './field-error.js';
43
43
 
44
- function FieldText(props) {
44
+ function FieldText(_ref) {
45
+ let {
46
+ control,
47
+ uid = 0,
48
+ before,
49
+ after
50
+ } = _ref;
45
51
  const label = useLabel();
46
- const uniqueName = `${props.control.name}-${props.uid}`;
47
- const [state, setValue, setTouched] = useControl(props.control);
52
+ const uniqueName = `${control.name}-${uid}`;
53
+ const [state, setValue, setTouched] = useControl(control);
48
54
  const onChange = event => {
49
55
  // console.log('FieldText', event.target.value);
50
56
  setValue(event.target.value);
51
- // props.control.value = event.target.value;
57
+ // control.value = event.target.value;
52
58
  };
53
59
 
54
60
  const [focus, setFocus] = useState(false);
@@ -63,20 +69,22 @@ function FieldText(props) {
63
69
  type: "hidden",
64
70
  value: state.value || ''
65
71
  }) : jsxs(Field, {
72
+ state: state,
66
73
  children: [jsx(Label, {
67
- children: props.control.label && label(props.control.label)
74
+ htmlFor: uniqueName,
75
+ children: control.label && label(control.label)
68
76
  }), jsx(Input, {
69
77
  id: uniqueName,
70
78
  name: uniqueName,
71
- placeholder: label(props.control.placeholder || props.control.label || ''),
79
+ placeholder: label(control.placeholder || control.label || ''),
72
80
  value: state.value || '',
73
81
  onChange: onChange,
74
82
  onBlur: onBlur,
75
83
  onFocus: onFocus,
76
84
  disabled: state.flags.disabled,
77
85
  readOnly: state.flags.readonly,
78
- before: props.before,
79
- after: props.after,
86
+ before: before,
87
+ after: after,
80
88
  width: "100%"
81
89
  }), jsx(FieldError, {
82
90
  state: state
@@ -1 +1 @@
1
- {"version":3,"file":"field-text.js","sources":["../../../src/fields/field-text.tsx"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { useControl } from '@websolutespa/bom-mixer-forms';\nimport { useLabel } from '@websolutespa/bom-mixer-hooks';\nimport { useState } from 'react';\nimport { Field, Input, Label } from '../forms';\nimport { FieldError } from './field-error';\nexport function FieldText(props) {\n const label = useLabel();\n const uniqueName = `${props.control.name}-${props.uid}`;\n const [state, setValue, setTouched] = useControl(props.control);\n const onChange = (event) => {\n // console.log('FieldText', event.target.value);\n setValue(event.target.value);\n // props.control.value = event.target.value;\n };\n const [focus, setFocus] = useState(false);\n const onBlur = (_) => {\n setTouched();\n setFocus(false);\n };\n const onFocus = (_) => {\n setFocus(true);\n };\n return (state.flags.hidden ? (_jsx(\"input\", { type: \"hidden\", value: state.value || '' })) : (_jsxs(Field, { children: [_jsx(Label, { children: props.control.label && label(props.control.label) }), _jsx(Input, { id: uniqueName, name: uniqueName, placeholder: label(props.control.placeholder || props.control.label || ''), value: state.value || '', onChange: onChange, onBlur: onBlur, onFocus: onFocus, disabled: state.flags.disabled, readOnly: state.flags.readonly, before: props.before, after: props.after, width: \"100%\" }), _jsx(FieldError, { state: state })] })));\n}\n//# sourceMappingURL=field-text.js.map"],"names":["FieldText","props","label","useLabel","uniqueName","control","name","uid","state","setValue","setTouched","useControl","onChange","event","target","value","focus","setFocus","useState","onBlur","_","onFocus","flags","hidden","_jsx","type","_jsxs","Field","children","Label","Input","id","placeholder","disabled","readOnly","readonly","before","after","width","FieldError"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMO,SAASA,SAASA,CAACC,KAAK,EAAE;AAC7B,EAAA,MAAMC,KAAK,GAAGC,QAAQ,EAAE,CAAA;AACxB,EAAA,MAAMC,UAAU,GAAI,CAAEH,EAAAA,KAAK,CAACI,OAAO,CAACC,IAAK,CAAGL,CAAAA,EAAAA,KAAK,CAACM,GAAI,CAAC,CAAA,CAAA;AACvD,EAAA,MAAM,CAACC,KAAK,EAAEC,QAAQ,EAAEC,UAAU,CAAC,GAAGC,UAAU,CAACV,KAAK,CAACI,OAAO,CAAC,CAAA;EAC/D,MAAMO,QAAQ,GAAIC,KAAK,IAAK;AACxB;AACAJ,IAAAA,QAAQ,CAACI,KAAK,CAACC,MAAM,CAACC,KAAK,CAAC,CAAA;AAC5B;GACH,CAAA;;EACD,MAAM,CAACC,KAAK,EAAEC,QAAQ,CAAC,GAAGC,QAAQ,CAAC,KAAK,CAAC,CAAA;EACzC,MAAMC,MAAM,GAAIC,CAAC,IAAK;AAClBV,IAAAA,UAAU,EAAE,CAAA;IACZO,QAAQ,CAAC,KAAK,CAAC,CAAA;GAClB,CAAA;EACD,MAAMI,OAAO,GAAID,CAAC,IAAK;IACnBH,QAAQ,CAAC,IAAI,CAAC,CAAA;GACjB,CAAA;EACD,OAAQT,KAAK,CAACc,KAAK,CAACC,MAAM,GAAIC,GAAI,CAAC,OAAO,EAAE;AAAEC,IAAAA,IAAI,EAAE,QAAQ;AAAEV,IAAAA,KAAK,EAAEP,KAAK,CAACO,KAAK,IAAI,EAAA;AAAG,GAAC,CAAC,GAAKW,IAAK,CAACC,KAAK,EAAE;AAAEC,IAAAA,QAAQ,EAAE,CAACJ,GAAI,CAACK,KAAK,EAAE;AAAED,MAAAA,QAAQ,EAAE3B,KAAK,CAACI,OAAO,CAACH,KAAK,IAAIA,KAAK,CAACD,KAAK,CAACI,OAAO,CAACH,KAAK,CAAA;AAAE,KAAC,CAAC,EAAEsB,GAAI,CAACM,KAAK,EAAE;AAAEC,MAAAA,EAAE,EAAE3B,UAAU;AAAEE,MAAAA,IAAI,EAAEF,UAAU;AAAE4B,MAAAA,WAAW,EAAE9B,KAAK,CAACD,KAAK,CAACI,OAAO,CAAC2B,WAAW,IAAI/B,KAAK,CAACI,OAAO,CAACH,KAAK,IAAI,EAAE,CAAC;AAAEa,MAAAA,KAAK,EAAEP,KAAK,CAACO,KAAK,IAAI,EAAE;AAAEH,MAAAA,QAAQ,EAAEA,QAAQ;AAAEO,MAAAA,MAAM,EAAEA,MAAM;AAAEE,MAAAA,OAAO,EAAEA,OAAO;AAAEY,MAAAA,QAAQ,EAAEzB,KAAK,CAACc,KAAK,CAACW,QAAQ;AAAEC,MAAAA,QAAQ,EAAE1B,KAAK,CAACc,KAAK,CAACa,QAAQ;MAAEC,MAAM,EAAEnC,KAAK,CAACmC,MAAM;MAAEC,KAAK,EAAEpC,KAAK,CAACoC,KAAK;AAAEC,MAAAA,KAAK,EAAE,MAAA;AAAO,KAAC,CAAC,EAAEd,GAAI,CAACe,UAAU,EAAE;AAAE/B,MAAAA,KAAK,EAAEA,KAAAA;AAAM,KAAC,CAAC,CAAA;AAAE,GAAC,CAAE,CAAA;AACzjB;;;;"}
1
+ {"version":3,"file":"field-text.js","sources":["../../../src/fields/field-text.tsx"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { useControl } from '@websolutespa/bom-mixer-forms';\nimport { useLabel } from '@websolutespa/bom-mixer-hooks';\nimport { useState } from 'react';\nimport { Field, Input, Label } from '../forms';\nimport { FieldError } from './field-error';\nexport function FieldText({ control, uid = 0, before, after }) {\n const label = useLabel();\n const uniqueName = `${control.name}-${uid}`;\n const [state, setValue, setTouched] = useControl(control);\n const onChange = (event) => {\n // console.log('FieldText', event.target.value);\n setValue(event.target.value);\n // control.value = event.target.value;\n };\n const [focus, setFocus] = useState(false);\n const onBlur = (_) => {\n setTouched();\n setFocus(false);\n };\n const onFocus = (_) => {\n setFocus(true);\n };\n return (state.flags.hidden ? (_jsx(\"input\", { type: \"hidden\", value: state.value || '' })) : (_jsxs(Field, { state: state, children: [_jsx(Label, { htmlFor: uniqueName, children: control.label && label(control.label) }), _jsx(Input, { id: uniqueName, name: uniqueName, placeholder: label(control.placeholder || control.label || ''), value: state.value || '', onChange: onChange, onBlur: onBlur, onFocus: onFocus, disabled: state.flags.disabled, readOnly: state.flags.readonly, before: before, after: after, width: \"100%\" }), _jsx(FieldError, { state: state })] })));\n}\n//# sourceMappingURL=field-text.js.map"],"names":["FieldText","_ref","control","uid","before","after","label","useLabel","uniqueName","name","state","setValue","setTouched","useControl","onChange","event","target","value","focus","setFocus","useState","onBlur","_","onFocus","flags","hidden","_jsx","type","_jsxs","Field","children","Label","htmlFor","Input","id","placeholder","disabled","readOnly","readonly","width","FieldError"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMO,SAASA,SAASA,CAAAC,IAAA,EAAsC;EAAA,IAArC;IAAEC,OAAO;AAAEC,IAAAA,GAAG,GAAG,CAAC;IAAEC,MAAM;AAAEC,IAAAA,KAAAA;AAAM,GAAC,GAAAJ,IAAA,CAAA;AACzD,EAAA,MAAMK,KAAK,GAAGC,QAAQ,EAAE,CAAA;EACxB,MAAMC,UAAU,GAAI,CAAEN,EAAAA,OAAO,CAACO,IAAK,CAAA,CAAA,EAAGN,GAAI,CAAC,CAAA,CAAA;EAC3C,MAAM,CAACO,KAAK,EAAEC,QAAQ,EAAEC,UAAU,CAAC,GAAGC,UAAU,CAACX,OAAO,CAAC,CAAA;EACzD,MAAMY,QAAQ,GAAIC,KAAK,IAAK;AACxB;AACAJ,IAAAA,QAAQ,CAACI,KAAK,CAACC,MAAM,CAACC,KAAK,CAAC,CAAA;AAC5B;GACH,CAAA;;EACD,MAAM,CAACC,KAAK,EAAEC,QAAQ,CAAC,GAAGC,QAAQ,CAAC,KAAK,CAAC,CAAA;EACzC,MAAMC,MAAM,GAAIC,CAAC,IAAK;AAClBV,IAAAA,UAAU,EAAE,CAAA;IACZO,QAAQ,CAAC,KAAK,CAAC,CAAA;GAClB,CAAA;EACD,MAAMI,OAAO,GAAID,CAAC,IAAK;IACnBH,QAAQ,CAAC,IAAI,CAAC,CAAA;GACjB,CAAA;EACD,OAAQT,KAAK,CAACc,KAAK,CAACC,MAAM,GAAIC,GAAI,CAAC,OAAO,EAAE;AAAEC,IAAAA,IAAI,EAAE,QAAQ;AAAEV,IAAAA,KAAK,EAAEP,KAAK,CAACO,KAAK,IAAI,EAAA;AAAG,GAAC,CAAC,GAAKW,IAAK,CAACC,KAAK,EAAE;AAAEnB,IAAAA,KAAK,EAAEA,KAAK;AAAEoB,IAAAA,QAAQ,EAAE,CAACJ,GAAI,CAACK,KAAK,EAAE;AAAEC,MAAAA,OAAO,EAAExB,UAAU;MAAEsB,QAAQ,EAAE5B,OAAO,CAACI,KAAK,IAAIA,KAAK,CAACJ,OAAO,CAACI,KAAK,CAAA;AAAE,KAAC,CAAC,EAAEoB,GAAI,CAACO,KAAK,EAAE;AAAEC,MAAAA,EAAE,EAAE1B,UAAU;AAAEC,MAAAA,IAAI,EAAED,UAAU;AAAE2B,MAAAA,WAAW,EAAE7B,KAAK,CAACJ,OAAO,CAACiC,WAAW,IAAIjC,OAAO,CAACI,KAAK,IAAI,EAAE,CAAC;AAAEW,MAAAA,KAAK,EAAEP,KAAK,CAACO,KAAK,IAAI,EAAE;AAAEH,MAAAA,QAAQ,EAAEA,QAAQ;AAAEO,MAAAA,MAAM,EAAEA,MAAM;AAAEE,MAAAA,OAAO,EAAEA,OAAO;AAAEa,MAAAA,QAAQ,EAAE1B,KAAK,CAACc,KAAK,CAACY,QAAQ;AAAEC,MAAAA,QAAQ,EAAE3B,KAAK,CAACc,KAAK,CAACc,QAAQ;AAAElC,MAAAA,MAAM,EAAEA,MAAM;AAAEC,MAAAA,KAAK,EAAEA,KAAK;AAAEkC,MAAAA,KAAK,EAAE,MAAA;AAAO,KAAC,CAAC,EAAEb,GAAI,CAACc,UAAU,EAAE;AAAE9B,MAAAA,KAAK,EAAEA,KAAAA;AAAM,KAAC,CAAC,CAAA;AAAE,GAAC,CAAE,CAAA;AACxjB;;;;"}
@@ -0,0 +1,92 @@
1
+ import { jsx, jsxs } from 'react/jsx-runtime';
2
+ import { useControl } from '@websolutespa/bom-mixer-forms';
3
+ import { useLabel } from '@websolutespa/bom-mixer-hooks';
4
+ import { useState } from 'react';
5
+ import '../forms/autocomplete/autocomplete.js';
6
+ import '../forms/autocomplete/autocomplete.variants.js';
7
+ import '../forms/checkbox/checkbox.js';
8
+ import '../forms/checkbox/checkbox.variants.js';
9
+ import '../forms/custom-select/custom-select.js';
10
+ import { Field } from '../forms/field/field.js';
11
+ import '../forms/field/field.variants.js';
12
+ import '../forms/form-error/form-error.js';
13
+ import '../forms/form-error/form-error.variants.js';
14
+ import '../forms/form-tester/form-tester.js';
15
+ import '../forms/form-tester/form-tester.variants.js';
16
+ import '../forms/form-tester/useFormTester.js';
17
+ import '../forms/form/form.js';
18
+ import '../forms/input-group/input-group.js';
19
+ import '../forms/input/input.js';
20
+ import '../forms/input/input.variants.js';
21
+ import { Label } from '../forms/label/label.js';
22
+ import '../forms/label/label.variants.js';
23
+ import '../forms/radio-card/radio-card.js';
24
+ import '../forms/radio-card/radio-card-base.js';
25
+ import '../forms/radio-card/radio-card.variants.js';
26
+ import '../forms/radio-color/radio-color.js';
27
+ import '../forms/radio-color/radio-color-base.js';
28
+ import '../forms/radio-color/radio-color.variants.js';
29
+ import '../forms/radio-option/radio-option.js';
30
+ import '../forms/radio-option/radio-option-base.js';
31
+ import '../forms/radio-option/radio-option.variants.js';
32
+ import '../forms/radio/radio.js';
33
+ import '../forms/radio/radio-base.js';
34
+ import '../forms/radio/radio.variants.js';
35
+ import '../forms/rating/rating.js';
36
+ import '../forms/rating/rating.variants.js';
37
+ import '../forms/select/select.js';
38
+ import '../forms/select/select.variants.js';
39
+ import { TextArea } from '../forms/textarea/textarea.js';
40
+ import '../forms/textarea/textarea.variants.js';
41
+ import '../forms/utils/utils.js';
42
+ import { FieldError } from './field-error.js';
43
+
44
+ function FieldTextArea(_ref) {
45
+ let {
46
+ control,
47
+ uid = 0
48
+ } = _ref;
49
+ const label = useLabel();
50
+ const uniqueName = `${control.name}-${uid}`;
51
+ const [state, setValue, setTouched] = useControl(control);
52
+ const onChange = event => {
53
+ // console.log('FieldTextArea', event.target.value);
54
+ setValue(event.target.value);
55
+ // control.value = event.target.value;
56
+ };
57
+
58
+ const [focus, setFocus] = useState(false);
59
+ const onBlur = _ => {
60
+ setTouched();
61
+ setFocus(false);
62
+ };
63
+ const onFocus = _ => {
64
+ setFocus(true);
65
+ };
66
+ return state.flags.hidden ? jsx("input", {
67
+ type: "hidden",
68
+ value: state.value || ''
69
+ }) : jsxs(Field, {
70
+ state: state,
71
+ children: [jsx(Label, {
72
+ htmlFor: uniqueName,
73
+ children: control.label && label(control.label)
74
+ }), jsx(TextArea, {
75
+ id: uniqueName,
76
+ name: uniqueName,
77
+ placeholder: label(control.placeholder || control.label || ''),
78
+ value: state.value || '',
79
+ onChange: onChange,
80
+ onBlur: onBlur,
81
+ onFocus: onFocus,
82
+ disabled: state.flags.disabled,
83
+ readOnly: state.flags.readonly,
84
+ width: "100%"
85
+ }), jsx(FieldError, {
86
+ state: state
87
+ })]
88
+ });
89
+ }
90
+
91
+ export { FieldTextArea };
92
+ //# sourceMappingURL=field-textarea.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"field-textarea.js","sources":["../../../src/fields/field-textarea.tsx"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { useControl } from '@websolutespa/bom-mixer-forms';\nimport { useLabel } from '@websolutespa/bom-mixer-hooks';\nimport { useState } from 'react';\nimport { Field, Label, TextArea } from '../forms';\nimport { FieldError } from './field-error';\nexport function FieldTextArea({ control, uid = 0 }) {\n const label = useLabel();\n const uniqueName = `${control.name}-${uid}`;\n const [state, setValue, setTouched] = useControl(control);\n const onChange = (event) => {\n // console.log('FieldTextArea', event.target.value);\n setValue(event.target.value);\n // control.value = event.target.value;\n };\n const [focus, setFocus] = useState(false);\n const onBlur = (_) => {\n setTouched();\n setFocus(false);\n };\n const onFocus = (_) => {\n setFocus(true);\n };\n return (state.flags.hidden ? (_jsx(\"input\", { type: \"hidden\", value: state.value || '' })) : (_jsxs(Field, { state: state, children: [_jsx(Label, { htmlFor: uniqueName, children: control.label && label(control.label) }), _jsx(TextArea, { id: uniqueName, name: uniqueName, placeholder: label(control.placeholder || control.label || ''), value: state.value || '', onChange: onChange, onBlur: onBlur, onFocus: onFocus, disabled: state.flags.disabled, readOnly: state.flags.readonly, width: \"100%\" }), _jsx(FieldError, { state: state })] })));\n}\n//# sourceMappingURL=field-textarea.js.map"],"names":["FieldTextArea","_ref","control","uid","label","useLabel","uniqueName","name","state","setValue","setTouched","useControl","onChange","event","target","value","focus","setFocus","useState","onBlur","_","onFocus","flags","hidden","_jsx","type","_jsxs","Field","children","Label","htmlFor","TextArea","id","placeholder","disabled","readOnly","readonly","width","FieldError"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMO,SAASA,aAAaA,CAAAC,IAAA,EAAuB;EAAA,IAAtB;IAAEC,OAAO;AAAEC,IAAAA,GAAG,GAAG,CAAA;AAAE,GAAC,GAAAF,IAAA,CAAA;AAC9C,EAAA,MAAMG,KAAK,GAAGC,QAAQ,EAAE,CAAA;EACxB,MAAMC,UAAU,GAAI,CAAEJ,EAAAA,OAAO,CAACK,IAAK,CAAA,CAAA,EAAGJ,GAAI,CAAC,CAAA,CAAA;EAC3C,MAAM,CAACK,KAAK,EAAEC,QAAQ,EAAEC,UAAU,CAAC,GAAGC,UAAU,CAACT,OAAO,CAAC,CAAA;EACzD,MAAMU,QAAQ,GAAIC,KAAK,IAAK;AACxB;AACAJ,IAAAA,QAAQ,CAACI,KAAK,CAACC,MAAM,CAACC,KAAK,CAAC,CAAA;AAC5B;GACH,CAAA;;EACD,MAAM,CAACC,KAAK,EAAEC,QAAQ,CAAC,GAAGC,QAAQ,CAAC,KAAK,CAAC,CAAA;EACzC,MAAMC,MAAM,GAAIC,CAAC,IAAK;AAClBV,IAAAA,UAAU,EAAE,CAAA;IACZO,QAAQ,CAAC,KAAK,CAAC,CAAA;GAClB,CAAA;EACD,MAAMI,OAAO,GAAID,CAAC,IAAK;IACnBH,QAAQ,CAAC,IAAI,CAAC,CAAA;GACjB,CAAA;EACD,OAAQT,KAAK,CAACc,KAAK,CAACC,MAAM,GAAIC,GAAI,CAAC,OAAO,EAAE;AAAEC,IAAAA,IAAI,EAAE,QAAQ;AAAEV,IAAAA,KAAK,EAAEP,KAAK,CAACO,KAAK,IAAI,EAAA;AAAG,GAAC,CAAC,GAAKW,IAAK,CAACC,KAAK,EAAE;AAAEnB,IAAAA,KAAK,EAAEA,KAAK;AAAEoB,IAAAA,QAAQ,EAAE,CAACJ,GAAI,CAACK,KAAK,EAAE;AAAEC,MAAAA,OAAO,EAAExB,UAAU;MAAEsB,QAAQ,EAAE1B,OAAO,CAACE,KAAK,IAAIA,KAAK,CAACF,OAAO,CAACE,KAAK,CAAA;AAAE,KAAC,CAAC,EAAEoB,GAAI,CAACO,QAAQ,EAAE;AAAEC,MAAAA,EAAE,EAAE1B,UAAU;AAAEC,MAAAA,IAAI,EAAED,UAAU;AAAE2B,MAAAA,WAAW,EAAE7B,KAAK,CAACF,OAAO,CAAC+B,WAAW,IAAI/B,OAAO,CAACE,KAAK,IAAI,EAAE,CAAC;AAAEW,MAAAA,KAAK,EAAEP,KAAK,CAACO,KAAK,IAAI,EAAE;AAAEH,MAAAA,QAAQ,EAAEA,QAAQ;AAAEO,MAAAA,MAAM,EAAEA,MAAM;AAAEE,MAAAA,OAAO,EAAEA,OAAO;AAAEa,MAAAA,QAAQ,EAAE1B,KAAK,CAACc,KAAK,CAACY,QAAQ;AAAEC,MAAAA,QAAQ,EAAE3B,KAAK,CAACc,KAAK,CAACc,QAAQ;AAAEC,MAAAA,KAAK,EAAE,MAAA;AAAO,KAAC,CAAC,EAAEb,GAAI,CAACc,UAAU,EAAE;AAAE9B,MAAAA,KAAK,EAAEA,KAAAA;AAAM,KAAC,CAAC,CAAA;AAAE,GAAC,CAAE,CAAA;AAC7hB;;;;"}
@@ -6,6 +6,7 @@ import { FieldCheckbox } from './field-checkbox.js';
6
6
  import { FieldPassword } from './field-password.js';
7
7
  import { FieldSelect } from './field-select.js';
8
8
  import { FieldText } from './field-text.js';
9
+ import { FieldTextArea } from './field-textarea.js';
9
10
 
10
11
  /*
11
12
  * Here we define the types of form fields.
@@ -15,6 +16,10 @@ const FIELDS = {
15
16
  control: control,
16
17
  uid: uid
17
18
  }, uid),
19
+ textarea: (control, uid) => jsx(FieldTextArea, {
20
+ control: control,
21
+ uid: uid
22
+ }, uid),
18
23
  password: (control, uid) => jsx(FieldPassword, {
19
24
  control: control,
20
25
  uid: uid
@@ -1 +1 @@
1
- {"version":3,"file":"fields.js","sources":["../../../src/fields/fields.tsx"],"sourcesContent":["import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { FieldAccept } from './field-accept';\nimport { FieldAutocomplete } from './field-autocomplete';\nimport { FieldCard } from './field-card';\nimport { FieldCheckbox } from './field-checkbox';\nimport { FieldPassword } from './field-password';\nimport { FieldSelect } from './field-select';\nimport { FieldText } from './field-text';\n/*\n * Here we define the types of form fields.\n*/\nexport const FIELDS = {\n text: (control, uid) => _jsx(FieldText, { control: control, uid: uid }, uid),\n password: (control, uid) => _jsx(FieldPassword, { control: control, uid: uid }, uid),\n select: (control, uid) => _jsx(FieldSelect, { control: control, uid: uid }, uid),\n autocomplete: (control, uid) => _jsx(FieldAutocomplete, { control: control, uid: uid }, uid),\n checkbox: (control, uid) => _jsx(FieldCheckbox, { control: control, uid: uid }, uid),\n radio: (control, uid) => _jsx(FieldCheckbox, { control: control, uid: uid }, uid),\n accept: (control, uid) => _jsx(FieldAccept, { control: control, uid: uid }, uid),\n card: (control, uid) => _jsx(FieldCard, { control: control, uid: uid }, uid),\n};\n//# sourceMappingURL=fields.js.map"],"names":["FIELDS","text","control","uid","_jsx","FieldText","password","FieldPassword","select","FieldSelect","autocomplete","FieldAutocomplete","checkbox","FieldCheckbox","radio","accept","FieldAccept","card","FieldCard"],"mappings":";;;;;;;;;AAQA;AACA;AACA;AACO,MAAMA,MAAM,GAAG;EAClBC,IAAI,EAAEA,CAACC,OAAO,EAAEC,GAAG,KAAKC,GAAI,CAACC,SAAS,EAAE;AAAEH,IAAAA,OAAO,EAAEA,OAAO;AAAEC,IAAAA,GAAG,EAAEA,GAAAA;GAAK,EAAEA,GAAG,CAAC;EAC5EG,QAAQ,EAAEA,CAACJ,OAAO,EAAEC,GAAG,KAAKC,GAAI,CAACG,aAAa,EAAE;AAAEL,IAAAA,OAAO,EAAEA,OAAO;AAAEC,IAAAA,GAAG,EAAEA,GAAAA;GAAK,EAAEA,GAAG,CAAC;EACpFK,MAAM,EAAEA,CAACN,OAAO,EAAEC,GAAG,KAAKC,GAAI,CAACK,WAAW,EAAE;AAAEP,IAAAA,OAAO,EAAEA,OAAO;AAAEC,IAAAA,GAAG,EAAEA,GAAAA;GAAK,EAAEA,GAAG,CAAC;EAChFO,YAAY,EAAEA,CAACR,OAAO,EAAEC,GAAG,KAAKC,GAAI,CAACO,iBAAiB,EAAE;AAAET,IAAAA,OAAO,EAAEA,OAAO;AAAEC,IAAAA,GAAG,EAAEA,GAAAA;GAAK,EAAEA,GAAG,CAAC;EAC5FS,QAAQ,EAAEA,CAACV,OAAO,EAAEC,GAAG,KAAKC,GAAI,CAACS,aAAa,EAAE;AAAEX,IAAAA,OAAO,EAAEA,OAAO;AAAEC,IAAAA,GAAG,EAAEA,GAAAA;GAAK,EAAEA,GAAG,CAAC;EACpFW,KAAK,EAAEA,CAACZ,OAAO,EAAEC,GAAG,KAAKC,GAAI,CAACS,aAAa,EAAE;AAAEX,IAAAA,OAAO,EAAEA,OAAO;AAAEC,IAAAA,GAAG,EAAEA,GAAAA;GAAK,EAAEA,GAAG,CAAC;EACjFY,MAAM,EAAEA,CAACb,OAAO,EAAEC,GAAG,KAAKC,GAAI,CAACY,WAAW,EAAE;AAAEd,IAAAA,OAAO,EAAEA,OAAO;AAAEC,IAAAA,GAAG,EAAEA,GAAAA;GAAK,EAAEA,GAAG,CAAC;EAChFc,IAAI,EAAEA,CAACf,OAAO,EAAEC,GAAG,KAAKC,GAAI,CAACc,SAAS,EAAE;AAAEhB,IAAAA,OAAO,EAAEA,OAAO;AAAEC,IAAAA,GAAG,EAAEA,GAAAA;AAAI,GAAC,EAAEA,GAAG,CAAA;AAC/E;;;;"}
1
+ {"version":3,"file":"fields.js","sources":["../../../src/fields/fields.tsx"],"sourcesContent":["import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { FieldAccept } from './field-accept';\nimport { FieldAutocomplete } from './field-autocomplete';\nimport { FieldCard } from './field-card';\nimport { FieldCheckbox } from './field-checkbox';\nimport { FieldPassword } from './field-password';\nimport { FieldSelect } from './field-select';\nimport { FieldText } from './field-text';\nimport { FieldTextArea } from './field-textarea';\n/*\n * Here we define the types of form fields.\n*/\nexport const FIELDS = {\n text: (control, uid) => _jsx(FieldText, { control: control, uid: uid }, uid),\n textarea: (control, uid) => _jsx(FieldTextArea, { control: control, uid: uid }, uid),\n password: (control, uid) => _jsx(FieldPassword, { control: control, uid: uid }, uid),\n select: (control, uid) => _jsx(FieldSelect, { control: control, uid: uid }, uid),\n autocomplete: (control, uid) => _jsx(FieldAutocomplete, { control: control, uid: uid }, uid),\n checkbox: (control, uid) => _jsx(FieldCheckbox, { control: control, uid: uid }, uid),\n radio: (control, uid) => _jsx(FieldCheckbox, { control: control, uid: uid }, uid),\n accept: (control, uid) => _jsx(FieldAccept, { control: control, uid: uid }, uid),\n card: (control, uid) => _jsx(FieldCard, { control: control, uid: uid }, uid),\n};\n//# sourceMappingURL=fields.js.map"],"names":["FIELDS","text","control","uid","_jsx","FieldText","textarea","FieldTextArea","password","FieldPassword","select","FieldSelect","autocomplete","FieldAutocomplete","checkbox","FieldCheckbox","radio","accept","FieldAccept","card","FieldCard"],"mappings":";;;;;;;;;;AASA;AACA;AACA;AACO,MAAMA,MAAM,GAAG;EAClBC,IAAI,EAAEA,CAACC,OAAO,EAAEC,GAAG,KAAKC,GAAI,CAACC,SAAS,EAAE;AAAEH,IAAAA,OAAO,EAAEA,OAAO;AAAEC,IAAAA,GAAG,EAAEA,GAAAA;GAAK,EAAEA,GAAG,CAAC;EAC5EG,QAAQ,EAAEA,CAACJ,OAAO,EAAEC,GAAG,KAAKC,GAAI,CAACG,aAAa,EAAE;AAAEL,IAAAA,OAAO,EAAEA,OAAO;AAAEC,IAAAA,GAAG,EAAEA,GAAAA;GAAK,EAAEA,GAAG,CAAC;EACpFK,QAAQ,EAAEA,CAACN,OAAO,EAAEC,GAAG,KAAKC,GAAI,CAACK,aAAa,EAAE;AAAEP,IAAAA,OAAO,EAAEA,OAAO;AAAEC,IAAAA,GAAG,EAAEA,GAAAA;GAAK,EAAEA,GAAG,CAAC;EACpFO,MAAM,EAAEA,CAACR,OAAO,EAAEC,GAAG,KAAKC,GAAI,CAACO,WAAW,EAAE;AAAET,IAAAA,OAAO,EAAEA,OAAO;AAAEC,IAAAA,GAAG,EAAEA,GAAAA;GAAK,EAAEA,GAAG,CAAC;EAChFS,YAAY,EAAEA,CAACV,OAAO,EAAEC,GAAG,KAAKC,GAAI,CAACS,iBAAiB,EAAE;AAAEX,IAAAA,OAAO,EAAEA,OAAO;AAAEC,IAAAA,GAAG,EAAEA,GAAAA;GAAK,EAAEA,GAAG,CAAC;EAC5FW,QAAQ,EAAEA,CAACZ,OAAO,EAAEC,GAAG,KAAKC,GAAI,CAACW,aAAa,EAAE;AAAEb,IAAAA,OAAO,EAAEA,OAAO;AAAEC,IAAAA,GAAG,EAAEA,GAAAA;GAAK,EAAEA,GAAG,CAAC;EACpFa,KAAK,EAAEA,CAACd,OAAO,EAAEC,GAAG,KAAKC,GAAI,CAACW,aAAa,EAAE;AAAEb,IAAAA,OAAO,EAAEA,OAAO;AAAEC,IAAAA,GAAG,EAAEA,GAAAA;GAAK,EAAEA,GAAG,CAAC;EACjFc,MAAM,EAAEA,CAACf,OAAO,EAAEC,GAAG,KAAKC,GAAI,CAACc,WAAW,EAAE;AAAEhB,IAAAA,OAAO,EAAEA,OAAO;AAAEC,IAAAA,GAAG,EAAEA,GAAAA;GAAK,EAAEA,GAAG,CAAC;EAChFgB,IAAI,EAAEA,CAACjB,OAAO,EAAEC,GAAG,KAAKC,GAAI,CAACgB,SAAS,EAAE;AAAElB,IAAAA,OAAO,EAAEA,OAAO;AAAEC,IAAAA,GAAG,EAAEA,GAAAA;AAAI,GAAC,EAAEA,GAAG,CAAA;AAC/E;;;;"}
@@ -12,9 +12,10 @@ import { autocompleteHighligth } from './autocomplete-highlight.js';
12
12
  const StyledAutocompleteItem = styled.div`
13
13
  display: block;
14
14
  width: 100%;
15
- padding: var(--form-padding);
16
- font-size: var(--form-font-size);
17
- line-height: var(--form-line-height);
15
+ padding: var(--form-control-padding);
16
+ font-size: var(--form-control-font-size);
17
+ font-weight: var(--form-control-font-weight);
18
+ line-height: var(--form-control-line-height);
18
19
  color: inherit;
19
20
  background-color: transparent;
20
21
  border-color: var(--color-neutral-200);
@@ -59,8 +60,8 @@ const StyledAutocompleteContainer = styled.div`
59
60
  &>.button {
60
61
  line-height: inherit;
61
62
  font-size: inherit;
62
- padding-top: var(--form-padding);
63
- padding-bottom: var(--form-padding);
63
+ padding-top: var(--form-control-padding);
64
+ padding-bottom: var(--form-control-padding);
64
65
  margin: -2px;
65
66
  }
66
67
 
@@ -81,16 +82,17 @@ const StyledAutocompleteContainer = styled.div`
81
82
  const StyledAutocomplete = styled.div`
82
83
  display: block;
83
84
  appearance: none;
84
- padding: var(--form-padding);
85
- font-size: var(--form-font-size);
86
- line-height: var(--form-line-height);
85
+ padding: var(--form-control-padding);
86
+ font-size: var(--form-control-font-size);
87
+ font-weight: var(--form-control-font-weight);
88
+ line-height: var(--form-control-line-height);
87
89
  color: inherit;
88
90
  background-color: transparent;
89
91
  border: none;
90
92
  outline: none;
91
93
 
92
94
  &:not(:first-child) {
93
- padding-left: calc(var(--form-padding) * 0.5);
95
+ padding-left: calc(var(--form-control-padding) * 0.5);
94
96
  }
95
97
 
96
98
  ${props => getCssResponsive(props)}
@@ -105,9 +107,11 @@ const Autocomplete = /*#__PURE__*/forwardRef((_a, ref) => {
105
107
  onFocus,
106
108
  onBlur,
107
109
  onDropdownVisibleChange = () => {},
108
- onAutocomplete
110
+ onAutocomplete,
111
+ id,
112
+ name
109
113
  } = _a,
110
- props = __rest(_a, ["className", "initialValue", "before", "after", "source", "onFocus", "onBlur", "onDropdownVisibleChange", "onAutocomplete"]);
114
+ props = __rest(_a, ["className", "initialValue", "before", "after", "source", "onFocus", "onBlur", "onDropdownVisibleChange", "onAutocomplete", "id", "name"]);
111
115
  const innerRef = useRef(null);
112
116
  const dropdownRef = useRef(null);
113
117
  useImperativeHandle(ref, () => innerRef.current);
@@ -191,6 +195,8 @@ const Autocomplete = /*#__PURE__*/forwardRef((_a, ref) => {
191
195
  ref: innerRef,
192
196
  as: "input",
193
197
  type: "text",
198
+ id: id,
199
+ name: name,
194
200
  onFocus: onFocus_,
195
201
  onBlur: onBlur_,
196
202
  onChange: onChange_