hotstaq 0.9.21 → 0.9.23
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/build/src/HotStaq.d.ts +61 -2
- package/build/src/HotStaq.d.ts.map +1 -1
- package/build/src/HotStaq.js +163 -75
- package/build/src/HotStaq.js.map +1 -1
- package/build/src/HotStaqRegisterComponent.d.ts.map +1 -1
- package/build/src/HotStaqRegisterComponent.js +9 -0
- package/build/src/HotStaqRegisterComponent.js.map +1 -1
- package/build/tsconfig.tsbuildinfo +1 -1
- package/build-web/HotStaq.js +2 -2
- package/build-web/HotStaq.min.js +262 -262
- package/package.json +1 -1
- package/src/HotStaq.ts +207 -109
- package/src/HotStaqRegisterComponent.ts +11 -1
package/build/src/HotStaq.d.ts
CHANGED
|
@@ -274,9 +274,23 @@ export declare class HotStaq implements IHotStaq {
|
|
|
274
274
|
*/
|
|
275
275
|
static onBeforeNavigate: (path: string) => boolean | Promise<boolean>;
|
|
276
276
|
/**
|
|
277
|
-
* Event fired after SPA navigation
|
|
277
|
+
* Event fired after an SPA navigation has rendered the new content,
|
|
278
|
+
* but before HotStaq executes that content's inline <script> tags.
|
|
279
|
+
*
|
|
280
|
+
* Return `false` to take ownership of running those scripts yourself —
|
|
281
|
+
* HotStaq will then skip its own execution pass. Returning `true`,
|
|
282
|
+
* `undefined`, or having no handler at all lets HotStaq execute them
|
|
283
|
+
* (the default), which is what makes inline page scripts run on SPA
|
|
284
|
+
* navigation. See `onAfterUseOutput` for the full-render equivalent.
|
|
285
|
+
*/
|
|
286
|
+
static onAfterNavigate: (path: string) => void | boolean | Promise<void | boolean>;
|
|
287
|
+
/**
|
|
288
|
+
* Event fired after `useOutput` has rendered a full document, but before
|
|
289
|
+
* HotStaq executes that document's inline <script> tags. Same return-value
|
|
290
|
+
* gate as `onAfterNavigate`: return `false` to run the scripts yourself;
|
|
291
|
+
* otherwise HotStaq executes them.
|
|
278
292
|
*/
|
|
279
|
-
static
|
|
293
|
+
static onAfterUseOutput: (output: string) => void | boolean | Promise<void | boolean>;
|
|
280
294
|
/**
|
|
281
295
|
* Override the framework's default 404 rendering.
|
|
282
296
|
*
|
|
@@ -448,6 +462,35 @@ export declare class HotStaq implements IHotStaq {
|
|
|
448
462
|
* - anything else → false
|
|
449
463
|
*/
|
|
450
464
|
static parseBoolean(value: any): boolean;
|
|
465
|
+
/**
|
|
466
|
+
* Check whether a value is a valid RFC-4122 UUID (versions 1-5).
|
|
467
|
+
*
|
|
468
|
+
* This is the same strict check the `UUID` validator enforces, exposed as
|
|
469
|
+
* a reusable boolean helper so client code can validate ids (e.g. a
|
|
470
|
+
* `?id=` URL parameter) without catching the validator's thrown HttpError.
|
|
471
|
+
*/
|
|
472
|
+
static isUUID(value: any): boolean;
|
|
473
|
+
/**
|
|
474
|
+
* The strict RFC-4122 (versions 1-5) UUID pattern shared by `isUUID` and
|
|
475
|
+
* the `UUID` validator.
|
|
476
|
+
*/
|
|
477
|
+
static uuidRegex: RegExp;
|
|
478
|
+
/**
|
|
479
|
+
* Remove elements already in the document that share an id with `subtree`
|
|
480
|
+
* (or any of its descendants).
|
|
481
|
+
*
|
|
482
|
+
* A component placed via `documentSelector` lands OUTSIDE its own <tag> —
|
|
483
|
+
* e.g. <admin-edit> appends its modal to <body>. On SPA navigation the
|
|
484
|
+
* <tag> upgrades again and appends a SECOND copy with the same id, leaving
|
|
485
|
+
* a stale orphan that id-based lookups (document.getElementById,
|
|
486
|
+
* querySelector('#id'), bootstrap.Modal.getInstance('#id')) resolve to
|
|
487
|
+
* instead of the live one. Call this with the incoming subtree BEFORE it is
|
|
488
|
+
* inserted so only the fresh copy survives.
|
|
489
|
+
*
|
|
490
|
+
* `subtree` is expected to still be detached at call time; the contains()
|
|
491
|
+
* guard keeps it (and anything inside it) safe regardless.
|
|
492
|
+
*/
|
|
493
|
+
static removeStaleDuplicateIds(subtree: HTMLElement): void;
|
|
451
494
|
/**
|
|
452
495
|
* Sanitize an HTML string.
|
|
453
496
|
*/
|
|
@@ -719,6 +762,22 @@ export declare class HotStaq implements IHotStaq {
|
|
|
719
762
|
* runtime-decision 404 logic, set `HotStaq.onRouteNotFound`.
|
|
720
763
|
*/
|
|
721
764
|
static displayDefault404(path: string): void;
|
|
765
|
+
/**
|
|
766
|
+
* Execute the <script> elements found within `root`.
|
|
767
|
+
*
|
|
768
|
+
* A <script> inserted into the DOM via `innerHTML` is inert — the HTML
|
|
769
|
+
* spec only runs a script when it is *inserted into the document with
|
|
770
|
+
* its content already present*. So after we swap new markup in (full
|
|
771
|
+
* render or SPA partial swap), its inline scripts never ran. For each
|
|
772
|
+
* not-yet-executed <script>, build a fresh element, copy `type`/`src`
|
|
773
|
+
* and — for inline scripts — set `.text` BEFORE insertion, then swap it
|
|
774
|
+
* in so the browser runs it.
|
|
775
|
+
*
|
|
776
|
+
* Each executed script is tagged `data-hotstaq-executed` and skipped on
|
|
777
|
+
* any later pass, so calling this twice (or alongside an app that runs
|
|
778
|
+
* some scripts itself) never double-fires one.
|
|
779
|
+
*/
|
|
780
|
+
protected static executeInlineScripts(root: Document | HTMLElement): Promise<void>;
|
|
722
781
|
/**
|
|
723
782
|
* Replace the current HTML page with the output.
|
|
724
783
|
* This is meant for web browser use only.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HotStaq.d.ts","sourceRoot":"","sources":["../../src/HotStaq.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"HotStaq.d.ts","sourceRoot":"","sources":["../../src/HotStaq.ts"],"names":[],"mappings":"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"}
|
package/build/src/HotStaq.js
CHANGED
|
@@ -343,8 +343,7 @@ class HotStaq {
|
|
|
343
343
|
throw new HotHttpError_1.HttpError(`UUID parameter '${key}' must be a string.`, 400);
|
|
344
344
|
}
|
|
345
345
|
HotStaq.baseValidator(options, key, validation, value, 100);
|
|
346
|
-
|
|
347
|
-
if (uuidRegex.test(value) === false)
|
|
346
|
+
if (HotStaq.isUUID(value) === false)
|
|
348
347
|
throw new HotHttpError_1.HttpError(`UUID parameter '${key}' must be a valid UUID.`, 400);
|
|
349
348
|
return ({ value: value });
|
|
350
349
|
};
|
|
@@ -571,6 +570,60 @@ class HotStaq {
|
|
|
571
570
|
}
|
|
572
571
|
return (false);
|
|
573
572
|
}
|
|
573
|
+
/**
|
|
574
|
+
* Check whether a value is a valid RFC-4122 UUID (versions 1-5).
|
|
575
|
+
*
|
|
576
|
+
* This is the same strict check the `UUID` validator enforces, exposed as
|
|
577
|
+
* a reusable boolean helper so client code can validate ids (e.g. a
|
|
578
|
+
* `?id=` URL parameter) without catching the validator's thrown HttpError.
|
|
579
|
+
*/
|
|
580
|
+
static isUUID(value) {
|
|
581
|
+
if (typeof (value) !== "string")
|
|
582
|
+
return (false);
|
|
583
|
+
return (HotStaq.uuidRegex.test(value));
|
|
584
|
+
}
|
|
585
|
+
/**
|
|
586
|
+
* Remove elements already in the document that share an id with `subtree`
|
|
587
|
+
* (or any of its descendants).
|
|
588
|
+
*
|
|
589
|
+
* A component placed via `documentSelector` lands OUTSIDE its own <tag> —
|
|
590
|
+
* e.g. <admin-edit> appends its modal to <body>. On SPA navigation the
|
|
591
|
+
* <tag> upgrades again and appends a SECOND copy with the same id, leaving
|
|
592
|
+
* a stale orphan that id-based lookups (document.getElementById,
|
|
593
|
+
* querySelector('#id'), bootstrap.Modal.getInstance('#id')) resolve to
|
|
594
|
+
* instead of the live one. Call this with the incoming subtree BEFORE it is
|
|
595
|
+
* inserted so only the fresh copy survives.
|
|
596
|
+
*
|
|
597
|
+
* `subtree` is expected to still be detached at call time; the contains()
|
|
598
|
+
* guard keeps it (and anything inside it) safe regardless.
|
|
599
|
+
*/
|
|
600
|
+
static removeStaleDuplicateIds(subtree) {
|
|
601
|
+
if ((subtree == null) || (typeof (document) === "undefined"))
|
|
602
|
+
return;
|
|
603
|
+
let ids = [];
|
|
604
|
+
if ((subtree.id != null) && (subtree.id !== ""))
|
|
605
|
+
ids.push(subtree.id);
|
|
606
|
+
let descendants = subtree.querySelectorAll("[id]");
|
|
607
|
+
for (let iIdx = 0; iIdx < descendants.length; iIdx++) {
|
|
608
|
+
let id = descendants[iIdx].getAttribute("id");
|
|
609
|
+
if ((id != null) && (id !== ""))
|
|
610
|
+
ids.push(id);
|
|
611
|
+
}
|
|
612
|
+
for (let iIdx = 0; iIdx < ids.length; iIdx++) {
|
|
613
|
+
let id = ids[iIdx];
|
|
614
|
+
// getElementById returns the first match in document order; loop so
|
|
615
|
+
// multiple accumulated orphans all get cleared. The guard bounds it.
|
|
616
|
+
let guard = 0;
|
|
617
|
+
let existing = document.getElementById(id);
|
|
618
|
+
while ((existing != null) && (existing !== subtree) &&
|
|
619
|
+
(subtree.contains(existing) === false) && (guard < 100)) {
|
|
620
|
+
if (existing.parentNode != null)
|
|
621
|
+
existing.parentNode.removeChild(existing);
|
|
622
|
+
existing = document.getElementById(id);
|
|
623
|
+
guard++;
|
|
624
|
+
}
|
|
625
|
+
}
|
|
626
|
+
}
|
|
574
627
|
/**
|
|
575
628
|
* Sanitize an HTML string.
|
|
576
629
|
*/
|
|
@@ -1858,6 +1911,67 @@ class HotStaq {
|
|
|
1858
1911
|
"</div></body></html>";
|
|
1859
1912
|
HotStaq.useOutput(html);
|
|
1860
1913
|
}
|
|
1914
|
+
/**
|
|
1915
|
+
* Execute the <script> elements found within `root`.
|
|
1916
|
+
*
|
|
1917
|
+
* A <script> inserted into the DOM via `innerHTML` is inert — the HTML
|
|
1918
|
+
* spec only runs a script when it is *inserted into the document with
|
|
1919
|
+
* its content already present*. So after we swap new markup in (full
|
|
1920
|
+
* render or SPA partial swap), its inline scripts never ran. For each
|
|
1921
|
+
* not-yet-executed <script>, build a fresh element, copy `type`/`src`
|
|
1922
|
+
* and — for inline scripts — set `.text` BEFORE insertion, then swap it
|
|
1923
|
+
* in so the browser runs it.
|
|
1924
|
+
*
|
|
1925
|
+
* Each executed script is tagged `data-hotstaq-executed` and skipped on
|
|
1926
|
+
* any later pass, so calling this twice (or alongside an app that runs
|
|
1927
|
+
* some scripts itself) never double-fires one.
|
|
1928
|
+
*/
|
|
1929
|
+
static executeInlineScripts(root) {
|
|
1930
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
1931
|
+
let tmpScripts = root.getElementsByTagName("script");
|
|
1932
|
+
if (tmpScripts.length < 1)
|
|
1933
|
+
return;
|
|
1934
|
+
// Snapshot first — the loop mutates the DOM while iterating.
|
|
1935
|
+
let scripts = [];
|
|
1936
|
+
for (let i = 0; i < tmpScripts.length; i++)
|
|
1937
|
+
scripts.push(tmpScripts[i]);
|
|
1938
|
+
for (let i = 0; i < scripts.length; i++) {
|
|
1939
|
+
let orig = scripts[i];
|
|
1940
|
+
if (orig.getAttribute("data-hotstaq-executed") != null)
|
|
1941
|
+
continue;
|
|
1942
|
+
let src = orig.getAttribute("src");
|
|
1943
|
+
let hasSrc = (src != null) && (src !== "");
|
|
1944
|
+
let content = orig.textContent || "";
|
|
1945
|
+
// Nothing to run — just mark it so we don't revisit it.
|
|
1946
|
+
if ((hasSrc === false) && (content === "")) {
|
|
1947
|
+
orig.setAttribute("data-hotstaq-executed", "1");
|
|
1948
|
+
continue;
|
|
1949
|
+
}
|
|
1950
|
+
let s = document.createElement("script");
|
|
1951
|
+
let type = orig.getAttribute("type");
|
|
1952
|
+
if ((type != null) && (type !== ""))
|
|
1953
|
+
s.setAttribute("type", type);
|
|
1954
|
+
if (hasSrc === true)
|
|
1955
|
+
s.setAttribute("src", src);
|
|
1956
|
+
else
|
|
1957
|
+
// MUST be set before insertion, otherwise the script is inert.
|
|
1958
|
+
s.text = content;
|
|
1959
|
+
s.setAttribute("data-hotstaq-executed", "1");
|
|
1960
|
+
yield new Promise((resolve2, reject2) => {
|
|
1961
|
+
s.onload = () => { resolve2(); };
|
|
1962
|
+
s.onerror = () => { resolve2(); };
|
|
1963
|
+
if (orig.parentNode != null)
|
|
1964
|
+
orig.parentNode.replaceChild(s, orig);
|
|
1965
|
+
else
|
|
1966
|
+
document.head.appendChild(s);
|
|
1967
|
+
// Inline scripts execute synchronously on insertion; only
|
|
1968
|
+
// src scripts need to wait for onload.
|
|
1969
|
+
if (hasSrc === false)
|
|
1970
|
+
resolve2();
|
|
1971
|
+
});
|
|
1972
|
+
}
|
|
1973
|
+
});
|
|
1974
|
+
}
|
|
1861
1975
|
/**
|
|
1862
1976
|
* Replace the current HTML page with the output.
|
|
1863
1977
|
* This is meant for web browser use only.
|
|
@@ -1870,50 +1984,27 @@ class HotStaq {
|
|
|
1870
1984
|
let child = parser.parseFromString(output, "text/html");
|
|
1871
1985
|
let htmlObj = document.getElementsByTagName('html')[0];
|
|
1872
1986
|
htmlObj.innerHTML = child.getElementsByTagName('html')[0].innerHTML;
|
|
1873
|
-
// Thanks to newfurniturey at:
|
|
1874
|
-
// https://stackoverflow.com/questions/22945884/domparser-appending-script-tags-to-head-body-but-not-executing
|
|
1875
|
-
let tmpScripts = document.getElementsByTagName('script');
|
|
1876
|
-
if (tmpScripts.length > 0) {
|
|
1877
|
-
// push all of the document's script tags into an array
|
|
1878
|
-
// (to prevent dom manipulation while iterating over dom nodes)
|
|
1879
|
-
let scripts = [];
|
|
1880
|
-
for (let i = 0; i < tmpScripts.length; i++) {
|
|
1881
|
-
scripts.push(tmpScripts[i]);
|
|
1882
|
-
}
|
|
1883
|
-
// iterate over all script tags and create duplicate tags for each
|
|
1884
|
-
for (let i = 0; i < scripts.length; i++) {
|
|
1885
|
-
let s = document.createElement('script');
|
|
1886
|
-
// add the new node to the page
|
|
1887
|
-
scripts[i].parentNode.appendChild(s);
|
|
1888
|
-
// remove the original (non-executing) node from the page
|
|
1889
|
-
scripts[i].parentNode.removeChild(scripts[i]);
|
|
1890
|
-
yield new Promise((resolve2, reject2) => {
|
|
1891
|
-
s.onload = () => {
|
|
1892
|
-
resolve2();
|
|
1893
|
-
};
|
|
1894
|
-
let hasSrc = false;
|
|
1895
|
-
if (scripts[i].getAttribute("src") != null) {
|
|
1896
|
-
if (scripts[i].getAttribute("src") !== "") {
|
|
1897
|
-
s.setAttribute("src", scripts[i].getAttribute("src"));
|
|
1898
|
-
hasSrc = true;
|
|
1899
|
-
}
|
|
1900
|
-
}
|
|
1901
|
-
if (scripts[i].getAttribute("type") != null) {
|
|
1902
|
-
if (scripts[i].getAttribute("type") !== "")
|
|
1903
|
-
s.setAttribute("type", scripts[i].getAttribute("type"));
|
|
1904
|
-
}
|
|
1905
|
-
s.innerHTML = scripts[i].innerHTML;
|
|
1906
|
-
if (hasSrc === false)
|
|
1907
|
-
resolve2();
|
|
1908
|
-
});
|
|
1909
|
-
}
|
|
1910
|
-
}
|
|
1911
1987
|
if (HotStaq.dispatchReadyEvents === true) {
|
|
1912
1988
|
document.dispatchEvent(new Event("DOMContentLoaded"));
|
|
1913
1989
|
window.dispatchEvent(new Event("load"));
|
|
1914
1990
|
}
|
|
1915
1991
|
if (HotStaq.onReadyEvent != null)
|
|
1916
1992
|
HotStaq.onReadyEvent(output);
|
|
1993
|
+
// Run the rendered document's inline scripts last — and let the app
|
|
1994
|
+
// gate it. onAfterUseOutput returning false means the app will run
|
|
1995
|
+
// them itself, so HotStaq stands down. Otherwise HotStaq executes
|
|
1996
|
+
// them (the default), which is what makes inline scripts in a
|
|
1997
|
+
// useOutput-rendered page actually run.
|
|
1998
|
+
let runScripts = true;
|
|
1999
|
+
if (HotStaq.onAfterUseOutput != null) {
|
|
2000
|
+
let result = HotStaq.onAfterUseOutput(output);
|
|
2001
|
+
if (result instanceof Promise)
|
|
2002
|
+
result = yield result;
|
|
2003
|
+
if (result === false)
|
|
2004
|
+
runScripts = false;
|
|
2005
|
+
}
|
|
2006
|
+
if (runScripts === true)
|
|
2007
|
+
yield HotStaq.executeInlineScripts(document);
|
|
1917
2008
|
});
|
|
1918
2009
|
}
|
|
1919
2010
|
/**
|
|
@@ -2032,49 +2123,27 @@ class HotStaq {
|
|
|
2032
2123
|
contentHTML = doc.body.innerHTML;
|
|
2033
2124
|
// Replace only the target content.
|
|
2034
2125
|
targetEl.innerHTML = contentHTML;
|
|
2035
|
-
// Execute any script tags that were in the new content.
|
|
2036
|
-
let tmpScripts = targetEl.getElementsByTagName('script');
|
|
2037
|
-
if (tmpScripts.length > 0) {
|
|
2038
|
-
let scripts = [];
|
|
2039
|
-
for (let i = 0; i < tmpScripts.length; i++)
|
|
2040
|
-
scripts.push(tmpScripts[i]);
|
|
2041
|
-
for (let i = 0; i < scripts.length; i++) {
|
|
2042
|
-
let s = document.createElement('script');
|
|
2043
|
-
scripts[i].parentNode.appendChild(s);
|
|
2044
|
-
scripts[i].parentNode.removeChild(scripts[i]);
|
|
2045
|
-
yield new Promise((resolve2, reject2) => {
|
|
2046
|
-
s.onload = () => {
|
|
2047
|
-
resolve2();
|
|
2048
|
-
};
|
|
2049
|
-
let hasSrc = false;
|
|
2050
|
-
if (scripts[i].getAttribute("src") != null) {
|
|
2051
|
-
if (scripts[i].getAttribute("src") !== "") {
|
|
2052
|
-
s.setAttribute("src", scripts[i].getAttribute("src"));
|
|
2053
|
-
hasSrc = true;
|
|
2054
|
-
}
|
|
2055
|
-
}
|
|
2056
|
-
if (scripts[i].getAttribute("type") != null) {
|
|
2057
|
-
if (scripts[i].getAttribute("type") !== "")
|
|
2058
|
-
s.setAttribute("type", scripts[i].getAttribute("type"));
|
|
2059
|
-
}
|
|
2060
|
-
s.innerHTML = scripts[i].innerHTML;
|
|
2061
|
-
if (hasSrc === false)
|
|
2062
|
-
resolve2();
|
|
2063
|
-
});
|
|
2064
|
-
}
|
|
2065
|
-
}
|
|
2066
2126
|
if (HotStaq.dispatchReadyEvents === true) {
|
|
2067
2127
|
document.dispatchEvent(new Event("DOMContentLoaded"));
|
|
2068
2128
|
window.dispatchEvent(new Event("load"));
|
|
2069
2129
|
}
|
|
2070
2130
|
if (HotStaq.onReadyEvent != null)
|
|
2071
2131
|
HotStaq.onReadyEvent(output);
|
|
2072
|
-
// Fire onAfterNavigate hook
|
|
2132
|
+
// Fire onAfterNavigate hook, then execute the new content's inline
|
|
2133
|
+
// scripts — unless the hook returned false, in which case the app is
|
|
2134
|
+
// running them itself and HotStaq stands down. Running them after the
|
|
2135
|
+
// hook lets the app prep the DOM first; running them at all is the
|
|
2136
|
+
// fix for inline page scripts silently failing on SPA navigation.
|
|
2137
|
+
let runScripts = true;
|
|
2073
2138
|
if (HotStaq.onAfterNavigate != null) {
|
|
2074
2139
|
let result = HotStaq.onAfterNavigate(path);
|
|
2075
2140
|
if (result instanceof Promise)
|
|
2076
|
-
yield result;
|
|
2141
|
+
result = yield result;
|
|
2142
|
+
if (result === false)
|
|
2143
|
+
runScripts = false;
|
|
2077
2144
|
}
|
|
2145
|
+
if (runScripts === true)
|
|
2146
|
+
yield HotStaq.executeInlineScripts(targetEl);
|
|
2078
2147
|
});
|
|
2079
2148
|
}
|
|
2080
2149
|
/**
|
|
@@ -2518,7 +2587,7 @@ exports.HotStaq = HotStaq;
|
|
|
2518
2587
|
/**
|
|
2519
2588
|
* The current version of HotStaq.
|
|
2520
2589
|
*/
|
|
2521
|
-
HotStaq.version = "0.9.
|
|
2590
|
+
HotStaq.version = "0.9.23";
|
|
2522
2591
|
/**
|
|
2523
2592
|
* Indicates if this is a web build.
|
|
2524
2593
|
*/
|
|
@@ -2577,9 +2646,23 @@ HotStaq.spaEnabled = false;
|
|
|
2577
2646
|
*/
|
|
2578
2647
|
HotStaq.onBeforeNavigate = null;
|
|
2579
2648
|
/**
|
|
2580
|
-
* Event fired after SPA navigation
|
|
2649
|
+
* Event fired after an SPA navigation has rendered the new content,
|
|
2650
|
+
* but before HotStaq executes that content's inline <script> tags.
|
|
2651
|
+
*
|
|
2652
|
+
* Return `false` to take ownership of running those scripts yourself —
|
|
2653
|
+
* HotStaq will then skip its own execution pass. Returning `true`,
|
|
2654
|
+
* `undefined`, or having no handler at all lets HotStaq execute them
|
|
2655
|
+
* (the default), which is what makes inline page scripts run on SPA
|
|
2656
|
+
* navigation. See `onAfterUseOutput` for the full-render equivalent.
|
|
2581
2657
|
*/
|
|
2582
2658
|
HotStaq.onAfterNavigate = null;
|
|
2659
|
+
/**
|
|
2660
|
+
* Event fired after `useOutput` has rendered a full document, but before
|
|
2661
|
+
* HotStaq executes that document's inline <script> tags. Same return-value
|
|
2662
|
+
* gate as `onAfterNavigate`: return `false` to run the scripts yourself;
|
|
2663
|
+
* otherwise HotStaq executes them.
|
|
2664
|
+
*/
|
|
2665
|
+
HotStaq.onAfterUseOutput = null;
|
|
2583
2666
|
/**
|
|
2584
2667
|
* Override the framework's default 404 rendering.
|
|
2585
2668
|
*
|
|
@@ -2643,6 +2726,11 @@ HotStaq.valids = {};
|
|
|
2643
2726
|
* has failed.
|
|
2644
2727
|
*/
|
|
2645
2728
|
HotStaq.postValidate = null;
|
|
2729
|
+
/**
|
|
2730
|
+
* The strict RFC-4122 (versions 1-5) UUID pattern shared by `isUUID` and
|
|
2731
|
+
* the `UUID` validator.
|
|
2732
|
+
*/
|
|
2733
|
+
HotStaq.uuidRegex = /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-5][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$/;
|
|
2646
2734
|
HotStaq.setupValidators();
|
|
2647
2735
|
if (typeof (document) !== "undefined") {
|
|
2648
2736
|
// @ts-ignore
|