@verbb/formie-browser 1.0.6 → 1.0.7
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.
- package/CHANGELOG.md +11 -0
- package/dist/chunks/{address-finder-yXU5yMjG.js → address-finder-k7_BXaRe.js} +1 -1
- package/dist/chunks/{api-DMK8NSUI.js → api-BUb6P-xu.js} +57 -51
- package/dist/chunks/{api-CmwLRq_n.js → api-DztsCJ4r.js} +178 -170
- package/dist/chunks/{bpoint-DSjqRv63.js → bpoint-2qDxlKD9.js} +1 -1
- package/dist/chunks/{captcha-eu-CWJb64_j.js → captcha-eu-CGm8Lbrj.js} +2 -2
- package/dist/chunks/{conditions-DjZOtHfS.js → conditions-B6_nzpeE.js} +95 -83
- package/dist/chunks/{eway-D3ctTbEk.js → eway-CImXrB4g.js} +2 -2
- package/dist/chunks/{friendly-captcha-v1-ByXzENYZ.js → friendly-captcha-v1-C_2reOXr.js} +1 -1
- package/dist/chunks/{friendly-captcha-v2-BPdlmhQu.js → friendly-captcha-v2-CLSAbkqx.js} +1 -1
- package/dist/chunks/{go-cardless-BwASSYSK.js → go-cardless-Bz7HHtH0.js} +1 -1
- package/dist/chunks/{google-address-OhKilPWE.js → google-address-BH3Zhi06.js} +1 -1
- package/dist/chunks/{hcaptcha-CdCd9oEi.js → hcaptcha-CGLAmgjO.js} +2 -2
- package/dist/chunks/{loqate-Cp2zvwpE.js → loqate-CJPzBmSm.js} +1 -1
- package/dist/chunks/{mollie-COG-ko2D.js → mollie-BtnB3KGh.js} +1 -1
- package/dist/chunks/{moneris-CMH8PlRc.js → moneris-Bd4vUk8b.js} +1 -1
- package/dist/chunks/{opayo-D2jsR5vh.js → opayo-B-eRIXo-.js} +4 -4
- package/dist/chunks/{paddle-DxF88RfC.js → paddle-BUFeEU4d.js} +2 -2
- package/dist/chunks/{paypal-b5pnwrA2.js → paypal-8Euw7Hrn.js} +2 -2
- package/dist/chunks/{payway-BJYu9DIR.js → payway-dV0SzJxy.js} +2 -2
- package/dist/chunks/{recaptcha-enterprise-BSwi8IVX.js → recaptcha-enterprise-XPId5-bS.js} +19 -20
- package/dist/chunks/{recaptcha-shared-B4zAescW.js → recaptcha-shared-CLYJvojk.js} +15 -3
- package/dist/chunks/{recaptcha-v2-checkbox-CnDQmsKa.js → recaptcha-v2-checkbox-Cy-0PEPc.js} +2 -2
- package/dist/chunks/{recaptcha-v2-invisible-Cz5uIlp-.js → recaptcha-v2-invisible-BwRH540O.js} +2 -2
- package/dist/chunks/recaptcha-v3-No4Ykrhk.js +28 -0
- package/dist/chunks/scripts-CbQ7agX3.js +30 -0
- package/dist/chunks/{snaptcha-vz1RnZ15.js → snaptcha-DKx98oon.js} +1 -1
- package/dist/chunks/{square-BP8RWAKB.js → square-reyJukb7.js} +2 -2
- package/dist/chunks/{stripe-MihN63uC.js → stripe-BC-2PBvY.js} +2 -2
- package/dist/chunks/{turnstile-D_Pi1CKM.js → turnstile-DJakPzQD.js} +3 -3
- package/dist/index.js +624 -574
- package/dist/js/core/create-formie-client.d.ts.map +1 -1
- package/dist/js/core/error-aria-live.d.ts +6 -0
- package/dist/js/core/error-aria-live.d.ts.map +1 -0
- package/dist/js/core/submit-result-state.d.ts.map +1 -1
- package/dist/js/core/submit-result-ui.d.ts.map +1 -1
- package/dist/js/modules/captchas/factories.d.ts.map +1 -1
- package/dist/js/modules/captchas/host.d.ts +1 -0
- package/dist/js/modules/captchas/host.d.ts.map +1 -1
- package/dist/js/modules/captchas/recaptcha-enterprise.d.ts.map +1 -1
- package/dist/js/modules/captchas/recaptcha-shared.d.ts +1 -0
- package/dist/js/modules/captchas/recaptcha-shared.d.ts.map +1 -1
- package/dist/js/modules/captchas/recaptcha-v3.d.ts.map +1 -1
- package/dist/js/modules/captchas/turnstile.d.ts.map +1 -1
- package/dist/js/modules/fields/conditions/effects.d.ts.map +1 -1
- package/dist/js/utils/form-started-at.d.ts +2 -0
- package/dist/js/utils/form-started-at.d.ts.map +1 -0
- package/dist/js/utils/scripts.d.ts.map +1 -1
- package/dist/js/utils/unload-warning.d.ts.map +1 -1
- package/dist/js/validation/enter-key-guard.d.ts +2 -0
- package/dist/js/validation/enter-key-guard.d.ts.map +1 -0
- package/dist/js/validation/types.d.ts +1 -0
- package/dist/js/validation/types.d.ts.map +1 -1
- package/dist/js/validation/validator.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/js/core/create-formie-client.ts +7 -0
- package/src/js/core/error-aria-live.ts +45 -0
- package/src/js/core/submit-result-state.ts +4 -0
- package/src/js/core/submit-result-ui.ts +8 -4
- package/src/js/modules/captchas/factories.ts +4 -0
- package/src/js/modules/captchas/host.ts +14 -2
- package/src/js/modules/captchas/recaptcha-enterprise.ts +14 -11
- package/src/js/modules/captchas/recaptcha-shared.ts +14 -0
- package/src/js/modules/captchas/recaptcha-v3.ts +7 -4
- package/src/js/modules/captchas/turnstile.ts +9 -3
- package/src/js/modules/fields/conditions/effects.ts +42 -0
- package/src/js/utils/form-started-at.ts +25 -0
- package/src/js/utils/scripts.ts +16 -0
- package/src/js/utils/unload-warning.ts +1 -0
- package/src/js/validation/enter-key-guard.ts +63 -0
- package/src/js/validation/types.ts +1 -0
- package/src/js/validation/validator.ts +14 -5
- package/dist/chunks/recaptcha-v3-BtbbP111.js +0 -27
- package/dist/chunks/scripts-6CYSUGKQ.js +0 -24
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-formie-client.d.ts","sourceRoot":"","sources":["../../../src/js/core/create-formie-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,YAAY,EAGf,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"create-formie-client.d.ts","sourceRoot":"","sources":["../../../src/js/core/create-formie-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,YAAY,EAGf,MAAM,mBAAmB,CAAC;AAs1B3B,wBAAgB,kBAAkB,IAAI,YAAY,CA4rBjD"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export type ErrorAriaLivePreference = 'polite' | 'assertive' | 'off';
|
|
2
|
+
export declare function getErrorAriaLivePreference(form: HTMLFormElement): ErrorAriaLivePreference;
|
|
3
|
+
export declare function resolveValidationErrorAriaLive(preference: ErrorAriaLivePreference, submitted: boolean): 'polite' | 'assertive' | null;
|
|
4
|
+
export declare function resolveSubmitErrorAriaLive(preference: ErrorAriaLivePreference): 'polite' | 'assertive' | null;
|
|
5
|
+
export declare function applyErrorAriaLive(element: HTMLElement, ariaLive: 'polite' | 'assertive' | null): void;
|
|
6
|
+
//# sourceMappingURL=error-aria-live.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error-aria-live.d.ts","sourceRoot":"","sources":["../../../src/js/core/error-aria-live.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,uBAAuB,GAAG,QAAQ,GAAG,WAAW,GAAG,KAAK,CAAC;AAErE,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,eAAe,GAAG,uBAAuB,CAQzF;AAED,wBAAgB,8BAA8B,CAC1C,UAAU,EAAE,uBAAuB,EACnC,SAAS,EAAE,OAAO,GACnB,QAAQ,GAAG,WAAW,GAAG,IAAI,CAU/B;AAED,wBAAgB,0BAA0B,CAAC,UAAU,EAAE,uBAAuB,GAAG,QAAQ,GAAG,WAAW,GAAG,IAAI,CAM7G;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,GAAG,WAAW,GAAG,IAAI,GAAG,IAAI,CAStG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"submit-result-state.d.ts","sourceRoot":"","sources":["../../../src/js/core/submit-result-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"submit-result-state.d.ts","sourceRoot":"","sources":["../../../src/js/core/submit-result-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AA6H1D,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI,CAqB/E;AA4GD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,eAAe,EAAE,SAAS,CAAC,EAAE,WAAW,GAAG,IAAI,GAAG,IAAI,CA0B5F;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,eAAe,GAAG,IAAI,CA0B9D;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAwD9E;AAkKD,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI,CAkGhH"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"submit-result-ui.d.ts","sourceRoot":"","sources":["../../../src/js/core/submit-result-ui.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"submit-result-ui.d.ts","sourceRoot":"","sources":["../../../src/js/core/submit-result-ui.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AA+L1D,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,eAAe,GAAG,IAAI,CAqC5D;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,eAAe,GAAG,IAAI,CAmB3D;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,eAAe,GAAG,IAAI,CA6B5D;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,eAAe,GAAG,IAAI,CAI5D;AAaD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,CAoDpG;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI,CAclF;AAgBD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAmC9E;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,gBAAgB,GAAG,IAAI,CAyBzF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factories.d.ts","sourceRoot":"","sources":["../../../../src/js/modules/captchas/factories.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"factories.d.ts","sourceRoot":"","sources":["../../../../src/js/modules/captchas/factories.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../../../../src/js/modules/captchas/host.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../../../../src/js/modules/captchas/host.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAc7D,KAAK,OAAO,GAAG,MAAM,IAAI,CAAC;AAE1B,KAAK,gCAAgC,GAAG;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,kBAAkB,EAAE,MAAM,IAAI,CAAC;IAC/B,UAAU,EAAE,MAAM,WAAW,EAAE,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,oBAAoB,CAAC,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI;IACpG,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB,GAAG,SAAS,CAAC;AAEd,MAAM,MAAM,8BAA8B,CAAC,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI;IACpF,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE;QACA,mBAAmB,EAAE,MAAM,CAAC;QAC5B,YAAY,EAAE,MAAM,CAAC;KACxB,CAAC;IACF,SAAS,EAAE;QACP,eAAe,EAAE,MAAM,EAAE,CAAC;QAC1B,cAAc,EAAE,MAAM,CAAC;QACvB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;QAC1B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;KACxB,CAAC;IACF,QAAQ,EAAE,SAAS,CAAC;CACvB,CAAC;AAEF,KAAK,qBAAqB,GAAG;IACzB,0BAA0B,EAAE,MAAM,CAAC;IACnC,sBAAsB,CAAC,EAAE,MAAM,EAAE,CAAC;IAClC,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAC9B,IAAI,EAAE,eAAe,GAAG,IAAI,CAAC;IAC7B,IAAI,EAAE,OAAO,CAAC;IACd,WAAW,EAAE;QACT,KAAK,EAAE,MAAM,WAAW,EAAE,CAAC;QAC3B,UAAU,EAAE,MAAM,WAAW,GAAG,IAAI,CAAC;QACrC,OAAO,EAAE,CACL,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,KAAK,IAAI,EAC1C,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,KAAK,IAAI,KACzC,gCAAgC,CAAC;QACtC,eAAe,EAAE,CAAC,WAAW,EAAE,WAAW,KAAK,WAAW,CAAC;QAC3D,KAAK,EAAE,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI,KAAK,IAAI,CAAC;KACpD,CAAC;IACF,MAAM,EAAE;QACJ,iBAAiB,EAAE,MAAM,MAAM,CAAC;QAChC,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,WAAW,GAAG,IAAI,KAAK,IAAI,CAAC;QACnE,KAAK,EAAE,CAAC,WAAW,CAAC,EAAE,WAAW,GAAG,IAAI,KAAK,IAAI,CAAC;KACrD,CAAC;IACF,MAAM,EAAE;QACJ,KAAK,EAAE,MAAM,EAAE,CAAC;QAChB,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE,UAAU,KAAK,OAAO,CAAC;QACtD,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,UAAU,KAAK,MAAM,CAAC;QACnD,KAAK,EAAE,CACH,KAAK,EAAE,MAAM,EACb,EACI,KAAK,EACL,IAAI,EACJ,SAAS,GACZ,CAAC,EAAE;YACA,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;YACjB,IAAI,CAAC,EAAE,UAAU,CAAC;YAClB,SAAS,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;SAClC,KACA,IAAI,CAAC;QACV,KAAK,EAAE,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;QACrD,IAAI,EAAE,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE,UAAU,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;KACvF,CAAC;IACF,OAAO,EAAE;QACL,cAAc,EAAE,MAAM,CAAC;QACvB,iBAAiB,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,KAAK,OAAO,CAAC;KAClF,CAAC;IACF,MAAM,EAAE;QACJ,MAAM,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,KAAK,OAAO,CAAC;QAChE,MAAM,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,KAAK,OAAO,CAAC;KACnE,CAAC;CACL,CAAC;AAyNF,wBAAgB,6BAA6B,CAAC,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnF,EAAE,EAAE,MAAM,EACV,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EAC/C,EACI,0BAA0B,EAC1B,sBAA2B,EAC3B,qBAAiD,GACpD,EAAE,qBAAqB,GACzB,8BAA8B,CAAC,SAAS,CAAC,CAwC3C;AAED,wBAAgB,yBAAyB,CAAC,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/E,GAAG,EAAE,kBAAkB,EACvB,OAAO,EAAE,8BAA8B,CAAC,SAAS,CAAC,GACnD,mBAAmB,CAsFrB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recaptcha-enterprise.d.ts","sourceRoot":"","sources":["../../../../src/js/modules/captchas/recaptcha-enterprise.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"recaptcha-enterprise.d.ts","sourceRoot":"","sources":["../../../../src/js/modules/captchas/recaptcha-enterprise.ts"],"names":[],"mappings":"AAwBA,eAAO,MAAM,yBAAyB,2CAoHpC,CAAC"}
|
|
@@ -23,4 +23,5 @@ export type RecaptchaProviderOptions = {
|
|
|
23
23
|
enterpriseType?: string | null;
|
|
24
24
|
};
|
|
25
25
|
export declare function loadRecaptchaGlobal(options: RecaptchaProviderOptions, enterprise?: boolean, renderValue?: string): Promise<RecaptchaGlobal>;
|
|
26
|
+
export declare function whenRecaptchaReady(api: RecaptchaGlobal, callback: () => void | Promise<void>): Promise<void>;
|
|
26
27
|
//# sourceMappingURL=recaptcha-shared.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recaptcha-shared.d.ts","sourceRoot":"","sources":["../../../../src/js/modules/captchas/recaptcha-shared.ts"],"names":[],"mappings":"AAOA,MAAM,MAAM,eAAe,GAAG;IAC1B,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC;IACtC,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,MAAM,GAAG,MAAM,CAAC;IACtF,OAAO,EAAE,CAAC,iBAAiB,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;IAC5G,WAAW,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,KAAK,MAAM,CAAC;IACrD,KAAK,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;IAC5C,UAAU,CAAC,EAAE;QACT,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC;QACtC,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,MAAM,GAAG,MAAM,CAAC;QACtF,OAAO,EAAE,CAAC,iBAAiB,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;QAC5G,WAAW,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,KAAK,MAAM,CAAC;QACrD,KAAK,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;KAC/C,CAAC;CACL,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACnC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAClC,CAAC;AAEF,wBAAsB,mBAAmB,CACrC,OAAO,EAAE,wBAAwB,EACjC,UAAU,UAAQ,EAClB,WAAW,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,eAAe,CAAC,CA+B1B"}
|
|
1
|
+
{"version":3,"file":"recaptcha-shared.d.ts","sourceRoot":"","sources":["../../../../src/js/modules/captchas/recaptcha-shared.ts"],"names":[],"mappings":"AAOA,MAAM,MAAM,eAAe,GAAG;IAC1B,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC;IACtC,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,MAAM,GAAG,MAAM,CAAC;IACtF,OAAO,EAAE,CAAC,iBAAiB,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;IAC5G,WAAW,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,KAAK,MAAM,CAAC;IACrD,KAAK,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;IAC5C,UAAU,CAAC,EAAE;QACT,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC;QACtC,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,MAAM,GAAG,MAAM,CAAC;QACtF,OAAO,EAAE,CAAC,iBAAiB,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;QAC5G,WAAW,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,KAAK,MAAM,CAAC;QACrD,KAAK,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;KAC/C,CAAC;CACL,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACnC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAClC,CAAC;AAEF,wBAAsB,mBAAmB,CACrC,OAAO,EAAE,wBAAwB,EACjC,UAAU,UAAQ,EAClB,WAAW,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,eAAe,CAAC,CA+B1B;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAY5G"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recaptcha-v3.d.ts","sourceRoot":"","sources":["../../../../src/js/modules/captchas/recaptcha-v3.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"recaptcha-v3.d.ts","sourceRoot":"","sources":["../../../../src/js/modules/captchas/recaptcha-v3.ts"],"names":[],"mappings":"AAcA,eAAO,MAAM,iBAAiB,2CAkD5B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"turnstile.d.ts","sourceRoot":"","sources":["../../../../src/js/modules/captchas/turnstile.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"turnstile.d.ts","sourceRoot":"","sources":["../../../../src/js/modules/captchas/turnstile.ts"],"names":[],"mappings":"AAoDA,eAAO,MAAM,eAAe,2CAoF1B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"effects.d.ts","sourceRoot":"","sources":["../../../../../src/js/modules/fields/conditions/effects.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"effects.d.ts","sourceRoot":"","sources":["../../../../../src/js/modules/fields/conditions/effects.ts"],"names":[],"mappings":"AAoNA,wBAAgB,wBAAwB,CACpC,IAAI,EAAE,OAAO,EACb,MAAM,EAAE,OAAO,EACf,WAAW,EAAE,OAAO,EACpB,OAAO,GAAE;IAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;CAAO,GACjD,OAAO,CAwBT"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"form-started-at.d.ts","sourceRoot":"","sources":["../../../src/js/utils/form-started-at.ts"],"names":[],"mappings":"AAEA,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,eAAe,GAAG,IAAI,CAsB/D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scripts.d.ts","sourceRoot":"","sources":["../../../src/js/utils/scripts.ts"],"names":[],"mappings":"AAIA,KAAK,yBAAyB,GAAG;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;
|
|
1
|
+
{"version":3,"file":"scripts.d.ts","sourceRoot":"","sources":["../../../src/js/utils/scripts.ts"],"names":[],"mappings":"AAIA,KAAK,yBAAyB,GAAG;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAcF,wBAAsB,YAAY,CAAC,CAAC,GAAG,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,SAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAehG;AAED,wBAAsB,kBAAkB,CAAC,EACrC,EAAE,EACF,GAAG,EACH,KAAY,EACZ,KAAY,GACf,EAAE,yBAAyB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAmCxD;AAED,wBAAsB,yBAAyB,CAAC,CAAC,GAAG,OAAO,EACvD,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,yBAAyB,GAAG;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,GACF,OAAO,CAAC,CAAC,CAAC,CAYZ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unload-warning.d.ts","sourceRoot":"","sources":["../../../src/js/utils/unload-warning.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"unload-warning.d.ts","sourceRoot":"","sources":["../../../src/js/utils/unload-warning.ts"],"names":[],"mappings":"AAoFA,MAAM,MAAM,sBAAsB,GAAG;IACjC,eAAe,EAAE,MAAM,IAAI,CAAC;IAC5B,uBAAuB,EAAE,MAAM,IAAI,CAAC;IACpC,iBAAiB,EAAE,MAAM,OAAO,CAAC;IACjC,OAAO,EAAE,MAAM,IAAI,CAAC;CACvB,CAAC;AAEF,wBAAgB,4BAA4B,CACxC,IAAI,EAAE,eAAe,EACrB,OAAO,GAAE;IACL,UAAU,CAAC,EAAE,MAAM,OAAO,CAAC;CACzB,GACP,sBAAsB,CA8FxB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enter-key-guard.d.ts","sourceRoot":"","sources":["../../../src/js/validation/enter-key-guard.ts"],"names":[],"mappings":"AA8BA,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,IAAI,CAgCnE"}
|
|
@@ -11,6 +11,7 @@ export type ValidationRuleValue = ValidationRule | boolean;
|
|
|
11
11
|
export type ValidationRules = Record<string, ValidationRuleValue>;
|
|
12
12
|
export type ValidationConfig = {
|
|
13
13
|
live: boolean;
|
|
14
|
+
errorAriaLive: 'polite' | 'assertive' | 'off';
|
|
14
15
|
errorMessage?: string;
|
|
15
16
|
fieldContainerErrorClass: string[];
|
|
16
17
|
inputErrorClass: string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/js/validation/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,eAAe,GAAG,gBAAgB,GAAG,iBAAiB,GAAG,mBAAmB,CAAC;AAEzF,MAAM,MAAM,cAAc,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,cAAc,GAAG,OAAO,CAAC;AAE3D,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;AAElE,MAAM,MAAM,gBAAgB,GAAG;IAC3B,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,wBAAwB,EAAE,MAAM,EAAE,CAAC;IACnC,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC5B,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,KAAK,MAAM,CAAC;IAC/E,KAAK,EAAE,eAAe,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,WAAW,GAAG,IAAI,CAAC;IAC1B,IAAI,EAAE,eAAe,CAAC;IACtB,MAAM,EAAE,gBAAgB,CAAC;IACzB,KAAK,EAAE,eAAe,CAAC;IACvB,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,mBAAmB,GAAG,KAAK,CAAC;CAC1D,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACnC,IAAI,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,OAAO,CAAC;IAC1C,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,MAAM,CAAC;CAChD,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC1B,KAAK,EAAE,eAAe,CAAC;IACvB,KAAK,EAAE,WAAW,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,MAAM,EAAE,OAAO,CAAC;CACnB,CAAC"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/js/validation/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,eAAe,GAAG,gBAAgB,GAAG,iBAAiB,GAAG,mBAAmB,CAAC;AAEzF,MAAM,MAAM,cAAc,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,cAAc,GAAG,OAAO,CAAC;AAE3D,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;AAElE,MAAM,MAAM,gBAAgB,GAAG;IAC3B,IAAI,EAAE,OAAO,CAAC;IACd,aAAa,EAAE,QAAQ,GAAG,WAAW,GAAG,KAAK,CAAC;IAC9C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,wBAAwB,EAAE,MAAM,EAAE,CAAC;IACnC,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC5B,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,KAAK,MAAM,CAAC;IAC/E,KAAK,EAAE,eAAe,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,WAAW,GAAG,IAAI,CAAC;IAC1B,IAAI,EAAE,eAAe,CAAC;IACtB,MAAM,EAAE,gBAAgB,CAAC;IACzB,KAAK,EAAE,eAAe,CAAC;IACvB,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,mBAAmB,GAAG,KAAK,CAAC;CAC1D,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACnC,IAAI,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,OAAO,CAAC;IAC1C,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,MAAM,CAAC;CAChD,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC1B,KAAK,EAAE,eAAe,CAAC;IACvB,KAAK,EAAE,WAAW,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,MAAM,EAAE,OAAO,CAAC;CACnB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../../../src/js/validation/validator.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../../../src/js/validation/validator.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACR,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,eAAe,EAClB,MAAM,mBAAmB,CAAC;AAK3B,KAAK,mBAAmB,GAAG;IACvB,QAAQ,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,OAAO,CAAC;IAC9C,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,MAAM,CAAC;CACrD,CAAC;AAEF,KAAK,eAAe,GAAG;IACnB,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAChC,CAAC;AA8DF,qBAAa,eAAe;IACxB,IAAI,EAAE,eAAe,CAAC;IACtB,MAAM,EAAE,eAAe,EAAE,CAAM;IAC/B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAM;IACrD,cAAc,UAAS;IACvB,SAAS,2BAAkC;IAC3C,SAAS,UAAS;IAClB,aAAa,6CAAoD;IACjE,MAAM,EAAE,aAAa,CAAC;IACtB,QAAQ,EAAE,aAAa,CAAC;IACxB,OAAO,EAAE,aAAa,CAAC;IACvB,MAAM,EAAE,gBAAgB,CAAC;gBAEb,IAAI,EAAE,eAAe,EAAE,MAAM,GAAE,OAAO,CAAC,gBAAgB,CAAM;IAyBzE,IAAI,IAAI,IAAI;IAoBZ,MAAM,CAAC,eAAe,GAAE,OAAO,GAAG,IAAW,GAAG,eAAe,EAAE;IAYjE,aAAa,CAAC,KAAK,EAAE,eAAe,GAAG,MAAM,GAAG,OAAO;IAcvD,OAAO,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO;IASxC,eAAe,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO;IAIhD,OAAO,CAAC,eAAe,GAAE,OAAO,GAAG,IAAW,EAAE,OAAO,GAAE,eAAoB,GAAG,OAAO;IAIvF,QAAQ,CAAC,eAAe,GAAE,OAAO,GAAG,IAAW,EAAE,OAAO,GAAE,eAAoB,GAAG,eAAe,EAAE;IAoElG,eAAe,IAAI,IAAI;IAMvB,WAAW,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI;IAwDzC,SAAS,CAAC,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI;IAwEpF,2BAA2B,CAAC,KAAK,EAAE,eAAe,GAAG,iBAAiB;IAmBtE,eAAe,CAAC,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,mBAAmB,EAAE,IAAI,EAAE,iBAAiB,GAAG,MAAM;IAK/H,SAAS,IAAI,eAAe,EAAE;IAI9B,cAAc,CAAC,MAAM,GAAE,eAAe,EAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAcjF,OAAO,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC,GAAG,KAAK;IAcjF,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,eAAe;IAwC5E,OAAO,IAAI,IAAI;IAYf,SAAS,CAAC,OAAO,EAAE,eAAe,EAAE,OAAO,GAAE,eAAoB,GAAG,OAAO;IAmB3E,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IA0B/B,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IA+BjC,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAkBhC,MAAM,CAAC,eAAe,GAAE,OAAO,GAAG,IAAW,EAAE,EAAE,KAAa,EAAE,GAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAO,GAAG,eAAe,EAAE;IAkB9G,cAAc,IAAI,IAAI;IAOtB,iBAAiB,IAAI,IAAI;IAYzB,oBAAoB,IAAI,IAAI;IAQ5B,SAAS,CAAC,MAAM,EAAE,QAAQ,GAAG,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,IAAI;IAO/F,YAAY,CACR,IAAI,EAAE,MAAM,EACZ,iBAAiB,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,OAAO,EACtD,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,MAAM,GAClD,IAAI;IAOP,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;CAGtC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@verbb/formie-browser",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.7",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"module": "./dist/index.js",
|
|
@@ -70,7 +70,7 @@
|
|
|
70
70
|
"@placekit/autocomplete-js": "^2.2.1",
|
|
71
71
|
"@uppy/core": "^5.2.0",
|
|
72
72
|
"@uppy/xhr-upload": "^5.2.0",
|
|
73
|
-
"@verbb/formie-core": "1.0.
|
|
73
|
+
"@verbb/formie-core": "1.0.7",
|
|
74
74
|
"expression-language": "^2.5.4",
|
|
75
75
|
"flatpickr": "^4.6.13",
|
|
76
76
|
"friendly-challenge": "^0.9.19",
|
|
@@ -11,6 +11,7 @@ import type { FormieModuleDefinition, FormieModuleInstance } from '#contracts/mo
|
|
|
11
11
|
import type { FormEndpointPayload, FormModuleManifest, FormSubmitResult } from '#contracts/schema';
|
|
12
12
|
import type { ThemeClassMap } from '#contracts/theme';
|
|
13
13
|
import { dispatchFormieDomEvent } from '#core/dom-events';
|
|
14
|
+
import { getErrorAriaLivePreference } from '#core/error-aria-live';
|
|
14
15
|
import { dispatchPageClientEventForSubmit } from '#core/page-client-event';
|
|
15
16
|
import { syncPageTabErrors } from '#core/page-tab-errors';
|
|
16
17
|
import {
|
|
@@ -27,11 +28,13 @@ import { loadModulesFromManifest } from '#modules/loader';
|
|
|
27
28
|
import { registerThemeClassMap } from '#theme/theme-classes';
|
|
28
29
|
import { runSubmitPipeline } from '#submit/pipeline';
|
|
29
30
|
import { clearSubmissionOnUnload, requestGraphqlRender, requestRefreshTokens, requestRender, requestSetPage } from '#transport/forms-api';
|
|
31
|
+
import { ensureFormStartedAt } from '#utils/form-started-at';
|
|
30
32
|
import { createDebug } from '#utils/debug';
|
|
31
33
|
import { createFormUnloadWarningGuard } from '#utils/unload-warning';
|
|
32
34
|
import { getValidationScope } from '#validation/scope';
|
|
33
35
|
import { FormieValidator } from '#validation/validator';
|
|
34
36
|
import { bindSubmitReadiness } from '#validation/submit-readiness';
|
|
37
|
+
import { bindEnterKeyGuard } from '#validation/enter-key-guard';
|
|
35
38
|
|
|
36
39
|
type InternalInstanceState = {
|
|
37
40
|
options: FormMountOptions;
|
|
@@ -989,6 +992,7 @@ export function createFormieClient(): FormieClient {
|
|
|
989
992
|
|
|
990
993
|
const validator = form ? new FormieValidator(form, {
|
|
991
994
|
live: parseBooleanDatasetValue(form.dataset.formieValidationOnFocus),
|
|
995
|
+
errorAriaLive: getErrorAriaLivePreference(form),
|
|
992
996
|
errorMessage: form.dataset.formieErrorMessage || '',
|
|
993
997
|
fieldContainerErrorClass: resolvedThemeClassMap.fieldLayoutError || [],
|
|
994
998
|
inputErrorClass: resolvedThemeClassMap.fieldControlError || [],
|
|
@@ -1014,6 +1018,8 @@ export function createFormieClient(): FormieClient {
|
|
|
1014
1018
|
}
|
|
1015
1019
|
|
|
1016
1020
|
if (form) {
|
|
1021
|
+
ensureFormStartedAt(form);
|
|
1022
|
+
|
|
1017
1023
|
if (renderPayload || normalizedOptions.endpoint || (target as HTMLElement).dataset.formieEndpoint) {
|
|
1018
1024
|
normalizeHeadlessManagedUrls(target, form, normalizedOptions);
|
|
1019
1025
|
}
|
|
@@ -1166,6 +1172,7 @@ export function createFormieClient(): FormieClient {
|
|
|
1166
1172
|
|
|
1167
1173
|
if (validator) {
|
|
1168
1174
|
unbinds.push(bindSubmitReadiness(form, validator, target));
|
|
1175
|
+
unbinds.push(bindEnterKeyGuard(form));
|
|
1169
1176
|
}
|
|
1170
1177
|
|
|
1171
1178
|
await refreshTokensIfNeeded(target, normalizedOptions, form);
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
export type ErrorAriaLivePreference = 'polite' | 'assertive' | 'off';
|
|
2
|
+
|
|
3
|
+
export function getErrorAriaLivePreference(form: HTMLFormElement): ErrorAriaLivePreference {
|
|
4
|
+
const value = (form.dataset.formieErrorAriaLive || 'polite').trim().toLowerCase();
|
|
5
|
+
|
|
6
|
+
if (value === 'assertive' || value === 'off') {
|
|
7
|
+
return value;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
return 'polite';
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export function resolveValidationErrorAriaLive(
|
|
14
|
+
preference: ErrorAriaLivePreference,
|
|
15
|
+
submitted: boolean,
|
|
16
|
+
): 'polite' | 'assertive' | null {
|
|
17
|
+
if (preference === 'off') {
|
|
18
|
+
return null;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
if (!submitted) {
|
|
22
|
+
return 'polite';
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
return preference;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export function resolveSubmitErrorAriaLive(preference: ErrorAriaLivePreference): 'polite' | 'assertive' | null {
|
|
29
|
+
if (preference === 'off') {
|
|
30
|
+
return null;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
return preference;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
export function applyErrorAriaLive(element: HTMLElement, ariaLive: 'polite' | 'assertive' | null): void {
|
|
37
|
+
if (ariaLive) {
|
|
38
|
+
element.setAttribute('aria-live', ariaLive);
|
|
39
|
+
element.setAttribute('aria-atomic', 'true');
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
element.removeAttribute('aria-live');
|
|
44
|
+
element.removeAttribute('aria-atomic');
|
|
45
|
+
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { FormAction } from '#contracts/common';
|
|
2
2
|
import type { FormSubmitResult } from '#contracts/schema';
|
|
3
|
+
import { dispatchFormieDomEvent } from '#core/dom-events';
|
|
3
4
|
import { dispatchPageClientEventForSubmit } from '#core/page-client-event';
|
|
4
5
|
import { syncPageTabErrors } from '#core/page-tab-errors';
|
|
5
6
|
import { addThemeClasses, removeThemeClasses, toggleThemeClasses } from '#theme/theme-classes';
|
|
@@ -576,6 +577,9 @@ export function applySubmitResultState(form: HTMLFormElement, result: FormSubmit
|
|
|
576
577
|
const validator = formWithValidationApi.formieValidation;
|
|
577
578
|
validator?.resetLiveState();
|
|
578
579
|
applyPageState(form, result.nextPage.id);
|
|
580
|
+
dispatchFormieDomEvent(form, 'formie:page:navigate:after', {
|
|
581
|
+
pageId: result.nextPage.id,
|
|
582
|
+
});
|
|
579
583
|
debug.log('Advanced to next page.', {
|
|
580
584
|
nextPageId: result.nextPage.id,
|
|
581
585
|
});
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { FormSubmitResult } from '#contracts/schema';
|
|
2
|
+
import { applyErrorAriaLive, getErrorAriaLivePreference, resolveSubmitErrorAriaLive } from '#core/error-aria-live';
|
|
2
3
|
import { ensureFieldErrorContainer as resolveFieldErrorContainer } from '#core/field-error-container';
|
|
3
4
|
import { syncPageTabErrors } from '#core/page-tab-errors';
|
|
4
5
|
import { focusFirstValidationError } from '#core/validation-focus';
|
|
@@ -124,8 +125,10 @@ function ensureFormErrorMessageContainer(form: HTMLFormElement, container: HTMLE
|
|
|
124
125
|
// Form-level errors use a live region because they are often the only output
|
|
125
126
|
// for submit-stage failures such as provider or transport errors.
|
|
126
127
|
messageContainer.setAttribute('role', 'alert');
|
|
127
|
-
|
|
128
|
-
|
|
128
|
+
applyErrorAriaLive(
|
|
129
|
+
messageContainer,
|
|
130
|
+
resolveSubmitErrorAriaLive(getErrorAriaLivePreference(form)),
|
|
131
|
+
);
|
|
129
132
|
|
|
130
133
|
return messageContainer;
|
|
131
134
|
}
|
|
@@ -295,6 +298,8 @@ function appendDescribedBy(input: HTMLElement, describedById: string): void {
|
|
|
295
298
|
}
|
|
296
299
|
|
|
297
300
|
export function renderFieldErrors(form: HTMLFormElement, fieldErrors: Record<string, string[]>): void {
|
|
301
|
+
const errorAriaLive = resolveSubmitErrorAriaLive(getErrorAriaLivePreference(form));
|
|
302
|
+
|
|
298
303
|
Object.entries(fieldErrors).forEach(([handle, messages]) => {
|
|
299
304
|
const fieldNode = form.querySelector(`[data-formie-field-handle="${handle}"]`);
|
|
300
305
|
|
|
@@ -307,8 +312,7 @@ export function renderFieldErrors(form: HTMLFormElement, fieldErrors: Record<str
|
|
|
307
312
|
? container.id
|
|
308
313
|
: `${handle}-errors`;
|
|
309
314
|
container.id = containerId;
|
|
310
|
-
container
|
|
311
|
-
container.setAttribute('aria-atomic', 'true');
|
|
315
|
+
applyErrorAriaLive(container, errorAriaLive);
|
|
312
316
|
addThemeClasses(fieldNode as HTMLElement, form, 'fieldLayoutError');
|
|
313
317
|
(fieldNode as HTMLElement).setAttribute('data-formie-field-has-error', 'true');
|
|
314
318
|
|
|
@@ -436,6 +436,10 @@ export function createManagedCaptchaModule<
|
|
|
436
436
|
return;
|
|
437
437
|
}
|
|
438
438
|
|
|
439
|
+
// Reconcile immediately so captcha placeholders on the newly
|
|
440
|
+
// visible page are mounted before screen-stage policy runs.
|
|
441
|
+
visibility.reconcileImmediate();
|
|
442
|
+
|
|
439
443
|
// By the time provider `screen()` runs, the widget is
|
|
440
444
|
// guaranteed to be mounted and the active placeholder is
|
|
441
445
|
// resolved. That lets provider code focus on challenge
|
|
@@ -17,6 +17,7 @@ type Cleanup = () => void;
|
|
|
17
17
|
type ObserveVisiblePlaceholdersResult = {
|
|
18
18
|
cleanup: Cleanup;
|
|
19
19
|
reconcile: () => void;
|
|
20
|
+
reconcileImmediate: () => void;
|
|
20
21
|
getVisible: () => HTMLElement[];
|
|
21
22
|
};
|
|
22
23
|
|
|
@@ -115,7 +116,12 @@ const CAPTCHA_VISIBILITY_EVENTS = [
|
|
|
115
116
|
'formie:page:navigate',
|
|
116
117
|
'formie:page:navigate:after',
|
|
117
118
|
'formie:submit:result',
|
|
118
|
-
];
|
|
119
|
+
] as const;
|
|
120
|
+
|
|
121
|
+
const CAPTCHA_IMMEDIATE_RECONCILE_EVENTS = new Set<string>([
|
|
122
|
+
'formie:page:navigate',
|
|
123
|
+
'formie:page:navigate:after',
|
|
124
|
+
]);
|
|
119
125
|
|
|
120
126
|
function bindDomEvent(target: EventTarget, eventName: string, callback: EventListener): Cleanup {
|
|
121
127
|
target.addEventListener(eventName, callback);
|
|
@@ -152,7 +158,7 @@ function isElementVisible(target: Element): target is HTMLElement {
|
|
|
152
158
|
|
|
153
159
|
const style = window.getComputedStyle(target);
|
|
154
160
|
|
|
155
|
-
return style.display !== 'none' && style.visibility !== 'hidden';
|
|
161
|
+
return style.display !== 'none' && style.visibility !== 'hidden' && target.getClientRects().length > 0;
|
|
156
162
|
}
|
|
157
163
|
|
|
158
164
|
function getPrimaryPlaceholder(root: Element, selector: string): HTMLElement | null {
|
|
@@ -271,6 +277,11 @@ function observeVisiblePlaceholders(
|
|
|
271
277
|
}),
|
|
272
278
|
...CAPTCHA_VISIBILITY_EVENTS.map((eventName) => {
|
|
273
279
|
return bindDomEvent(root, eventName, () => {
|
|
280
|
+
if (CAPTCHA_IMMEDIATE_RECONCILE_EVENTS.has(eventName)) {
|
|
281
|
+
reconcileNow();
|
|
282
|
+
return;
|
|
283
|
+
}
|
|
284
|
+
|
|
274
285
|
reconcile();
|
|
275
286
|
});
|
|
276
287
|
}),
|
|
@@ -292,6 +303,7 @@ function observeVisiblePlaceholders(
|
|
|
292
303
|
visible.clear();
|
|
293
304
|
},
|
|
294
305
|
reconcile,
|
|
306
|
+
reconcileImmediate: reconcileNow,
|
|
295
307
|
getVisible: () => {
|
|
296
308
|
return queryCaptchaPlaceholders(root, selector).filter((placeholder) => isElementVisible(placeholder));
|
|
297
309
|
},
|
|
@@ -4,6 +4,7 @@ import {
|
|
|
4
4
|
import { CAPTCHA_EXECUTE_WAIT_FOR_VALUE_MS } from '#modules/captchas/constants';
|
|
5
5
|
import {
|
|
6
6
|
loadRecaptchaGlobal,
|
|
7
|
+
whenRecaptchaReady,
|
|
7
8
|
type RecaptchaGlobal,
|
|
8
9
|
type RecaptchaProviderOptions,
|
|
9
10
|
} from '#modules/captchas/recaptcha-shared';
|
|
@@ -94,19 +95,21 @@ export const recaptchaEnterpriseModule = defineCaptchaModule<RecaptchaEnterprise
|
|
|
94
95
|
return;
|
|
95
96
|
}
|
|
96
97
|
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
98
|
+
await whenRecaptchaReady(api, async() => {
|
|
99
|
+
if (provider.enterpriseType === 'score' || provider.enterpriseType === 'policy') {
|
|
100
|
+
// Score and policy-based keys execute by site key and can resolve
|
|
101
|
+
// directly to a token. We write that token into the shared transport
|
|
102
|
+
// layer so the backend can validate it in the usual way.
|
|
103
|
+
const token = await enterpriseApi.execute(provider.siteKey || '', { action: provider.action || 'submit' });
|
|
102
104
|
|
|
103
|
-
|
|
104
|
-
|
|
105
|
+
if (typeof token === 'string' && token.trim() !== '') {
|
|
106
|
+
services.tokens.write(token.trim());
|
|
107
|
+
}
|
|
108
|
+
} else {
|
|
109
|
+
// Fallback branch for any future Enterprise widget-like mode.
|
|
110
|
+
enterpriseApi.execute(widget);
|
|
105
111
|
}
|
|
106
|
-
}
|
|
107
|
-
// Fallback branch for any future Enterprise widget-like mode.
|
|
108
|
-
enterpriseApi.execute(widget);
|
|
109
|
-
}
|
|
112
|
+
});
|
|
110
113
|
|
|
111
114
|
const hasToken = await services.tokens.wait(CAPTCHA_EXECUTE_WAIT_FOR_VALUE_MS);
|
|
112
115
|
|
|
@@ -67,3 +67,17 @@ export async function loadRecaptchaGlobal(
|
|
|
67
67
|
timeoutMs: CAPTCHA_PROVIDER_LOAD_TIMEOUT_MS,
|
|
68
68
|
});
|
|
69
69
|
}
|
|
70
|
+
|
|
71
|
+
export function whenRecaptchaReady(api: RecaptchaGlobal, callback: () => void | Promise<void>): Promise<void> {
|
|
72
|
+
const readyApi = api.enterprise || api;
|
|
73
|
+
|
|
74
|
+
return new Promise((resolve, reject) => {
|
|
75
|
+
try {
|
|
76
|
+
readyApi.ready(() => {
|
|
77
|
+
Promise.resolve(callback()).then(resolve).catch(reject);
|
|
78
|
+
});
|
|
79
|
+
} catch (error) {
|
|
80
|
+
reject(error);
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
}
|
|
@@ -4,6 +4,7 @@ import {
|
|
|
4
4
|
import { CAPTCHA_EXECUTE_WAIT_FOR_VALUE_MS } from '#modules/captchas/constants';
|
|
5
5
|
import {
|
|
6
6
|
loadRecaptchaGlobal,
|
|
7
|
+
whenRecaptchaReady,
|
|
7
8
|
type RecaptchaGlobal,
|
|
8
9
|
type RecaptchaProviderOptions,
|
|
9
10
|
} from '#modules/captchas/recaptcha-shared';
|
|
@@ -40,11 +41,13 @@ export const recaptchaV3Module = defineCaptchaModule<RecaptchaProviderOptions, R
|
|
|
40
41
|
|
|
41
42
|
// v3 returns its token directly from `execute()`, unlike widget-based
|
|
42
43
|
// captchas that signal completion later via callbacks.
|
|
43
|
-
|
|
44
|
+
await whenRecaptchaReady(api, async() => {
|
|
45
|
+
const token = await api.execute(provider.siteKey || '', { action: provider.action || 'submit' });
|
|
44
46
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
47
|
+
if (typeof token === 'string' && token.trim() !== '') {
|
|
48
|
+
services.tokens.write(token.trim());
|
|
49
|
+
}
|
|
50
|
+
});
|
|
48
51
|
|
|
49
52
|
// We still wait on the shared token layer so the module follows the
|
|
50
53
|
// same transport contract as every other captcha provider.
|
|
@@ -14,6 +14,7 @@ type TurnstileGlobal = {
|
|
|
14
14
|
render: (container: HTMLElement, options: Record<string, unknown>) => string;
|
|
15
15
|
execute: (widgetId: string) => void;
|
|
16
16
|
reset: (widgetId: string) => void;
|
|
17
|
+
remove: (widgetId: string) => void;
|
|
17
18
|
};
|
|
18
19
|
|
|
19
20
|
// Provider-specific options only. Generic captcha concerns are handled by the
|
|
@@ -123,9 +124,14 @@ export const turnstileModule = defineCaptchaModule<TurnstileProviderOptions, Tur
|
|
|
123
124
|
});
|
|
124
125
|
},
|
|
125
126
|
unmount: ({ api, widget, services }) => {
|
|
126
|
-
//
|
|
127
|
-
//
|
|
128
|
-
api.
|
|
127
|
+
// Remove the widget before clearing placeholder DOM so Turnstile does not
|
|
128
|
+
// log errors about orphaned challenge iframes during remounts.
|
|
129
|
+
if (typeof api.remove === 'function') {
|
|
130
|
+
api.remove(widget);
|
|
131
|
+
} else {
|
|
132
|
+
api.reset(widget);
|
|
133
|
+
}
|
|
134
|
+
|
|
129
135
|
services.tokens.clear();
|
|
130
136
|
},
|
|
131
137
|
});
|
|
@@ -72,7 +72,49 @@ function setVisibilityState(node: Element, hidden: boolean): boolean {
|
|
|
72
72
|
return wasHidden !== hidden;
|
|
73
73
|
}
|
|
74
74
|
|
|
75
|
+
const SUBMIT_CONTROL_SELECTOR = 'button[type="submit"], button[data-formie-action], input[type="submit"]';
|
|
76
|
+
|
|
77
|
+
function syncControlDisabledState(control: Element, hidden: boolean): void {
|
|
78
|
+
if (!(control instanceof HTMLButtonElement || control instanceof HTMLInputElement)) {
|
|
79
|
+
return;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
if (hidden) {
|
|
83
|
+
if (!control.hasAttribute(CONDITION_DISABLED_ATTR)) {
|
|
84
|
+
if (control.hasAttribute('disabled')) {
|
|
85
|
+
control.setAttribute(PRESERVED_DISABLED_ATTR, 'true');
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
control.setAttribute(CONDITION_DISABLED_ATTR, 'true');
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
control.setAttribute('disabled', 'true');
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
if (!control.hasAttribute(CONDITION_DISABLED_ATTR)) {
|
|
96
|
+
return;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
if (control.hasAttribute(PRESERVED_DISABLED_ATTR)) {
|
|
100
|
+
control.setAttribute('disabled', 'true');
|
|
101
|
+
control.removeAttribute(PRESERVED_DISABLED_ATTR);
|
|
102
|
+
} else {
|
|
103
|
+
control.removeAttribute('disabled');
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
control.removeAttribute(CONDITION_DISABLED_ATTR);
|
|
107
|
+
}
|
|
108
|
+
|
|
75
109
|
function syncDisabledState(node: Element, hidden: boolean): void {
|
|
110
|
+
if (node.matches(SUBMIT_CONTROL_SELECTOR)) {
|
|
111
|
+
syncControlDisabledState(node, hidden);
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
node.querySelectorAll(SUBMIT_CONTROL_SELECTOR).forEach((control) => {
|
|
115
|
+
syncControlDisabledState(control, hidden);
|
|
116
|
+
});
|
|
117
|
+
|
|
76
118
|
node.querySelectorAll('input, textarea, select').forEach((input) => {
|
|
77
119
|
if (hidden) {
|
|
78
120
|
if (!input.hasAttribute(CONDITION_DISABLED_ATTR)) {
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
const FORM_STARTED_AT_STORAGE_PREFIX = 'formie:formStartedAt:';
|
|
2
|
+
|
|
3
|
+
export function ensureFormStartedAt(form: HTMLFormElement): void {
|
|
4
|
+
const startedAtInput = form.querySelector('input[name="formStartedAt"]') as HTMLInputElement | null;
|
|
5
|
+
|
|
6
|
+
if (!startedAtInput) {
|
|
7
|
+
return;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
const renderIdInput = form.querySelector('input[name="renderId"]') as HTMLInputElement | null;
|
|
11
|
+
const renderId = renderIdInput?.value?.trim() ?? '';
|
|
12
|
+
const storageKey = renderId ? `${FORM_STARTED_AT_STORAGE_PREFIX}${renderId}` : null;
|
|
13
|
+
|
|
14
|
+
let startedAt = storageKey ? sessionStorage.getItem(storageKey) : null;
|
|
15
|
+
|
|
16
|
+
if (!startedAt) {
|
|
17
|
+
startedAt = String(Date.now());
|
|
18
|
+
|
|
19
|
+
if (storageKey) {
|
|
20
|
+
sessionStorage.setItem(storageKey, startedAt);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
startedAtInput.value = startedAt;
|
|
25
|
+
}
|