@fuf-stack/uniform 0.14.5 → 0.15.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 (147) hide show
  1. package/dist/CheckboxGroup/index.cjs +7 -6
  2. package/dist/CheckboxGroup/index.cjs.map +1 -1
  3. package/dist/CheckboxGroup/index.js +6 -5
  4. package/dist/Controller/index.cjs +4 -2
  5. package/dist/Controller/index.cjs.map +1 -1
  6. package/dist/Controller/index.d.cts +7 -3
  7. package/dist/Controller/index.d.ts +7 -3
  8. package/dist/Controller/index.js +7 -5
  9. package/dist/Controller-8Nqugui5.d.cts +37 -0
  10. package/dist/Controller-8Nqugui5.d.ts +37 -0
  11. package/dist/FieldArray/index.cjs +6 -5
  12. package/dist/FieldArray/index.cjs.map +1 -1
  13. package/dist/FieldArray/index.d.cts +5 -3
  14. package/dist/FieldArray/index.d.ts +5 -3
  15. package/dist/FieldArray/index.js +5 -4
  16. package/dist/FieldArray-AqM2XKIh.d.cts +151 -0
  17. package/dist/FieldArray-AqM2XKIh.d.ts +151 -0
  18. package/dist/Form/index.cjs +5 -4
  19. package/dist/Form/index.cjs.map +1 -1
  20. package/dist/Form/index.js +4 -3
  21. package/dist/Grid/index.cjs +1 -0
  22. package/dist/Grid/index.cjs.map +1 -1
  23. package/dist/Grid/index.js +1 -0
  24. package/dist/Input/index.cjs +7 -6
  25. package/dist/Input/index.cjs.map +1 -1
  26. package/dist/Input/index.js +6 -5
  27. package/dist/RadioGroup/index.cjs +7 -6
  28. package/dist/RadioGroup/index.cjs.map +1 -1
  29. package/dist/RadioGroup/index.js +6 -5
  30. package/dist/Select/index.cjs +7 -6
  31. package/dist/Select/index.cjs.map +1 -1
  32. package/dist/Select/index.js +6 -5
  33. package/dist/SubmitButton/index.cjs +5 -4
  34. package/dist/SubmitButton/index.cjs.map +1 -1
  35. package/dist/SubmitButton/index.js +4 -3
  36. package/dist/Switch/index.cjs +7 -6
  37. package/dist/Switch/index.cjs.map +1 -1
  38. package/dist/Switch/index.js +6 -5
  39. package/dist/TextArea/index.cjs +7 -6
  40. package/dist/TextArea/index.cjs.map +1 -1
  41. package/dist/TextArea/index.js +6 -5
  42. package/dist/{chunk-DDZMDOSG.js → chunk-2LAPLELO.js} +21 -17
  43. package/dist/{chunk-DDZMDOSG.js.map → chunk-2LAPLELO.js.map} +1 -1
  44. package/dist/chunk-2NSCPLAA.cjs +133 -0
  45. package/dist/chunk-2NSCPLAA.cjs.map +1 -0
  46. package/dist/{chunk-QW44EUAH.js → chunk-3Q37222E.js} +8 -8
  47. package/dist/{chunk-QW44EUAH.js.map → chunk-3Q37222E.js.map} +1 -1
  48. package/dist/chunk-4AXNPSXG.cjs +82 -0
  49. package/dist/chunk-4AXNPSXG.cjs.map +1 -0
  50. package/dist/chunk-4DAZAO6Y.cjs +59 -0
  51. package/dist/chunk-4DAZAO6Y.cjs.map +1 -0
  52. package/dist/chunk-4EJS5FXY.js +51 -0
  53. package/dist/chunk-4EJS5FXY.js.map +1 -0
  54. package/dist/chunk-4EP3IGSK.cjs +372 -0
  55. package/dist/chunk-4EP3IGSK.cjs.map +1 -0
  56. package/dist/{chunk-Y3SFF6RN.cjs → chunk-4M6F2O2K.cjs} +10 -9
  57. package/dist/chunk-4M6F2O2K.cjs.map +1 -0
  58. package/dist/{chunk-BYKOCVCK.js → chunk-7HK64PN5.js} +19 -15
  59. package/dist/{chunk-BYKOCVCK.js.map → chunk-7HK64PN5.js.map} +1 -1
  60. package/dist/{chunk-OHJYXA6R.cjs → chunk-C4RM2JSD.cjs} +3 -3
  61. package/dist/{chunk-OHJYXA6R.cjs.map → chunk-C4RM2JSD.cjs.map} +1 -1
  62. package/dist/chunk-CRTRMMJ7.js +59 -0
  63. package/dist/chunk-CRTRMMJ7.js.map +1 -0
  64. package/dist/{chunk-EKE5URXQ.cjs → chunk-F6KTQXWG.cjs} +15 -12
  65. package/dist/chunk-F6KTQXWG.cjs.map +1 -0
  66. package/dist/{chunk-XCZKNTFT.cjs → chunk-FLX6VIO7.cjs} +23 -19
  67. package/dist/chunk-FLX6VIO7.cjs.map +1 -0
  68. package/dist/chunk-IEF2GJ22.js +82 -0
  69. package/dist/chunk-IEF2GJ22.js.map +1 -0
  70. package/dist/chunk-K43U2JVG.cjs +248 -0
  71. package/dist/chunk-K43U2JVG.cjs.map +1 -0
  72. package/dist/{chunk-XJZAS7NG.cjs → chunk-MF4JB3YT.cjs} +25 -21
  73. package/dist/chunk-MF4JB3YT.cjs.map +1 -0
  74. package/dist/{chunk-BZAPTLMC.js → chunk-MRXNKY72.js} +49 -49
  75. package/dist/chunk-MRXNKY72.js.map +1 -0
  76. package/dist/chunk-OBQDQ4RX.js +372 -0
  77. package/dist/chunk-OBQDQ4RX.js.map +1 -0
  78. package/dist/{chunk-VP7WDLJM.js → chunk-P4PRVNCH.js} +17 -13
  79. package/dist/chunk-P4PRVNCH.js.map +1 -0
  80. package/dist/{chunk-PZ4LZQI4.cjs → chunk-QLQR44AD.cjs} +19 -15
  81. package/dist/chunk-QLQR44AD.cjs.map +1 -0
  82. package/dist/{chunk-QCVTB2NI.js → chunk-U26GTLKF.js} +8 -7
  83. package/dist/{chunk-QCVTB2NI.js.map → chunk-U26GTLKF.js.map} +1 -1
  84. package/dist/{chunk-GN5NJ6ZU.js → chunk-UJYXA5AD.js} +3 -3
  85. package/dist/chunk-V5HTEMWZ.cjs +51 -0
  86. package/dist/chunk-V5HTEMWZ.cjs.map +1 -0
  87. package/dist/{chunk-VZ5MMFIF.cjs → chunk-V7LRZ5GK.cjs} +5 -5
  88. package/dist/{chunk-VZ5MMFIF.cjs.map → chunk-V7LRZ5GK.cjs.map} +1 -1
  89. package/dist/{chunk-WKM2D7LF.js → chunk-VX76MJAI.js} +2 -2
  90. package/dist/chunk-W66BVPTB.js +248 -0
  91. package/dist/{chunk-IUNDGVMC.js.map → chunk-W66BVPTB.js.map} +1 -1
  92. package/dist/{chunk-BS52M4SZ.js → chunk-WAXJ64P7.js} +14 -11
  93. package/dist/chunk-WAXJ64P7.js.map +1 -0
  94. package/dist/{chunk-RBIX6EWU.cjs → chunk-Y4AUJ2YA.cjs} +10 -10
  95. package/dist/chunk-Y4AUJ2YA.cjs.map +1 -0
  96. package/dist/helpers/index.cjs +11 -2
  97. package/dist/helpers/index.cjs.map +1 -1
  98. package/dist/helpers/index.d.cts +68 -1
  99. package/dist/helpers/index.d.ts +68 -1
  100. package/dist/helpers/index.js +12 -3
  101. package/dist/hooks/index.cjs +6 -3
  102. package/dist/hooks/index.cjs.map +1 -1
  103. package/dist/hooks/index.d.cts +3 -2
  104. package/dist/hooks/index.d.ts +3 -2
  105. package/dist/hooks/index.js +7 -4
  106. package/dist/index.cjs +26 -15
  107. package/dist/index.cjs.map +1 -1
  108. package/dist/index.d.cts +5 -3
  109. package/dist/index.d.ts +5 -3
  110. package/dist/index.js +31 -20
  111. package/dist/partials/FieldCopyTestIdButton/index.cjs +1 -0
  112. package/dist/partials/FieldCopyTestIdButton/index.cjs.map +1 -1
  113. package/dist/partials/FieldCopyTestIdButton/index.js +1 -0
  114. package/dist/partials/FieldValidationError/index.cjs +4 -3
  115. package/dist/partials/FieldValidationError/index.cjs.map +1 -1
  116. package/dist/partials/FieldValidationError/index.js +3 -2
  117. package/package.json +17 -17
  118. package/dist/FieldArray-DD9z-xZ3.d.cts +0 -37
  119. package/dist/FieldArray-DD9z-xZ3.d.ts +0 -37
  120. package/dist/chunk-BBB4FEY6.cjs +0 -22
  121. package/dist/chunk-BBB4FEY6.cjs.map +0 -1
  122. package/dist/chunk-BS52M4SZ.js.map +0 -1
  123. package/dist/chunk-BZAPTLMC.js.map +0 -1
  124. package/dist/chunk-EKE5URXQ.cjs.map +0 -1
  125. package/dist/chunk-HOETR36J.cjs +0 -299
  126. package/dist/chunk-HOETR36J.cjs.map +0 -1
  127. package/dist/chunk-HZP3EXGR.cjs +0 -241
  128. package/dist/chunk-HZP3EXGR.cjs.map +0 -1
  129. package/dist/chunk-IUNDGVMC.js +0 -241
  130. package/dist/chunk-KOKIM2ND.js +0 -9
  131. package/dist/chunk-KOKIM2ND.js.map +0 -1
  132. package/dist/chunk-PZ4LZQI4.cjs.map +0 -1
  133. package/dist/chunk-RBIX6EWU.cjs.map +0 -1
  134. package/dist/chunk-V46BHM2U.js +0 -22
  135. package/dist/chunk-V46BHM2U.js.map +0 -1
  136. package/dist/chunk-VP7WDLJM.js.map +0 -1
  137. package/dist/chunk-VQWKXSHW.cjs +0 -9
  138. package/dist/chunk-VQWKXSHW.cjs.map +0 -1
  139. package/dist/chunk-XCZKNTFT.cjs.map +0 -1
  140. package/dist/chunk-XJWEUCV3.cjs +0 -133
  141. package/dist/chunk-XJWEUCV3.cjs.map +0 -1
  142. package/dist/chunk-XJZAS7NG.cjs.map +0 -1
  143. package/dist/chunk-Y3SFF6RN.cjs.map +0 -1
  144. package/dist/chunk-Y53IHK6B.js +0 -299
  145. package/dist/chunk-Y53IHK6B.js.map +0 -1
  146. /package/dist/{chunk-GN5NJ6ZU.js.map → chunk-UJYXA5AD.js.map} +0 -0
  147. /package/dist/{chunk-WKM2D7LF.js.map → chunk-VX76MJAI.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/pixels/pixels/packages/uniform/dist/chunk-OHJYXA6R.cjs","../src/partials/FieldValidationError/FieldValidationError.tsx","../src/partials/FieldValidationError/index.ts"],"names":[],"mappings":"AAAA;AACE;AACF,wDAA6B;AAC7B;AACA;ACyCU,+CAAA;AAhCV,IAAM,qBAAA,EAAuB,CAAC;AAAA,EAC5B,UAAA,EAAY,KAAA,CAAA;AAAA,EACZ,KAAA;AAAA,EACA,OAAA,EAAS,KAAA;AACX,CAAA,EAAA,GAAiC;AAC/B,EAAA,GAAA,CAAI,CAAC,KAAA,EAAO;AACV,IAAA,OAAO,IAAA;AAAA,EACT;AAEA,EAAA,IAAI,UAAA,EAA0B,CAAC,CAAA;AAE/B,EAAA,GAAA,CAAI,OAAO,MAAA,IAAU,SAAA,GAAY,CAAA,CAAE,MAAA,WAAiB,KAAA,CAAA,EAAQ;AAC1D,IAAA,MAAM,YAAA,EAAc,KAAA;AACpB,IAAA,MAAA,CAAO,IAAA,CAAK,KAAK,CAAA,CAAE,OAAA,CAAQ,CAAC,GAAA,EAAA,GAAQ;AAClC,MAAA,UAAA,EAAY,CAAC,GAAG,SAAA,EAAW,GAAG,WAAA,CAAY,GAAG,CAAC,CAAA;AAAA,IAChD,CAAC,CAAA;AAAA,EACH;AAEA,EAAA,MAAM,WAAA,EACJ,IAAA,CAAK,SAAA,CAAU,SAAS,EAAA,IAAM,KAAA,EAAO,UAAA,EAAa,KAAA;AACpD,EAAA,MAAM,aAAA,EAAyB,UAAA,CAAW,GAAA,CAAI,CAAC,CAAA,EAAA,GAAM,CAAA,CAAE,OAAO,CAAA;AAC9D,EAAA,MAAM,WAAA,EAAa,CAAA,OAAA,EAAU,YAAA,CAAa,IAAA,CAAK,IAAI,CAAC,CAAA,CAAA;AAGlD,EAAA;AAAC,IAAA;AAAA,IAAA;AAC6C,MAAA;AAChC,MAAA;AACZ,MAAA;AAEwC,MAAA;AAAA;AAGpC,wBAAA;AAEH,MAAA;AAAA,IAAA;AACH,EAAA;AAEJ;AAEe;ADdwC;AACA;AEjCxC;AFmCwC;AACA;AACA;AACA;AACA","file":"/home/runner/work/pixels/pixels/packages/uniform/dist/chunk-OHJYXA6R.cjs","sourcesContent":[null,"import type { FieldError } from 'react-hook-form';\n\nimport { slugify } from '../../helpers';\n\nexport interface FieldValidationErrorProps {\n className?: string;\n error: FieldError[] | Record<string, FieldError[]>;\n testId?: string;\n}\n\n/**\n * Renders a validation error of a field\n */\nconst FieldValidationError = ({\n className = undefined,\n error,\n testId = undefined,\n}: FieldValidationErrorProps) => {\n if (!error) {\n return null;\n }\n\n let tmpErrors: FieldError[] = [];\n\n if (typeof error === 'object' && !(error instanceof Array)) {\n const errorObject = error as Record<string, FieldError[]>;\n Object.keys(error).forEach((key) => {\n tmpErrors = [...tmpErrors, ...errorObject[key]];\n });\n }\n\n const errorArray: FieldError[] =\n JSON.stringify(tmpErrors) !== '[]' ? tmpErrors : (error as FieldError[]);\n const errorStrings: string[] = errorArray.map((e) => e.message) as string[];\n const ariaString = `Error: ${errorStrings.join('\\n')}`;\n\n return (\n <ul\n data-testid={slugify(testId || errorStrings.join())}\n aria-label={ariaString} // TODO: ist das richtig @Hannes?\n className={className}\n >\n {errorStrings.map((errorString: string, i: number) => (\n // eslint-disable-next-line react/no-array-index-key\n <li key={`error_${i}`}>\n <div>{errorString}</div>\n </li>\n ))}\n </ul>\n );\n};\n\nexport default FieldValidationError;\n","import FieldValidationError from './FieldValidationError';\n\nexport type { FieldValidationErrorProps } from './FieldValidationError';\n\nexport { FieldValidationError };\n\nexport default FieldValidationError;\n"]}
1
+ {"version":3,"sources":["/home/runner/work/pixels/pixels/packages/uniform/dist/chunk-C4RM2JSD.cjs","../src/partials/FieldValidationError/FieldValidationError.tsx","../src/partials/FieldValidationError/index.ts"],"names":[],"mappings":"AAAA;AACE;AACF,wDAA6B;AAC7B;AACA;ACyCU,+CAAA;AAhCV,IAAM,qBAAA,EAAuB,CAAC;AAAA,EAC5B,UAAA,EAAY,KAAA,CAAA;AAAA,EACZ,KAAA;AAAA,EACA,OAAA,EAAS,KAAA;AACX,CAAA,EAAA,GAAiC;AAC/B,EAAA,GAAA,CAAI,CAAC,KAAA,EAAO;AACV,IAAA,OAAO,IAAA;AAAA,EACT;AAEA,EAAA,IAAI,UAAA,EAA0B,CAAC,CAAA;AAE/B,EAAA,GAAA,CAAI,OAAO,MAAA,IAAU,SAAA,GAAY,CAAA,CAAE,MAAA,WAAiB,KAAA,CAAA,EAAQ;AAC1D,IAAA,MAAM,YAAA,EAAc,KAAA;AACpB,IAAA,MAAA,CAAO,IAAA,CAAK,KAAK,CAAA,CAAE,OAAA,CAAQ,CAAC,GAAA,EAAA,GAAQ;AAClC,MAAA,UAAA,EAAY,CAAC,GAAG,SAAA,EAAW,GAAG,WAAA,CAAY,GAAG,CAAC,CAAA;AAAA,IAChD,CAAC,CAAA;AAAA,EACH;AAEA,EAAA,MAAM,WAAA,EACJ,IAAA,CAAK,SAAA,CAAU,SAAS,EAAA,IAAM,KAAA,EAAO,UAAA,EAAa,KAAA;AACpD,EAAA,MAAM,aAAA,EAAyB,UAAA,CAAW,GAAA,CAAI,CAAC,CAAA,EAAA,GAAM,CAAA,CAAE,OAAO,CAAA;AAC9D,EAAA,MAAM,WAAA,EAAa,CAAA,OAAA,EAAU,YAAA,CAAa,IAAA,CAAK,IAAI,CAAC,CAAA,CAAA;AAGlD,EAAA;AAAC,IAAA;AAAA,IAAA;AAC6C,MAAA;AAChC,MAAA;AACZ,MAAA;AAEwC,MAAA;AAAA;AAGpC,wBAAA;AAEH,MAAA;AAAA,IAAA;AACH,EAAA;AAEJ;AAEe;ADdwC;AACA;AEjCxC;AFmCwC;AACA;AACA;AACA;AACA","file":"/home/runner/work/pixels/pixels/packages/uniform/dist/chunk-C4RM2JSD.cjs","sourcesContent":[null,"import type { FieldError } from 'react-hook-form';\n\nimport { slugify } from '../../helpers';\n\nexport interface FieldValidationErrorProps {\n className?: string;\n error: FieldError[] | Record<string, FieldError[]>;\n testId?: string;\n}\n\n/**\n * Renders a validation error of a field\n */\nconst FieldValidationError = ({\n className = undefined,\n error,\n testId = undefined,\n}: FieldValidationErrorProps) => {\n if (!error) {\n return null;\n }\n\n let tmpErrors: FieldError[] = [];\n\n if (typeof error === 'object' && !(error instanceof Array)) {\n const errorObject = error as Record<string, FieldError[]>;\n Object.keys(error).forEach((key) => {\n tmpErrors = [...tmpErrors, ...errorObject[key]];\n });\n }\n\n const errorArray: FieldError[] =\n JSON.stringify(tmpErrors) !== '[]' ? tmpErrors : (error as FieldError[]);\n const errorStrings: string[] = errorArray.map((e) => e.message) as string[];\n const ariaString = `Error: ${errorStrings.join('\\n')}`;\n\n return (\n <ul\n data-testid={slugify(testId || errorStrings.join())}\n aria-label={ariaString} // TODO: ist das richtig @Hannes?\n className={className}\n >\n {errorStrings.map((errorString: string, i: number) => (\n // eslint-disable-next-line react/no-array-index-key\n <li key={`error_${i}`}>\n <div>{errorString}</div>\n </li>\n ))}\n </ul>\n );\n};\n\nexport default FieldValidationError;\n","import FieldValidationError from './FieldValidationError';\n\nexport type { FieldValidationErrorProps } from './FieldValidationError';\n\nexport { FieldValidationError };\n\nexport default FieldValidationError;\n"]}
@@ -0,0 +1,59 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ var __objRest = (source, exclude) => {
21
+ var target = {};
22
+ for (var prop in source)
23
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
24
+ target[prop] = source[prop];
25
+ if (source != null && __getOwnPropSymbols)
26
+ for (var prop of __getOwnPropSymbols(source)) {
27
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
28
+ target[prop] = source[prop];
29
+ }
30
+ return target;
31
+ };
32
+ var __async = (__this, __arguments, generator) => {
33
+ return new Promise((resolve, reject) => {
34
+ var fulfilled = (value) => {
35
+ try {
36
+ step(generator.next(value));
37
+ } catch (e) {
38
+ reject(e);
39
+ }
40
+ };
41
+ var rejected = (value) => {
42
+ try {
43
+ step(generator.throw(value));
44
+ } catch (e) {
45
+ reject(e);
46
+ }
47
+ };
48
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
49
+ step((generator = generator.apply(__this, __arguments)).next());
50
+ });
51
+ };
52
+
53
+ export {
54
+ __spreadValues,
55
+ __spreadProps,
56
+ __objRest,
57
+ __async
58
+ };
59
+ //# sourceMappingURL=chunk-CRTRMMJ7.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -1,18 +1,22 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunkVQWKXSHWcjs = require('./chunk-VQWKXSHW.cjs');
3
+ var _chunkV5HTEMWZcjs = require('./chunk-V5HTEMWZ.cjs');
4
4
 
5
5
 
6
6
  var _chunkJU5RT22Ycjs = require('./chunk-JU5RT22Y.cjs');
7
7
 
8
8
 
9
- var _chunkOHJYXA6Rcjs = require('./chunk-OHJYXA6R.cjs');
9
+ var _chunkC4RM2JSDcjs = require('./chunk-C4RM2JSD.cjs');
10
10
 
11
11
 
12
- var _chunkXJWEUCV3cjs = require('./chunk-XJWEUCV3.cjs');
12
+
13
+ var _chunk2NSCPLAAcjs = require('./chunk-2NSCPLAA.cjs');
14
+
15
+
16
+
17
+ var _chunk4DAZAO6Ycjs = require('./chunk-4DAZAO6Y.cjs');
13
18
 
14
19
  // src/Switch/Switch.tsx
15
- var _input = require('@nextui-org/input');
16
20
  var _switch = require('@nextui-org/switch');
17
21
  var _pixelutils = require('@fuf-stack/pixel-utils');
18
22
  var _jsxruntime = require('react/jsx-runtime');
@@ -37,9 +41,9 @@ var Switch = ({
37
41
  name,
38
42
  testId: _testId = void 0
39
43
  }) => {
40
- const { control, debugMode, getFieldState } = _chunkXJWEUCV3cjs.useFormContext.call(void 0, );
44
+ const { control, debugMode, getFieldState } = _chunk2NSCPLAAcjs.useFormContext.call(void 0, );
41
45
  const { error, required, testId, invalid } = getFieldState(name, _testId);
42
- const { label, getInputProps, getErrorMessageProps } = _input.useInput.call(void 0, {
46
+ const { label, getInputProps, getErrorMessageProps } = _chunk2NSCPLAAcjs.useInput.call(void 0, {
43
47
  errorMessage: JSON.stringify(error),
44
48
  isInvalid: invalid,
45
49
  isRequired: required,
@@ -51,7 +55,7 @@ var Switch = ({
51
55
  const classNames = _pixelutils.variantsToClassNames.call(void 0, variants, className, "outerWrapper");
52
56
  const showTestIdCopyButton = debugMode === "debug-testids";
53
57
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
54
- _chunkVQWKXSHWcjs.Controller,
58
+ _chunkV5HTEMWZcjs.Controller_default,
55
59
  {
56
60
  name,
57
61
  control,
@@ -83,10 +87,9 @@ var Switch = ({
83
87
  ),
84
88
  error && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: classNames.errorMessage, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
85
89
  "div",
86
- {
87
- ...getErrorMessageProps(),
88
- children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOHJYXA6Rcjs.FieldValidationError_default, { error })
89
- }
90
+ _chunk4DAZAO6Ycjs.__spreadProps.call(void 0, _chunk4DAZAO6Ycjs.__spreadValues.call(void 0, {}, getErrorMessageProps()), {
91
+ children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC4RM2JSDcjs.FieldValidationError_default, { error })
92
+ })
90
93
  ) })
91
94
  ] })
92
95
  }
@@ -101,4 +104,4 @@ var Switch_default2 = Switch_default;
101
104
 
102
105
 
103
106
  exports.Switch_default = Switch_default; exports.Switch_default2 = Switch_default2;
104
- //# sourceMappingURL=chunk-EKE5URXQ.cjs.map
107
+ //# sourceMappingURL=chunk-F6KTQXWG.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/home/runner/work/pixels/pixels/packages/uniform/dist/chunk-F6KTQXWG.cjs","../src/Switch/Switch.tsx","../src/Switch/index.ts"],"names":["Switch_default"],"mappings":"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","file":"/home/runner/work/pixels/pixels/packages/uniform/dist/chunk-F6KTQXWG.cjs","sourcesContent":[null,"import type { TVClassName, TVProps } from '@fuf-stack/pixel-utils';\n\nimport { Switch as NextSwitch } from '@nextui-org/switch';\n\nimport { tv, variantsToClassNames } from '@fuf-stack/pixel-utils';\n\nimport { Controller } from '../Controller';\nimport { useFormContext, useInput } from '../hooks';\nimport { FieldCopyTestIdButton } from '../partials/FieldCopyTestIdButton';\nimport { FieldValidationError } from '../partials/FieldValidationError';\n\nexport const switchVariants = tv({\n slots: {\n base: '',\n endContent: '',\n errorMessage: 'ml-1 mt-1',\n // See NextUI styles for group-data condition, e.g.: https://github.com/nextui-org/nextui/blob/main/packages/core/theme/src/components/select.ts\n label:\n 'text-sm text-foreground subpixel-antialiased group-data-[invalid=true]:!text-danger group-data-[required=true]:after:ml-0.5 group-data-[required=true]:after:text-danger group-data-[required=true]:after:content-[\"*\"]',\n outerWrapper: 'place-content-center',\n startContent: '',\n thumb: '',\n thumbIcon: '',\n wrapper: '',\n },\n});\n\ntype VariantProps = TVProps<typeof switchVariants>;\ntype ClassName = TVClassName<typeof switchVariants>;\n\nexport interface SwitchProps extends VariantProps {\n /** CSS class name */\n className?: ClassName;\n /** whether the select should be disabled */\n disabled?: boolean;\n /** component displayed next to the switch. */\n label?: React.ReactNode;\n /** name the field is registered under */\n name: string;\n /** HTML data-testid attribute used in e2e tests */\n testId?: string;\n}\n\n/**\n * Switch component based on [NextUI Switch](https://nextui.org/docs/components/switch)\n */\nconst Switch = ({\n className = undefined,\n disabled = false,\n label: _label = undefined,\n name,\n testId: _testId = undefined,\n}: SwitchProps) => {\n const { control, debugMode, getFieldState } = useFormContext();\n const { error, required, testId, invalid } = getFieldState(name, _testId);\n\n const { label, getInputProps, getErrorMessageProps } = useInput({\n errorMessage: JSON.stringify(error),\n isInvalid: invalid,\n isRequired: required,\n label: _label,\n labelPlacement: 'outside',\n placeholder: ' ',\n });\n\n const variants = switchVariants();\n const classNames = variantsToClassNames(variants, className, 'outerWrapper');\n\n const showTestIdCopyButton = debugMode === 'debug-testids';\n\n return (\n <Controller\n name={name}\n control={control}\n disabled={disabled}\n render={({\n field: { disabled: isDisabled, value, ref, onBlur, onChange },\n }) => (\n <div className={classNames.outerWrapper}>\n <NextSwitch\n aria-describedby={getInputProps()['aria-describedby']}\n classNames={classNames}\n // See NextUI styles for group-data condition (data-invalid), e.g.: https://github.com/nextui-org/nextui/blob/main/packages/components/select/src/use-select.ts\n data-invalid={invalid}\n data-required={required}\n data-testid={testId}\n isDisabled={isDisabled}\n isSelected={!!value}\n name={name}\n onBlur={onBlur}\n onChange={onChange}\n ref={ref}\n required={required}\n value={value}\n >\n {label}\n {showTestIdCopyButton && <FieldCopyTestIdButton testId={testId} />}\n </NextSwitch>\n {error && (\n <div className={classNames.errorMessage}>\n <div\n /* eslint-disable-next-line react/jsx-props-no-spreading */\n {...getErrorMessageProps()}\n >\n <FieldValidationError error={error} />\n </div>\n </div>\n )}\n </div>\n )}\n />\n );\n};\n\nexport default Switch;\n","import Switch from './Switch';\n\nexport type { SwitchProps } from './Switch';\n\nexport { Switch };\n\nexport default Switch;\n"]}
@@ -1,18 +1,22 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunkVQWKXSHWcjs = require('./chunk-VQWKXSHW.cjs');
3
+ var _chunkV5HTEMWZcjs = require('./chunk-V5HTEMWZ.cjs');
4
4
 
5
5
 
6
6
  var _chunkJU5RT22Ycjs = require('./chunk-JU5RT22Y.cjs');
7
7
 
8
8
 
9
- var _chunkOHJYXA6Rcjs = require('./chunk-OHJYXA6R.cjs');
9
+ var _chunkC4RM2JSDcjs = require('./chunk-C4RM2JSD.cjs');
10
10
 
11
11
 
12
- var _chunkXJWEUCV3cjs = require('./chunk-XJWEUCV3.cjs');
12
+ var _chunk2NSCPLAAcjs = require('./chunk-2NSCPLAA.cjs');
13
13
 
14
14
 
15
- var _chunkBBB4FEY6cjs = require('./chunk-BBB4FEY6.cjs');
15
+ var _chunk4AXNPSXGcjs = require('./chunk-4AXNPSXG.cjs');
16
+
17
+
18
+
19
+ var _chunk4DAZAO6Ycjs = require('./chunk-4DAZAO6Y.cjs');
16
20
 
17
21
  // src/CheckboxGroup/CheckboxGroup.tsx
18
22
 
@@ -43,7 +47,7 @@ var CheckboxGroup = ({
43
47
  name,
44
48
  testId: _testId = void 0
45
49
  }) => {
46
- const { control, debugMode, getFieldState } = _chunkXJWEUCV3cjs.useFormContext.call(void 0, );
50
+ const { control, debugMode, getFieldState } = _chunk2NSCPLAAcjs.useFormContext.call(void 0, );
47
51
  const { error, invalid, required, testId } = getFieldState(name, _testId);
48
52
  const showTestIdCopyButton = debugMode === "debug-testids";
49
53
  const showLabel = label || showTestIdCopyButton;
@@ -61,7 +65,7 @@ var CheckboxGroup = ({
61
65
  label: classNames.label
62
66
  };
63
67
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
64
- _chunkVQWKXSHWcjs.Controller,
68
+ _chunkV5HTEMWZcjs.Controller_default,
65
69
  {
66
70
  control,
67
71
  name,
@@ -87,13 +91,13 @@ var CheckboxGroup = ({
87
91
  const checkboxGroupProps = options.length === 1 ? singleCheckboxProps : multipleCheckboxProps;
88
92
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
89
93
  _checkbox.CheckboxGroup,
90
- {
94
+ _chunk4DAZAO6Ycjs.__spreadProps.call(void 0, _chunk4DAZAO6Ycjs.__spreadValues.call(void 0, {
91
95
  name,
92
96
  classNames: itemGroupClassName,
93
97
  "data-testid": testId,
94
98
  "data-invalid": invalid,
95
99
  errorMessage: error && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
96
- _chunkOHJYXA6Rcjs.FieldValidationError_default,
100
+ _chunkC4RM2JSDcjs.FieldValidationError_default,
97
101
  {
98
102
  error,
99
103
  className: classNames.errorMessage
@@ -108,25 +112,25 @@ var CheckboxGroup = ({
108
112
  showTestIdCopyButton && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJU5RT22Ycjs.FieldCopyTestIdButton_default, { testId })
109
113
  ] }),
110
114
  onBlur,
111
- ref,
112
- ...checkboxGroupProps,
113
- children: _optionalChain([options, 'optionalAccess', _ => _.map, 'call', _2 => _2((option) => {
115
+ ref
116
+ }, checkboxGroupProps), {
117
+ children: options == null ? void 0 : options.map((option) => {
114
118
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
115
119
  _checkbox.Checkbox,
116
120
  {
117
121
  "data-invalid": invalid,
118
122
  classNames: itemClassName,
119
123
  isDisabled: disabled || option.disabled,
120
- value: _optionalChain([option, 'optionalAccess', _3 => _3.value]),
121
- "data-testid": _chunkBBB4FEY6cjs.slugify.call(void 0,
122
- `${testId}_option_${_optionalChain([option, 'optionalAccess', _4 => _4.testId]) || _optionalChain([option, 'optionalAccess', _5 => _5.value])}`
124
+ value: option == null ? void 0 : option.value,
125
+ "data-testid": _chunk4AXNPSXGcjs.slugify.call(void 0,
126
+ `${testId}_option_${(option == null ? void 0 : option.testId) || (option == null ? void 0 : option.value)}`
123
127
  ),
124
- children: _optionalChain([option, 'optionalAccess', _6 => _6.label])
128
+ children: option == null ? void 0 : option.label
125
129
  },
126
130
  `index_${option.value}`
127
131
  );
128
- })])
129
- }
132
+ })
133
+ })
130
134
  );
131
135
  }
132
136
  }
@@ -141,4 +145,4 @@ var CheckboxGroup_default2 = CheckboxGroup_default;
141
145
 
142
146
 
143
147
  exports.CheckboxGroup_default = CheckboxGroup_default; exports.CheckboxGroup_default2 = CheckboxGroup_default2;
144
- //# sourceMappingURL=chunk-XCZKNTFT.cjs.map
148
+ //# sourceMappingURL=chunk-FLX6VIO7.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/home/runner/work/pixels/pixels/packages/uniform/dist/chunk-FLX6VIO7.cjs","../src/CheckboxGroup/CheckboxGroup.tsx","../src/CheckboxGroup/index.ts"],"names":["CheckboxGroup_default"],"mappings":"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","file":"/home/runner/work/pixels/pixels/packages/uniform/dist/chunk-FLX6VIO7.cjs","sourcesContent":[null,"import type { TVClassName, TVProps } from '@fuf-stack/pixel-utils';\n\nimport {\n Checkbox,\n CheckboxGroup as NextCheckboxGroup,\n} from '@nextui-org/checkbox';\n\nimport { tv, variantsToClassNames } from '@fuf-stack/pixel-utils';\n\nimport { Controller } from '../Controller';\nimport { slugify } from '../helpers';\nimport { useFormContext } from '../hooks';\nimport { FieldCopyTestIdButton } from '../partials/FieldCopyTestIdButton';\nimport { FieldValidationError } from '../partials/FieldValidationError';\n\nexport const checkboxGroupVariants = tv({\n slots: {\n base: 'group', // Needs group for group-data condition\n errorMessage: 'text-tiny',\n itemBase: '',\n itemIcon: '',\n itemLabel: 'text-sm',\n itemWrapper: '',\n // See NextUI styles for group-data condition, e.g.: https://github.com/nextui-org/nextui/blob/main/packages/core/theme/src/components/select.ts\n label:\n 'text-sm text-foreground subpixel-antialiased group-data-[invalid=true]:!text-danger',\n wrapper: '',\n },\n});\n\ntype VariantProps = TVProps<typeof checkboxGroupVariants>;\ntype ClassName = TVClassName<typeof checkboxGroupVariants>;\n\nexport type CheckboxGroupOption = {\n /** option label */\n label?: React.ReactNode;\n /** option value */\n value: string;\n /** disables the option */\n disabled?: boolean;\n /** HTML data-testid attribute of the option */\n testId?: string;\n};\n\nexport interface CheckboxGroupProps extends VariantProps {\n /** CSS class name. ClassName: string | { buttons?: string | { base?: string; active?: string }; base?: string;} */\n className?: ClassName;\n /** label displayed above the Checkboxes */\n label?: React.ReactNode;\n /** Name the Field is registered on the form. */\n name: string;\n /** Checkboxes that should be displayed. */\n options: CheckboxGroupOption[];\n /** sets all buttons disabled */\n disabled?: boolean;\n /** id for internal testing. */\n testId?: string;\n}\n\n/**\n * CheckboxGroup component based on [NextUI CheckboxGroup](https://nextui.org/docs/components/checkbox-group)\n */\nconst CheckboxGroup = ({\n className = undefined,\n label = undefined,\n options,\n disabled = false,\n name,\n testId: _testId = undefined,\n}: CheckboxGroupProps) => {\n const { control, debugMode, getFieldState } = useFormContext();\n const { error, invalid, required, testId } = getFieldState(name, _testId);\n\n const showTestIdCopyButton = debugMode === 'debug-testids';\n const showLabel = label || showTestIdCopyButton;\n\n const variants = checkboxGroupVariants();\n const classNames = variantsToClassNames(variants, className, 'base');\n\n const itemClassName = {\n base: classNames.itemBase,\n wrapper: classNames.itemWrapper,\n icon: classNames.itemIcon,\n label: classNames.itemLabel,\n };\n const itemGroupClassName = {\n base: classNames.base,\n wrapper: classNames.wrapper,\n label: classNames.label,\n };\n\n return (\n <Controller\n control={control}\n name={name}\n disabled={disabled}\n render={({ field: { onChange, value = [], ref, onBlur } }) => {\n /**\n * Handles the checkbox group value changes based on the number of options:\n * 1. For single checkbox (options.length === 1):\n * - Converts undefined/empty array to [] for consistent controlled behavior\n * - Extracts single value from array for onChange\n *\n * Example: undefined → []\n * [value] → value\n *\n * 2. For multiple checkboxes:\n * - Uses raw value array with fallback to empty array\n * - Passes through onChange directly\n *\n * Example: undefined → []\n * ['value1', 'value2'] → ['value1', 'value2']\n */\n const getCheckboxValue = (inputValue: unknown): string[] => {\n if (Array.isArray(inputValue)) {\n return inputValue;\n }\n if (inputValue) {\n return [inputValue as string];\n }\n return [];\n };\n\n const singleCheckboxProps = {\n value: getCheckboxValue(value),\n onChange: (newValue: string[]) => onChange(newValue && newValue[0]),\n };\n\n const multipleCheckboxProps = {\n onChange,\n value: getCheckboxValue(value),\n };\n\n const checkboxGroupProps =\n options.length === 1 ? singleCheckboxProps : multipleCheckboxProps;\n\n return (\n <NextCheckboxGroup\n name={name}\n classNames={itemGroupClassName}\n data-testid={testId}\n // See NextUI styles for group-data condition (data-invalid), e.g.: https://github.com/nextui-org/nextui/blob/main/packages/components/select/src/use-select.ts\n data-invalid={invalid}\n errorMessage={\n error && (\n <FieldValidationError\n error={error}\n className={classNames.errorMessage}\n />\n )\n }\n isDisabled={disabled}\n isInvalid={invalid}\n isRequired={required}\n label={\n showLabel && (\n // eslint-disable-next-line jsx-a11y/label-has-associated-control\n <label>\n {label}\n {showTestIdCopyButton && (\n <FieldCopyTestIdButton testId={testId} />\n )}\n </label>\n )\n }\n onBlur={onBlur}\n ref={ref}\n // eslint-disable-next-line react/jsx-props-no-spreading\n {...checkboxGroupProps}\n >\n {options?.map((option) => {\n return (\n <Checkbox\n data-invalid={invalid}\n classNames={itemClassName}\n key={`index_${option.value}`}\n isDisabled={disabled || option.disabled}\n value={option?.value}\n data-testid={slugify(\n `${testId}_option_${option?.testId || option?.value}`,\n )}\n >\n {option?.label}\n </Checkbox>\n );\n })}\n </NextCheckboxGroup>\n );\n }}\n />\n );\n};\n\nexport default CheckboxGroup;\n","import CheckboxGroup from './CheckboxGroup';\n\nexport type { CheckboxGroupProps, CheckboxGroupOption } from './CheckboxGroup';\n\nexport { CheckboxGroup };\n\nexport default CheckboxGroup;\n"]}
@@ -0,0 +1,82 @@
1
+ import {
2
+ __spreadProps,
3
+ __spreadValues
4
+ } from "./chunk-CRTRMMJ7.js";
5
+
6
+ // src/helpers/nullishFields/nullishFields.ts
7
+ var nullString = "__NULL__";
8
+ var falseString = "__FALSE__";
9
+ var zeroString = "__ZERO__";
10
+ var fromNullishString = (value) => {
11
+ if (typeof value !== "string") return value;
12
+ switch (value) {
13
+ case nullString:
14
+ return null;
15
+ case falseString:
16
+ return false;
17
+ case zeroString:
18
+ return 0;
19
+ default:
20
+ return value;
21
+ }
22
+ };
23
+ var toNullishString = (value) => {
24
+ if (value === null || value === "") return nullString;
25
+ if (value === false) return falseString;
26
+ if (value === 0) return zeroString;
27
+ return value;
28
+ };
29
+ var toFormFormat = (fields) => {
30
+ return JSON.parse(
31
+ JSON.stringify(fields, (_, value) => {
32
+ if (Array.isArray(value)) {
33
+ return value.map(toNullishString);
34
+ }
35
+ if (value && typeof value === "object") {
36
+ return Object.fromEntries(
37
+ Object.entries(value).filter(([_key, v]) => v !== "" && v !== null)
38
+ );
39
+ }
40
+ return value;
41
+ })
42
+ );
43
+ };
44
+ var toValidationFormat = (formState) => {
45
+ return JSON.parse(
46
+ JSON.stringify(formState, (_, value) => {
47
+ if (Array.isArray(value)) {
48
+ return value.map(fromNullishString);
49
+ }
50
+ if (value && typeof value === "object") {
51
+ return Object.fromEntries(
52
+ Object.entries(value).filter(
53
+ ([_key, v]) => fromNullishString(v) !== "" && fromNullishString(v) !== null
54
+ ).map(([k, v]) => [k, fromNullishString(v)])
55
+ );
56
+ }
57
+ return value;
58
+ })
59
+ );
60
+ };
61
+
62
+ // src/helpers/slugify/slugify.ts
63
+ import slug from "slug";
64
+ var slugify = (string, options) => {
65
+ const replacement = (options == null ? void 0 : options.replacement) || "_";
66
+ return slug(string, __spreadValues(__spreadProps(__spreadValues({}, slug.defaults.modes.rfc3986), {
67
+ charmap: __spreadValues(__spreadProps(__spreadValues({}, slug.defaults.modes.rfc3986.charmap), {
68
+ // allow dots by default
69
+ ".": "."
70
+ }), replacement !== "-" ? { "-": "_" } : {}),
71
+ replacement
72
+ }), options || {}));
73
+ };
74
+
75
+ export {
76
+ fromNullishString,
77
+ toNullishString,
78
+ toFormFormat,
79
+ toValidationFormat,
80
+ slugify
81
+ };
82
+ //# sourceMappingURL=chunk-IEF2GJ22.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/helpers/nullishFields/nullishFields.ts","../src/helpers/slugify/slugify.ts"],"sourcesContent":["/**\n * String markers used to preserve null, false, and 0 values during JSON processing\n */\nconst nullString = '__NULL__';\nconst falseString = '__FALSE__';\nconst zeroString = '__ZERO__';\n\n/**\n * Converts marker strings back to their original values when processing arrays\n */\nexport const fromNullishString = (value: unknown): unknown => {\n if (typeof value !== 'string') return value;\n\n switch (value) {\n case nullString:\n return null;\n case falseString:\n return false;\n case zeroString:\n return 0;\n default:\n return value;\n }\n};\n\n/**\n * Converts null/falsy values to marker strings for JSON processing\n */\nexport const toNullishString = (value: unknown): unknown => {\n if (value === null || value === '') return nullString;\n if (value === false) return falseString;\n if (value === 0) return zeroString;\n return value;\n};\n\n/**\n * Converts field values to a format suitable for forms by:\n * - Converting array values to their string markers to preserve null/falsy values\n * - Removing empty strings and null values from objects\n *\n * This conversion is required because React Hook Form does not support arrays with\n * flat values (string, number, boolean, null). Array fields must contain objects.\n * We work around this by converting array values to string markers.\n *\n * @example\n * const fields = {\n * name: 'John',\n * scores: [0, null, 75, false],\n * contact: {\n * email: '',\n * phone: null,\n * address: '123 Main St'\n * }\n * };\n *\n * // Result:\n * {\n * name: 'John',\n * scores: ['__ZERO__', '__NULL__', 75, '__FALSE__'],\n * contact: {\n * address: '123 Main St'\n * }\n * }\n */\nexport const toFormFormat = (\n fields: Record<string, unknown>,\n): Record<string, unknown> => {\n return JSON.parse(\n JSON.stringify(fields, (_, value) => {\n if (Array.isArray(value)) {\n return value.map(toNullishString);\n }\n\n if (value && typeof value === 'object') {\n return Object.fromEntries(\n Object.entries(value).filter(([_key, v]) => v !== '' && v !== null),\n );\n }\n\n return value;\n }),\n );\n};\n\n/**\n * Converts form state to a format suitable for validation by:\n * - Converting array string markers (__NULL__, __FALSE__, __ZERO__) back to their original values\n * - Converting _NULL__ to null\n * - Removing fields that contain empty strings, null, or any string markers representing null/empty values\n *\n * @example\n * const formState = {\n * name: 'John',\n * scores: [75, '__ZERO__', '_NULL__', '__FALSE__'],\n * email: null,\n * phone: '__NULL__',\n * contact: {\n * address: '123 Main St',\n * fax: null\n * }\n * };\n *\n * // Result:\n * {\n * name: 'John',\n * scores: [75, 0, null, false],\n * contact: {\n * address: '123 Main St'\n * }\n * }\n */\nexport const toValidationFormat = (\n formState: Record<string, unknown>,\n): Record<string, unknown> => {\n return JSON.parse(\n JSON.stringify(formState, (_, value) => {\n if (Array.isArray(value)) {\n return value.map(fromNullishString);\n }\n\n if (value && typeof value === 'object') {\n return Object.fromEntries(\n Object.entries(value)\n .filter(\n ([_key, v]) =>\n fromNullishString(v) !== '' && fromNullishString(v) !== null,\n )\n .map(([k, v]) => [k, fromNullishString(v)]),\n );\n }\n\n return value;\n }),\n );\n};\n","/* eslint-disable import/prefer-default-export */\n\nimport type { Options as SlugOptions } from 'slug';\n\nimport slug from 'slug';\n\nexport const slugify = (string: string, options?: SlugOptions) => {\n const replacement = options?.replacement || '_';\n return slug(string, {\n ...slug.defaults.modes.rfc3986,\n charmap: {\n ...slug.defaults.modes.rfc3986.charmap,\n // allow dots by default\n '.': '.',\n // convert hyphens to underscores (when replacement is not hyphen)\n ...(replacement !== '-' ? { '-': '_' } : {}),\n },\n replacement,\n ...(options || {}),\n });\n};\n"],"mappings":";;;;;;AAGA,IAAM,aAAa;AACnB,IAAM,cAAc;AACpB,IAAM,aAAa;AAKZ,IAAM,oBAAoB,CAAC,UAA4B;AAC5D,MAAI,OAAO,UAAU,SAAU,QAAO;AAEtC,UAAQ,OAAO;AAAA,IACb,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT;AACE,aAAO;AAAA,EACX;AACF;AAKO,IAAM,kBAAkB,CAAC,UAA4B;AAC1D,MAAI,UAAU,QAAQ,UAAU,GAAI,QAAO;AAC3C,MAAI,UAAU,MAAO,QAAO;AAC5B,MAAI,UAAU,EAAG,QAAO;AACxB,SAAO;AACT;AA+BO,IAAM,eAAe,CAC1B,WAC4B;AAC5B,SAAO,KAAK;AAAA,IACV,KAAK,UAAU,QAAQ,CAAC,GAAG,UAAU;AACnC,UAAI,MAAM,QAAQ,KAAK,GAAG;AACxB,eAAO,MAAM,IAAI,eAAe;AAAA,MAClC;AAEA,UAAI,SAAS,OAAO,UAAU,UAAU;AACtC,eAAO,OAAO;AAAA,UACZ,OAAO,QAAQ,KAAK,EAAE,OAAO,CAAC,CAAC,MAAM,CAAC,MAAM,MAAM,MAAM,MAAM,IAAI;AAAA,QACpE;AAAA,MACF;AAEA,aAAO;AAAA,IACT,CAAC;AAAA,EACH;AACF;AA6BO,IAAM,qBAAqB,CAChC,cAC4B;AAC5B,SAAO,KAAK;AAAA,IACV,KAAK,UAAU,WAAW,CAAC,GAAG,UAAU;AACtC,UAAI,MAAM,QAAQ,KAAK,GAAG;AACxB,eAAO,MAAM,IAAI,iBAAiB;AAAA,MACpC;AAEA,UAAI,SAAS,OAAO,UAAU,UAAU;AACtC,eAAO,OAAO;AAAA,UACZ,OAAO,QAAQ,KAAK,EACjB;AAAA,YACC,CAAC,CAAC,MAAM,CAAC,MACP,kBAAkB,CAAC,MAAM,MAAM,kBAAkB,CAAC,MAAM;AAAA,UAC5D,EACC,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC;AAAA,QAC9C;AAAA,MACF;AAEA,aAAO;AAAA,IACT,CAAC;AAAA,EACH;AACF;;;AClIA,OAAO,UAAU;AAEV,IAAM,UAAU,CAAC,QAAgB,YAA0B;AAChE,QAAM,eAAc,mCAAS,gBAAe;AAC5C,SAAO,KAAK,QAAQ,gDACf,KAAK,SAAS,MAAM,UADL;AAAA,IAElB,SAAS,gDACJ,KAAK,SAAS,MAAM,QAAQ,UADxB;AAAA;AAAA,MAGP,KAAK;AAAA,QAED,gBAAgB,MAAM,EAAE,KAAK,IAAI,IAAI,CAAC;AAAA,IAE5C;AAAA,MACI,WAAW,CAAC,EACjB;AACH;","names":[]}
@@ -0,0 +1,248 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
2
+
3
+ var _chunkV5HTEMWZcjs = require('./chunk-V5HTEMWZ.cjs');
4
+
5
+
6
+ var _chunkJU5RT22Ycjs = require('./chunk-JU5RT22Y.cjs');
7
+
8
+
9
+ var _chunkC4RM2JSDcjs = require('./chunk-C4RM2JSD.cjs');
10
+
11
+
12
+ var _chunk2NSCPLAAcjs = require('./chunk-2NSCPLAA.cjs');
13
+
14
+
15
+ var _chunk4AXNPSXGcjs = require('./chunk-4AXNPSXG.cjs');
16
+
17
+
18
+
19
+ var _chunk4DAZAO6Ycjs = require('./chunk-4DAZAO6Y.cjs');
20
+
21
+ // src/Select/Select.tsx
22
+ var _react = require('react');
23
+ var _reactselect = require('react-select'); var _reactselect2 = _interopRequireDefault(_reactselect);
24
+ var _select = require('@nextui-org/select');
25
+ var _pixelutils = require('@fuf-stack/pixel-utils');
26
+ var _jsxruntime = require('react/jsx-runtime');
27
+ var selectVariants = _pixelutils.tv.call(void 0, {
28
+ slots: {
29
+ base: "group leading-normal",
30
+ clearIndicator: "rounded-md p-1 text-foreground-500 hover:cursor-pointer hover:bg-default-200 hover:text-foreground-800",
31
+ control: "rounded-lg border-2 border-default-200 !duration-150 transition-background hover:border-default-400 group-data-[invalid=true]:border-danger group-data-[invalid=true]:hover:border-danger motion-reduce:transition-none",
32
+ control_focused: "border-focus",
33
+ crossIcon: "",
34
+ downChevron: "",
35
+ dropdownIndicator: "rounded-md p-1 text-foreground-500 hover:cursor-pointer hover:bg-default-200 hover:text-black",
36
+ group: "",
37
+ groupHeading: "mb-1 ml-3 mt-2 text-sm text-foreground-500",
38
+ indicatorsContainer: "gap-1 p-1",
39
+ indicatorSeparator: "bg-default-300",
40
+ input: "py-0.5 pl-1",
41
+ // See NextUI styles for group-data condition, e.g.: https://github.com/nextui-org/nextui/blob/main/packages/core/theme/src/components/select.ts
42
+ label: 'pointer-events-auto relative bottom-1.5 ml-1 text-small subpixel-antialiased group-data-[invalid=true]:!text-danger group-data-[required=true]:after:ml-0.5 group-data-[required=true]:after:text-danger group-data-[required=true]:after:content-["*"]',
43
+ loadingIndicator: "",
44
+ loadingMessage: "",
45
+ menu: "mt-2 rounded-xl border border-default-200 bg-content1 p-1 shadow-lg",
46
+ menuList: "",
47
+ // ensure menu has same z-index as modal so it is visible when rendered in modal
48
+ // see: https://github.com/nextui-org/nextui/blob/main/packages/core/theme/src/components/modal.ts (see z-50)
49
+ menuPortal: "!z-50",
50
+ multiValue: "items-center gap-1.5 rounded bg-default-100 py-0.5 pl-2 pr-1",
51
+ multiValueContainer: "",
52
+ multiValueLabel: "py-0.5 leading-6",
53
+ multiValueRemove: "rounded text-default-500 hover:cursor-pointer hover:border-default-300 hover:text-default-800",
54
+ noOptionsMessage: "rounded-sm p-2 text-foreground-500",
55
+ option_focused: "bg-default-100 active:bg-default-200",
56
+ option_selected: "bg-default-300",
57
+ option: "rounded px-3 py-2 hover:cursor-pointer",
58
+ placeholder: "ml-1 py-0.5 pl-1 text-sm text-foreground-500",
59
+ selectContainer: "",
60
+ singleValue: "!ml-1 !leading-7",
61
+ valueContainer: "gap-1 p-1"
62
+ }
63
+ });
64
+ var InputComponent = (props) => {
65
+ const testId = `${props.selectProps["data-testid"]}`;
66
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _reactselect.components.Input, _chunk4DAZAO6Ycjs.__spreadValues.call(void 0, { "data-testid": testId }, props));
67
+ };
68
+ var ControlComponent = (props) => {
69
+ const testId = `${props.selectProps["data-testid"]}_select`;
70
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "data-testid": testId, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _reactselect.components.Control, _chunk4DAZAO6Ycjs.__spreadValues.call(void 0, {}, props)) });
71
+ };
72
+ var OptionComponent = (props) => {
73
+ var _a, _b, _c;
74
+ const testId = `${props.selectProps["data-testid"]}_select_option_${_chunk4AXNPSXGcjs.slugify.call(void 0, (_c = (_a = props == null ? void 0 : props.data) == null ? void 0 : _a.testId) != null ? _c : (_b = props == null ? void 0 : props.data) == null ? void 0 : _b.value)}`;
75
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "data-testid": testId, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _reactselect.components.Option, _chunk4DAZAO6Ycjs.__spreadValues.call(void 0, {}, props)) });
76
+ };
77
+ var DropdownIndicatorComponent = (props) => {
78
+ const testId = props == null ? void 0 : props.selectProps["data-testid"];
79
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "data-testid": `${testId}_select_dropdown`, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _reactselect.components.DropdownIndicator, _chunk4DAZAO6Ycjs.__spreadValues.call(void 0, {}, props)) });
80
+ };
81
+ var Select = ({
82
+ className = void 0,
83
+ clearable = true,
84
+ disabled = false,
85
+ filterOption = void 0,
86
+ renderOptionLabel = void 0,
87
+ inputValue = void 0,
88
+ label: _label = void 0,
89
+ loading = false,
90
+ multiSelect = false,
91
+ name,
92
+ onInputChange = void 0,
93
+ options,
94
+ placeholder = void 0,
95
+ testId: _testId = void 0
96
+ }) => {
97
+ const { control, debugMode, getFieldState } = _chunk2NSCPLAAcjs.useFormContext.call(void 0, );
98
+ const { error, invalid, required, testId } = getFieldState(name, _testId);
99
+ const [isFocused, setIsFocused] = _react.useState.call(void 0, false);
100
+ const variants = selectVariants();
101
+ const classNames = _pixelutils.variantsToClassNames.call(void 0, variants, className, "base");
102
+ const {
103
+ getBaseProps,
104
+ getErrorMessageProps,
105
+ getHelperWrapperProps,
106
+ getLabelProps,
107
+ getTriggerProps,
108
+ getValueProps,
109
+ label
110
+ } = _select.useSelect.call(void 0, {
111
+ children: [],
112
+ classNames,
113
+ errorMessage: JSON.stringify(error),
114
+ isDisabled: disabled,
115
+ isInvalid: invalid,
116
+ isLoading: loading,
117
+ isRequired: required,
118
+ label: _label,
119
+ labelPlacement: "outside",
120
+ placeholder: " "
121
+ });
122
+ const showTestIdCopyButton = debugMode === "debug-testids";
123
+ const showLabel = label || showTestIdCopyButton;
124
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
125
+ _chunkV5HTEMWZcjs.Controller_default,
126
+ {
127
+ control,
128
+ name,
129
+ render: ({
130
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
131
+ field: { onChange, value, ref, onBlur }
132
+ }) => {
133
+ var _a;
134
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
135
+ "div",
136
+ _chunk4DAZAO6Ycjs.__spreadProps.call(void 0, _chunk4DAZAO6Ycjs.__spreadValues.call(void 0, {}, getBaseProps()), {
137
+ className: _pixelutils.cn.call(void 0, classNames.base),
138
+ "data-testid": `${testId}_wrapper`,
139
+ "data-required": required,
140
+ children: [
141
+ showLabel && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
142
+ "label",
143
+ {
144
+ className: classNames.label,
145
+ "data-slot": "label",
146
+ htmlFor: `react-select-${name}-input`,
147
+ id: getLabelProps().id,
148
+ children: [
149
+ label,
150
+ showTestIdCopyButton && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJU5RT22Ycjs.FieldCopyTestIdButton_default, { testId })
151
+ ]
152
+ }
153
+ ),
154
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
155
+ _reactselect2.default,
156
+ {
157
+ "aria-errormessage": "",
158
+ "aria-labelledby": (_a = getTriggerProps()["aria-labelledby"]) == null ? void 0 : _a.split(" ")[1],
159
+ "aria-invalid": invalid,
160
+ classNames: {
161
+ control: () => _pixelutils.cn.call(void 0, classNames.control, {
162
+ [classNames.control_focused]: isFocused && !invalid
163
+ }),
164
+ clearIndicator: () => classNames.clearIndicator,
165
+ dropdownIndicator: () => classNames.dropdownIndicator,
166
+ groupHeading: () => classNames.groupHeading,
167
+ indicatorsContainer: () => classNames.indicatorsContainer,
168
+ indicatorSeparator: () => classNames.indicatorSeparator,
169
+ input: () => classNames.input,
170
+ menu: () => classNames.menu,
171
+ menuList: () => classNames.menuList,
172
+ menuPortal: () => classNames.menuPortal,
173
+ multiValue: () => classNames.multiValue,
174
+ multiValueLabel: () => _pixelutils.cn.call(void 0, classNames.multiValueLabel, `${getValueProps().className}`),
175
+ multiValueRemove: () => classNames.multiValueRemove,
176
+ noOptionsMessage: () => classNames.noOptionsMessage,
177
+ option: ({
178
+ isFocused: optionIsFocused,
179
+ isSelected: optionIsSelected
180
+ }) => _pixelutils.cn.call(void 0, classNames.option, {
181
+ [classNames.option_focused]: optionIsFocused,
182
+ [classNames.option_selected]: optionIsSelected
183
+ }),
184
+ placeholder: () => classNames.placeholder,
185
+ singleValue: () => _pixelutils.cn.call(void 0, classNames.singleValue, `${getValueProps().className}`),
186
+ valueContainer: () => classNames.valueContainer
187
+ },
188
+ components: {
189
+ Input: InputComponent,
190
+ Option: OptionComponent,
191
+ DropdownIndicator: DropdownIndicatorComponent,
192
+ Control: ControlComponent
193
+ },
194
+ "data-testid": testId,
195
+ filterOption,
196
+ formatOptionLabel: renderOptionLabel,
197
+ inputValue,
198
+ instanceId: name,
199
+ isClearable: clearable,
200
+ isDisabled: disabled,
201
+ isLoading: loading,
202
+ isMulti: multiSelect,
203
+ name,
204
+ menuPosition: "fixed",
205
+ menuShouldBlockScroll: true,
206
+ options,
207
+ placeholder,
208
+ onBlur: (_e) => {
209
+ setIsFocused(false);
210
+ return onBlur();
211
+ },
212
+ onChange: (option) => {
213
+ if (multiSelect) {
214
+ onChange(
215
+ option == null ? void 0 : option.map((_option) => _option.value)
216
+ );
217
+ } else {
218
+ onChange(option == null ? void 0 : option.value);
219
+ }
220
+ },
221
+ onFocus: (_e) => {
222
+ setIsFocused(true);
223
+ },
224
+ onInputChange,
225
+ ref,
226
+ value: options.find((option) => option.value === value),
227
+ unstyled: true
228
+ }
229
+ ),
230
+ error && // eslint-disable-next-line react/jsx-props-no-spreading
231
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", _chunk4DAZAO6Ycjs.__spreadProps.call(void 0, _chunk4DAZAO6Ycjs.__spreadValues.call(void 0, {}, getHelperWrapperProps()), { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", _chunk4DAZAO6Ycjs.__spreadProps.call(void 0, _chunk4DAZAO6Ycjs.__spreadValues.call(void 0, {}, getErrorMessageProps()), { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC4RM2JSDcjs.FieldValidationError_default, { error }) })) }))
232
+ ]
233
+ })
234
+ );
235
+ }
236
+ }
237
+ );
238
+ };
239
+ var Select_default = Select;
240
+
241
+ // src/Select/index.ts
242
+ var Select_default2 = Select_default;
243
+
244
+
245
+
246
+
247
+ exports.Select_default = Select_default; exports.Select_default2 = Select_default2;
248
+ //# sourceMappingURL=chunk-K43U2JVG.cjs.map