@gnwebsoft/ui 3.0.7 → 3.0.9

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 (46) hide show
  1. package/dist/AsyncSelectPayload-B9-6l33R.d.cts +10 -0
  2. package/dist/AsyncSelectPayload-B9-6l33R.d.ts +10 -0
  3. package/dist/chunk-3OPVOWQK.js +140 -0
  4. package/dist/chunk-AEOF2TUF.cjs +2273 -0
  5. package/dist/chunk-ALHC7RLK.js +575 -0
  6. package/dist/chunk-BRRLB22L.js +72 -0
  7. package/dist/chunk-CHZU4PZB.js +2273 -0
  8. package/dist/chunk-EBRUE2WR.cjs +1 -1
  9. package/dist/chunk-HEHPKM4B.cjs +140 -0
  10. package/dist/chunk-K2EJ4YKO.cjs +72 -0
  11. package/dist/chunk-MVPLBJRK.cjs +1 -1
  12. package/dist/chunk-XY4U6A77.cjs +575 -0
  13. package/dist/components/index.cjs +1 -1
  14. package/dist/{enhanced-z-I7EHVS.d.cts → enhanced-CDTkKUlj.d.ts} +5 -5
  15. package/dist/{enhanced-z-I7EHVS.d.ts → enhanced-ZQoS03Cd.d.cts} +5 -5
  16. package/dist/events-BcHVCLBz.d.cts +77 -0
  17. package/dist/events-BcHVCLBz.d.ts +77 -0
  18. package/dist/hooks/index.cjs +3 -3
  19. package/dist/hooks/index.d.cts +3 -2
  20. package/dist/hooks/index.d.ts +3 -2
  21. package/dist/hooks/index.js +1 -1
  22. package/dist/index.cjs +67 -6
  23. package/dist/index.d.cts +5 -3
  24. package/dist/index.d.ts +5 -3
  25. package/dist/index.js +65 -4
  26. package/dist/types/index.cjs +31 -2
  27. package/dist/types/index.d.cts +589 -10
  28. package/dist/types/index.d.ts +589 -10
  29. package/dist/types/index.js +30 -1
  30. package/dist/utils/index.cjs +37 -3
  31. package/dist/utils/index.d.cts +330 -13
  32. package/dist/utils/index.d.ts +330 -13
  33. package/dist/utils/index.js +35 -1
  34. package/dist/wrappers/index.cjs +4 -4
  35. package/dist/wrappers/index.d.cts +41 -19
  36. package/dist/wrappers/index.d.ts +41 -19
  37. package/dist/wrappers/index.js +2 -2
  38. package/package.json +15 -14
  39. package/dist/chunk-4H3AFH7A.js +0 -505
  40. package/dist/chunk-55VNGODF.cjs +0 -2265
  41. package/dist/chunk-BWC3LJIB.js +0 -2265
  42. package/dist/chunk-DE62KYFK.js +0 -122
  43. package/dist/chunk-DEPJRTVT.js +0 -1
  44. package/dist/chunk-FD57PCAC.cjs +0 -1
  45. package/dist/chunk-R2YK4LTT.cjs +0 -122
  46. package/dist/chunk-ZC7FGYL2.cjs +0 -505
@@ -1,12 +1,14 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import * as react_hook_form from 'react-hook-form';
3
- import { FieldValues, FieldPath, Control, FieldError, PathValue, UseControllerProps, UseControllerReturn } from 'react-hook-form';
3
+ import { FieldValues, FieldPath, Control, FieldError, PathValue, UseControllerProps, UseControllerReturn, Path } from 'react-hook-form';
4
4
  import { GridProps, TextFieldVariants, SxProps, AutocompleteRenderInputParams, CheckboxProps, FormControlLabelProps, Theme, TextFieldProps, IconButtonProps, FormLabelProps, RadioProps, ChipTypeMap, AutocompleteProps, TextField } from '@mui/material';
5
5
  import * as React$1 from 'react';
6
6
  import React__default, { ReactNode, ChangeEvent } from 'react';
