@fuf-stack/uniform 1.6.3 → 1.6.4

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.
@@ -1,7 +1,7 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
3
 
4
- var _chunk5BH5XTVCcjs = require('../chunk-5BH5XTVC.cjs');
4
+ var _chunkVGJEMY55cjs = require('../chunk-VGJEMY55.cjs');
5
5
  require('../chunk-LTKRK3OS.cjs');
6
6
  require('../chunk-BZ5OMN4Y.cjs');
7
7
  require('../chunk-4WYC2RBE.cjs');
@@ -18,5 +18,5 @@ require('../chunk-555JRYCS.cjs');
18
18
 
19
19
 
20
20
 
21
- exports.Form = _chunk5BH5XTVCcjs.Form_default; exports.default = _chunk5BH5XTVCcjs.Form_default2;
21
+ exports.Form = _chunkVGJEMY55cjs.Form_default; exports.default = _chunkVGJEMY55cjs.Form_default2;
22
22
  //# sourceMappingURL=index.cjs.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  Form_default,
3
3
  Form_default2
4
- } from "../chunk-T7S6RMCF.js";
4
+ } from "../chunk-UFL53ALT.js";
5
5
  import "../chunk-35V726MB.js";
6
6
  import "../chunk-MODD3TFE.js";
7
7
  import "../chunk-7KLFK2IT.js";
@@ -1,5 +1,5 @@
1
- import { S as Select } from '../Select-BEHwvmOf.cjs';
2
- export { a as SelectProps } from '../Select-BEHwvmOf.cjs';
1
+ import { S as Select } from '../Select-CDkZmZp2.cjs';
2
+ export { a as SelectProps } from '../Select-CDkZmZp2.cjs';
3
3
  import 'react/jsx-runtime';
4
4
  import 'tailwind-variants';
5
5
  import '@fuf-stack/pixel-utils';
@@ -1,5 +1,5 @@
1
- import { S as Select } from '../Select-BEHwvmOf.js';
2
- export { a as SelectProps } from '../Select-BEHwvmOf.js';
1
+ import { S as Select } from '../Select-CDkZmZp2.js';
2
+ export { a as SelectProps } from '../Select-CDkZmZp2.js';
3
3
  import 'react/jsx-runtime';
4
4
  import 'tailwind-variants';
5
5
  import '@fuf-stack/pixel-utils';
@@ -1,5 +1,5 @@
1
- import { S as Switch } from '../Switch-BWu3JXl4.cjs';
2
- export { a as SwitchProps } from '../Switch-BWu3JXl4.cjs';
1
+ import { S as Switch } from '../Switch-Hr6PnK98.cjs';
2
+ export { a as SwitchProps } from '../Switch-Hr6PnK98.cjs';
3
3
  import 'react/jsx-runtime';
4
4
  import 'tailwind-variants';
5
5
  import '@fuf-stack/pixel-utils';
@@ -1,5 +1,5 @@
1
- import { S as Switch } from '../Switch-BWu3JXl4.js';
2
- export { a as SwitchProps } from '../Switch-BWu3JXl4.js';
1
+ import { S as Switch } from '../Switch-Hr6PnK98.js';
2
+ export { a as SwitchProps } from '../Switch-Hr6PnK98.js';
3
3
  import 'react/jsx-runtime';
4
4
  import 'tailwind-variants';
5
5
  import '@fuf-stack/pixel-utils';
