pinia-plugin-subscription 0.0.3 → 0.1.1

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.
@@ -1,5 +1,5 @@
1
- (function(_,x){typeof exports=="object"&&typeof module<"u"?x(exports,require("pinia")):typeof define=="function"&&define.amd?define(["exports","pinia"],x):(_=typeof globalThis<"u"?globalThis:_||self,x(_["pinia-plugin-subscription"]={},_.Pinia))})(this,(function(_,x){"use strict";class fe{_console;_createInstance;_name;_pluginOptions;_storeInstance;_resetStoreCallback;_storeOnActionSubscription;_storeMutationSubscription;_subscriptions;pluginCreated;get console(){return this._console??console}get name(){return this._name}get pluginOptions(){return this._pluginOptions??{}}set pluginOptions(e){this._pluginOptions=e}get resetStoreCallback(){return this._resetStoreCallback}get storeOnActionSubscription(){return this._storeOnActionSubscription}get storeMutationSubscription(){return this._storeMutationSubscription}get subscriptions(){return this._subscriptions}set subscriptions(e){this._subscriptions=e}constructor(e,n,r){this._name=e,this._createInstance=n,r&&(this._console=r)}invoke({store:e,options:n},r){return this._storeInstance=this._createInstance(e,{...n,...this.pluginOptions},r,this.console),this._storeInstance?(this._subscriptions=this._storeInstance.getSubscriptions(),this._storeMutationSubscription=this._storeInstance.storeSubscribe,this._storeOnActionSubscription=this._storeInstance.onAction,this.pluginCreated&&this.pluginCreated(e),!0):!1}}class Rt{_console;_debug=!1;get console(){return this._console??console}set console(e){this._console=e}get debug(){return this._debug}set debug(e){this._debug=e}constructor(e,n){this._debug=e,this._className=this.constructor.name,n&&(this._console=n)}debugLog(...e){this._debug&&(Array.isArray(e)&&(e[0]=`${this._className} - ${e[0]}`),this.console.log(...e))}logError(...e){this.console.error(...e)}}const ot="pinia-plugin-subscription",he=(t,e="white")=>`background-color: ${t}; color: ${e}; padding: 1px; margin-right: 5px; font-size: 12px`;function pe(t,e){if(!t)throw new Error("Style instructions are required");console.log("%c%s",t,e.shift(),...e)}class Ct{_bgColor="#ffec73";_color="green";_icon="🍍⚡";_errorBgColor="#d24545";_errorColor="white";_errorIcon="🍍⚠️";_styles={error:{bgColor:this._errorBgColor,color:this._errorColor,icon:this._errorIcon},info:{bgColor:this._bgColor,color:this._color,icon:this._icon}};formatMessage(e,n){return` [${n} ${ot}] - ${e} `}generateStyle(e){return he(e.bgColor,e.color)}getStyleDefinition(e){return this._styles[e??"info"]}log(...e){this.useLog(this.getStyleDefinition(),e)}error(...e){this.useLog(this.getStyleDefinition("error"),e)}rebuildArgs(e,n){if(typeof e=="string")return[this.formatMessage(e,n)];if(Array.isArray(e))return[this.formatMessage(e.shift(),n),...e??[]]}useLog(e,n){pe(this.generateStyle(e),this.rebuildArgs(n,e.icon))}}class de extends Ct{_pluginName=ot}const _e=new de;function B(t){return t?Array.isArray(t)?t.length===0:typeof t=="object"?Object.keys(t).length===0:typeof t=="string"?t.trim()==="":!1:!(typeof t=="boolean"||typeof t=="number")}const At="PluginSubscription";class It extends Rt{_className=At;_pluginDebug;_resetStoreCallback=[];_subscribers=[];_subscribersDelivered=new Set;_subscriptions=[];_subscriptionsDelivered=new Set;set subscribers(e){this._subscribers=e}get subscriptions(){if(!B(this._subscriptions))return this._subscriptions}constructor(e,n){super(Array.isArray(n)&&!!n?.includes(At),_e),this._pluginDebug=Array.isArray(n)?n:void 0,this._subscribers=e}addResetStoreCallback(e){this._resetStoreCallback.push(e)}definePluginDebug(e){return!!this._pluginDebug?.includes(e.name)}executeResetStoreCallbacks(e){this._resetStoreCallback.forEach(n=>n(e))}plugin({store:e,options:n}){if(this._subscribers.length){this.debugLog(`plugin() - ${e.$id}`,["subscriber:",this._subscribers,"store:",e,"options:",n]);try{this._subscribers.forEach(r=>{this._subscribersDelivered.has(`${r.name}-${e.$id}`)||r.invoke({store:e,options:n},this.definePluginDebug(r))&&(this._subscribersDelivered.add(`${r.name}-${e.$id}`),r.subscriptions&&this.subscriptionDelivery({store:e,options:n},r.subscriptions),r.storeMutationSubscription&&this.storeMutationSubscription(r.storeMutationSubscription),r.storeOnActionSubscription&&this.storeOnActionSubscription(r.storeOnActionSubscription),r.resetStoreCallback&&this.addResetStoreCallback(r.resetStoreCallback))}),this.rewriteResetStore({store:e},JSON.stringify(e.$state),Object.assign({},e))}catch(r){this.logError(r,e,n)}}}rewriteResetStore({store:e},n,r){e.$reset=()=>{this.debugLog("rewriteResetStore()",{initState:n,store:e,customStore:r}),this.executeResetStoreCallbacks(e),e.$patch(JSON.parse(n))}}storeOnActionSubscription(e){const{store:n,callback:r}=e();n.$onAction(({after:s,args:i,name:o})=>{this.debugLog(`storeOnActionSubscription ${n.$id}`,{after:s,args:i,name:o,store:n}),r({after:s,args:i,name:o})})}storeMutationSubscription(e){const{store:n,callback:r}=e();n.$subscribe(s=>{this.debugLog(`$subscribe ${n.$id}`,{mutation:s,store:n}),r(s)})}subscriptionDelivery({store:e,options:n},r){Object.entries(r).forEach(([s,i])=>{try{if(this._subscriptionsDelivered.has(`${s}-${e.$id}`))return;const{subscription:o,subscriptionOptions:c,stores:a}=i;this.debugLog(`subscriptionDelivery() - store: ${e.$id}`,["pluginName:",s,"subscription:",o,"options:",i,"stores:",a]);const u={storeOptions:{...n?.storeOptions??{},...c}};o.invoke({store:e,options:{...n,...u}},this.debug),this._subscriptionsDelivered.add(`${s}-${e.$id}`),B(a)||a?.forEach(h=>o.invoke({store:h,options:{...n,...u,...h?.storeOptions??{}}},this.debug))}catch(o){this.logError("subscriptionDelivery()",o,e,n)}})}}function ge(t){const e=Object.create(null);for(const n of t.split(","))e[n]=1;return n=>n in e}const ct=process.env.NODE_ENV!=="production"?Object.freeze({}):{};process.env.NODE_ENV!=="production"&&Object.freeze([]);const $t=()=>{},be=t=>t.charCodeAt(0)===111&&t.charCodeAt(1)===110&&(t.charCodeAt(2)>122||t.charCodeAt(2)<97),me=t=>t.startsWith("onUpdate:"),V=Object.assign,ye=Object.prototype.hasOwnProperty,lt=(t,e)=>ye.call(t,e),d=Array.isArray,H=t=>Vt(t)==="[object Map]",A=t=>typeof t=="function",N=t=>typeof t=="string",D=t=>typeof t=="symbol",g=t=>t!==null&&typeof t=="object",Se=Object.prototype.toString,Vt=t=>Se.call(t),Dt=t=>Vt(t).slice(8,-1),Y=t=>N(t)&&t!=="NaN"&&t[0]!=="-"&&""+parseInt(t,10)===t,Oe=(t=>{const e=Object.create(null);return(n=>e[n]||(e[n]=t(n)))})(t=>t.charAt(0).toUpperCase()+t.slice(1)),L=(t,e)=>!Object.is(t,e);let Tt;const G=()=>Tt||(Tt=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function at(t){if(d(t)){const e={};for(let n=0;n<t.length;n++){const r=t[n],s=N(r)?ve(r):at(r);if(s)for(const i in s)e[i]=s[i]}return e}else if(N(t)||g(t))return t}const Ee=/;(?![^(]*\))/g,we=/:([^]+)/,Ne=/\/\*[^]*?\*\//g;function ve(t){const e={};return t.replace(Ne,"").split(Ee).forEach(n=>{if(n){const r=n.split(we);r.length>1&&(e[r[0].trim()]=r[1].trim())}}),e}function ut(t){let e="";if(N(t))e=t;else if(d(t))for(let n=0;n<t.length;n++){const r=ut(t[n]);r&&(e+=r+" ")}else if(g(t))for(const n in t)t[n]&&(e+=n+" ");return e.trim()}function P(t,...e){console.warn(`[Vue warn] ${t}`,...e)}let xt=0,ft;function ht(){xt++}function pt(){if(--xt>0)return;let t;for(;ft;){let e=ft;for(ft=void 0;e;){const n=e.next;if(e.next=void 0,e.flags&=-9,e.flags&1)try{e.trigger()}catch(r){t||(t=r)}e=n}}if(t)throw t}class Re{constructor(e){this.computed=e,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0,process.env.NODE_ENV!=="production"&&(this.subsHead=void 0)}track(e){}trigger(e){this.version++,this.notify(e)}notify(e){ht();try{if(process.env.NODE_ENV!=="production")for(let n=this.subsHead;n;n=n.nextSub)n.sub.onTrigger&&!(n.sub.flags&8)&&n.sub.onTrigger(V({effect:n.sub},e));for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{pt()}}}const Pt=new WeakMap,dt=Symbol(process.env.NODE_ENV!=="production"?"Object iterate":""),Mt=Symbol(process.env.NODE_ENV!=="production"?"Map keys iterate":""),Ft=Symbol(process.env.NODE_ENV!=="production"?"Array iterate":"");function Kn(t,e,n){}function I(t,e,n,r,s,i){const o=Pt.get(t);if(!o)return;const c=a=>{a&&(process.env.NODE_ENV!=="production"?a.trigger({target:t,type:e,key:n,newValue:r,oldValue:s,oldTarget:i}):a.trigger())};if(ht(),e==="clear")o.forEach(c);else{const a=d(t),u=a&&Y(n);if(a&&n==="length"){const h=Number(r);o.forEach((l,p)=>{(p==="length"||p===Ft||!D(p)&&p>=h)&&c(l)})}else switch((n!==void 0||o.has(void 0))&&c(o.get(n)),u&&c(o.get(Ft)),e){case"add":a?u&&c(o.get("length")):(c(o.get(dt)),H(t)&&c(o.get(Mt)));break;case"delete":a||(c(o.get(dt)),H(t)&&c(o.get(Mt)));break;case"set":H(t)&&c(o.get(dt));break}}pt()}function Ce(t,e){const n=Pt.get(t);return n&&n.get(e)}function M(t){const e=f(t);return e===t||m(t)?e:e.map(R)}function _t(t){return t=f(t),t}function O(t,e){return E(t)?U(St(t)?R(e):e):R(e)}const Ae={__proto__:null,[Symbol.iterator](){return gt(this,Symbol.iterator,t=>O(this,t))},concat(...t){return M(this).concat(...t.map(e=>d(e)?M(e):e))},entries(){return gt(this,"entries",t=>(t[1]=O(this,t[1]),t))},every(t,e){return v(this,"every",t,e,void 0,arguments)},filter(t,e){return v(this,"filter",t,e,n=>n.map(r=>O(this,r)),arguments)},find(t,e){return v(this,"find",t,e,n=>O(this,n),arguments)},findIndex(t,e){return v(this,"findIndex",t,e,void 0,arguments)},findLast(t,e){return v(this,"findLast",t,e,n=>O(this,n),arguments)},findLastIndex(t,e){return v(this,"findLastIndex",t,e,void 0,arguments)},forEach(t,e){return v(this,"forEach",t,e,void 0,arguments)},includes(...t){return bt(this,"includes",t)},indexOf(...t){return bt(this,"indexOf",t)},join(t){return M(this).join(t)},lastIndexOf(...t){return bt(this,"lastIndexOf",t)},map(t,e){return v(this,"map",t,e,void 0,arguments)},pop(){return W(this,"pop")},push(...t){return W(this,"push",t)},reduce(t,...e){return kt(this,"reduce",t,e)},reduceRight(t,...e){return kt(this,"reduceRight",t,e)},shift(){return W(this,"shift")},some(t,e){return v(this,"some",t,e,void 0,arguments)},splice(...t){return W(this,"splice",t)},toReversed(){return M(this).toReversed()},toSorted(t){return M(this).toSorted(t)},toSpliced(...t){return M(this).toSpliced(...t)},unshift(...t){return W(this,"unshift",t)},values(){return gt(this,"values",t=>O(this,t))}};function gt(t,e,n){const r=_t(t),s=r[e]();return r!==t&&!m(t)&&(s._next=s.next,s.next=()=>{const i=s._next();return i.done||(i.value=n(i.value)),i}),s}const Ie=Array.prototype;function v(t,e,n,r,s,i){const o=_t(t),c=o!==t&&!m(t),a=o[e];if(a!==Ie[e]){const l=a.apply(t,i);return c?R(l):l}let u=n;o!==t&&(c?u=function(l,p){return n.call(this,O(t,l),p,t)}:n.length>2&&(u=function(l,p){return n.call(this,l,p,t)}));const h=a.call(o,u,r);return c&&s?s(h):h}function kt(t,e,n,r){const s=_t(t),i=s!==t&&!m(t);let o=n,c=!1;s!==t&&(i?(c=r.length===0,o=function(u,h,l){return c&&(c=!1,u=O(t,u)),n.call(this,u,O(t,h),l,t)}):n.length>3&&(o=function(u,h,l){return n.call(this,u,h,l,t)}));const a=s[e](o,...r);return c?O(t,a):a}function bt(t,e,n){const r=f(t),s=r[e](...n);return(s===-1||s===!1)&&z(n[0])?(n[0]=f(n[0]),r[e](...n)):s}function W(t,e,n=[]){ht();const r=f(t)[e].apply(t,n);return pt(),r}const $e=ge("__proto__,__v_isRef,__isVue"),jt=new Set(Object.getOwnPropertyNames(Symbol).filter(t=>t!=="arguments"&&t!=="caller").map(t=>Symbol[t]).filter(D));function Ve(t){return D(t)||(t=String(t)),f(this).hasOwnProperty(t)}class Kt{constructor(e=!1,n=!1){this._isReadonly=e,this._isShallow=n}get(e,n,r){if(n==="__v_skip")return e.__v_skip;const s=this._isReadonly,i=this._isShallow;if(n==="__v_isReactive")return!s;if(n==="__v_isReadonly")return s;if(n==="__v_isShallow")return i;if(n==="__v_raw")return r===(s?i?He:zt:i?Ke:Wt).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(r)?e:void 0;const o=d(e);if(!s){let a;if(o&&(a=Ae[n]))return a;if(n==="hasOwnProperty")return Ve}const c=Reflect.get(e,n,b(e)?e:r);if((D(n)?jt.has(n):$e(n))||i)return c;if(b(c)){const a=o&&Y(n)?c:c.value;return s&&g(a)?yt(a):a}return g(c)?s?yt(c):Ut(c):c}}class De extends Kt{constructor(e=!1){super(!1,e)}set(e,n,r,s){let i=e[n];const o=d(e)&&Y(n);if(!this._isShallow){const u=E(i);if(!m(r)&&!E(r)&&(i=f(i),r=f(r)),!o&&b(i)&&!b(r))return u?(process.env.NODE_ENV!=="production"&&P(`Set operation on key "${String(n)}" failed: target is readonly.`,e[n]),!0):(i.value=r,!0)}const c=o?Number(n)<e.length:lt(e,n),a=Reflect.set(e,n,r,b(e)?e:s);return e===f(s)&&a&&(c?L(r,i)&&I(e,"set",n,r,i):I(e,"add",n,r)),a}deleteProperty(e,n){const r=lt(e,n),s=e[n],i=Reflect.deleteProperty(e,n);return i&&r&&I(e,"delete",n,void 0,s),i}has(e,n){const r=Reflect.has(e,n);return!D(n)||jt.has(n),r}ownKeys(e){return Reflect.ownKeys(e)}}class Te extends Kt{constructor(e=!1){super(!0,e)}set(e,n){return process.env.NODE_ENV!=="production"&&P(`Set operation on key "${String(n)}" failed: target is readonly.`,e),!0}deleteProperty(e,n){return process.env.NODE_ENV!=="production"&&P(`Delete operation on key "${String(n)}" failed: target is readonly.`,e),!0}}const xe=new De,Pe=new Te,mt=t=>t,Q=t=>Reflect.getPrototypeOf(t);function Me(t,e,n){return function(...r){const s=this.__v_raw,o=H(f(s)),c=t==="entries"||t===Symbol.iterator&&o,a=s[t](...r),u=n?mt:e?U:R;return V(Object.create(a),{next(){const{value:h,done:l}=a.next();return l?{value:h,done:l}:{value:c?[u(h[0]),u(h[1])]:u(h),done:l}}})}}function X(t){return function(...e){if(process.env.NODE_ENV!=="production"){const n=e[0]?`on key "${e[0]}" `:"";P(`${Oe(t)} operation ${n}failed: target is readonly.`,f(this))}return t==="delete"?!1:t==="clear"?void 0:this}}function Fe(t,e){const n={get(s){const i=this.__v_raw,o=f(i),c=f(s),{has:a}=Q(o),u=e?mt:t?U:R;if(a.call(o,s))return u(i.get(s));if(a.call(o,c))return u(i.get(c));i!==o&&i.get(s)},get size(){return this.__v_raw.size},has(s){const i=this.__v_raw,o=f(s);return s===o?i.has(s):i.has(s)||i.has(o)},forEach(s,i){const o=this,c=o.__v_raw,a=e?mt:t?U:R;return c.forEach((u,h)=>s.call(i,a(u),a(h),o))}};return V(n,t?{add:X("add"),set:X("set"),delete:X("delete"),clear:X("clear")}:{add(s){const i=f(this),o=Q(i),c=f(s),a=!e&&!m(s)&&!E(s)?c:s;return o.has.call(i,a)||L(s,a)&&o.has.call(i,s)||L(c,a)&&o.has.call(i,c)||(i.add(a),I(i,"add",a,a)),this},set(s,i){!e&&!m(i)&&!E(i)&&(i=f(i));const o=f(this),{has:c,get:a}=Q(o);let u=c.call(o,s);u?process.env.NODE_ENV!=="production"&&Lt(o,c,s):(s=f(s),u=c.call(o,s));const h=a.call(o,s);return o.set(s,i),u?L(i,h)&&I(o,"set",s,i,h):I(o,"add",s,i),this},delete(s){const i=f(this),{has:o,get:c}=Q(i);let a=o.call(i,s);a?process.env.NODE_ENV!=="production"&&Lt(i,o,s):(s=f(s),a=o.call(i,s));const u=c?c.call(i,s):void 0,h=i.delete(s);return a&&I(i,"delete",s,void 0,u),h},clear(){const s=f(this),i=s.size!==0,o=process.env.NODE_ENV!=="production"?H(s)?new Map(s):new Set(s):void 0,c=s.clear();return i&&I(s,"clear",void 0,void 0,o),c}}),["keys","values","entries",Symbol.iterator].forEach(s=>{n[s]=Me(s,t,e)}),n}function Ht(t,e){const n=Fe(t,e);return(r,s,i)=>s==="__v_isReactive"?!t:s==="__v_isReadonly"?t:s==="__v_raw"?r:Reflect.get(lt(n,s)&&s in r?n:r,s,i)}const ke={get:Ht(!1,!1)},je={get:Ht(!0,!1)};function Lt(t,e,n){const r=f(n);if(r!==n&&e.call(t,r)){const s=Dt(t);P(`Reactive ${s} contains both the raw and reactive versions of the same object${s==="Map"?" as keys":""}, which can lead to inconsistencies. Avoid differentiating between the raw and reactive versions of an object and only use the reactive version if possible.`)}}const Wt=new WeakMap,Ke=new WeakMap,zt=new WeakMap,He=new WeakMap;function Le(t){switch(t){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Ut(t){return E(t)?t:qt(t,!1,xe,ke,Wt)}function yt(t){return qt(t,!0,Pe,je,zt)}function qt(t,e,n,r,s){if(!g(t))return process.env.NODE_ENV!=="production"&&P(`value cannot be made ${e?"readonly":"reactive"}: ${String(t)}`),t;if(t.__v_raw&&!(e&&t.__v_isReactive)||t.__v_skip||!Object.isExtensible(t))return t;const i=s.get(t);if(i)return i;const o=Le(Dt(t));if(o===0)return t;const c=new Proxy(t,o===2?r:n);return s.set(t,c),c}function St(t){return E(t)?St(t.__v_raw):!!(t&&t.__v_isReactive)}function E(t){return!!(t&&t.__v_isReadonly)}function m(t){return!!(t&&t.__v_isShallow)}function z(t){return t?!!t.__v_raw:!1}function f(t){const e=t&&t.__v_raw;return e?f(e):t}const R=t=>g(t)?Ut(t):t,U=t=>g(t)?yt(t):t;function b(t){return t?t.__v_isRef===!0:!1}function Jt(t){return We(t,!1)}function We(t,e){return b(t)?t:new ze(t,e)}class ze{constructor(e,n){this.dep=new Re,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?e:f(e),this._value=n?e:R(e),this.__v_isShallow=n}get value(){return process.env.NODE_ENV!=="production"?this.dep.track({target:this,type:"get",key:"value"}):this.dep.track(),this._value}set value(e){const n=this._rawValue,r=this.__v_isShallow||m(e)||E(e);e=r?e:f(e),L(e,n)&&(this._rawValue=e,this._value=r?e:R(e),process.env.NODE_ENV!=="production"?this.dep.trigger({target:this,type:"set",key:"value",newValue:e,oldValue:n}):this.dep.trigger())}}function Ue(t){return b(t)?t.value:t}class qe{constructor(e,n,r){this._object=e,this._defaultValue=r,this.__v_isRef=!0,this._value=void 0,this._key=D(n)?n:String(n),this._raw=f(e);let s=!0,i=e;if(!d(e)||D(this._key)||!Y(this._key))do s=!z(i)||m(i);while(s&&(i=i.__v_raw));this._shallow=s}get value(){let e=this._object[this._key];return this._shallow&&(e=Ue(e)),this._value=e===void 0?this._defaultValue:e}set value(e){if(this._shallow&&b(this._raw[this._key])){const n=this._object[this._key];if(b(n)){n.value=e;return}}this._object[this._key]=e}get dep(){return Ce(this._raw,this._key)}}class Je{constructor(e){this._getter=e,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}}function Be(t,e,n){return b(t)?t:A(t)?new Je(t):g(t)&&arguments.length>1?Ye(t,e,n):Jt(t)}function Ye(t,e,n){return new qe(t,e,n)}const T=[];function Ge(t){T.push(t)}function Qe(){T.pop()}let Ot=!1;function F(t,...e){if(Ot)return;Ot=!0;const n=T.length?T[T.length-1].component:null,r=n&&n.appContext.config.warnHandler,s=Xe();if(r)Et(r,n,11,[t+e.map(i=>{var o,c;return(c=(o=i.toString)==null?void 0:o.call(i))!=null?c:JSON.stringify(i)}).join(""),n&&n.proxy,s.map(({vnode:i})=>`at <${ae(n,i.type)}>`).join(`
1
+ (function(_,F){typeof exports=="object"&&typeof module<"u"?F(exports,require("pinia")):typeof define=="function"&&define.amd?define(["exports","pinia"],F):(_=typeof globalThis<"u"?globalThis:_||self,F(_["pinia-plugin-subscription"]={},_.Pinia))})(this,(function(_,F){"use strict";class be{_console;_createInstance;_name;_pluginOptions;_storeInstance;_resetStoreCallback;_storeOnActionSubscription;_storeMutationSubscription;_subscriptions;pluginCreated;get console(){return this._console??console}get name(){return this._name}get pluginOptions(){return this._pluginOptions??{}}set pluginOptions(e){this._pluginOptions=e}get resetStoreCallback(){return this._resetStoreCallback}get storeOnActionSubscription(){return this._storeOnActionSubscription}get storeMutationSubscription(){return this._storeMutationSubscription}get subscriptions(){return this._subscriptions}set subscriptions(e){this._subscriptions=e}constructor(e,n,r){this._name=e,this._createInstance=n,r&&(this._console=r)}invoke({store:e,options:n},r){return this._storeInstance=this._createInstance(e,{...n,...this.pluginOptions},r,this.console),this._storeInstance?(this._subscriptions=this._storeInstance.getSubscriptions(),this._storeMutationSubscription=this._storeInstance.storeSubscribe,this._storeOnActionSubscription=this._storeInstance.onAction,this.pluginCreated&&this.pluginCreated(e),!0):!1}}class Tt{_console;_debug=!1;get console(){return this._console??console}set console(e){this._console=e}get debug(){return this._debug}set debug(e){this._debug=e}constructor(e,n){this._debug=e,this._className=this.constructor.name,n&&(this._console=n)}debugLog(...e){this._debug&&(Array.isArray(e)&&(e[0]=`${this._className} - ${e[0]}`),this.console.log(...e))}logError(...e){this.console.error(...e)}}const pt="pinia-plugin-subscription",me=(t,e="white")=>`background-color: ${t}; color: ${e}; padding: 1px; margin-right: 5px; font-size: 12px`;function ye(t,e){if(!t)throw new Error("Style instructions are required");console.log("%c%s",t,e.shift(),...e)}class xt{_bgColor="#ffec73";_color="green";_icon="🍍⚡";_errorBgColor="#d24545";_errorColor="white";_errorIcon="🍍⚠️";_styles={error:{bgColor:this._errorBgColor,color:this._errorColor,icon:this._errorIcon},info:{bgColor:this._bgColor,color:this._color,icon:this._icon}};formatMessage(e,n){return` [${n} ${pt}] - ${e} `}generateStyle(e){return me(e.bgColor,e.color)}getStyleDefinition(e){return this._styles[e??"info"]}log(...e){this.useLog(this.getStyleDefinition(),e)}error(...e){this.useLog(this.getStyleDefinition("error"),e)}rebuildArgs(e,n){if(typeof e=="string")return[this.formatMessage(e,n)];if(Array.isArray(e))return[this.formatMessage(e.shift(),n),...e??[]]}useLog(e,n){ye(this.generateStyle(e),this.rebuildArgs(n,e.icon))}}class Se extends xt{_pluginName=pt}const Oe=new Se;function Q(t){return t?Array.isArray(t)?t.length===0:typeof t=="object"?Object.keys(t).length===0:typeof t=="string"?t.trim()==="":!1:!(typeof t=="boolean"||typeof t=="number")}const Mt="PluginSubscription";class Pt extends Tt{_className=Mt;_pluginDebug;_resetStoreCallback=[];_subscribers=[];_subscribersDelivered=new Set;_subscriptions=[];_subscriptionsDelivered=new Set;set subscribers(e){this._subscribers=e}get subscriptions(){if(!Q(this._subscriptions))return this._subscriptions}constructor(e,n){super(Array.isArray(n)&&!!n?.includes(Mt),Oe),this._pluginDebug=Array.isArray(n)?n:void 0,this._subscribers=e}addResetStoreCallback(e){this._resetStoreCallback.push(e)}definePluginDebug(e){return!!this._pluginDebug?.includes(e.name)}executeResetStoreCallbacks(e){this._resetStoreCallback.forEach(n=>n(e))}plugin({store:e,options:n}){if(this._subscribers.length){this.debugLog(`plugin() - ${e.$id}`,["subscriber:",this._subscribers,"store:",e,"options:",n]);try{this._subscribers.forEach(r=>{this._subscribersDelivered.has(`${r.name}-${e.$id}`)||r.invoke({store:e,options:n},this.definePluginDebug(r))&&(this._subscribersDelivered.add(`${r.name}-${e.$id}`),r.subscriptions&&this.subscriptionDelivery({store:e,options:n},r.subscriptions),r.storeMutationSubscription&&this.storeMutationSubscription(r.storeMutationSubscription),r.storeOnActionSubscription&&this.storeOnActionSubscription(r.storeOnActionSubscription),r.resetStoreCallback&&this.addResetStoreCallback(r.resetStoreCallback))}),this.rewriteResetStore({store:e},JSON.stringify(e.$state),Object.assign({},e))}catch(r){this.logError(r,e,n)}}}rewriteResetStore({store:e},n,r){e.$reset=()=>{this.debugLog("rewriteResetStore()",{initState:n,store:e,customStore:r}),this.executeResetStoreCallbacks(e),e.$patch(JSON.parse(n))}}storeOnActionSubscription(e){const{store:n,callback:r}=e();n.$onAction(({after:s,args:i,name:o})=>{this.debugLog(`storeOnActionSubscription ${n.$id}`,{after:s,args:i,name:o,store:n}),r({after:s,args:i,name:o})})}storeMutationSubscription(e){const{store:n,callback:r}=e();n.$subscribe(s=>{this.debugLog(`$subscribe ${n.$id}`,{mutation:s,store:n}),r(s)})}subscriptionDelivery({store:e,options:n},r){Object.entries(r).forEach(([s,i])=>{try{if(this._subscriptionsDelivered.has(`${s}-${e.$id}`))return;const{subscription:o,subscriptionOptions:c,stores:a}=i;this.debugLog(`subscriptionDelivery() - store: ${e.$id}`,["pluginName:",s,"subscription:",o,"options:",i,"stores:",a]);const u={storeOptions:{...n?.storeOptions??{},...c}};o.invoke({store:e,options:{...n,...u}},this.debug),this._subscriptionsDelivered.add(`${s}-${e.$id}`),Q(a)||a?.forEach(p=>o.invoke({store:p,options:{...n,...u,...p?.storeOptions??{}}},this.debug))}catch(o){this.logError("subscriptionDelivery()",o,e,n)}})}}function Ee(t){const e=Object.create(null);for(const n of t.split(","))e[n]=1;return n=>n in e}const dt=process.env.NODE_ENV!=="production"?Object.freeze({}):{};process.env.NODE_ENV!=="production"&&Object.freeze([]);const Ft=()=>{},we=t=>t.charCodeAt(0)===111&&t.charCodeAt(1)===110&&(t.charCodeAt(2)>122||t.charCodeAt(2)<97),Ne=t=>t.startsWith("onUpdate:"),D=Object.assign,ve=Object.prototype.hasOwnProperty,_t=(t,e)=>ve.call(t,e),d=Array.isArray,z=t=>kt(t)==="[object Map]",I=t=>typeof t=="function",v=t=>typeof t=="string",T=t=>typeof t=="symbol",b=t=>t!==null&&typeof t=="object",Re=Object.prototype.toString,kt=t=>Re.call(t),jt=t=>kt(t).slice(8,-1),X=t=>v(t)&&t!=="NaN"&&t[0]!=="-"&&""+parseInt(t,10)===t,Ce=(t=>{const e=Object.create(null);return(n=>e[n]||(e[n]=t(n)))})(t=>t.charAt(0).toUpperCase()+t.slice(1)),x=(t,e)=>!Object.is(t,e);let Kt;const Z=()=>Kt||(Kt=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function gt(t){if(d(t)){const e={};for(let n=0;n<t.length;n++){const r=t[n],s=v(r)?Ve(r):gt(r);if(s)for(const i in s)e[i]=s[i]}return e}else if(v(t)||b(t))return t}const Ae=/;(?![^(]*\))/g,Ie=/:([^]+)/,$e=/\/\*[^]*?\*\//g;function Ve(t){const e={};return t.replace($e,"").split(Ae).forEach(n=>{if(n){const r=n.split(Ie);r.length>1&&(e[r[0].trim()]=r[1].trim())}}),e}function bt(t){let e="";if(v(t))e=t;else if(d(t))for(let n=0;n<t.length;n++){const r=bt(t[n]);r&&(e+=r+" ")}else if(b(t))for(const n in t)t[n]&&(e+=n+" ");return e.trim()}function k(t,...e){console.warn(`[Vue warn] ${t}`,...e)}let De,Ht=0,mt;function yt(){Ht++}function St(){if(--Ht>0)return;let t;for(;mt;){let e=mt;for(mt=void 0;e;){const n=e.next;if(e.next=void 0,e.flags&=-9,e.flags&1)try{e.trigger()}catch(r){t||(t=r)}e=n}}if(t)throw t}let tt=!0;const Lt=[];function et(){Lt.push(tt),tt=!1}function nt(){const t=Lt.pop();tt=t===void 0?!0:t}class Wt{constructor(e){this.computed=e,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0,process.env.NODE_ENV!=="production"&&(this.subsHead=void 0)}track(e){}trigger(e){this.version++,this.notify(e)}notify(e){yt();try{if(process.env.NODE_ENV!=="production")for(let n=this.subsHead;n;n=n.nextSub)n.sub.onTrigger&&!(n.sub.flags&8)&&n.sub.onTrigger(D({effect:n.sub},e));for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{St()}}}const st=new WeakMap,M=Symbol(process.env.NODE_ENV!=="production"?"Object iterate":""),Ot=Symbol(process.env.NODE_ENV!=="production"?"Map keys iterate":""),U=Symbol(process.env.NODE_ENV!=="production"?"Array iterate":"");function g(t,e,n){if(tt&&De){let r=st.get(t);r||st.set(t,r=new Map);let s=r.get(n);s||(r.set(n,s=new Wt),s.map=r,s.key=n),process.env.NODE_ENV!=="production"?s.track({target:t,type:e,key:n}):s.track()}}function $(t,e,n,r,s,i){const o=st.get(t);if(!o)return;const c=a=>{a&&(process.env.NODE_ENV!=="production"?a.trigger({target:t,type:e,key:n,newValue:r,oldValue:s,oldTarget:i}):a.trigger())};if(yt(),e==="clear")o.forEach(c);else{const a=d(t),u=a&&X(n);if(a&&n==="length"){const p=Number(r);o.forEach((l,f)=>{(f==="length"||f===U||!T(f)&&f>=p)&&c(l)})}else switch((n!==void 0||o.has(void 0))&&c(o.get(n)),u&&c(o.get(U)),e){case"add":a?u&&c(o.get("length")):(c(o.get(M)),z(t)&&c(o.get(Ot)));break;case"delete":a||(c(o.get(M)),z(t)&&c(o.get(Ot)));break;case"set":z(t)&&c(o.get(M));break}}St()}function Te(t,e){const n=st.get(t);return n&&n.get(e)}function j(t){const e=h(t);return e===t?e:(g(e,"iterate",U),y(t)?e:e.map(C))}function Et(t){return g(t=h(t),"iterate",U),t}function E(t,e){return w(t)?B(Ct(t)?C(e):e):C(e)}const xe={__proto__:null,[Symbol.iterator](){return wt(this,Symbol.iterator,t=>E(this,t))},concat(...t){return j(this).concat(...t.map(e=>d(e)?j(e):e))},entries(){return wt(this,"entries",t=>(t[1]=E(this,t[1]),t))},every(t,e){return R(this,"every",t,e,void 0,arguments)},filter(t,e){return R(this,"filter",t,e,n=>n.map(r=>E(this,r)),arguments)},find(t,e){return R(this,"find",t,e,n=>E(this,n),arguments)},findIndex(t,e){return R(this,"findIndex",t,e,void 0,arguments)},findLast(t,e){return R(this,"findLast",t,e,n=>E(this,n),arguments)},findLastIndex(t,e){return R(this,"findLastIndex",t,e,void 0,arguments)},forEach(t,e){return R(this,"forEach",t,e,void 0,arguments)},includes(...t){return Nt(this,"includes",t)},indexOf(...t){return Nt(this,"indexOf",t)},join(t){return j(this).join(t)},lastIndexOf(...t){return Nt(this,"lastIndexOf",t)},map(t,e){return R(this,"map",t,e,void 0,arguments)},pop(){return q(this,"pop")},push(...t){return q(this,"push",t)},reduce(t,...e){return zt(this,"reduce",t,e)},reduceRight(t,...e){return zt(this,"reduceRight",t,e)},shift(){return q(this,"shift")},some(t,e){return R(this,"some",t,e,void 0,arguments)},splice(...t){return q(this,"splice",t)},toReversed(){return j(this).toReversed()},toSorted(t){return j(this).toSorted(t)},toSpliced(...t){return j(this).toSpliced(...t)},unshift(...t){return q(this,"unshift",t)},values(){return wt(this,"values",t=>E(this,t))}};function wt(t,e,n){const r=Et(t),s=r[e]();return r!==t&&!y(t)&&(s._next=s.next,s.next=()=>{const i=s._next();return i.done||(i.value=n(i.value)),i}),s}const Me=Array.prototype;function R(t,e,n,r,s,i){const o=Et(t),c=o!==t&&!y(t),a=o[e];if(a!==Me[e]){const l=a.apply(t,i);return c?C(l):l}let u=n;o!==t&&(c?u=function(l,f){return n.call(this,E(t,l),f,t)}:n.length>2&&(u=function(l,f){return n.call(this,l,f,t)}));const p=a.call(o,u,r);return c&&s?s(p):p}function zt(t,e,n,r){const s=Et(t),i=s!==t&&!y(t);let o=n,c=!1;s!==t&&(i?(c=r.length===0,o=function(u,p,l){return c&&(c=!1,u=E(t,u)),n.call(this,u,E(t,p),l,t)}):n.length>3&&(o=function(u,p,l){return n.call(this,u,p,l,t)}));const a=s[e](o,...r);return c?E(t,a):a}function Nt(t,e,n){const r=h(t);g(r,"iterate",U);const s=r[e](...n);return(s===-1||s===!1)&&J(n[0])?(n[0]=h(n[0]),r[e](...n)):s}function q(t,e,n=[]){et(),yt();const r=h(t)[e].apply(t,n);return St(),nt(),r}const Pe=Ee("__proto__,__v_isRef,__isVue"),Ut=new Set(Object.getOwnPropertyNames(Symbol).filter(t=>t!=="arguments"&&t!=="caller").map(t=>Symbol[t]).filter(T));function Fe(t){T(t)||(t=String(t));const e=h(this);return g(e,"has",t),e.hasOwnProperty(t)}class qt{constructor(e=!1,n=!1){this._isReadonly=e,this._isShallow=n}get(e,n,r){if(n==="__v_skip")return e.__v_skip;const s=this._isReadonly,i=this._isShallow;if(n==="__v_isReactive")return!s;if(n==="__v_isReadonly")return s;if(n==="__v_isShallow")return i;if(n==="__v_raw")return r===(s?i?Je:Gt:i?qe:Yt).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(r)?e:void 0;const o=d(e);if(!s){let a;if(o&&(a=xe[n]))return a;if(n==="hasOwnProperty")return Fe}const c=Reflect.get(e,n,m(e)?e:r);if((T(n)?Ut.has(n):Pe(n))||(s||g(e,"get",n),i))return c;if(m(c)){const a=o&&X(n)?c:c.value;return s&&b(a)?Rt(a):a}return b(c)?s?Rt(c):Qt(c):c}}class ke extends qt{constructor(e=!1){super(!1,e)}set(e,n,r,s){let i=e[n];const o=d(e)&&X(n);if(!this._isShallow){const u=w(i);if(!y(r)&&!w(r)&&(i=h(i),r=h(r)),!o&&m(i)&&!m(r))return u?(process.env.NODE_ENV!=="production"&&k(`Set operation on key "${String(n)}" failed: target is readonly.`,e[n]),!0):(i.value=r,!0)}const c=o?Number(n)<e.length:_t(e,n),a=Reflect.set(e,n,r,m(e)?e:s);return e===h(s)&&a&&(c?x(r,i)&&$(e,"set",n,r,i):$(e,"add",n,r)),a}deleteProperty(e,n){const r=_t(e,n),s=e[n],i=Reflect.deleteProperty(e,n);return i&&r&&$(e,"delete",n,void 0,s),i}has(e,n){const r=Reflect.has(e,n);return(!T(n)||!Ut.has(n))&&g(e,"has",n),r}ownKeys(e){return g(e,"iterate",d(e)?"length":M),Reflect.ownKeys(e)}}class je extends qt{constructor(e=!1){super(!0,e)}set(e,n){return process.env.NODE_ENV!=="production"&&k(`Set operation on key "${String(n)}" failed: target is readonly.`,e),!0}deleteProperty(e,n){return process.env.NODE_ENV!=="production"&&k(`Delete operation on key "${String(n)}" failed: target is readonly.`,e),!0}}const Ke=new ke,He=new je,vt=t=>t,rt=t=>Reflect.getPrototypeOf(t);function Le(t,e,n){return function(...r){const s=this.__v_raw,i=h(s),o=z(i),c=t==="entries"||t===Symbol.iterator&&o,a=t==="keys"&&o,u=s[t](...r),p=n?vt:e?B:C;return!e&&g(i,"iterate",a?Ot:M),D(Object.create(u),{next(){const{value:l,done:f}=u.next();return f?{value:l,done:f}:{value:c?[p(l[0]),p(l[1])]:p(l),done:f}}})}}function it(t){return function(...e){if(process.env.NODE_ENV!=="production"){const n=e[0]?`on key "${e[0]}" `:"";k(`${Ce(t)} operation ${n}failed: target is readonly.`,h(this))}return t==="delete"?!1:t==="clear"?void 0:this}}function We(t,e){const n={get(s){const i=this.__v_raw,o=h(i),c=h(s);t||(x(s,c)&&g(o,"get",s),g(o,"get",c));const{has:a}=rt(o),u=e?vt:t?B:C;if(a.call(o,s))return u(i.get(s));if(a.call(o,c))return u(i.get(c));i!==o&&i.get(s)},get size(){const s=this.__v_raw;return!t&&g(h(s),"iterate",M),s.size},has(s){const i=this.__v_raw,o=h(i),c=h(s);return t||(x(s,c)&&g(o,"has",s),g(o,"has",c)),s===c?i.has(s):i.has(s)||i.has(c)},forEach(s,i){const o=this,c=o.__v_raw,a=h(c),u=e?vt:t?B:C;return!t&&g(a,"iterate",M),c.forEach((p,l)=>s.call(i,u(p),u(l),o))}};return D(n,t?{add:it("add"),set:it("set"),delete:it("delete"),clear:it("clear")}:{add(s){const i=h(this),o=rt(i),c=h(s),a=!e&&!y(s)&&!w(s)?c:s;return o.has.call(i,a)||x(s,a)&&o.has.call(i,s)||x(c,a)&&o.has.call(i,c)||(i.add(a),$(i,"add",a,a)),this},set(s,i){!e&&!y(i)&&!w(i)&&(i=h(i));const o=h(this),{has:c,get:a}=rt(o);let u=c.call(o,s);u?process.env.NODE_ENV!=="production"&&Bt(o,c,s):(s=h(s),u=c.call(o,s));const p=a.call(o,s);return o.set(s,i),u?x(i,p)&&$(o,"set",s,i,p):$(o,"add",s,i),this},delete(s){const i=h(this),{has:o,get:c}=rt(i);let a=o.call(i,s);a?process.env.NODE_ENV!=="production"&&Bt(i,o,s):(s=h(s),a=o.call(i,s));const u=c?c.call(i,s):void 0,p=i.delete(s);return a&&$(i,"delete",s,void 0,u),p},clear(){const s=h(this),i=s.size!==0,o=process.env.NODE_ENV!=="production"?z(s)?new Map(s):new Set(s):void 0,c=s.clear();return i&&$(s,"clear",void 0,void 0,o),c}}),["keys","values","entries",Symbol.iterator].forEach(s=>{n[s]=Le(s,t,e)}),n}function Jt(t,e){const n=We(t,e);return(r,s,i)=>s==="__v_isReactive"?!t:s==="__v_isReadonly"?t:s==="__v_raw"?r:Reflect.get(_t(n,s)&&s in r?n:r,s,i)}const ze={get:Jt(!1,!1)},Ue={get:Jt(!0,!1)};function Bt(t,e,n){const r=h(n);if(r!==n&&e.call(t,r)){const s=jt(t);k(`Reactive ${s} contains both the raw and reactive versions of the same object${s==="Map"?" as keys":""}, which can lead to inconsistencies. Avoid differentiating between the raw and reactive versions of an object and only use the reactive version if possible.`)}}const Yt=new WeakMap,qe=new WeakMap,Gt=new WeakMap,Je=new WeakMap;function Be(t){switch(t){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Qt(t){return w(t)?t:Xt(t,!1,Ke,ze,Yt)}function Rt(t){return Xt(t,!0,He,Ue,Gt)}function Xt(t,e,n,r,s){if(!b(t))return process.env.NODE_ENV!=="production"&&k(`value cannot be made ${e?"readonly":"reactive"}: ${String(t)}`),t;if(t.__v_raw&&!(e&&t.__v_isReactive)||t.__v_skip||!Object.isExtensible(t))return t;const i=s.get(t);if(i)return i;const o=Be(jt(t));if(o===0)return t;const c=new Proxy(t,o===2?r:n);return s.set(t,c),c}function Ct(t){return w(t)?Ct(t.__v_raw):!!(t&&t.__v_isReactive)}function w(t){return!!(t&&t.__v_isReadonly)}function y(t){return!!(t&&t.__v_isShallow)}function J(t){return t?!!t.__v_raw:!1}function h(t){const e=t&&t.__v_raw;return e?h(e):t}const C=t=>b(t)?Qt(t):t,B=t=>b(t)?Rt(t):t;function m(t){return t?t.__v_isRef===!0:!1}function Zt(t){return Ye(t,!1)}function Ye(t,e){return m(t)?t:new Ge(t,e)}class Ge{constructor(e,n){this.dep=new Wt,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?e:h(e),this._value=n?e:C(e),this.__v_isShallow=n}get value(){return process.env.NODE_ENV!=="production"?this.dep.track({target:this,type:"get",key:"value"}):this.dep.track(),this._value}set value(e){const n=this._rawValue,r=this.__v_isShallow||y(e)||w(e);e=r?e:h(e),x(e,n)&&(this._rawValue=e,this._value=r?e:C(e),process.env.NODE_ENV!=="production"?this.dep.trigger({target:this,type:"set",key:"value",newValue:e,oldValue:n}):this.dep.trigger())}}function Qe(t){return m(t)?t.value:t}class Xe{constructor(e,n,r){this._object=e,this._defaultValue=r,this.__v_isRef=!0,this._value=void 0,this._key=T(n)?n:String(n),this._raw=h(e);let s=!0,i=e;if(!d(e)||T(this._key)||!X(this._key))do s=!J(i)||y(i);while(s&&(i=i.__v_raw));this._shallow=s}get value(){let e=this._object[this._key];return this._shallow&&(e=Qe(e)),this._value=e===void 0?this._defaultValue:e}set value(e){if(this._shallow&&m(this._raw[this._key])){const n=this._object[this._key];if(m(n)){n.value=e;return}}this._object[this._key]=e}get dep(){return Te(this._raw,this._key)}}class Ze{constructor(e){this._getter=e,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}}function tn(t,e,n){return m(t)?t:I(t)?new Ze(t):b(t)&&arguments.length>1?en(t,e,n):Zt(t)}function en(t,e,n){return new Xe(t,e,n)}const P=[];function nn(t){P.push(t)}function sn(){P.pop()}let At=!1;function K(t,...e){if(At)return;At=!0,et();const n=P.length?P[P.length-1].component:null,r=n&&n.appContext.config.warnHandler,s=rn();if(r)It(r,n,11,[t+e.map(i=>{var o,c;return(c=(o=i.toString)==null?void 0:o.call(i))!=null?c:JSON.stringify(i)}).join(""),n&&n.proxy,s.map(({vnode:i})=>`at <${_e(n,i.type)}>`).join(`
2
2
  `),s]);else{const i=[`[Vue warn]: ${t}`,...e];s.length&&i.push(`
3
- `,...Ze(s)),console.warn(...i)}Ot=!1}function Xe(){let t=T[T.length-1];if(!t)return[];const e=[];for(;t;){const n=e[0];n&&n.vnode===t?n.recurseCount++:e.push({vnode:t,recurseCount:0});const r=t.component&&t.component.parent;t=r&&r.vnode}return e}function Ze(t){const e=[];return t.forEach((n,r)=>{e.push(...r===0?[]:[`
4
- `],...tn(n))}),e}function tn({vnode:t,recurseCount:e}){const n=e>0?`... (${e} recursive calls)`:"",r=t.component?t.component.parent==null:!1,s=` at <${ae(t.component,t.type,r)}`,i=">"+n;return t.props?[s,...en(t.props),i]:[s+i]}function en(t){const e=[],n=Object.keys(t);return n.slice(0,3).forEach(r=>{e.push(...Bt(r,t[r]))}),n.length>3&&e.push(" ..."),e}function Bt(t,e,n){return N(e)?(e=JSON.stringify(e),n?e:[`${t}=${e}`]):typeof e=="number"||typeof e=="boolean"||e==null?n?e:[`${t}=${e}`]:b(e)?(e=Bt(t,f(e.value),!0),n?e:[`${t}=Ref<`,e,">"]):A(e)?[`${t}=fn${e.name?`<${e.name}>`:""}`]:(e=f(e),n?e:[`${t}=`,e])}const Yt={sp:"serverPrefetch hook",bc:"beforeCreate hook",c:"created hook",bm:"beforeMount hook",m:"mounted hook",bu:"beforeUpdate hook",u:"updated",bum:"beforeUnmount hook",um:"unmounted hook",a:"activated hook",da:"deactivated hook",ec:"errorCaptured hook",rtc:"renderTracked hook",rtg:"renderTriggered hook",0:"setup function",1:"render function",2:"watcher getter",3:"watcher callback",4:"watcher cleanup function",5:"native event handler",6:"component event handler",7:"vnode hook",8:"directive hook",9:"transition hook",10:"app errorHandler",11:"app warnHandler",12:"ref function",13:"async component loader",14:"scheduler flush",15:"component update",16:"app unmount cleanup function"};function Et(t,e,n,r){try{return r?t(...r):t()}catch(s){Gt(s,e,n)}}function Gt(t,e,n,r=!0){const s=e?e.vnode:null,{errorHandler:i,throwUnhandledErrorInProduction:o}=e&&e.appContext.config||ct;if(e){let c=e.parent;const a=e.proxy,u=process.env.NODE_ENV!=="production"?Yt[n]:`https://vuejs.org/error-reference/#runtime-${n}`;for(;c;){const h=c.ec;if(h){for(let l=0;l<h.length;l++)if(h[l](t,a,u)===!1)return}c=c.parent}if(i){Et(i,null,10,[t,a,u]);return}}nn(t,n,s,r,o)}function nn(t,e,n,r=!0,s=!1){if(process.env.NODE_ENV!=="production"){const i=Yt[e];if(n&&Ge(n),F(`Unhandled error${i?` during execution of ${i}`:""}`),n&&Qe(),r)throw t;console.error(t)}else{if(s)throw t;console.error(t)}}const y=[];let C=-1;const k=[];let $=null,j=0;const sn=Promise.resolve();let wt=null;const rn=100;function on(t){let e=C+1,n=y.length;for(;e<n;){const r=e+n>>>1,s=y[r],i=q(s);i<t||i===t&&s.flags&2?e=r+1:n=r}return e}function cn(t){if(!(t.flags&1)){const e=q(t),n=y[y.length-1];!n||!(t.flags&2)&&e>=q(n)?y.push(t):y.splice(on(e),0,t),t.flags|=1,Qt()}}function Qt(){wt||(wt=sn.then(Xt))}function ln(t){d(t)?k.push(...t):$&&t.id===-1?$.splice(j+1,0,t):t.flags&1||(k.push(t),t.flags|=1),Qt()}function an(t){if(k.length){const e=[...new Set(k)].sort((n,r)=>q(n)-q(r));if(k.length=0,$){$.push(...e);return}for($=e,process.env.NODE_ENV!=="production"&&(t=t||new Map),j=0;j<$.length;j++){const n=$[j];process.env.NODE_ENV!=="production"&&Zt(t,n)||(n.flags&4&&(n.flags&=-2),n.flags&8||n(),n.flags&=-2)}$=null,j=0}}const q=t=>t.id==null?t.flags&2?-1:1/0:t.id;function Xt(t){process.env.NODE_ENV!=="production"&&(t=t||new Map);const e=process.env.NODE_ENV!=="production"?n=>Zt(t,n):$t;try{for(C=0;C<y.length;C++){const n=y[C];if(n&&!(n.flags&8)){if(process.env.NODE_ENV!=="production"&&e(n))continue;n.flags&4&&(n.flags&=-2),Et(n,n.i,n.i?15:14),n.flags&4||(n.flags&=-2)}}}finally{for(;C<y.length;C++){const n=y[C];n&&(n.flags&=-2)}C=-1,y.length=0,an(t),wt=null,(y.length||k.length)&&Xt(t)}}function Zt(t,e){const n=t.get(e)||0;if(n>rn){const r=e.i,s=r&&le(r.type);return Gt(`Maximum recursive updates exceeded${s?` in component <${s}>`:""}. This means you have a reactive effect that is mutating its own dependencies and thus recursively triggering itself. Possible sources include component template, render function, updated hook or watcher source function.`,null,10),!0}return t.set(e,n+1),!1}const Nt=new Map;process.env.NODE_ENV!=="production"&&(G().__VUE_HMR_RUNTIME__={createRecord:vt(un),rerender:vt(fn),reload:vt(hn)});const Z=new Map;function un(t,e){return Z.has(t)?!1:(Z.set(t,{initialDef:tt(e),instances:new Set}),!0)}function tt(t){return ue(t)?t.__vccOpts:t}function fn(t,e){const n=Z.get(t);n&&(n.initialDef.render=e,[...n.instances].forEach(r=>{e&&(r.render=e,tt(r.type).render=e),r.renderCache=[],r.job.flags&8||r.update()}))}function hn(t,e){const n=Z.get(t);if(!n)return;e=tt(e),te(n.initialDef,e);const r=[...n.instances];for(let s=0;s<r.length;s++){const i=r[s],o=tt(i.type);let c=Nt.get(o);c||(o!==n.initialDef&&te(o,e),Nt.set(o,c=new Set)),c.add(i),i.appContext.propsCache.delete(i.type),i.appContext.emitsCache.delete(i.type),i.appContext.optionsCache.delete(i.type),i.ceReload?(c.add(i),i.ceReload(e.styles),c.delete(i)):i.parent?cn(()=>{i.job.flags&8||(i.parent.update(),c.delete(i))}):i.appContext.reload?i.appContext.reload():typeof window<"u"?window.location.reload():console.warn("[HMR] Root or manually mounted instance modified. Full reload required."),i.root.ce&&i!==i.root&&i.root.ce._removeChildStyle(o)}ln(()=>{Nt.clear()})}function te(t,e){V(t,e);for(const n in t)n!=="__file"&&!(n in e)&&delete t[n]}function vt(t){return(e,n)=>{try{return t(e,n)}catch(r){console.error(r),console.warn("[HMR] Something went wrong during Vue component hot-reload. Full reload required.")}}}let K,et=[];function ee(t,e){var n,r;K=t,K?(K.enabled=!0,et.forEach(({event:s,args:i})=>K.emit(s,...i)),et=[]):typeof window<"u"&&window.HTMLElement&&!((r=(n=window.navigator)==null?void 0:n.userAgent)!=null&&r.includes("jsdom"))?((e.__VUE_DEVTOOLS_HOOK_REPLAY__=e.__VUE_DEVTOOLS_HOOK_REPLAY__||[]).push(i=>{ee(i,e)}),setTimeout(()=>{K||(e.__VUE_DEVTOOLS_HOOK_REPLAY__=null,et=[])},3e3)):et=[]}let nt=null,pn=null;const dn=t=>t.__isTeleport;function ne(t,e){t.shapeFlag&6&&t.component?(t.transition=e,ne(t.component.subTree,e)):t.shapeFlag&128?(t.ssContent.transition=e.clone(t.ssContent),t.ssFallback.transition=e.clone(t.ssFallback)):t.transition=e}G().requestIdleCallback,G().cancelIdleCallback;const _n=Symbol.for("v-ndc"),gn={};process.env.NODE_ENV!=="production"&&(gn.ownKeys=t=>(F("Avoid app logic that relies on enumerating keys on a component instance. The keys will be empty in production mode to avoid performance overhead."),Reflect.ownKeys(t)));const bn={},se=t=>Object.getPrototypeOf(t)===bn,mn=t=>t.__isSuspense,re=Symbol.for("v-fgt"),yn=Symbol.for("v-txt"),Sn=Symbol.for("v-cmt");function On(t){return t?t.__v_isVNode===!0:!1}const En=(...t)=>oe(...t),ie=({key:t})=>t??null,st=({ref:t,ref_key:e,ref_for:n})=>(typeof t=="number"&&(t=""+t),t!=null?N(t)||b(t)||A(t)?{i:nt,r:t,k:e,f:!!n}:t:null);function wn(t,e=null,n=null,r=0,s=null,i=t===re?0:1,o=!1,c=!1){const a={__v_isVNode:!0,__v_skip:!0,type:t,props:e,key:e&&ie(e),ref:e&&st(e),scopeId:pn,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:i,patchFlag:r,dynamicProps:s,dynamicChildren:null,appContext:null,ctx:nt};return c?(it(a,n),i&128&&t.normalize(a)):n&&(a.shapeFlag|=N(n)?8:16),process.env.NODE_ENV!=="production"&&a.key!==a.key&&F("VNode created with invalid key (NaN). VNode type:",a.type),a}const Nn=process.env.NODE_ENV!=="production"?En:oe;function oe(t,e=null,n=null,r=0,s=null,i=!1){if((!t||t===_n)&&(process.env.NODE_ENV!=="production"&&!t&&F(`Invalid vnode type when creating vnode: ${t}.`),t=Sn),On(t)){const c=rt(t,e,!0);return n&&it(c,n),c.patchFlag=-2,c}if(ue(t)&&(t=t.__vccOpts),e){e=vn(e);let{class:c,style:a}=e;c&&!N(c)&&(e.class=ut(c)),g(a)&&(z(a)&&!d(a)&&(a=V({},a)),e.style=at(a))}const o=N(t)?1:mn(t)?128:dn(t)?64:g(t)?4:A(t)?2:0;return process.env.NODE_ENV!=="production"&&o&4&&z(t)&&(t=f(t),F("Vue received a Component that was made a reactive object. This can lead to unnecessary performance overhead and should be avoided by marking the component with `markRaw` or using `shallowRef` instead of `ref`.",`
5
- Component that was made reactive: `,t)),wn(t,e,n,r,s,o,i,!0)}function vn(t){return t?z(t)||se(t)?V({},t):t:null}function rt(t,e,n=!1,r=!1){const{props:s,ref:i,patchFlag:o,children:c,transition:a}=t,u=e?Cn(s||{},e):s,h={__v_isVNode:!0,__v_skip:!0,type:t.type,props:u,key:u&&ie(u),ref:e&&e.ref?n&&i?d(i)?i.concat(st(e)):[i,st(e)]:st(e):i,scopeId:t.scopeId,slotScopeIds:t.slotScopeIds,children:process.env.NODE_ENV!=="production"&&o===-1&&d(c)?c.map(ce):c,target:t.target,targetStart:t.targetStart,targetAnchor:t.targetAnchor,staticCount:t.staticCount,shapeFlag:t.shapeFlag,patchFlag:e&&t.type!==re?o===-1?16:o|16:o,dynamicProps:t.dynamicProps,dynamicChildren:t.dynamicChildren,appContext:t.appContext,dirs:t.dirs,transition:a,component:t.component,suspense:t.suspense,ssContent:t.ssContent&&rt(t.ssContent),ssFallback:t.ssFallback&&rt(t.ssFallback),placeholder:t.placeholder,el:t.el,anchor:t.anchor,ctx:t.ctx,ce:t.ce};return a&&r&&ne(h,a.clone(h)),h}function ce(t){const e=rt(t);return d(t.children)&&(e.children=t.children.map(ce)),e}function Rn(t=" ",e=0){return Nn(yn,null,t,e)}function it(t,e){let n=0;const{shapeFlag:r}=t;if(e==null)e=null;else if(d(e))n=16;else if(typeof e=="object")if(r&65){const s=e.default;s&&(s._c&&(s._d=!1),it(t,s()),s._c&&(s._d=!0));return}else n=32,!e._&&!se(e)&&(e._ctx=nt);else if(A(e)){if(r&65){it(t,{default:e});return}e={default:e,_ctx:nt},n=32}else e=String(e),r&64?(n=16,e=[Rn(e)]):n=8;t.children=e,t.shapeFlag|=n}function Cn(...t){const e={};for(let n=0;n<t.length;n++){const r=t[n];for(const s in r)if(s==="class")e.class!==r.class&&(e.class=ut([e.class,r.class]));else if(s==="style")e.style=at([e.style,r.style]);else if(be(s)){const i=e[s],o=r[s];o&&i!==o&&!(d(i)&&i.includes(o))?e[s]=i?[].concat(i,o):o:o==null&&i==null&&!me(s)&&(e[s]=o)}else s!==""&&(e[s]=r[s])}return e}{const t=G(),e=(n,r)=>{let s;return(s=t[n])||(s=t[n]=[]),s.push(r),i=>{s.length>1?s.forEach(o=>o(i)):s[0](i)}};e("__VUE_INSTANCE_SETTERS__",n=>n),e("__VUE_SSR_SETTERS__",n=>n)}process.env.NODE_ENV;const An=/(?:^|[-_])\w/g,In=t=>t.replace(An,e=>e.toUpperCase()).replace(/[-_]/g,"");function le(t,e=!0){return A(t)?t.displayName||t.name:t.name||e&&t.__name}function ae(t,e,n=!1){let r=le(e);if(!r&&e.__file){const s=e.__file.match(/([^/\\]+)\.\w+$/);s&&(r=s[1])}if(!r&&t){const s=i=>{for(const o in i)if(i[o]===e)return o};r=s(t.components)||t.parent&&s(t.parent.type.components)||s(t.appContext.components)}return r?In(r):n?"App":"Anonymous"}function ue(t){return A(t)&&"__vccOpts"in t}function $n(){if(process.env.NODE_ENV==="production"||typeof window>"u")return;const t={style:"color:#3ba776"},e={style:"color:#1677ff"},n={style:"color:#f5222d"},r={style:"color:#eb2f96"},s={__vue_custom_formatter:!0,header(l){if(!g(l))return null;if(l.__isVue)return["div",t,"VueInstance"];if(b(l)){const p=l.value;return["div",{},["span",t,h(l)],"<",c(p),">"]}else{if(St(l))return["div",{},["span",t,m(l)?"ShallowReactive":"Reactive"],"<",c(l),`>${E(l)?" (readonly)":""}`];if(E(l))return["div",{},["span",t,m(l)?"ShallowReadonly":"Readonly"],"<",c(l),">"]}return null},hasBody(l){return l&&l.__isVue},body(l){if(l&&l.__isVue)return["div",{},...i(l.$)]}};function i(l){const p=[];l.type.props&&l.props&&p.push(o("props",f(l.props))),l.setupState!==ct&&p.push(o("setup",l.setupState)),l.data!==ct&&p.push(o("data",f(l.data)));const S=a(l,"computed");S&&p.push(o("computed",S));const w=a(l,"inject");return w&&p.push(o("injected",w)),p.push(["div",{},["span",{style:r.style+";opacity:0.66"},"$ (internal): "],["object",{object:l}]]),p}function o(l,p){return p=V({},p),Object.keys(p).length?["div",{style:"line-height:1.25em;margin-bottom:0.6em"},["div",{style:"color:#476582"},l],["div",{style:"padding-left:1.25em"},...Object.keys(p).map(S=>["div",{},["span",r,S+": "],c(p[S],!1)])]]:["span",{}]}function c(l,p=!0){return typeof l=="number"?["span",e,l]:typeof l=="string"?["span",n,JSON.stringify(l)]:typeof l=="boolean"?["span",r,l]:g(l)?["object",{object:p?f(l):l}]:["span",n,String(l)]}function a(l,p){const S=l.type;if(A(S))return;const w={};for(const J in l.ctx)u(S,J,p)&&(w[J]=l.ctx[J]);return w}function u(l,p,S){const w=l[S];if(d(w)&&w.includes(p)||g(w)&&p in w||l.extends&&u(l.extends,p,S)||l.mixins&&l.mixins.some(J=>u(J,p,S)))return!0}function h(l){return m(l)?"ShallowRef":l.effect?"ComputedRef":"Ref"}window.devtoolsFormatters?window.devtoolsFormatters.push(s):window.devtoolsFormatters=[s]}process.env.NODE_ENV,process.env.NODE_ENV,process.env.NODE_ENV;function Vn(){$n()}process.env.NODE_ENV!=="production"&&Vn();function Dn(t,e,n){const r=n?{storeOptions:n}:{};return typeof e=="function"?Tn(t,e,r):xn(t,e,r)}function Tn(t,e,n){return x.defineStore(t,e,n)}function xn(t,e,n){return n&&(e={...e,...n??{}}),x.defineStore(t,e)}const Pn=new Set(["_","$"]);function Mn(t){return Pn.has(t[0])}class Fn extends Rt{_className="Store";_onAction;_options;_store;_subscriptions={};_storeSubscribe;static _requiredKeys;get onAction(){if(this._onAction)return()=>({store:this.store,callback:this._onAction})}set onAction(e){this._onAction=e}get options(){return this._options}get state(){return this._store.$state}set state(e){this._store.$state=e}get store(){return this._store}get storeSubscribe(){if(this._storeSubscribe)return()=>({store:this.store,callback:this._storeSubscribe})}set storeSubscribe(e){this._storeSubscribe=e}constructor(e,n,r=!1,s){super(r,s),this._options=n.storeOptions,this._store=e}addToState(e,n){this.isOptionApi()||n?.value||(n=Jt(n)),this.state[e]=n,this.store[e]=Be(this.state,e)}addSubscription(e,n,r){this._subscriptions[e]={subscription:n,...r??{}}}static customizeStore(e,n,r=!1,s){if(n.storeOptions&&this.hasRequiredKeys(n.storeOptions))return new this(e,n,r,s)}hasDeniedFirstChar(e){return Mn(e[0])}static hasRequiredKeys(e){return this._requiredKeys!==void 0&&this._requiredKeys?.every(n=>!!e[n])}getOption(e){return this.options&&this.options[e]}getStatePropertyValue(e){return this.getValue(this.state[e])}getSubscriptions(){if(!B(this._subscriptions))return this._subscriptions}getValue(e){return e?.__v_isRef?e.value:e}isOptionApi(){return this.store._isOptionsAPI}stateHas(e){return this.state.hasOwnProperty(e)}storeHas(e){return this.store.hasOwnProperty(e)}}function kn(t,e){const n=new It(t,e);return n.plugin.bind(n)}_.CustomConsole=Ct,_.PLUGIN_NAME=ot,_.PluginSubscriber=fe,_.PluginSubscription=It,_.Store=Fn,_.createPlugin=kn,_.defineAStore=Dn,_.isEmpty=B,Object.defineProperty(_,Symbol.toStringTag,{value:"Module"})}));
3
+ `,...on(s)),console.warn(...i)}nt(),At=!1}function rn(){let t=P[P.length-1];if(!t)return[];const e=[];for(;t;){const n=e[0];n&&n.vnode===t?n.recurseCount++:e.push({vnode:t,recurseCount:0});const r=t.component&&t.component.parent;t=r&&r.vnode}return e}function on(t){const e=[];return t.forEach((n,r)=>{e.push(...r===0?[]:[`
4
+ `],...cn(n))}),e}function cn({vnode:t,recurseCount:e}){const n=e>0?`... (${e} recursive calls)`:"",r=t.component?t.component.parent==null:!1,s=` at <${_e(t.component,t.type,r)}`,i=">"+n;return t.props?[s,...ln(t.props),i]:[s+i]}function ln(t){const e=[],n=Object.keys(t);return n.slice(0,3).forEach(r=>{e.push(...te(r,t[r]))}),n.length>3&&e.push(" ..."),e}function te(t,e,n){return v(e)?(e=JSON.stringify(e),n?e:[`${t}=${e}`]):typeof e=="number"||typeof e=="boolean"||e==null?n?e:[`${t}=${e}`]:m(e)?(e=te(t,h(e.value),!0),n?e:[`${t}=Ref<`,e,">"]):I(e)?[`${t}=fn${e.name?`<${e.name}>`:""}`]:(e=h(e),n?e:[`${t}=`,e])}const ee={sp:"serverPrefetch hook",bc:"beforeCreate hook",c:"created hook",bm:"beforeMount hook",m:"mounted hook",bu:"beforeUpdate hook",u:"updated",bum:"beforeUnmount hook",um:"unmounted hook",a:"activated hook",da:"deactivated hook",ec:"errorCaptured hook",rtc:"renderTracked hook",rtg:"renderTriggered hook",0:"setup function",1:"render function",2:"watcher getter",3:"watcher callback",4:"watcher cleanup function",5:"native event handler",6:"component event handler",7:"vnode hook",8:"directive hook",9:"transition hook",10:"app errorHandler",11:"app warnHandler",12:"ref function",13:"async component loader",14:"scheduler flush",15:"component update",16:"app unmount cleanup function"};function It(t,e,n,r){try{return r?t(...r):t()}catch(s){ne(s,e,n)}}function ne(t,e,n,r=!0){const s=e?e.vnode:null,{errorHandler:i,throwUnhandledErrorInProduction:o}=e&&e.appContext.config||dt;if(e){let c=e.parent;const a=e.proxy,u=process.env.NODE_ENV!=="production"?ee[n]:`https://vuejs.org/error-reference/#runtime-${n}`;for(;c;){const p=c.ec;if(p){for(let l=0;l<p.length;l++)if(p[l](t,a,u)===!1)return}c=c.parent}if(i){et(),It(i,null,10,[t,a,u]),nt();return}}an(t,n,s,r,o)}function an(t,e,n,r=!0,s=!1){if(process.env.NODE_ENV!=="production"){const i=ee[e];if(n&&nn(n),K(`Unhandled error${i?` during execution of ${i}`:""}`),n&&sn(),r)throw t;console.error(t)}else{if(s)throw t;console.error(t)}}const S=[];let A=-1;const H=[];let V=null,L=0;const un=Promise.resolve();let $t=null;const fn=100;function hn(t){let e=A+1,n=S.length;for(;e<n;){const r=e+n>>>1,s=S[r],i=Y(s);i<t||i===t&&s.flags&2?e=r+1:n=r}return e}function pn(t){if(!(t.flags&1)){const e=Y(t),n=S[S.length-1];!n||!(t.flags&2)&&e>=Y(n)?S.push(t):S.splice(hn(e),0,t),t.flags|=1,se()}}function se(){$t||($t=un.then(re))}function dn(t){d(t)?H.push(...t):V&&t.id===-1?V.splice(L+1,0,t):t.flags&1||(H.push(t),t.flags|=1),se()}function _n(t){if(H.length){const e=[...new Set(H)].sort((n,r)=>Y(n)-Y(r));if(H.length=0,V){V.push(...e);return}for(V=e,process.env.NODE_ENV!=="production"&&(t=t||new Map),L=0;L<V.length;L++){const n=V[L];process.env.NODE_ENV!=="production"&&ie(t,n)||(n.flags&4&&(n.flags&=-2),n.flags&8||n(),n.flags&=-2)}V=null,L=0}}const Y=t=>t.id==null?t.flags&2?-1:1/0:t.id;function re(t){process.env.NODE_ENV!=="production"&&(t=t||new Map);const e=process.env.NODE_ENV!=="production"?n=>ie(t,n):Ft;try{for(A=0;A<S.length;A++){const n=S[A];if(n&&!(n.flags&8)){if(process.env.NODE_ENV!=="production"&&e(n))continue;n.flags&4&&(n.flags&=-2),It(n,n.i,n.i?15:14),n.flags&4||(n.flags&=-2)}}}finally{for(;A<S.length;A++){const n=S[A];n&&(n.flags&=-2)}A=-1,S.length=0,_n(t),$t=null,(S.length||H.length)&&re(t)}}function ie(t,e){const n=t.get(e)||0;if(n>fn){const r=e.i,s=r&&de(r.type);return ne(`Maximum recursive updates exceeded${s?` in component <${s}>`:""}. This means you have a reactive effect that is mutating its own dependencies and thus recursively triggering itself. Possible sources include component template, render function, updated hook or watcher source function.`,null,10),!0}return t.set(e,n+1),!1}const Vt=new Map;process.env.NODE_ENV!=="production"&&(Z().__VUE_HMR_RUNTIME__={createRecord:Dt(gn),rerender:Dt(bn),reload:Dt(mn)});const ot=new Map;function gn(t,e){return ot.has(t)?!1:(ot.set(t,{initialDef:ct(e),instances:new Set}),!0)}function ct(t){return ge(t)?t.__vccOpts:t}function bn(t,e){const n=ot.get(t);n&&(n.initialDef.render=e,[...n.instances].forEach(r=>{e&&(r.render=e,ct(r.type).render=e),r.renderCache=[],r.job.flags&8||r.update()}))}function mn(t,e){const n=ot.get(t);if(!n)return;e=ct(e),oe(n.initialDef,e);const r=[...n.instances];for(let s=0;s<r.length;s++){const i=r[s],o=ct(i.type);let c=Vt.get(o);c||(o!==n.initialDef&&oe(o,e),Vt.set(o,c=new Set)),c.add(i),i.appContext.propsCache.delete(i.type),i.appContext.emitsCache.delete(i.type),i.appContext.optionsCache.delete(i.type),i.ceReload?(c.add(i),i.ceReload(e.styles),c.delete(i)):i.parent?pn(()=>{i.job.flags&8||(i.parent.update(),c.delete(i))}):i.appContext.reload?i.appContext.reload():typeof window<"u"?window.location.reload():console.warn("[HMR] Root or manually mounted instance modified. Full reload required."),i.root.ce&&i!==i.root&&i.root.ce._removeChildStyle(o)}dn(()=>{Vt.clear()})}function oe(t,e){D(t,e);for(const n in t)n!=="__file"&&!(n in e)&&delete t[n]}function Dt(t){return(e,n)=>{try{return t(e,n)}catch(r){console.error(r),console.warn("[HMR] Something went wrong during Vue component hot-reload. Full reload required.")}}}let W,lt=[];function ce(t,e){var n,r;W=t,W?(W.enabled=!0,lt.forEach(({event:s,args:i})=>W.emit(s,...i)),lt=[]):typeof window<"u"&&window.HTMLElement&&!((r=(n=window.navigator)==null?void 0:n.userAgent)!=null&&r.includes("jsdom"))?((e.__VUE_DEVTOOLS_HOOK_REPLAY__=e.__VUE_DEVTOOLS_HOOK_REPLAY__||[]).push(i=>{ce(i,e)}),setTimeout(()=>{W||(e.__VUE_DEVTOOLS_HOOK_REPLAY__=null,lt=[])},3e3)):lt=[]}let at=null,yn=null;const Sn=t=>t.__isTeleport;function le(t,e){t.shapeFlag&6&&t.component?(t.transition=e,le(t.component.subTree,e)):t.shapeFlag&128?(t.ssContent.transition=e.clone(t.ssContent),t.ssFallback.transition=e.clone(t.ssFallback)):t.transition=e}Z().requestIdleCallback,Z().cancelIdleCallback;const On=Symbol.for("v-ndc"),En={};process.env.NODE_ENV!=="production"&&(En.ownKeys=t=>(K("Avoid app logic that relies on enumerating keys on a component instance. The keys will be empty in production mode to avoid performance overhead."),Reflect.ownKeys(t)));const wn={},ae=t=>Object.getPrototypeOf(t)===wn,Nn=t=>t.__isSuspense,ue=Symbol.for("v-fgt"),vn=Symbol.for("v-txt"),Rn=Symbol.for("v-cmt");function Cn(t){return t?t.__v_isVNode===!0:!1}const An=(...t)=>he(...t),fe=({key:t})=>t??null,ut=({ref:t,ref_key:e,ref_for:n})=>(typeof t=="number"&&(t=""+t),t!=null?v(t)||m(t)||I(t)?{i:at,r:t,k:e,f:!!n}:t:null);function In(t,e=null,n=null,r=0,s=null,i=t===ue?0:1,o=!1,c=!1){const a={__v_isVNode:!0,__v_skip:!0,type:t,props:e,key:e&&fe(e),ref:e&&ut(e),scopeId:yn,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:i,patchFlag:r,dynamicProps:s,dynamicChildren:null,appContext:null,ctx:at};return c?(ht(a,n),i&128&&t.normalize(a)):n&&(a.shapeFlag|=v(n)?8:16),process.env.NODE_ENV!=="production"&&a.key!==a.key&&K("VNode created with invalid key (NaN). VNode type:",a.type),a}const $n=process.env.NODE_ENV!=="production"?An:he;function he(t,e=null,n=null,r=0,s=null,i=!1){if((!t||t===On)&&(process.env.NODE_ENV!=="production"&&!t&&K(`Invalid vnode type when creating vnode: ${t}.`),t=Rn),Cn(t)){const c=ft(t,e,!0);return n&&ht(c,n),c.patchFlag=-2,c}if(ge(t)&&(t=t.__vccOpts),e){e=Vn(e);let{class:c,style:a}=e;c&&!v(c)&&(e.class=bt(c)),b(a)&&(J(a)&&!d(a)&&(a=D({},a)),e.style=gt(a))}const o=v(t)?1:Nn(t)?128:Sn(t)?64:b(t)?4:I(t)?2:0;return process.env.NODE_ENV!=="production"&&o&4&&J(t)&&(t=h(t),K("Vue received a Component that was made a reactive object. This can lead to unnecessary performance overhead and should be avoided by marking the component with `markRaw` or using `shallowRef` instead of `ref`.",`
5
+ Component that was made reactive: `,t)),In(t,e,n,r,s,o,i,!0)}function Vn(t){return t?J(t)||ae(t)?D({},t):t:null}function ft(t,e,n=!1,r=!1){const{props:s,ref:i,patchFlag:o,children:c,transition:a}=t,u=e?Tn(s||{},e):s,p={__v_isVNode:!0,__v_skip:!0,type:t.type,props:u,key:u&&fe(u),ref:e&&e.ref?n&&i?d(i)?i.concat(ut(e)):[i,ut(e)]:ut(e):i,scopeId:t.scopeId,slotScopeIds:t.slotScopeIds,children:process.env.NODE_ENV!=="production"&&o===-1&&d(c)?c.map(pe):c,target:t.target,targetStart:t.targetStart,targetAnchor:t.targetAnchor,staticCount:t.staticCount,shapeFlag:t.shapeFlag,patchFlag:e&&t.type!==ue?o===-1?16:o|16:o,dynamicProps:t.dynamicProps,dynamicChildren:t.dynamicChildren,appContext:t.appContext,dirs:t.dirs,transition:a,component:t.component,suspense:t.suspense,ssContent:t.ssContent&&ft(t.ssContent),ssFallback:t.ssFallback&&ft(t.ssFallback),placeholder:t.placeholder,el:t.el,anchor:t.anchor,ctx:t.ctx,ce:t.ce};return a&&r&&le(p,a.clone(p)),p}function pe(t){const e=ft(t);return d(t.children)&&(e.children=t.children.map(pe)),e}function Dn(t=" ",e=0){return $n(vn,null,t,e)}function ht(t,e){let n=0;const{shapeFlag:r}=t;if(e==null)e=null;else if(d(e))n=16;else if(typeof e=="object")if(r&65){const s=e.default;s&&(s._c&&(s._d=!1),ht(t,s()),s._c&&(s._d=!0));return}else n=32,!e._&&!ae(e)&&(e._ctx=at);else if(I(e)){if(r&65){ht(t,{default:e});return}e={default:e,_ctx:at},n=32}else e=String(e),r&64?(n=16,e=[Dn(e)]):n=8;t.children=e,t.shapeFlag|=n}function Tn(...t){const e={};for(let n=0;n<t.length;n++){const r=t[n];for(const s in r)if(s==="class")e.class!==r.class&&(e.class=bt([e.class,r.class]));else if(s==="style")e.style=gt([e.style,r.style]);else if(we(s)){const i=e[s],o=r[s];o&&i!==o&&!(d(i)&&i.includes(o))?e[s]=i?[].concat(i,o):o:o==null&&i==null&&!Ne(s)&&(e[s]=o)}else s!==""&&(e[s]=r[s])}return e}{const t=Z(),e=(n,r)=>{let s;return(s=t[n])||(s=t[n]=[]),s.push(r),i=>{s.length>1?s.forEach(o=>o(i)):s[0](i)}};e("__VUE_INSTANCE_SETTERS__",n=>n),e("__VUE_SSR_SETTERS__",n=>n)}process.env.NODE_ENV;const xn=/(?:^|[-_])\w/g,Mn=t=>t.replace(xn,e=>e.toUpperCase()).replace(/[-_]/g,"");function de(t,e=!0){return I(t)?t.displayName||t.name:t.name||e&&t.__name}function _e(t,e,n=!1){let r=de(e);if(!r&&e.__file){const s=e.__file.match(/([^/\\]+)\.\w+$/);s&&(r=s[1])}if(!r&&t){const s=i=>{for(const o in i)if(i[o]===e)return o};r=s(t.components)||t.parent&&s(t.parent.type.components)||s(t.appContext.components)}return r?Mn(r):n?"App":"Anonymous"}function ge(t){return I(t)&&"__vccOpts"in t}function Pn(){if(process.env.NODE_ENV==="production"||typeof window>"u")return;const t={style:"color:#3ba776"},e={style:"color:#1677ff"},n={style:"color:#f5222d"},r={style:"color:#eb2f96"},s={__vue_custom_formatter:!0,header(l){if(!b(l))return null;if(l.__isVue)return["div",t,"VueInstance"];if(m(l)){et();const f=l.value;return nt(),["div",{},["span",t,p(l)],"<",c(f),">"]}else{if(Ct(l))return["div",{},["span",t,y(l)?"ShallowReactive":"Reactive"],"<",c(l),`>${w(l)?" (readonly)":""}`];if(w(l))return["div",{},["span",t,y(l)?"ShallowReadonly":"Readonly"],"<",c(l),">"]}return null},hasBody(l){return l&&l.__isVue},body(l){if(l&&l.__isVue)return["div",{},...i(l.$)]}};function i(l){const f=[];l.type.props&&l.props&&f.push(o("props",h(l.props))),l.setupState!==dt&&f.push(o("setup",l.setupState)),l.data!==dt&&f.push(o("data",h(l.data)));const O=a(l,"computed");O&&f.push(o("computed",O));const N=a(l,"inject");return N&&f.push(o("injected",N)),f.push(["div",{},["span",{style:r.style+";opacity:0.66"},"$ (internal): "],["object",{object:l}]]),f}function o(l,f){return f=D({},f),Object.keys(f).length?["div",{style:"line-height:1.25em;margin-bottom:0.6em"},["div",{style:"color:#476582"},l],["div",{style:"padding-left:1.25em"},...Object.keys(f).map(O=>["div",{},["span",r,O+": "],c(f[O],!1)])]]:["span",{}]}function c(l,f=!0){return typeof l=="number"?["span",e,l]:typeof l=="string"?["span",n,JSON.stringify(l)]:typeof l=="boolean"?["span",r,l]:b(l)?["object",{object:f?h(l):l}]:["span",n,String(l)]}function a(l,f){const O=l.type;if(I(O))return;const N={};for(const G in l.ctx)u(O,G,f)&&(N[G]=l.ctx[G]);return N}function u(l,f,O){const N=l[O];if(d(N)&&N.includes(f)||b(N)&&f in N||l.extends&&u(l.extends,f,O)||l.mixins&&l.mixins.some(G=>u(G,f,O)))return!0}function p(l){return y(l)?"ShallowRef":l.effect?"ComputedRef":"Ref"}window.devtoolsFormatters?window.devtoolsFormatters.push(s):window.devtoolsFormatters=[s]}process.env.NODE_ENV,process.env.NODE_ENV,process.env.NODE_ENV;function Fn(){Pn()}process.env.NODE_ENV!=="production"&&Fn();function kn(t,e,n){const r=n?{storeOptions:n}:{};return typeof e=="function"?jn(t,e,r):Kn(t,e,r)}function jn(t,e,n){return F.defineStore(t,e,n)}function Kn(t,e,n){return n&&(e={...e,...n??{}}),F.defineStore(t,e)}const Hn=new Set(["_","$"]);function Ln(t){return Hn.has(t[0])}class Wn extends Tt{_className="Store";_onAction;_options;_store;_subscriptions={};_storeSubscribe;static _requiredKeys;get onAction(){if(this._onAction)return()=>({store:this.store,callback:this._onAction})}set onAction(e){this._onAction=e}get options(){return this._options}get state(){return this._store.$state}set state(e){this._store.$state=e}get store(){return this._store}get storeSubscribe(){if(this._storeSubscribe)return()=>({store:this.store,callback:this._storeSubscribe})}set storeSubscribe(e){this._storeSubscribe=e}constructor(e,n,r=!1,s){super(r,s),this._options=n.storeOptions,this._store=e}addToState(e,n){this.isOptionApi()||n?.value||(n=Zt(n)),this.state[e]=n,this.store[e]=tn(this.state,e)}addSubscription(e,n,r){this._subscriptions[e]={subscription:n,...r??{}}}static customizeStore(e,n,r=!1,s){if(n.storeOptions&&this.hasRequiredKeys(n.storeOptions))return new this(e,n,r,s)}hasDeniedFirstChar(e){return Ln(e[0])}static hasRequiredKeys(e){return this._requiredKeys!==void 0&&this._requiredKeys?.every(n=>!!e[n])}getOption(e){return this.options&&this.options[e]}getStatePropertyValue(e){return this.getValue(this.state[e])}getSubscriptions(){if(!Q(this._subscriptions))return this._subscriptions}getValue(e){return e?.__v_isRef?e.value:e}isOptionApi(){return this.store._isOptionsAPI}stateHas(e){return this.state.hasOwnProperty(e)}storeHas(e){return this.store.hasOwnProperty(e)}}function zn(t,e){const n=new Pt(t,e);return n.plugin.bind(n)}_.CustomConsole=xt,_.PLUGIN_NAME=pt,_.PluginSubscriber=be,_.PluginSubscription=Pt,_.Store=Wn,_.createPlugin=zn,_.defineAStore=kn,_.isEmpty=Q,Object.defineProperty(_,Symbol.toStringTag,{value:"Module"})}));
@@ -1,123 +1,3 @@
1
- import type { PiniaPlugin, PiniaPluginContext, Store as PiniaStore, StateTree, StoreDefinition } from "pinia"
2
- import type { Console } from "./log"
3
- import type {
4
- PluginSubscriber as PluginSubscriberInterface,
5
- PluginSubscriptions,
6
- StoreOnActionSubscription,
7
- StoreOnActionSubscriptionCallback,
8
- StoreMutationSubscription,
9
- StoreMutationSubscriptionCallback
10
- } from "./plugin"
11
- import type { StatePropertyValue, StoreOptions, StoreOptionsPropertyValue } from "./store"
12
-
13
-
14
- declare module 'pinia-plugin-subscription' {
15
- export const PLUGIN_NAME: string;
16
-
17
- export function createPlugin(subscribers: PluginSubscriberInterface[], debug?: string[]): PiniaPlugin;
18
-
19
- export function defineAStore<TStore, TState>(id: string, storeDefinition: () => AnyObject, storeOptions?: StoreOptions): StoreDefinition & TState & TStore
20
-
21
- export function isEmpty(value: any): boolean
22
-
23
- export default abstract class Debug {
24
- protected abstract _className: string
25
- public console: Console
26
- public debug: boolean
27
-
28
- constructor(debug: boolean, customConsole?: Console)
29
-
30
-
31
- debugLog(message: string, args: any): void
32
-
33
- logError(...args: any): void
34
- }
35
-
36
- export abstract class CustomConsole {
37
- protected _bgColor: string
38
- protected _color: string
39
- protected _icon: string
40
- protected _errorBgColor: string
41
- protected _errorColor: string
42
- protected _errorIcon: string
43
- protected abstract _pluginName: string
44
-
45
- log(...args: any): void
46
- error(...args: any): void
47
- }
48
-
49
- export abstract class PluginSubscriber<Instance extends Store> implements PluginSubscriberInterface {
50
- public console: Console
51
- public name: string
52
- public pluginOptions: AnyObject
53
- public resetStoreCallback: ((store?: PiniaStore) => void) | undefined
54
- public storeOnActionSubscription: StoreOnActionSubscription | undefined
55
- public storeMutationSubscription: StoreMutationSubscription | undefined
56
- public subscriptions: PluginSubscriptions | undefined
57
- protected pluginCreated?: (store: PiniaStore) => void
58
- protected _resetStoreCallback?: (store?: PiniaStore) => void
59
-
60
- constructor(
61
- pluginName: string,
62
- createInstanceFunction: (store: PiniaStore, options: AnyObject, debug: boolean, pluginConsole?: Console) => Instance | undefined,
63
- pluginConsole?: CustomConsole
64
- )
65
-
66
- public invoke(context: PiniaPluginContext, debug: boolean): boolean
67
- }
68
-
69
- export class Store extends Debug {
70
- constructor(store: PiniaStore, options: AnyObject, debug: boolean, customConsole?: Console)
71
-
72
- protected static _requiredKeys?: string[]
73
- protected _className: string
74
- public debug: boolean
75
- public onAction: StoreOnActionSubscription | StoreOnActionSubscriptionCallback | undefined
76
- public readonly options: StoreOptions
77
- public resetCallback: (() => void) | undefined
78
- public state: StateTree
79
- public storeSubscribe: StoreMutationSubscriptionCallback | undefined
80
- public readonly store: AnyObject
81
-
82
- addPropertiesToState(properties: string[], values?: AnyObject): void
83
-
84
- addSubscription(
85
- pluginName: string,
86
- subscription: PluginSubscriberInterface,
87
- options?: { subscriptionOptions?: StoreOptions, stores?: PiniaStore[] }
88
- ): void
89
-
90
- addToState(name: string, value?: StatePropertyValue): void
91
-
92
- static customizeStore<Instance extends Store>(
93
- store: PiniaStore,
94
- options: AnyObject,
95
- debug: boolean,
96
- console?: Console
97
- ): Instance | undefined
98
-
99
- debugLog(message: string, args: any): void
100
-
101
- hasDeniedFirstChar(property: string): boolean
102
-
103
- getOption(optionName: keyof StoreOptions): StoreOptionsPropertyValue
104
-
105
- getStatePropertyValue(propertyName: string): StatePropertyValue
106
-
107
- getSubscriptions(): PluginSubscriptions | undefined
108
-
109
- getValue(value: any): any
110
-
111
- protected static hasRequiredKeys(options: AnyObject): boolean
112
-
113
- isOptionApi(): boolean
114
-
115
- stateHas(property: string): boolean
116
-
117
- storeHas(property: string): boolean
118
- }
119
- }
120
-
121
1
  export interface AnyObject {
122
2
  [key: number | string | symbol]: any;
123
3
  }
@@ -127,11 +7,3 @@ export interface SearchCollectionCriteria {
127
7
  export { Console, LogType, StyleDefinition as ConsoleStyleDefinition, StyleDefinitionKeys as ConsoleStyleDefinitionKeys, StyleDefinitions as ConsoleStyleDefinitions } from './log';
128
8
  export type { CustomStore, PluginStoreOptions, StatePropertyValue, StoreOptions, StoreOptionsPropertyValue } from "./store";
129
9
  export type { PluginSubscriber as PluginSubscriberInterface, StoreMutationSubscriptionCallback, StoreOnActionCallbackParameters } from "./plugin";
130
-
131
-
132
-
133
- declare module 'pinia' {
134
- export interface DefineStoreOptionsBase<S, Store> {
135
- storeOptions?: StoreOptions
136
- }
137
- }
package/package.json CHANGED
@@ -1,8 +1,29 @@
1
1
  {
2
- "author": "Alexandre Bidaud <alexbidaud85@gmail.com> (https://github.com/AlxBDo)",
3
2
  "name": "pinia-plugin-subscription",
4
- "version": "0.0.3",
3
+ "version": "0.1.1",
4
+ "description": "Pinia plugin for Vue.js that helps building Pinia plugins by centralizing subscriber registration and providing a Store base class for store helpers.",
5
5
  "type": "module",
6
+ "sideEffects": false,
7
+ "author": "Alexandre Bidaud <alexbidaud85@gmail.com> (https://github.com/AlxBDo)",
8
+ "license": "MIT",
9
+ "repository": {
10
+ "type": "git",
11
+ "url": "https://github.com/AlxBDo/pinia-plugin-subscription.git"
12
+ },
13
+ "homepage": "https://github.com/AlxBDo/pinia-plugin-subscription",
14
+ "bugs": {
15
+ "url": "https://github.com/AlxBDo/pinia-plugin-subscription/issues"
16
+ },
17
+ "keywords": [
18
+ "pinia",
19
+ "vue",
20
+ "plugin",
21
+ "store",
22
+ "subscription",
23
+ "vue3",
24
+ "state-management",
25
+ "typescript"
26
+ ],
6
27
  "exports": {
7
28
  ".": {
8
29
  "types": "./dist/types/index.d.ts",
@@ -13,8 +34,18 @@
13
34
  "main": "./dist/pinia-plugin-subscription.umd.cjs",
14
35
  "types": "./dist/types/index.d.ts",
15
36
  "files": [
16
- "dist"
37
+ "dist",
38
+ "CHANGELOG.md",
39
+ "CONTRIBUTING.md",
40
+ "SECURITY.md"
17
41
  ],
42
+ "engines": {
43
+ "node": ">=18"
44
+ },
45
+ "publishConfig": {
46
+ "access": "public",
47
+ "provenance": true
48
+ },
18
49
  "scripts": {
19
50
  "dev": "vite",
20
51
  "test": "vitest",
@@ -22,6 +53,10 @@
22
53
  "build": "vitest && vite build && tsc --emitDeclarationOnly --outDir dist",
23
54
  "preview": "vite preview"
24
55
  },
56
+ "peerDependencies": {
57
+ "pinia": "^2.0.0 || ^3.0.0",
58
+ "vue": "^3.0.0"
59
+ },
25
60
  "devDependencies": {
26
61
  "@types/node": "^24.10.1",
27
62
  "@vitejs/plugin-vue": "^6.0.1",