7
+ import { E as EventOrValue } from '../events-BcHVCLBz.js';
7
8
  import { PickerValidDate, DateValidationError, PickerChangeHandlerContext, DatePickerSlotProps, DatePickerProps, TimeValidationError, TimePickerSlotProps, TimePickerProps } from '@mui/x-date-pickers';
8
9
  import { useLocalizationContext } from '@mui/x-date-pickers/internals';
9
- import { F as FieldType } from '../enhanced-z-I7EHVS.js';
10
+ import { F as FieldType } from '../enhanced-CDTkKUlj.js';
11
+ import { A as AsyncSelectPayload } from '../AsyncSelectPayload-B9-6l33R.js';
10
12
 
11
13
  interface AsyncSelect2Payload {
12
14
  query: string | null;
@@ -96,12 +98,13 @@ interface CheckboxElementProps<TFieldValues extends FieldValues = FieldValues, T
96
98
  */
97
99
  input?: (value: PathValue<TFieldValues, TName>) => boolean;
98
100
  /**
99
- * Transform the checkbox state back to the desired field value.
101
+ * Transform the checkbox change event back to the desired field value.
100
102
  * If not provided, the boolean checked state is used directly.
101
- * @param checked - The checkbox checked state
103
+ * @param event - The checkbox change event
104
+ * @param checked - The new checked state
102
105
  * @returns The transformed value to store in the form
103
106
  */
104
- output?: (checked: boolean) => PathValue<TFieldValues, TName>;
107
+ output?: (event: React.ChangeEvent<HTMLInputElement>, checked: boolean) => PathValue<TFieldValues, TName>;
105
108
  };
106
109
  /**
107
110
  * Custom onChange handler that works alongside the form controller
@@ -232,8 +235,8 @@ declare const CheckboxGroup: {
232
235
  displayName: string;
233
236
  };
234
237
 
235
- type PrimitiveValue$1 = string | number | boolean;
236
- type OptionObject$1<TValueKey extends string = string, TLabelKey extends string = string, TDisabledKey extends string = string> = Record<TValueKey, PrimitiveValue$1> & Record<TLabelKey, string> & Partial<Record<TDisabledKey, boolean>> & Record<string, unknown>;
238
+ type PrimitiveValue$2 = string | number | boolean;
239
+ type OptionObject$2<TValueKey extends string = string, TLabelKey extends string = string, TDisabledKey extends string = string> = Record<TValueKey, PrimitiveValue$2> & Record<TLabelKey, string> & Partial<Record<TDisabledKey, boolean>> & Record<string, unknown>;
237
240
  /**
238
241
  * Props for the CheckboxGroup component.
239
242
  *
@@ -246,7 +249,7 @@ type OptionObject$1<TValueKey extends string = string, TLabelKey extends string
246
249
  *
247
250
  * @public
248
251
  */
