gg-wf-scripts 8.3.0 → 8.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/form-action-engine.js +13 -17
- package/dist/form-action-engine.js.map +1 -1
- package/dist/helpers/dom.d.ts +6 -0
- package/dist/helpers/dom.js +17 -0
- package/dist/helpers/dom.js.map +1 -1
- package/dist/helpers/form-field.d.ts +6 -0
- package/dist/helpers/form-field.js +10 -0
- package/dist/helpers/form-field.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +1 -1
|
@@ -1,32 +1,30 @@
|
|
|
1
1
|
import { ATTR, SEL } from "./attrs.js";
|
|
2
|
-
import { populateFields } from "./helpers/dom.js";
|
|
3
|
-
import {
|
|
2
|
+
import { populateFields, querySelectorAllDeep } from "./helpers/dom.js";
|
|
3
|
+
import { findInputsDeep } from "./helpers/form-field.js";
|
|
4
4
|
import { runHandler } from "./helpers/run-handler.js";
|
|
5
5
|
import { onElement } from "./dom-observer.js";
|
|
6
6
|
import { getParams } from "./query-params.js";
|
|
7
7
|
function clearFieldError(form, name) {
|
|
8
|
-
|
|
8
|
+
findInputsDeep(form, name).forEach((el) => {
|
|
9
9
|
el.removeAttribute(ATTR.formFieldInvalid);
|
|
10
10
|
});
|
|
11
11
|
const escaped = CSS.escape(name);
|
|
12
|
-
form
|
|
13
|
-
.querySelectorAll(`[${ATTR.formFieldError}="${escaped}"]`)
|
|
14
|
-
.forEach((el) => {
|
|
12
|
+
querySelectorAllDeep(form, `[${ATTR.formFieldError}="${escaped}"]`).forEach((el) => {
|
|
15
13
|
el.textContent = "";
|
|
16
14
|
});
|
|
17
15
|
}
|
|
18
16
|
function clearFormErrors(form) {
|
|
19
17
|
form.removeAttribute(ATTR.formHasError);
|
|
20
|
-
form
|
|
18
|
+
querySelectorAllDeep(form, SEL.formFieldInvalid).forEach((el) => {
|
|
21
19
|
el.removeAttribute(ATTR.formFieldInvalid);
|
|
22
20
|
});
|
|
23
|
-
form
|
|
21
|
+
querySelectorAllDeep(form, SEL.formFieldError).forEach((el) => {
|
|
24
22
|
el.textContent = "";
|
|
25
23
|
});
|
|
26
|
-
form
|
|
24
|
+
querySelectorAllDeep(form, SEL.formError).forEach((el) => {
|
|
27
25
|
el.textContent = "";
|
|
28
26
|
});
|
|
29
|
-
form
|
|
27
|
+
querySelectorAllDeep(form, SEL.formErrorList).forEach((list) => {
|
|
30
28
|
const template = list.querySelector(SEL.listTemplate);
|
|
31
29
|
Array.from(list.children).forEach((child) => {
|
|
32
30
|
if (child !== template)
|
|
@@ -38,19 +36,17 @@ function applyFieldErrors(form, fieldErrors) {
|
|
|
38
36
|
fieldErrors.forEach(({ name, message }) => {
|
|
39
37
|
if (!name)
|
|
40
38
|
return;
|
|
41
|
-
|
|
39
|
+
findInputsDeep(form, name).forEach((el) => {
|
|
42
40
|
el.setAttribute(ATTR.formFieldInvalid, "true");
|
|
43
41
|
});
|
|
44
42
|
const escaped = CSS.escape(name);
|
|
45
|
-
form
|
|
46
|
-
.querySelectorAll(`[${ATTR.formFieldError}="${escaped}"]`)
|
|
47
|
-
.forEach((el) => {
|
|
43
|
+
querySelectorAllDeep(form, `[${ATTR.formFieldError}="${escaped}"]`).forEach((el) => {
|
|
48
44
|
el.textContent = message ?? "";
|
|
49
45
|
});
|
|
50
46
|
});
|
|
51
47
|
}
|
|
52
48
|
function applyErrorList(form, fieldErrors) {
|
|
53
|
-
form
|
|
49
|
+
querySelectorAllDeep(form, SEL.formErrorList).forEach((list) => {
|
|
54
50
|
const template = list.querySelector(SEL.listTemplate);
|
|
55
51
|
if (!template) {
|
|
56
52
|
console.warn(`[${ATTR.formErrorList}] no [${ATTR.listTemplate}] inside list:`, list);
|
|
@@ -69,7 +65,7 @@ function applyFormError(form, error) {
|
|
|
69
65
|
if (error == null)
|
|
70
66
|
return;
|
|
71
67
|
const message = typeof error === "string" ? error : String(error);
|
|
72
|
-
form
|
|
68
|
+
querySelectorAllDeep(form, SEL.formError).forEach((el) => {
|
|
73
69
|
el.textContent = message;
|
|
74
70
|
});
|
|
75
71
|
}
|
|
@@ -123,7 +119,7 @@ function bindFieldClearOnInput(form) {
|
|
|
123
119
|
return;
|
|
124
120
|
form.__ggFormErrorBound = true;
|
|
125
121
|
form.addEventListener("input", (e) => {
|
|
126
|
-
const target = e.
|
|
122
|
+
const target = e.composedPath()[0];
|
|
127
123
|
if (!(target instanceof Element))
|
|
128
124
|
return;
|
|
129
125
|
const name = target.getAttribute("name");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form-action-engine.js","sourceRoot":"","sources":["../src/form-action-engine.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"form-action-engine.js","sourceRoot":"","sources":["../src/form-action-engine.ts"],"names":[],"mappings":"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"}
|
package/dist/helpers/dom.d.ts
CHANGED
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* querySelectorAll that recurses into open shadow roots. Mirrors how
|
|
3
|
+
* collectShadowFields gathers FormData from shadow-DOM inputs, so the
|
|
4
|
+
* form-action engine can surface error state on those same inputs.
|
|
5
|
+
*/
|
|
6
|
+
export declare function querySelectorAllDeep<T extends Element = Element>(scope: ParentNode, selector: string): T[];
|
|
1
7
|
/**
|
|
2
8
|
* Set textContent on every [gg-field] descendant of `root` to the value
|
|
3
9
|
* at that field's dot-path on `record`. Null / missing values are left
|
package/dist/helpers/dom.js
CHANGED
|
@@ -1,6 +1,23 @@
|
|
|
1
1
|
import { ATTR } from "../attrs.js";
|
|
2
2
|
import { getPath } from "./path.js";
|
|
3
3
|
import { setVisibility } from "./visibility.js";
|
|
4
|
+
/**
|
|
5
|
+
* querySelectorAll that recurses into open shadow roots. Mirrors how
|
|
6
|
+
* collectShadowFields gathers FormData from shadow-DOM inputs, so the
|
|
7
|
+
* form-action engine can surface error state on those same inputs.
|
|
8
|
+
*/
|
|
9
|
+
export function querySelectorAllDeep(scope, selector) {
|
|
10
|
+
const results = [];
|
|
11
|
+
const visit = (root) => {
|
|
12
|
+
root.querySelectorAll(selector).forEach((el) => results.push(el));
|
|
13
|
+
root.querySelectorAll("*").forEach((el) => {
|
|
14
|
+
if (el.shadowRoot)
|
|
15
|
+
visit(el.shadowRoot);
|
|
16
|
+
});
|
|
17
|
+
};
|
|
18
|
+
visit(scope);
|
|
19
|
+
return results;
|
|
20
|
+
}
|
|
4
21
|
/**
|
|
5
22
|
* Set textContent on every [gg-field] descendant of `root` to the value
|
|
6
23
|
* at that field's dot-path on `record`. Null / missing values are left
|
package/dist/helpers/dom.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dom.js","sourceRoot":"","sources":["../../src/helpers/dom.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dom.js","sourceRoot":"","sources":["../../src/helpers/dom.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACnC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAClC,KAAiB,EACjB,QAAgB;IAEhB,MAAM,OAAO,GAAQ,EAAE,CAAC;IACxB,MAAM,KAAK,GAAG,CAAC,IAAgB,EAAQ,EAAE;QACvC,IAAI,CAAC,gBAAgB,CAAI,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACrE,IAAI,CAAC,gBAAgB,CAAc,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;YACrD,IAAI,EAAE,CAAC,UAAU;gBAAE,KAAK,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IACF,KAAK,CAAC,KAAK,CAAC,CAAC;IACb,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,IAAa,EAAE,MAAe;IAC3D,IAAI,CAAC,gBAAgB,CAAc,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;QAC9D,MAAM,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;QACzC,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACpC,IAAI,KAAK,IAAI,IAAI;YAAE,EAAE,CAAC,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,EAAW,EAAE,KAAc;IACxD,EAAE,CAAC,YAAY,CAAC,iBAAiB,EAAE,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;AACzE,CAAC;AAED,SAAS,SAAS,CAAC,KAAa,EAAE,GAAW;IAC3C,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;AAC/C,CAAC;AAED,SAAS,WAAW,CAAC,QAAgB,EAAE,KAAa;IAClD,MAAM,UAAU,GAAG,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACzC,MAAM,SAAS,GAAG,SAAS,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IAC3C,IAAI,SAAS,CAAC,MAAM,KAAK,UAAU,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IACzD,OAAO,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;QACjC,MAAM,YAAY,GAAG,SAAS,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAC1C,OAAO,YAAY,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB,CAC9B,SAAkB,EAClB,OAA+B;IAE/B,MAAM,KAAK,GAAG,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;IAC7D,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAC/D,MAAM,OAAO,GAAG,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QAC/C,IAAI,CAAC,CAAC,KAAK,YAAY,WAAW,CAAC;YAAE,OAAO;QAC5C,MAAM,QAAQ,GAAG,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/C,MAAM,SAAS,GAAG,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACvD,IAAI,QAAQ,IAAI,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO;QAC3C,MAAM,WAAW,GAAG,QAAQ,IAAI,IAAI,IAAI,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QACrE,MAAM,cAAc,GAAG,SAAS,IAAI,OAAO,CAAC;QAC5C,MAAM,MAAM,GAAG,WAAW,IAAI,cAAc,CAAC;QAC7C,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC3C,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -5,6 +5,12 @@ export type FieldInput = HTMLInputElement | HTMLSelectElement | HTMLTextAreaElem
|
|
|
5
5
|
* we need to read or write a form field by its `name` attribute.
|
|
6
6
|
*/
|
|
7
7
|
export declare function findInputs(scope: ParentNode, name: string): FieldInput[];
|
|
8
|
+
/**
|
|
9
|
+
* Like findInputs, but recurses into open shadow roots so the form-action
|
|
10
|
+
* engine can mark/clear invalid state on shadow-DOM inputs that submit via
|
|
11
|
+
* collectShadowFields.
|
|
12
|
+
*/
|
|
13
|
+
export declare function findInputsDeep(scope: ParentNode, name: string): FieldInput[];
|
|
8
14
|
/**
|
|
9
15
|
* Read the current value of a named field. For radio/checkbox groups, returns
|
|
10
16
|
* the value of the checked input (or null if none checked). Returns null when
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { querySelectorAllDeep } from "./dom.js";
|
|
1
2
|
/**
|
|
2
3
|
* Find every named input/select/textarea matching `name` within `scope`.
|
|
3
4
|
* Used by the data engine, form-action engine, and form-visibility — anywhere
|
|
@@ -7,6 +8,15 @@ export function findInputs(scope, name) {
|
|
|
7
8
|
const escaped = CSS.escape(name);
|
|
8
9
|
return Array.from(scope.querySelectorAll(`input[name="${escaped}"], select[name="${escaped}"], textarea[name="${escaped}"]`));
|
|
9
10
|
}
|
|
11
|
+
/**
|
|
12
|
+
* Like findInputs, but recurses into open shadow roots so the form-action
|
|
13
|
+
* engine can mark/clear invalid state on shadow-DOM inputs that submit via
|
|
14
|
+
* collectShadowFields.
|
|
15
|
+
*/
|
|
16
|
+
export function findInputsDeep(scope, name) {
|
|
17
|
+
const escaped = CSS.escape(name);
|
|
18
|
+
return querySelectorAllDeep(scope, `input[name="${escaped}"], select[name="${escaped}"], textarea[name="${escaped}"]`);
|
|
19
|
+
}
|
|
10
20
|
/**
|
|
11
21
|
* Read the current value of a named field. For radio/checkbox groups, returns
|
|
12
22
|
* the value of the checked input (or null if none checked). Returns null when
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form-field.js","sourceRoot":"","sources":["../../src/helpers/form-field.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"form-field.js","sourceRoot":"","sources":["../../src/helpers/form-field.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAOhD;;;;GAIG;AACH,MAAM,UAAU,UAAU,CAAC,KAAiB,EAAE,IAAY;IACxD,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACjC,OAAO,KAAK,CAAC,IAAI,CACf,KAAK,CAAC,gBAAgB,CACpB,eAAe,OAAO,oBAAoB,OAAO,sBAAsB,OAAO,IAAI,CACnF,CACF,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,KAAiB,EAAE,IAAY;IAC5D,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACjC,OAAO,oBAAoB,CACzB,KAAK,EACL,eAAe,OAAO,oBAAoB,OAAO,sBAAsB,OAAO,IAAI,CACnF,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,SAAS,CAAC,KAAiB,EAAE,IAAY;IACvD,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACvC,IAAI,CAAC,MAAM,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAEhC,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACxB,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IAC9D,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;QAC5C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,KAAK,YAAY,gBAAgB,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;gBACvD,OAAO,KAAK,CAAC,KAAK,CAAC;YACrB,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;AAC5B,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,UAAU,CACxB,KAAiB,EACjB,IAAY,EACZ,KAAc;IAEd,IAAI,KAAK,IAAI,IAAI;QAAE,OAAO;IAC1B,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;QACrC,IAAI,EAAE,YAAY,gBAAgB,EAAE,CAAC;YACnC,IAAI,EAAE,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBAC3B,EAAE,CAAC,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;YAC9B,CAAC;iBAAM,IAAI,EAAE,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBAC/B,EAAE,CAAC,OAAO,GAAG,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC,KAAK,CAAC,CAAC;YAClD,CAAC;iBAAM,CAAC;gBACN,EAAE,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;aAAM,CAAC;YACN,EAAE,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3B,CAAC;QACD,EAAE,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QACxD,EAAE,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;AACL,CAAC"}
|
package/dist/version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const VERSION = "8.
|
|
1
|
+
export declare const VERSION = "8.4.0";
|
package/dist/version.js
CHANGED