@x15ventures/x15-ui-library 3.13.5 → 3.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 (66) hide show
  1. package/dist/cjs/autoGenerated/libraryThemes.js +12 -12
  2. package/dist/cjs/autoGenerated/libraryThemes.js.map +1 -1
  3. package/dist/cjs/autoGenerated/libraryThemes.json +12 -12
  4. package/dist/cjs/components/design/skeleton/Skeleton.js +48 -0
  5. package/dist/cjs/components/design/skeleton/Skeleton.js.map +1 -0
  6. package/dist/cjs/components/design/skeleton/_skeletonVariables.css +0 -0
  7. package/dist/cjs/components/design/skeleton/skeleton.css +86 -0
  8. package/dist/cjs/components/form/formFields/formFieldWrapper/FormField.js +1 -1
  9. package/dist/cjs/components/form/formFields/formFieldWrapper/FormField.js.map +1 -1
  10. package/dist/cjs/components/form/formFields/formFieldWrapper/formFieldProps.js.map +1 -1
  11. package/dist/cjs/components/form/formFields/subComponents/textarea/Textarea.js +159 -18
  12. package/dist/cjs/components/form/formFields/subComponents/textarea/Textarea.js.map +1 -1
  13. package/dist/cjs/components/form/validation/ValidationMessages.js +2 -1
  14. package/dist/cjs/components/form/validation/ValidationMessages.js.map +1 -1
  15. package/dist/cjs/components/index.js +7 -0
  16. package/dist/cjs/components/index.js.map +1 -1
  17. package/dist/cjs/index.js +7 -0
  18. package/dist/cjs/index.js.map +1 -1
  19. package/dist/cjs/package.json +1 -1
  20. package/dist/cjs/styles/index.css +39 -0
  21. package/dist/cjs/styles/shared/_allPartials.css +25 -0
  22. package/dist/cjs/styles/shared/forms/_forms.css +25 -0
  23. package/dist/cjs/styles/variables/cssVars/_darkModeVariables.css +3 -0
  24. package/dist/cjs/styles/variables/cssVars/_designVariables.css +11 -0
  25. package/dist/components/design/skeleton/Skeleton.d.ts +27 -0
  26. package/dist/components/design/skeleton/Skeleton.d.ts.map +1 -0
  27. package/dist/components/form/formFields/formFieldWrapper/FormField.test.d.ts +5 -0
  28. package/dist/components/form/formFields/formFieldWrapper/FormField.test.d.ts.map +1 -0
  29. package/dist/components/form/formFields/formFieldWrapper/formFieldProps.d.ts +11 -1
  30. package/dist/components/form/formFields/formFieldWrapper/formFieldProps.d.ts.map +1 -1
  31. package/dist/components/form/formFields/subComponents/textarea/Textarea.d.ts.map +1 -1
  32. package/dist/components/form/formFields/subComponents/textarea/Textarea.test.d.ts +5 -0
  33. package/dist/components/form/formFields/subComponents/textarea/Textarea.test.d.ts.map +1 -0
  34. package/dist/components/form/validation/ValidationMessages.d.ts +2 -0
  35. package/dist/components/form/validation/ValidationMessages.d.ts.map +1 -1
  36. package/dist/components/index.d.ts +2 -0
  37. package/dist/components/index.d.ts.map +1 -1
  38. package/dist/esm/autoGenerated/libraryThemes.js +12 -12
  39. package/dist/esm/autoGenerated/libraryThemes.js.map +1 -1
  40. package/dist/esm/autoGenerated/libraryThemes.json +12 -12
  41. package/dist/esm/components/design/skeleton/Skeleton.js +40 -0
  42. package/dist/esm/components/design/skeleton/Skeleton.js.map +1 -0
  43. package/dist/esm/components/design/skeleton/_skeletonVariables.css +0 -0
  44. package/dist/esm/components/design/skeleton/skeleton.css +86 -0
  45. package/dist/esm/components/form/formFields/formFieldWrapper/FormField.js +1 -1
  46. package/dist/esm/components/form/formFields/formFieldWrapper/FormField.js.map +1 -1
  47. package/dist/esm/components/form/formFields/formFieldWrapper/formFieldProps.js.map +1 -1
  48. package/dist/esm/components/form/formFields/subComponents/textarea/Textarea.js +158 -17
  49. package/dist/esm/components/form/formFields/subComponents/textarea/Textarea.js.map +1 -1
  50. package/dist/esm/components/form/validation/ValidationMessages.js +1 -1
  51. package/dist/esm/components/form/validation/ValidationMessages.js.map +1 -1
  52. package/dist/esm/components/index.js +1 -0
  53. package/dist/esm/components/index.js.map +1 -1
  54. package/dist/esm/index.js +1 -1
  55. package/dist/esm/index.js.map +1 -1
  56. package/dist/esm/package.json +1 -1
  57. package/dist/esm/styles/index.css +39 -0
  58. package/dist/esm/styles/shared/_allPartials.css +25 -0
  59. package/dist/esm/styles/shared/forms/_forms.css +25 -0
  60. package/dist/esm/styles/variables/cssVars/_darkModeVariables.css +3 -0
  61. package/dist/esm/styles/variables/cssVars/_designVariables.css +11 -0
  62. package/dist/index.d.ts +2 -2
  63. package/dist/index.d.ts.map +1 -1
  64. package/dist/package.json +1 -1
  65. package/package.json +1 -1
  66. package/readme.md +1 -0
@@ -1,25 +1,55 @@
1
1
  "use strict";
2
2
  'use client';
3
3
 
4
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.Textarea = void 0;
9
- var _react = _interopRequireDefault(require("react"));
8
+ var _react = _interopRequireWildcard(require("react"));
10
9
  var _reactHookForm = require("react-hook-form");
11
10
  var _HookFormWrapper = require("../../../hookFormWrapper/HookFormWrapper");
12
11
  var _formUtilities = require("../../utilities/formUtilities");
