From b07bf3ad120753e0b996de572053bf9b7eddea40 Mon Sep 17 00:00:00 2001 From: the-djmaze <> Date: Sun, 3 Mar 2024 22:33:29 +0100 Subject: [PATCH] KnockoutJS use more Array.isArray --- vendors/knockout/src/subscribables/observableArray.js | 2 +- vendors/knockout/src/templating/templating.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/vendors/knockout/src/subscribables/observableArray.js b/vendors/knockout/src/subscribables/observableArray.js index 592389c23..0f50e1c64 100644 --- a/vendors/knockout/src/subscribables/observableArray.js +++ b/vendors/knockout/src/subscribables/observableArray.js @@ -1,7 +1,7 @@ ko['observableArray'] = initialValues => { initialValues = initialValues || []; - if (typeof initialValues != 'object' || !('length' in initialValues)) + if (!Array.isArray(initialValues)) throw new Error("The argument passed when initializing an observable array must be an array, or null, or undefined."); return Object.setPrototypeOf(ko.observable(initialValues), ko['observableArray']['fn']).extend({'trackArrayChanges':true}); diff --git a/vendors/knockout/src/templating/templating.js b/vendors/knockout/src/templating/templating.js index 3f858fdd4..74eadb400 100644 --- a/vendors/knockout/src/templating/templating.js +++ b/vendors/knockout/src/templating/templating.js @@ -67,7 +67,7 @@ var renderedNodesArray = renderTemplateSource(makeTemplateSource(template, templateDocument)); // Loosely check result is an array of DOM nodes - if ((typeof renderedNodesArray.length != "number") || (renderedNodesArray.length > 0 && typeof renderedNodesArray[0].nodeType != "number")) + if (!Array.isArray(renderedNodesArray) || (renderedNodesArray.length > 0 && typeof renderedNodesArray[0].nodeType != "number")) throw new Error("Template engine must return an array of DOM nodes"); if (replaceChildren) {