249
- interface CheckboxGroupProps<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>, TOption extends OptionObject$1<TValueKey, TLabelKey, TDisabledKey> = OptionObject$1, TValueKey extends keyof TOption & string = "Value", TLabelKey extends keyof TOption & string = "Label", TDisabledKey extends keyof TOption & string = "disabled"> extends Omit<CheckboxProps, "name" | "checked" | "value" | "onChange"> {
252
+ interface CheckboxGroupProps<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>, TOption extends OptionObject$2<TValueKey, TLabelKey, TDisabledKey> = OptionObject$2, TValueKey extends keyof TOption & string = "Value", TLabelKey extends keyof TOption & string = "Label", TDisabledKey extends keyof TOption & string = "disabled"> extends Omit<CheckboxProps, "name" | "checked" | "value" | "onChange"> {
250
253
  /**
251
254
  * The field name in the form
252
255
  * @example "selectedItems" | "user.preferences"
@@ -320,7 +323,7 @@ interface CheckboxGroupProps<TFieldValues extends FieldValues = FieldValues, TNa
320
323
  * @param selectedValues - Array of selected option values
321
324
  * @returns The transformed value to store in the form
322
325
  */
323
- output?: (selectedValues: Array<TOption[TValueKey]>) => PathValue<TFieldValues, TName>;
326
+ output?: (eventOrValue: EventOrValue<PathValue<TFieldValues, TName>>, value?: PathValue<TFieldValues, TName>) => PathValue<TFieldValues, TName>;
324
327
  };
325
328
  /**
326
329
  * Custom onChange handler that works alongside the form controller
@@ -1095,9 +1098,9 @@ declare const PasswordElement: {
1095
1098
  displayName: string;
1096
1099
  };
1097
1100
 
1098
- type PrimitiveValue = string | number | boolean;
1099
- type OptionObject<TValueKey extends string = string, TLabelKey extends string = string, TDisabledKey extends string = string> = Record<TValueKey, PrimitiveValue> & Record<TLabelKey, string> & Partial<Record<TDisabledKey, boolean>> & Record<string, unknown>;
1100
- interface RadioButtonGroupProps<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>, TOption extends OptionObject<TValueKey, TLabelKey, TDisabledKey> = OptionObject, TValueKey extends keyof TOption & string = "id", TLabelKey extends keyof TOption & string = "label", TDisabledKey extends keyof TOption & string = "disabled"> {
1101
+ type PrimitiveValue$1 = string | number | boolean;
1102
+ type OptionObject$1<TValueKey extends string = string, TLabelKey extends string = string, TDisabledKey extends string = string> = Record<TValueKey, PrimitiveValue$1> & Record<TLabelKey, string> & Partial<Record<TDisabledKey, boolean>> & Record<string, unknown>;
1103
+ interface RadioButtonGroupProps<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>, TOption extends OptionObject$1<TValueKey, TLabelKey, TDisabledKey> = OptionObject$1, TValueKey extends keyof TOption & string = "id", TLabelKey extends keyof TOption & string = "label", TDisabledKey extends keyof TOption & string = "disabled"> {
1101
1104
  options: TOption[];
1102
1105
  helperText?: ReactNode;
1103
1106
  name: TName;
@@ -1119,12 +1122,12 @@ interface RadioButtonGroupProps<TFieldValues extends FieldValues = FieldValues,
1119
1122
  disabled?: boolean;
1120
1123
  transform?: {
1121
1124
  input?: (value: PathValue<TFieldValues, TName>) => TOption[TValueKey];
1122
- output?: (value: TOption[TValueKey] | TOption | undefined) => PathValue<TFieldValues, TName>;
1125
+ output?: (eventOrValue: EventOrValue<PathValue<TFieldValues, TName>>, value?: PathValue<TFieldValues, TName>) => PathValue<TFieldValues, TName>;
1123
1126
  };
1124
1127
  gridProps?: GridProps;
1125
1128
  }
1126
1129
  declare const RadioButtonGroup: {
1127
- <TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>, TOption extends OptionObject<TValueKey, TLabelKey, TDisabledKey> = OptionObject<string, string, string>, TValueKey extends keyof TOption & string = "id", TLabelKey extends keyof TOption & string = "label", TDisabledKey extends keyof TOption & string = "disabled">({ gridProps, ...props }: RadioButtonGroupProps<TFieldValues, TName, TOption, TValueKey, TLabelKey, TDisabledKey>): react_jsx_runtime.JSX.Element;
1130
+ <TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>, TOption extends OptionObject$1<TValueKey, TLabelKey, TDisabledKey> = OptionObject$1<string, string, string>, TValueKey extends keyof TOption & string = "id", TLabelKey extends keyof TOption & string = "label", TDisabledKey extends keyof TOption & string = "disabled">({ gridProps, ...props }: RadioButtonGroupProps<TFieldValues, TName, TOption, TValueKey, TLabelKey, TDisabledKey>): react_jsx_runtime.JSX.Element;
1128
1131
  displayName: string;
1129
1132
  };
1130
1133
 
@@ -1365,7 +1368,7 @@ interface TextFieldElementProps<TFieldValues extends FieldValues = FieldValues,
1365
1368
  /** Transform value before displaying in input */
1366
1369
  input?: (value: PathValue<TFieldValues, TName>) => TValue;
1367
1370
  /** Transform input event to form value */
1368
- output?: (event: ChangeEvent<HTMLInputElement | HTMLTextAreaElement>) => PathValue<TFieldValues, TName>;
1371
+ output?: (eventOrValue: EventOrValue<PathValue<TFieldValues, TName>>, value?: PathValue<TFieldValues, TName>) => PathValue<TFieldValues, TName>;
1369
1372
  };