12
+ var _ValidationMessages = require("../../../validation/ValidationMessages");
13
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
14
+ /**
15
+ * Counts user-perceived characters (grapheme clusters).
16
+ * Treats emojis and composed characters (e.g. accented letters) as a single character.
17
+ * Falls back to basic code-point counting if Intl.Segmenter is not available.
18
+ */
19
+ function getCharacterCount(value) {
20
+ if (typeof Intl !== 'undefined' && 'Segmenter' in Intl) {
21
+ const segmenter = new Intl.Segmenter(undefined, {
22
+ granularity: 'grapheme'
23
+ });
24
+ return Array.from(segmenter.segment(value)).length;
25
+ }
26
+ return Array.from(value).length;
27
+ }
28
+ function clampToGraphemeMax(value, maxAllowed) {
29
+ if (getCharacterCount(value) <= maxAllowed) {
30
+ return value;
31
+ }
32
+ if (typeof Intl !== 'undefined' && 'Segmenter' in Intl) {
33
+ const segmenter = new Intl.Segmenter(undefined, {
34
+ granularity: 'grapheme'
35
+ });
36
+ return Array.from(segmenter.segment(value)).slice(0, maxAllowed).map(segment => segment.segment).join('');
37
+ }
38
+ return Array.from(value).slice(0, maxAllowed).join('');
39
+ }
13
40
  const Textarea = ({
14
41
  field: {
15
42
  id,
16
43
  name,
17
44
  placeholder,
18
45
  defaultValue,
46
+ maxLength,
47
+ enforceMaxLength,
19
48
  onBlur = () => {},
20
49
  onChange = () => {},
21
50
  onKeyDown = () => {},
22
- onTouched = () => {}
51
+ onTouched = () => {},
52
+ ...htmlNativeDomProps
23
53
  },
24
54
  validation,
25
55
  showSpinner,
@@ -28,17 +58,101 @@ const Textarea = ({
28
58
  }) => {
29
59
  const {
30
60
  register,
31
- getFieldState
61
+ getFieldState,
62
+ formState: {
63
+ errors
64
+ }
32
65
  } = (0, _reactHookForm.useFormContext)() || _formUtilities.NoHookFormContext;
33
66
  const fieldState = getFieldState(name);
34
- const HandleAutoFill = event => {
67
+ const hasFieldError = Boolean((0, _ValidationMessages.extractError)(errors, name));
68
+ // Combine fieldState.invalid with a direct errors lookup so this component re-renders
69
+ // whenever formState.errors changes (getFieldState alone does not subscribe to errors).
70
+ const isInvalid = Boolean(fieldState?.invalid ?? hasFieldError);
71
+ const [count, setCount] = (0, _react.useState)(() => getCharacterCount(defaultValue?.toString() || ''));
72
+ const [hasStartedTyping, setHasStartedTyping] = (0, _react.useState)(false);
73
+ const hasMaxLength = typeof maxLength === 'number';
74
+ const isAtLimit = hasMaxLength ? count >= maxLength : false;
75
+ // Only hide counter for 'required' error. All other errors (maxLength, pattern, etc)
76
+ // should show counter instead of error message.
77
+ const isRequiredError = fieldState?.error?.type === 'required';
78
+ const characterCounter = !hasStartedTyping || !hasMaxLength || isRequiredError ? undefined : `${count}/${maxLength}`;
79
+ const cssClass = `${customCssClasses?.input || ''}${isInvalid ? ' invalidField' : ''}`;
80
+ const normalizedValidation = (0, _react.useMemo)(() => {
81
+ if (!validation || typeof validation.maxLength === 'undefined') {
82
+ return validation;
83
+ }
84
+ const maxLengthRule = validation.maxLength;
85
+ const maxLengthValue = typeof maxLengthRule === 'number' ? maxLengthRule : typeof maxLengthRule === 'object' && maxLengthRule && 'value' in maxLengthRule ? Number(maxLengthRule.value) : undefined;
86
+ if (typeof maxLengthValue !== 'number' || Number.isNaN(maxLengthValue)) {
87
+ return validation;
88
+ }
89
+ const maxLengthMessage = `Maximum length is ${maxLengthValue}`;
90
+ const graphemeMaxLengthValidator = value => getCharacterCount(value || '') <= maxLengthValue || maxLengthMessage;
91
+
92
+ // eslint-disable-next-line no-unused-vars
35
93
  const {
36
- target
37
- } = event;
38
- if (target) {
39
- onChange(event);
94
+ maxLength: _maxLength,
95
+ validate,
96
+ ...restValidation
97
+ } = validation;
98
+ if (typeof validate === 'function') {
99
+ return {
100
+ ...restValidation,
101
+ validate: async (value, formValues) => {
102
+ const validationResult = await validate(value, formValues);
103
+ if (validationResult !== true) {
104
+ return validationResult;
105
+ }
106
+ return graphemeMaxLengthValidator(value);
107
+ }
108
+ };
109
+ }
110
+ if (validate && typeof validate === 'object') {
111
+ return {
112
+ ...restValidation,
113
+ validate: {
114
+ ...validate,
115
+ graphemeMaxLength: graphemeMaxLengthValidator
116
+ }
117
+ };
118
+ }
119
+ return {
120
+ ...restValidation,
121
+ validate: graphemeMaxLengthValidator
122
+ };
123
+ }, [validation]);
124
+ const registered = register(name, normalizedValidation);
125
+
126
+ /**
127
+ * Prevents input that would exceed the maxLength when counting grapheme clusters.
128
+ * Native <textarea maxLength> counts UTF-16 units, so emojis and composed characters
129
+ * can be treated as multiple characters. We avoid using native maxLength and enforce
130
+ * the limit here instead.
131
+ */
132
+ const HandleBeforeInput = event => {
133
+ if (enforceMaxLength !== true || !hasMaxLength) return;
134
+ const nativeEvent = event.nativeEvent;
135
+ const inserted = nativeEvent.data ?? '';
136
+ if (!inserted) return;
137
+ const target = event.currentTarget;
138
+ const start = target.selectionStart ?? target.value.length;
139
+ const end = target.selectionEnd ?? target.value.length;
140
+ const nextValue = target.value.slice(0, start) + inserted + target.value.slice(end);
141
+ if (getCharacterCount(nextValue) > maxLength) {
142
+ event.preventDefault();
40
143
  }
41
144
  };
145
+ const HandleChange = event => {
146
+ const rawValue = event.target.value || '';
147
+ const newValue = enforceMaxLength === true && hasMaxLength ? clampToGraphemeMax(rawValue, maxLength) : rawValue;
148
+ if (newValue !== rawValue) {
149
+ event.target.value = newValue;
150
+ }
151
+ setHasStartedTyping(true);
152
+ setCount(getCharacterCount(newValue));
153
+ const onTextareaChange = onChange;
154
+ onTextareaChange?.(event);
155
+ };
42
156
  const HandleOnBlur = event => {
43
157
  const {
44
158
  target
@@ -50,9 +164,14 @@ const Textarea = ({
50
164
  };
51
165
  const HandleKeyEvent = event => {
52
166
  onTouched();
53
- onKeyDown(event);
167
+ const onTextareaKeyDown = onKeyDown;
168
+ onTextareaKeyDown?.(event);
54
169
  };
55
- const cssClass = `${customCssClasses?.input || ''}${fieldState && fieldState?.invalid ? ' invalidField' : ''}`;
170
+ const characterCounterId = `${id}_characterCount`;
171
+ const errorsId = `${name}_errors`;
172
+ const existingDescribedBy = typeof htmlNativeDomProps['aria-describedby'] === 'string' ? htmlNativeDomProps['aria-describedby'] : undefined;
173
+ const showsRequiredError = isInvalid && isRequiredError;
174
+ const mergedDescribedBy = showsRequiredError ? [existingDescribedBy, errorsId].filter(Boolean).join(' ') : characterCounter !== undefined ? [existingDescribedBy, characterCounterId].filter(Boolean).join(' ') : existingDescribedBy;
56
175
  const textareaProps = {
57
176
  id,
58
177
  className: cssClass,
@@ -64,16 +183,38 @@ const Textarea = ({
64
183
  ...(validation && typeof validation.required !== 'undefined' ? {
65
184
  required: true
66
185
  } : {}),
67
- ...register(name, {
68
- onChange: HandleAutoFill,
69
- onBlur: HandleOnBlur,
70
- ...validation
71
- }),
72
- onKeyDown: HandleKeyEvent
186
+ ...registered,
187
+ onBeforeInput: HandleBeforeInput,
188
+ onChange: event => {
189
+ HandleChange(event);
190
+ registered?.onChange?.(event);
191
+ },
192
+ onBlur: event => {
193
+ HandleOnBlur(event);
194
+ registered?.onBlur?.(event);
195
+ },
196
+ onKeyDown: HandleKeyEvent,
197
+ ...htmlNativeDomProps,
198
+ 'aria-describedby': mergedDescribedBy
73
199
  };
74
200
  return /*#__PURE__*/_react.default.createElement(_HookFormWrapper.HookFormWrapper, null, customContent?.preField && /*#__PURE__*/_react.default.createElement("span", {
75
201
  className: "preField"
76
- }, customContent?.preField), /*#__PURE__*/_react.default.createElement("textarea", textareaProps), customContent?.postField && /*#__PURE__*/_react.default.createElement("span", {
202
+ }, customContent?.preField), /*#__PURE__*/_react.default.createElement("div", {
203
+ className: "textareaFieldContainer"
204
+ }, /*#__PURE__*/_react.default.createElement("textarea", textareaProps), /*#__PURE__*/_react.default.createElement("div", {
205
+ className: "textareaFooter"
206
+ }, isInvalid && isRequiredError ? /*#__PURE__*/_react.default.createElement(_ValidationMessages.ValidationMessages, {
207
+ name: name,
208
+ validation: {
209
+ required: validation?.required
210
+ }
211
+ }) : /*#__PURE__*/_react.default.createElement("div", {
212
+ id: characterCounterId,
213
+ className: `textareaCharacterCount ${isAtLimit ? 'textareaCharacterCountExceeded' : ''}`,
214
+ role: isAtLimit ? 'status' : undefined,
215
+ "aria-live": isAtLimit ? 'polite' : undefined,
216
+ "aria-atomic": isAtLimit ? 'true' : undefined
217
+ }, characterCounter))), customContent?.postField && /*#__PURE__*/_react.default.createElement("span", {
77
218
  className: "postField"
78
219
  }, customContent?.postField));
79
220
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Textarea.js","names":["_interopRequireDefault","require","Object","defineProperty","exports","value","Textarea","_react","_reactHookForm","_HookFormWrapper","_formUtilities","field","id","name","placeholder","defaultValue","onBlur","onChange","onKeyDown","onTouched","validation","showSpinner","customCssClasses","customContent","register","getFieldState","useFormContext","NoHookFormContext","fieldState","HandleAutoFill","event","target","HandleOnBlur","HandleKeyEvent","cssClass","input","invalid","textareaProps","className","disabled","required","default","createElement","HookFormWrapper","preField","postField"],"sources":["../../../../../../../src/components/form/formFields/subComponents/textarea/Textarea.tsx"],"sourcesContent":["'use client';\n\nimport React from 'react';\nimport { useFormContext } from 'react-hook-form';\nimport { HookFormWrapper } from '../../../hookFormWrapper/HookFormWrapper';\nimport { FormFieldProps } from '../../formFieldWrapper/formFieldProps';\nimport { NoHookFormContext } from '../../utilities/formUtilities';\n\ninterface TextareaProps extends FormFieldProps, React.TextareaHTMLAttributes<HTMLTextAreaElement> {}\n\nexport const Textarea: React.FC<TextareaProps> = (\n {\n field: {\n id,\n name,\n placeholder,\n defaultValue,\n onBlur = () => {},\n onChange = () => {},\n onKeyDown = () => {},\n onTouched = () => {}\n },\n validation,\n showSpinner,\n customCssClasses,\n customContent\n }\n) => {\n const { register, getFieldState } = useFormContext() || NoHookFormContext;\n const fieldState = getFieldState(name);\n\n const HandleAutoFill = (event: React.FocusEvent<HTMLInputElement>) => {\n const { target } = event;\n if (target) {\n onChange(event);\n }\n };\n\n const HandleOnBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n const { target } = event;\n if (target) {\n onTouched();\n onBlur(event);\n }\n };\n\n const HandleKeyEvent = (\n event: React.KeyboardEvent<HTMLInputElement> &\n React.KeyboardEvent<HTMLSelectElement> &\n React.KeyboardEvent<HTMLTextAreaElement>\n ) => {\n onTouched();\n onKeyDown(event);\n };\n\n const cssClass = `${ customCssClasses?.input || '' }${ fieldState && fieldState?.invalid ? ' invalidField' : '' }`;\n\n const textareaProps = {\n id,\n className: cssClass,\n placeholder,\n defaultValue,\n ...(showSpinner ? { disabled: true } : {}),\n ...(validation && typeof validation.required !== 'undefined' ? { required: true } : {}),\n ...register(\n name,\n {\n onChange: HandleAutoFill,\n onBlur: HandleOnBlur,\n ...validation\n }\n ),\n onKeyDown: HandleKeyEvent\n };\n\n return (\n <HookFormWrapper>\n { customContent?.preField && <span className=\"preField\">{ customContent?.preField }</span> }\n\n <textarea { ...textareaProps } />\n\n { customContent?.postField && <span className=\"postField\">{ customContent?.postField }</span> }\n </HookFormWrapper>\n );\n};\n"],"mappings":";AAAA,YAAY;;AAAC,IAAAA,sBAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,cAAA,CAAAC,OAAA;EAAAC,KAAA;AAAA;AAAAD,OAAA,CAAAE,QAAA;AAEb,IAAAC,MAAA,GAAAP,sBAAA,CAAAC,OAAA;AACA,IAAAO,cAAA,GAAAP,OAAA;AACA,IAAAQ,gBAAA,GAAAR,OAAA;AAEA,IAAAS,cAAA,GAAAT,OAAA;AAIO,MAAMK,QAAiC,GAAGA,CAC/C;EACEK,KAAK,EAAE;IACLC,EAAE;IACFC,IAAI;IACJC,WAAW;IACXC,YAAY;IACZC,MAAM,GAAGA,CAAA,KAAM,CAAC,CAAC;IACjBC,QAAQ,GAAGA,CAAA,KAAM,CAAC,CAAC;IACnBC,SAAS,GAAGA,CAAA,KAAM,CAAC,CAAC;IACpBC,SAAS,GAAGA,CAAA,KAAM,CAAC;EACrB,CAAC;EACDC,UAAU;EACVC,WAAW;EACXC,gBAAgB;EAChBC;AACF,CAAC,KACE;EACH,MAAM;IAAEC,QAAQ;IAAEC;EAAc,CAAC,GAAG,IAAAC,6BAAc,EAAC,CAAC,IAAIC,gCAAiB;EACzE,MAAMC,UAAU,GAAGH,aAAa,CAACZ,IAAI,CAAC;EAEtC,MAAMgB,cAAc,GAAIC,KAAyC,IAAK;IACpE,MAAM;MAAEC;IAAO,CAAC,GAAGD,KAAK;IACxB,IAAIC,MAAM,EAAE;MACVd,QAAQ,CAACa,KAAK,CAAC;IACjB;EACF,CAAC;EAED,MAAME,YAAY,GAAIF,KAAyC,IAAK;IAClE,MAAM;MAAEC;IAAO,CAAC,GAAGD,KAAK;IACxB,IAAIC,MAAM,EAAE;MACVZ,SAAS,CAAC,CAAC;MACXH,MAAM,CAACc,KAAK,CAAC;IACf;EACF,CAAC;EAED,MAAMG,cAAc,GAClBH,KAE0C,IACvC;IACHX,SAAS,CAAC,CAAC;IACXD,SAAS,CAACY,KAAK,CAAC;EAClB,CAAC;EAED,MAAMI,QAAQ,GAAG,GAAIZ,gBAAgB,EAAEa,KAAK,IAAI,EAAE,GAAKP,UAAU,IAAIA,UAAU,EAAEQ,OAAO,GAAG,eAAe,GAAG,EAAE,EAAG;EAElH,MAAMC,aAAa,GAAG;IACpBzB,EAAE;IACF0B,SAAS,EAAEJ,QAAQ;IACnBpB,WAAW;IACXC,YAAY;IACZ,IAAIM,WAAW,GAAG;MAAEkB,QAAQ,EAAE;IAAK,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1C,IAAInB,UAAU,IAAI,OAAOA,UAAU,CAACoB,QAAQ,KAAK,WAAW,GAAG;MAAEA,QAAQ,EAAE;IAAK,CAAC,GAAG,CAAC,CAAC,CAAC;IACvF,GAAGhB,QAAQ,CACTX,IAAI,EACJ;MACEI,QAAQ,EAAEY,cAAc;MACxBb,MAAM,EAAEgB,YAAY;MACpB,GAAGZ;IACL,CACF,CAAC;IACDF,SAAS,EAAEe;EACb,CAAC;EAED,oBACE1B,MAAA,CAAAkC,OAAA,CAAAC,aAAA,CAACjC,gBAAA,CAAAkC,eAAe,QACZpB,aAAa,EAAEqB,QAAQ,iBAAIrC,MAAA,CAAAkC,OAAA,CAAAC,aAAA;IAAMJ,SAAS,EAAC;EAAU,GAAGf,aAAa,EAAEqB,QAAgB,CAAC,eAE1FrC,MAAA,CAAAkC,OAAA,CAAAC,aAAA,aAAeL,aAAiB,CAAC,EAE/Bd,aAAa,EAAEsB,SAAS,iBAAItC,MAAA,CAAAkC,OAAA,CAAAC,aAAA;IAAMJ,SAAS,EAAC;EAAW,GAAGf,aAAa,EAAEsB,SAAiB,CAC7E,CAAC;AAEtB,CAAC;AAACzC,OAAA,CAAAE,QAAA,GAAAA,QAAA","ignoreList":[]}
1
+ {"version":3,"file":"Textarea.js","names":["Object","defineProperty","exports","value","Textarea","_react","_interopRequireWildcard","require","_reactHookForm","_HookFormWrapper","_formUtilities","_ValidationMessages","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","getOwnPropertyDescriptor","getCharacterCount","Intl","segmenter","Segmenter","undefined","granularity","Array","from","segment","length","clampToGraphemeMax","maxAllowed","slice","map","join","field","id","name","placeholder","defaultValue","maxLength","enforceMaxLength","onBlur","onChange","onKeyDown","onTouched","htmlNativeDomProps","validation","showSpinner","customCssClasses","customContent","register","getFieldState","formState","errors","useFormContext","NoHookFormContext","fieldState","hasFieldError","Boolean","extractError","isInvalid","invalid","count","setCount","useState","toString","hasStartedTyping","setHasStartedTyping","hasMaxLength","isAtLimit","isRequiredError","error","type","characterCounter","cssClass","input","normalizedValidation","useMemo","maxLengthRule","maxLengthValue","Number","isNaN","maxLengthMessage","graphemeMaxLengthValidator","_maxLength","validate","restValidation","formValues","validationResult","graphemeMaxLength","registered","HandleBeforeInput","event","nativeEvent","inserted","data","target","currentTarget","start","selectionStart","end","selectionEnd","nextValue","preventDefault","HandleChange","rawValue","newValue","onTextareaChange","HandleOnBlur","HandleKeyEvent","onTextareaKeyDown","characterCounterId","errorsId","existingDescribedBy","showsRequiredError","mergedDescribedBy","filter","textareaProps","className","disabled","required","onBeforeInput","createElement","HookFormWrapper","preField","ValidationMessages","role","postField"],"sources":["../../../../../../../src/components/form/formFields/subComponents/textarea/Textarea.tsx"],"sourcesContent":["'use client';\n\nimport React, { useMemo, useState } from 'react';\nimport { useFormContext } from 'react-hook-form';\nimport { HookFormWrapper } from '../../../hookFormWrapper/HookFormWrapper';\nimport { FormFieldProps } from '../../formFieldWrapper/formFieldProps';\nimport { NoHookFormContext } from '../../utilities/formUtilities';\nimport { extractError, ValidationMessages } from '../../../validation/ValidationMessages';\n\ninterface TextareaProps extends FormFieldProps, React.TextareaHTMLAttributes<HTMLTextAreaElement> {}\n\n/**\n* Counts user-perceived characters (grapheme clusters).\n* Treats emojis and composed characters (e.g. accented letters) as a single character.\n* Falls back to basic code-point counting if Intl.Segmenter is not available.\n*/\nfunction getCharacterCount(value: string): number {\n if (typeof Intl !== 'undefined' && 'Segmenter' in Intl) {\n const segmenter = new Intl.Segmenter(undefined, {\n granularity: 'grapheme',\n });\n return Array.from(segmenter.segment(value)).length;\n }\n return Array.from(value).length;\n}\n\nfunction clampToGraphemeMax(value: string, maxAllowed: number): string {\n if (getCharacterCount(value) <= maxAllowed) {\n return value;\n }\n\n if (typeof Intl !== 'undefined' && 'Segmenter' in Intl) {\n const segmenter = new Intl.Segmenter(undefined, {\n granularity: 'grapheme',\n });\n\n return Array.from(segmenter.segment(value))\n .slice(0, maxAllowed)\n .map((segment) => segment.segment)\n .join('');\n }\n\n return Array.from(value).slice(0, maxAllowed).join('');\n}\n\nexport const Textarea: React.FC<TextareaProps> = (\n {\n field: {\n id,\n name,\n placeholder,\n defaultValue,\n maxLength,\n enforceMaxLength,\n onBlur = () => {},\n onChange = () => {},\n onKeyDown = () => {},\n onTouched = () => {},\n ...htmlNativeDomProps\n },\n validation,\n showSpinner,\n customCssClasses,\n customContent\n }\n) => {\n const { register, getFieldState, formState: { errors } } = useFormContext() || NoHookFormContext;\n const fieldState = getFieldState(name);\n const hasFieldError = Boolean(extractError(errors, name));\n // Combine fieldState.invalid with a direct errors lookup so this component re-renders\n // whenever formState.errors changes (getFieldState alone does not subscribe to errors).\n const isInvalid = Boolean(fieldState?.invalid ?? hasFieldError);\n const [count, setCount] = useState<number>(() =>\n getCharacterCount(defaultValue?.toString() || '')\n );\n const [hasStartedTyping, setHasStartedTyping] = useState(false);\n const hasMaxLength = typeof maxLength === 'number';\n const isAtLimit = hasMaxLength ? count >= maxLength : false;\n // Only hide counter for 'required' error. All other errors (maxLength, pattern, etc)\n // should show counter instead of error message.\n const isRequiredError = fieldState?.error?.type === 'required';\n const characterCounter =\n !hasStartedTyping || !hasMaxLength || isRequiredError\n ? undefined\n : `${ count }/${ maxLength }`;\n const cssClass = `${ customCssClasses?.input || '' }${ isInvalid ? ' invalidField' : '' }`;\n\n const normalizedValidation = useMemo(() => {\n if (!validation || typeof validation.maxLength === 'undefined') {\n return validation;\n }\n\n const maxLengthRule = validation.maxLength;\n const maxLengthValue =\n typeof maxLengthRule === 'number'\n ? maxLengthRule\n : typeof maxLengthRule === 'object' && maxLengthRule && 'value' in maxLengthRule\n ? Number(maxLengthRule.value)\n : undefined;\n\n if (typeof maxLengthValue !== 'number' || Number.isNaN(maxLengthValue)) {\n return validation;\n }\n\n const maxLengthMessage = `Maximum length is ${ maxLengthValue }`;\n\n const graphemeMaxLengthValidator = (value: string) =>\n getCharacterCount(value || '') <= maxLengthValue || maxLengthMessage;\n\n // eslint-disable-next-line no-unused-vars\n const { maxLength: _maxLength, validate, ...restValidation } = validation;\n\n if (typeof validate === 'function') {\n return {\n ...restValidation,\n validate: async (value: string, formValues?: unknown) => {\n const validationResult = await validate(value, formValues);\n if (validationResult !== true) {\n return validationResult;\n }\n return graphemeMaxLengthValidator(value);\n },\n };\n }\n\n if (validate && typeof validate === 'object') {\n return {\n ...restValidation,\n validate: {\n ...validate,\n graphemeMaxLength: graphemeMaxLengthValidator,\n },\n };\n }\n\n return {\n ...restValidation,\n validate: graphemeMaxLengthValidator,\n };\n }, [validation]);\n\n const registered = register(name, normalizedValidation);\n\n /**\n * Prevents input that would exceed the maxLength when counting grapheme clusters.\n * Native <textarea maxLength> counts UTF-16 units, so emojis and composed characters\n * can be treated as multiple characters. We avoid using native maxLength and enforce\n * the limit here instead.\n */\n const HandleBeforeInput = (event: React.FormEvent<HTMLTextAreaElement>) => {\n if (enforceMaxLength !== true || !hasMaxLength) return;\n\n const nativeEvent = event.nativeEvent as InputEvent;\n const inserted = nativeEvent.data ?? '';\n\n if (!inserted) return;\n\n const target = event.currentTarget;\n const start = target.selectionStart ?? target.value.length;\n const end = target.selectionEnd ?? target.value.length;\n\n const nextValue =\n target.value.slice(0, start) +\n inserted +\n target.value.slice(end);\n\n if (getCharacterCount(nextValue) > maxLength) {\n event.preventDefault();\n }\n };\n\n const HandleChange = (event: React.ChangeEvent<HTMLTextAreaElement>) => {\n const rawValue = event.target.value || '';\n const newValue =\n enforceMaxLength === true && hasMaxLength\n ? clampToGraphemeMax(rawValue, maxLength)\n : rawValue;\n\n if (newValue !== rawValue) {\n event.target.value = newValue;\n }\n\n setHasStartedTyping(true);\n setCount(getCharacterCount(newValue));\n const onTextareaChange = onChange as\n | React.ChangeEventHandler<HTMLTextAreaElement>\n | undefined;\n onTextareaChange?.(event);\n };\n\n const HandleOnBlur = (event: React.FocusEvent<HTMLTextAreaElement>) => {\n const { target } = event;\n if (target) {\n onTouched();\n onBlur(event);\n }\n };\n\n const HandleKeyEvent = (event: React.KeyboardEvent<HTMLTextAreaElement>) => {\n onTouched();\n const onTextareaKeyDown = onKeyDown as\n | React.KeyboardEventHandler<HTMLTextAreaElement>\n | undefined;\n onTextareaKeyDown?.(event);\n };\n\n const characterCounterId = `${ id }_characterCount`;\n const errorsId = `${ name }_errors`;\n const existingDescribedBy =\n typeof htmlNativeDomProps['aria-describedby'] === 'string'\n ? htmlNativeDomProps['aria-describedby']\n : undefined;\n const showsRequiredError = isInvalid && isRequiredError;\n const mergedDescribedBy = showsRequiredError\n ? [existingDescribedBy, errorsId].filter(Boolean).join(' ')\n : characterCounter !== undefined\n ? [existingDescribedBy, characterCounterId].filter(Boolean).join(' ')\n : existingDescribedBy;\n \n const textareaProps = {\n id,\n className: cssClass,\n placeholder,\n defaultValue,\n ...(showSpinner ? { disabled: true } : {}),\n ...(validation && typeof validation.required !== 'undefined' ? { required: true } : {}),\n ...registered,\n onBeforeInput: HandleBeforeInput,\n onChange: (event: React.ChangeEvent<HTMLTextAreaElement>) => {\n HandleChange(event);\n registered?.onChange?.(event);\n },\n onBlur: (event: React.FocusEvent<HTMLTextAreaElement>) => {\n HandleOnBlur(event);\n registered?.onBlur?.(event);\n },\n onKeyDown: HandleKeyEvent,\n ...htmlNativeDomProps,\n 'aria-describedby': mergedDescribedBy,\n };\n\n return (\n <HookFormWrapper>\n { customContent?.preField && <span className=\"preField\">{ customContent?.preField }</span> }\n\n <div className=\"textareaFieldContainer\">\n <textarea { ...textareaProps } /> \n\n <div className=\"textareaFooter\">\n { isInvalid && isRequiredError\n ? <ValidationMessages name={ name } validation={ { required: validation?.required } } />\n : (\n <div\n id={ characterCounterId }\n className={ `textareaCharacterCount ${\n isAtLimit\n ? 'textareaCharacterCountExceeded'\n : ''\n }` }\n role={ isAtLimit ? 'status' : undefined }\n aria-live={ isAtLimit ? 'polite' : undefined }\n aria-atomic={ isAtLimit ? 'true' : undefined }\n >\n { characterCounter }\n </div>\n )\n }\n </div>\n </div>\n\n { customContent?.postField && <span className=\"postField\">{ customContent?.postField }</span> }\n </HookFormWrapper>\n );\n};\n"],"mappings":"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","ignoreList":[]}
@@ -7,7 +7,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
7
7
  Object.defineProperty(exports, "__esModule", {
8
8
  value: true
9
9
  });
10
- exports.default = exports.ValidationMessages = exports.GenericErrorMessages = void 0;
10
+ exports.extractError = exports.default = exports.ValidationMessages = exports.GenericErrorMessages = void 0;
11
11
  var _react = _interopRequireDefault(require("react"));
12
12
  var _errorMessage = require("@hookform/error-message");
13
13
  var _reactHookForm = require("react-hook-form");
@@ -35,6 +35,7 @@ const extractError = (errors, fieldName) => {
35
35
  return accumulator[pathComponent];
36
36
  }, errors);
37
37
  };
38
+ exports.extractError = extractError;
38
39
  const ValidationMessages = ({
39
40
  name,
40
41
  validation
@@ -1 +1 @@
1
- {"version":3,"file":"ValidationMessages.js","names":["_interopRequireDefault","require","Object","defineProperty","exports","value","default","ValidationMessages","GenericErrorMessages","_react","_errorMessage","_reactHookForm","_formUtilities","required","minLength","maxLength","min","max","unknown","extractError","errors","fieldName","undefined","pathComponents","split","reduce","accumulator","pathComponent","name","validation","formState","useFormContext","NoHookFormContext","fieldError","entries","forEach","validatorKey","validator","type","types","message","createElement","className","id","ErrorMessage","render","_default"],"sources":["../../../../../src/components/form/validation/ValidationMessages.tsx"],"sourcesContent":["/* eslint-disable no-unused-vars */\n\n'use client';\n\nimport React from 'react';\nimport { ErrorMessage } from '@hookform/error-message';\nimport {\n FieldError,\n FieldErrors,\n FieldErrorsImpl,\n Merge, useFormContext\n} from 'react-hook-form';\nimport {\n ValidationProps\n} from '../formFields/formFieldWrapper/formFieldProps';\nimport { NoHookFormContext } from '../formFields/utilities/formUtilities';\nimport { InputCheckboxValidationProps } from '../formFields/subComponents/inputs/checkbox/inputCheckboxProps';\n\n// Type for generic error messages\nexport const GenericErrorMessages: Record<string, (value?: never) => string> = {\n required: () => 'This field is required. Please enter a value.',\n minLength: (value) => `Please provide a minimum of ${ value } characters.`,\n maxLength: (value) => `Please provide a maximum of ${ value } characters.`,\n min: (value) => `The value must be a minimum of ${ value }.`,\n max: (value) => `The value must be a maximum of ${ value }.`,\n unknown: () => 'An unknown error has occurred.'\n};\n\n// Helper function to extract nested errors\nconst extractError = (\n errors: FieldErrors,\n fieldName: string\n): FieldError | Merge<FieldError, FieldErrorsImpl<never>> | undefined => {\n if (!errors) {\n return undefined;\n }\n\n const pathComponents = fieldName.split('.');\n\n return pathComponents.reduce<FieldError | Merge<FieldError, FieldErrorsImpl<never>> | undefined>(\n (accumulator, pathComponent) => {\n if (!accumulator) {\n return undefined;\n }\n\n return (accumulator as never)[pathComponent];\n },\n errors as never\n );\n};\n\ninterface ValidationMessagesProps {\n name: string;\n validation?: ValidationProps | InputCheckboxValidationProps\n}\n\nexport const ValidationMessages: React.FC<ValidationMessagesProps> = (\n {\n name,\n validation\n }\n) => {\n const { formState: { errors } } = useFormContext() || NoHookFormContext;\n\n const fieldError = extractError(errors, name);\n\n if (!fieldError) {\n return null;\n }\n\n // Check all the validators have a message\n if (validation) {\n Object.entries(validation).forEach(([validatorKey, validator]) => {\n if (GenericErrorMessages[validatorKey]) {\n if (typeof validator === 'boolean') {\n if (\n fieldError.type &&\n fieldError.types &&\n typeof fieldError.types[fieldError.type] === 'string'\n ) {\n fieldError.message = fieldError.types[fieldError.type] as string;\n } else {\n fieldError.message = GenericErrorMessages[validatorKey]();\n }\n } else if (typeof validator === 'object' && 'value' in validator) {\n // @ts-ignore The hook form types don't seem to cater for versions with value properties properly\n fieldError.message = GenericErrorMessages[validatorKey](validator.value || undefined);\n }\n }\n });\n }\n\n return (\n <span className=\"validation\" id={ `${ name }_errors` }>\n <span className=\"message\">\n { !fieldError?.message && (\n <span className=\"error\">{ GenericErrorMessages.unknown() }</span>\n ) }\n\n <ErrorMessage\n errors={ errors }\n name={ name }\n render={ ({ message }) => <span className=\"error\">{ message }</span> }\n />\n </span>\n </span>\n );\n};\n\nexport default ValidationMessages;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"ValidationMessages.js","names":["_interopRequireDefault","require","Object","defineProperty","exports","value","extractError","default","ValidationMessages","GenericErrorMessages","_react","_errorMessage","_reactHookForm","_formUtilities","required","minLength","maxLength","min","max","unknown","errors","fieldName","undefined","pathComponents","split","reduce","accumulator","pathComponent","name","validation","formState","useFormContext","NoHookFormContext","fieldError","entries","forEach","validatorKey","validator","type","types","message","createElement","className","id","ErrorMessage","render","_default"],"sources":["../../../../../src/components/form/validation/ValidationMessages.tsx"],"sourcesContent":["/* eslint-disable no-unused-vars */\n\n'use client';\n\nimport React from 'react';\nimport { ErrorMessage } from '@hookform/error-message';\nimport {\n FieldError,\n FieldErrors,\n FieldErrorsImpl,\n Merge, useFormContext\n} from 'react-hook-form';\nimport {\n ValidationProps\n} from '../formFields/formFieldWrapper/formFieldProps';\nimport { NoHookFormContext } from '../formFields/utilities/formUtilities';\nimport { InputCheckboxValidationProps } from '../formFields/subComponents/inputs/checkbox/inputCheckboxProps';\n\n// Type for generic error messages\nexport const GenericErrorMessages: Record<string, (value?: never) => string> = {\n required: () => 'This field is required. Please enter a value.',\n minLength: (value) => `Please provide a minimum of ${ value } characters.`,\n maxLength: (value) => `Please provide a maximum of ${ value } characters.`,\n min: (value) => `The value must be a minimum of ${ value }.`,\n max: (value) => `The value must be a maximum of ${ value }.`,\n unknown: () => 'An unknown error has occurred.'\n};\n\n// Helper function to extract nested errors\nexport const extractError = (\n errors: FieldErrors,\n fieldName: string\n): FieldError | Merge<FieldError, FieldErrorsImpl<never>> | undefined => {\n if (!errors) {\n return undefined;\n }\n\n const pathComponents = fieldName.split('.');\n\n return pathComponents.reduce<FieldError | Merge<FieldError, FieldErrorsImpl<never>> | undefined>(\n (accumulator, pathComponent) => {\n if (!accumulator) {\n return undefined;\n }\n\n return (accumulator as never)[pathComponent];\n },\n errors as never\n );\n};\n\ninterface ValidationMessagesProps {\n name: string;\n validation?: ValidationProps | InputCheckboxValidationProps\n}\n\nexport const ValidationMessages: React.FC<ValidationMessagesProps> = (\n {\n name,\n validation\n }\n) => {\n const { formState: { errors } } = useFormContext() || NoHookFormContext;\n\n const fieldError = extractError(errors, name);\n\n if (!fieldError) {\n return null;\n }\n\n // Check all the validators have a message\n if (validation) {\n Object.entries(validation).forEach(([validatorKey, validator]) => {\n if (GenericErrorMessages[validatorKey]) {\n if (typeof validator === 'boolean') {\n if (\n fieldError.type &&\n fieldError.types &&\n typeof fieldError.types[fieldError.type] === 'string'\n ) {\n fieldError.message = fieldError.types[fieldError.type] as string;\n } else {\n fieldError.message = GenericErrorMessages[validatorKey]();\n }\n } else if (typeof validator === 'object' && 'value' in validator) {\n // @ts-ignore The hook form types don't seem to cater for versions with value properties properly\n fieldError.message = GenericErrorMessages[validatorKey](validator.value || undefined);\n }\n }\n });\n }\n\n return (\n <span className=\"validation\" id={ `${ name }_errors` }>\n <span className=\"message\">\n { !fieldError?.message && (\n <span className=\"error\">{ GenericErrorMessages.unknown() }</span>\n ) }\n\n <ErrorMessage\n errors={ errors }\n name={ name }\n render={ ({ message }) => <span className=\"error\">{ message }</span> }\n />\n </span>\n </span>\n );\n};\n\nexport default ValidationMessages;\n"],"mappings":";AAAA;;AAEA,YAAY;;AAAC,IAAAA,sBAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,cAAA,CAAAC,OAAA;EAAAC,KAAA;AAAA;AAAAD,OAAA,CAAAE,YAAA,GAAAF,OAAA,CAAAG,OAAA,GAAAH,OAAA,CAAAI,kBAAA,GAAAJ,OAAA,CAAAK,oBAAA;AAEb,IAAAC,MAAA,GAAAV,sBAAA,CAAAC,OAAA;AACA,IAAAU,aAAA,GAAAV,OAAA;AACA,IAAAW,cAAA,GAAAX,OAAA;AASA,IAAAY,cAAA,GAAAZ,OAAA;AAGA;AACO,MAAMQ,oBAA+D,GAAAL,OAAA,CAAAK,oBAAA,GAAG;EAC7EK,QAAQ,EAAEA,CAAA,KAAM,+CAA+C;EAC/DC,SAAS,EAAGV,KAAK,IAAK,+BAAgCA,KAAK,cAAe;EAC1EW,SAAS,EAAGX,KAAK,IAAK,+BAAgCA,KAAK,cAAe;EAC1EY,GAAG,EAAGZ,KAAK,IAAK,kCAAmCA,KAAK,GAAI;EAC5Da,GAAG,EAAGb,KAAK,IAAK,kCAAmCA,KAAK,GAAI;EAC5Dc,OAAO,EAAEA,CAAA,KAAM;AACjB,CAAC;;AAED;AACO,MAAMb,YAAY,GAAGA,CAC1Bc,MAAmB,EACnBC,SAAiB,KACsD;EACvE,IAAI,CAACD,MAAM,EAAE;IACX,OAAOE,SAAS;EAClB;EAEA,MAAMC,cAAc,GAAGF,SAAS,CAACG,KAAK,CAAC,GAAG,CAAC;EAE3C,OAAOD,cAAc,CAACE,MAAM,CAC1B,CAACC,WAAW,EAAEC,aAAa,KAAK;IAC9B,IAAI,CAACD,WAAW,EAAE;MAChB,OAAOJ,SAAS;IAClB;IAEA,OAAQI,WAAW,CAAWC,aAAa,CAAC;EAC9C,CAAC,EACDP,MACF,CAAC;AACH,CAAC;AAAChB,OAAA,CAAAE,YAAA,GAAAA,YAAA;AAOK,MAAME,kBAAqD,GAAGA,CACnE;EACEoB,IAAI;EACJC;AACF,CAAC,KACE;EACH,MAAM;IAAEC,SAAS,EAAE;MAAEV;IAAO;EAAE,CAAC,GAAG,IAAAW,6BAAc,EAAC,CAAC,IAAIC,gCAAiB;EAEvE,MAAMC,UAAU,GAAG3B,YAAY,CAACc,MAAM,EAAEQ,IAAI,CAAC;EAE7C,IAAI,CAACK,UAAU,EAAE;IACf,OAAO,IAAI;EACb;;EAEA;EACA,IAAIJ,UAAU,EAAE;IACd3B,MAAM,CAACgC,OAAO,CAACL,UAAU,CAAC,CAACM,OAAO,CAAC,CAAC,CAACC,YAAY,EAAEC,SAAS,CAAC,KAAK;MAChE,IAAI5B,oBAAoB,CAAC2B,YAAY,CAAC,EAAE;QACtC,IAAI,OAAOC,SAAS,KAAK,SAAS,EAAE;UAClC,IACEJ,UAAU,CAACK,IAAI,IACfL,UAAU,CAACM,KAAK,IAChB,OAAON,UAAU,CAACM,KAAK,CAACN,UAAU,CAACK,IAAI,CAAC,KAAK,QAAQ,EACrD;YACAL,UAAU,CAACO,OAAO,GAAGP,UAAU,CAACM,KAAK,CAACN,UAAU,CAACK,IAAI,CAAW;UAClE,CAAC,MAAM;YACLL,UAAU,CAACO,OAAO,GAAG/B,oBAAoB,CAAC2B,YAAY,CAAC,CAAC,CAAC;UAC3D;QACF,CAAC,MAAM,IAAI,OAAOC,SAAS,KAAK,QAAQ,IAAI,OAAO,IAAIA,SAAS,EAAE;UAChE;UACAJ,UAAU,CAACO,OAAO,GAAG/B,oBAAoB,CAAC2B,YAAY,CAAC,CAACC,SAAS,CAAChC,KAAK,IAAIiB,SAAS,CAAC;QACvF;MACF;IACF,CAAC,CAAC;EACJ;EAEA,oBACEZ,MAAA,CAAAH,OAAA,CAAAkC,aAAA;IAAMC,SAAS,EAAC,YAAY;IAACC,EAAE,EAAG,GAAIf,IAAI;EAAY,gBACpDlB,MAAA,CAAAH,OAAA,CAAAkC,aAAA;IAAMC,SAAS,EAAC;EAAS,GACrB,CAACT,UAAU,EAAEO,OAAO,iBACpB9B,MAAA,CAAAH,OAAA,CAAAkC,aAAA;IAAMC,SAAS,EAAC;EAAO,GAAGjC,oBAAoB,CAACU,OAAO,CAAC,CAAS,CACjE,eAEDT,MAAA,CAAAH,OAAA,CAAAkC,aAAA,CAAC9B,aAAA,CAAAiC,YAAY;IACXxB,MAAM,EAAGA,MAAQ;IACjBQ,IAAI,EAAGA,IAAM;IACbiB,MAAM,EAAGA,CAAC;MAAEL;IAAQ,CAAC,kBAAK9B,MAAA,CAAAH,OAAA,CAAAkC,aAAA;MAAMC,SAAS,EAAC;IAAO,GAAGF,OAAe;EAAG,CACvE,CACG,CACF,CAAC;AAEX,CAAC;AAACpC,OAAA,CAAAI,kBAAA,GAAAA,kBAAA;AAAA,IAAAsC,QAAA,GAAA1C,OAAA,CAAAG,OAAA,GAEaC,kBAAkB","ignoreList":[]}
@@ -299,6 +299,12 @@ Object.defineProperty(exports, "SimpleButton", {
299
299
  return _SimpleButton.SimpleButton;
300
300
  }
301
301
  });
302
+ Object.defineProperty(exports, "Skeleton", {
303
+ enumerable: true,
304
+ get: function () {
305
+ return _Skeleton.Skeleton;
306
+ }
307
+ });
302
308
  Object.defineProperty(exports, "Spinner", {
303
309
  enumerable: true,
304
310
  get: function () {
@@ -432,6 +438,7 @@ var _kitLogo = require("./design/logos/ventures/kit-logo");
432
438
  var _doshiiLogo = require("./design/logos/ventures/doshii-logo");
433
439
  var _truyuLogo = require("./design/logos/ventures/truyu-logo");
434
440
  var _SidePanel = require("./design/sidePanel/SidePanel");
441
+ var _Skeleton = require("./design/skeleton/Skeleton");
435
442
  var _Spinner = require("./design/spinner/Spinner");
436
443
  var _StatusIconButton = require("./design/statusIndicators/statusIconButton/StatusIconButton");
437
444
  var _StatusLight = require("./design/statusIndicators/statusLight/StatusLight");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["Object","defineProperty","exports","value","enumerable","get","_Accordion","Accordion","_PageBanner","Alert","_Chip","Badge","Banner","_SimpleButton","Button","_Card","Card","_InputCheckbox","InputCheckbox","CheckboxInput","Chip","_InputVariants","Combobox","_CopyText","CopyText","_creditSavvyLogo","CreditSavvyLogo","_DateInput","DateInput","_DevToolbar","DevToolbar","_Dialog","Dialog","_doshiiLogo","DoshiiLogo","_EllipsisTooltip","EllipsisTooltip","EmailInput","FileInput","_FormField","FormField","_GlobalDashboard","GlobalDashboard","_HeaderBar","HeaderBar","_homeInLogo","HomeInLogo","_HookFormWrapper","HookFormWrapper","_Icon","Icon","_InputDate","InputDate","_kitLogo","KitLogo","_Link","Link","_LoremIpsum","LoremIpsum","_MainHeader","MainHeader","_Menu","Menu","_NotificationIcon","NotificationIcon","NumberInput","PageBanner","_Paginator","Paginator","PasswordInput","PasswordInputSignup","PhoneInput","Pill","_PopupMenu","PopupMenu","_ReportFooter","ReportFooter","_RevealMore","RevealMore","SearchInput","_SearchPanelMenu","SearchPanelMenu","SelectDropdown","_SidePanel","SidePanel","SimpleButton","_Spinner","Spinner","_StatusIconButton","StatusIconButton","_StatusLight","StatusLight","_StatusLightsBar","StatusLightsBar","_StyledRadioGroup","StyledRadioGroup","_StyledRadioInput","StyledRadioInput","_StyledRadioLabel","StyledRadioLabel","_Tabs","Tabs","_TemplateDashboard","TemplateDashboard","_TemplateForm","TemplateForm","_TemplateLoading","TemplateLoading","_TemplatePage","TemplatePage","TextInput","Textarea","_ThemeLoader","ThemeLoader","_ThemeSwitch","ThemeSwitch","_Tooltip","Tooltip","_truyuLogo","TruyuLogo","UrlInput","_VentureLogo","VentureLogo","require"],"sources":["../../../src/components/index.ts"],"sourcesContent":["'use client';\n\n// UI components\nexport { Accordion } from './design/accordion/Accordion';\nexport { Chip, Pill, Badge } from './design/chip/Chip';\nexport { Dialog } from './design/dialog/Dialog';\nexport { HeaderBar } from './design/headerBar/HeaderBar';\nexport { Icon } from './design/icons/basicIcon/Icon';\nexport { NotificationIcon } from './design/icons/notificationIcon/NotificationIcon';\nexport { VentureLogo } from './design/logos/VentureLogo';\n\nexport { CreditSavvyLogo } from './design/logos/ventures/credit-savvy-logo';\nexport { HomeInLogo } from './design/logos/ventures/home-in-logo';\nexport { KitLogo } from './design/logos/ventures/kit-logo';\nexport { DoshiiLogo } from './design/logos/ventures/doshii-logo';\nexport { TruyuLogo } from './design/logos/ventures/truyu-logo';\n\nexport { SidePanel } from './design/sidePanel/SidePanel';\nexport { Spinner } from './design/spinner/Spinner';\nexport { StatusIconButton } from './design/statusIndicators/statusIconButton/StatusIconButton';\nexport { StatusLight } from './design/statusIndicators/statusLight/StatusLight';\nexport { StatusLightsBar } from './design/statusIndicators/statusLightsBar/StatusLightsBar';\nexport { Tabs } from './design/tabs/Tabs';\nexport { Tooltip } from './design/tooltip/Tooltip';\nexport { EllipsisTooltip } from './design/tooltip/ellipsisTooltip/EllipsisTooltip';\nexport { RevealMore } from './design/revealMore/RevealMore';\nexport { CopyText } from './design/copyText/CopyText';\nexport { Paginator } from './design/paginators/Paginator';\nexport { PageBanner, Banner, Alert } from './design/banners/pageBanner/PageBanner';\nexport type { PageBannerProps } from './design/banners/pageBanner/PageBanner';\n\n// Form components\nexport { SimpleButton, Button } from './form/buttons/SimpleButton';\nexport { FormField } from './form/formFields/formFieldWrapper/FormField';\nexport { InputCheckbox, CheckboxInput } from './form/formFields/subComponents/inputs/checkbox/InputCheckbox';\nexport { StyledRadioGroup } from './form/formFields/subComponents/inputs/radio/styled/StyledRadioGroup';\nexport { StyledRadioInput } from './form/formFields/subComponents/inputs/radio/styled/StyledRadioInput';\nexport { StyledRadioLabel } from './form/formFields/subComponents/inputs/radio/styled/StyledRadioLabel';\nexport { HookFormWrapper } from './form/hookFormWrapper/HookFormWrapper';\n\nexport {\n TextInput,\n EmailInput,\n FileInput,\n SearchInput,\n NumberInput,\n PhoneInput,\n UrlInput,\n PasswordInput,\n PasswordInputSignup,\n SelectDropdown,\n Combobox,\n Textarea\n} from './form/formFields/subComponents/InputVariants';\nexport type {\n FormComponentProps,\n DropdownSelectProps,\n PasswordInputProps\n} from './form/formFields/subComponents/InputVariants';\n\nexport {\n InputDate\n} from './form/formFields/subComponents/inputs/date/InputDate';\nexport { DateInput } from './form/formFields/subComponents/inputs/date/DateInput';\nexport type { StyledRadioGroupProps } from './form/formFields/subComponents/inputs/radio/radioInputsProps';\n\n// Layout\nexport { Card } from './design/card/Card';\nexport { ReportFooter } from './layout/footers/reports/ReportFooter';\nexport { MainHeader } from './layout/mainHeader/MainHeader';\n\nexport { ThemeLoader } from './design/themeLoader/ThemeLoader';\nexport type { ThemeStructure } from './design/themeLoader/ThemeLoader';\n\n// Testing\nexport { DevToolbar } from './testing/devToolbar/DevToolbar';\nexport { ThemeSwitch } from './testing/themeSwitch/ThemeSwitch';\nexport { LoremIpsum } from './testing/loremIpsum/LoremIpsum';\n\nexport { GlobalDashboard } from './layout/dashboard/layouts/globalDashboard/GlobalDashboard';\nexport { Menu } from './navigation/menu/Menu';\nexport { PopupMenu } from './navigation/popupMenu/PopupMenu';\nexport { SearchPanelMenu } from './navigation/searchPanelMenu/SearchPanelMenu';\nexport { Link } from './navigation/link/Link';\n\nexport type { MenuItemPropTypes, MenuButtonPropTypes, MenuItemIconStates } from './navigation/menu/Menu.interfaces';\n\n// Templates\nexport { TemplateForm } from './templates/templateForm/TemplateForm';\nexport type { TemplateFormProps } from './templates/templateForm/TemplateForm';\nexport { TemplateLoading } from './templates/templateLoading/TemplateLoading';\nexport type { TemplateLoadingProps } from './templates/templateLoading/TemplateLoading';\nexport { TemplateDashboard } from './templates/templateDashboard/TemplateDashboard';\nexport type { TemplateDashboardProps } from './templates/templateDashboard/TemplateDashboard';\nexport { TemplatePage } from './templates/templatePage/TemplatePage';\nexport type { TemplatePageProps } from './templates/templatePage/TemplatePage';\n\n// Aliases to match common libraries\nexport { SelectDropdown as Select } from './form/formFields/subComponents/InputVariants';\nexport { InputCheckbox as Checkbox } from './form/formFields/subComponents/inputs/checkbox/InputCheckbox';"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["Object","defineProperty","exports","value","enumerable","get","_Accordion","Accordion","_PageBanner","Alert","_Chip","Badge","Banner","_SimpleButton","Button","_Card","Card","_InputCheckbox","InputCheckbox","CheckboxInput","Chip","_InputVariants","Combobox","_CopyText","CopyText","_creditSavvyLogo","CreditSavvyLogo","_DateInput","DateInput","_DevToolbar","DevToolbar","_Dialog","Dialog","_doshiiLogo","DoshiiLogo","_EllipsisTooltip","EllipsisTooltip","EmailInput","FileInput","_FormField","FormField","_GlobalDashboard","GlobalDashboard","_HeaderBar","HeaderBar","_homeInLogo","HomeInLogo","_HookFormWrapper","HookFormWrapper","_Icon","Icon","_InputDate","InputDate","_kitLogo","KitLogo","_Link","Link","_LoremIpsum","LoremIpsum","_MainHeader","MainHeader","_Menu","Menu","_NotificationIcon","NotificationIcon","NumberInput","PageBanner","_Paginator","Paginator","PasswordInput","PasswordInputSignup","PhoneInput","Pill","_PopupMenu","PopupMenu","_ReportFooter","ReportFooter","_RevealMore","RevealMore","SearchInput","_SearchPanelMenu","SearchPanelMenu","SelectDropdown","_SidePanel","SidePanel","SimpleButton","_Skeleton","Skeleton","_Spinner","Spinner","_StatusIconButton","StatusIconButton","_StatusLight","StatusLight","_StatusLightsBar","StatusLightsBar","_StyledRadioGroup","StyledRadioGroup","_StyledRadioInput","StyledRadioInput","_StyledRadioLabel","StyledRadioLabel","_Tabs","Tabs","_TemplateDashboard","TemplateDashboard","_TemplateForm","TemplateForm","_TemplateLoading","TemplateLoading","_TemplatePage","TemplatePage","TextInput","Textarea","_ThemeLoader","ThemeLoader","_ThemeSwitch","ThemeSwitch","_Tooltip","Tooltip","_truyuLogo","TruyuLogo","UrlInput","_VentureLogo","VentureLogo","require"],"sources":["../../../src/components/index.ts"],"sourcesContent":["'use client';\n\n// UI components\nexport { Accordion } from './design/accordion/Accordion';\nexport { Chip, Pill, Badge } from './design/chip/Chip';\nexport { Dialog } from './design/dialog/Dialog';\nexport { HeaderBar } from './design/headerBar/HeaderBar';\nexport { Icon } from './design/icons/basicIcon/Icon';\nexport { NotificationIcon } from './design/icons/notificationIcon/NotificationIcon';\nexport { VentureLogo } from './design/logos/VentureLogo';\n\nexport { CreditSavvyLogo } from './design/logos/ventures/credit-savvy-logo';\nexport { HomeInLogo } from './design/logos/ventures/home-in-logo';\nexport { KitLogo } from './design/logos/ventures/kit-logo';\nexport { DoshiiLogo } from './design/logos/ventures/doshii-logo';\nexport { TruyuLogo } from './design/logos/ventures/truyu-logo';\n\nexport { SidePanel } from './design/sidePanel/SidePanel';\nexport { Skeleton } from './design/skeleton/Skeleton';\nexport type { SkeletonProps } from './design/skeleton/Skeleton';\nexport { Spinner } from './design/spinner/Spinner';\nexport { StatusIconButton } from './design/statusIndicators/statusIconButton/StatusIconButton';\nexport { StatusLight } from './design/statusIndicators/statusLight/StatusLight';\nexport { StatusLightsBar } from './design/statusIndicators/statusLightsBar/StatusLightsBar';\nexport { Tabs } from './design/tabs/Tabs';\nexport { Tooltip } from './design/tooltip/Tooltip';\nexport { EllipsisTooltip } from './design/tooltip/ellipsisTooltip/EllipsisTooltip';\nexport { RevealMore } from './design/revealMore/RevealMore';\nexport { CopyText } from './design/copyText/CopyText';\nexport { Paginator } from './design/paginators/Paginator';\nexport { PageBanner, Banner, Alert } from './design/banners/pageBanner/PageBanner';\nexport type { PageBannerProps } from './design/banners/pageBanner/PageBanner';\n\n// Form components\nexport { SimpleButton, Button } from './form/buttons/SimpleButton';\nexport { FormField } from './form/formFields/formFieldWrapper/FormField';\nexport { InputCheckbox, CheckboxInput } from './form/formFields/subComponents/inputs/checkbox/InputCheckbox';\nexport { StyledRadioGroup } from './form/formFields/subComponents/inputs/radio/styled/StyledRadioGroup';\nexport { StyledRadioInput } from './form/formFields/subComponents/inputs/radio/styled/StyledRadioInput';\nexport { StyledRadioLabel } from './form/formFields/subComponents/inputs/radio/styled/StyledRadioLabel';\nexport { HookFormWrapper } from './form/hookFormWrapper/HookFormWrapper';\n\nexport {\n TextInput,\n EmailInput,\n FileInput,\n SearchInput,\n NumberInput,\n PhoneInput,\n UrlInput,\n PasswordInput,\n PasswordInputSignup,\n SelectDropdown,\n Combobox,\n Textarea\n} from './form/formFields/subComponents/InputVariants';\nexport type {\n FormComponentProps,\n DropdownSelectProps,\n PasswordInputProps\n} from './form/formFields/subComponents/InputVariants';\n\nexport {\n InputDate\n} from './form/formFields/subComponents/inputs/date/InputDate';\nexport { DateInput } from './form/formFields/subComponents/inputs/date/DateInput';\nexport type { StyledRadioGroupProps } from './form/formFields/subComponents/inputs/radio/radioInputsProps';\n\n// Layout\nexport { Card } from './design/card/Card';\nexport { ReportFooter } from './layout/footers/reports/ReportFooter';\nexport { MainHeader } from './layout/mainHeader/MainHeader';\n\nexport { ThemeLoader } from './design/themeLoader/ThemeLoader';\nexport type { ThemeStructure } from './design/themeLoader/ThemeLoader';\n\n// Testing\nexport { DevToolbar } from './testing/devToolbar/DevToolbar';\nexport { ThemeSwitch } from './testing/themeSwitch/ThemeSwitch';\nexport { LoremIpsum } from './testing/loremIpsum/LoremIpsum';\n\nexport { GlobalDashboard } from './layout/dashboard/layouts/globalDashboard/GlobalDashboard';\nexport { Menu } from './navigation/menu/Menu';\nexport { PopupMenu } from './navigation/popupMenu/PopupMenu';\nexport { SearchPanelMenu } from './navigation/searchPanelMenu/SearchPanelMenu';\nexport { Link } from './navigation/link/Link';\n\nexport type { MenuItemPropTypes, MenuButtonPropTypes, MenuItemIconStates } from './navigation/menu/Menu.interfaces';\n\n// Templates\nexport { TemplateForm } from './templates/templateForm/TemplateForm';\nexport type { TemplateFormProps } from './templates/templateForm/TemplateForm';\nexport { TemplateLoading } from './templates/templateLoading/TemplateLoading';\nexport type { TemplateLoadingProps } from './templates/templateLoading/TemplateLoading';\nexport { TemplateDashboard } from './templates/templateDashboard/TemplateDashboard';\nexport type { TemplateDashboardProps } from './templates/templateDashboard/TemplateDashboard';\nexport { TemplatePage } from './templates/templatePage/TemplatePage';\nexport type { TemplatePageProps } from './templates/templatePage/TemplatePage';\n\n// Aliases to match common libraries\nexport { SelectDropdown as Select } from './form/formFields/subComponents/InputVariants';\nexport { InputCheckbox as Checkbox } from './form/formFields/subComponents/inputs/checkbox/InputCheckbox';"],"mappings":"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","ignoreList":[]}
package/dist/cjs/index.js CHANGED
@@ -19,6 +19,7 @@ var _exportNames = {
19
19
  DoshiiLogo: true,
20
20
  TruyuLogo: true,
21
21
  SidePanel: true,
22
+ Skeleton: true,
22
23
  Spinner: true,
23
24
  StatusIconButton: true,
24
25
  StatusLight: true,
@@ -591,6 +592,12 @@ Object.defineProperty(exports, "SimpleButton", {
591
592
  return _components.SimpleButton;
592
593
  }
593
594
  });
595
+ Object.defineProperty(exports, "Skeleton", {
596
+ enumerable: true,
597
+ get: function () {
598
+ return _components.Skeleton;
599
+ }
600
+ });
594
601
  Object.defineProperty(exports, "Spinner", {
595
602
  enumerable: true,
596
603
  get: function () {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["require","_components","_hooks","_interfaces","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_ageHelpers","_arrayHelpers","_dataHelpers","_dateHelpers","_formatters","_numberHelpers","_stringHelpers","_objectHelpers","_mocks","_constants","_contextProviders"],"sources":["../../src/index.ts"],"sourcesContent":["import './styles/index.scss';\nimport './icons/style.scss';\n\n// Components\nexport {\n Accordion,\n Chip,\n Pill,\n Badge,\n Dialog,\n HeaderBar,\n Icon,\n NotificationIcon,\n VentureLogo,\n CreditSavvyLogo,\n HomeInLogo,\n KitLogo,\n DoshiiLogo,\n TruyuLogo,\n SidePanel,\n Spinner,\n StatusIconButton,\n StatusLight,\n StatusLightsBar,\n Tabs,\n Tooltip,\n EllipsisTooltip,\n RevealMore,\n CopyText,\n Paginator,\n PageBanner,\n Banner,\n Alert,\n SimpleButton,\n Button,\n FormField,\n InputCheckbox,\n CheckboxInput,\n StyledRadioGroup,\n StyledRadioInput,\n StyledRadioLabel,\n HookFormWrapper,\n TextInput,\n EmailInput,\n FileInput,\n SearchInput,\n NumberInput,\n PhoneInput,\n UrlInput,\n PasswordInput,\n PasswordInputSignup,\n SelectDropdown,\n Select,\n Combobox,\n Textarea,\n InputDate,\n DateInput,\n Card,\n ReportFooter,\n MainHeader,\n ThemeLoader,\n DevToolbar,\n ThemeSwitch,\n LoremIpsum,\n GlobalDashboard,\n Menu,\n PopupMenu,\n SearchPanelMenu,\n Link,\n TemplateForm,\n TemplateLoading,\n TemplateDashboard,\n TemplatePage\n} from './components';\n\nexport type {\n PageBannerProps,\n FormComponentProps,\n DropdownSelectProps,\n PasswordInputProps,\n StyledRadioGroupProps,\n ThemeStructure,\n MenuItemPropTypes,\n MenuButtonPropTypes,\n MenuItemIconStates,\n TemplateFormProps,\n TemplateLoadingProps,\n TemplateDashboardProps,\n TemplatePageProps\n} from './components';\n\n// Hooks\nexport {\n useOnClickOutside,\n usePopupKeys,\n useOnEdgeProximityDetect,\n useFirstCapital,\n useTabbableInputGroup,\n useDialogOverlay,\n useEllipsisBookends,\n useFocusTrap,\n useInertAttribute\n} from './hooks';\n\n// Interfaces (types only - safe to keep export *)\nexport * from './interfaces';\n\n// Helpers\nexport {\n getMinAge,\n getMaxAge,\n getMinAndMaxAges,\n validateBirthdate,\n isDateEntryComplete,\n getAgeInWeeks,\n getAgeInYears\n} from './helpers/ageHelpers';\n\nexport {\n binaryFindInArray,\n addAndSortArray,\n moveItemInArrayMutate,\n moveItemInArrayCopy,\n getRandomItemFromArray,\n getItemIndexWithinArray,\n getRoundedMedian,\n getMostOccurringBoolean,\n cssClassesArrayToString\n} from './helpers/arrayHelpers';\n\nexport {\n transformPlacesData,\n extractNamePieces\n} from './helpers/dataHelpers';\nexport type { NamePieces } from './helpers/dataHelpers';\n\nexport {\n dateToShortIsoString,\n isValidDate,\n dateToShortReadableDate,\n dateToShortReadableMonth,\n timeStampToShortReadableDate,\n dateToReadableTime,\n dateToShortReadableDateTime,\n getLastDateOfMonth,\n daysSince\n} from './helpers/dateHelpers';\n\nexport {\n USER_CURRENCY,\n intlCurrencyFormatter,\n intlNumberFormatter,\n formatNumberForLocale,\n formatAsCurrencyForLocale,\n getNumberAbbreviation,\n formatRoundedNumberWithAbbreviation,\n formatNumberWithAbbreviation,\n formatNumberForChartAxis,\n formatAsSimpleCurrencyForChartAxis,\n formatAsInternationalCurrencyForChartAxis,\n formatAsCurrencyWithAbbreviation,\n formatFileSize\n} from './helpers/formatters';\n\nexport {\n getRandomNumberBelow,\n getRandomBetweenInclusive,\n getRandomBetweenExclusive,\n hashCode,\n roundToDecimal,\n formatNumberToMinDigits,\n formatDigitalTime\n} from './helpers/numberHelpers';\n\nexport {\n richTextParser,\n capitalize,\n capitalizeFirstLetter,\n lowerCaseFirstLetter,\n useAnInsteadOfA,\n splitCamelCase,\n pluralize,\n pluralizeIfNeeded,\n getInitialsOrAcronym\n} from './helpers/stringHelpers';\n\nexport {\n objectsAreTheSame,\n isAnObject,\n createCompareValueOverride,\n deepMergeObjects,\n overrideMergeObjects,\n makeInheritanceObject,\n updateNestedProperty,\n filterObject,\n getArrayOfObjectKeys,\n getArrayOfReadableObjectKeys,\n getBranchFromPath,\n deepRemoveProps\n} from './helpers/objectHelpers';\n\n// Mocks\nexport {\n UserMock,\n MenuMock,\n xGraphTopMenuMock,\n xGraphMainMenuMock,\n DashboardMenuMock,\n UserMenuMock\n} from './mocks';\n\n// Constants\nexport {\n CBA_ORG_STRUCTURE,\n CBA_LOGO,\n VENTURES,\n DEFAULT_PASSWORD_REGEX,\n DEFAULT_EMAIL_REGEX,\n DEFAULT_PHONE_REGEX,\n DEFAULT_NUMBER_REGEX,\n DEFAULT_URL_REGEX,\n DATA_CLASSIFICATIONS,\n BLACKLISTED_FILE_TYPES,\n DEFAULT_UPLOAD_FILE_TYPES,\n DEFAULT_UPLOAD_FILE_EXTENSIONS,\n LIBRARY_CDN_BASE_URL,\n LIBRARY_CDN_BASE_URL_PROD,\n LIBRARY_CDN_BUCKET_NAME,\n LIBRARY_CDN_BUCKET_FOLDER,\n LIBRARY_CDN_DEV_BASE_URL,\n LIBRARY_CDN_PROD_BASE_URL,\n LIBRARY_VERSION\n} from './constants';\n\nexport type {\n USER,\n GlobalUserRole,\n ScopedUserRole,\n UserAuthType,\n VentureSite,\n VentureSites,\n VentureDefinition,\n VentureDefinitions\n} from './constants';\n\n// Context Providers\nexport { UserContextProvider, AppContextProvider } from './contextProviders';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAAA,OAAA;AACAA,OAAA;AAGA,IAAAC,WAAA,GAAAD,OAAA;AAwFA,IAAAE,MAAA,GAAAF,OAAA;AAaA,IAAAG,WAAA,GAAAH,OAAA;AAAAI,MAAA,CAAAC,IAAA,CAAAF,WAAA,EAAAG,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAJ,WAAA,CAAAI,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAZ,WAAA,CAAAI,GAAA;IAAA;EAAA;AAAA;AAGA,IAAAS,WAAA,GAAAhB,OAAA;AAUA,IAAAiB,aAAA,GAAAjB,OAAA;AAYA,IAAAkB,YAAA,GAAAlB,OAAA;AAMA,IAAAmB,YAAA,GAAAnB,OAAA;AAYA,IAAAoB,WAAA,GAAApB,OAAA;AAgBA,IAAAqB,cAAA,GAAArB,OAAA;AAUA,IAAAsB,cAAA,GAAAtB,OAAA;AAYA,IAAAuB,cAAA,GAAAvB,OAAA;AAgBA,IAAAwB,MAAA,GAAAxB,OAAA;AAUA,IAAAyB,UAAA,GAAAzB,OAAA;AAkCA,IAAA0B,iBAAA,GAAA1B,OAAA","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["require","_components","_hooks","_interfaces","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_ageHelpers","_arrayHelpers","_dataHelpers","_dateHelpers","_formatters","_numberHelpers","_stringHelpers","_objectHelpers","_mocks","_constants","_contextProviders"],"sources":["../../src/index.ts"],"sourcesContent":["import './styles/index.scss';\nimport './icons/style.scss';\n\n// Components\nexport {\n Accordion,\n Chip,\n Pill,\n Badge,\n Dialog,\n HeaderBar,\n Icon,\n NotificationIcon,\n VentureLogo,\n CreditSavvyLogo,\n HomeInLogo,\n KitLogo,\n DoshiiLogo,\n TruyuLogo,\n SidePanel,\n Skeleton,\n Spinner,\n StatusIconButton,\n StatusLight,\n StatusLightsBar,\n Tabs,\n Tooltip,\n EllipsisTooltip,\n RevealMore,\n CopyText,\n Paginator,\n PageBanner,\n Banner,\n Alert,\n SimpleButton,\n Button,\n FormField,\n InputCheckbox,\n CheckboxInput,\n StyledRadioGroup,\n StyledRadioInput,\n StyledRadioLabel,\n HookFormWrapper,\n TextInput,\n EmailInput,\n FileInput,\n SearchInput,\n NumberInput,\n PhoneInput,\n UrlInput,\n PasswordInput,\n PasswordInputSignup,\n SelectDropdown,\n Select,\n Combobox,\n Textarea,\n InputDate,\n DateInput,\n Card,\n ReportFooter,\n MainHeader,\n ThemeLoader,\n DevToolbar,\n ThemeSwitch,\n LoremIpsum,\n GlobalDashboard,\n Menu,\n PopupMenu,\n SearchPanelMenu,\n Link,\n TemplateForm,\n TemplateLoading,\n TemplateDashboard,\n TemplatePage\n} from './components';\n\nexport type {\n PageBannerProps,\n FormComponentProps,\n DropdownSelectProps,\n PasswordInputProps,\n StyledRadioGroupProps,\n SkeletonProps,\n ThemeStructure,\n MenuItemPropTypes,\n MenuButtonPropTypes,\n MenuItemIconStates,\n TemplateFormProps,\n TemplateLoadingProps,\n TemplateDashboardProps,\n TemplatePageProps\n} from './components';\n\n// Hooks\nexport {\n useOnClickOutside,\n usePopupKeys,\n useOnEdgeProximityDetect,\n useFirstCapital,\n useTabbableInputGroup,\n useDialogOverlay,\n useEllipsisBookends,\n useFocusTrap,\n useInertAttribute\n} from './hooks';\n\n// Interfaces (types only - safe to keep export *)\nexport * from './interfaces';\n\n// Helpers\nexport {\n getMinAge,\n getMaxAge,\n getMinAndMaxAges,\n validateBirthdate,\n isDateEntryComplete,\n getAgeInWeeks,\n getAgeInYears\n} from './helpers/ageHelpers';\n\nexport {\n binaryFindInArray,\n addAndSortArray,\n moveItemInArrayMutate,\n moveItemInArrayCopy,\n getRandomItemFromArray,\n getItemIndexWithinArray,\n getRoundedMedian,\n getMostOccurringBoolean,\n cssClassesArrayToString\n} from './helpers/arrayHelpers';\n\nexport {\n transformPlacesData,\n extractNamePieces\n} from './helpers/dataHelpers';\nexport type { NamePieces } from './helpers/dataHelpers';\n\nexport {\n dateToShortIsoString,\n isValidDate,\n dateToShortReadableDate,\n dateToShortReadableMonth,\n timeStampToShortReadableDate,\n dateToReadableTime,\n dateToShortReadableDateTime,\n getLastDateOfMonth,\n daysSince\n} from './helpers/dateHelpers';\n\nexport {\n USER_CURRENCY,\n intlCurrencyFormatter,\n intlNumberFormatter,\n formatNumberForLocale,\n formatAsCurrencyForLocale,\n getNumberAbbreviation,\n formatRoundedNumberWithAbbreviation,\n formatNumberWithAbbreviation,\n formatNumberForChartAxis,\n formatAsSimpleCurrencyForChartAxis,\n formatAsInternationalCurrencyForChartAxis,\n formatAsCurrencyWithAbbreviation,\n formatFileSize\n} from './helpers/formatters';\n\nexport {\n getRandomNumberBelow,\n getRandomBetweenInclusive,\n getRandomBetweenExclusive,\n hashCode,\n roundToDecimal,\n formatNumberToMinDigits,\n formatDigitalTime\n} from './helpers/numberHelpers';\n\nexport {\n richTextParser,\n capitalize,\n capitalizeFirstLetter,\n lowerCaseFirstLetter,\n useAnInsteadOfA,\n splitCamelCase,\n pluralize,\n pluralizeIfNeeded,\n getInitialsOrAcronym\n} from './helpers/stringHelpers';\n\nexport {\n objectsAreTheSame,\n isAnObject,\n createCompareValueOverride,\n deepMergeObjects,\n overrideMergeObjects,\n makeInheritanceObject,\n updateNestedProperty,\n filterObject,\n getArrayOfObjectKeys,\n getArrayOfReadableObjectKeys,\n getBranchFromPath,\n deepRemoveProps\n} from './helpers/objectHelpers';\n\n// Mocks\nexport {\n UserMock,\n MenuMock,\n xGraphTopMenuMock,\n xGraphMainMenuMock,\n DashboardMenuMock,\n UserMenuMock\n} from './mocks';\n\n// Constants\nexport {\n CBA_ORG_STRUCTURE,\n CBA_LOGO,\n VENTURES,\n DEFAULT_PASSWORD_REGEX,\n DEFAULT_EMAIL_REGEX,\n DEFAULT_PHONE_REGEX,\n DEFAULT_NUMBER_REGEX,\n DEFAULT_URL_REGEX,\n DATA_CLASSIFICATIONS,\n BLACKLISTED_FILE_TYPES,\n DEFAULT_UPLOAD_FILE_TYPES,\n DEFAULT_UPLOAD_FILE_EXTENSIONS,\n LIBRARY_CDN_BASE_URL,\n LIBRARY_CDN_BASE_URL_PROD,\n LIBRARY_CDN_BUCKET_NAME,\n LIBRARY_CDN_BUCKET_FOLDER,\n LIBRARY_CDN_DEV_BASE_URL,\n LIBRARY_CDN_PROD_BASE_URL,\n LIBRARY_VERSION\n} from './constants';\n\nexport type {\n USER,\n GlobalUserRole,\n ScopedUserRole,\n UserAuthType,\n VentureSite,\n VentureSites,\n VentureDefinition,\n VentureDefinitions\n} from './constants';\n\n// Context Providers\nexport { UserContextProvider, AppContextProvider } from './contextProviders';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAAA,OAAA;AACAA,OAAA;AAGA,IAAAC,WAAA,GAAAD,OAAA;AA0FA,IAAAE,MAAA,GAAAF,OAAA;AAaA,IAAAG,WAAA,GAAAH,OAAA;AAAAI,MAAA,CAAAC,IAAA,CAAAF,WAAA,EAAAG,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAJ,WAAA,CAAAI,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAZ,WAAA,CAAAI,GAAA;IAAA;EAAA;AAAA;AAGA,IAAAS,WAAA,GAAAhB,OAAA;AAUA,IAAAiB,aAAA,GAAAjB,OAAA;AAYA,IAAAkB,YAAA,GAAAlB,OAAA;AAMA,IAAAmB,YAAA,GAAAnB,OAAA;AAYA,IAAAoB,WAAA,GAAApB,OAAA;AAgBA,IAAAqB,cAAA,GAAArB,OAAA;AAUA,IAAAsB,cAAA,GAAAtB,OAAA;AAYA,IAAAuB,cAAA,GAAAvB,OAAA;AAgBA,IAAAwB,MAAA,GAAAxB,OAAA;AAUA,IAAAyB,UAAA,GAAAzB,OAAA;AAkCA,IAAA0B,iBAAA,GAAA1B,OAAA","ignoreList":[]}
@@ -137,7 +137,7 @@
137
137
  "files": [
138
138
  "dist"
139
139
  ],
140
- "version": "3.13.4",
140
+ "version": "3.14.0",
141
141
  "packageManager": "pnpm@10.11.0",
142
142
  "repository": {
143
143
  "type": "git",
@@ -254,6 +254,17 @@
254
254
  --notificationIconFg: #fff;
255
255
  --notificationIconBorder: 4px solid #c00;
256
256
  --notificationIconBoxShadow: none;
257
+ --skeletonBg: #eef2f4;
258
+ --skeletonOpaqueBg: #d3dee4;
259
+ --skeletonHighlight: #f6f8fa;
260
+ --skeletonBorderRadius: 3px;
261
+ --skeletonRoundedBorderRadius: 8px;
262
+ --skeletonLineHeight: 1em;
263
+ --skeletonLineGap: 8px;
264
+ --skeletonBlockHeight: 120px;
265
+ --skeletonCircleSize: 40px;
266
+ --skeletonLastLineWidth: 60%;
267
+ --skeletonAnimationDuration: 1.6s;
257
268
  }
258
269
 
259
270
  :root {
@@ -597,6 +608,9 @@
597
608
  --sidePanelCloseButtonShadow: 0 0 5px 0 #110d0b;
598
609
  --sidePanelCloseIconColor: #dbd7d5;
599
610
  --sidePanelFg: #dbd7d5;
611
+ --skeletonBg: #1a1410;
612
+ --skeletonHighlight: #3d2f26;
613
+ --skeletonOpaqueBg: #2c211b;
600
614
  --statusAlertColor: #000;
601
615
  --statusDefCon3Bg: radial-gradient(circle at 60% 40%, #003, #000, #333); /* gradient stops inverted */
602
616
  --statusDefCon3Color: #003;
@@ -1914,6 +1928,31 @@ form select:placeholder-shown {
1914
1928
  font-weight: 200;
1915
1929
  font-family: var(--bodyFont);
1916
1930
  }
1931
+ form .textareaFieldContainer {
1932
+ display: flex;
1933
+ flex-direction: column;
1934
+ row-gap: 5px;
1935
+ align-items: stretch;
1936
+ justify-content: flex-start;
1937
+ width: 100%;
1938
+ }
1939
+ form .textareaFooter {
1940
+ min-height: 1.5em;
1941
+ }
1942
+ form .textarea_Field.stacked label .textareaFooter .validation {
1943
+ position: static;
1944
+ height: auto;
1945
+ }
1946
+ form .textarea_Field.withValidation label {
1947
+ padding-bottom: 0;
1948
+ }
1949
+ form .textareaCharacterCount {
1950
+ line-height: 1.5;
1951
+ color: var(--inputLabelColor);
1952
+ }
1953
+ form .textareaCharacterCountExceeded {
1954
+ color: var(--inputErrorColor);
1955
+ }
1917
1956
  form input[type=number] {
1918
1957
  padding-right: 0;
1919
1958
  }
@@ -1262,6 +1262,31 @@ form select:placeholder-shown {
1262
1262
  font-weight: 200;
1263
1263
  font-family: var(--bodyFont);
1264
1264
  }
1265
+ form .textareaFieldContainer {
1266
+ display: flex;
1267
+ flex-direction: column;
1268
+ row-gap: 5px;
1269
+ align-items: stretch;
1270
+ justify-content: flex-start;
1271
+ width: 100%;
1272
+ }
1273
+ form .textareaFooter {
1274
+ min-height: 1.5em;
1275
+ }
1276
+ form .textarea_Field.stacked label .textareaFooter .validation {
1277
+ position: static;
1278
+ height: auto;
1279
+ }
1280
+ form .textarea_Field.withValidation label {
1281
+ padding-bottom: 0;
1282
+ }
1283
+ form .textareaCharacterCount {
1284
+ line-height: 1.5;
1285
+ color: var(--inputLabelColor);
1286
+ }
1287
+ form .textareaCharacterCountExceeded {
1288
+ color: var(--inputErrorColor);
1289
+ }
1265
1290
  form input[type=number] {
1266
1291
  padding-right: 0;
1267
1292
  }