@nsshunt/stsuxvue 1.0.123 → 1.0.124
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/stsuxvue.cjs +66 -19
- package/dist/stsuxvue.cjs.map +1 -1
- package/dist/stsuxvue.mjs +66 -19
- package/dist/stsuxvue.mjs.map +1 -1
- package/package.json +12 -12
- package/types/Views/UXModelNavigatorView.vue.d.ts +3 -0
- package/types/Views/UXModelNavigatorView.vue.d.ts.map +1 -1
- package/types/Views/UXModelNavigatorViewSingle.vue.d.ts +3 -0
- package/types/Views/UXModelNavigatorViewSingle.vue.d.ts.map +1 -1
package/dist/stsuxvue.cjs
CHANGED
|
@@ -6036,7 +6036,7 @@ var import_ansi_to_html = /* @__PURE__ */ __toESM((/* @__PURE__ */ __commonJSMin
|
|
|
6036
6036
|
return Filter;
|
|
6037
6037
|
}();
|
|
6038
6038
|
})))(), 1);
|
|
6039
|
-
/*! @license DOMPurify 3.4.
|
|
6039
|
+
/*! @license DOMPurify 3.4.5 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.4.5/LICENSE */
|
|
6040
6040
|
function _arrayLikeToArray(r, a) {
|
|
6041
6041
|
(null == a || a > r.length) && (a = r.length);
|
|
6042
6042
|
for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
|
|
@@ -6543,6 +6543,8 @@ var html = freeze([
|
|
|
6543
6543
|
"color",
|
|
6544
6544
|
"cols",
|
|
6545
6545
|
"colspan",
|
|
6546
|
+
"command",
|
|
6547
|
+
"commandfor",
|
|
6546
6548
|
"controls",
|
|
6547
6549
|
"controlslist",
|
|
6548
6550
|
"coords",
|
|
@@ -6956,7 +6958,7 @@ var _createHooksMap = function _createHooksMap() {
|
|
|
6956
6958
|
function createDOMPurify() {
|
|
6957
6959
|
let window = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : getGlobal$1();
|
|
6958
6960
|
const DOMPurify = (root) => createDOMPurify(root);
|
|
6959
|
-
DOMPurify.version = "3.4.
|
|
6961
|
+
DOMPurify.version = "3.4.5";
|
|
6960
6962
|
DOMPurify.removed = [];
|
|
6961
6963
|
if (!window || !window.document || window.document.nodeType !== NODE_TYPE.document || !window.Element) {
|
|
6962
6964
|
DOMPurify.isSupported = false;
|
|
@@ -6972,6 +6974,7 @@ function createDOMPurify() {
|
|
|
6972
6974
|
const getNextSibling = lookupGetter(ElementPrototype, "nextSibling");
|
|
6973
6975
|
const getChildNodes = lookupGetter(ElementPrototype, "childNodes");
|
|
6974
6976
|
const getParentNode = lookupGetter(ElementPrototype, "parentNode");
|
|
6977
|
+
const getNodeType = Node && Node.prototype ? lookupGetter(Node.prototype, "nodeType") : null;
|
|
6975
6978
|
if (typeof HTMLTemplateElement === "function") {
|
|
6976
6979
|
const template = document.createElement("template");
|
|
6977
6980
|
if (template.content && template.content.ownerDocument) document = template.content.ownerDocument;
|
|
@@ -7390,6 +7393,42 @@ function createDOMPurify() {
|
|
|
7390
7393
|
return createNodeIterator.call(root.ownerDocument || root, root, NodeFilter.SHOW_ELEMENT | NodeFilter.SHOW_COMMENT | NodeFilter.SHOW_TEXT | NodeFilter.SHOW_PROCESSING_INSTRUCTION | NodeFilter.SHOW_CDATA_SECTION, null);
|
|
7391
7394
|
};
|
|
7392
7395
|
/**
|
|
7396
|
+
* Strip template-engine expressions ({{...}}, ${...}, <%...%>) from the
|
|
7397
|
+
* character data of an element subtree. Used as the final safety net for
|
|
7398
|
+
* SAFE_FOR_TEMPLATES on every DOM-returning code path so that expressions
|
|
7399
|
+
* which only form after text-node normalization (e.g. fragments split across
|
|
7400
|
+
* stripped elements) cannot survive into a template-evaluating framework.
|
|
7401
|
+
*
|
|
7402
|
+
* Walks text/comment/CDATA/processing-instruction nodes and mutates `.data`
|
|
7403
|
+
* in place rather than round-tripping through innerHTML. This preserves
|
|
7404
|
+
* descendant node references (important for IN_PLACE callers), avoids a
|
|
7405
|
+
* serialize/reparse cycle, and reads literal character data — which means
|
|
7406
|
+
* `<%...%>` in text content matches the ERB regex against its real bytes
|
|
7407
|
+
* instead of the HTML-entity-escaped form innerHTML would produce.
|
|
7408
|
+
*
|
|
7409
|
+
* Attribute values are not visited here; SAFE_FOR_TEMPLATES handling for
|
|
7410
|
+
* attributes is performed during the per-node `_sanitizeAttributes` pass.
|
|
7411
|
+
*
|
|
7412
|
+
* @param node The root element whose character data should be scrubbed.
|
|
7413
|
+
*/
|
|
7414
|
+
const _scrubTemplateExpressions = function _scrubTemplateExpressions(node) {
|
|
7415
|
+
node.normalize();
|
|
7416
|
+
const walker = createNodeIterator.call(node.ownerDocument || node, node, NodeFilter.SHOW_TEXT | NodeFilter.SHOW_COMMENT | NodeFilter.SHOW_CDATA_SECTION | NodeFilter.SHOW_PROCESSING_INSTRUCTION, null);
|
|
7417
|
+
let currentNode = walker.nextNode();
|
|
7418
|
+
while (currentNode) {
|
|
7419
|
+
let data = currentNode.data;
|
|
7420
|
+
arrayForEach([
|
|
7421
|
+
MUSTACHE_EXPR$1,
|
|
7422
|
+
ERB_EXPR$1,
|
|
7423
|
+
TMPLIT_EXPR$1
|
|
7424
|
+
], (expr) => {
|
|
7425
|
+
data = stringReplace(data, expr, " ");
|
|
7426
|
+
});
|
|
7427
|
+
currentNode.data = data;
|
|
7428
|
+
currentNode = walker.nextNode();
|
|
7429
|
+
}
|
|
7430
|
+
};
|
|
7431
|
+
/**
|
|
7393
7432
|
* _isClobbered
|
|
7394
7433
|
*
|
|
7395
7434
|
* @param element element to check for clobbering attacks
|
|
@@ -7399,13 +7438,29 @@ function createDOMPurify() {
|
|
|
7399
7438
|
return element instanceof HTMLFormElement && (typeof element.nodeName !== "string" || typeof element.textContent !== "string" || typeof element.removeChild !== "function" || !(element.attributes instanceof NamedNodeMap) || typeof element.removeAttribute !== "function" || typeof element.setAttribute !== "function" || typeof element.namespaceURI !== "string" || typeof element.insertBefore !== "function" || typeof element.hasChildNodes !== "function");
|
|
7400
7439
|
};
|
|
7401
7440
|
/**
|
|
7402
|
-
* Checks whether the given object is a DOM node
|
|
7441
|
+
* Checks whether the given object is a DOM node, including nodes that
|
|
7442
|
+
* originate from a different window/realm (e.g. an iframe's
|
|
7443
|
+
* contentDocument). The previous `value instanceof Node` check was
|
|
7444
|
+
* realm-bound: nodes from a different window failed it, causing
|
|
7445
|
+
* sanitize() to silently stringify them and reset IN_PLACE to false,
|
|
7446
|
+
* returning the original node unsanitized. See GHSA-4w3q-35jp-p934.
|
|
7447
|
+
*
|
|
7448
|
+
* Implementation: call the cached `nodeType` getter from Node.prototype
|
|
7449
|
+
* directly on the value. This bypasses any clobbered instance property
|
|
7450
|
+
* (e.g. a child element named "nodeType") and works across realms
|
|
7451
|
+
* because the WebIDL `nodeType` getter reads an internal slot that
|
|
7452
|
+
* every real Node has, regardless of which window minted it.
|
|
7403
7453
|
*
|
|
7404
7454
|
* @param value object to check whether it's a DOM node
|
|
7405
|
-
* @return true
|
|
7455
|
+
* @return true if value is a DOM node from any realm
|
|
7406
7456
|
*/
|
|
7407
7457
|
const _isNode = function _isNode(value) {
|
|
7408
|
-
|
|
7458
|
+
if (!getNodeType || typeof value !== "object" || value === null) return false;
|
|
7459
|
+
try {
|
|
7460
|
+
return typeof getNodeType(value) === "number";
|
|
7461
|
+
} catch (_) {
|
|
7462
|
+
return false;
|
|
7463
|
+
}
|
|
7409
7464
|
};
|
|
7410
7465
|
function _executeHooks(hooks, currentNode, data) {
|
|
7411
7466
|
arrayForEach(hooks, (hook) => {
|
|
@@ -7697,7 +7752,7 @@ function createDOMPurify() {
|
|
|
7697
7752
|
if (!ALLOWED_TAGS[tagName] || FORBID_TAGS[tagName]) throw typeErrorCreate("root node is forbidden and cannot be sanitized in-place");
|
|
7698
7753
|
}
|
|
7699
7754
|
_sanitizeAttachedShadowRoots2(dirty);
|
|
7700
|
-
} else if (dirty
|
|
7755
|
+
} else if (_isNode(dirty)) {
|
|
7701
7756
|
body = _initDocument("<!---->");
|
|
7702
7757
|
importedNode = body.ownerDocument.importNode(dirty, true);
|
|
7703
7758
|
if (importedNode.nodeType === NODE_TYPE.element && importedNode.nodeName === "BODY") body = importedNode;
|
|
@@ -7716,20 +7771,12 @@ function createDOMPurify() {
|
|
|
7716
7771
|
_sanitizeAttributes(currentNode);
|
|
7717
7772
|
if (currentNode.content instanceof DocumentFragment) _sanitizeShadowDOM2(currentNode.content);
|
|
7718
7773
|
}
|
|
7719
|
-
if (IN_PLACE)
|
|
7774
|
+
if (IN_PLACE) {
|
|
7775
|
+
if (SAFE_FOR_TEMPLATES) _scrubTemplateExpressions(dirty);
|
|
7776
|
+
return dirty;
|
|
7777
|
+
}
|
|
7720
7778
|
if (RETURN_DOM) {
|
|
7721
|
-
if (SAFE_FOR_TEMPLATES)
|
|
7722
|
-
body.normalize();
|
|
7723
|
-
let html = body.innerHTML;
|
|
7724
|
-
arrayForEach([
|
|
7725
|
-
MUSTACHE_EXPR$1,
|
|
7726
|
-
ERB_EXPR$1,
|
|
7727
|
-
TMPLIT_EXPR$1
|
|
7728
|
-
], (expr) => {
|
|
7729
|
-
html = stringReplace(html, expr, " ");
|
|
7730
|
-
});
|
|
7731
|
-
body.innerHTML = html;
|
|
7732
|
-
}
|
|
7779
|
+
if (SAFE_FOR_TEMPLATES) _scrubTemplateExpressions(body);
|
|
7733
7780
|
if (RETURN_DOM_FRAGMENT) {
|
|
7734
7781
|
returnNode = createDocumentFragment.call(body.ownerDocument);
|
|
7735
7782
|
while (body.firstChild) returnNode.appendChild(body.firstChild);
|