@@ -7,6 +7,7 @@ import {
7
7
  import { cn as cn2, slugify } from "@fuf-stack/pixel-utils";
8
8
 
9
9
  // src/Form/subcomponents/FormDebugViewer.tsx
10
+ import { useEffect, useState } from "react";
10
11
  import { FaTimes } from "react-icons/fa";
11
12
  import { FaBug, FaBullseye } from "react-icons/fa6";
12
13
  import { cn } from "@fuf-stack/pixel-utils";
@@ -21,12 +22,27 @@ var FormDebugViewer = ({ className = void 0 }) => {
21
22
  formState: { isValid, isSubmitting, submitCount, isSubmitSuccessful },
22
23
  setDebugMode,
23
24
  validation: { errors },
24
- watch
25
+ subscribe
25
26
  } = useFormContext();
26
27
  const showDebugButton = debugMode === "off";
27
28
  const showDebugCard = debugMode === "debug" || debugMode === "debug-testids";
28
29
  const showDebugTestIds = debugMode === "debug-testids";
29
- const values = watch();
30
+ const [values, setValues] = useState({});
31
+ useEffect(() => {
32
+ if (!showDebugCard) {
33
+ return void 0;
34
+ }
35
+ const subscription = subscribe({
36
+ formState: { values: true },
37
+ callback: (state) => {
38
+ var _a;
39
+ setValues((_a = state.values) != null ? _a : {});
40
+ }
41
+ });
42
+ return () => {
43
+ subscription();
44
+ };
45
+ }, [showDebugCard, subscribe]);
30
46
  if (showDebugButton) {
31
47
  return /* @__PURE__ */ jsx(
32
48
  Button,
@@ -148,4 +164,4 @@ export {
148
164
  Form_default,
149
165
  Form_default2
150
166
  };
151
- //# sourceMappingURL=chunk-T7S6RMCF.js.map
167
+ //# sourceMappingURL=chunk-UFL53ALT.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/Form/Form.tsx","../src/Form/subcomponents/FormDebugViewer.tsx","../src/Form/index.ts"],"sourcesContent":["import type { VetoInstance } from '@fuf-stack/veto';\nimport type { ReactNode } from 'react';\nimport type { FieldValues, SubmitHandler } from 'react-hook-form';\nimport type { DebugModeSettings } from './subcomponents/FormContext';\n\nimport { cn, slugify } from '@fuf-stack/pixel-utils';\n\nimport FormProvider from './subcomponents/FormContext';\nimport FormDebugViewer from './subcomponents/FormDebugViewer';\n\nconst IS_TEST = process.env.NODE_ENV === 'test';\n\nexport interface FormProps {\n /** form children */\n children: ReactNode | ReactNode[];\n /** CSS class name */\n className?: string | string[];\n /** settings for from debug mode */\n debug?: DebugModeSettings;\n /** initial form values */\n initialValues?: FieldValues;\n /** name of the form */\n name?: string;\n /** form submit handler */\n onSubmit: SubmitHandler<FieldValues>;\n /** HTML data-testid attribute used in e2e tests */\n testId?: string;\n /** veto validation schema */\n validation?: VetoInstance;\n /** when the validation should be triggered */\n validationTrigger?: 'onChange' | 'onBlur' | 'onSubmit' | 'onTouched' | 'all';\n}\n\n/**\n * Form component that has to wrap every uniform\n */\nconst Form = ({\n children,\n className = undefined,\n debug = undefined,\n initialValues = undefined,\n name = undefined,\n onSubmit,\n testId = undefined,\n validation = undefined,\n validationTrigger = 'all',\n}: FormProps) => {\n return (\n <FormProvider\n debugModeSettings={debug}\n initialValues={initialValues}\n onSubmit={onSubmit}\n validation={validation}\n validationTrigger={validationTrigger}\n >\n {({ handleSubmit, isValid }) => {\n return (\n <div className=\"flex w-full flex-row justify-between gap-6\">\n <form\n className={cn('grow', className)}\n data-form-is-valid={isValid}\n data-testid={slugify(testId ?? name ?? '')}\n name={name}\n onSubmit={handleSubmit}\n >\n {children}\n </form>\n {/* render debug viewer when not in test environment and debug not disabled */}\n {!IS_TEST && !debug?.disable && (\n <FormDebugViewer className=\"w-96 shrink\" />\n )}\n </div>\n );\n }}\n </FormProvider>\n );\n};\n\nexport default Form;\n","import { useEffect, useState } from 'react';\nimport { FaTimes } from 'react-icons/fa';\nimport { FaBug, FaBullseye } from 'react-icons/fa6';\n\nimport { cn } from '@fuf-stack/pixel-utils';\nimport { Button } from '@fuf-stack/pixels/Button';\nimport { Card } from '@fuf-stack/pixels/Card';\nimport { Json } from '@fuf-stack/pixels/Json';\n\nimport { useFormContext } from '../../hooks';\n\n// import Json css (theme)\nimport '@fuf-stack/pixels/Json.css';\n\ninterface FormDebugViewerProps {\n /** CSS class name */\n className?: string;\n}\n\n/** Renders a form debug panel with information about the current form state */\nconst FormDebugViewer = ({ className = undefined }: FormDebugViewerProps) => {\n const {\n debugMode,\n formState: { isValid, isSubmitting, submitCount, isSubmitSuccessful },\n setDebugMode,\n validation: { errors },\n subscribe,\n } = useFormContext();\n\n const showDebugButton = debugMode === 'off';\n const showDebugCard = debugMode === 'debug' || debugMode === 'debug-testids';\n const showDebugTestIds = debugMode === 'debug-testids';\n\n // Use subscribe instead of watch() to avoid triggering re-renders on parent components.\n // This component manages its own state and only updates itself when form values change.\n const [values, setValues] = useState<Record<string, unknown>>({});\n\n useEffect(() => {\n // Only subscribe when debug card is visible\n if (!showDebugCard) {\n return undefined;\n }\n\n const subscription = subscribe({\n formState: { values: true },\n callback: (state) => {\n setValues(state.values ?? {});\n },\n });\n\n return () => {\n subscription();\n };\n }, [showDebugCard, subscribe]);\n\n if (showDebugButton) {\n return (\n <Button\n ariaLabel=\"Enable form debug mode\"\n className=\"fixed bottom-2.5 right-2.5 w-5 text-default-400\"\n icon={<FaBug />}\n variant=\"light\"\n onClick={() => {\n setDebugMode('debug');\n }}\n />\n );\n }\n\n // do not show card\n if (!showDebugCard) {\n return null;\n }\n\n return (\n <Card\n className={cn(className)}\n header={\n <div className=\"flex w-full flex-row justify-between\">\n <span className=\"text-lg\">Debug Mode</span>\n <Button\n color=\"danger\"\n icon={<FaTimes />}\n size=\"sm\"\n variant=\"light\"\n onClick={() => {\n setDebugMode('off');\n }}\n />\n </div>\n }\n >\n <Button\n className=\"mb-4 ml-auto mr-auto\"\n icon={<FaBullseye />}\n variant={showDebugTestIds ? 'solid' : 'light'}\n onClick={() => {\n setDebugMode(debugMode === 'debug' ? 'debug-testids' : 'debug');\n }}\n >\n {showDebugTestIds ? 'Hide CopyButton' : 'Show CopyButton'}\n </Button>\n <Json\n value={{\n values,\n errors: errors ?? null,\n submit: {\n isValid,\n isSubmitting,\n isSubmitSuccessful,\n submitCount,\n },\n }}\n />\n </Card>\n );\n};\n\nexport default FormDebugViewer;\n","import Form from './Form';\n\nexport type { FormProps } from './Form';\n\nexport { Form };\n\nexport default Form;\n"],"mappings":"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","names":["cn","jsx","jsxs","cn","Form_default"]}
@@ -7,6 +7,7 @@ var _chunk42NCLEX4cjs = require('./chunk-42NCLEX4.cjs');
7
7
  var _pixelutils = require('@fuf-stack/pixel-utils');
8
8
 
9
9
  // src/Form/subcomponents/FormDebugViewer.tsx
10
+ var _react = require('react');
10
11
  var _fa = require('react-icons/fa');
11
12
  var _fa6 = require('react-icons/fa6');
12
13
 
@@ -21,12 +22,27 @@ var FormDebugViewer = ({ className = void 0 }) => {
21
22
  formState: { isValid, isSubmitting, submitCount, isSubmitSuccessful },
22
23
  setDebugMode,
23
24
  validation: { errors },
24
- watch
25
+ subscribe
25
26
  } = _chunk42NCLEX4cjs.useFormContext.call(void 0, );
26
27
  const showDebugButton = debugMode === "off";
27
28
  const showDebugCard = debugMode === "debug" || debugMode === "debug-testids";
28
29
  const showDebugTestIds = debugMode === "debug-testids";
29
- const values = watch();
30
+ const [values, setValues] = _react.useState.call(void 0, {});
31
+ _react.useEffect.call(void 0, () => {
32
+ if (!showDebugCard) {
33
+ return void 0;
34
+ }
35
+ const subscription = subscribe({
36
+ formState: { values: true },
37
+ callback: (state) => {
38
+ var _a;
39
+ setValues((_a = state.values) != null ? _a : {});
40
+ }
41
+ });
42
+ return () => {
43
+ subscription();
44
+ };
45
+ }, [showDebugCard, subscribe]);
30
46
  if (showDebugButton) {
31
47
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
32
48
  _Button.Button,
@@ -148,4 +164,4 @@ var Form_default2 = Form_default;
148
164
 
149
165
 
150
166
  exports.Form_default = Form_default; exports.Form_default2 = Form_default2;
151
- //# sourceMappingURL=chunk-5BH5XTVC.cjs.map
167
+ //# sourceMappingURL=chunk-VGJEMY55.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/home/runner/work/pixels/pixels/packages/uniform/dist/chunk-VGJEMY55.cjs","../src/Form/Form.tsx","../src/Form/subcomponents/FormDebugViewer.tsx","../src/Form/index.ts"],"names":["jsx","jsxs","cn","Form_default"],"mappings":"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","file":"/home/runner/work/pixels/pixels/packages/uniform/dist/chunk-VGJEMY55.cjs","sourcesContent":[null,"import type { VetoInstance } from '@fuf-stack/veto';\nimport type { ReactNode } from 'react';\nimport type { FieldValues, SubmitHandler } from 'react-hook-form';\nimport type { DebugModeSettings } from './subcomponents/FormContext';\n\nimport { cn, slugify } from '@fuf-stack/pixel-utils';\n\nimport FormProvider from './subcomponents/FormContext';\nimport FormDebugViewer from './subcomponents/FormDebugViewer';\n\nconst IS_TEST = process.env.NODE_ENV === 'test';\n\nexport interface FormProps {\n /** form children */\n children: ReactNode | ReactNode[];\n /** CSS class name */\n className?: string | string[];\n /** settings for from debug mode */\n debug?: DebugModeSettings;\n /** initial form values */\n initialValues?: FieldValues;\n /** name of the form */\n name?: string;\n /** form submit handler */\n onSubmit: SubmitHandler<FieldValues>;\n /** HTML data-testid attribute used in e2e tests */\n testId?: string;\n /** veto validation schema */\n validation?: VetoInstance;\n /** when the validation should be triggered */\n validationTrigger?: 'onChange' | 'onBlur' | 'onSubmit' | 'onTouched' | 'all';\n}\n\n/**\n * Form component that has to wrap every uniform\n */\nconst Form = ({\n children,\n className = undefined,\n debug = undefined,\n initialValues = undefined,\n name = undefined,\n onSubmit,\n testId = undefined,\n validation = undefined,\n validationTrigger = 'all',\n}: FormProps) => {\n return (\n <FormProvider\n debugModeSettings={debug}\n initialValues={initialValues}\n onSubmit={onSubmit}\n validation={validation}\n validationTrigger={validationTrigger}\n >\n {({ handleSubmit, isValid }) => {\n return (\n <div className=\"flex w-full flex-row justify-between gap-6\">\n <form\n className={cn('grow', className)}\n data-form-is-valid={isValid}\n data-testid={slugify(testId ?? name ?? '')}\n name={name}\n onSubmit={handleSubmit}\n >\n {children}\n </form>\n {/* render debug viewer when not in test environment and debug not disabled */}\n {!IS_TEST && !debug?.disable && (\n <FormDebugViewer className=\"w-96 shrink\" />\n )}\n </div>\n );\n }}\n </FormProvider>\n );\n};\n\nexport default Form;\n","import { useEffect, useState } from 'react';\nimport { FaTimes } from 'react-icons/fa';\nimport { FaBug, FaBullseye } from 'react-icons/fa6';\n\nimport { cn } from '@fuf-stack/pixel-utils';\nimport { Button } from '@fuf-stack/pixels/Button';\nimport { Card } from '@fuf-stack/pixels/Card';\nimport { Json } from '@fuf-stack/pixels/Json';\n\nimport { useFormContext } from '../../hooks';\n\n// import Json css (theme)\nimport '@fuf-stack/pixels/Json.css';\n\ninterface FormDebugViewerProps {\n /** CSS class name */\n className?: string;\n}\n\n/** Renders a form debug panel with information about the current form state */\nconst FormDebugViewer = ({ className = undefined }: FormDebugViewerProps) => {\n const {\n debugMode,\n formState: { isValid, isSubmitting, submitCount, isSubmitSuccessful },\n setDebugMode,\n validation: { errors },\n subscribe,\n } = useFormContext();\n\n const showDebugButton = debugMode === 'off';\n const showDebugCard = debugMode === 'debug' || debugMode === 'debug-testids';\n const showDebugTestIds = debugMode === 'debug-testids';\n\n // Use subscribe instead of watch() to avoid triggering re-renders on parent components.\n // This component manages its own state and only updates itself when form values change.\n const [values, setValues] = useState<Record<string, unknown>>({});\n\n useEffect(() => {\n // Only subscribe when debug card is visible\n if (!showDebugCard) {\n return undefined;\n }\n\n const subscription = subscribe({\n formState: { values: true },\n callback: (state) => {\n setValues(state.values ?? {});\n },\n });\n\n return () => {\n subscription();\n };\n }, [showDebugCard, subscribe]);\n\n if (showDebugButton) {\n return (\n <Button\n ariaLabel=\"Enable form debug mode\"\n className=\"fixed bottom-2.5 right-2.5 w-5 text-default-400\"\n icon={<FaBug />}\n variant=\"light\"\n onClick={() => {\n setDebugMode('debug');\n }}\n />\n );\n }\n\n // do not show card\n if (!showDebugCard) {\n return null;\n }\n\n return (\n <Card\n className={cn(className)}\n header={\n <div className=\"flex w-full flex-row justify-between\">\n <span className=\"text-lg\">Debug Mode</span>\n <Button\n color=\"danger\"\n icon={<FaTimes />}\n size=\"sm\"\n variant=\"light\"\n onClick={() => {\n setDebugMode('off');\n }}\n />\n </div>\n }\n >\n <Button\n className=\"mb-4 ml-auto mr-auto\"\n icon={<FaBullseye />}\n variant={showDebugTestIds ? 'solid' : 'light'}\n onClick={() => {\n setDebugMode(debugMode === 'debug' ? 'debug-testids' : 'debug');\n }}\n >\n {showDebugTestIds ? 'Hide CopyButton' : 'Show CopyButton'}\n </Button>\n <Json\n value={{\n values,\n errors: errors ?? null,\n submit: {\n isValid,\n isSubmitting,\n isSubmitSuccessful,\n submitCount,\n },\n }}\n />\n </Card>\n );\n};\n\nexport default FormDebugViewer;\n","import Form from './Form';\n\nexport type { FormProps } from './Form';\n\nexport { Form };\n\nexport default Form;\n"]}
@@ -24,10 +24,10 @@ declare const useFormContext: <TFieldValues extends FieldValues = FieldValues, T
24
24
  getValues: react_hook_form.UseFormGetValues<TFieldValues>;
25
25
  subscribe: react_hook_form.UseFromSubscribe<TFieldValues>;
26
26
  watch: react_hook_form.UseFormWatch<TFieldValues>;
27
- debugMode: "disabled" | "debug" | "debug-testids" | "off";
27
+ debugMode: "debug" | "debug-testids" | "off" | "disabled";
28
28
  debugModeSettings?: DebugModeSettings;
29
29
  preventSubmit: (prevent: boolean) => void;
30
- setDebugMode: (debugMode: "disabled" | "debug" | "debug-testids" | "off") => void;
30
+ setDebugMode: (debugMode: "debug" | "debug-testids" | "off" | "disabled") => void;
31
31
  triggerSubmit: (e?: React.BaseSyntheticEvent) => Promise<void> | void;
32
32
  validation: {
33
33
  baseInstance?: VetoInstance;
@@ -24,10 +24,10 @@ declare const useFormContext: <TFieldValues extends FieldValues = FieldValues, T
24
24
  getValues: react_hook_form.UseFormGetValues<TFieldValues>;
25
25
  subscribe: react_hook_form.UseFromSubscribe<TFieldValues>;
26
26
  watch: react_hook_form.UseFormWatch<TFieldValues>;
27
- debugMode: "disabled" | "debug" | "debug-testids" | "off";
27
+ debugMode: "debug" | "debug-testids" | "off" | "disabled";
28
28
  debugModeSettings?: DebugModeSettings;
29
29
  preventSubmit: (prevent: boolean) => void;
30
- setDebugMode: (debugMode: "disabled" | "debug" | "debug-testids" | "off") => void;
30
+ setDebugMode: (debugMode: "debug" | "debug-testids" | "off" | "disabled") => void;
31
31
  triggerSubmit: (e?: React.BaseSyntheticEvent) => Promise<void> | void;
32
32
  validation: {
33
33
  baseInstance?: VetoInstance;
package/dist/index.cjs CHANGED
@@ -21,7 +21,7 @@ var _chunkHEGORLRFcjs = require('./chunk-HEGORLRF.cjs');
21
21
  var _chunkA2LFA4A7cjs = require('./chunk-A2LFA4A7.cjs');
22
22
 
23
23
 
24
- var _chunk5BH5XTVCcjs = require('./chunk-5BH5XTVC.cjs');
24
+ var _chunkVGJEMY55cjs = require('./chunk-VGJEMY55.cjs');
25
25
 
26
26
 
27
27
  var _chunkTTD3KL6Ecjs = require('./chunk-TTD3KL6E.cjs');
@@ -105,5 +105,5 @@ require('./chunk-555JRYCS.cjs');
105
105
 
106
106
 
107
107
 
108
- exports.Checkboxes = _chunkHEGORLRFcjs.Checkboxes_default; exports.FieldArray = _chunkA2LFA4A7cjs.FieldArray_default; exports.FieldCopyTestIdButton = _chunkOE5BOGGXcjs.FieldCopyTestIdButton_default; exports.FieldValidationError = _chunkNHEZXA4Hcjs.FieldValidationError_default; exports.Form = _chunk5BH5XTVCcjs.Form_default; exports.Grid = _chunkTTD3KL6Ecjs.Grid_default; exports.Input = _chunk7NZVPVK3cjs.Input_default; exports.RadioBoxes = _chunkV3NNJJHYcjs.RadioBoxes_default; exports.RadioTabs = _chunk4Z7LIJHZcjs.RadioTabs_default; exports.Radios = _chunk4ATOAQOFcjs.Radios_default; exports.Select = _chunkQAQ3UP7Wcjs.Select_default; exports.SubmitButton = _chunkPC3VCEGMcjs.SubmitButton_default; exports.Switch = _chunkHX2JJ2ZKcjs.Switch_default; exports.TextArea = _chunkHANR2BDXcjs.TextArea_default; exports.checkFieldIsRequired = _chunk42NCLEX4cjs.checkFieldIsRequired; exports.clientValidationSchemaByName = _chunkD3EZXJQHcjs.clientValidationSchemaByName; exports.flatArrayKey = _chunkZ353BLWIcjs.flatArrayKey; exports.fromNullishString = _chunkZ353BLWIcjs.fromNullishString; exports.toFormFormat = _chunkZ353BLWIcjs.toFormFormat; exports.toNullishString = _chunkZ353BLWIcjs.toNullishString; exports.toValidationFormat = _chunkZ353BLWIcjs.toValidationFormat; exports.useClientValidation = _chunkD3EZXJQHcjs.useClientValidation; exports.useController = _chunkJMFDNTVCcjs.useController; exports.useFormContext = _chunk42NCLEX4cjs.useFormContext; exports.useInput = _chunkPCTYJUY7cjs.useInput; exports.useInputValueDebounce = _chunkBZ5OMN4Ycjs.useInputValueDebounce; exports.useInputValueTransform = _chunk4WYC2RBEcjs.useInputValueTransform; exports.useUniformField = _chunkSOQ6GCN3cjs.useUniformField; exports.useUniformFieldArray = _chunkMOVNWZX5cjs.useUniformFieldArray;
108
+ exports.Checkboxes = _chunkHEGORLRFcjs.Checkboxes_default; exports.FieldArray = _chunkA2LFA4A7cjs.FieldArray_default; exports.FieldCopyTestIdButton = _chunkOE5BOGGXcjs.FieldCopyTestIdButton_default; exports.FieldValidationError = _chunkNHEZXA4Hcjs.FieldValidationError_default; exports.Form = _chunkVGJEMY55cjs.Form_default; exports.Grid = _chunkTTD3KL6Ecjs.Grid_default; exports.Input = _chunk7NZVPVK3cjs.Input_default; exports.RadioBoxes = _chunkV3NNJJHYcjs.RadioBoxes_default; exports.RadioTabs = _chunk4Z7LIJHZcjs.RadioTabs_default; exports.Radios = _chunk4ATOAQOFcjs.Radios_default; exports.Select = _chunkQAQ3UP7Wcjs.Select_default; exports.SubmitButton = _chunkPC3VCEGMcjs.SubmitButton_default; exports.Switch = _chunkHX2JJ2ZKcjs.Switch_default; exports.TextArea = _chunkHANR2BDXcjs.TextArea_default; exports.checkFieldIsRequired = _chunk42NCLEX4cjs.checkFieldIsRequired; exports.clientValidationSchemaByName = _chunkD3EZXJQHcjs.clientValidationSchemaByName; exports.flatArrayKey = _chunkZ353BLWIcjs.flatArrayKey; exports.fromNullishString = _chunkZ353BLWIcjs.fromNullishString; exports.toFormFormat = _chunkZ353BLWIcjs.toFormFormat; exports.toNullishString = _chunkZ353BLWIcjs.toNullishString; exports.toValidationFormat = _chunkZ353BLWIcjs.toValidationFormat; exports.useClientValidation = _chunkD3EZXJQHcjs.useClientValidation; exports.useController = _chunkJMFDNTVCcjs.useController; exports.useFormContext = _chunk42NCLEX4cjs.useFormContext; exports.useInput = _chunkPCTYJUY7cjs.useInput; exports.useInputValueDebounce = _chunkBZ5OMN4Ycjs.useInputValueDebounce; exports.useInputValueTransform = _chunk4WYC2RBEcjs.useInputValueTransform; exports.useUniformField = _chunkSOQ6GCN3cjs.useUniformField; exports.useUniformFieldArray = _chunkMOVNWZX5cjs.useUniformFieldArray;
109
109
  //# sourceMappingURL=index.cjs.map
package/dist/index.d.cts CHANGED
@@ -17,9 +17,9 @@ export { F as FieldValidationError, a as FieldValidationErrorProps } from './Fie
17
17
  export { R as RadioBoxes, a as RadioBoxesProps } from './RadioBoxes-DpkI28l0.cjs';
18
18
  export { R as Radios, a as RadiosProps } from './Radios-DprlJhoq.cjs';
19
19
  export { R as RadioTabs, a as RadioTabsProps } from './RadioTabs-DTDcAZoH.cjs';
20
- export { S as Select, a as SelectProps } from './Select-BEHwvmOf.cjs';
20
+ export { S as Select, a as SelectProps } from './Select-CDkZmZp2.cjs';
21
21
  export { S as SubmitButton, a as SubmitButtonProps } from './SubmitButton-DqaxyVpp.cjs';
22
- export { S as Switch, a as SwitchProps } from './Switch-BWu3JXl4.cjs';
22
+ export { S as Switch, a as SwitchProps } from './Switch-Hr6PnK98.cjs';
23
23
  export { T as TextArea, a as TextAreaProps } from './TextArea-DhxNWYNg.cjs';
24
24
  import 'react/jsx-runtime';
25
25
  import 'tailwind-variants';
package/dist/index.d.ts CHANGED
@@ -17,9 +17,9 @@ export { F as FieldValidationError, a as FieldValidationErrorProps } from './Fie
17
17
  export { R as RadioBoxes, a as RadioBoxesProps } from './RadioBoxes-DpkI28l0.js';
18
18
  export { R as Radios, a as RadiosProps } from './Radios-DprlJhoq.js';
19
19
  export { R as RadioTabs, a as RadioTabsProps } from './RadioTabs-DTDcAZoH.js';
20
- export { S as Select, a as SelectProps } from './Select-BEHwvmOf.js';
20
+ export { S as Select, a as SelectProps } from './Select-CDkZmZp2.js';
21
21
  export { S as SubmitButton, a as SubmitButtonProps } from './SubmitButton-DqaxyVpp.js';
22
- export { S as Switch, a as SwitchProps } from './Switch-BWu3JXl4.js';
22
+ export { S as Switch, a as SwitchProps } from './Switch-Hr6PnK98.js';
23
23
  export { T as TextArea, a as TextAreaProps } from './TextArea-DhxNWYNg.js';
24
24
  import 'react/jsx-runtime';
25
25
  import 'tailwind-variants';
package/dist/index.js CHANGED
@@ -21,7 +21,7 @@ import {
21
21
  } from "./chunk-46FKQWMF.js";
22
22
  import {
23
23
  Form_default
24
- } from "./chunk-T7S6RMCF.js";
24
+ } from "./chunk-UFL53ALT.js";
25
25
  import {
26
26
  Grid_default
27
27
  } from "./chunk-B62HKKMS.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fuf-stack/uniform",
3
- "version": "1.6.3",
3
+ "version": "1.6.4",
4
4
  "description": "fuf react form library",
5
5
  "author": "Fröhlich ∧ Frei",
6
6
  "homepage": "https://github.com/fuf-stack/pixels#readme",
@@ -1 +0,0 @@
1
- {"version":3,"sources":["/home/runner/work/pixels/pixels/packages/uniform/dist/chunk-5BH5XTVC.cjs","../src/Form/Form.tsx","../src/Form/subcomponents/FormDebugViewer.tsx","../src/Form/index.ts"],"names":["jsx","jsxs","cn","Form_default"],"mappings":"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","file":"/home/runner/work/pixels/pixels/packages/uniform/dist/chunk-5BH5XTVC.cjs","sourcesContent":[null,"import type { VetoInstance } from '@fuf-stack/veto';\nimport type { ReactNode } from 'react';\nimport type { FieldValues, SubmitHandler } from 'react-hook-form';\nimport type { DebugModeSettings } from './subcomponents/FormContext';\n\nimport { cn, slugify } from '@fuf-stack/pixel-utils';\n\nimport FormProvider from './subcomponents/FormContext';\nimport FormDebugViewer from './subcomponents/FormDebugViewer';\n\nconst IS_TEST = process.env.NODE_ENV === 'test';\n\nexport interface FormProps {\n /** form children */\n children: ReactNode | ReactNode[];\n /** CSS class name */\n className?: string | string[];\n /** settings for from debug mode */\n debug?: DebugModeSettings;\n /** initial form values */\n initialValues?: FieldValues;\n /** name of the form */\n name?: string;\n /** form submit handler */\n onSubmit: SubmitHandler<FieldValues>;\n /** HTML data-testid attribute used in e2e tests */\n testId?: string;\n /** veto validation schema */\n validation?: VetoInstance;\n /** when the validation should be triggered */\n validationTrigger?: 'onChange' | 'onBlur' | 'onSubmit' | 'onTouched' | 'all';\n}\n\n/**\n * Form component that has to wrap every uniform\n */\nconst Form = ({\n children,\n className = undefined,\n debug = undefined,\n initialValues = undefined,\n name = undefined,\n onSubmit,\n testId = undefined,\n validation = undefined,\n validationTrigger = 'all',\n}: FormProps) => {\n return (\n <FormProvider\n debugModeSettings={debug}\n initialValues={initialValues}\n onSubmit={onSubmit}\n validation={validation}\n validationTrigger={validationTrigger}\n >\n {({ handleSubmit, isValid }) => {\n return (\n <div className=\"flex w-full flex-row justify-between gap-6\">\n <form\n className={cn('grow', className)}\n data-form-is-valid={isValid}\n data-testid={slugify(testId ?? name ?? '')}\n name={name}\n onSubmit={handleSubmit}\n >\n {children}\n </form>\n {/* render debug viewer when not in test environment and debug not disabled */}\n {!IS_TEST && !debug?.disable && (\n <FormDebugViewer className=\"w-96 shrink\" />\n )}\n </div>\n );\n }}\n </FormProvider>\n );\n};\n\nexport default Form;\n","import { FaTimes } from 'react-icons/fa';\nimport { FaBug, FaBullseye } from 'react-icons/fa6';\n\nimport { cn } from '@fuf-stack/pixel-utils';\nimport { Button } from '@fuf-stack/pixels/Button';\nimport { Card } from '@fuf-stack/pixels/Card';\nimport { Json } from '@fuf-stack/pixels/Json';\n\nimport { useFormContext } from '../../hooks';\n\n// import Json css (theme)\nimport '@fuf-stack/pixels/Json.css';\n\ninterface FormDebugViewerProps {\n /** CSS class name */\n className?: string;\n}\n\n/** Renders a form debug panel with information about the current form state */\nconst FormDebugViewer = ({ className = undefined }: FormDebugViewerProps) => {\n const {\n debugMode,\n formState: { isValid, isSubmitting, submitCount, isSubmitSuccessful },\n setDebugMode,\n validation: { errors },\n watch,\n } = useFormContext();\n\n const showDebugButton = debugMode === 'off';\n const showDebugCard = debugMode === 'debug' || debugMode === 'debug-testids';\n const showDebugTestIds = debugMode === 'debug-testids';\n\n // TODO: maybe use new Watch component?\n // see: https://github.com/react-hook-form/react-hook-form/pull/12986\n const values = watch();\n\n if (showDebugButton) {\n return (\n <Button\n ariaLabel=\"Enable form debug mode\"\n className=\"fixed bottom-2.5 right-2.5 w-5 text-default-400\"\n icon={<FaBug />}\n variant=\"light\"\n onClick={() => {\n setDebugMode('debug');\n }}\n />\n );\n }\n\n // do not show card\n if (!showDebugCard) {\n return null;\n }\n\n return (\n <Card\n className={cn(className)}\n header={\n <div className=\"flex w-full flex-row justify-between\">\n <span className=\"text-lg\">Debug Mode</span>\n <Button\n color=\"danger\"\n icon={<FaTimes />}\n size=\"sm\"\n variant=\"light\"\n onClick={() => {\n setDebugMode('off');\n }}\n />\n </div>\n }\n >\n <Button\n className=\"mb-4 ml-auto mr-auto\"\n icon={<FaBullseye />}\n variant={showDebugTestIds ? 'solid' : 'light'}\n onClick={() => {\n setDebugMode(debugMode === 'debug' ? 'debug-testids' : 'debug');\n }}\n >\n {showDebugTestIds ? 'Hide CopyButton' : 'Show CopyButton'}\n </Button>\n <Json\n value={{\n values,\n errors: errors ?? null,\n submit: {\n isValid,\n isSubmitting,\n isSubmitSuccessful,\n submitCount,\n },\n }}\n />\n </Card>\n );\n};\n\nexport default FormDebugViewer;\n","import Form from './Form';\n\nexport type { FormProps } from './Form';\n\nexport { Form };\n\nexport default Form;\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/Form/Form.tsx","../src/Form/subcomponents/FormDebugViewer.tsx","../src/Form/index.ts"],"sourcesContent":["import type { VetoInstance } from '@fuf-stack/veto';\nimport type { ReactNode } from 'react';\nimport type { FieldValues, SubmitHandler } from 'react-hook-form';\nimport type { DebugModeSettings } from './subcomponents/FormContext';\n\nimport { cn, slugify } from '@fuf-stack/pixel-utils';\n\nimport FormProvider from './subcomponents/FormContext';\nimport FormDebugViewer from './subcomponents/FormDebugViewer';\n\nconst IS_TEST = process.env.NODE_ENV === 'test';\n\nexport interface FormProps {\n /** form children */\n children: ReactNode | ReactNode[];\n /** CSS class name */\n className?: string | string[];\n /** settings for from debug mode */\n debug?: DebugModeSettings;\n /** initial form values */\n initialValues?: FieldValues;\n /** name of the form */\n name?: string;\n /** form submit handler */\n onSubmit: SubmitHandler<FieldValues>;\n /** HTML data-testid attribute used in e2e tests */\n testId?: string;\n /** veto validation schema */\n validation?: VetoInstance;\n /** when the validation should be triggered */\n validationTrigger?: 'onChange' | 'onBlur' | 'onSubmit' | 'onTouched' | 'all';\n}\n\n/**\n * Form component that has to wrap every uniform\n */\nconst Form = ({\n children,\n className = undefined,\n debug = undefined,\n initialValues = undefined,\n name = undefined,\n onSubmit,\n testId = undefined,\n validation = undefined,\n validationTrigger = 'all',\n}: FormProps) => {\n return (\n <FormProvider\n debugModeSettings={debug}\n initialValues={initialValues}\n onSubmit={onSubmit}\n validation={validation}\n validationTrigger={validationTrigger}\n >\n {({ handleSubmit, isValid }) => {\n return (\n <div className=\"flex w-full flex-row justify-between gap-6\">\n <form\n className={cn('grow', className)}\n data-form-is-valid={isValid}\n data-testid={slugify(testId ?? name ?? '')}\n name={name}\n onSubmit={handleSubmit}\n >\n {children}\n </form>\n {/* render debug viewer when not in test environment and debug not disabled */}\n {!IS_TEST && !debug?.disable && (\n <FormDebugViewer className=\"w-96 shrink\" />\n )}\n </div>\n );\n }}\n </FormProvider>\n );\n};\n\nexport default Form;\n","import { FaTimes } from 'react-icons/fa';\nimport { FaBug, FaBullseye } from 'react-icons/fa6';\n\nimport { cn } from '@fuf-stack/pixel-utils';\nimport { Button } from '@fuf-stack/pixels/Button';\nimport { Card } from '@fuf-stack/pixels/Card';\nimport { Json } from '@fuf-stack/pixels/Json';\n\nimport { useFormContext } from '../../hooks';\n\n// import Json css (theme)\nimport '@fuf-stack/pixels/Json.css';\n\ninterface FormDebugViewerProps {\n /** CSS class name */\n className?: string;\n}\n\n/** Renders a form debug panel with information about the current form state */\nconst FormDebugViewer = ({ className = undefined }: FormDebugViewerProps) => {\n const {\n debugMode,\n formState: { isValid, isSubmitting, submitCount, isSubmitSuccessful },\n setDebugMode,\n validation: { errors },\n watch,\n } = useFormContext();\n\n const showDebugButton = debugMode === 'off';\n const showDebugCard = debugMode === 'debug' || debugMode === 'debug-testids';\n const showDebugTestIds = debugMode === 'debug-testids';\n\n // TODO: maybe use new Watch component?\n // see: https://github.com/react-hook-form/react-hook-form/pull/12986\n const values = watch();\n\n if (showDebugButton) {\n return (\n <Button\n ariaLabel=\"Enable form debug mode\"\n className=\"fixed bottom-2.5 right-2.5 w-5 text-default-400\"\n icon={<FaBug />}\n variant=\"light\"\n onClick={() => {\n setDebugMode('debug');\n }}\n />\n );\n }\n\n // do not show card\n if (!showDebugCard) {\n return null;\n }\n\n return (\n <Card\n className={cn(className)}\n header={\n <div className=\"flex w-full flex-row justify-between\">\n <span className=\"text-lg\">Debug Mode</span>\n <Button\n color=\"danger\"\n icon={<FaTimes />}\n size=\"sm\"\n variant=\"light\"\n onClick={() => {\n setDebugMode('off');\n }}\n />\n </div>\n }\n >\n <Button\n className=\"mb-4 ml-auto mr-auto\"\n icon={<FaBullseye />}\n variant={showDebugTestIds ? 'solid' : 'light'}\n onClick={() => {\n setDebugMode(debugMode === 'debug' ? 'debug-testids' : 'debug');\n }}\n >\n {showDebugTestIds ? 'Hide CopyButton' : 'Show CopyButton'}\n </Button>\n <Json\n value={{\n values,\n errors: errors ?? null,\n submit: {\n isValid,\n isSubmitting,\n isSubmitSuccessful,\n submitCount,\n },\n }}\n />\n </Card>\n );\n};\n\nexport default FormDebugViewer;\n","import Form from './Form';\n\nexport type { FormProps } from './Form';\n\nexport { Form };\n\nexport default Form;\n"],"mappings":"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","names":["cn","jsx","jsxs","cn","Form_default"]}
@@ -6,13 +6,13 @@ import { Props } from 'react-select';
6
6
  declare const selectVariants: tailwind_variants.TVReturnType<{
7
7
  [key: string]: {
8
8
  [key: string]: tailwind_variants.ClassValue | {
9
- base?: tailwind_variants.ClassValue;
10
- label?: tailwind_variants.ClassValue;
11
- group?: tailwind_variants.ClassValue;
12
9
  control?: tailwind_variants.ClassValue;
10
+ base?: tailwind_variants.ClassValue;
13
11
  input?: tailwind_variants.ClassValue;
12
+ label?: tailwind_variants.ClassValue;
14
13
  menu?: tailwind_variants.ClassValue;
15
14
  option?: tailwind_variants.ClassValue;
15
+ group?: tailwind_variants.ClassValue;
16
16
  placeholder?: tailwind_variants.ClassValue;
17
17
  clearIndicator?: tailwind_variants.ClassValue;
18
18
  control_focused?: tailwind_variants.ClassValue;
@@ -41,13 +41,13 @@ declare const selectVariants: tailwind_variants.TVReturnType<{
41
41
  } | {
42
42
  [x: string]: {
43
43
  [x: string]: tailwind_variants.ClassValue | {
44
- base?: tailwind_variants.ClassValue;
45
- label?: tailwind_variants.ClassValue;
46
- group?: tailwind_variants.ClassValue;
47
44
  control?: tailwind_variants.ClassValue;
45
+ base?: tailwind_variants.ClassValue;
48
46
  input?: tailwind_variants.ClassValue;
47
+ label?: tailwind_variants.ClassValue;
49
48
  menu?: tailwind_variants.ClassValue;
50
49
  option?: tailwind_variants.ClassValue;
50
+ group?: tailwind_variants.ClassValue;
51
51
  placeholder?: tailwind_variants.ClassValue;
52
52
  clearIndicator?: tailwind_variants.ClassValue;
53
53
  control_focused?: tailwind_variants.ClassValue;
@@ -107,13 +107,13 @@ declare const selectVariants: tailwind_variants.TVReturnType<{
107
107
  }, undefined, {
108
108
  [key: string]: {
109
109
  [key: string]: tailwind_variants.ClassValue | {
110
- base?: tailwind_variants.ClassValue;
111
- label?: tailwind_variants.ClassValue;
112
- group?: tailwind_variants.ClassValue;
113
110
  control?: tailwind_variants.ClassValue;
111
+ base?: tailwind_variants.ClassValue;
114
112
  input?: tailwind_variants.ClassValue;
113
+ label?: tailwind_variants.ClassValue;
115
114
  menu?: tailwind_variants.ClassValue;
116
115
  option?: tailwind_variants.ClassValue;
116
+ group?: tailwind_variants.ClassValue;
117
117
  placeholder?: tailwind_variants.ClassValue;
118
118
  clearIndicator?: tailwind_variants.ClassValue;
119
119
  control_focused?: tailwind_variants.ClassValue;
@@ -6,13 +6,13 @@ import { Props } from 'react-select';
6
6
  declare const selectVariants: tailwind_variants.TVReturnType<{
7
7
  [key: string]: {
8
8
  [key: string]: tailwind_variants.ClassValue | {
9
- base?: tailwind_variants.ClassValue;
10
- label?: tailwind_variants.ClassValue;
11
- group?: tailwind_variants.ClassValue;
12
9
  control?: tailwind_variants.ClassValue;
10
+ base?: tailwind_variants.ClassValue;
13
11
  input?: tailwind_variants.ClassValue;
12
+ label?: tailwind_variants.ClassValue;
14
13
  menu?: tailwind_variants.ClassValue;
15
14
  option?: tailwind_variants.ClassValue;
15
+ group?: tailwind_variants.ClassValue;
16
16
  placeholder?: tailwind_variants.ClassValue;
17
17
  clearIndicator?: tailwind_variants.ClassValue;
18
18
  control_focused?: tailwind_variants.ClassValue;
@@ -41,13 +41,13 @@ declare const selectVariants: tailwind_variants.TVReturnType<{
41
41
  } | {
42
42
  [x: string]: {
43
43
  [x: string]: tailwind_variants.ClassValue | {
44
- base?: tailwind_variants.ClassValue;
45
- label?: tailwind_variants.ClassValue;
46
- group?: tailwind_variants.ClassValue;
47
44
  control?: tailwind_variants.ClassValue;
45
+ base?: tailwind_variants.ClassValue;
48
46
  input?: tailwind_variants.ClassValue;
47
+ label?: tailwind_variants.ClassValue;
49
48
  menu?: tailwind_variants.ClassValue;
50
49
  option?: tailwind_variants.ClassValue;
50
+ group?: tailwind_variants.ClassValue;
51
51
  placeholder?: tailwind_variants.ClassValue;
52
52
  clearIndicator?: tailwind_variants.ClassValue;
53
53
  control_focused?: tailwind_variants.ClassValue;
@@ -107,13 +107,13 @@ declare const selectVariants: tailwind_variants.TVReturnType<{
107
107
  }, undefined, {
108
108
  [key: string]: {
109
109
  [key: string]: tailwind_variants.ClassValue | {
110
- base?: tailwind_variants.ClassValue;
111
- label?: tailwind_variants.ClassValue;
112
- group?: tailwind_variants.ClassValue;
113
110
  control?: tailwind_variants.ClassValue;
111
+ base?: tailwind_variants.ClassValue;
114
112
  input?: tailwind_variants.ClassValue;
113
+ label?: tailwind_variants.ClassValue;
115
114
  menu?: tailwind_variants.ClassValue;
116
115
  option?: tailwind_variants.ClassValue;
116
+ group?: tailwind_variants.ClassValue;
117
117
  placeholder?: tailwind_variants.ClassValue;
118
118
  clearIndicator?: tailwind_variants.ClassValue;
119
119
  control_focused?: tailwind_variants.ClassValue;
@@ -8,8 +8,8 @@ declare const switchVariants: tailwind_variants.TVReturnType<{
8
8
  [key: string]: {
9
9
  [key: string]: tailwind_variants.ClassValue | {
10
10
  base?: tailwind_variants.ClassValue;
11
- errorMessage?: tailwind_variants.ClassValue;
12
11
  label?: tailwind_variants.ClassValue;
12
+ errorMessage?: tailwind_variants.ClassValue;
13
13
  wrapper?: tailwind_variants.ClassValue;
14
14
  startContent?: tailwind_variants.ClassValue;
15
15
  endContent?: tailwind_variants.ClassValue;
@@ -22,8 +22,8 @@ declare const switchVariants: tailwind_variants.TVReturnType<{
22
22
  [x: string]: {
23
23
  [x: string]: tailwind_variants.ClassValue | {
24
24
  base?: tailwind_variants.ClassValue;
25
- errorMessage?: tailwind_variants.ClassValue;
26
25
  label?: tailwind_variants.ClassValue;
26
+ errorMessage?: tailwind_variants.ClassValue;
27
27
  wrapper?: tailwind_variants.ClassValue;
28
28
  startContent?: tailwind_variants.ClassValue;
29
29
  endContent?: tailwind_variants.ClassValue;
@@ -46,8 +46,8 @@ declare const switchVariants: tailwind_variants.TVReturnType<{
46
46
  [key: string]: {
47
47
  [key: string]: tailwind_variants.ClassValue | {
48
48
  base?: tailwind_variants.ClassValue;
49
- errorMessage?: tailwind_variants.ClassValue;
50
49
  label?: tailwind_variants.ClassValue;
50
+ errorMessage?: tailwind_variants.ClassValue;
51
51
  wrapper?: tailwind_variants.ClassValue;
52
52
  startContent?: tailwind_variants.ClassValue;
53
53
  endContent?: tailwind_variants.ClassValue;
@@ -8,8 +8,8 @@ declare const switchVariants: tailwind_variants.TVReturnType<{
8
8
  [key: string]: {
9
9
  [key: string]: tailwind_variants.ClassValue | {
10
10
  base?: tailwind_variants.ClassValue;
11
- errorMessage?: tailwind_variants.ClassValue;
12
11
  label?: tailwind_variants.ClassValue;
12
+ errorMessage?: tailwind_variants.ClassValue;
13
13
  wrapper?: tailwind_variants.ClassValue;
14
14
  startContent?: tailwind_variants.ClassValue;
15
15
  endContent?: tailwind_variants.ClassValue;
@@ -22,8 +22,8 @@ declare const switchVariants: tailwind_variants.TVReturnType<{
22
22
  [x: string]: {
23
23
  [x: string]: tailwind_variants.ClassValue | {
24
24
  base?: tailwind_variants.ClassValue;
25
- errorMessage?: tailwind_variants.ClassValue;
26
25
  label?: tailwind_variants.ClassValue;
26
+ errorMessage?: tailwind_variants.ClassValue;
27
27
  wrapper?: tailwind_variants.ClassValue;
28
28
  startContent?: tailwind_variants.ClassValue;
29
29
  endContent?: tailwind_variants.ClassValue;
@@ -46,8 +46,8 @@ declare const switchVariants: tailwind_variants.TVReturnType<{
46
46
  [key: string]: {
47
47
  [key: string]: tailwind_variants.ClassValue | {
48
48
  base?: tailwind_variants.ClassValue;
49
- errorMessage?: tailwind_variants.ClassValue;
50
49
  label?: tailwind_variants.ClassValue;
50
+ errorMessage?: tailwind_variants.ClassValue;
51
51
  wrapper?: tailwind_variants.ClassValue;
52
52
  startContent?: tailwind_variants.ClassValue;
53
53
  endContent?: tailwind_variants.ClassValue;