1370
1373
  /**
1371
1374
  * The input label text
@@ -1509,7 +1512,7 @@ interface EnhancedTextFieldElementProps<TFieldValues extends FieldValues = Field
1509
1512
  /** Transform value before displaying in input */
1510
1513
  input?: (value: PathValue<TFieldValues, TName>) => TValue;
1511
1514
  /** Transform input event to form value */
1512
- output?: (event: ChangeEvent<HTMLInputElement | HTMLTextAreaElement>) => PathValue<TFieldValues, TName>;
1515
+ output?: (eventOrValue: EventOrValue<PathValue<TFieldValues, TName>>, value?: PathValue<TFieldValues, TName>) => PathValue<TFieldValues, TName>;
1513
1516
  };
1514
1517
  /**
1515
1518
  * Built-in field type for automatic transformation
@@ -1671,7 +1674,7 @@ interface TimePickerElementProps<TFieldValues extends FieldValues = FieldValues,
1671
1674
  slotProps?: Omit<TimePickerSlotProps<TEnableAccessibleFieldDOMStructure>, "textField">;
1672
1675
  transform?: {
1673
1676
  input?: (value: PathValue<TFieldValues, TName>) => TValue | null;
1674
- output?: (value: TValue | null, context: PickerChangeHandlerContext<TimeValidationError>) => PathValue<TFieldValues, TName>;
1677
+ output?: (eventOrValue: EventOrValue<PathValue<TFieldValues, TName>>, value?: PathValue<TFieldValues, TName>) => PathValue<TFieldValues, TName>;
1675
1678
  };
1676
1679
  gridProps?: GridProps;
1677
1680
  timePickerProps?: Omit<TimePickerProps<TEnableAccessibleFieldDOMStructure>, "value" | "slotProps">;
@@ -1683,6 +1686,22 @@ declare const TimePickerElement: {
1683
1686
  displayName: string;
1684
1687
  };
1685
1688
 
1689
+ type PrimitiveValue = string | number | boolean;
1690
+ type OptionObject<TValueKey extends string = string, TLabelKey extends string = string> = Record<TValueKey, PrimitiveValue> & Record<TLabelKey, string> & Record<string, unknown>;
1691
+ type AsyncSelectElementProps<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = Path<TFieldValues>, TValueKey extends string = "Value", TLabelKey extends string = "Label", TOption extends OptionObject<TValueKey, TLabelKey> = OptionObject<TValueKey, TLabelKey>, Multiple extends boolean | undefined = false, DisableClearable extends boolean | undefined = false, FreeSolo extends boolean | undefined = false, ChipComponent extends React.ElementType = ChipTypeMap['defaultComponent']> = Omit<AutocompleteProps<TOption, Multiple, DisableClearable, FreeSolo, ChipComponent>, 'name' | 'control' | 'ref' | 'multiple' | 'loading' | 'getOptionLabel' | 'getOptionKey' | 'isOptionEqualToValue' | 'options' | 'value' | 'filterSelectedOptions' | 'filterOptions' | 'onChange' | 'onInputChange' | 'renderInput'> & {
1692
+ name: TName;
1693
+ control?: Control<TFieldValues>;
1694
+ gridProps?: GridProps;
1695
+ placeholder?: string;
1696
+ label?: string;
1697
+ initialValue?: TOption[TValueKey] | null;
1698
+ queryFn: (data: AsyncSelectPayload) => Promise<TOption[] | undefined>;
1699
+ variant?: TextFieldVariants;
1700
+ sx?: SxProps;
1701
+ labelKey?: TLabelKey;
1702
+ valueKey?: TValueKey;
1703
+ };
1704
+
1686
1705
  declare const Field: {
1687
1706
  Text: {
1688
1707
  <TFieldValues extends react_hook_form.FieldValues = react_hook_form.FieldValues, TName extends react_hook_form.FieldPath<TFieldValues> = react_hook_form.FieldPath<TFieldValues>, TValue = unknown>({ gridProps, ...props }: TextFieldElementProps<TFieldValues, TName, TValue>): React.ReactElement;
@@ -1717,7 +1736,10 @@ declare const Field: {
1717
1736
  <TOption, TFieldValues extends react_hook_form.FieldValues = react_hook_form.FieldValues, TName extends react_hook_form.FieldPath<TFieldValues> = react_hook_form.FieldPath<TFieldValues>>({ gridProps, ...props }: SelectCascadeElementProps<TOption, TFieldValues, TName>): React.ReactElement;
1718
1737
  displayName: string;
1719
1738
  };
1720
- AsyncSelect: any;
1739
+ AsyncSelect: {
1740
+ <TFieldValues extends react_hook_form.FieldValues = react_hook_form.FieldValues, TName extends react_hook_form.FieldPath<TFieldValues> = react_hook_form.FieldPath<TFieldValues>, TValueKey extends string = "Value", TLabelKey extends string = "Label", TOption extends OptionObject<TValueKey, TLabelKey> = OptionObject<TValueKey, TLabelKey>>({ gridProps, ...props }: AsyncSelectElementProps<TFieldValues, TName, TValueKey, TLabelKey, TOption>): React.ReactElement;
1741
+ displayName: string;
1742
+ };
1721
1743
  AsyncMultiSelect: {
1722
1744
  <TFieldValues extends react_hook_form.FieldValues = react_hook_form.FieldValues, TName extends react_hook_form.FieldPath<TFieldValues> = react_hook_form.FieldPath<TFieldValues>>({ gridProps, ...props }: AsyncMultiSelect2Props<TFieldValues, TName>): react_jsx_runtime.JSX.Element;
1723
1745
  displayName: string;
@@ -1728,4 +1750,4 @@ declare const Field: {
1728
1750
  };
1729
1751
  };
1730
1752
 
1731
- export { AsyncMultiSelect2, type AsyncMultiSelect2Props, type AsyncSelect2Payload, type BrandedDate, CheckboxElement, type CheckboxElementProps, CheckboxGroup, type CheckboxGroupProps, DatePickerElement, DatePickerElementCore, type DatePickerElementCoreProps, type DatePickerElementGridProps, type DatePickerElementProps, type DatePickerHookReturn, type DatePickerValidationConfig, type DateTransform, EnhancedTextFieldElement, type EnhancedTextFieldElementProps, Field, type Option2Item, type OptionObject$1 as OptionObject, PasswordElement, RadioButtonGroup, SelectCascadeElement, SelectElement, SelectMultiElement, TextFieldElement, TimePickerElement, type TypedDatePickerSlotProps, type UseDatePickerStylesOptions, type UseDatePickerStylesReturn, type UseDatePickerValidationOptions, type UseDatePickerValidationReturn, type UseDatePickerValueOptions, type UseDatePickerValueReturn, type ValidatedDate, createDateInputTransform, createDateOutputTransform, createDefaultDatePickerConfig, createStableKey, extractErrorMessage, isParsableDateString, isValidDate, readDatePickerValueAsDate, useDatePickerStyles, useDatePickerValidation, useDatePickerValue };
1753
+ export { AsyncMultiSelect2, type AsyncMultiSelect2Props, type AsyncSelect2Payload, type BrandedDate, CheckboxElement, type CheckboxElementProps, CheckboxGroup, type CheckboxGroupProps, DatePickerElement, DatePickerElementCore, type DatePickerElementCoreProps, type DatePickerElementGridProps, type DatePickerElementProps, type DatePickerHookReturn, type DatePickerValidationConfig, type DateTransform, EnhancedTextFieldElement, type EnhancedTextFieldElementProps, Field, type Option2Item, type OptionObject$2 as OptionObject, PasswordElement, RadioButtonGroup, SelectCascadeElement, SelectElement, SelectMultiElement, TextFieldElement, TimePickerElement, type TypedDatePickerSlotProps, type UseDatePickerStylesOptions, type UseDatePickerStylesReturn, type UseDatePickerValidationOptions, type UseDatePickerValidationReturn, type UseDatePickerValueOptions, type UseDatePickerValueReturn, type ValidatedDate, createDateInputTransform, createDateOutputTransform, createDefaultDatePickerConfig, createStableKey, extractErrorMessage, isParsableDateString, isValidDate, readDatePickerValueAsDate, useDatePickerStyles, useDatePickerValidation, useDatePickerValue };
@@ -24,8 +24,8 @@ import {
24
24
  useDatePickerStyles,
25
25
  useDatePickerValidation,
26
26
  useDatePickerValue
27
- } from "../chunk-BWC3LJIB.js";
28
- import "../chunk-DE62KYFK.js";
27
+ } from "../chunk-CHZU4PZB.js";
28
+ import "../chunk-3OPVOWQK.js";
29
29
  export {
30
30
  AsyncMultiSelect2,
31
31
  CheckboxElement,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gnwebsoft/ui",
3
- "version": "3.0.7",
3
+ "version": "3.0.9",
4
4
  "type": "module",
5
5
  "description": "A set of reusable wrappers for MUI v7",
6
6
  "author": "GNWebsoft Private Limited",
@@ -30,7 +30,7 @@
30
30
  "test": "jest",
31
31
  "test:watch": "jest --watch",
32
32
  "test:coverage": "jest --coverage",
33
- "test:ci": "jest --ci --coverage --watchAll=false --reporters=default --reporters=jest-junit",
33
+ "test:ci": "jest --ci --coverage --watchAll=false",
34
34
  "test:a11y": "jest --testNamePattern=\"a11y\"",
35
35
  "docs:api": "typedoc",
36
36
  "docs:api:md": "typedoc --plugin typedoc-plugin-markdown --out docs/markdown",
@@ -50,36 +50,37 @@
50
50
  "engines": {
51
51
  "node": ">=22.0.0"
52
52
  },
53
+ "sideEffects": false,
53
54
  "exports": {
54
55
  ".": {
56
+ "types": "./dist/index.d.ts",
55
57
  "import": "./dist/index.js",
56
- "require": "./dist/index.cjs",
57
- "types": "./dist/index.d.ts"
58
+ "require": "./dist/index.cjs"
58
59
  },
59
60
  "./components": {
61
+ "types": "./dist/components/index.d.ts",
60
62
  "import": "./dist/components/index.js",
61
- "require": "./dist/components/index.cjs",
62
- "types": "./dist/components/index.d.ts"
63
+ "require": "./dist/components/index.cjs"
63
64
  },
64
65
  "./hooks": {
66
+ "types": "./dist/hooks/index.d.ts",
65
67
  "import": "./dist/hooks/index.js",
66
- "require": "./dist/hooks/index.cjs",
67
- "types": "./dist/hooks/index.d.ts"
68
+ "require": "./dist/hooks/index.cjs"
68
69
  },
69
70
  "./types": {
71
+ "types": "./dist/types/index.d.ts",
70
72
  "import": "./dist/types/index.js",
71
- "require": "./dist/types/index.cjs",
72
- "types": "./dist/types/index.d.ts"
73
+ "require": "./dist/types/index.cjs"
73
74
  },
74
75
  "./utils": {
76
+ "types": "./dist/utils/index.d.ts",
75
77
  "import": "./dist/utils/index.js",
76
- "require": "./dist/utils/index.cjs",
77
- "types": "./dist/utils/index.d.ts"
78
+ "require": "./dist/utils/index.cjs"
78
79
  },
79
80
  "./wrappers": {
81
+ "types": "./dist/wrappers/index.d.ts",
80
82
  "import": "./dist/wrappers/index.js",
81
- "require": "./dist/wrappers/index.cjs",
82
- "types": "./dist/wrappers/index.d.ts"
83
+ "require": "./dist/wrappers/index.cjs"
83
84
  }
84
85
  },
85
86
  "devDependencies": {