From bf3794822c410967a42847cb57509244d885fc27 Mon Sep 17 00:00:00 2001 From: snipe Date: Thu, 15 Feb 2024 09:47:45 +0000 Subject: [PATCH] Updated assets Signed-off-by: snipe --- public/js/dist/all-defer.js | 143 ++++++++++++++++++++++-------------- public/mix-manifest.json | 2 +- 2 files changed, 89 insertions(+), 56 deletions(-) diff --git a/public/js/dist/all-defer.js b/public/js/dist/all-defer.js index 53e56a8a6..50470c93f 100644 --- a/public/js/dist/all-defer.js +++ b/public/js/dist/all-defer.js @@ -85,6 +85,24 @@ cleanup2(); }]; } + function watch(getter, callback) { + let firstTime = true; + let oldValue; + let effectReference = effect(() => { + let value = getter(); + JSON.stringify(value); + if (!firstTime) { + queueMicrotask(() => { + callback(value, oldValue); + oldValue = value; + }); + } else { + oldValue = value; + } + firstTime = false; + }); + return () => release(effectReference); + } // packages/alpinejs/src/utils/dispatch.js function dispatch(el, name, detail = {}) { @@ -254,21 +272,17 @@ observer.disconnect(); currentlyObserving = false; } - var recordQueue = []; - var willProcessRecordQueue = false; + var queuedMutations = []; function flushObserver() { - recordQueue = recordQueue.concat(observer.takeRecords()); - if (recordQueue.length && !willProcessRecordQueue) { - willProcessRecordQueue = true; - queueMicrotask(() => { - processRecordQueue(); - willProcessRecordQueue = false; - }); - } - } - function processRecordQueue() { - onMutate(recordQueue); - recordQueue.length = 0; + let records = observer.takeRecords(); + queuedMutations.push(() => records.length > 0 && onMutate(records)); + let queueLengthWhenTriggered = queuedMutations.length; + queueMicrotask(() => { + if (queuedMutations.length === queueLengthWhenTriggered) { + while (queuedMutations.length > 0) + queuedMutations.shift()(); + } + }); } function mutateDom(callback) { if (!currentlyObserving) @@ -293,16 +307,16 @@ deferredMutations = deferredMutations.concat(mutations); return; } - let addedNodes = []; - let removedNodes = []; + let addedNodes = /* @__PURE__ */ new Set(); + let removedNodes = /* @__PURE__ */ new Set(); let addedAttributes = /* @__PURE__ */ new Map(); let removedAttributes = /* @__PURE__ */ new Map(); for (let i = 0; i < mutations.length; i++) { if (mutations[i].target._x_ignoreMutationObserver) continue; if (mutations[i].type === "childList") { - mutations[i].addedNodes.forEach((node) => node.nodeType === 1 && addedNodes.push(node)); - mutations[i].removedNodes.forEach((node) => node.nodeType === 1 && removedNodes.push(node)); + mutations[i].addedNodes.forEach((node) => node.nodeType === 1 && addedNodes.add(node)); + mutations[i].removedNodes.forEach((node) => node.nodeType === 1 && removedNodes.add(node)); } if (mutations[i].type === "attributes") { let el = mutations[i].target; @@ -335,7 +349,7 @@ onAttributeAddeds.forEach((i) => i(el, attrs)); }); for (let node of removedNodes) { - if (addedNodes.includes(node)) + if (addedNodes.has(node)) continue; onElRemoveds.forEach((i) => i(node)); destroyTree(node); @@ -345,7 +359,7 @@ node._x_ignore = true; }); for (let node of addedNodes) { - if (removedNodes.includes(node)) + if (removedNodes.has(node)) continue; if (!node.isConnected) continue; @@ -531,7 +545,10 @@ } } function handleError(error2, el, expression = void 0) { - Object.assign(error2, { el, expression }); + error2 = Object.assign( + error2 ?? { message: "No error message given." }, + { el, expression } + ); console.warn(`Alpine Expression Error: ${error2.message} ${expression ? 'Expression: "' + expression + '"\n\n' : ""}`, el); @@ -651,9 +668,7 @@ ${expression ? 'Expression: "' + expression + '"\n\n' : ""}`, el); return { before(directive2) { if (!directiveHandlers[directive2]) { - console.warn( - "Cannot find directive `${directive}`. `${name}` will use the default order of execution" - ); + console.warn(String.raw`Cannot find directive \`${directive2}\`. \`${name}\` will use the default order of execution`); return; } const pos = directiveOrder.indexOf(directive2); @@ -1467,25 +1482,25 @@ ${expression ? 'Expression: "' + expression + '"\n\n' : ""}`, el); function entangle({ get: outerGet, set: outerSet }, { get: innerGet, set: innerSet }) { let firstRun = true; let outerHash; + let innerHash; let reference = effect(() => { - const outer = outerGet(); - const inner = innerGet(); + let outer = outerGet(); + let inner = innerGet(); if (firstRun) { innerSet(cloneIfObject(outer)); firstRun = false; - outerHash = JSON.stringify(outer); } else { - const outerHashLatest = JSON.stringify(outer); + let outerHashLatest = JSON.stringify(outer); + let innerHashLatest = JSON.stringify(inner); if (outerHashLatest !== outerHash) { innerSet(cloneIfObject(outer)); - outerHash = outerHashLatest; - } else { + } else if (outerHashLatest !== innerHashLatest) { outerSet(cloneIfObject(inner)); - outerHash = JSON.stringify(inner); + } else { } } - JSON.stringify(innerGet()); - JSON.stringify(outerGet()); + outerHash = JSON.stringify(outerGet()); + innerHash = JSON.stringify(innerGet()); }); return () => { release(reference); @@ -1604,7 +1619,7 @@ ${expression ? 'Expression: "' + expression + '"\n\n' : ""}`, el); get raw() { return raw; }, - version: "3.13.3", + version: "3.13.5", flushAndStopDeferringMutations, dontAutoEvaluateFunctions, disableEffectScheduling, @@ -1657,6 +1672,7 @@ ${expression ? 'Expression: "' + expression + '"\n\n' : ""}`, el); // INTERNAL bound: getBinding, $data: scope, + watch, walk, data, bind: bind2 @@ -2378,23 +2394,15 @@ ${expression ? 'Expression: "' + expression + '"\n\n' : ""}`, el); magic("dispatch", (el) => dispatch.bind(dispatch, el)); // packages/alpinejs/src/magics/$watch.js - magic("watch", (el, { evaluateLater: evaluateLater2, effect: effect3 }) => (key, callback) => { + magic("watch", (el, { evaluateLater: evaluateLater2, cleanup: cleanup2 }) => (key, callback) => { let evaluate2 = evaluateLater2(key); - let firstTime = true; - let oldValue; - let effectReference = effect3(() => evaluate2((value) => { - JSON.stringify(value); - if (!firstTime) { - queueMicrotask(() => { - callback(value, oldValue); - oldValue = value; - }); - } else { - oldValue = value; - } - firstTime = false; - })); - el._x_effects.delete(effectReference); + let getter = () => { + let value; + evaluate2((i) => value = i); + return value; + }; + let unwatch = watch(getter, callback); + cleanup2(unwatch); }); // packages/alpinejs/src/magics/$store.js @@ -2445,11 +2453,31 @@ ${expression ? 'Expression: "' + expression + '"\n\n' : ""}`, el); } // packages/alpinejs/src/magics/$id.js - magic("id", (el) => (name, key = null) => { - let root = closestIdRoot(el, name); - let id = root ? root._x_ids[name] : findAndIncrementId(name); - return key ? `${name}-${id}-${key}` : `${name}-${id}`; + magic("id", (el, { cleanup: cleanup2 }) => (name, key = null) => { + let cacheKey = `${name}${key ? `-${key}` : ""}`; + return cacheIdByNameOnElement(el, cacheKey, cleanup2, () => { + let root = closestIdRoot(el, name); + let id = root ? root._x_ids[name] : findAndIncrementId(name); + return key ? `${name}-${id}-${key}` : `${name}-${id}`; + }); }); + interceptClone((from, to) => { + if (from._x_id) { + to._x_id = from._x_id; + } + }); + function cacheIdByNameOnElement(el, cacheKey, cleanup2, callback) { + if (!el._x_id) + el._x_id = {}; + if (el._x_id[cacheKey]) + return el._x_id[cacheKey]; + let output = callback(); + el._x_id[cacheKey] = output; + cleanup2(() => { + delete el._x_id[cacheKey]; + }); + return output; + } // packages/alpinejs/src/magics/$el.js magic("el", (el) => el); @@ -2769,7 +2797,7 @@ ${expression ? 'Expression: "' + expression + '"\n\n' : ""}`, el); setValue(getInputValue(el, modifiers, e, getValue())); }); if (modifiers.includes("fill")) { - if ([null, ""].includes(getValue()) || el.type === "checkbox" && Array.isArray(getValue())) { + if ([void 0, null, ""].includes(getValue()) || el.type === "checkbox" && Array.isArray(getValue())) { el.dispatchEvent(new Event(event, {})); } } @@ -3256,6 +3284,11 @@ ${expression ? 'Expression: "' + expression + '"\n\n' : ""}`, el); let names = evaluate2(expression); names.forEach((name) => setIdRoot(el, name)); }); + interceptClone((from, to) => { + if (from._x_ids) { + to._x_ids = from._x_ids; + } + }); // packages/alpinejs/src/directives/x-on.js mapAttributes(startingWith("@", into(prefix("on:")))); diff --git a/public/mix-manifest.json b/public/mix-manifest.json index 8c20f3cc4..468a57769 100644 --- a/public/mix-manifest.json +++ b/public/mix-manifest.json @@ -33,7 +33,7 @@ "/js/build/vendor.js": "/js/build/vendor.js?id=a2b971da417306a63385c8098acfe4af", "/js/dist/bootstrap-table.js": "/js/dist/bootstrap-table.js?id=29340c70d13855fa0165cd4d799c6f5b", "/js/dist/all.js": "/js/dist/all.js?id=13bdb521e0c745d7f81dae3fb110b650", - "/js/dist/all-defer.js": "/js/dist/all-defer.js?id=7f9a130eda6916eaa32a0a57e81918f3", + "/js/dist/all-defer.js": "/js/dist/all-defer.js?id=19ccc62a8f1ea103dede4808837384d4", "/css/dist/skins/skin-green.min.css": "/css/dist/skins/skin-green.min.css?id=0a82a6ae6bb4e58fe62d162c4fb50397", "/css/dist/skins/skin-green-dark.min.css": "/css/dist/skins/skin-green-dark.min.css?id=d419cb63a12dc175d71645c876bfc2ab", "/css/dist/skins/skin-black.min.css": "/css/dist/skins/skin-black.min.css?id=76482123f6c70e866d6b971ba91de7bb",