@nizza/core 0.5.0-beta.2 → 0.5.0-beta.3

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/index.cjs CHANGED
@@ -15,7 +15,7 @@
15
15
  * This source code is licensed under the MIT license found in the
16
16
  * LICENSE file in the root directory of this source tree.
17
17
  */var ge=j,Hn=Et;function Zn(n,e){return n===e&&(n!==0||1/n===1/e)||n!==n&&e!==e}var Xn=typeof Object.is=="function"?Object.is:Zn,Yn=Hn.useSyncExternalStore,ei=ge.useRef,ti=ge.useEffect,ni=ge.useMemo,ii=ge.useDebugValue;Ft.useSyncExternalStoreWithSelector=function(n,e,t,i,a){var s=ei(null);if(s.current===null){var r={hasValue:!1,value:null};s.current=r}else r=s.current;s=ni(function(){function l(S){if(!u){if(u=!0,d=S,S=i(S),a!==void 0&&r.hasValue){var y=r.value;if(a(y,S))return f=y}return f=S}if(y=f,Xn(d,S))return y;var k=i(S);return a!==void 0&&a(y,k)?y:(d=S,f=k)}var u=!1,d,f,c=t===void 0?null:t;return[function(){return l(e())},c===null?void 0:function(){return l(c())}]},[e,t,i,a]);var o=Yn(n,s[0],s[1]);return ti(function(){r.hasValue=!0,r.value=o},[o]),ii(o),o};bt.exports=Ft;var ai=bt.exports;const si=Oe(ai);var xt={NZ_AWS_REGION:"us-east-1",NZ_VTEX_PROJECT:"/Users/jbermudez/TODO/PROJECTS/live-shopping",BASE_URL:"/",MODE:"production",DEV:!1,PROD:!0,SSR:!1};const{useDebugValue:ri}=j,{useSyncExternalStoreWithSelector:oi}=si;let Be=!1;function li(n,e=n.getState,t){(xt?"production":void 0)!=="production"&&t&&!Be&&(console.warn("[DEPRECATED] Use `createWithEqualityFn` instead of `create` or use `useStoreWithEqualityFn` instead of `useStore`. They can be imported from 'zustand/traditional'. https://github.com/pmndrs/zustand/discussions/1937"),Be=!0);const i=oi(n.subscribe,n.getState,n.getServerState||n.getState,e,t);return ri(i),i}const Qe=n=>{(xt?"production":void 0)!=="production"&&typeof n!="function"&&console.warn("[DEPRECATED] Passing a vanilla store will be unsupported in a future version. Instead use `import { useStore } from 'zustand'`.");const e=typeof n=="function"?Mn(n):n,t=(i,a)=>li(e,i,a);return Object.assign(t,e),t},di=n=>n?Qe(n):Qe;class Ot{constructor(e){R(this,"channel");R(this,"listeners",new Map);R(this,"eventQueue",new Map);try{this.channel=new BroadcastChannel(e),this.channel.onmessage=t=>this.handleMessage(t),this.channel.onmessageerror=t=>W.error("NizzaBroadcastChannel:",t)}catch(t){throw W.error("Failed to create NizzaBroadcastChannel:",t),t}}on(e,t){return this.subscribeToEvent(e,t),{off:()=>this.unsubscribeFromEvent(e,t)}}emit(e,t,i={}){this.emitEvent(e,t,i)}handleMessage(e){const t=e.data,{name:i}=t;for(const[a,s]of this.listeners.entries())this.matchWildcard(a,i)&&s.forEach(r=>r({...t,wildcard:a}))}subscribeToEvent(e,t){if(typeof e!="string"||typeof t!="function"){const i=new Error("Invalid arguments");throw W.error(i),i}for(const[i,a]of this.listeners.entries())if(this.matchWildcard(i,e)){a.add(t);const s=this.eventQueue.get(i);s&&(s.forEach(r=>{t({...r,wildcard:i})}),this.eventQueue.delete(i));return}this.listeners.set(e,new Set([t]))}emitEvent(e,t,i){if(typeof e!="string"){const r=new Error("Invalid arguments");throw W.error(r),r}const a={name:e,data:t,attrs:i},s=Array.from(this.getMatchingListeners(e));if(s.length)for(const[r,o]of s)o({...a,wildcard:r});else this.eventQueue.has(e)||this.eventQueue.set(e,[]),this.eventQueue.get(e).push(a);this.channel.postMessage(a)}*getMatchingListeners(e){for(const[t,i]of this.listeners.entries())if(this.matchWildcard(t,e))for(const a of i)yield[t,a]}unsubscribeFromEvent(e,t){if(this.listeners.has(e)){const i=this.listeners.get(e);i.delete(t),i.size===0&&this.listeners.delete(e)}}matchWildcard(e,t){const i=e.replace(/\*/g,"[^:]*").replace(/\*\*/g,".*");return new RegExp(`^${i}$`).test(t)}}let ui=(n=21)=>crypto.getRandomValues(new Uint8Array(n)).reduce((e,t)=>(t&=63,t<36?e+=t.toString(36):t<62?e+=(t-26).toString(36).toUpperCase():t>62?e+="-":e+="_",e),"");const Rt=(n=8)=>ui(n),ci=n=>{const e=Object.entries(n).reduce((t,[i,a])=>a!==void 0?`${t}${t?"&":""}${i}=${a}`:t,"");return e?`?${e}`:""};function mi(){const n=new Error().stack.split(`
18
- `);return n.length<3?"":n[2].trim().substring(3)}var Tt={exports:{}};(function(n){(function(e,t){n.exports?n.exports=t():e.log=t()})(Nt,function(){var e=function(){},t="undefined",i=typeof window!==t&&typeof window.navigator!==t&&/Trident\/|MSIE /.test(window.navigator.userAgent),a=["trace","debug","info","warn","error"];function s(k,N){var O=k[N];if(typeof O.bind=="function")return O.bind(k);try{return Function.prototype.bind.call(O,k)}catch{return function(){return Function.prototype.apply.apply(O,[k,arguments])}}}function r(){console.log&&(console.log.apply?console.log.apply(console,arguments):Function.prototype.apply.apply(console.log,[console,arguments])),console.trace&&console.trace()}function o(k){return k==="debug"&&(k="log"),typeof console===t?!1:k==="trace"&&i?r:console[k]!==void 0?s(console,k):console.log!==void 0?s(console,"log"):e}function l(k,N){for(var O=0;O<a.length;O++){var F=a[O];this[F]=O<k?e:this.methodFactory(F,k,N)}this.log=this.debug}function u(k,N,O){return function(){typeof console!==t&&(l.call(this,N,O),this[k].apply(this,arguments))}}function d(k,N,O){return o(k)||u.apply(this,arguments)}function f(k,N,O){var F=this,D;N=N==null?"WARN":N;var w="loglevel";typeof k=="string"?w+=":"+k:typeof k=="symbol"&&(w=void 0);function I(p){var h=(a[p]||"silent").toUpperCase();if(!(typeof window===t||!w)){try{window.localStorage[w]=h;return}catch{}try{window.document.cookie=encodeURIComponent(w)+"="+h+";"}catch{}}}function L(){var p;if(!(typeof window===t||!w)){try{p=window.localStorage[w]}catch{}if(typeof p===t)try{var h=window.document.cookie,g=h.indexOf(encodeURIComponent(w)+"=");g!==-1&&(p=/^([^;]+)/.exec(h.slice(g))[1])}catch{}return F.levels[p]===void 0&&(p=void 0),p}}function A(){if(!(typeof window===t||!w)){try{window.localStorage.removeItem(w);return}catch{}try{window.document.cookie=encodeURIComponent(w)+"=; expires=Thu, 01 Jan 1970 00:00:00 UTC"}catch{}}}F.name=k,F.levels={TRACE:0,DEBUG:1,INFO:2,WARN:3,ERROR:4,SILENT:5},F.methodFactory=O||d,F.getLevel=function(){return D},F.setLevel=function(p,h){if(typeof p=="string"&&F.levels[p.toUpperCase()]!==void 0&&(p=F.levels[p.toUpperCase()]),typeof p=="number"&&p>=0&&p<=F.levels.SILENT){if(D=p,h!==!1&&I(p),l.call(F,p,k),typeof console===t&&p<F.levels.SILENT)return"No console available for logging"}else throw"log.setLevel() called with invalid level: "+p},F.setDefaultLevel=function(p){N=p,L()||F.setLevel(p,!1)},F.resetLevel=function(){F.setLevel(N,!1),A()},F.enableAll=function(p){F.setLevel(F.levels.TRACE,p)},F.disableAll=function(p){F.setLevel(F.levels.SILENT,p)};var m=L();m==null&&(m=N),F.setLevel(m,!1)}var c=new f,S={};c.getLogger=function(N){if(typeof N!="symbol"&&typeof N!="string"||N==="")throw new TypeError("You must supply a name when creating a logger.");var O=S[N];return O||(O=S[N]=new f(N,c.getLevel(),c.methodFactory)),O};var y=typeof window!==t?window.log:void 0;return c.noConflict=function(){return typeof window!==t&&window.log===c&&(window.log=y),c},c.getLoggers=function(){return S},c.default=c,c})})(Tt);var Dt=Tt.exports;const se=Oe(Dt);var It={exports:{}};(function(n){(function(e,t){n.exports?n.exports=t():e.prefix=t(e)})(Nt,function(e){var t=function(d){for(var f=1,c=arguments.length,S;f<c;f++)for(S in arguments[f])Object.prototype.hasOwnProperty.call(arguments[f],S)&&(d[S]=arguments[f][S]);return d},i={template:"[%t] %l:",levelFormatter:function(d){return d.toUpperCase()},nameFormatter:function(d){return d||"root"},timestampFormatter:function(d){return d.toTimeString().replace(/.*(\d{2}:\d{2}:\d{2}).*/,"$1")},format:void 0},a,s={},r=function(d){if(!d||!d.getLogger)throw new TypeError("Argument is not a root logger");a=d},o=function(d,f){if(!d||!d.setLevel)throw new TypeError("Argument is not a logger");var c=d.methodFactory,S=d.name||"",y=s[S]||s[""]||i;function k(N,O,F){var D=c(N,O,F),w=s[F]||s[""],I=w.template.indexOf("%t")!==-1,L=w.template.indexOf("%l")!==-1,A=w.template.indexOf("%n")!==-1;return function(){for(var m="",p=arguments.length,h=Array(p),g=0;g<p;g++)h[g]=arguments[g];if(S||!s[F]){var b=w.timestampFormatter(new Date),C=w.levelFormatter(N),v=w.nameFormatter(F);w.format?m+=w.format(C,v,b):(m+=w.template,I&&(m=m.replace(/%t/,b)),L&&(m=m.replace(/%l/,C)),A&&(m=m.replace(/%n/,v))),h.length&&typeof h[0]=="string"?h[0]=m+" "+h[0]:h.unshift(m)}D.apply(void 0,h)}}return s[S]||(d.methodFactory=k),f=f||{},f.template&&(f.format=void 0),s[S]=t({},y,f),d.setLevel(d.getLevel()),a||d.warn("It is necessary to call the function reg() of loglevel-plugin-prefix before calling apply. From the next release, it will throw an error. See more: https://github.com/kutuluk/loglevel-plugin-prefix/blob/master/README.md"),d},l={reg:r,apply:o},u;return e&&(u=e.prefix,l.noConflict=function(){return e.prefix===l&&(e.prefix=u),l}),l})})(It);var fi=It.exports;const Ge=Oe(fi);let Lt=class{constructor(e){R(this,"defaultLevel",Dt.levels.INFO);R(this,"namePrefix");this.namePrefix=e?`${e}-`:"",se.setDefaultLevel(this.defaultLevel),Ge.reg(se),Ge.apply(se,{template:"[%t] %l (%n)",nameFormatter:t=>{var i;return(i=t==null?void 0:t.toLowerCase())!=null?i:""},timestampFormatter:()=>new Date().toTimeString().slice(0,8)})}createLogger(e){const t=this.namePrefix+e.toLowerCase(),i=se.getLogger(t),a=localStorage.getItem(`loglevel:${t}`);return a?i.setLevel(a):i.setLevel(this.defaultLevel),i}};const z=di(()=>({config:null})),At=async n=>{try{const e=z.getState().account;if((e==null?void 0:e.account)!==n.account){const t=await Zt(n.account);z.setState({account:t})}if(n.getProductDataSource){const t=await n.getProductDataSource();z.setState({productDataSource:t})}z.setState({config:n})}catch(e){console.error("Error configuring NizzaStore:",e)}},Pt=n=>{z.setState({productDataSource:n})},Ke=()=>({version:"1.0.0",configure:At,setProductDataSource:Pt,instanceId:Rt(),log:new Lt("nz"),eventBus:new Ot("nizza"),get state(){return z.getState()}}),pi=()=>{if(typeof window!="undefined"){if(!window.nizza){const n=Ke();window.nizza=n,window.nz=n}return window.nizza}return Ke()},Re=pi(),Vt=z,hi=Re.log.createLogger("main"),W=Re.log.createLogger("core");function K(n){return n!=null&&typeof n=="object"&&n["@@functional/placeholder"]===!0}function oe(n){return function e(t){return arguments.length===0||K(t)?e:n.apply(this,arguments)}}function Te(n){return function e(t,i){switch(arguments.length){case 0:return e;case 1:return K(t)?e:oe(function(a){return n(t,a)});default:return K(t)&&K(i)?e:K(t)?oe(function(a){return n(a,i)}):K(i)?oe(function(a){return n(t,a)}):n(t,i)}}}const gi=Number.isInteger||function(e){return e<<0===e};function ki(n){return Object.prototype.toString.call(n)==="[object String]"}var vi=Te(function(e,t){var i=e<0?t.length+e:e;return ki(t)?t.charAt(i):t[i]});const Si=vi;var yi=oe(function(e){return e==null});const Ni=yi;var bi=Te(function(e,t){return e.map(function(i){for(var a=t,s=0,r;s<i.length;){if(a==null)return;r=i[s],a=gi(r)?Si(r,a):a[r],s+=1}return a})});const Fi=bi;var wi=Te(function(e,t){return Fi([e],t)[0]});const Ci=wi;class ne extends Error{constructor(e,t,i){super(t),this.value=i,this.name=e}toDTO(){return{name:this.name,message:this.message,...this.value&&{value:this.value}}}}class _t extends ne{constructor(e){super("RESOURCE_NOT_FOUND_ERROR",`Resource with id '${e}' not found.`,e)}}class Ut extends ne{constructor(e){var t;super("APP_UNEXPECTED_ERROR",(t=e.message)!=null?t:"An unexpected error occurred.",e)}}class Ei extends ne{constructor(){super("APP_ACCOUNT_INVALID_ERROR","Account not defined")}}class jt extends ne{constructor(e){super("INVALID_NIZZA_GLOBAL_OBJECT_ERROR",`
18
+ `);return n.length<3?"":n[2].trim().substring(3)}var Tt={exports:{}};(function(n){(function(e,t){n.exports?n.exports=t():e.log=t()})(Nt,function(){var e=function(){},t="undefined",i=typeof window!==t&&typeof window.navigator!==t&&/Trident\/|MSIE /.test(window.navigator.userAgent),a=["trace","debug","info","warn","error"];function s(k,N){var O=k[N];if(typeof O.bind=="function")return O.bind(k);try{return Function.prototype.bind.call(O,k)}catch{return function(){return Function.prototype.apply.apply(O,[k,arguments])}}}function r(){console.log&&(console.log.apply?console.log.apply(console,arguments):Function.prototype.apply.apply(console.log,[console,arguments])),console.trace&&console.trace()}function o(k){return k==="debug"&&(k="log"),typeof console===t?!1:k==="trace"&&i?r:console[k]!==void 0?s(console,k):console.log!==void 0?s(console,"log"):e}function l(k,N){for(var O=0;O<a.length;O++){var F=a[O];this[F]=O<k?e:this.methodFactory(F,k,N)}this.log=this.debug}function u(k,N,O){return function(){typeof console!==t&&(l.call(this,N,O),this[k].apply(this,arguments))}}function d(k,N,O){return o(k)||u.apply(this,arguments)}function f(k,N,O){var F=this,D;N=N==null?"WARN":N;var w="loglevel";typeof k=="string"?w+=":"+k:typeof k=="symbol"&&(w=void 0);function I(p){var h=(a[p]||"silent").toUpperCase();if(!(typeof window===t||!w)){try{window.localStorage[w]=h;return}catch{}try{window.document.cookie=encodeURIComponent(w)+"="+h+";"}catch{}}}function L(){var p;if(!(typeof window===t||!w)){try{p=window.localStorage[w]}catch{}if(typeof p===t)try{var h=window.document.cookie,g=h.indexOf(encodeURIComponent(w)+"=");g!==-1&&(p=/^([^;]+)/.exec(h.slice(g))[1])}catch{}return F.levels[p]===void 0&&(p=void 0),p}}function A(){if(!(typeof window===t||!w)){try{window.localStorage.removeItem(w);return}catch{}try{window.document.cookie=encodeURIComponent(w)+"=; expires=Thu, 01 Jan 1970 00:00:00 UTC"}catch{}}}F.name=k,F.levels={TRACE:0,DEBUG:1,INFO:2,WARN:3,ERROR:4,SILENT:5},F.methodFactory=O||d,F.getLevel=function(){return D},F.setLevel=function(p,h){if(typeof p=="string"&&F.levels[p.toUpperCase()]!==void 0&&(p=F.levels[p.toUpperCase()]),typeof p=="number"&&p>=0&&p<=F.levels.SILENT){if(D=p,h!==!1&&I(p),l.call(F,p,k),typeof console===t&&p<F.levels.SILENT)return"No console available for logging"}else throw"log.setLevel() called with invalid level: "+p},F.setDefaultLevel=function(p){N=p,L()||F.setLevel(p,!1)},F.resetLevel=function(){F.setLevel(N,!1),A()},F.enableAll=function(p){F.setLevel(F.levels.TRACE,p)},F.disableAll=function(p){F.setLevel(F.levels.SILENT,p)};var m=L();m==null&&(m=N),F.setLevel(m,!1)}var c=new f,S={};c.getLogger=function(N){if(typeof N!="symbol"&&typeof N!="string"||N==="")throw new TypeError("You must supply a name when creating a logger.");var O=S[N];return O||(O=S[N]=new f(N,c.getLevel(),c.methodFactory)),O};var y=typeof window!==t?window.log:void 0;return c.noConflict=function(){return typeof window!==t&&window.log===c&&(window.log=y),c},c.getLoggers=function(){return S},c.default=c,c})})(Tt);var Dt=Tt.exports;const se=Oe(Dt);var It={exports:{}};(function(n){(function(e,t){n.exports?n.exports=t():e.prefix=t(e)})(Nt,function(e){var t=function(d){for(var f=1,c=arguments.length,S;f<c;f++)for(S in arguments[f])Object.prototype.hasOwnProperty.call(arguments[f],S)&&(d[S]=arguments[f][S]);return d},i={template:"[%t] %l:",levelFormatter:function(d){return d.toUpperCase()},nameFormatter:function(d){return d||"root"},timestampFormatter:function(d){return d.toTimeString().replace(/.*(\d{2}:\d{2}:\d{2}).*/,"$1")},format:void 0},a,s={},r=function(d){if(!d||!d.getLogger)throw new TypeError("Argument is not a root logger");a=d},o=function(d,f){if(!d||!d.setLevel)throw new TypeError("Argument is not a logger");var c=d.methodFactory,S=d.name||"",y=s[S]||s[""]||i;function k(N,O,F){var D=c(N,O,F),w=s[F]||s[""],I=w.template.indexOf("%t")!==-1,L=w.template.indexOf("%l")!==-1,A=w.template.indexOf("%n")!==-1;return function(){for(var m="",p=arguments.length,h=Array(p),g=0;g<p;g++)h[g]=arguments[g];if(S||!s[F]){var b=w.timestampFormatter(new Date),C=w.levelFormatter(N),v=w.nameFormatter(F);w.format?m+=w.format(C,v,b):(m+=w.template,I&&(m=m.replace(/%t/,b)),L&&(m=m.replace(/%l/,C)),A&&(m=m.replace(/%n/,v))),h.length&&typeof h[0]=="string"?h[0]=m+" "+h[0]:h.unshift(m)}D.apply(void 0,h)}}return s[S]||(d.methodFactory=k),f=f||{},f.template&&(f.format=void 0),s[S]=t({},y,f),d.setLevel(d.getLevel()),a||d.warn("It is necessary to call the function reg() of loglevel-plugin-prefix before calling apply. From the next release, it will throw an error. See more: https://github.com/kutuluk/loglevel-plugin-prefix/blob/master/README.md"),d},l={reg:r,apply:o},u;return e&&(u=e.prefix,l.noConflict=function(){return e.prefix===l&&(e.prefix=u),l}),l})})(It);var fi=It.exports;const Ge=Oe(fi);let Lt=class{constructor(e){R(this,"defaultLevel",Dt.levels.INFO);R(this,"namePrefix");this.namePrefix=e?`${e}-`:"",se.setDefaultLevel(this.defaultLevel),Ge.reg(se),Ge.apply(se,{template:"[%t] %l (%n)",nameFormatter:t=>{var i;return(i=t==null?void 0:t.toLowerCase())!=null?i:""},timestampFormatter:()=>new Date().toTimeString().slice(0,8)})}createLogger(e){const t=this.namePrefix+e.toLowerCase(),i=se.getLogger(t),a=localStorage.getItem(`loglevel:${t}`);return a?i.setLevel(a):i.setLevel(this.defaultLevel),i}};const z=di(()=>({config:null})),At=async n=>{try{const e=z.getState().account;if(z.setState({config:n}),(e==null?void 0:e.account)!==n.account){const t=await Zt(n.account);z.setState({account:t})}if(n.getProductDataSource){const t=await n.getProductDataSource();z.setState({productDataSource:t})}}catch(e){console.error("Error configuring NizzaStore:",e)}},Pt=n=>{z.setState({productDataSource:n})},Ke=()=>({version:"1.0.1",configure:At,setProductDataSource:Pt,instanceId:Rt(),log:new Lt("nz"),eventBus:new Ot("nizza"),get state(){return z.getState()}}),pi=()=>{if(typeof window!="undefined"){if(!window.nizza){const n=Ke();window.nizza=n,window.nz=n}return window.nizza}return Ke()},Re=pi(),Vt=z,hi=Re.log.createLogger("main"),W=Re.log.createLogger("core");function K(n){return n!=null&&typeof n=="object"&&n["@@functional/placeholder"]===!0}function oe(n){return function e(t){return arguments.length===0||K(t)?e:n.apply(this,arguments)}}function Te(n){return function e(t,i){switch(arguments.length){case 0:return e;case 1:return K(t)?e:oe(function(a){return n(t,a)});default:return K(t)&&K(i)?e:K(t)?oe(function(a){return n(a,i)}):K(i)?oe(function(a){return n(t,a)}):n(t,i)}}}const gi=Number.isInteger||function(e){return e<<0===e};function ki(n){return Object.prototype.toString.call(n)==="[object String]"}var vi=Te(function(e,t){var i=e<0?t.length+e:e;return ki(t)?t.charAt(i):t[i]});const Si=vi;var yi=oe(function(e){return e==null});const Ni=yi;var bi=Te(function(e,t){return e.map(function(i){for(var a=t,s=0,r;s<i.length;){if(a==null)return;r=i[s],a=gi(r)?Si(r,a):a[r],s+=1}return a})});const Fi=bi;var wi=Te(function(e,t){return Fi([e],t)[0]});const Ci=wi;class ne extends Error{constructor(e,t,i){super(t),this.value=i,this.name=e}toDTO(){return{name:this.name,message:this.message,...this.value&&{value:this.value}}}}class _t extends ne{constructor(e){super("RESOURCE_NOT_FOUND_ERROR",`Resource with id '${e}' not found.`,e)}}class Ut extends ne{constructor(e){var t;super("APP_UNEXPECTED_ERROR",(t=e.message)!=null?t:"An unexpected error occurred.",e)}}class Ei extends ne{constructor(){super("APP_ACCOUNT_INVALID_ERROR","Account not defined")}}class jt extends ne{constructor(e){super("INVALID_NIZZA_GLOBAL_OBJECT_ERROR",`
19
19
  Configuration property invalid: "${e}".
20
20
 
21
21
  It looks like you are trying to use a configuration property that is required but is "undefined", make sure you have initialized the global object "nizza".