@symbo.ls/utils 3.14.104 → 3.14.276

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/CHANGELOG.md CHANGED
@@ -1,5 +1,21 @@
1
1
  # @symbo.ls/utils
2
2
 
3
+ ## 3.14.276
4
+
5
+ ### Patch Changes
6
+
7
+ - Auto-generated cross-repo patch release.
8
+
9
+ ## 3.14.105
10
+
11
+ ### Patch Changes
12
+
13
+ - Manual patch bump triggered via workflow_dispatch (scope: all).
14
+ No source change behind this bump — released to refresh dist or
15
+ coordinate a cross-package version line.
16
+ - Updated dependencies
17
+ - @symbo.ls/fetch@3.14.105
18
+
3
19
  ## 3.14.104
4
20
 
5
21
  ### Patch Changes
@@ -1,13 +1,13 @@
1
- "use strict";var x=Object.defineProperty;var W=Object.getOwnPropertyDescriptor;var F=Object.getOwnPropertyNames;var b=Object.prototype.hasOwnProperty;var q=(e,t)=>{for(var r in t)x(e,r,{get:t[r],enumerable:!0})},B=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of F(t))!b.call(e,n)&&n!==r&&x(e,n,{get:()=>t[n],enumerable:!(o=W(t,n))||o.enumerable});return e};var G=e=>B(x({},"__esModule",{value:!0}),e);var Se={};q(Se,{clone:()=>V,createNestedObject:()=>ye,createObjectWithoutPrototype:()=>R,deepClone:()=>z,deepContains:()=>ae,deepDestringifyFunctions:()=>j,deepMerge:()=>U,deepStringifyFunctions:()=>k,destringifyGlobalScope:()=>re,detectInfiniteLoop:()=>ge,excludeKeysFromObject:()=>_e,exec:()=>P,getInObjectByPath:()=>we,hasFunction:()=>S,hasOwnProperty:()=>se,isCyclic:()=>Oe,isEmpty:()=>D,isEmptyObject:()=>ie,isEqualDeep:()=>M,makeObjectWithoutPrototype:()=>ce,map:()=>H,merge:()=>J,objectToString:()=>E,overwrite:()=>fe,overwriteDeep:()=>I,overwriteShallow:()=>le,removeFromObject:()=>pe,removeNestedKeyByPath:()=>he,setInObjectByPath:()=>de,stringToObject:()=>oe});module.exports=G(Se);var _=require("./globals.js"),c=require("./types.js"),T=require("./array.js"),N=require("./string.js"),g=require("./node.js"),C=require("./keys.js");const A="production",O=e=>e.charCodeAt(0)===95&&e.charCodeAt(1)===95,P=(e,t,r,o)=>{if((0,c.isFunction)(e))return t?typeof e.call!="function"?e:e.call(t,t,r||t.state,o||t.context):void 0;if(e!=null&&t?.context?.plugins&&((0,c.isArray)(e)||(0,c.isObject)(e)&&!(0,g.isDOMNode)(e))){const n=t.context.plugins;for(const s of n)if(s.resolveHandler){const i=s.resolveHandler(e,t);if(typeof i=="function")return P(i,t,r,o)}}return e},H=(e,t,r)=>{for(const o in t)e[o]=P(t[o],r)},J=(e,t,r=[])=>{const o=r instanceof Set;for(const n in t)Object.prototype.hasOwnProperty.call(t,n)&&(O(n)||(o?r.has(n):r.includes(n))||e[n]===void 0&&(e[n]=t[n]));return e},U=(e,t,r=C.METHODS_EXL)=>$(e,t,r,null),$=(e,t,r,o)=>{if(e===t)return e;if(o){for(let s=0;s<o.length;s+=2)if(o[s]===e&&o[s+1]===t)return e}const n=r instanceof Set;for(const s in t){if(!Object.prototype.hasOwnProperty.call(t,s)||O(s)||s==="constructor"||s==="prototype"||(n?r.has(s):r.includes(s)))continue;const i=e[s],f=t[s];if((0,c.isObjectLike)(i)&&(0,c.isObjectLike)(f)){const l=o||[];l.push(e,t),$(i,f,r,l),l.length-=2}else i===void 0&&(e[s]=f)}return e},V=(e,t=[])=>{const r=t instanceof Set,o={};for(const n in e)Object.prototype.hasOwnProperty.call(e,n)&&(O(n)||(r?t.has(n):t.includes(n))||(o[n]=e[n]));return o},z=(e,t={})=>{const{exclude:r=[],cleanUndefined:o=!1,cleanNull:n=!1,visited:s=new WeakMap,handleExtends:i=!1}=t;if(!(0,c.isObjectLike)(e)||(0,g.isDOMNode)(e))return e;if(s.has(e))return s.get(e);const f=r instanceof Set?r:r.length>3?new Set(r):null,l=p=>f?f.has(p):r.includes(p),u=(0,c.isArray)(e)?[]:{};s.set(e,u);const y=[[e,u]];for(;y.length;){const[p,d]=y.pop();for(const h in p){if(!Object.prototype.hasOwnProperty.call(p,h)||O(h)||h==="__proto__"||l(h))continue;const a=p[h];if(!(o&&a===void 0)&&!(n&&a===null)){if((0,g.isDOMNode)(a)){d[h]=a;continue}if(i&&h==="extends"&&(0,c.isArray)(a)){d[h]=(0,T.unstackArrayOfObjects)(a,r);continue}if((0,c.isFunction)(a)){d[h]=a;continue}if((0,c.isObjectLike)(a))if(s.has(a))d[h]=s.get(a);else{const w=(0,c.isArray)(a)?[]:{};s.set(a,w),d[h]=w,y.push([a,w])}else d[h]=a}}}return u},k=(e,t={})=>{(e.node||e.__ref||e.parent||e.__element||e.parse)&&((e.__element||e.parent?.__element).warn("Trying to clone element or state at",e),e=e.parse?.());for(const r in e){const o=e[r];if((0,c.isFunction)(o))t[r]=o.toString();else if((0,c.isObject)(o))t[r]={},k(o,t[r]);else if((0,c.isArray)(o)){const n=t[r]=[];for(let s=0;s<o.length;s++){const i=o[s];(0,c.isObject)(i)?(n[s]={},k(i,n[s])):(0,c.isFunction)(i)?n[s]=i.toString():n[s]=i}}else t[r]=o}return t},K=new Set(["&","*","-",":","%","{","}",">","<","@",".","/","!"," "]),E=(e={},t=0)=>{if(e===null||typeof e!="object")return String(e);let r=!1;for(const s in e){r=!0;break}if(!r)return"{}";const o=" ".repeat(t);let n=`{
2
- `;for(const s in e){if(!Object.prototype.hasOwnProperty.call(e,s))continue;const i=e[s];let f=!1;for(let u=0;u<s.length;u++)if(K.has(s[u])){f=!0;break}const l=f?`'${s}'`:s;if(n+=`${o} ${l}: `,(0,c.isArray)(i)){n+=`[
3
- `;for(const u of i)(0,c.isObjectLike)(u)&&u!==null?n+=`${o} ${E(u,t+2)},
4
- `:(0,c.isString)(u)?n+=`${o} '${u}',
5
- `:n+=`${o} ${u},
1
+ "use strict";var x=Object.defineProperty;var W=Object.getOwnPropertyDescriptor;var F=Object.getOwnPropertyNames;var b=Object.prototype.hasOwnProperty;var q=(e,t)=>{for(var r in t)x(e,r,{get:t[r],enumerable:!0})},B=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of F(t))!b.call(e,n)&&n!==r&&x(e,n,{get:()=>t[n],enumerable:!(o=W(t,n))||o.enumerable});return e};var G=e=>B(x({},"__esModule",{value:!0}),e);var Se={};q(Se,{clone:()=>V,createNestedObject:()=>ye,createObjectWithoutPrototype:()=>R,deepClone:()=>z,deepContains:()=>ae,deepDestringifyFunctions:()=>j,deepMerge:()=>U,deepStringifyFunctions:()=>k,destringifyGlobalScope:()=>re,detectInfiniteLoop:()=>ge,excludeKeysFromObject:()=>_e,exec:()=>P,getInObjectByPath:()=>we,hasFunction:()=>S,hasOwnProperty:()=>se,isCyclic:()=>Oe,isEmpty:()=>D,isEmptyObject:()=>ie,isEqualDeep:()=>M,makeObjectWithoutPrototype:()=>ce,map:()=>H,merge:()=>J,objectToString:()=>E,overwrite:()=>fe,overwriteDeep:()=>I,overwriteShallow:()=>le,removeFromObject:()=>pe,removeNestedKeyByPath:()=>he,setInObjectByPath:()=>de,stringToObject:()=>oe});module.exports=G(Se);var _=require("./globals.js"),c=require("./types.js"),T=require("./array.js"),N=require("./string.js"),g=require("./node.js"),C=require("./keys.js");const A="production",O=e=>e.charCodeAt(0)===95&&e.charCodeAt(1)===95,P=(e,t,r,o)=>{if((0,c.isFunction)(e))return t?typeof e.call!="function"?e:e.call(t,t,r||t.state,o||t.context):void 0;if(e!=null&&t?.context?.plugins&&((0,c.isArray)(e)||(0,c.isObject)(e)&&!(0,g.isDOMNode)(e))){const n=t.context.plugins;for(const s of n)if(s.resolveHandler){const i=s.resolveHandler(e,t);if(typeof i=="function")return P(i,t,r,o)}}return e},H=(e,t,r)=>{for(const o in t)e[o]=P(t[o],r)},J=(e,t,r=[])=>{const o=r instanceof Set;for(const n in t)Object.prototype.hasOwnProperty.call(t,n)&&(O(n)||(o?r.has(n):r.includes(n))||e[n]===void 0&&(e[n]=t[n]));return e},U=(e,t,r=C.METHODS_EXL)=>$(e,t,r,null),$=(e,t,r,o)=>{if(e===t)return e;if(o){for(let s=0;s<o.length;s+=2)if(o[s]===e&&o[s+1]===t)return e}const n=r instanceof Set;for(const s in t){if(!Object.prototype.hasOwnProperty.call(t,s)||O(s)||s==="constructor"||s==="prototype"||(n?r.has(s):r.includes(s)))continue;const i=e[s],l=t[s];if((0,c.isObjectLike)(i)&&(0,c.isObjectLike)(l)){const u=o||[];u.push(e,t),$(i,l,r,u),u.length-=2}else i===void 0&&(e[s]=l)}return e},V=(e,t=[])=>{const r=t instanceof Set,o={};for(const n in e)Object.prototype.hasOwnProperty.call(e,n)&&(O(n)||(r?t.has(n):t.includes(n))||(o[n]=e[n]));return o},z=(e,t={})=>{const{exclude:r=[],cleanUndefined:o=!1,cleanNull:n=!1,visited:s=new WeakMap,handleExtends:i=!1}=t;if(!(0,c.isObjectLike)(e)||(0,g.isDOMNode)(e))return e;if(s.has(e))return s.get(e);const l=r instanceof Set?r:r.length>3?new Set(r):null,u=y=>l?l.has(y):r.includes(y),f=(0,c.isArray)(e)?[]:{};s.set(e,f);const p=[[e,f]];for(;p.length;){const[y,d]=p.pop();for(const h in y){if(!Object.prototype.hasOwnProperty.call(y,h)||O(h)||h==="__proto__"||u(h))continue;const a=y[h];if(!(o&&a===void 0)&&!(n&&a===null)){if((0,g.isDOMNode)(a)){d[h]=a;continue}if(i&&h==="extends"&&(0,c.isArray)(a)){d[h]=(0,T.unstackArrayOfObjects)(a,r);continue}if((0,c.isFunction)(a)){d[h]=a;continue}if((0,c.isObjectLike)(a))if(s.has(a))d[h]=s.get(a);else{const w=(0,c.isArray)(a)?[]:{};s.set(a,w),d[h]=w,p.push([a,w])}else d[h]=a}}}return f},k=(e,t={})=>{(e.node||e.__ref||e.parent||e.__element||e.parse)&&((e.__element||e.parent?.__element).warn("Trying to clone element or state at",e),e=e.parse?.());for(const r in e){const o=e[r];if((0,c.isFunction)(o))t[r]=o.toString();else if((0,c.isObject)(o))t[r]={},k(o,t[r]);else if((0,c.isArray)(o)){const n=t[r]=[];for(let s=0;s<o.length;s++){const i=o[s];(0,c.isObject)(i)?(n[s]={},k(i,n[s])):(0,c.isFunction)(i)?n[s]=i.toString():n[s]=i}}else t[r]=o}return t},K=new Set(["&","*","-",":","%","{","}",">","<","@",".","/","!"," "]),E=(e={},t=0)=>{if(e===null||typeof e!="object")return String(e);let r=!1;for(const s in e){r=!0;break}if(!r)return"{}";const o=" ".repeat(t);let n=`{
2
+ `;for(const s in e){if(!Object.prototype.hasOwnProperty.call(e,s))continue;const i=e[s];let l=!1;for(let f=0;f<s.length;f++)if(K.has(s[f])){l=!0;break}const u=l?`'${s}'`:s;if(n+=`${o} ${u}: `,(0,c.isArray)(i)){n+=`[
3
+ `;for(const f of i)(0,c.isObjectLike)(f)&&f!==null?n+=`${o} ${E(f,t+2)},
4
+ `:(0,c.isString)(f)?n+=`${o} '${f}',
5
+ `:n+=`${o} ${f},
6
6
  `;n+=`${o} ]`}else(0,c.isObjectLike)(i)?n+=E(i,t+1):(0,c.isString)(i)?n+=(0,N.stringIncludesAny)(i,[`
7
7
  `,"'"])?`\`${i}\``:`'${i}'`:n+=i;n+=`,
8
- `}return n+=`${o}}`,n},X=[/^\(\s*\{[^}]*\}\s*\)\s*=>/,/^(\([^)]*\)|[^=]*)\s*=>/,/^function[\s(]/,/^async\s+/,/^\(\s*function/,/^[a-zA-Z_$][a-zA-Z0-9_$]*\s*=>/],Y=/^["[{]/,Z=/^(export|import)\s/,S=e=>{if(!e)return!1;const t=e.trim().replace(/\n\s*/g," ").trim();if(t===""||t==="{}"||t==="[]"||Z.test(t)||!X.some(s=>s.test(t)))return!1;const o=t.charCodeAt(0),n=t.includes("=>");return!(o===123&&!n||o===91||Y.test(t)&&!n)},Q=e=>(0,eval)(e),m=(e,t)=>{const r=/^(\s*(?:async\s+)?function\s*[\w$]*\s*\([^)]*\)\s*)\{/.exec(e);if(!r)return null;const o=r[0].length,n=[];let s=o,i=1,f=null;const l=e.length,u=new RegExp("^(?:const|let|var)\\s+"+t+"\\b");for(;s<l&&i>0;){const p=e[s];if(p==="/"&&e[s+1]==="/"){const d=e.indexOf(`
9
- `,s);s=d===-1?l:d;continue}if(p==="/"&&e[s+1]==="*"){const d=e.indexOf("*/",s+2);s=d===-1?l:d+2;continue}if(p==='"'||p==="'"||p==="`"){const d=p;for(s++;s<l;){if(e[s]==="\\"){s+=2;continue}if(e[s]===d){s++;break}if(d==="`"&&e[s]==="$"&&e[s+1]==="{"){s+=2;let h=1;for(;s<l&&h>0;)e[s]==="{"?h++:e[s]==="}"&&h--,s++;continue}s++}continue}if(p==="{"){i++,s++;continue}if(p==="}"){i--,s++;continue}if(i===1&&u.test(e.slice(s))){const d=s;let h=0,a=s;for(;a<l;){const w=e[a];if(w==='"'||w==="'"||w==="`"){const L=w;for(a++;a<l;){if(e[a]==="\\"){a+=2;continue}if(e[a]===L){a++;break}a++}continue}if(w==="("||w==="["||w==="{"){h++,a++;continue}if(w===")"||w==="]"||w==="}"){if(h===0)break;h--,a++;continue}if(h===0&&(w===";"||w===`
10
- `)){a++;break}a++}n.push([d,a]),s=a;continue}s++}if(!n.length)return null;let y=e;for(let p=n.length-1;p>=0;p--)y=y.slice(0,n[p][0])+y.slice(n[p][1]);return y},v=(e,t,r)=>{try{return r.window.eval(`(${e})`)}catch(o){const n=o&&o.message?o.message:String(o),s=/await is only valid in async/.test(n),i=/Identifier '([^']+)' has already been declared/.exec(n);let f=null;if(s){const l=String(e).trim();if(/^function[\s(]/.test(l))try{f=r.window.eval("(async "+l+")")}catch{}}else if(i){let l=String(e),u=i[1];for(let y=0;y<5;y++){const p=m(l,u);if(!p||p===l)break;l=p;try{f=r.window.eval("("+l+")");break}catch(d){const h=/Identifier '([^']+)' has already been declared/.exec(d&&d.message||String(d));if(!h||h[1]!==u)break}}}return f||(typeof console<"u"&&console.warn&&console.warn(`[smbls] deepDestringifyFunctions: eval failed on ${t} \u2014 value will be left as a string. Reason: `+n+`.
11
- First 200 chars of source: `+String(e).slice(0,200)),e)}},j=(e,t={},r={window:{eval:Q}})=>{if(!e||typeof e!="object")return t;const o=[[e,t]];for(;o.length;){const[n,s]=o.pop();for(const i in n){if(!Object.prototype.hasOwnProperty.call(n,i))continue;const f=n[i];if((0,c.isString)(f))S(f)?s[i]=v(f,`"${i}"`,r):s[i]=f;else if((0,c.isArray)(f)){const l=s[i]=[];for(let u=0;u<f.length;u++){const y=f[u];if((0,c.isString)(y))l.push(S(y)?v(y,`array index ${u} (prop "${i}")`,r):y);else if((0,c.isObject)(y)){const p={};l.push(p),o.push([y,p])}else l.push(y)}}else if((0,c.isObject)(f)){const l=s[i]&&typeof s[i]=="object"&&!(0,c.isArray)(s[i])?s[i]:s[i]={};o.push([f,l])}else s[i]=f}}return t},ee="Set",te="Map",ne=e=>!e||typeof e!="object"?e:e.__type===ee&&Array.isArray(e.values)?new Set(e.values):e.__type===te&&Array.isArray(e.entries)?new Map(e.entries):e,re=e=>{if(!e||typeof e!="object")return e;const t={},r=[];for(const o of Object.keys(e)){const n=e[o];(0,c.isString)(n)&&S(n)?r.push([o,n]):t[o]=ne(n)}for(const[o,n]of r)try{const s=Object.keys(t).map(i=>`var ${i} = __gs__[${JSON.stringify(i)}];`).join(`
8
+ `}return n+=`${o}}`,n},X=[/^\(\s*\{[^}]*\}\s*\)\s*=>/,/^(\([^)]*\)|[^=]*)\s*=>/,/^function[\s(]/,/^async\s+/,/^\(\s*function/,/^[a-zA-Z_$][a-zA-Z0-9_$]*\s*=>/],Y=/^["[{]/,Z=/^(export|import)\s/,S=e=>{if(!e)return!1;const t=e.trim().replace(/\n\s*/g," ").trim();if(t===""||t==="{}"||t==="[]"||Z.test(t)||!X.some(s=>s.test(t)))return!1;const o=t.charCodeAt(0),n=t.includes("=>");return!(o===123&&!n||o===91||Y.test(t)&&!n)},Q=e=>(0,eval)(e),m=(e,t)=>{const r=/^(\s*(?:async\s+)?function\s*[\w$]*\s*\([^)]*\)\s*)\{/.exec(e);if(!r)return null;const o=r[0].length,n=[];let s=o,i=1,l=null;const u=e.length,f=new RegExp("^(?:const|let|var)\\s+"+t+"\\b");for(;s<u&&i>0;){const y=e[s];if(y==="/"&&e[s+1]==="/"){const d=e.indexOf(`
9
+ `,s);s=d===-1?u:d;continue}if(y==="/"&&e[s+1]==="*"){const d=e.indexOf("*/",s+2);s=d===-1?u:d+2;continue}if(y==='"'||y==="'"||y==="`"){const d=y;for(s++;s<u;){if(e[s]==="\\"){s+=2;continue}if(e[s]===d){s++;break}if(d==="`"&&e[s]==="$"&&e[s+1]==="{"){s+=2;let h=1;for(;s<u&&h>0;)e[s]==="{"?h++:e[s]==="}"&&h--,s++;continue}s++}continue}if(y==="{"){i++,s++;continue}if(y==="}"){i--,s++;continue}if(i===1&&f.test(e.slice(s))){const d=s;let h=0,a=s;for(;a<u;){const w=e[a];if(w==='"'||w==="'"||w==="`"){const L=w;for(a++;a<u;){if(e[a]==="\\"){a+=2;continue}if(e[a]===L){a++;break}a++}continue}if(w==="("||w==="["||w==="{"){h++,a++;continue}if(w===")"||w==="]"||w==="}"){if(h===0)break;h--,a++;continue}if(h===0&&(w===";"||w===`
10
+ `)){a++;break}a++}n.push([d,a]),s=a;continue}s++}if(!n.length)return null;let p=e;for(let y=n.length-1;y>=0;y--)p=p.slice(0,n[y][0])+p.slice(n[y][1]);return p},v=(e,t,r)=>{const o=String(e).trimStart();if(/^(export|import)\s/.test(o))return e;try{return r.window.eval(`(${e})`)}catch(n){const s=n&&n.message?n.message:String(n),i=/await is only valid in async/.test(s),l=/Identifier '([^']+)' has already been declared/.exec(s);let u=null;if(i){const f=String(e).trim();if(/^function[\s(]/.test(f))try{u=r.window.eval("(async "+f+")")}catch{}}else if(l){let f=String(e),p=l[1];for(let y=0;y<5;y++){const d=m(f,p);if(!d||d===f)break;f=d;try{u=r.window.eval("("+f+")");break}catch(h){const a=/Identifier '([^']+)' has already been declared/.exec(h&&h.message||String(h));if(!a||a[1]!==p)break}}}return u||(typeof console<"u"&&console.warn&&console.warn(`[smbls] deepDestringifyFunctions: eval failed on ${t} \u2014 value will be left as a string. Reason: `+s+`.
11
+ First 200 chars of source: `+String(e).slice(0,200)),e)}},j=(e,t={},r={window:{eval:Q}})=>{if(!e||typeof e!="object")return t;const o=[[e,t]];for(;o.length;){const[n,s]=o.pop();for(const i in n){if(!Object.prototype.hasOwnProperty.call(n,i))continue;const l=n[i];if((0,c.isString)(l))S(l)?s[i]=v(l,`"${i}"`,r):s[i]=l;else if((0,c.isArray)(l)){const u=s[i]=[];for(let f=0;f<l.length;f++){const p=l[f];if((0,c.isString)(p))u.push(S(p)?v(p,`array index ${f} (prop "${i}")`,r):p);else if((0,c.isObject)(p)){const y={};u.push(y),o.push([p,y])}else u.push(p)}}else if((0,c.isObject)(l)){const u=s[i]&&typeof s[i]=="object"&&!(0,c.isArray)(s[i])?s[i]:s[i]={};o.push([l,u])}else s[i]=l}}return t},ee="Set",te="Map",ne=e=>!e||typeof e!="object"?e:e.__type===ee&&Array.isArray(e.values)?new Set(e.values):e.__type===te&&Array.isArray(e.entries)?new Map(e.entries):e,re=e=>{if(!e||typeof e!="object")return e;const t={},r=[];for(const o of Object.keys(e)){const n=e[o];(0,c.isString)(n)&&S(n)?r.push([o,n]):t[o]=ne(n)}for(const[o,n]of r)try{const s=Object.keys(t).map(i=>`var ${i} = __gs__[${JSON.stringify(i)}];`).join(`
12
12
  `);t[o]=_.window.eval(`(function(__gs__) { ${s}
13
- return (${n}); })`)(t)}catch{try{t[o]=_.window.eval(`(${n})`)}catch{t[o]=n}}return t},oe=(e,t={verbose:!0})=>{try{return e?_.window.eval("("+e+")"):{}}catch(r){t.verbose&&console.warn(r)}},se=(e,...t)=>Object.prototype.hasOwnProperty.call(e,...t),D=e=>{for(const t in e)return!1;return!0},ie=e=>(0,c.isObject)(e)&&D(e),ce=()=>Object.create(null),fe=(e,t,r={})=>{const o=r.exclude||[],n=r.preventUnderscore;for(const s in t)o.includes(s)||!n&&O(s)||s==="constructor"||s==="prototype"||t[s]!==void 0&&(e[s]=t[s]);return e},le=(e,t,r=[])=>{const o=r instanceof Set;for(const n in t)O(n)||n==="constructor"||n==="prototype"||(o?r.has(n):r.includes(n))||(e[n]=t[n]);return e},I=(e,t,r={},o=new WeakMap)=>{if(!(0,c.isObjectLike)(e)||!(0,c.isObjectLike)(t)||(0,g.isDOMNode)(e)||(0,g.isDOMNode)(t))return t;if(o.has(e))return o.get(e);o.set(e,e);const n=r.exclude,s=n?n instanceof Set?n:new Set(n):null,i=!r.preventForce;for(const f in t){if(!Object.prototype.hasOwnProperty.call(t,f)||s&&s.has(f)||i&&O(f)||f==="constructor"||f==="prototype")continue;const l=e[f],u=t[f];(0,g.isDOMNode)(u)?e[f]=u:(0,c.isObjectLike)(l)&&(0,c.isObjectLike)(u)?e[f]=I(l,u,r,o):u!==void 0&&(e[f]=u)}return e},M=(e,t,r=new Set)=>{if(typeof e!="object"||typeof t!="object"||e===null||t===null)return e===t;if(r.has(e)||r.has(t))return!0;r.add(e),r.add(t);const o=Object.keys(e),n=Object.keys(t);if(o.length!==n.length)return!1;for(let s=0;s<o.length;s++){const i=o[s];if(!Object.prototype.hasOwnProperty.call(t,i)||!M(e[i],t[i],r))return!1}return!0},ue=new Set(["node","__ref"]),ae=(e,t,r=ue)=>{if(e===t)return!0;if(!(0,c.isObjectLike)(e)||!(0,c.isObjectLike)(t)||(0,g.isDOMNode)(e)||(0,g.isDOMNode)(t))return e===t;const o=r instanceof Set?r:new Set(r),n=new WeakSet;function s(i,f){if(n.has(f))return!0;n.add(f);for(const l in f){if(!Object.prototype.hasOwnProperty.call(f,l)||o.has(l))continue;if(!Object.prototype.hasOwnProperty.call(i,l))return!1;const u=f[l],y=i[l];if((0,g.isDOMNode)(u)||(0,g.isDOMNode)(y)){if(u!==y)return!1}else if((0,c.isObjectLike)(u)&&(0,c.isObjectLike)(y)){if(!s(y,u))return!1}else if(u!==y)return!1}return!0}return s(e,t)},pe=(e,t)=>{if(t==null)return e;if((0,c.is)(t)("string","number"))delete e[t];else if((0,c.isArray)(t))for(let r=0;r<t.length;r++)delete e[t[r]];else throw new Error("Invalid input: props must be a string or an array of strings");return e},R=e=>{if(e===null||typeof e!="object")return e;const t=Object.create(null);for(const r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=R(e[r]));return t},ye=(e,t)=>{if(e.length===0)return t;const r={};let o=r;for(let n=0;n<e.length;n++)n===e.length-1&&t?o[e[n]]=t:(o[e[n]]={},o=o[e[n]]);return r},he=(e,t)=>{if(!Array.isArray(t))throw new Error("Path must be an array.");let r=e;for(let n=0;n<t.length-1;n++){if(r[t[n]]===void 0)return;r=r[t[n]]}const o=t[t.length-1];r&&Object.prototype.hasOwnProperty.call(r,o)&&delete r[o]},de=(e,t,r)=>{if(!Array.isArray(t))throw new Error("Path must be an array.");let o=e;for(let n=0;n<t.length-1;n++)(!o[t[n]]||typeof o[t[n]]!="object")&&(o[t[n]]={}),o=o[t[n]];return o[t[t.length-1]]=r,e},we=(e,t)=>{if(!Array.isArray(t))throw new Error("Path must be an array.");let r=e;for(let o=0;o<t.length;o++){if(r==null)return;r=r[t[o]]}return r},ge=e=>{let r=[],o=0;for(let n=0;n<e.length;n++)if(r.length<2)r.push(e[n]);else if(e[n]===r[n%2]?o++:(r=[e[n-1],e[n]],o=1),o>=20)return(A==="test"||A==="development")&&console.warn("Warning: Potential infinite loop detected due to repeated sequence:",r),!0},Oe=e=>{const t=new WeakSet;function r(o){if(o&&typeof o=="object"){if(t.has(o))return!0;t.add(o);for(const n in o)if(Object.prototype.hasOwnProperty.call(o,n)&&r(o[n]))return console.log(o,"cycle at "+n),!0}return!1}return r(e)},_e=(e,t)=>{const r=t instanceof Set?t:new Set(t),o={};for(const n in e)Object.prototype.hasOwnProperty.call(e,n)&&!r.has(n)&&(o[n]=e[n]);return o};
13
+ return (${n}); })`)(t)}catch{try{t[o]=_.window.eval(`(${n})`)}catch{t[o]=n}}return t},oe=(e,t={verbose:!0})=>{try{return e?_.window.eval("("+e+")"):{}}catch(r){t.verbose&&console.warn(r)}},se=(e,...t)=>Object.prototype.hasOwnProperty.call(e,...t),D=e=>{for(const t in e)return!1;return!0},ie=e=>(0,c.isObject)(e)&&D(e),ce=()=>Object.create(null),fe=(e,t,r={})=>{const o=r.exclude||[],n=r.preventUnderscore;for(const s in t)o.includes(s)||!n&&O(s)||s==="constructor"||s==="prototype"||t[s]!==void 0&&(e[s]=t[s]);return e},le=(e,t,r=[])=>{const o=r instanceof Set;for(const n in t)O(n)||n==="constructor"||n==="prototype"||(o?r.has(n):r.includes(n))||(e[n]=t[n]);return e},I=(e,t,r={},o=new WeakMap)=>{if(!(0,c.isObjectLike)(e)||!(0,c.isObjectLike)(t)||(0,g.isDOMNode)(e)||(0,g.isDOMNode)(t))return t;if(o.has(e))return o.get(e);o.set(e,e);const n=r.exclude,s=n?n instanceof Set?n:new Set(n):null,i=!r.preventForce;for(const l in t){if(!Object.prototype.hasOwnProperty.call(t,l)||s&&s.has(l)||i&&O(l)||l==="constructor"||l==="prototype")continue;const u=e[l],f=t[l];(0,g.isDOMNode)(f)?e[l]=f:(0,c.isObjectLike)(u)&&(0,c.isObjectLike)(f)?e[l]=I(u,f,r,o):f!==void 0&&(e[l]=f)}return e},M=(e,t,r=new Set)=>{if(typeof e!="object"||typeof t!="object"||e===null||t===null)return e===t;if(r.has(e)||r.has(t))return!0;r.add(e),r.add(t);const o=Object.keys(e),n=Object.keys(t);if(o.length!==n.length)return!1;for(let s=0;s<o.length;s++){const i=o[s];if(!Object.prototype.hasOwnProperty.call(t,i)||!M(e[i],t[i],r))return!1}return!0},ue=new Set(["node","__ref"]),ae=(e,t,r=ue)=>{if(e===t)return!0;if(!(0,c.isObjectLike)(e)||!(0,c.isObjectLike)(t)||(0,g.isDOMNode)(e)||(0,g.isDOMNode)(t))return e===t;const o=r instanceof Set?r:new Set(r),n=new WeakSet;function s(i,l){if(n.has(l))return!0;n.add(l);for(const u in l){if(!Object.prototype.hasOwnProperty.call(l,u)||o.has(u))continue;if(!Object.prototype.hasOwnProperty.call(i,u))return!1;const f=l[u],p=i[u];if((0,g.isDOMNode)(f)||(0,g.isDOMNode)(p)){if(f!==p)return!1}else if((0,c.isObjectLike)(f)&&(0,c.isObjectLike)(p)){if(!s(p,f))return!1}else if(f!==p)return!1}return!0}return s(e,t)},pe=(e,t)=>{if(t==null)return e;if((0,c.is)(t)("string","number"))delete e[t];else if((0,c.isArray)(t))for(let r=0;r<t.length;r++)delete e[t[r]];else throw new Error("Invalid input: props must be a string or an array of strings");return e},R=e=>{if(e===null||typeof e!="object")return e;const t=Object.create(null);for(const r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=R(e[r]));return t},ye=(e,t)=>{if(e.length===0)return t;const r={};let o=r;for(let n=0;n<e.length;n++)n===e.length-1&&t?o[e[n]]=t:(o[e[n]]={},o=o[e[n]]);return r},he=(e,t)=>{if(!Array.isArray(t))throw new Error("Path must be an array.");let r=e;for(let n=0;n<t.length-1;n++){if(r[t[n]]===void 0)return;r=r[t[n]]}const o=t[t.length-1];r&&Object.prototype.hasOwnProperty.call(r,o)&&delete r[o]},de=(e,t,r)=>{if(!Array.isArray(t))throw new Error("Path must be an array.");let o=e;for(let n=0;n<t.length-1;n++)(!o[t[n]]||typeof o[t[n]]!="object")&&(o[t[n]]={}),o=o[t[n]];return o[t[t.length-1]]=r,e},we=(e,t)=>{if(!Array.isArray(t))throw new Error("Path must be an array.");let r=e;for(let o=0;o<t.length;o++){if(r==null)return;r=r[t[o]]}return r},ge=e=>{let r=[],o=0;for(let n=0;n<e.length;n++)if(r.length<2)r.push(e[n]);else if(e[n]===r[n%2]?o++:(r=[e[n-1],e[n]],o=1),o>=20)return(A==="test"||A==="development")&&console.warn("Warning: Potential infinite loop detected due to repeated sequence:",r),!0},Oe=e=>{const t=new WeakSet;function r(o){if(o&&typeof o=="object"){if(t.has(o))return!0;t.add(o);for(const n in o)if(Object.prototype.hasOwnProperty.call(o,n)&&r(o[n]))return console.log(o,"cycle at "+n),!0}return!1}return r(e)},_e=(e,t)=>{const r=t instanceof Set?t:new Set(t),o={};for(const n in e)Object.prototype.hasOwnProperty.call(e,n)&&!r.has(n)&&(o[n]=e[n]);return o};
package/dist/cjs/scope.js CHANGED
@@ -1 +1 @@
1
- "use strict";var f=Object.defineProperty;var b=Object.getOwnPropertyDescriptor;var i=Object.getOwnPropertyNames;var a=Object.prototype.hasOwnProperty;var O=(o,c)=>{for(var p in c)f(o,p,{get:c[p],enumerable:!0})},S=(o,c,p,s)=>{if(c&&typeof c=="object"||typeof c=="function")for(let t of i(c))!a.call(o,t)&&t!==p&&f(o,t,{get:()=>c[t],enumerable:!(s=b(c,t))||s.enumerable});return o};var g=o=>S(f({},"__esModule",{value:!0}),o);var x={};O(x,{createScope:()=>j});module.exports=g(x);const j=(o,c)=>{const{__ref:p}=o,s=o.context||c.context||p.root?.context;s&&!s.globalScope&&(s.globalScope={});const t=c.scope||p.root?.scope,e=s?.globalScope;if(!o.scope)t?o.scope=t:e?o.scope=Object.create(e):o.scope={};else if(typeof o.scope=="object"&&o.scope!==null&&Object.getPrototypeOf(o.scope)===Object.prototype){const r=t||e;r&&Object.setPrototypeOf(o.scope,r)}};
1
+ "use strict";var f=Object.defineProperty;var b=Object.getOwnPropertyDescriptor;var i=Object.getOwnPropertyNames;var l=Object.prototype.hasOwnProperty;var O=(o,c)=>{for(var t in c)f(o,t,{get:c[t],enumerable:!0})},a=(o,c,t,p)=>{if(c&&typeof c=="object"||typeof c=="function")for(let e of i(c))!l.call(o,e)&&e!==t&&f(o,e,{get:()=>c[e],enumerable:!(p=b(c,e))||p.enumerable});return o};var y=o=>a(f({},"__esModule",{value:!0}),o);var u={};O(u,{createScope:()=>j});module.exports=y(u);const g=(o,c)=>{let t=c;for(;t;){if(t===o)return!0;t=Object.getPrototypeOf(t)}return!1},j=(o,c)=>{const{__ref:t}=o,p=o.context||c.context||t.root?.context;p&&!p.globalScope&&(p.globalScope={});const e=c.scope||t.root?.scope,s=p?.globalScope;if(!o.scope)e?o.scope=e:s?o.scope=Object.create(s):o.scope={};else if(typeof o.scope=="object"&&o.scope!==null&&Object.getPrototypeOf(o.scope)===Object.prototype){const r=e||s;r&&!g(o.scope,r)&&Object.setPrototypeOf(o.scope,r)}};
@@ -1,13 +1,13 @@
1
- import{window as k}from"./globals.js";import{isFunction as P,isObjectLike as w,isObject as S,isArray as O,isString as x,is as I}from"./types.js";import{unstackArrayOfObjects as M}from"./array.js";import{stringIncludesAny as R}from"./string.js";import{isDOMNode as g}from"./node.js";import{METHODS_EXL as L}from"./keys.js";const A="production",_=e=>e.charCodeAt(0)===95&&e.charCodeAt(1)===95,$=(e,t,r,o)=>{if(P(e))return t?typeof e.call!="function"?e:e.call(t,t,r||t.state,o||t.context):void 0;if(e!=null&&t?.context?.plugins&&(O(e)||S(e)&&!g(e))){const n=t.context.plugins;for(const s of n)if(s.resolveHandler){const i=s.resolveHandler(e,t);if(typeof i=="function")return $(i,t,r,o)}}return e},ne=(e,t,r)=>{for(const o in t)e[o]=$(t[o],r)},re=(e,t,r=[])=>{const o=r instanceof Set;for(const n in t)Object.prototype.hasOwnProperty.call(t,n)&&(_(n)||(o?r.has(n):r.includes(n))||e[n]===void 0&&(e[n]=t[n]));return e},oe=(e,t,r=L)=>v(e,t,r,null),v=(e,t,r,o)=>{if(e===t)return e;if(o){for(let s=0;s<o.length;s+=2)if(o[s]===e&&o[s+1]===t)return e}const n=r instanceof Set;for(const s in t){if(!Object.prototype.hasOwnProperty.call(t,s)||_(s)||s==="constructor"||s==="prototype"||(n?r.has(s):r.includes(s)))continue;const i=e[s],c=t[s];if(w(i)&&w(c)){const f=o||[];f.push(e,t),v(i,c,r,f),f.length-=2}else i===void 0&&(e[s]=c)}return e},se=(e,t=[])=>{const r=t instanceof Set,o={};for(const n in e)Object.prototype.hasOwnProperty.call(e,n)&&(_(n)||(r?t.has(n):t.includes(n))||(o[n]=e[n]));return o},ie=(e,t={})=>{const{exclude:r=[],cleanUndefined:o=!1,cleanNull:n=!1,visited:s=new WeakMap,handleExtends:i=!1}=t;if(!w(e)||g(e))return e;if(s.has(e))return s.get(e);const c=r instanceof Set?r:r.length>3?new Set(r):null,f=a=>c?c.has(a):r.includes(a),l=O(e)?[]:{};s.set(e,l);const p=[[e,l]];for(;p.length;){const[a,h]=p.pop();for(const y in a){if(!Object.prototype.hasOwnProperty.call(a,y)||_(y)||y==="__proto__"||f(y))continue;const u=a[y];if(!(o&&u===void 0)&&!(n&&u===null)){if(g(u)){h[y]=u;continue}if(i&&y==="extends"&&O(u)){h[y]=M(u,r);continue}if(P(u)){h[y]=u;continue}if(w(u))if(s.has(u))h[y]=s.get(u);else{const d=O(u)?[]:{};s.set(u,d),h[y]=d,p.push([u,d])}else h[y]=u}}}return l},T=(e,t={})=>{(e.node||e.__ref||e.parent||e.__element||e.parse)&&((e.__element||e.parent?.__element).warn("Trying to clone element or state at",e),e=e.parse?.());for(const r in e){const o=e[r];if(P(o))t[r]=o.toString();else if(S(o))t[r]={},T(o,t[r]);else if(O(o)){const n=t[r]=[];for(let s=0;s<o.length;s++){const i=o[s];S(i)?(n[s]={},T(i,n[s])):P(i)?n[s]=i.toString():n[s]=i}}else t[r]=o}return t},W=new Set(["&","*","-",":","%","{","}",">","<","@",".","/","!"," "]),N=(e={},t=0)=>{if(e===null||typeof e!="object")return String(e);let r=!1;for(const s in e){r=!0;break}if(!r)return"{}";const o=" ".repeat(t);let n=`{
2
- `;for(const s in e){if(!Object.prototype.hasOwnProperty.call(e,s))continue;const i=e[s];let c=!1;for(let l=0;l<s.length;l++)if(W.has(s[l])){c=!0;break}const f=c?`'${s}'`:s;if(n+=`${o} ${f}: `,O(i)){n+=`[
3
- `;for(const l of i)w(l)&&l!==null?n+=`${o} ${N(l,t+2)},
4
- `:x(l)?n+=`${o} '${l}',
5
- `:n+=`${o} ${l},
6
- `;n+=`${o} ]`}else w(i)?n+=N(i,t+1):x(i)?n+=R(i,[`
1
+ import{window as k}from"./globals.js";import{isFunction as P,isObjectLike as w,isObject as S,isArray as O,isString as x,is as I}from"./types.js";import{unstackArrayOfObjects as M}from"./array.js";import{stringIncludesAny as R}from"./string.js";import{isDOMNode as g}from"./node.js";import{METHODS_EXL as L}from"./keys.js";const A="production",_=e=>e.charCodeAt(0)===95&&e.charCodeAt(1)===95,$=(e,t,r,s)=>{if(P(e))return t?typeof e.call!="function"?e:e.call(t,t,r||t.state,s||t.context):void 0;if(e!=null&&t?.context?.plugins&&(O(e)||S(e)&&!g(e))){const n=t.context.plugins;for(const o of n)if(o.resolveHandler){const i=o.resolveHandler(e,t);if(typeof i=="function")return $(i,t,r,s)}}return e},ne=(e,t,r)=>{for(const s in t)e[s]=$(t[s],r)},re=(e,t,r=[])=>{const s=r instanceof Set;for(const n in t)Object.prototype.hasOwnProperty.call(t,n)&&(_(n)||(s?r.has(n):r.includes(n))||e[n]===void 0&&(e[n]=t[n]));return e},oe=(e,t,r=L)=>v(e,t,r,null),v=(e,t,r,s)=>{if(e===t)return e;if(s){for(let o=0;o<s.length;o+=2)if(s[o]===e&&s[o+1]===t)return e}const n=r instanceof Set;for(const o in t){if(!Object.prototype.hasOwnProperty.call(t,o)||_(o)||o==="constructor"||o==="prototype"||(n?r.has(o):r.includes(o)))continue;const i=e[o],f=t[o];if(w(i)&&w(f)){const l=s||[];l.push(e,t),v(i,f,r,l),l.length-=2}else i===void 0&&(e[o]=f)}return e},se=(e,t=[])=>{const r=t instanceof Set,s={};for(const n in e)Object.prototype.hasOwnProperty.call(e,n)&&(_(n)||(r?t.has(n):t.includes(n))||(s[n]=e[n]));return s},ie=(e,t={})=>{const{exclude:r=[],cleanUndefined:s=!1,cleanNull:n=!1,visited:o=new WeakMap,handleExtends:i=!1}=t;if(!w(e)||g(e))return e;if(o.has(e))return o.get(e);const f=r instanceof Set?r:r.length>3?new Set(r):null,l=p=>f?f.has(p):r.includes(p),c=O(e)?[]:{};o.set(e,c);const a=[[e,c]];for(;a.length;){const[p,h]=a.pop();for(const y in p){if(!Object.prototype.hasOwnProperty.call(p,y)||_(y)||y==="__proto__"||l(y))continue;const u=p[y];if(!(s&&u===void 0)&&!(n&&u===null)){if(g(u)){h[y]=u;continue}if(i&&y==="extends"&&O(u)){h[y]=M(u,r);continue}if(P(u)){h[y]=u;continue}if(w(u))if(o.has(u))h[y]=o.get(u);else{const d=O(u)?[]:{};o.set(u,d),h[y]=d,a.push([u,d])}else h[y]=u}}}return c},T=(e,t={})=>{(e.node||e.__ref||e.parent||e.__element||e.parse)&&((e.__element||e.parent?.__element).warn("Trying to clone element or state at",e),e=e.parse?.());for(const r in e){const s=e[r];if(P(s))t[r]=s.toString();else if(S(s))t[r]={},T(s,t[r]);else if(O(s)){const n=t[r]=[];for(let o=0;o<s.length;o++){const i=s[o];S(i)?(n[o]={},T(i,n[o])):P(i)?n[o]=i.toString():n[o]=i}}else t[r]=s}return t},W=new Set(["&","*","-",":","%","{","}",">","<","@",".","/","!"," "]),N=(e={},t=0)=>{if(e===null||typeof e!="object")return String(e);let r=!1;for(const o in e){r=!0;break}if(!r)return"{}";const s=" ".repeat(t);let n=`{
2
+ `;for(const o in e){if(!Object.prototype.hasOwnProperty.call(e,o))continue;const i=e[o];let f=!1;for(let c=0;c<o.length;c++)if(W.has(o[c])){f=!0;break}const l=f?`'${o}'`:o;if(n+=`${s} ${l}: `,O(i)){n+=`[
3
+ `;for(const c of i)w(c)&&c!==null?n+=`${s} ${N(c,t+2)},
4
+ `:x(c)?n+=`${s} '${c}',
5
+ `:n+=`${s} ${c},
6
+ `;n+=`${s} ]`}else w(i)?n+=N(i,t+1):x(i)?n+=R(i,[`
7
7
  `,"'"])?`\`${i}\``:`'${i}'`:n+=i;n+=`,
8
- `}return n+=`${o}}`,n},F=[/^\(\s*\{[^}]*\}\s*\)\s*=>/,/^(\([^)]*\)|[^=]*)\s*=>/,/^function[\s(]/,/^async\s+/,/^\(\s*function/,/^[a-zA-Z_$][a-zA-Z0-9_$]*\s*=>/],b=/^["[{]/,q=/^(export|import)\s/,E=e=>{if(!e)return!1;const t=e.trim().replace(/\n\s*/g," ").trim();if(t===""||t==="{}"||t==="[]"||q.test(t)||!F.some(s=>s.test(t)))return!1;const o=t.charCodeAt(0),n=t.includes("=>");return!(o===123&&!n||o===91||b.test(t)&&!n)},B=e=>(0,eval)(e),G=(e,t)=>{const r=/^(\s*(?:async\s+)?function\s*[\w$]*\s*\([^)]*\)\s*)\{/.exec(e);if(!r)return null;const o=r[0].length,n=[];let s=o,i=1,c=null;const f=e.length,l=new RegExp("^(?:const|let|var)\\s+"+t+"\\b");for(;s<f&&i>0;){const a=e[s];if(a==="/"&&e[s+1]==="/"){const h=e.indexOf(`
9
- `,s);s=h===-1?f:h;continue}if(a==="/"&&e[s+1]==="*"){const h=e.indexOf("*/",s+2);s=h===-1?f:h+2;continue}if(a==='"'||a==="'"||a==="`"){const h=a;for(s++;s<f;){if(e[s]==="\\"){s+=2;continue}if(e[s]===h){s++;break}if(h==="`"&&e[s]==="$"&&e[s+1]==="{"){s+=2;let y=1;for(;s<f&&y>0;)e[s]==="{"?y++:e[s]==="}"&&y--,s++;continue}s++}continue}if(a==="{"){i++,s++;continue}if(a==="}"){i--,s++;continue}if(i===1&&l.test(e.slice(s))){const h=s;let y=0,u=s;for(;u<f;){const d=e[u];if(d==='"'||d==="'"||d==="`"){const D=d;for(u++;u<f;){if(e[u]==="\\"){u+=2;continue}if(e[u]===D){u++;break}u++}continue}if(d==="("||d==="["||d==="{"){y++,u++;continue}if(d===")"||d==="]"||d==="}"){if(y===0)break;y--,u++;continue}if(y===0&&(d===";"||d===`
10
- `)){u++;break}u++}n.push([h,u]),s=u;continue}s++}if(!n.length)return null;let p=e;for(let a=n.length-1;a>=0;a--)p=p.slice(0,n[a][0])+p.slice(n[a][1]);return p},C=(e,t,r)=>{try{return r.window.eval(`(${e})`)}catch(o){const n=o&&o.message?o.message:String(o),s=/await is only valid in async/.test(n),i=/Identifier '([^']+)' has already been declared/.exec(n);let c=null;if(s){const f=String(e).trim();if(/^function[\s(]/.test(f))try{c=r.window.eval("(async "+f+")")}catch{}}else if(i){let f=String(e),l=i[1];for(let p=0;p<5;p++){const a=G(f,l);if(!a||a===f)break;f=a;try{c=r.window.eval("("+f+")");break}catch(h){const y=/Identifier '([^']+)' has already been declared/.exec(h&&h.message||String(h));if(!y||y[1]!==l)break}}}return c||(typeof console<"u"&&console.warn&&console.warn(`[smbls] deepDestringifyFunctions: eval failed on ${t} \u2014 value will be left as a string. Reason: `+n+`.
11
- First 200 chars of source: `+String(e).slice(0,200)),e)}},ce=(e,t={},r={window:{eval:B}})=>{if(!e||typeof e!="object")return t;const o=[[e,t]];for(;o.length;){const[n,s]=o.pop();for(const i in n){if(!Object.prototype.hasOwnProperty.call(n,i))continue;const c=n[i];if(x(c))E(c)?s[i]=C(c,`"${i}"`,r):s[i]=c;else if(O(c)){const f=s[i]=[];for(let l=0;l<c.length;l++){const p=c[l];if(x(p))f.push(E(p)?C(p,`array index ${l} (prop "${i}")`,r):p);else if(S(p)){const a={};f.push(a),o.push([p,a])}else f.push(p)}}else if(S(c)){const f=s[i]&&typeof s[i]=="object"&&!O(s[i])?s[i]:s[i]={};o.push([c,f])}else s[i]=c}}return t},H="Set",J="Map",U=e=>!e||typeof e!="object"?e:e.__type===H&&Array.isArray(e.values)?new Set(e.values):e.__type===J&&Array.isArray(e.entries)?new Map(e.entries):e,fe=e=>{if(!e||typeof e!="object")return e;const t={},r=[];for(const o of Object.keys(e)){const n=e[o];x(n)&&E(n)?r.push([o,n]):t[o]=U(n)}for(const[o,n]of r)try{const s=Object.keys(t).map(i=>`var ${i} = __gs__[${JSON.stringify(i)}];`).join(`
12
- `);t[o]=k.eval(`(function(__gs__) { ${s}
13
- return (${n}); })`)(t)}catch{try{t[o]=k.eval(`(${n})`)}catch{t[o]=n}}return t},le=(e,t={verbose:!0})=>{try{return e?k.eval("("+e+")"):{}}catch(r){t.verbose&&console.warn(r)}},ue=(e,...t)=>Object.prototype.hasOwnProperty.call(e,...t),V=e=>{for(const t in e)return!1;return!0},ae=e=>S(e)&&V(e),pe=()=>Object.create(null),ye=(e,t,r={})=>{const o=r.exclude||[],n=r.preventUnderscore;for(const s in t)o.includes(s)||!n&&_(s)||s==="constructor"||s==="prototype"||t[s]!==void 0&&(e[s]=t[s]);return e},he=(e,t,r=[])=>{const o=r instanceof Set;for(const n in t)_(n)||n==="constructor"||n==="prototype"||(o?r.has(n):r.includes(n))||(e[n]=t[n]);return e},z=(e,t,r={},o=new WeakMap)=>{if(!w(e)||!w(t)||g(e)||g(t))return t;if(o.has(e))return o.get(e);o.set(e,e);const n=r.exclude,s=n?n instanceof Set?n:new Set(n):null,i=!r.preventForce;for(const c in t){if(!Object.prototype.hasOwnProperty.call(t,c)||s&&s.has(c)||i&&_(c)||c==="constructor"||c==="prototype")continue;const f=e[c],l=t[c];g(l)?e[c]=l:w(f)&&w(l)?e[c]=z(f,l,r,o):l!==void 0&&(e[c]=l)}return e},K=(e,t,r=new Set)=>{if(typeof e!="object"||typeof t!="object"||e===null||t===null)return e===t;if(r.has(e)||r.has(t))return!0;r.add(e),r.add(t);const o=Object.keys(e),n=Object.keys(t);if(o.length!==n.length)return!1;for(let s=0;s<o.length;s++){const i=o[s];if(!Object.prototype.hasOwnProperty.call(t,i)||!K(e[i],t[i],r))return!1}return!0},X=new Set(["node","__ref"]),de=(e,t,r=X)=>{if(e===t)return!0;if(!w(e)||!w(t)||g(e)||g(t))return e===t;const o=r instanceof Set?r:new Set(r),n=new WeakSet;function s(i,c){if(n.has(c))return!0;n.add(c);for(const f in c){if(!Object.prototype.hasOwnProperty.call(c,f)||o.has(f))continue;if(!Object.prototype.hasOwnProperty.call(i,f))return!1;const l=c[f],p=i[f];if(g(l)||g(p)){if(l!==p)return!1}else if(w(l)&&w(p)){if(!s(p,l))return!1}else if(l!==p)return!1}return!0}return s(e,t)},we=(e,t)=>{if(t==null)return e;if(I(t)("string","number"))delete e[t];else if(O(t))for(let r=0;r<t.length;r++)delete e[t[r]];else throw new Error("Invalid input: props must be a string or an array of strings");return e},Y=e=>{if(e===null||typeof e!="object")return e;const t=Object.create(null);for(const r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=Y(e[r]));return t},ge=(e,t)=>{if(e.length===0)return t;const r={};let o=r;for(let n=0;n<e.length;n++)n===e.length-1&&t?o[e[n]]=t:(o[e[n]]={},o=o[e[n]]);return r},Oe=(e,t)=>{if(!Array.isArray(t))throw new Error("Path must be an array.");let r=e;for(let n=0;n<t.length-1;n++){if(r[t[n]]===void 0)return;r=r[t[n]]}const o=t[t.length-1];r&&Object.prototype.hasOwnProperty.call(r,o)&&delete r[o]},_e=(e,t,r)=>{if(!Array.isArray(t))throw new Error("Path must be an array.");let o=e;for(let n=0;n<t.length-1;n++)(!o[t[n]]||typeof o[t[n]]!="object")&&(o[t[n]]={}),o=o[t[n]];return o[t[t.length-1]]=r,e},Se=(e,t)=>{if(!Array.isArray(t))throw new Error("Path must be an array.");let r=e;for(let o=0;o<t.length;o++){if(r==null)return;r=r[t[o]]}return r},xe=e=>{let r=[],o=0;for(let n=0;n<e.length;n++)if(r.length<2)r.push(e[n]);else if(e[n]===r[n%2]?o++:(r=[e[n-1],e[n]],o=1),o>=20)return(A==="test"||A==="development")&&console.warn("Warning: Potential infinite loop detected due to repeated sequence:",r),!0},Pe=e=>{const t=new WeakSet;function r(o){if(o&&typeof o=="object"){if(t.has(o))return!0;t.add(o);for(const n in o)if(Object.prototype.hasOwnProperty.call(o,n)&&r(o[n]))return console.log(o,"cycle at "+n),!0}return!1}return r(e)},ke=(e,t)=>{const r=t instanceof Set?t:new Set(t),o={};for(const n in e)Object.prototype.hasOwnProperty.call(e,n)&&!r.has(n)&&(o[n]=e[n]);return o};export{se as clone,ge as createNestedObject,Y as createObjectWithoutPrototype,ie as deepClone,de as deepContains,ce as deepDestringifyFunctions,oe as deepMerge,T as deepStringifyFunctions,fe as destringifyGlobalScope,xe as detectInfiniteLoop,ke as excludeKeysFromObject,$ as exec,Se as getInObjectByPath,E as hasFunction,ue as hasOwnProperty,Pe as isCyclic,V as isEmpty,ae as isEmptyObject,K as isEqualDeep,pe as makeObjectWithoutPrototype,ne as map,re as merge,N as objectToString,ye as overwrite,z as overwriteDeep,he as overwriteShallow,we as removeFromObject,Oe as removeNestedKeyByPath,_e as setInObjectByPath,le as stringToObject};
8
+ `}return n+=`${s}}`,n},F=[/^\(\s*\{[^}]*\}\s*\)\s*=>/,/^(\([^)]*\)|[^=]*)\s*=>/,/^function[\s(]/,/^async\s+/,/^\(\s*function/,/^[a-zA-Z_$][a-zA-Z0-9_$]*\s*=>/],b=/^["[{]/,q=/^(export|import)\s/,E=e=>{if(!e)return!1;const t=e.trim().replace(/\n\s*/g," ").trim();if(t===""||t==="{}"||t==="[]"||q.test(t)||!F.some(o=>o.test(t)))return!1;const s=t.charCodeAt(0),n=t.includes("=>");return!(s===123&&!n||s===91||b.test(t)&&!n)},B=e=>(0,eval)(e),G=(e,t)=>{const r=/^(\s*(?:async\s+)?function\s*[\w$]*\s*\([^)]*\)\s*)\{/.exec(e);if(!r)return null;const s=r[0].length,n=[];let o=s,i=1,f=null;const l=e.length,c=new RegExp("^(?:const|let|var)\\s+"+t+"\\b");for(;o<l&&i>0;){const p=e[o];if(p==="/"&&e[o+1]==="/"){const h=e.indexOf(`
9
+ `,o);o=h===-1?l:h;continue}if(p==="/"&&e[o+1]==="*"){const h=e.indexOf("*/",o+2);o=h===-1?l:h+2;continue}if(p==='"'||p==="'"||p==="`"){const h=p;for(o++;o<l;){if(e[o]==="\\"){o+=2;continue}if(e[o]===h){o++;break}if(h==="`"&&e[o]==="$"&&e[o+1]==="{"){o+=2;let y=1;for(;o<l&&y>0;)e[o]==="{"?y++:e[o]==="}"&&y--,o++;continue}o++}continue}if(p==="{"){i++,o++;continue}if(p==="}"){i--,o++;continue}if(i===1&&c.test(e.slice(o))){const h=o;let y=0,u=o;for(;u<l;){const d=e[u];if(d==='"'||d==="'"||d==="`"){const D=d;for(u++;u<l;){if(e[u]==="\\"){u+=2;continue}if(e[u]===D){u++;break}u++}continue}if(d==="("||d==="["||d==="{"){y++,u++;continue}if(d===")"||d==="]"||d==="}"){if(y===0)break;y--,u++;continue}if(y===0&&(d===";"||d===`
10
+ `)){u++;break}u++}n.push([h,u]),o=u;continue}o++}if(!n.length)return null;let a=e;for(let p=n.length-1;p>=0;p--)a=a.slice(0,n[p][0])+a.slice(n[p][1]);return a},C=(e,t,r)=>{const s=String(e).trimStart();if(/^(export|import)\s/.test(s))return e;try{return r.window.eval(`(${e})`)}catch(n){const o=n&&n.message?n.message:String(n),i=/await is only valid in async/.test(o),f=/Identifier '([^']+)' has already been declared/.exec(o);let l=null;if(i){const c=String(e).trim();if(/^function[\s(]/.test(c))try{l=r.window.eval("(async "+c+")")}catch{}}else if(f){let c=String(e),a=f[1];for(let p=0;p<5;p++){const h=G(c,a);if(!h||h===c)break;c=h;try{l=r.window.eval("("+c+")");break}catch(y){const u=/Identifier '([^']+)' has already been declared/.exec(y&&y.message||String(y));if(!u||u[1]!==a)break}}}return l||(typeof console<"u"&&console.warn&&console.warn(`[smbls] deepDestringifyFunctions: eval failed on ${t} \u2014 value will be left as a string. Reason: `+o+`.
11
+ First 200 chars of source: `+String(e).slice(0,200)),e)}},ce=(e,t={},r={window:{eval:B}})=>{if(!e||typeof e!="object")return t;const s=[[e,t]];for(;s.length;){const[n,o]=s.pop();for(const i in n){if(!Object.prototype.hasOwnProperty.call(n,i))continue;const f=n[i];if(x(f))E(f)?o[i]=C(f,`"${i}"`,r):o[i]=f;else if(O(f)){const l=o[i]=[];for(let c=0;c<f.length;c++){const a=f[c];if(x(a))l.push(E(a)?C(a,`array index ${c} (prop "${i}")`,r):a);else if(S(a)){const p={};l.push(p),s.push([a,p])}else l.push(a)}}else if(S(f)){const l=o[i]&&typeof o[i]=="object"&&!O(o[i])?o[i]:o[i]={};s.push([f,l])}else o[i]=f}}return t},H="Set",J="Map",U=e=>!e||typeof e!="object"?e:e.__type===H&&Array.isArray(e.values)?new Set(e.values):e.__type===J&&Array.isArray(e.entries)?new Map(e.entries):e,fe=e=>{if(!e||typeof e!="object")return e;const t={},r=[];for(const s of Object.keys(e)){const n=e[s];x(n)&&E(n)?r.push([s,n]):t[s]=U(n)}for(const[s,n]of r)try{const o=Object.keys(t).map(i=>`var ${i} = __gs__[${JSON.stringify(i)}];`).join(`
12
+ `);t[s]=k.eval(`(function(__gs__) { ${o}
13
+ return (${n}); })`)(t)}catch{try{t[s]=k.eval(`(${n})`)}catch{t[s]=n}}return t},le=(e,t={verbose:!0})=>{try{return e?k.eval("("+e+")"):{}}catch(r){t.verbose&&console.warn(r)}},ue=(e,...t)=>Object.prototype.hasOwnProperty.call(e,...t),V=e=>{for(const t in e)return!1;return!0},ae=e=>S(e)&&V(e),pe=()=>Object.create(null),ye=(e,t,r={})=>{const s=r.exclude||[],n=r.preventUnderscore;for(const o in t)s.includes(o)||!n&&_(o)||o==="constructor"||o==="prototype"||t[o]!==void 0&&(e[o]=t[o]);return e},he=(e,t,r=[])=>{const s=r instanceof Set;for(const n in t)_(n)||n==="constructor"||n==="prototype"||(s?r.has(n):r.includes(n))||(e[n]=t[n]);return e},z=(e,t,r={},s=new WeakMap)=>{if(!w(e)||!w(t)||g(e)||g(t))return t;if(s.has(e))return s.get(e);s.set(e,e);const n=r.exclude,o=n?n instanceof Set?n:new Set(n):null,i=!r.preventForce;for(const f in t){if(!Object.prototype.hasOwnProperty.call(t,f)||o&&o.has(f)||i&&_(f)||f==="constructor"||f==="prototype")continue;const l=e[f],c=t[f];g(c)?e[f]=c:w(l)&&w(c)?e[f]=z(l,c,r,s):c!==void 0&&(e[f]=c)}return e},K=(e,t,r=new Set)=>{if(typeof e!="object"||typeof t!="object"||e===null||t===null)return e===t;if(r.has(e)||r.has(t))return!0;r.add(e),r.add(t);const s=Object.keys(e),n=Object.keys(t);if(s.length!==n.length)return!1;for(let o=0;o<s.length;o++){const i=s[o];if(!Object.prototype.hasOwnProperty.call(t,i)||!K(e[i],t[i],r))return!1}return!0},X=new Set(["node","__ref"]),de=(e,t,r=X)=>{if(e===t)return!0;if(!w(e)||!w(t)||g(e)||g(t))return e===t;const s=r instanceof Set?r:new Set(r),n=new WeakSet;function o(i,f){if(n.has(f))return!0;n.add(f);for(const l in f){if(!Object.prototype.hasOwnProperty.call(f,l)||s.has(l))continue;if(!Object.prototype.hasOwnProperty.call(i,l))return!1;const c=f[l],a=i[l];if(g(c)||g(a)){if(c!==a)return!1}else if(w(c)&&w(a)){if(!o(a,c))return!1}else if(c!==a)return!1}return!0}return o(e,t)},we=(e,t)=>{if(t==null)return e;if(I(t)("string","number"))delete e[t];else if(O(t))for(let r=0;r<t.length;r++)delete e[t[r]];else throw new Error("Invalid input: props must be a string or an array of strings");return e},Y=e=>{if(e===null||typeof e!="object")return e;const t=Object.create(null);for(const r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=Y(e[r]));return t},ge=(e,t)=>{if(e.length===0)return t;const r={};let s=r;for(let n=0;n<e.length;n++)n===e.length-1&&t?s[e[n]]=t:(s[e[n]]={},s=s[e[n]]);return r},Oe=(e,t)=>{if(!Array.isArray(t))throw new Error("Path must be an array.");let r=e;for(let n=0;n<t.length-1;n++){if(r[t[n]]===void 0)return;r=r[t[n]]}const s=t[t.length-1];r&&Object.prototype.hasOwnProperty.call(r,s)&&delete r[s]},_e=(e,t,r)=>{if(!Array.isArray(t))throw new Error("Path must be an array.");let s=e;for(let n=0;n<t.length-1;n++)(!s[t[n]]||typeof s[t[n]]!="object")&&(s[t[n]]={}),s=s[t[n]];return s[t[t.length-1]]=r,e},Se=(e,t)=>{if(!Array.isArray(t))throw new Error("Path must be an array.");let r=e;for(let s=0;s<t.length;s++){if(r==null)return;r=r[t[s]]}return r},xe=e=>{let r=[],s=0;for(let n=0;n<e.length;n++)if(r.length<2)r.push(e[n]);else if(e[n]===r[n%2]?s++:(r=[e[n-1],e[n]],s=1),s>=20)return(A==="test"||A==="development")&&console.warn("Warning: Potential infinite loop detected due to repeated sequence:",r),!0},Pe=e=>{const t=new WeakSet;function r(s){if(s&&typeof s=="object"){if(t.has(s))return!0;t.add(s);for(const n in s)if(Object.prototype.hasOwnProperty.call(s,n)&&r(s[n]))return console.log(s,"cycle at "+n),!0}return!1}return r(e)},ke=(e,t)=>{const r=t instanceof Set?t:new Set(t),s={};for(const n in e)Object.prototype.hasOwnProperty.call(e,n)&&!r.has(n)&&(s[n]=e[n]);return s};export{se as clone,ge as createNestedObject,Y as createObjectWithoutPrototype,ie as deepClone,de as deepContains,ce as deepDestringifyFunctions,oe as deepMerge,T as deepStringifyFunctions,fe as destringifyGlobalScope,xe as detectInfiniteLoop,ke as excludeKeysFromObject,$ as exec,Se as getInObjectByPath,E as hasFunction,ue as hasOwnProperty,Pe as isCyclic,V as isEmpty,ae as isEmptyObject,K as isEqualDeep,pe as makeObjectWithoutPrototype,ne as map,re as merge,N as objectToString,ye as overwrite,z as overwriteDeep,he as overwriteShallow,we as removeFromObject,Oe as removeNestedKeyByPath,_e as setInObjectByPath,le as stringToObject};
package/dist/esm/scope.js CHANGED
@@ -1 +1 @@
1
- const r=(o,s)=>{const{__ref:e}=o,c=o.context||s.context||e.root?.context;c&&!c.globalScope&&(c.globalScope={});const t=s.scope||e.root?.scope,p=c?.globalScope;if(!o.scope)t?o.scope=t:p?o.scope=Object.create(p):o.scope={};else if(typeof o.scope=="object"&&o.scope!==null&&Object.getPrototypeOf(o.scope)===Object.prototype){const f=t||p;f&&Object.setPrototypeOf(o.scope,f)}};export{r as createScope};
1
+ const f=(o,t)=>{let c=t;for(;c;){if(c===o)return!0;c=Object.getPrototypeOf(c)}return!1},b=(o,t)=>{const{__ref:c}=o,e=o.context||t.context||c.root?.context;e&&!e.globalScope&&(e.globalScope={});const p=t.scope||c.root?.scope,s=e?.globalScope;if(!o.scope)p?o.scope=p:s?o.scope=Object.create(s):o.scope={};else if(typeof o.scope=="object"&&o.scope!==null&&Object.getPrototypeOf(o.scope)===Object.prototype){const r=p||s;r&&!f(o.scope,r)&&Object.setPrototypeOf(o.scope,r)}};export{b as createScope};
package/object.js CHANGED
@@ -494,6 +494,15 @@ const stripTopLevelDeclaration = (src, name) => {
494
494
  // result directly. `label` is used in warning messages so the surface
495
495
  // of the failure (object key vs array index) is identifiable.
496
496
  const _destringifyFnString = (str, label, opts) => {
497
+ // Module SOURCE files are stored as plain strings on project data
498
+ // (`code` fields driving CodePreview etc. — they start with
499
+ // `export …` / `import …`). They are display text, not function
500
+ // expressions: leaving them as strings IS the correct outcome, so
501
+ // skip the eval (which can only throw "Unexpected token 'export'")
502
+ // and the FR-1 warning that flooded the console once per component
503
+ // on every project fetch (2026-06-06).
504
+ const head = String(str).trimStart()
505
+ if (/^(export|import)\s/.test(head)) return str
497
506
  try {
498
507
  return opts.window.eval(`(${str})`)
499
508
  } catch (e) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@symbo.ls/utils",
3
- "version": "3.14.104",
3
+ "version": "3.14.276",
4
4
  "license": "CC-BY-NC-4.0",
5
5
  "type": "module",
6
6
  "module": "./dist/esm/index.js",
@@ -47,7 +47,7 @@
47
47
  },
48
48
  "gitHead": "9fc1b79b41cdc725ca6b24aec64920a599634681",
49
49
  "peerDependencies": {
50
- "@symbo.ls/fetch": "^3.14.104"
50
+ "@symbo.ls/fetch": "^3.14.105"
51
51
  },
52
52
  "peerDependenciesMeta": {
53
53
  "@symbo.ls/fetch": {
package/scope.js CHANGED
@@ -1,5 +1,18 @@
1
1
  'use strict'
2
2
 
3
+ // True if setting `obj`'s prototype to `proto` would create a cycle —
4
+ // i.e. `obj` is `proto` itself, or already sits in `proto`'s prototype
5
+ // chain. `Object.setPrototypeOf` throws "Cyclic __proto__ value" in that
6
+ // case, so every caller must check this first.
7
+ const wouldCyclePrototype = (obj, proto) => {
8
+ let p = proto
9
+ while (p) {
10
+ if (p === obj) return true
11
+ p = Object.getPrototypeOf(p)
12
+ }
13
+ return false
14
+ }
15
+
3
16
  // Create scope - shared object across the elements to the own or the nearest parent
4
17
  // Prototype chain: own scope → parent scope → ... → root scope → globalScope
5
18
  export const createScope = (element, parent) => {
@@ -26,7 +39,15 @@ export const createScope = (element, parent) => {
26
39
  // Element defines its own scope — chain prototype to parent scope (or globalScope)
27
40
  if (Object.getPrototypeOf(element.scope) === Object.prototype) {
28
41
  const proto = parentScope || globalScope
29
- if (proto) Object.setPrototypeOf(element.scope, proto)
42
+ // Guard against a cyclic prototype. Nested elements can share one
43
+ // scope object — e.g. a serialized project where frank's `__scope`
44
+ // free-var rewrite assigns the same scope reference across a
45
+ // subtree, so `parentScope === element.scope`. Without this guard
46
+ // setPrototypeOf throws "Cyclic __proto__ value", which aborts
47
+ // createChildren and blanks the entire subtree in the brender.
48
+ if (proto && !wouldCyclePrototype(element.scope, proto)) {
49
+ Object.setPrototypeOf(element.scope, proto)
50
+ }
30
51
  }
31
52
  }
32
53
  }