@fuf-stack/uniform 0.14.4 → 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 (150) 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-TR2J3OKH.js → chunk-3Q37222E.js} +20 -13
  47. package/dist/chunk-3Q37222E.js.map +1 -0
  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-25LLM544.cjs → chunk-4M6F2O2K.cjs} +11 -9
  57. package/dist/chunk-4M6F2O2K.cjs.map +1 -0
  58. package/dist/{chunk-XJGJ5ZNM.js → chunk-7HK64PN5.js} +38 -22
  59. package/dist/chunk-7HK64PN5.js.map +1 -0
  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-RY4F5YDS.cjs → chunk-FLX6VIO7.cjs} +42 -26
  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-AQHKELUR.js → chunk-U26GTLKF.js} +10 -8
  83. package/dist/chunk-U26GTLKF.js.map +1 -0
  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-U6VUNJZG.cjs → chunk-Y4AUJ2YA.cjs} +21 -14
  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 +25 -14
  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 +33 -22
  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 +18 -18
  118. package/dist/FieldArray-DD9z-xZ3.d.cts +0 -37
  119. package/dist/FieldArray-DD9z-xZ3.d.ts +0 -37
  120. package/dist/chunk-25LLM544.cjs.map +0 -1
  121. package/dist/chunk-AQHKELUR.js.map +0 -1
  122. package/dist/chunk-BBB4FEY6.cjs +0 -22
  123. package/dist/chunk-BBB4FEY6.cjs.map +0 -1
  124. package/dist/chunk-BS52M4SZ.js.map +0 -1
  125. package/dist/chunk-BZAPTLMC.js.map +0 -1
  126. package/dist/chunk-EKE5URXQ.cjs.map +0 -1
  127. package/dist/chunk-HOETR36J.cjs +0 -299
  128. package/dist/chunk-HOETR36J.cjs.map +0 -1
  129. package/dist/chunk-HZP3EXGR.cjs +0 -241
  130. package/dist/chunk-HZP3EXGR.cjs.map +0 -1
  131. package/dist/chunk-IUNDGVMC.js +0 -241
  132. package/dist/chunk-KOKIM2ND.js +0 -9
  133. package/dist/chunk-KOKIM2ND.js.map +0 -1
  134. package/dist/chunk-PZ4LZQI4.cjs.map +0 -1
  135. package/dist/chunk-RY4F5YDS.cjs.map +0 -1
  136. package/dist/chunk-TR2J3OKH.js.map +0 -1
  137. package/dist/chunk-U6VUNJZG.cjs.map +0 -1
  138. package/dist/chunk-V46BHM2U.js +0 -22
  139. package/dist/chunk-V46BHM2U.js.map +0 -1
  140. package/dist/chunk-VP7WDLJM.js.map +0 -1
  141. package/dist/chunk-VQWKXSHW.cjs +0 -9
  142. package/dist/chunk-VQWKXSHW.cjs.map +0 -1
  143. package/dist/chunk-XJGJ5ZNM.js.map +0 -1
  144. package/dist/chunk-XJWEUCV3.cjs +0 -133
  145. package/dist/chunk-XJWEUCV3.cjs.map +0 -1
  146. package/dist/chunk-XJZAS7NG.cjs.map +0 -1
  147. package/dist/chunk-Y53IHK6B.js +0 -299
  148. package/dist/chunk-Y53IHK6B.js.map +0 -1
  149. /package/dist/{chunk-GN5NJ6ZU.js.map → chunk-UJYXA5AD.js.map} +0 -0
  150. /package/dist/{chunk-WKM2D7LF.js.map → chunk-VX76MJAI.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/Switch/Switch.tsx","../src/Switch/index.ts"],"sourcesContent":["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"],"mappings":";;;;;;;;;;;;;;;;;;;AAEA,SAAS,UAAU,kBAAkB;AAErC,SAAS,IAAI,4BAA4B;AA2E/B,SAiB2B,KAjB3B;AApEH,IAAM,iBAAiB,GAAG;AAAA,EAC/B,OAAO;AAAA,IACL,MAAM;AAAA,IACN,YAAY;AAAA,IACZ,cAAc;AAAA;AAAA,IAEd,OACE;AAAA,IACF,cAAc;AAAA,IACd,cAAc;AAAA,IACd,OAAO;AAAA,IACP,WAAW;AAAA,IACX,SAAS;AAAA,EACX;AACF,CAAC;AAqBD,IAAM,SAAS,CAAC;AAAA,EACd,YAAY;AAAA,EACZ,WAAW;AAAA,EACX,OAAO,SAAS;AAAA,EAChB;AAAA,EACA,QAAQ,UAAU;AACpB,MAAmB;AACjB,QAAM,EAAE,SAAS,WAAW,cAAc,IAAI,eAAe;AAC7D,QAAM,EAAE,OAAO,UAAU,QAAQ,QAAQ,IAAI,cAAc,MAAM,OAAO;AAExE,QAAM,EAAE,OAAO,eAAe,qBAAqB,IAAI,SAAS;AAAA,IAC9D,cAAc,KAAK,UAAU,KAAK;AAAA,IAClC,WAAW;AAAA,IACX,YAAY;AAAA,IACZ,OAAO;AAAA,IACP,gBAAgB;AAAA,IAChB,aAAa;AAAA,EACf,CAAC;AAED,QAAM,WAAW,eAAe;AAChC,QAAM,aAAa,qBAAqB,UAAU,WAAW,cAAc;AAE3E,QAAM,uBAAuB,cAAc;AAE3C,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA;AAAA,MACA,QAAQ,CAAC;AAAA,QACP,OAAO,EAAE,UAAU,YAAY,OAAO,KAAK,QAAQ,SAAS;AAAA,MAC9D,MACE,qBAAC,SAAI,WAAW,WAAW,cACzB;AAAA;AAAA,UAAC;AAAA;AAAA,YACC,oBAAkB,cAAc,EAAE,kBAAkB;AAAA,YACpD;AAAA,YAEA,gBAAc;AAAA,YACd,iBAAe;AAAA,YACf,eAAa;AAAA,YACb;AAAA,YACA,YAAY,CAAC,CAAC;AAAA,YACd;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YAEC;AAAA;AAAA,cACA,wBAAwB,oBAAC,iCAAsB,QAAgB;AAAA;AAAA;AAAA,QAClE;AAAA,QACC,SACC,oBAAC,SAAI,WAAW,WAAW,cACzB;AAAA,UAAC;AAAA,2CAEK,qBAAqB,IAF1B;AAAA,YAIC,8BAAC,gCAAqB,OAAc;AAAA;AAAA,QACtC,GACF;AAAA,SAEJ;AAAA;AAAA,EAEJ;AAEJ;AAEA,IAAO,iBAAQ;;;AC5Gf,IAAOA,kBAAQ;","names":["Switch_default"]}
@@ -1,15 +1,15 @@
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
+ var _chunk2NSCPLAAcjs = require('./chunk-2NSCPLAA.cjs');
13
13
 
14
14
  // src/Input/Input.tsx
15
15
  var _input = require('@nextui-org/input');
@@ -27,19 +27,30 @@ var Input = ({
27
27
  transformValue = void 0,
28
28
  type = void 0
29
29
  }) => {
30
- const { control, debugMode, getFieldState } = _chunkXJWEUCV3cjs.useFormContext.call(void 0, );
30
+ const { control, debugMode, getFieldState } = _chunk2NSCPLAAcjs.useFormContext.call(void 0, );
31
31
  const { error, invalid, required, testId } = getFieldState(name, _testId);
32
32
  const showTestIdCopyButton = debugMode === "debug-testids";
33
33
  const showLabel = label || showTestIdCopyButton;
34
34
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
35
- _chunkVQWKXSHWcjs.Controller,
35
+ _chunkV5HTEMWZcjs.Controller_default,
36
36
  {
37
37
  control,
38
38
  disabled,
39
39
  name,
40
40
  render: ({
41
- field: { disabled: isDisabled, onChange, onBlur, value, ref }
41
+ field: { disabled: isDisabled, onChange, onBlur, value = "", ref }
42
42
  }) => {
43
+ const displayValue = (transformValue == null ? void 0 : transformValue.displayValue) ? transformValue.displayValue(value != null ? value : "") : value != null ? value : "";
44
+ const handleChange = (e) => {
45
+ const inputValue = e.target.value;
46
+ if (type === "number") {
47
+ onChange(inputValue === "" ? "" : Number(inputValue));
48
+ } else {
49
+ onChange(
50
+ (transformValue == null ? void 0 : transformValue.formValue) ? transformValue.formValue(inputValue) : inputValue
51
+ );
52
+ }
53
+ };
43
54
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
44
55
  _input.Input,
45
56
  {
@@ -49,7 +60,7 @@ var Input = ({
49
60
  },
50
61
  "data-testid": testId,
51
62
  endContent,
52
- errorMessage: error && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkOHJYXA6Rcjs.FieldValidationError_default, { error }),
63
+ errorMessage: error && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkC4RM2JSDcjs.FieldValidationError_default, { error }),
53
64
  isDisabled,
54
65
  isInvalid: invalid,
55
66
  isRequired: required,
@@ -60,17 +71,13 @@ var Input = ({
60
71
  labelPlacement: "outside",
61
72
  name,
62
73
  onBlur,
63
- onChange: type === "number" ? (e) => {
64
- onChange(Number(e.target.value));
65
- } : (e) => onChange(
66
- transformValue && transformValue.formValue ? transformValue.formValue(e.target.value) : e.target.value
67
- ),
74
+ onChange: handleChange,
68
75
  placeholder,
69
76
  radius: "sm",
70
77
  ref,
71
78
  startContent,
72
79
  type,
73
- value: transformValue && transformValue.displayValue ? transformValue.displayValue(value) : value,
80
+ value: displayValue,
74
81
  variant: "bordered"
75
82
  }
76
83
  );
@@ -87,4 +94,4 @@ var Input_default2 = Input_default;
87
94
 
88
95
 
89
96
  exports.Input_default = Input_default; exports.Input_default2 = Input_default2;
90
- //# sourceMappingURL=chunk-U6VUNJZG.cjs.map
97
+ //# sourceMappingURL=chunk-Y4AUJ2YA.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/home/runner/work/pixels/pixels/packages/uniform/dist/chunk-Y4AUJ2YA.cjs","../src/Input/Input.tsx","../src/Input/index.ts"],"names":["Input_default"],"mappings":"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","file":"/home/runner/work/pixels/pixels/packages/uniform/dist/chunk-Y4AUJ2YA.cjs","sourcesContent":[null,"import type { ReactNode } from 'react';\n\nimport { Input as NextInput } from '@nextui-org/input';\n\nimport { cn } from '@fuf-stack/pixel-utils';\n\nimport { Controller } from '../Controller';\nimport { useFormContext } from '../hooks';\nimport { FieldCopyTestIdButton } from '../partials/FieldCopyTestIdButton';\nimport { FieldValidationError } from '../partials/FieldValidationError';\n\nexport interface InputProps {\n /** CSS class name */\n className?: string;\n /** input field is disabled */\n disabled?: boolean;\n /** added content to the end of the input Field. */\n endContent?: ReactNode;\n /** form field label (set to false to disable label) */\n label?: string | false;\n /** form field name */\n name: string;\n /** form field placeholder */\n placeholder?: string;\n /** content added to the start of the input field */\n startContent?: ReactNode;\n /** HTML data-testid attribute used in e2e tests */\n testId?: string;\n /** allows disentangled display and form values for a field */\n transformValue?: {\n /** transforms the formValue of the field to the display value of the field */\n displayValue: (value: string | number) => string | number;\n /** transforms the displayValue of the field to the form value of the field */\n formValue: (value: string) => string | number;\n };\n /** input type */\n type?: 'number' | 'password';\n}\n\n/**\n * Input component based on [NextUI Input](https://nextui.org/docs/components/input)\n */\nconst Input = ({\n className = undefined,\n disabled = false,\n endContent = undefined,\n label = undefined,\n name,\n placeholder = ' ',\n startContent = undefined,\n testId: _testId = undefined,\n transformValue = undefined,\n type = undefined,\n}: InputProps) => {\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 return (\n <Controller\n control={control}\n disabled={disabled}\n name={name}\n render={({\n field: { disabled: isDisabled, onChange, onBlur, value = '', ref },\n }) => {\n /**\n * Determines the display value for the input field:\n * 1. If transformValue.displayValue is provided, applies the transform to the current value\n * (useful for formatting like adding currency symbols, date formatting, etc.)\n * 2. Falls back to the raw value if no transform is provided\n * 3. Ensures a defined value by using empty string as fallback (prevents uncontrolled input warnings)\n *\n * Examples:\n * - With transform: value \"1000\" → displayValue \"$1,000\"\n * - Without transform: value \"1000\" → displayValue \"1000\"\n * - Undefined value: value undefined → displayValue \"\"\n */\n const displayValue = transformValue?.displayValue\n ? transformValue.displayValue(value ?? '')\n : (value ?? '');\n\n /**\n * Handles input value changes with special processing:\n * 1. For number inputs:\n * - Preserves empty string (prevents NaN in the form state)\n * - Converts non-empty values to numbers\n * Example: \"\" → \"\" (empty stays empty)\n * \"42\" → 42 (converts to number)\n *\n * 2. For text inputs with transformValue.formValue:\n * - Applies custom transform before updating form state\n * - Useful for converting display format to storage format\n * Example: \"$1,000\" → \"1000\" (strips formatting)\n *\n * 3. For regular text inputs:\n * - Passes through the raw input value\n * Example: \"hello\" → \"hello\" (no transformation)\n *\n * @param e The input change event\n */\n const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n const inputValue = e.target.value;\n if (type === 'number') {\n onChange(inputValue === '' ? '' : Number(inputValue));\n } else {\n onChange(\n transformValue?.formValue\n ? transformValue.formValue(inputValue)\n : inputValue,\n );\n }\n };\n\n return (\n <NextInput\n className={cn(className)}\n classNames={{\n inputWrapper: 'group-data-[focus=true]:border-focus',\n }}\n data-testid={testId}\n endContent={endContent}\n errorMessage={error && <FieldValidationError error={error} />}\n isDisabled={isDisabled}\n isInvalid={invalid}\n isRequired={required}\n label={\n showLabel && (\n <>\n {label}\n {showTestIdCopyButton && (\n <FieldCopyTestIdButton testId={testId} />\n )}\n </>\n )\n }\n labelPlacement=\"outside\"\n name={name}\n onBlur={onBlur}\n onChange={handleChange}\n placeholder={placeholder}\n radius=\"sm\"\n ref={ref}\n startContent={startContent}\n type={type}\n // @ts-expect-error number is ok here\n value={displayValue}\n variant=\"bordered\"\n />\n );\n }}\n />\n );\n};\n\nexport default Input;\n","import Input from './Input';\n\nexport type { InputProps } from './Input';\n\nexport { Input };\n\nexport default Input;\n"]}
@@ -1,7 +1,16 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunkBBB4FEY6cjs = require('../chunk-BBB4FEY6.cjs');
4
3
 
5
4
 
6
- exports.slugify = _chunkBBB4FEY6cjs.slugify;
5
+
6
+
7
+ var _chunk4AXNPSXGcjs = require('../chunk-4AXNPSXG.cjs');
8
+ require('../chunk-4DAZAO6Y.cjs');
9
+
10
+
11
+
12
+
13
+
14
+
15
+ exports.fromNullishString = _chunk4AXNPSXGcjs.fromNullishString; exports.slugify = _chunk4AXNPSXGcjs.slugify; exports.toFormFormat = _chunk4AXNPSXGcjs.toFormFormat; exports.toNullishString = _chunk4AXNPSXGcjs.toNullishString; exports.toValidationFormat = _chunk4AXNPSXGcjs.toValidationFormat;
7
16
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/pixels/pixels/packages/uniform/dist/helpers/index.cjs"],"names":[],"mappings":"AAAA;AACE;AACF,yDAA8B;AAC9B;AACE;AACF,4CAAC","file":"/home/runner/work/pixels/pixels/packages/uniform/dist/helpers/index.cjs"}
1
+ {"version":3,"sources":["/home/runner/work/pixels/pixels/packages/uniform/dist/helpers/index.cjs"],"names":[],"mappings":"AAAA;AACE;AACA;AACA;AACA;AACA;AACF,yDAA8B;AAC9B,iCAA8B;AAC9B;AACE;AACA;AACA;AACA;AACA;AACF,oSAAC","file":"/home/runner/work/pixels/pixels/packages/uniform/dist/helpers/index.cjs"}
@@ -1,5 +1,72 @@
1
1
  import { Options } from 'slug';
2
2
 
3
+ /**
4
+ * Converts marker strings back to their original values when processing arrays
5
+ */
6
+ declare const fromNullishString: (value: unknown) => unknown;
7
+ /**
8
+ * Converts null/falsy values to marker strings for JSON processing
9
+ */
10
+ declare const toNullishString: (value: unknown) => unknown;
11
+ /**
12
+ * Converts field values to a format suitable for forms by:
13
+ * - Converting array values to their string markers to preserve null/falsy values
14
+ * - Removing empty strings and null values from objects
15
+ *
16
+ * This conversion is required because React Hook Form does not support arrays with
17
+ * flat values (string, number, boolean, null). Array fields must contain objects.
18
+ * We work around this by converting array values to string markers.
19
+ *
20
+ * @example
21
+ * const fields = {
22
+ * name: 'John',
23
+ * scores: [0, null, 75, false],
24
+ * contact: {
25
+ * email: '',
26
+ * phone: null,
27
+ * address: '123 Main St'
28
+ * }
29
+ * };
30
+ *
31
+ * // Result:
32
+ * {
33
+ * name: 'John',
34
+ * scores: ['__ZERO__', '__NULL__', 75, '__FALSE__'],
35
+ * contact: {
36
+ * address: '123 Main St'
37
+ * }
38
+ * }
39
+ */
40
+ declare const toFormFormat: (fields: Record<string, unknown>) => Record<string, unknown>;
41
+ /**
42
+ * Converts form state to a format suitable for validation by:
43
+ * - Converting array string markers (__NULL__, __FALSE__, __ZERO__) back to their original values
44
+ * - Converting _NULL__ to null
45
+ * - Removing fields that contain empty strings, null, or any string markers representing null/empty values
46
+ *
47
+ * @example
48
+ * const formState = {
49
+ * name: 'John',
50
+ * scores: [75, '__ZERO__', '_NULL__', '__FALSE__'],
51
+ * email: null,
52
+ * phone: '__NULL__',
53
+ * contact: {
54
+ * address: '123 Main St',
55
+ * fax: null
56
+ * }
57
+ * };
58
+ *
59
+ * // Result:
60
+ * {
61
+ * name: 'John',
62
+ * scores: [75, 0, null, false],
63
+ * contact: {
64
+ * address: '123 Main St'
65
+ * }
66
+ * }
67
+ */
68
+ declare const toValidationFormat: (formState: Record<string, unknown>) => Record<string, unknown>;
69
+
3
70
  declare const slugify: (string: string, options?: Options) => string;
4
71
 
5
- export { slugify };
72
+ export { fromNullishString, slugify, toFormFormat, toNullishString, toValidationFormat };
@@ -1,5 +1,72 @@
1
1
  import { Options } from 'slug';
2
2
 
3
+ /**
4
+ * Converts marker strings back to their original values when processing arrays
5
+ */
6
+ declare const fromNullishString: (value: unknown) => unknown;
7
+ /**
8
+ * Converts null/falsy values to marker strings for JSON processing
9
+ */
10
+ declare const toNullishString: (value: unknown) => unknown;
11
+ /**
12
+ * Converts field values to a format suitable for forms by:
13
+ * - Converting array values to their string markers to preserve null/falsy values
14
+ * - Removing empty strings and null values from objects
15
+ *
16
+ * This conversion is required because React Hook Form does not support arrays with
17
+ * flat values (string, number, boolean, null). Array fields must contain objects.
18
+ * We work around this by converting array values to string markers.
19
+ *
20
+ * @example
21
+ * const fields = {
22
+ * name: 'John',
23
+ * scores: [0, null, 75, false],
24
+ * contact: {
25
+ * email: '',
26
+ * phone: null,
27
+ * address: '123 Main St'
28
+ * }
29
+ * };
30
+ *
31
+ * // Result:
32
+ * {
33
+ * name: 'John',
34
+ * scores: ['__ZERO__', '__NULL__', 75, '__FALSE__'],
35
+ * contact: {
36
+ * address: '123 Main St'
37
+ * }
38
+ * }
39
+ */
40
+ declare const toFormFormat: (fields: Record<string, unknown>) => Record<string, unknown>;
41
+ /**
42
+ * Converts form state to a format suitable for validation by:
43
+ * - Converting array string markers (__NULL__, __FALSE__, __ZERO__) back to their original values
44
+ * - Converting _NULL__ to null
45
+ * - Removing fields that contain empty strings, null, or any string markers representing null/empty values
46
+ *
47
+ * @example
48
+ * const formState = {
49
+ * name: 'John',
50
+ * scores: [75, '__ZERO__', '_NULL__', '__FALSE__'],
51
+ * email: null,
52
+ * phone: '__NULL__',
53
+ * contact: {
54
+ * address: '123 Main St',
55
+ * fax: null
56
+ * }
57
+ * };
58
+ *
59
+ * // Result:
60
+ * {
61
+ * name: 'John',
62
+ * scores: [75, 0, null, false],
63
+ * contact: {
64
+ * address: '123 Main St'
65
+ * }
66
+ * }
67
+ */
68
+ declare const toValidationFormat: (formState: Record<string, unknown>) => Record<string, unknown>;
69
+
3
70
  declare const slugify: (string: string, options?: Options) => string;
4
71
 
5
- export { slugify };
72
+ export { fromNullishString, slugify, toFormFormat, toNullishString, toValidationFormat };
@@ -1,7 +1,16 @@
1
1
  import {
2
- slugify
3
- } from "../chunk-V46BHM2U.js";
2
+ fromNullishString,
3
+ slugify,
4
+ toFormFormat,
5
+ toNullishString,
6
+ toValidationFormat
7
+ } from "../chunk-IEF2GJ22.js";
8
+ import "../chunk-CRTRMMJ7.js";
4
9
  export {
5
- slugify
10
+ fromNullishString,
11
+ slugify,
12
+ toFormFormat,
13
+ toNullishString,
14
+ toValidationFormat
6
15
  };
7
16
  //# sourceMappingURL=index.js.map
@@ -2,11 +2,14 @@
2
2
 
3
3
 
4
4
 
5
- var _chunkXJWEUCV3cjs = require('../chunk-XJWEUCV3.cjs');
6
- require('../chunk-BBB4FEY6.cjs');
7
5
 
6
+ var _chunk2NSCPLAAcjs = require('../chunk-2NSCPLAA.cjs');
7
+ require('../chunk-4AXNPSXG.cjs');
8
+ require('../chunk-4DAZAO6Y.cjs');
8
9
 
9
10
 
10
11
 
11
- exports.checkFieldIsRequired = _chunkXJWEUCV3cjs.checkFieldIsRequired; exports.useFieldArray = _chunkXJWEUCV3cjs.useFieldArray; exports.useFormContext = _chunkXJWEUCV3cjs.useFormContext;
12
+
13
+
14
+ exports.checkFieldIsRequired = _chunk2NSCPLAAcjs.checkFieldIsRequired; exports.useFieldArray = _chunk2NSCPLAAcjs.useFieldArray; exports.useFormContext = _chunk2NSCPLAAcjs.useFormContext; exports.useInput = _chunk2NSCPLAAcjs.useInput;
12
15
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/pixels/pixels/packages/uniform/dist/hooks/index.cjs"],"names":[],"mappings":"AAAA;AACE;AACA;AACA;AACF,yDAA8B;AAC9B,iCAA8B;AAC9B;AACE;AACA;AACA;AACF,0LAAC","file":"/home/runner/work/pixels/pixels/packages/uniform/dist/hooks/index.cjs"}
1
+ {"version":3,"sources":["/home/runner/work/pixels/pixels/packages/uniform/dist/hooks/index.cjs"],"names":[],"mappings":"AAAA;AACE;AACA;AACA;AACA;AACF,yDAA8B;AAC9B,iCAA8B;AAC9B,iCAA8B;AAC9B;AACE;AACA;AACA;AACA;AACF,yOAAC","file":"/home/runner/work/pixels/pixels/packages/uniform/dist/hooks/index.cjs"}
@@ -3,6 +3,7 @@ import { FieldError } from 'react-hook-form';
3
3
  export { useFieldArray } from 'react-hook-form';
4
4
  import { D as DebugModeSettings } from '../FormContext-ldCpxKnY.cjs';
5
5
  import { VetoInstance } from '@fuf-stack/veto';
6
+ export { useInput } from '@nextui-org/input';
6
7
 
7
8
  /** Schema check whether a field is required or optional */
8
9
  declare const checkFieldIsRequired: (validation: VetoInstance, path: string[]) => boolean;
@@ -20,10 +21,10 @@ declare const useFormContext: () => {
20
21
  isValidating: boolean;
21
22
  };
22
23
  formState: react_hook_form.FormState<react_hook_form.FieldValues>;
23
- debugMode: "debug" | "debug-testids" | "off" | "disabled";
24
+ debugMode: "disabled" | "debug" | "debug-testids" | "off";
24
25
  debugModeSettings?: DebugModeSettings;
25
26
  preventSubmit: (prevent: boolean) => void;
26
- setDebugMode: (debugMode: "debug" | "debug-testids" | "off" | "disabled") => void;
27
+ setDebugMode: (debugMode: "disabled" | "debug" | "debug-testids" | "off") => void;
27
28
  validation?: VetoInstance;
28
29
  watch: react_hook_form.UseFormWatch<react_hook_form.FieldValues>;
29
30
  getValues: react_hook_form.UseFormGetValues<react_hook_form.FieldValues>;
@@ -3,6 +3,7 @@ import { FieldError } from 'react-hook-form';
3
3
  export { useFieldArray } from 'react-hook-form';
4
4
  import { D as DebugModeSettings } from '../FormContext-ldCpxKnY.js';
5
5
  import { VetoInstance } from '@fuf-stack/veto';
6
+ export { useInput } from '@nextui-org/input';
6
7
 
7
8
  /** Schema check whether a field is required or optional */
8
9
  declare const checkFieldIsRequired: (validation: VetoInstance, path: string[]) => boolean;
@@ -20,10 +21,10 @@ declare const useFormContext: () => {
20
21
  isValidating: boolean;
21
22
  };
22
23
  formState: react_hook_form.FormState<react_hook_form.FieldValues>;
23
- debugMode: "debug" | "debug-testids" | "off" | "disabled";
24
+ debugMode: "disabled" | "debug" | "debug-testids" | "off";
24
25
  debugModeSettings?: DebugModeSettings;
25
26
  preventSubmit: (prevent: boolean) => void;
26
- setDebugMode: (debugMode: "debug" | "debug-testids" | "off" | "disabled") => void;
27
+ setDebugMode: (debugMode: "disabled" | "debug" | "debug-testids" | "off") => void;
27
28
  validation?: VetoInstance;
28
29
  watch: react_hook_form.UseFormWatch<react_hook_form.FieldValues>;
29
30
  getValues: react_hook_form.UseFormGetValues<react_hook_form.FieldValues>;
@@ -1,12 +1,15 @@
1
1
  import {
2
2
  checkFieldIsRequired,
3
3
  useFieldArray,
4
- useFormContext
5
- } from "../chunk-BZAPTLMC.js";
6
- import "../chunk-V46BHM2U.js";
4
+ useFormContext,
5
+ useInput
6
+ } from "../chunk-MRXNKY72.js";
7
+ import "../chunk-IEF2GJ22.js";
8
+ import "../chunk-CRTRMMJ7.js";
7
9
  export {
8
10
  checkFieldIsRequired,
9
11
  useFieldArray,
10
- useFormContext
12
+ useFormContext,
13
+ useInput
11
14
  };
12
15
  //# sourceMappingURL=index.js.map
package/dist/index.cjs CHANGED
@@ -1,55 +1,56 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunkHZP3EXGRcjs = require('./chunk-HZP3EXGR.cjs');
3
+ var _chunkK43U2JVGcjs = require('./chunk-K43U2JVG.cjs');
4
4
 
5
5
 
6
- var _chunkVZ5MMFIFcjs = require('./chunk-VZ5MMFIF.cjs');
6
+ var _chunkV7LRZ5GKcjs = require('./chunk-V7LRZ5GK.cjs');
7
7
 
8
8
 
9
- var _chunkEKE5URXQcjs = require('./chunk-EKE5URXQ.cjs');
9
+ var _chunkF6KTQXWGcjs = require('./chunk-F6KTQXWG.cjs');
10
10
 
11
11
 
12
- var _chunk25LLM544cjs = require('./chunk-25LLM544.cjs');
12
+ var _chunk4M6F2O2Kcjs = require('./chunk-4M6F2O2K.cjs');
13
13
 
14
14
 
15
- var _chunkRY4F5YDScjs = require('./chunk-RY4F5YDS.cjs');
15
+ var _chunkFLX6VIO7cjs = require('./chunk-FLX6VIO7.cjs');
16
16
 
17
17
 
18
- var _chunkPZ4LZQI4cjs = require('./chunk-PZ4LZQI4.cjs');
18
+ var _chunk4EP3IGSKcjs = require('./chunk-4EP3IGSK.cjs');
19
19
 
20
20
 
21
- var _chunkHOETR36Jcjs = require('./chunk-HOETR36J.cjs');
21
+ var _chunkQLQR44ADcjs = require('./chunk-QLQR44AD.cjs');
22
22
 
23
23
 
24
24
  var _chunk6GN255GPcjs = require('./chunk-6GN255GP.cjs');
25
25
 
26
26
 
27
- var _chunkU6VUNJZGcjs = require('./chunk-U6VUNJZG.cjs');
27
+ var _chunkMF4JB3YTcjs = require('./chunk-MF4JB3YT.cjs');
28
28
 
29
29
 
30
- var _chunkXJZAS7NGcjs = require('./chunk-XJZAS7NG.cjs');
30
+ var _chunkY4AUJ2YAcjs = require('./chunk-Y4AUJ2YA.cjs');
31
31
 
32
32
 
33
- var _chunkVQWKXSHWcjs = require('./chunk-VQWKXSHW.cjs');
33
+ var _chunkV5HTEMWZcjs = require('./chunk-V5HTEMWZ.cjs');
34
34
 
35
35
 
36
36
  var _chunkJU5RT22Ycjs = require('./chunk-JU5RT22Y.cjs');
37
37
 
38
38
 
39
- var _chunkOHJYXA6Rcjs = require('./chunk-OHJYXA6R.cjs');
39
+ var _chunkC4RM2JSDcjs = require('./chunk-C4RM2JSD.cjs');
40
40
 
41
41
 
42
42
 
43
43
 
44
- var _chunkXJWEUCV3cjs = require('./chunk-XJWEUCV3.cjs');
45
44
 
45
+ var _chunk2NSCPLAAcjs = require('./chunk-2NSCPLAA.cjs');
46
46
 
47
- var _chunkBBB4FEY6cjs = require('./chunk-BBB4FEY6.cjs');
48
47
 
49
48
 
50
49
 
51
50
 
52
51
 
52
+ var _chunk4AXNPSXGcjs = require('./chunk-4AXNPSXG.cjs');
53
+ require('./chunk-4DAZAO6Y.cjs');
53
54
 
54
55
 
55
56
 
@@ -63,5 +64,15 @@ var _chunkBBB4FEY6cjs = require('./chunk-BBB4FEY6.cjs');
63
64
 
64
65
 
65
66
 
66
- exports.CheckboxGroup = _chunkRY4F5YDScjs.CheckboxGroup_default; exports.Controller = _chunkVQWKXSHWcjs.Controller; exports.FieldArray = _chunkHOETR36Jcjs.FieldArray_default; exports.FieldCopyTestIdButton = _chunkJU5RT22Ycjs.FieldCopyTestIdButton_default; exports.FieldValidationError = _chunkOHJYXA6Rcjs.FieldValidationError_default; exports.Form = _chunkPZ4LZQI4cjs.Form_default; exports.Grid = _chunk6GN255GPcjs.Grid_default; exports.Input = _chunkU6VUNJZGcjs.Input_default; exports.RadioGroup = _chunkXJZAS7NGcjs.RadioGroup_default; exports.Select = _chunkHZP3EXGRcjs.Select_default; exports.SubmitButton = _chunkVZ5MMFIFcjs.SubmitButton_default; exports.Switch = _chunkEKE5URXQcjs.Switch_default; exports.TextArea = _chunk25LLM544cjs.TextArea_default; exports.checkFieldIsRequired = _chunkXJWEUCV3cjs.checkFieldIsRequired; exports.slugify = _chunkBBB4FEY6cjs.slugify; exports.useFieldArray = _chunkXJWEUCV3cjs.useFieldArray; exports.useFormContext = _chunkXJWEUCV3cjs.useFormContext;
67
+
68
+
69
+
70
+
71
+
72
+
73
+
74
+
75
+
76
+
77
+ exports.CheckboxGroup = _chunkFLX6VIO7cjs.CheckboxGroup_default; exports.Controller = _chunkV5HTEMWZcjs.Controller_default; exports.FieldArray = _chunk4EP3IGSKcjs.FieldArray_default; exports.FieldCopyTestIdButton = _chunkJU5RT22Ycjs.FieldCopyTestIdButton_default; exports.FieldValidationError = _chunkC4RM2JSDcjs.FieldValidationError_default; exports.Form = _chunkQLQR44ADcjs.Form_default; exports.Grid = _chunk6GN255GPcjs.Grid_default; exports.Input = _chunkY4AUJ2YAcjs.Input_default; exports.RadioGroup = _chunkMF4JB3YTcjs.RadioGroup_default; exports.Select = _chunkK43U2JVGcjs.Select_default; exports.SubmitButton = _chunkV7LRZ5GKcjs.SubmitButton_default; exports.Switch = _chunkF6KTQXWGcjs.Switch_default; exports.TextArea = _chunk4M6F2O2Kcjs.TextArea_default; exports.checkFieldIsRequired = _chunk2NSCPLAAcjs.checkFieldIsRequired; exports.fromNullishString = _chunk4AXNPSXGcjs.fromNullishString; exports.slugify = _chunk4AXNPSXGcjs.slugify; exports.toFormFormat = _chunk4AXNPSXGcjs.toFormFormat; exports.toNullishString = _chunk4AXNPSXGcjs.toNullishString; exports.toValidationFormat = _chunk4AXNPSXGcjs.toValidationFormat; exports.useFieldArray = _chunk2NSCPLAAcjs.useFieldArray; exports.useFormContext = _chunk2NSCPLAAcjs.useFormContext; exports.useInput = _chunk2NSCPLAAcjs.useInput;
67
78
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/pixels/pixels/packages/uniform/dist/index.cjs"],"names":[],"mappings":"AAAA;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,49BAAC","file":"/home/runner/work/pixels/pixels/packages/uniform/dist/index.cjs"}
1
+ {"version":3,"sources":["/home/runner/work/pixels/pixels/packages/uniform/dist/index.cjs"],"names":[],"mappings":"AAAA;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B,gCAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,2wCAAC","file":"/home/runner/work/pixels/pixels/packages/uniform/dist/index.cjs"}
package/dist/index.d.cts CHANGED
@@ -1,10 +1,12 @@
1
- export { Controller, ControllerProps, useFieldArray } from 'react-hook-form';
1
+ export { C as Controller, a as ControllerProps } from './Controller-8Nqugui5.cjs';
2
2
  export { C as CheckboxGroup, b as CheckboxGroupOption, a as CheckboxGroupProps } from './CheckboxGroup-o-qWkWe1.cjs';
3
- export { F as FieldArray, c as FieldArrayFieldChildren, b as FieldArrayHideOption, a as FieldArrayProps } from './FieldArray-DD9z-xZ3.cjs';
3
+ export { F as FieldArray, a as FieldArrayChildrenRenderFn, b as FieldArrayFeatures, c as FieldArrayProps } from './FieldArray-AqM2XKIh.cjs';
4
4
  export { F as Form, a as FormProps } from './Form-D0grgL6G.cjs';
5
5
  export { G as Grid, a as GridProps } from './Grid-DF3L9NF3.cjs';
6
- export { slugify } from './helpers/index.cjs';
6
+ export { fromNullishString, slugify, toFormFormat, toNullishString, toValidationFormat } from './helpers/index.cjs';
7
+ export { useFieldArray } from 'react-hook-form';
7
8
  export { checkFieldIsRequired, useFormContext } from './hooks/index.cjs';
9
+ export { useInput } from '@nextui-org/input';
8
10
  export { I as Input, a as InputProps } from './Input-IkWP4cWg.cjs';
9
11
  export { F as FieldCopyTestIdButton, a as FieldCopyTestIdButtonProps } from './FieldCopyTestIdButton-DnbovhMk.cjs';
10
12
  export { F as FieldValidationError, a as FieldValidationErrorProps } from './FieldValidationError-DAT12Ess.cjs';
package/dist/index.d.ts CHANGED
@@ -1,10 +1,12 @@
1
- export { Controller, ControllerProps, useFieldArray } from 'react-hook-form';
1
+ export { C as Controller, a as ControllerProps } from './Controller-8Nqugui5.js';
2
2
  export { C as CheckboxGroup, b as CheckboxGroupOption, a as CheckboxGroupProps } from './CheckboxGroup-o-qWkWe1.js';
3
- export { F as FieldArray, c as FieldArrayFieldChildren, b as FieldArrayHideOption, a as FieldArrayProps } from './FieldArray-DD9z-xZ3.js';
3
+ export { F as FieldArray, a as FieldArrayChildrenRenderFn, b as FieldArrayFeatures, c as FieldArrayProps } from './FieldArray-AqM2XKIh.js';
4
4
  export { F as Form, a as FormProps } from './Form-DX5NTR-H.js';
5
5
  export { G as Grid, a as GridProps } from './Grid-DF3L9NF3.js';
6
- export { slugify } from './helpers/index.js';
6
+ export { fromNullishString, slugify, toFormFormat, toNullishString, toValidationFormat } from './helpers/index.js';
7
+ export { useFieldArray } from 'react-hook-form';
7
8
  export { checkFieldIsRequired, useFormContext } from './hooks/index.js';
9
+ export { useInput } from '@nextui-org/input';
8
10
  export { I as Input, a as InputProps } from './Input-IkWP4cWg.js';
9
11
  export { F as FieldCopyTestIdButton, a as FieldCopyTestIdButtonProps } from './FieldCopyTestIdButton-DnbovhMk.js';
10
12
  export { F as FieldValidationError, a as FieldValidationErrorProps } from './FieldValidationError-DAT12Ess.js';
package/dist/index.js CHANGED
@@ -1,53 +1,59 @@
1
1
  import {
2
2
  Select_default
3
- } from "./chunk-IUNDGVMC.js";
3
+ } from "./chunk-W66BVPTB.js";
4
4
  import {
5
5
  SubmitButton_default
6
- } from "./chunk-GN5NJ6ZU.js";
6
+ } from "./chunk-UJYXA5AD.js";
7
7
  import {
8
8
  Switch_default
9
- } from "./chunk-BS52M4SZ.js";
9
+ } from "./chunk-WAXJ64P7.js";
10
10
  import {
11
11
  TextArea_default
12
- } from "./chunk-AQHKELUR.js";
12
+ } from "./chunk-U26GTLKF.js";
13
13
  import {
14
14
  CheckboxGroup_default
15
- } from "./chunk-XJGJ5ZNM.js";
16
- import {
17
- Form_default
18
- } from "./chunk-VP7WDLJM.js";
15
+ } from "./chunk-7HK64PN5.js";
19
16
  import {
20
17
  FieldArray_default
21
- } from "./chunk-Y53IHK6B.js";
18
+ } from "./chunk-OBQDQ4RX.js";
19
+ import {
20
+ Form_default
21
+ } from "./chunk-P4PRVNCH.js";
22
22
  import {
23
23
  Grid_default
24
24
  } from "./chunk-PDCEKC3G.js";
