@powerhousedao/document-engineering 1.20.0 → 1.21.1

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 (41) hide show
  1. package/dist/src/scalars/components/email-field/email-field.d.ts +3 -2
  2. package/dist/src/scalars/components/email-field/email-field.d.ts.map +1 -1
  3. package/dist/src/scalars/components/email-field/email-field.js +20 -17
  4. package/dist/src/scalars/components/email-field/email-field.js.map +1 -1
  5. package/dist/src/scalars/components/form/form.d.ts.map +1 -1
  6. package/dist/src/scalars/components/form/form.js +7 -8
  7. package/dist/src/scalars/components/form/form.js.map +1 -1
  8. package/dist/src/scalars/components/index.d.ts +1 -0
  9. package/dist/src/scalars/components/index.d.ts.map +1 -1
  10. package/dist/src/scalars/components/index.js +1 -0
  11. package/dist/src/scalars/components/index.js.map +1 -1
  12. package/dist/src/scalars/components/password-field/password-field.d.ts +4 -2
  13. package/dist/src/scalars/components/password-field/password-field.d.ts.map +1 -1
  14. package/dist/src/scalars/components/password-field/password-field.js +27 -5
  15. package/dist/src/scalars/components/password-field/password-field.js.map +1 -1
  16. package/dist/src/scalars/components/password-field/types.d.ts +1 -0
  17. package/dist/src/scalars/components/password-field/types.d.ts.map +1 -1
  18. package/dist/src/ui/components/data-entry/email-input/email-input.d.ts.map +1 -1
  19. package/dist/src/ui/components/data-entry/email-input/email-input.js +1 -1
  20. package/dist/src/ui/components/data-entry/email-input/email-input.js.map +1 -1
  21. package/dist/src/ui/components/data-entry/password-input/password-input-diff.d.ts +10 -0
  22. package/dist/src/ui/components/data-entry/password-input/password-input-diff.d.ts.map +1 -0
  23. package/dist/src/ui/components/data-entry/password-input/password-input-diff.js +8 -0
  24. package/dist/src/ui/components/data-entry/password-input/password-input-diff.js.map +1 -0
  25. package/dist/src/ui/components/data-entry/password-input/password-input.d.ts.map +1 -1
  26. package/dist/src/ui/components/data-entry/password-input/password-input.js +36 -11
  27. package/dist/src/ui/components/data-entry/password-input/password-input.js.map +1 -1
  28. package/dist/src/ui/components/data-entry/password-input/password-strength.js +2 -2
  29. package/dist/src/ui/components/data-entry/password-input/password-strength.js.map +1 -1
  30. package/dist/src/ui/components/data-entry/password-input/types.d.ts +2 -7
  31. package/dist/src/ui/components/data-entry/password-input/types.d.ts.map +1 -1
  32. package/dist/src/ui/components/data-entry/password-input/utils.d.ts +1 -0
  33. package/dist/src/ui/components/data-entry/password-input/utils.d.ts.map +1 -1
  34. package/dist/src/ui/components/data-entry/password-input/utils.js +25 -3
  35. package/dist/src/ui/components/data-entry/password-input/utils.js.map +1 -1
  36. package/dist/src/ui/components/index.d.ts +1 -0
  37. package/dist/src/ui/components/index.d.ts.map +1 -1
  38. package/dist/src/ui/components/index.js +1 -0
  39. package/dist/src/ui/components/index.js.map +1 -1
  40. package/dist/tsconfig.lib.tsbuildinfo +1 -1
  41. package/package.json +1 -1
@@ -1,3 +1,4 @@
1
+ import React from 'react';
1
2
  import type { EmailInputProps } from '../../../ui/components/data-entry/email-input/types.js';
2
3
  import type { FieldErrorHandling } from '../types.js';
3
4
  export type EmailFieldProps = Omit<EmailInputProps, 'maxLength' | 'minLength'> & FieldErrorHandling & {
@@ -6,11 +7,11 @@ export type EmailFieldProps = Omit<EmailInputProps, 'maxLength' | 'minLength'> &
6
7
  maxLength?: number;
7
8
  minLength?: number;
8
9
  };
9
- declare const EmailField: import("react").ForwardRefExoticComponent<Omit<EmailInputProps, "maxLength" | "minLength"> & FieldErrorHandling & {
10
+ declare const EmailField: React.ForwardRefExoticComponent<Omit<EmailInputProps, "maxLength" | "minLength"> & FieldErrorHandling & {
10
11
  allowedDomains?: string[];
11
12
  matchFieldName?: string;
12
13
  maxLength?: number;
13
14
  minLength?: number;
14
- } & import("react").RefAttributes<unknown>>;
15
+ } & React.RefAttributes<unknown>>;
15
16
  export { EmailField };
16
17
  //# sourceMappingURL=email-field.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"email-field.d.ts","sourceRoot":"","sources":["../../../../../src/scalars/components/email-field/email-field.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wDAAwD,CAAA;AAG7F,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAGrD,MAAM,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,EAAE,WAAW,GAAG,WAAW,CAAC,GAC5E,kBAAkB,GAAG;IACnB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;IACzB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAEH,QAAA,MAAM,UAAU;qBANK,MAAM,EAAE;qBACR,MAAM;gBACX,MAAM;gBACN,MAAM;2CAuCpB,CAAA;AAIF,OAAO,EAAE,UAAU,EAAE,CAAA"}
1
+ {"version":3,"file":"email-field.d.ts","sourceRoot":"","sources":["../../../../../src/scalars/components/email-field/email-field.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wDAAwD,CAAA;AAE7F,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAGrD,MAAM,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,EAAE,WAAW,GAAG,WAAW,CAAC,GAC5E,kBAAkB,GAAG;IACnB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;IACzB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AASH,QAAA,MAAM,UAAU;qBAbK,MAAM,EAAE;qBACR,MAAM;gBACX,MAAM;gBACN,MAAM;iCAyCpB,CAAA;AAIF,OAAO,EAAE,UAAU,EAAE,CAAA"}
@@ -1,8 +1,14 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import React from 'react';
1
3
  import { EmailInput } from '../../../ui/components/data-entry/email-input/index.js';
2
- import { validateFieldMatch } from '../../lib/validators/validateFieldMatch.js';
3
4
  import { withFieldValidation } from '../fragments/with-field-validation/index.js';
4
- import { escapeIdForSelector, validateEmailDomain, validateEmailFormat } from './utils.js';
5
- const EmailField = withFieldValidation(EmailInput, {
5
+ import { validateEmailDomain, validateEmailFormat } from './utils.js';
6
+ const EmailInputWrapper = React.forwardRef((props, ref) => {
7
+ const { allowedDomains: _1, matchFieldName, ...rest } = props;
8
+ return _jsx(EmailInput, { ref: ref, ...rest, ...(!!matchFieldName && { 'data-exclude': 'true' }) });
9
+ });
10
+ EmailInputWrapper.displayName = 'EmailInputWrapper';
11
+ const EmailField = withFieldValidation(EmailInputWrapper, {
6
12
  validations: {
7
13
  _validEmail: () => (value) => {
8
14
  if (!value)
@@ -17,20 +23,17 @@ const EmailField = withFieldValidation(EmailInput, {
17
23
  _matchEmail: ({ matchFieldName }) => (value, formState) => {
18
24
  if (!matchFieldName)
19
25
  return true;
20
- const currentField = document.querySelector(`input[name="${matchFieldName}"]`);
21
- const form = currentField?.closest('form');
22
- const formId = form?.getAttribute('id');
23
- const matchFieldSelector = formId
24
- ? `#${escapeIdForSelector(formId)} input[name="${matchFieldName}"]`
25
- : `input[name="${matchFieldName}"]`;
26
- const matchFieldElement = document.querySelector(matchFieldSelector);
27
- if (!matchFieldElement)
28
- return true;
29
- const matchFieldLabel = matchFieldElement.getAttribute('data-label') ?? '';
30
- return validateFieldMatch(value, formState, {
31
- matchFieldName,
32
- errorMessage: `Email must match the ${matchFieldLabel} field`,
33
- });
26
+ if (value !== formState[matchFieldName]) {
27
+ const matchFieldElements = document.querySelectorAll(`input[name="${matchFieldName}"]`);
28
+ if (matchFieldElements.length === 1) {
29
+ const matchFieldLabel = matchFieldElements[0].getAttribute('data-label');
30
+ if (matchFieldLabel) {
31
+ return `Email must match the "${matchFieldLabel}" field`;
32
+ }
33
+ }
34
+ return 'Email does not match';
35
+ }
36
+ return true;
34
37
  },
35
38
  },
36
39
  });
@@ -1 +1 @@
1
- {"version":3,"file":"email-field.js","sourceRoot":"","sources":["../../../../../src/scalars/components/email-field/email-field.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,wDAAwD,CAAA;AAEnF,OAAO,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAA;AAC/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAA;AAEjF,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAU1F,MAAM,UAAU,GAAG,mBAAmB,CAAkB,UAAU,EAAE;IAClE,WAAW,EAAE;QACX,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC,KAAa,EAAE,EAAE;YACnC,IAAI,CAAC,KAAK;gBAAE,OAAO,IAAI,CAAA;YACvB,OAAO,mBAAmB,CAAC,KAAK,CAAC,CAAA;QACnC,CAAC;QACD,eAAe,EACb,CAAC,EAAE,cAAc,GAAG,EAAE,EAAE,EAAE,EAAE,CAC5B,CAAC,KAAa,EAAE,EAAE;YAChB,IAAI,CAAC,KAAK;gBAAE,OAAO,IAAI,CAAA;YACvB,OAAO,mBAAmB,CAAC,KAAK,EAAE,EAAE,cAAc,EAAE,CAAC,CAAA;QACvD,CAAC;QACH,WAAW,EACT,CAAC,EAAE,cAAc,EAAE,EAAE,EAAE,CACvB,CAAC,KAAa,EAAE,SAAkC,EAAE,EAAE;YACpD,IAAI,CAAC,cAAc;gBAAE,OAAO,IAAI,CAAA;YAChC,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,eAAe,cAAc,IAAI,CAAC,CAAA;YAC9E,MAAM,IAAI,GAAG,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;YAC1C,MAAM,MAAM,GAAG,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,CAAA;YAEvC,MAAM,kBAAkB,GAAG,MAAM;gBAC/B,CAAC,CAAC,IAAI,mBAAmB,CAAC,MAAM,CAAC,gBAAgB,cAAc,IAAI;gBACnE,CAAC,CAAC,eAAe,cAAc,IAAI,CAAA;YAErC,MAAM,iBAAiB,GAAG,QAAQ,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAA;YAEpE,IAAI,CAAC,iBAAiB;gBAAE,OAAO,IAAI,CAAA;YAEnC,MAAM,eAAe,GAAG,iBAAiB,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,EAAE,CAAA;YAE1E,OAAO,kBAAkB,CAAC,KAAK,EAAE,SAAS,EAAE;gBAC1C,cAAc;gBACd,YAAY,EAAE,wBAAwB,eAAe,QAAQ;aAC9D,CAAC,CAAA;QACJ,CAAC;KACJ;CACF,CAAC,CAAA;AAEF,UAAU,CAAC,WAAW,GAAG,YAAY,CAAA;AAErC,OAAO,EAAE,UAAU,EAAE,CAAA"}
1
+ {"version":3,"file":"email-field.js","sourceRoot":"","sources":["../../../../../src/scalars/components/email-field/email-field.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,wDAAwD,CAAA;AAEnF,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAA;AAEjF,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAUrE,MAAM,iBAAiB,GAAG,KAAK,CAAC,UAAU,CAAoC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;IAC3F,MAAM,EAAE,cAAc,EAAE,EAAE,EAAE,cAAc,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAA;IAE7D,OAAO,KAAC,UAAU,IAAC,GAAG,EAAE,GAAG,KAAM,IAAI,KAAM,CAAC,CAAC,CAAC,cAAc,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,GAAI,CAAA;AACjG,CAAC,CAAC,CAAA;AACF,iBAAiB,CAAC,WAAW,GAAG,mBAAmB,CAAA;AAEnD,MAAM,UAAU,GAAG,mBAAmB,CAAkB,iBAAiB,EAAE;IACzE,WAAW,EAAE;QACX,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC,KAAa,EAAE,EAAE;YACnC,IAAI,CAAC,KAAK;gBAAE,OAAO,IAAI,CAAA;YACvB,OAAO,mBAAmB,CAAC,KAAK,CAAC,CAAA;QACnC,CAAC;QACD,eAAe,EACb,CAAC,EAAE,cAAc,GAAG,EAAE,EAAE,EAAE,EAAE,CAC5B,CAAC,KAAa,EAAE,EAAE;YAChB,IAAI,CAAC,KAAK;gBAAE,OAAO,IAAI,CAAA;YACvB,OAAO,mBAAmB,CAAC,KAAK,EAAE,EAAE,cAAc,EAAE,CAAC,CAAA;QACvD,CAAC;QACH,WAAW,EACT,CAAC,EAAE,cAAc,EAAE,EAAE,EAAE,CACvB,CAAC,KAAa,EAAE,SAAkC,EAAE,EAAE;YACpD,IAAI,CAAC,cAAc;gBAAE,OAAO,IAAI,CAAA;YAEhC,IAAI,KAAK,KAAK,SAAS,CAAC,cAAc,CAAC,EAAE,CAAC;gBACxC,MAAM,kBAAkB,GAAG,QAAQ,CAAC,gBAAgB,CAAC,eAAe,cAAc,IAAI,CAAC,CAAA;gBACvF,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACpC,MAAM,eAAe,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,YAAY,CAAC,CAAA;oBACxE,IAAI,eAAe,EAAE,CAAC;wBACpB,OAAO,yBAAyB,eAAe,SAAS,CAAA;oBAC1D,CAAC;gBACH,CAAC;gBACD,OAAO,sBAAsB,CAAA;YAC/B,CAAC;YAED,OAAO,IAAI,CAAA;QACb,CAAC;KACJ;CACF,CAAC,CAAA;AAEF,UAAU,CAAC,WAAW,GAAG,YAAY,CAAA;AAErC,OAAO,EAAE,UAAU,EAAE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"form.d.ts","sourceRoot":"","sources":["../../../../../src/scalars/components/form/form.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAyB,KAAK,YAAY,EAAE,KAAK,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAI9F,KAAK,WAAW,GAAG,aAAa,GAAG;IACjC;;OAEG;IACH,aAAa,EAAE,MAAM,IAAI,CAAA;IAEzB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAA;CACf,CAAA;AACD,UAAU,SAAS;IACjB;;;;OAIG;IACH,QAAQ,EAAE,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,OAAO,EAAE,WAAW,KAAK,KAAK,CAAC,SAAS,CAAC,CAAA;IAEvE;;;;;OAKG;IACH,QAAQ,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAE7C;;;;OAIG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAA;IAEjC;;;;;;;OAOG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAE3B;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAEnC;;;;;OAKG;IACH,0BAA0B,CAAC,EAAE,OAAO,CAAA;IAEpC;;;;OAIG;IACH,cAAc,CAAC,EAAE,YAAY,CAAA;IAE7B;;;;;;;;;;OAUG;IACH,sBAAsB,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAEvF;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,QAAA,MAAM,IAAI,qGAkIT,CAAA;AAID,OAAO,EAAE,IAAI,EAAE,CAAA"}
1
+ {"version":3,"file":"form.d.ts","sourceRoot":"","sources":["../../../../../src/scalars/components/form/form.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAyB,KAAK,YAAY,EAAE,KAAK,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAI9F,KAAK,WAAW,GAAG,aAAa,GAAG;IACjC;;OAEG;IACH,aAAa,EAAE,MAAM,IAAI,CAAA;IAEzB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAA;CACf,CAAA;AACD,UAAU,SAAS;IACjB;;;;OAIG;IACH,QAAQ,EAAE,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,OAAO,EAAE,WAAW,KAAK,KAAK,CAAC,SAAS,CAAC,CAAA;IAEvE;;;;;OAKG;IACH,QAAQ,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAE7C;;;;OAIG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAA;IAEjC;;;;;;;OAOG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAE3B;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAEnC;;;;;OAKG;IACH,0BAA0B,CAAC,EAAE,OAAO,CAAA;IAEpC;;;;OAIG;IACH,cAAc,CAAC,EAAE,YAAY,CAAA;IAE7B;;;;;;;;;;OAUG;IACH,sBAAsB,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAEvF;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,QAAA,MAAM,IAAI,qGAmIT,CAAA;AAID,OAAO,EAAE,IAAI,EAAE,CAAA"}
@@ -71,20 +71,19 @@ const Form = forwardRef(({ children, onSubmit, resetOnSuccessfulSubmit = false,
71
71
  // at this point all the fields that need to be submitted are in the data
72
72
  // we just need to make sure that "empty" values are submitted as `null`
73
73
  data = Object.fromEntries(Object.entries(data).map(([fieldName, value]) => [fieldName, isEmpty(value) ? null : value]));
74
- // cast data if needed to prevent submitting wrong data type
74
+ // exclude or cast data if needed to prevent submitting wrong data type
75
75
  const form = document.getElementById(formId);
76
76
  Object.keys(data).map((key) => {
77
77
  try {
78
78
  const value = data[key];
79
+ const field = form?.querySelector(`[name="${key}"]`);
80
+ const fieldToExclude = field?.getAttribute('data-exclude');
81
+ if (fieldToExclude === 'true') {
82
+ delete data[key];
83
+ return;
84
+ }
79
85
  if (value !== null) {
80
- const field = form?.querySelector(`[name="${key}"]`);
81
86
  const dataCast = field?.getAttribute('data-cast');
82
- const fieldToExclude = field?.getAttribute('data-exclude');
83
- const matchFieldName = field?.getAttribute('matchFieldName');
84
- if (matchFieldName && fieldToExclude === 'true') {
85
- delete data[key];
86
- return;
87
- }
88
87
  if (dataCast) {
89
88
  data[key] = castValue(value, dataCast);
90
89
  }
@@ -1 +1 @@
1
- {"version":3,"file":"form.js","sourceRoot":"","sources":["../../../../../src/scalars/components/form/form.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"form.js","sourceRoot":"","sources":["../../../../../src/scalars/components/form/form.tsx"],"names":[],"mappings":"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"}
@@ -11,6 +11,7 @@ export * from './fragments/index.js';
11
11
  export * from './id-field/index.js';
12
12
  export * from './number-field/index.js';
13
13
  export * from './oid-field/index.js';
14
+ export * from './password-field/index.js';
14
15
  export * from './phid-field/index.js';
15
16
  export * from './string-field/index.js';
16
17
  export * from './time-picker-field/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/scalars/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AACpC,cAAc,yBAAyB,CAAA;AACvC,cAAc,0BAA0B,CAAA;AACxC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,gCAAgC,CAAA;AAC9C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,mCAAmC,CAAA;AACjD,cAAc,uBAAuB,CAAA;AACrC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,sBAAsB,CAAA;AACpC,cAAc,qBAAqB,CAAA;AACnC,cAAc,yBAAyB,CAAA;AACvC,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA;AACrC,cAAc,yBAAyB,CAAA;AACvC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,YAAY,CAAA;AAC1B,cAAc,sBAAsB,CAAA;AACpC,cAAc,wBAAwB,CAAA;AAGtC,OAAO;AACL;;;GAGG;AACH,QAAQ;AACR;;;GAGG;AACH,eAAe;AACf;;;GAGG;AACH,YAAY;AACZ;;;GAGG;AACH,aAAa;AACb;;;GAGG;AACH,gBAAgB;AAChB;;;GAGG;AACH,eAAe,GAChB,MAAM,uCAAuC,CAAA;AAE9C,OAAO;AACL;;;GAGG;AACH,OAAO;AACP;;;GAGG;AACH,eAAe;AACf;;;GAGG;AACH,UAAU;AACV;;;GAGG;AACH,KAAK,aAAa;AAClB;;;GAGG;AACH,KAAK,UAAU;AACf;;;GAGG;AACH,KAAK,WAAW;AAChB;;;GAGG;AACH,KAAK,WAAW;AAChB;;;GAGG;AACH,KAAK,YAAY,GAClB,MAAM,sCAAsC,CAAA;AAG7C,OAAO;AACL;;;GAGG;AACH,KAAK;AACL;;;GAGG;AACH,KAAK,UAAU,GAChB,MAAM,8BAA8B,CAAA;AAErC,OAAO;AACL;;GAEG;AACH,aAAa,GACd,MAAM,qCAAqC,CAAA;AAE5C,OAAO;AACL;;GAEG;AACH,WAAW,GACZ,MAAM,mCAAmC,CAAA;AAE1C,OAAO;AACL;;GAEG;AACH,SAAS,GACV,MAAM,iCAAiC,CAAA;AAExC,OAAO;AACL;;GAEG;AACH,aAAa,GACd,MAAM,qCAAqC,CAAA;AAE5C,OAAO;AACL;;GAEG;AACH,WAAW,GACZ,MAAM,mCAAmC,CAAA;AAE1C,OAAO;AACL;;GAEG;AACH,eAAe,GAChB,MAAM,wCAAwC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/scalars/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AACpC,cAAc,yBAAyB,CAAA;AACvC,cAAc,0BAA0B,CAAA;AACxC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,gCAAgC,CAAA;AAC9C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,mCAAmC,CAAA;AACjD,cAAc,uBAAuB,CAAA;AACrC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,sBAAsB,CAAA;AACpC,cAAc,qBAAqB,CAAA;AACnC,cAAc,yBAAyB,CAAA;AACvC,cAAc,sBAAsB,CAAA;AACpC,cAAc,2BAA2B,CAAA;AACzC,cAAc,uBAAuB,CAAA;AACrC,cAAc,yBAAyB,CAAA;AACvC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,YAAY,CAAA;AAC1B,cAAc,sBAAsB,CAAA;AACpC,cAAc,wBAAwB,CAAA;AAGtC,OAAO;AACL;;;GAGG;AACH,QAAQ;AACR;;;GAGG;AACH,eAAe;AACf;;;GAGG;AACH,YAAY;AACZ;;;GAGG;AACH,aAAa;AACb;;;GAGG;AACH,gBAAgB;AAChB;;;GAGG;AACH,eAAe,GAChB,MAAM,uCAAuC,CAAA;AAE9C,OAAO;AACL;;;GAGG;AACH,OAAO;AACP;;;GAGG;AACH,eAAe;AACf;;;GAGG;AACH,UAAU;AACV;;;GAGG;AACH,KAAK,aAAa;AAClB;;;GAGG;AACH,KAAK,UAAU;AACf;;;GAGG;AACH,KAAK,WAAW;AAChB;;;GAGG;AACH,KAAK,WAAW;AAChB;;;GAGG;AACH,KAAK,YAAY,GAClB,MAAM,sCAAsC,CAAA;AAG7C,OAAO;AACL;;;GAGG;AACH,KAAK;AACL;;;GAGG;AACH,KAAK,UAAU,GAChB,MAAM,8BAA8B,CAAA;AAErC,OAAO;AACL;;GAEG;AACH,aAAa,GACd,MAAM,qCAAqC,CAAA;AAE5C,OAAO;AACL;;GAEG;AACH,WAAW,GACZ,MAAM,mCAAmC,CAAA;AAE1C,OAAO;AACL;;GAEG;AACH,SAAS,GACV,MAAM,iCAAiC,CAAA;AAExC,OAAO;AACL;;GAEG;AACH,aAAa,GACd,MAAM,qCAAqC,CAAA;AAE5C,OAAO;AACL;;GAEG;AACH,WAAW,GACZ,MAAM,mCAAmC,CAAA;AAE1C,OAAO;AACL;;GAEG;AACH,eAAe,GAChB,MAAM,wCAAwC,CAAA"}
@@ -11,6 +11,7 @@ export * from './fragments/index.js';
11
11
  export * from './id-field/index.js';
12
12
  export * from './number-field/index.js';
13
13
  export * from './oid-field/index.js';
14
+ export * from './password-field/index.js';
14
15
  export * from './phid-field/index.js';
15
16
  export * from './string-field/index.js';
16
17
  export * from './time-picker-field/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/scalars/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AACpC,cAAc,yBAAyB,CAAA;AACvC,cAAc,0BAA0B,CAAA;AACxC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,gCAAgC,CAAA;AAC9C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,mCAAmC,CAAA;AACjD,cAAc,uBAAuB,CAAA;AACrC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,sBAAsB,CAAA;AACpC,cAAc,qBAAqB,CAAA;AACnC,cAAc,yBAAyB,CAAA;AACvC,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA;AACrC,cAAc,yBAAyB,CAAA;AACvC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,YAAY,CAAA;AAC1B,cAAc,sBAAsB,CAAA;AACpC,cAAc,wBAAwB,CAAA;AAEtC,wBAAwB;AACxB,OAAO;AACL;;;GAGG;AACH,QAAQ;AACR;;;GAGG;AACH,eAAe;AACf;;;GAGG;AACH,YAAY;AACZ;;;GAGG;AACH,aAAa;AACb;;;GAGG;AACH,gBAAgB;AAChB;;;GAGG;AACH,eAAe,GAChB,MAAM,uCAAuC,CAAA;AAE9C,OAAO;AACL;;;GAGG;AACH,OAAO;AACP;;;GAGG;AACH,eAAe;AACf;;;GAGG;AACH,UAAU,GA0BX,MAAM,sCAAsC,CAAA;AAE7C,uBAAuB;AACvB,OAAO;AACL;;;GAGG;AACH,KAAK,GAMN,MAAM,8BAA8B,CAAA;AAErC,OAAO;AACL;;GAEG;AACH,aAAa,GACd,MAAM,qCAAqC,CAAA;AAE5C,OAAO;AACL;;GAEG;AACH,WAAW,GACZ,MAAM,mCAAmC,CAAA;AAE1C,OAAO;AACL;;GAEG;AACH,SAAS,GACV,MAAM,iCAAiC,CAAA;AAExC,OAAO;AACL;;GAEG;AACH,aAAa,GACd,MAAM,qCAAqC,CAAA;AAE5C,OAAO;AACL;;GAEG;AACH,WAAW,GACZ,MAAM,mCAAmC,CAAA;AAE1C,OAAO;AACL;;GAEG;AACH,eAAe,GAChB,MAAM,wCAAwC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/scalars/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AACpC,cAAc,yBAAyB,CAAA;AACvC,cAAc,0BAA0B,CAAA;AACxC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,gCAAgC,CAAA;AAC9C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,mCAAmC,CAAA;AACjD,cAAc,uBAAuB,CAAA;AACrC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,sBAAsB,CAAA;AACpC,cAAc,qBAAqB,CAAA;AACnC,cAAc,yBAAyB,CAAA;AACvC,cAAc,sBAAsB,CAAA;AACpC,cAAc,2BAA2B,CAAA;AACzC,cAAc,uBAAuB,CAAA;AACrC,cAAc,yBAAyB,CAAA;AACvC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,YAAY,CAAA;AAC1B,cAAc,sBAAsB,CAAA;AACpC,cAAc,wBAAwB,CAAA;AAEtC,wBAAwB;AACxB,OAAO;AACL;;;GAGG;AACH,QAAQ;AACR;;;GAGG;AACH,eAAe;AACf;;;GAGG;AACH,YAAY;AACZ;;;GAGG;AACH,aAAa;AACb;;;GAGG;AACH,gBAAgB;AAChB;;;GAGG;AACH,eAAe,GAChB,MAAM,uCAAuC,CAAA;AAE9C,OAAO;AACL;;;GAGG;AACH,OAAO;AACP;;;GAGG;AACH,eAAe;AACf;;;GAGG;AACH,UAAU,GA0BX,MAAM,sCAAsC,CAAA;AAE7C,uBAAuB;AACvB,OAAO;AACL;;;GAGG;AACH,KAAK,GAMN,MAAM,8BAA8B,CAAA;AAErC,OAAO;AACL;;GAEG;AACH,aAAa,GACd,MAAM,qCAAqC,CAAA;AAE5C,OAAO;AACL;;GAEG;AACH,WAAW,GACZ,MAAM,mCAAmC,CAAA;AAE1C,OAAO;AACL;;GAEG;AACH,SAAS,GACV,MAAM,iCAAiC,CAAA;AAExC,OAAO;AACL;;GAEG;AACH,aAAa,GACd,MAAM,qCAAqC,CAAA;AAE5C,OAAO;AACL;;GAEG;AACH,WAAW,GACZ,MAAM,mCAAmC,CAAA;AAE1C,OAAO;AACL;;GAEG;AACH,eAAe,GAChB,MAAM,wCAAwC,CAAA"}
@@ -1,8 +1,10 @@
1
- declare const PasswordField: import("react").ForwardRefExoticComponent<import("../../../ui/components/data-entry/password-input/types.js").PasswordInputProps & import("../types.js").FieldErrorHandling & {
1
+ import React from 'react';
2
+ declare const PasswordField: React.ForwardRefExoticComponent<import("../../../ui/components/data-entry/password-input/types.js").PasswordInputProps & import("../types.js").FieldErrorHandling & {
2
3
  requireUppercase?: boolean;
3
4
  requireLowercase?: boolean;
4
5
  requireNumbers?: boolean;
5
6
  requireSpecialCharacters?: boolean;
6
- } & import("react").RefAttributes<unknown>>;
7
+ matchFieldName?: string;
8
+ } & React.RefAttributes<unknown>>;
7
9
  export { PasswordField };
8
10
  //# sourceMappingURL=password-field.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"password-field.d.ts","sourceRoot":"","sources":["../../../../../src/scalars/components/password-field/password-field.tsx"],"names":[],"mappings":"AAKA,QAAA,MAAM,aAAa;;;;;2CAwCjB,CAAA;AAIF,OAAO,EAAE,aAAa,EAAE,CAAA"}
1
+ {"version":3,"file":"password-field.d.ts","sourceRoot":"","sources":["../../../../../src/scalars/components/password-field/password-field.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAoBzB,QAAA,MAAM,aAAa;;;;;;iCA2DjB,CAAA;AAIF,OAAO,EAAE,aAAa,EAAE,CAAA"}
@@ -1,25 +1,32 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import React from 'react';
1
3
  import { PasswordInput } from '../../../ui/components/data-entry/password-input/index.js';
2
4
  import { withFieldValidation } from '../fragments/with-field-validation/index.js';
3
5
  import { specialCharacters } from '../../../ui/components/data-entry/password-input/utils.js';
4
- const PasswordField = withFieldValidation(PasswordInput, {
6
+ const PasswordInputWrapper = React.forwardRef((props, ref) => {
7
+ const { requireUppercase: _1, requireLowercase: _2, requireNumbers: _3, requireSpecialCharacters: _4, matchFieldName, ...rest } = props;
8
+ return _jsx(PasswordInput, { ref: ref, ...rest, ...(!!matchFieldName && { 'data-exclude': 'true' }) });
9
+ });
10
+ PasswordInputWrapper.displayName = 'PasswordInputWrapper';
11
+ const PasswordField = withFieldValidation(PasswordInputWrapper, {
5
12
  validations: {
6
13
  _requireUppercase: ({ requireUppercase = true }) => (value) => {
7
14
  if (!requireUppercase || value === '' || value === undefined) {
8
15
  return true;
9
16
  }
10
- return /[A-Z]/.test(value) || 'The field value must contain at least one uppercase letter';
17
+ return /[A-Z]/.test(value) || 'This field must contain at least one uppercase letter';
11
18
  },
12
19
  _requireLowercase: ({ requireLowercase = true }) => (value) => {
13
20
  if (!requireLowercase || value === '' || value === undefined) {
14
21
  return true;
15
22
  }
16
- return /[a-z]/.test(value) || 'The field value must contain at least one lowercase letter';
23
+ return /[a-z]/.test(value) || 'This field must contain at least one lowercase letter';
17
24
  },
18
25
  _requireNumbers: ({ requireNumbers = true }) => (value) => {
19
26
  if (!requireNumbers || value === '' || value === undefined) {
20
27
  return true;
21
28
  }
22
- return /[0-9]/.test(value) || 'The field value must contain at least one number';
29
+ return /[0-9]/.test(value) || 'This field must contain at least one number';
23
30
  },
24
31
  _requireSpecialCharacters: ({ requireSpecialCharacters = true }) => (value) => {
25
32
  if (!requireSpecialCharacters || value === '' || value === undefined) {
@@ -30,7 +37,22 @@ const PasswordField = withFieldValidation(PasswordInput, {
30
37
  return true;
31
38
  }
32
39
  }
33
- return `The field value must contain at least one special character: ${specialCharacters}`;
40
+ return `This field must contain at least one special character: ${specialCharacters}`;
41
+ },
42
+ _matchPassword: ({ matchFieldName }) => (value, formState) => {
43
+ if (!matchFieldName)
44
+ return true;
45
+ if (value !== formState[matchFieldName]) {
46
+ const matchFieldElements = document.querySelectorAll(`input[name="${matchFieldName}"]`);
47
+ if (matchFieldElements.length === 1) {
48
+ const matchFieldLabel = matchFieldElements[0].getAttribute('data-label');
49
+ if (matchFieldLabel) {
50
+ return `Password must match the "${matchFieldLabel}" field`;
51
+ }
52
+ }
53
+ return 'Password does not match';
54
+ }
55
+ return true;
34
56
  },
35
57
  },
36
58
  });
@@ -1 +1 @@
1
- {"version":3,"file":"password-field.js","sourceRoot":"","sources":["../../../../../src/scalars/components/password-field/password-field.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,2DAA2D,CAAA;AACzF,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAA;AACjF,OAAO,EAAE,iBAAiB,EAAE,MAAM,2DAA2D,CAAA;AAG7F,MAAM,aAAa,GAAG,mBAAmB,CAAqB,aAAa,EAAE;IAC3E,WAAW,EAAE;QACX,iBAAiB,EACf,CAAC,EAAE,gBAAgB,GAAG,IAAI,EAAE,EAAE,EAAE,CAChC,CAAC,KAAyB,EAAE,EAAE;YAC5B,IAAI,CAAC,gBAAgB,IAAI,KAAK,KAAK,EAAE,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBAC7D,OAAO,IAAI,CAAA;YACb,CAAC;YACD,OAAO,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,4DAA4D,CAAA;QAC5F,CAAC;QACH,iBAAiB,EACf,CAAC,EAAE,gBAAgB,GAAG,IAAI,EAAE,EAAE,EAAE,CAChC,CAAC,KAAyB,EAAE,EAAE;YAC5B,IAAI,CAAC,gBAAgB,IAAI,KAAK,KAAK,EAAE,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBAC7D,OAAO,IAAI,CAAA;YACb,CAAC;YACD,OAAO,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,4DAA4D,CAAA;QAC5F,CAAC;QACH,eAAe,EACb,CAAC,EAAE,cAAc,GAAG,IAAI,EAAE,EAAE,EAAE,CAC9B,CAAC,KAAyB,EAAE,EAAE;YAC5B,IAAI,CAAC,cAAc,IAAI,KAAK,KAAK,EAAE,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBAC3D,OAAO,IAAI,CAAA;YACb,CAAC;YACD,OAAO,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,kDAAkD,CAAA;QAClF,CAAC;QACH,yBAAyB,EACvB,CAAC,EAAE,wBAAwB,GAAG,IAAI,EAAE,EAAE,EAAE,CACxC,CAAC,KAAyB,EAAE,EAAE;YAC5B,IAAI,CAAC,wBAAwB,IAAI,KAAK,KAAK,EAAE,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACrE,OAAO,IAAI,CAAA;YACb,CAAC;YACD,KAAK,MAAM,IAAI,IAAI,iBAAiB,EAAE,CAAC;gBACrC,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;oBACzB,OAAO,IAAI,CAAA;gBACb,CAAC;YACH,CAAC;YACD,OAAO,gEAAgE,iBAAiB,EAAE,CAAA;QAC5F,CAAC;KACJ;CACF,CAAC,CAAA;AAEF,aAAa,CAAC,WAAW,GAAG,eAAe,CAAA;AAE3C,OAAO,EAAE,aAAa,EAAE,CAAA"}
1
+ {"version":3,"file":"password-field.js","sourceRoot":"","sources":["../../../../../src/scalars/components/password-field/password-field.tsx"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ type PasswordFieldProps = PasswordInputProps & FieldErrorHandling & {
5
5
  requireLowercase?: boolean;
6
6
  requireNumbers?: boolean;
7
7
  requireSpecialCharacters?: boolean;
8
+ matchFieldName?: string;
8
9
  };
9
10
  export type { PasswordFieldProps };
10
11
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/scalars/components/password-field/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2DAA2D,CAAA;AACnG,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAErD,KAAK,kBAAkB,GAAG,kBAAkB,GAC1C,kBAAkB,GAAG;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,wBAAwB,CAAC,EAAE,OAAO,CAAA;CAGnC,CAAA;AAEH,YAAY,EAAE,kBAAkB,EAAE,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/scalars/components/password-field/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2DAA2D,CAAA;AACnG,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAErD,KAAK,kBAAkB,GAAG,kBAAkB,GAC1C,kBAAkB,GAAG;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,wBAAwB,CAAC,EAAE,OAAO,CAAA;IAClC,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB,CAAA;AAEH,YAAY,EAAE,kBAAkB,EAAE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"email-input.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/components/data-entry/email-input/email-input.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkB,MAAM,OAAO,CAAA;AAMtC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAKjD,QAAA,MAAM,UAAU,0FA0Ef,CAAA;AAID,OAAO,EAAE,UAAU,EAAE,CAAA"}
1
+ {"version":3,"file":"email-input.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/components/data-entry/email-input/email-input.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkB,MAAM,OAAO,CAAA;AAMtC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAKjD,QAAA,MAAM,UAAU,0FAyEf,CAAA;AAID,OAAO,EAAE,UAAU,EAAE,CAAA"}
@@ -20,7 +20,7 @@ const EmailInput = React.forwardRef(({ name, label, description, required, disab
20
20
  // Filter maxLength from props since it's avoid default browser behavior
21
21
  const filteredProps = useMemo(() => Object.fromEntries(Object.entries(props).filter(([key]) => key !== 'maxLength')), [props]);
22
22
  if (viewMode === 'edition') {
23
- return (_jsxs(FormGroup, { children: [_jsx(FormLabel, { htmlFor: id, required: required, disabled: disabled, hasError: !!errors?.length, children: label }), _jsx(Input, { name: name, value: emailValue ?? '', onChange: handleChange, onBlur: onBlur, disabled: disabled, "data-label": label, id: id, type: "email", autoComplete: autoCompleteValue, "data-exclude": true, required: required, ref: ref, ...filteredProps }), description && _jsx(FormDescription, { children: description }), warnings && _jsx(FormMessageList, { messages: warnings, type: "warning" }), errors && _jsx(FormMessageList, { messages: errors, type: "error" })] }));
23
+ return (_jsxs(FormGroup, { children: [_jsx(FormLabel, { htmlFor: id, required: required, disabled: disabled, hasError: !!errors?.length, children: label }), _jsx(Input, { name: name, value: emailValue ?? '', onChange: handleChange, onBlur: onBlur, disabled: disabled, id: id, type: "email", autoComplete: autoCompleteValue, required: required, ref: ref, ...(label && { 'data-label': label }), ...filteredProps }), description && _jsx(FormDescription, { children: description }), warnings && _jsx(FormMessageList, { messages: warnings, type: "warning" }), errors && _jsx(FormMessageList, { messages: errors, type: "error" })] }));
24
24
  }
25
25
  return (_jsx(SplittedInputDiff, { baseValue: baseValue, value: emailValue ?? '', viewMode: viewMode, diffMode: "sentences", "data-testid": "email-input-diff" }));
26
26
  });
@@ -1 +1 @@
1
- {"version":3,"file":"email-input.js","sourceRoot":"","sources":["../../../../../../src/ui/components/data-entry/email-input/email-input.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"email-input.js","sourceRoot":"","sources":["../../../../../../src/ui/components/data-entry/email-input/email-input.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import type { WithDifference } from '../../../../scalars/components/types.js';
2
+ import type { PasswordInputProps } from './types.js';
3
+ interface PasswordInputDiffProps extends Omit<WithDifference<string>, 'diffMode'> {
4
+ value: string;
5
+ label: PasswordInputProps['label'];
6
+ required: PasswordInputProps['required'];
7
+ }
8
+ declare const PasswordInputDiff: ({ value, label, required, viewMode, baseValue }: PasswordInputDiffProps) => import("react/jsx-runtime").JSX.Element;
9
+ export { PasswordInputDiff };
10
+ //# sourceMappingURL=password-input-diff.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"password-input-diff.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/components/data-entry/password-input/password-input-diff.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAA;AAC7E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAEpD,UAAU,sBAAuB,SAAQ,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC;IAC/E,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAA;IAClC,QAAQ,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAA;CACzC;AAED,QAAA,MAAM,iBAAiB,GAAI,iDAA2D,sBAAsB,4CAiB3G,CAAA;AAED,OAAO,EAAE,iBAAiB,EAAE,CAAA"}
@@ -0,0 +1,8 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { FormGroup, FormLabel } from '../../../../scalars/components/fragments/index.js';
3
+ import { SplittedInputDiff } from '../input/splitted-input-diff.js';
4
+ const PasswordInputDiff = ({ value = '', label, required, viewMode, baseValue = '' }) => {
5
+ return (_jsxs(FormGroup, { children: [label && (_jsx(FormLabel, { disabled: true, required: required, children: label })), _jsx(SplittedInputDiff, { baseValue: baseValue, value: value, viewMode: viewMode, diffMode: "sentences", "data-testid": "password-input-diff" })] }));
6
+ };
7
+ export { PasswordInputDiff };
8
+ //# sourceMappingURL=password-input-diff.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"password-input-diff.js","sourceRoot":"","sources":["../../../../../../src/ui/components/data-entry/password-input/password-input-diff.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,mDAAmD,CAAA;AACxF,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AAUnE,MAAM,iBAAiB,GAAG,CAAC,EAAE,KAAK,GAAG,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,GAAG,EAAE,EAA0B,EAAE,EAAE;IAC9G,OAAO,CACL,MAAC,SAAS,eACP,KAAK,IAAI,CACR,KAAC,SAAS,IAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,YAC1C,KAAK,GACI,CACb,EACD,KAAC,iBAAiB,IAChB,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAC,WAAW,iBACR,qBAAqB,GACjC,IACQ,CACb,CAAA;AACH,CAAC,CAAA;AAED,OAAO,EAAE,iBAAiB,EAAE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"password-input.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/components/data-entry/password-input/password-input.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmD,MAAM,OAAO,CAAA;AAUvE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAEpD,QAAA,MAAM,aAAa,6FA6IlB,CAAA;AAID,OAAO,EAAE,aAAa,EAAE,CAAA"}
1
+ {"version":3,"file":"password-input.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/components/data-entry/password-input/password-input.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmD,MAAM,OAAO,CAAA;AAWvE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAEpD,QAAA,MAAM,aAAa,6FA6LlB,CAAA;AAID,OAAO,EAAE,aAAa,EAAE,CAAA"}
@@ -9,39 +9,64 @@ import { FormMessageList } from '../../../../scalars/components/fragments/form-m
9
9
  import { Popover, PopoverAnchor, PopoverContent } from '../../../../scalars/components/fragments/popover/index.js';
10
10
  import { PasswordStrength } from './password-strength.js';
11
11
  import { Icon } from '../../icon/index.js';
12
- const PasswordInput = React.forwardRef(({ id: idProp, className, label, description, value, defaultValue, onChange, disabled, required, errors, warnings, pattern, showPasswordStrength = true, showPasswordStrengthOpen = false, viewMode = 'edition',
13
- // TODO: Implement diffs
14
- // baseValue,
15
- ...props }, ref) => {
12
+ import { PasswordInputDiff } from './password-input-diff.js';
13
+ const PasswordInput = React.forwardRef(({ id: idProp, className, label, description, value, defaultValue, onChange, onKeyDown, onClick, disabled, required, errors, warnings, pattern, showPasswordStrength = true, showPasswordStrengthOpen = false, viewMode = 'edition', baseValue, ...props }, ref) => {
16
14
  const prefix = useUniqueId();
17
15
  const id = idProp ?? `${prefix}-password-input`;
18
16
  const [isPopoverOpen, setIsPopoverOpen] = useState(showPasswordStrengthOpen);
19
17
  const [password, setPassword] = useState(value ?? defaultValue ?? '');
20
18
  const [showPassword, setShowPassword] = useState(false);
21
19
  const containerRef = useRef(null);
20
+ const timeoutRef = useRef(null);
21
+ const resetPopoverTimeout = useCallback(() => {
22
+ if (timeoutRef.current) {
23
+ clearTimeout(timeoutRef.current);
24
+ }
25
+ timeoutRef.current = setTimeout(() => {
26
+ setIsPopoverOpen(false);
27
+ }, 10000);
28
+ }, []);
22
29
  const handleChange = useCallback((event) => {
23
30
  setIsPopoverOpen(true);
24
31
  setPassword(event.target.value);
25
32
  onChange?.(event);
26
- }, [onChange]);
33
+ resetPopoverTimeout();
34
+ }, [onChange, resetPopoverTimeout]);
35
+ const handleKeyDown = useCallback((event) => {
36
+ if (event.key === 'Enter' && isPopoverOpen) {
37
+ setIsPopoverOpen(false);
38
+ if (timeoutRef.current) {
39
+ clearTimeout(timeoutRef.current);
40
+ }
41
+ }
42
+ onKeyDown?.(event);
43
+ }, [isPopoverOpen, onKeyDown]);
44
+ const handleClick = useCallback((event) => {
45
+ setIsPopoverOpen(true);
46
+ onClick?.(event);
47
+ resetPopoverTimeout();
48
+ }, [onClick, resetPopoverTimeout]);
27
49
  useEffect(() => {
28
50
  if (value !== undefined) {
29
51
  setPassword(value);
30
52
  }
31
53
  }, [value]);
54
+ useEffect(() => {
55
+ return () => {
56
+ if (timeoutRef.current) {
57
+ clearTimeout(timeoutRef.current);
58
+ }
59
+ };
60
+ }, []);
32
61
  const hasWarning = Array.isArray(warnings) && warnings.length > 0;
33
62
  const hasError = Array.isArray(errors) && errors.length > 0;
34
- // TODO: Implement PasswordInputDiff
35
63
  if (viewMode !== 'edition') {
36
- return null;
64
+ return (_jsx(PasswordInputDiff, { value: password, label: label, required: required, viewMode: viewMode, baseValue: baseValue }));
37
65
  }
38
66
  return (_jsxs(FormGroup, { children: [!!label && (_jsx(FormLabel, { htmlFor: id, disabled: disabled, hasError: hasError, required: required, onClick: (e) => {
39
67
  e.preventDefault();
40
68
  e.target.control?.focus();
41
- }, children: label })), _jsxs(Popover, { open: isPopoverOpen, onOpenChange: setIsPopoverOpen, children: [_jsx(PopoverAnchor, { asChild: true, children: _jsxs("div", { ref: containerRef, className: cn('relative'), children: [_jsx(Input, { ref: ref, id: id, value: password, onChange: handleChange, onClick: (e) => {
42
- setIsPopoverOpen(true);
43
- props.onClick?.(e);
44
- }, className: cn('pr-9', className), disabled: disabled, "aria-invalid": hasError, "aria-label": !label ? 'Password input' : undefined, "aria-required": required, type: showPassword ? 'text' : 'password', pattern: pattern?.source, autoCorrect: "off", autoCapitalize: "off", spellCheck: false, ...props }), _jsx("div", { className: cn('absolute right-3 top-1/2 flex size-4 -translate-y-1/2 items-center'), children: _jsx("button", { type: "button", "aria-label": showPassword ? 'Hide password' : 'Show password', onClick: () => {
69
+ }, children: label })), _jsxs(Popover, { open: isPopoverOpen, onOpenChange: setIsPopoverOpen, children: [_jsx(PopoverAnchor, { asChild: true, children: _jsxs("div", { ref: containerRef, className: cn('relative'), children: [_jsx(Input, { ref: ref, id: id, value: password, onChange: handleChange, onKeyDown: handleKeyDown, onClick: handleClick, className: cn('pr-9', className), disabled: disabled, "aria-invalid": hasError, "aria-label": !label ? 'Password input' : undefined, "aria-required": required, type: showPassword ? 'text' : 'password', pattern: pattern?.source, autoCorrect: "off", autoCapitalize: "off", spellCheck: false, ...(!!label && { 'data-label': label }), ...props }), _jsx("div", { className: cn('absolute right-3 top-1/2 flex size-4 -translate-y-1/2 items-center'), children: _jsx("button", { type: "button", "aria-label": showPassword ? 'Hide password' : 'Show password', onClick: () => {
45
70
  setShowPassword(!showPassword);
46
71
  }, className: cn('group focus-visible:outline-none'), children: _jsx(Icon, { name: showPassword ? 'Hide' : 'Show', size: 16, className: cn('text-gray-500 group-hover:text-gray-700 group-focus:text-gray-700 pointer-events-none'), "aria-hidden": "true" }) }) })] }) }), _jsx(PopoverContent, { align: "start", onOpenAutoFocus: (e) => {
47
72
  e.preventDefault();
@@ -1 +1 @@
1
- {"version":3,"file":"password-input.js","sourceRoot":"","sources":["../../../../../../src/ui/components/data-entry/password-input/password-input.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"password-input.js","sourceRoot":"","sources":["../../../../../../src/ui/components/data-entry/password-input/password-input.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AACvE,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AACzC,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAA;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,oEAAoE,CAAA;AACpG,OAAO,EAAE,SAAS,EAAE,MAAM,8DAA8D,CAAA;AACxF,OAAO,EAAE,SAAS,EAAE,MAAM,8DAA8D,CAAA;AACxF,OAAO,EAAE,eAAe,EAAE,MAAM,gEAAgE,CAAA;AAChG,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,2DAA2D,CAAA;AAClH,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAG5D,MAAM,aAAa,GAAG,KAAK,CAAC,UAAU,CACpC,CACE,EACE,EAAE,EAAE,MAAM,EACV,SAAS,EACT,KAAK,EACL,WAAW,EACX,KAAK,EACL,YAAY,EACZ,QAAQ,EACR,SAAS,EACT,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,MAAM,EACN,QAAQ,EACR,OAAO,EACP,oBAAoB,GAAG,IAAI,EAC3B,wBAAwB,GAAG,KAAK,EAChC,QAAQ,GAAG,SAAS,EACpB,SAAS,EACT,GAAG,KAAK,EACT,EACD,GAAG,EACH,EAAE;IACF,MAAM,MAAM,GAAG,WAAW,EAAE,CAAA;IAC5B,MAAM,EAAE,GAAG,MAAM,IAAI,GAAG,MAAM,iBAAiB,CAAA;IAE/C,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,wBAAwB,CAAC,CAAA;IAC5E,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,KAAK,IAAI,YAAY,IAAI,EAAE,CAAC,CAAA;IACrE,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAEvD,MAAM,YAAY,GAAG,MAAM,CAAwB,IAAI,CAAC,CAAA;IACxD,MAAM,UAAU,GAAG,MAAM,CAAwB,IAAI,CAAC,CAAA;IAEtD,MAAM,mBAAmB,GAAG,WAAW,CAAC,GAAG,EAAE;QAC3C,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;YACvB,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QAClC,CAAC;QACD,UAAU,CAAC,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;YACnC,gBAAgB,CAAC,KAAK,CAAC,CAAA;QACzB,CAAC,EAAE,KAAK,CAAC,CAAA;IACX,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,YAAY,GAAG,WAAW,CAC9B,CAAC,KAA0C,EAAE,EAAE;QAC7C,gBAAgB,CAAC,IAAI,CAAC,CAAA;QACtB,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAC/B,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAA;QACjB,mBAAmB,EAAE,CAAA;IACvB,CAAC,EACD,CAAC,QAAQ,EAAE,mBAAmB,CAAC,CAChC,CAAA;IAED,MAAM,aAAa,GAAG,WAAW,CAC/B,CAAC,KAA4C,EAAE,EAAE;QAC/C,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO,IAAI,aAAa,EAAE,CAAC;YAC3C,gBAAgB,CAAC,KAAK,CAAC,CAAA;YACvB,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;gBACvB,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;YAClC,CAAC;QACH,CAAC;QACD,SAAS,EAAE,CAAC,KAAK,CAAC,CAAA;IACpB,CAAC,EACD,CAAC,aAAa,EAAE,SAAS,CAAC,CAC3B,CAAA;IAED,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,KAAyC,EAAE,EAAE;QAC5C,gBAAgB,CAAC,IAAI,CAAC,CAAA;QACtB,OAAO,EAAE,CAAC,KAAK,CAAC,CAAA;QAChB,mBAAmB,EAAE,CAAA;IACvB,CAAC,EACD,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAC/B,CAAA;IAED,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,WAAW,CAAC,KAAK,CAAC,CAAA;QACpB,CAAC;IACH,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;IAEX,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,GAAG,EAAE;YACV,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;gBACvB,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;YAClC,CAAC;QACH,CAAC,CAAA;IACH,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAA;IACjE,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,CAAA;IAE3D,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO,CACL,KAAC,iBAAiB,IAChB,KAAK,EAAE,QAAQ,EACf,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS,GACpB,CACH,CAAA;IACH,CAAC;IAED,OAAO,CACL,MAAC,SAAS,eACP,CAAC,CAAC,KAAK,IAAI,CACV,KAAC,SAAS,IACR,OAAO,EAAE,EAAE,EACX,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;oBACb,CAAC,CAAC,cAAc,EAAE,CACjB;oBAAC,CAAC,CAAC,MAA2B,CAAC,OAAO,EAAE,KAAK,EAAE,CAAA;gBAClD,CAAC,YAEA,KAAK,GACI,CACb,EACD,MAAC,OAAO,IAAC,IAAI,EAAE,aAAa,EAAE,YAAY,EAAE,gBAAgB,aAC1D,KAAC,aAAa,IAAC,OAAO,EAAE,IAAI,YAC1B,eAAK,GAAG,EAAE,YAAY,EAAE,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,aAC/C,KAAC,KAAK,IACJ,GAAG,EAAE,GAAG,EACR,EAAE,EAAE,EAAE,EACN,KAAK,EAAE,QAAQ,EACf,QAAQ,EAAE,YAAY,EACtB,SAAS,EAAE,aAAa,EACxB,OAAO,EAAE,WAAW,EACpB,SAAS,EAAE,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,EAChC,QAAQ,EAAE,QAAQ,kBACJ,QAAQ,gBACV,CAAC,KAAK,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,mBAClC,QAAQ,EACvB,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,EACxC,OAAO,EAAE,OAAO,EAAE,MAAM,EACxB,WAAW,EAAC,KAAK,EACjB,cAAc,EAAC,KAAK,EACpB,UAAU,EAAE,KAAK,KACb,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,KACpC,KAAK,GACT,EACF,cAAK,SAAS,EAAE,EAAE,CAAC,oEAAoE,CAAC,YACtF,iBACE,IAAI,EAAC,QAAQ,gBACD,YAAY,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,eAAe,EAC5D,OAAO,EAAE,GAAG,EAAE;4CACZ,eAAe,CAAC,CAAC,YAAY,CAAC,CAAA;wCAChC,CAAC,EACD,SAAS,EAAE,EAAE,CAAC,kCAAkC,CAAC,YAEjD,KAAC,IAAI,IACH,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EACpC,IAAI,EAAE,EAAE,EACR,SAAS,EAAE,EAAE,CACX,uFAAuF,CACxF,iBACW,MAAM,GAClB,GACK,GACL,IACF,GACQ,EAChB,KAAC,cAAc,IACb,KAAK,EAAC,OAAO,EACb,eAAe,EAAE,CAAC,CAAC,EAAE,EAAE;4BACrB,CAAC,CAAC,cAAc,EAAE,CAAA;wBACpB,CAAC,EACD,iBAAiB,EAAE,CAAC,CAAC,EAAE,EAAE;4BACvB,IAAI,CAAC,CAAC,MAAM,YAAY,OAAO,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;gCACxD,MAAM,iBAAiB,GAAG,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAc,CAAC,CAAA;gCACzE,IAAI,iBAAiB,EAAE,CAAC;oCACtB,CAAC,CAAC,cAAc,EAAE,CAAA;gCACpB,CAAC;4BACH,CAAC;wBACH,CAAC,EACD,SAAS,EAAE,EAAE,CAAC,2DAA2D,CAAC,YAEzE,oBAAoB,IAAI,KAAC,gBAAgB,IAAC,QAAQ,EAAE,QAAQ,GAAI,GAClD,IACT,EACT,CAAC,CAAC,WAAW,IAAI,KAAC,eAAe,cAAE,WAAW,GAAmB,EACjE,UAAU,IAAI,KAAC,eAAe,IAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAC,SAAS,GAAG,EACpE,QAAQ,IAAI,KAAC,eAAe,IAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAC,OAAO,GAAG,IACrD,CACb,CAAA;AACH,CAAC,CACF,CAAA;AAED,aAAa,CAAC,WAAW,GAAG,eAAe,CAAA;AAE3C,OAAO,EAAE,aAAa,EAAE,CAAA"}
@@ -6,7 +6,7 @@ import * as zxcvbnEnPackage from '@zxcvbn-ts/language-en';
6
6
  import { cn } from '../../../../scalars/lib/index.js';
7
7
  import { ProgressBar } from '../../../../scalars/components/fragments/progress-bar/index.js';
8
8
  import { FormMessageList } from '../../../../scalars/components/fragments/form-message/index.js';
9
- import { specialCharacters, strengthColors, strengthLabels, strengthValues } from './utils.js';
9
+ import { adjustStrengthScore, specialCharacters, strengthColors, strengthLabels, strengthValues } from './utils.js';
10
10
  const options = {
11
11
  dictionary: {
12
12
  ...zxcvbnCommonPackage.dictionary,
@@ -40,7 +40,7 @@ const PasswordStrength = ({ password }) => {
40
40
  setWasEmpty(false);
41
41
  }
42
42
  }, [password, result]);
43
- const score = result?.score;
43
+ const score = adjustStrengthScore(password, result?.score);
44
44
  const showWeak = password === '' || (score === undefined && wasEmpty);
45
45
  return (_jsxs("div", { className: cn('w-full flex flex-col gap-4 px-4 pt-2 pb-4 rounded-md'), children: [_jsxs("div", { className: cn('w-full flex flex-col gap-2'), children: [_jsx("h3", { className: cn('text-sm font-semibold text-gray-900'), children: "Password strength" }), _jsx(ProgressBar, { value: score !== undefined ? strengthValues[score] : showWeak ? strengthValues[0] : 0, className: cn(score !== undefined
46
46
  ? strengthColors[score]
@@ -1 +1 @@
1
- {"version":3,"file":"password-strength.js","sourceRoot":"","sources":["../../../../../../src/ui/components/data-entry/password-input/password-strength.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"password-strength.js","sourceRoot":"","sources":["../../../../../../src/ui/components/data-entry/password-input/password-strength.tsx"],"names":[],"mappings":"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"}
@@ -1,17 +1,12 @@
1
1
  import type { InputBaseProps, WithDifference } from '../../../../scalars/components/types.js';
2
- type PasswordInputWithDifference = Omit<WithDifference<string>, 'diffMode'>;
3
- interface PasswordInputProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, keyof InputBaseProps<string> | 'autoCorrect' | 'autoCapitalize' | 'spellCheck' | 'pattern'>, InputBaseProps<string>, PasswordInputWithDifference {
2
+ interface PasswordInputProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, keyof InputBaseProps<string> | 'autoCorrect' | 'autoCapitalize' | 'spellCheck' | 'pattern'>, InputBaseProps<string>, Omit<WithDifference<string>, 'diffMode'> {
4
3
  autoCorrect?: never;
5
4
  autoCapitalize?: never;
6
5
  spellCheck?: never;
7
6
  pattern?: RegExp;
8
- requireUppercase?: boolean;
9
- requireLowercase?: boolean;
10
- requireNumbers?: boolean;
11
- requireSpecialCharacters?: boolean;
12
7
  showPasswordStrength?: boolean;
13
8
  /**
14
- * Intended for exclusive use in Storybook stories to force the password strength popover to open by default.
9
+ * Intended for exclusive use in Storybook stories to display the password strength popover open by default.
15
10
  */
16
11
  showPasswordStrengthOpen?: boolean;
17
12
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/components/data-entry/password-input/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAA;AAE7F,KAAK,2BAA2B,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC,CAAA;AAE3E,UAAU,kBACR,SAAQ,IAAI,CACR,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAC3C,MAAM,cAAc,CAAC,MAAM,CAAC,GAAG,aAAa,GAAG,gBAAgB,GAAG,YAAY,GAAG,SAAS,CAC3F,EACD,cAAc,CAAC,MAAM,CAAC,EACtB,2BAA2B;IAC7B,WAAW,CAAC,EAAE,KAAK,CAAA;IACnB,cAAc,CAAC,EAAE,KAAK,CAAA;IACtB,UAAU,CAAC,EAAE,KAAK,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,wBAAwB,CAAC,EAAE,OAAO,CAAA;IAGlC,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B;;OAEG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAA;CACnC;AAED,YAAY,EAAE,kBAAkB,EAAE,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/components/data-entry/password-input/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAA;AAE7F,UAAU,kBACR,SAAQ,IAAI,CACR,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAC3C,MAAM,cAAc,CAAC,MAAM,CAAC,GAAG,aAAa,GAAG,gBAAgB,GAAG,YAAY,GAAG,SAAS,CAC3F,EACD,cAAc,CAAC,MAAM,CAAC,EACtB,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC;IAC1C,WAAW,CAAC,EAAE,KAAK,CAAA;IACnB,cAAc,CAAC,EAAE,KAAK,CAAA;IACtB,UAAU,CAAC,EAAE,KAAK,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B;;OAEG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAA;CACnC;AAED,YAAY,EAAE,kBAAkB,EAAE,CAAA"}
@@ -2,4 +2,5 @@ export declare const specialCharacters = "\" !#$%&'()*+,-./:;<?>@=[\\]^_`{|}~";
2
2
  export declare const strengthColors: string[];
3
3
  export declare const strengthLabels: string[];
4
4
  export declare const strengthValues: number[];
5
+ export declare const adjustStrengthScore: (password: string, score: number | undefined) => number | undefined;
5
6
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/components/data-entry/password-input/utils.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iBAAiB,wCAAwC,CAAA;AAEtE,eAAO,MAAM,cAAc,UAM1B,CAAA;AACD,eAAO,MAAM,cAAc,UAAiD,CAAA;AAC5E,eAAO,MAAM,cAAc,UAAwB,CAAA"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/components/data-entry/password-input/utils.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iBAAiB,wCAAwC,CAAA;AAEtE,eAAO,MAAM,cAAc,UAM1B,CAAA;AACD,eAAO,MAAM,cAAc,UAA+C,CAAA;AAC1E,eAAO,MAAM,cAAc,UAAwB,CAAA;AAkBnD,eAAO,MAAM,mBAAmB,GAAI,UAAU,MAAM,EAAE,OAAO,MAAM,GAAG,SAAS,KAAG,MAAM,GAAG,SAK1F,CAAA"}
@@ -2,10 +2,32 @@ export const specialCharacters = '" !#$%&\'()*+,-./:;<?>@=[\\]^_`{|}~';
2
2
  export const strengthColors = [
3
3
  '[&_[data-slot=progress-bar-indicator]]:bg-red-900',
4
4
  '[&_[data-slot=progress-bar-indicator]]:bg-red-900',
5
- '[&_[data-slot=progress-bar-indicator]]:bg-yellow-900',
5
+ '[&_[data-slot=progress-bar-indicator]]:bg-red-900',
6
6
  '[&_[data-slot=progress-bar-indicator]]:bg-yellow-900',
7
7
  '[&_[data-slot=progress-bar-indicator]]:bg-green-900',
8
8
  ];
9
- export const strengthLabels = ['Weak', 'Weak', 'Medium', 'Medium', 'Strong'];
10
- export const strengthValues = [33, 33, 66, 66, 100];
9
+ export const strengthLabels = ['Weak', 'Weak', 'Weak', 'Medium', 'Strong'];
10
+ export const strengthValues = [33, 33, 33, 66, 100];
11
+ const validatePasswordSuggestions = (password) => {
12
+ if (password.length < 8)
13
+ return false;
14
+ if (!/[A-Z]/.test(password))
15
+ return false;
16
+ if (!/[a-z]/.test(password))
17
+ return false;
18
+ if (!/[0-9]/.test(password))
19
+ return false;
20
+ for (const char of specialCharacters) {
21
+ if (password.includes(char)) {
22
+ return true;
23
+ }
24
+ }
25
+ return false;
26
+ };
27
+ export const adjustStrengthScore = (password, score) => {
28
+ if (score === 4 && password.length < 15 && !validatePasswordSuggestions(password)) {
29
+ return 3;
30
+ }
31
+ return score;
32
+ };
11
33
  //# sourceMappingURL=utils.js.map