25
- import {
26
- Input_default
27
- } from "./chunk-TR2J3OKH.js";
28
25
  import {
29
26
  RadioGroup_default
30
- } from "./chunk-DDZMDOSG.js";
27
+ } from "./chunk-2LAPLELO.js";
28
+ import {
29
+ Input_default
30
+ } from "./chunk-3Q37222E.js";
31
31
  import {
32
- Controller
33
- } from "./chunk-KOKIM2ND.js";
32
+ Controller_default
33
+ } from "./chunk-4EJS5FXY.js";
34
34
  import {
35
35
  FieldCopyTestIdButton_default
36
36
  } from "./chunk-2CRY7VDQ.js";
37
37
  import {
38
38
  FieldValidationError_default
39
- } from "./chunk-WKM2D7LF.js";
39
+ } from "./chunk-VX76MJAI.js";
40
40
  import {
41
41
  checkFieldIsRequired,
42
42
  useFieldArray,
43
- useFormContext
44
- } from "./chunk-BZAPTLMC.js";
43
+ useFormContext,
44
+ useInput
45
+ } from "./chunk-MRXNKY72.js";
45
46
  import {
46
- slugify
47
- } from "./chunk-V46BHM2U.js";
47
+ fromNullishString,
48
+ slugify,
49
+ toFormFormat,
50
+ toNullishString,
51
+ toValidationFormat
52
+ } from "./chunk-IEF2GJ22.js";
53
+ import "./chunk-CRTRMMJ7.js";
48
54
  export {
49
55
  CheckboxGroup_default as CheckboxGroup,
50
- Controller,
56
+ Controller_default as Controller,
51
57
  FieldArray_default as FieldArray,
52
58
  FieldCopyTestIdButton_default as FieldCopyTestIdButton,
53
59
  FieldValidationError_default as FieldValidationError,
@@ -60,8 +66,13 @@ export {
60
66
  Switch_default as Switch,
61
67
  TextArea_default as TextArea,
62
68
  checkFieldIsRequired,
69
+ fromNullishString,
63
70
  slugify,
71
+ toFormFormat,
72
+ toNullishString,
73
+ toValidationFormat,
64
74
  useFieldArray,
65
- useFormContext
75
+ useFormContext,
76
+ useInput
66
77
  };
67
78
  //# sourceMappingURL=index.js.map
@@ -2,6 +2,7 @@
2
2
 
3
3
 
4
4
  var _chunkJU5RT22Ycjs = require('../../chunk-JU5RT22Y.cjs');
5
+ require('../../chunk-4DAZAO6Y.cjs');
5
6
 
6
7
 
7
8
 
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/pixels/pixels/packages/uniform/dist/partials/FieldCopyTestIdButton/index.cjs"],"names":[],"mappings":"AAAA;AACE;AACA;AACF,4DAAiC;AACjC;AACE;AACA;AACF,oJAAC","file":"/home/runner/work/pixels/pixels/packages/uniform/dist/partials/FieldCopyTestIdButton/index.cjs"}
1
+ {"version":3,"sources":["/home/runner/work/pixels/pixels/packages/uniform/dist/partials/FieldCopyTestIdButton/index.cjs"],"names":[],"mappings":"AAAA;AACE;AACA;AACF,4DAAiC;AACjC,oCAAiC;AACjC;AACE;AACA;AACF,oJAAC","file":"/home/runner/work/pixels/pixels/packages/uniform/dist/partials/FieldCopyTestIdButton/index.cjs"}