atomirx 0.0.7 → 0.1.0

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.
Files changed (138) hide show
  1. package/README.md +198 -2234
  2. package/bin/cli.js +90 -0
  3. package/dist/core/derived.d.ts +2 -2
  4. package/dist/core/effect.d.ts +3 -2
  5. package/dist/core/onCreateHook.d.ts +15 -2
  6. package/dist/core/onErrorHook.d.ts +4 -1
  7. package/dist/core/pool.d.ts +78 -0
  8. package/dist/core/pool.test.d.ts +1 -0
  9. package/dist/core/select-boolean.test.d.ts +1 -0
  10. package/dist/core/select-pool.test.d.ts +1 -0
  11. package/dist/core/select.d.ts +278 -86
  12. package/dist/core/types.d.ts +233 -1
  13. package/dist/core/withAbort.d.ts +95 -0
  14. package/dist/core/withReady.d.ts +3 -3
  15. package/dist/devtools/constants.d.ts +41 -0
  16. package/dist/devtools/index.cjs +1 -0
  17. package/dist/devtools/index.d.ts +29 -0
  18. package/dist/devtools/index.js +429 -0
  19. package/dist/devtools/registry.d.ts +98 -0
  20. package/dist/devtools/registry.test.d.ts +1 -0
  21. package/dist/devtools/setup.d.ts +61 -0
  22. package/dist/devtools/types.d.ts +311 -0
  23. package/dist/index-BZEnfIcB.cjs +1 -0
  24. package/dist/index-BbPZhsDl.js +1653 -0
  25. package/dist/index.cjs +1 -1
  26. package/dist/index.d.ts +4 -3
  27. package/dist/index.js +18 -14
  28. package/dist/onDispatchHook-C8yLzr-o.cjs +1 -0
  29. package/dist/onDispatchHook-SKbiIUaJ.js +5 -0
  30. package/dist/onErrorHook-BGGy3tqK.js +38 -0
  31. package/dist/onErrorHook-DHBASmYw.cjs +1 -0
  32. package/dist/react/index.cjs +1 -30
  33. package/dist/react/index.js +206 -791
  34. package/dist/react/onDispatchHook.d.ts +106 -0
  35. package/dist/react/useAction.d.ts +4 -1
  36. package/dist/react-devtools/DevToolsPanel.d.ts +93 -0
  37. package/dist/react-devtools/EntityDetails.d.ts +10 -0
  38. package/dist/react-devtools/EntityList.d.ts +15 -0
  39. package/dist/react-devtools/LogList.d.ts +12 -0
  40. package/dist/react-devtools/hooks.d.ts +50 -0
  41. package/dist/react-devtools/index.cjs +1 -0
  42. package/dist/react-devtools/index.d.ts +31 -0
  43. package/dist/react-devtools/index.js +1589 -0
  44. package/dist/react-devtools/styles.d.ts +148 -0
  45. package/package.json +26 -2
  46. package/skills/atomirx/SKILL.md +456 -0
  47. package/skills/atomirx/references/async-patterns.md +188 -0
  48. package/skills/atomirx/references/atom-patterns.md +238 -0
  49. package/skills/atomirx/references/deferred-loading.md +191 -0
  50. package/skills/atomirx/references/derived-patterns.md +428 -0
  51. package/skills/atomirx/references/effect-patterns.md +426 -0
  52. package/skills/atomirx/references/error-handling.md +140 -0
  53. package/skills/atomirx/references/hooks.md +322 -0
  54. package/skills/atomirx/references/pool-patterns.md +229 -0
  55. package/skills/atomirx/references/react-integration.md +411 -0
  56. package/skills/atomirx/references/rules.md +407 -0
  57. package/skills/atomirx/references/select-context.md +309 -0
  58. package/skills/atomirx/references/service-template.md +172 -0
  59. package/skills/atomirx/references/store-template.md +205 -0
  60. package/skills/atomirx/references/testing-patterns.md +431 -0
  61. package/coverage/base.css +0 -224
  62. package/coverage/block-navigation.js +0 -87
  63. package/coverage/clover.xml +0 -1440
  64. package/coverage/coverage-final.json +0 -14
  65. package/coverage/favicon.png +0 -0
  66. package/coverage/index.html +0 -131
  67. package/coverage/prettify.css +0 -1
  68. package/coverage/prettify.js +0 -2
  69. package/coverage/sort-arrow-sprite.png +0 -0
  70. package/coverage/sorter.js +0 -210
  71. package/coverage/src/core/atom.ts.html +0 -889
  72. package/coverage/src/core/batch.ts.html +0 -223
  73. package/coverage/src/core/define.ts.html +0 -805
  74. package/coverage/src/core/emitter.ts.html +0 -919
  75. package/coverage/src/core/equality.ts.html +0 -631
  76. package/coverage/src/core/hook.ts.html +0 -460
  77. package/coverage/src/core/index.html +0 -281
  78. package/coverage/src/core/isAtom.ts.html +0 -100
  79. package/coverage/src/core/isPromiseLike.ts.html +0 -133
  80. package/coverage/src/core/onCreateHook.ts.html +0 -138
  81. package/coverage/src/core/scheduleNotifyHook.ts.html +0 -94
  82. package/coverage/src/core/types.ts.html +0 -523
  83. package/coverage/src/core/withUse.ts.html +0 -253
  84. package/coverage/src/index.html +0 -116
  85. package/coverage/src/index.ts.html +0 -106
  86. package/dist/index-CBVj1kSj.js +0 -1350
  87. package/dist/index-Cxk9v0um.cjs +0 -1
  88. package/scripts/publish.js +0 -198
  89. package/src/core/atom.test.ts +0 -633
  90. package/src/core/atom.ts +0 -311
  91. package/src/core/atomState.test.ts +0 -342
  92. package/src/core/atomState.ts +0 -256
  93. package/src/core/batch.test.ts +0 -257
  94. package/src/core/batch.ts +0 -172
  95. package/src/core/define.test.ts +0 -343
  96. package/src/core/define.ts +0 -243
  97. package/src/core/derived.test.ts +0 -1215
  98. package/src/core/derived.ts +0 -450
  99. package/src/core/effect.test.ts +0 -802
  100. package/src/core/effect.ts +0 -188
  101. package/src/core/emitter.test.ts +0 -364
  102. package/src/core/emitter.ts +0 -392
  103. package/src/core/equality.test.ts +0 -392
  104. package/src/core/equality.ts +0 -182
  105. package/src/core/getAtomState.ts +0 -69
  106. package/src/core/hook.test.ts +0 -227
  107. package/src/core/hook.ts +0 -177
  108. package/src/core/isAtom.ts +0 -27
  109. package/src/core/isPromiseLike.test.ts +0 -72
  110. package/src/core/isPromiseLike.ts +0 -16
  111. package/src/core/onCreateHook.ts +0 -107
  112. package/src/core/onErrorHook.test.ts +0 -350
  113. package/src/core/onErrorHook.ts +0 -52
  114. package/src/core/promiseCache.test.ts +0 -241
  115. package/src/core/promiseCache.ts +0 -284
  116. package/src/core/scheduleNotifyHook.ts +0 -53
  117. package/src/core/select.ts +0 -729
  118. package/src/core/selector.test.ts +0 -799
  119. package/src/core/types.ts +0 -389
  120. package/src/core/withReady.test.ts +0 -534
  121. package/src/core/withReady.ts +0 -191
  122. package/src/core/withUse.test.ts +0 -249
  123. package/src/core/withUse.ts +0 -56
  124. package/src/index.test.ts +0 -80
  125. package/src/index.ts +0 -65
  126. package/src/react/index.ts +0 -21
  127. package/src/react/rx.test.tsx +0 -571
  128. package/src/react/rx.tsx +0 -531
  129. package/src/react/strictModeTest.tsx +0 -71
  130. package/src/react/useAction.test.ts +0 -987
  131. package/src/react/useAction.ts +0 -607
  132. package/src/react/useSelector.test.ts +0 -182
  133. package/src/react/useSelector.ts +0 -292
  134. package/src/react/useStable.test.ts +0 -553
  135. package/src/react/useStable.ts +0 -288
  136. package/tsconfig.json +0 -9
  137. package/v2.md +0 -725
  138. package/vite.config.ts +0 -39
@@ -1 +0,0 @@
1
- "use strict";var mt=Object.defineProperty;var At=(e,t,r)=>t in e?mt(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var A=(e,t,r)=>At(e,typeof t!="symbol"?t+"":t,r);function wt(e){const t=Object.assign(r=>()=>{const a=t.current;return t.current=r(a),()=>{t.current=a}},{current:e,override:r=>{t.current=r(t.current)},reset:()=>{t.current=e}});return t}function Tt(e,t){const r=[];for(const a of e)r.push(a());try{return t()}finally{for(const a of r.reverse())a()}}const U=Object.assign(wt,{use:Tt}),j=U(),St=()=>{};class jt{constructor(t){A(this,"_listeners");A(this,"_settledPayload");A(this,"_isSettled",!1);A(this,"size",()=>this._listeners.size);A(this,"settled",()=>this._isSettled);A(this,"forEach",t=>{this._listeners.forEach(t)});A(this,"on",(t,r)=>{let a;if(r===void 0)a=Array.isArray(t)?t:[t];else{const n=t,u=Array.isArray(r)?r:[r];a=[i=>{const l=n(i);if(l)for(let f=0;f<u.length;f++)u[f](l.value)}]}if(this._isSettled){const n=this._settledPayload;for(let u=0;u<a.length;u++)a[u](n);return St}const s=this._listeners;for(let n=0;n<a.length;n++)s.add(a[n]);return()=>{for(let n=0;n<a.length;n++)s.delete(a[n])}});A(this,"emit",t=>{this._isSettled||this._doEmit(t,!1,!1)});A(this,"emitLifo",t=>{this._isSettled||this._doEmit(t,!1,!0)});A(this,"clear",()=>{this._listeners.clear()});A(this,"emitAndClear",t=>{this._isSettled||this._doEmit(t,!0,!1)});A(this,"emitAndClearLifo",t=>{this._isSettled||this._doEmit(t,!0,!0)});A(this,"settle",t=>{this._isSettled||(this._settledPayload=t,this._isSettled=!0,this._doEmit(t,!0,!1))});A(this,"_doEmit",(t,r,a)=>{const s=this._listeners,n=s.size;if(n===0)return;const u=Array.from(s);if(r&&s.clear(),a)for(let i=n-1;i>=0;i--)u[i](t);else for(let i=0;i<n;i++)u[i](t)});this._listeners=new Set(t)}}function B(e){return new jt(e)}var V=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Et(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function Ct(){this.__data__=[],this.size=0}var Ot=Ct;function Pt(e,t){return e===t||e!==e&&t!==t}var tt=Pt,It=tt;function Dt(e,t){for(var r=e.length;r--;)if(It(e[r][0],t))return r;return-1}var ae=Dt,Lt=ae,xt=Array.prototype,Mt=xt.splice;function Ft(e){var t=this.__data__,r=Lt(t,e);if(r<0)return!1;var a=t.length-1;return r==a?t.pop():Mt.call(t,r,1),--this.size,!0}var Gt=Ft,Rt=ae;function qt(e){var t=this.__data__,r=Rt(t,e);return r<0?void 0:t[r][1]}var Nt=qt,kt=ae;function zt(e){return kt(this.__data__,e)>-1}var Ut=zt,Bt=ae;function Ht(e,t){var r=this.__data__,a=Bt(r,e);return a<0?(++this.size,r.push([e,t])):r[a][1]=t,this}var Kt=Ht,Vt=Ot,Wt=Gt,Jt=Nt,Yt=Ut,Xt=Kt;function F(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t<r;){var a=e[t];this.set(a[0],a[1])}}F.prototype.clear=Vt;F.prototype.delete=Wt;F.prototype.get=Jt;F.prototype.has=Yt;F.prototype.set=Xt;var ne=F,Zt=ne;function Qt(){this.__data__=new Zt,this.size=0}var er=Qt;function tr(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r}var rr=tr;function ar(e){return this.__data__.get(e)}var nr=ar;function sr(e){return this.__data__.has(e)}var ir=sr,or=typeof V=="object"&&V&&V.Object===Object&&V,rt=or,ur=rt,cr=typeof self=="object"&&self&&self.Object===Object&&self,lr=ur||cr||Function("return this")(),I=lr,fr=I,dr=fr.Symbol,be=dr,je=be,at=Object.prototype,vr=at.hasOwnProperty,hr=at.toString,z=je?je.toStringTag:void 0;function gr(e){var t=vr.call(e,z),r=e[z];try{e[z]=void 0;var a=!0}catch{}var s=hr.call(e);return a&&(t?e[z]=r:delete e[z]),s}var yr=gr,_r=Object.prototype,pr=_r.toString;function br(e){return pr.call(e)}var $r=br,Ee=be,mr=yr,Ar=$r,wr="[object Null]",Tr="[object Undefined]",Ce=Ee?Ee.toStringTag:void 0;function Sr(e){return e==null?e===void 0?Tr:wr:Ce&&Ce in Object(e)?mr(e):Ar(e)}var se=Sr;function jr(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var nt=jr,Er=se,Cr=nt,Or="[object AsyncFunction]",Pr="[object Function]",Ir="[object GeneratorFunction]",Dr="[object Proxy]";function Lr(e){if(!Cr(e))return!1;var t=Er(e);return t==Pr||t==Ir||t==Or||t==Dr}var st=Lr,xr=I,Mr=xr["__core-js_shared__"],Fr=Mr,ce=Fr,Oe=function(){var e=/[^.]+$/.exec(ce&&ce.keys&&ce.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function Gr(e){return!!Oe&&Oe in e}var Rr=Gr,qr=Function.prototype,Nr=qr.toString;function kr(e){if(e!=null){try{return Nr.call(e)}catch{}try{return e+""}catch{}}return""}var it=kr,zr=st,Ur=Rr,Br=nt,Hr=it,Kr=/[\\^$.*+?()[\]{}|]/g,Vr=/^\[object .+?Constructor\]$/,Wr=Function.prototype,Jr=Object.prototype,Yr=Wr.toString,Xr=Jr.hasOwnProperty,Zr=RegExp("^"+Yr.call(Xr).replace(Kr,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Qr(e){if(!Br(e)||Ur(e))return!1;var t=zr(e)?Zr:Vr;return t.test(Hr(e))}var ea=Qr;function ta(e,t){return e==null?void 0:e[t]}var ra=ta,aa=ea,na=ra;function sa(e,t){var r=na(e,t);return aa(r)?r:void 0}var G=sa,ia=G,oa=I,ua=ia(oa,"Map"),$e=ua,ca=G,la=ca(Object,"create"),ie=la,Pe=ie;function fa(){this.__data__=Pe?Pe(null):{},this.size=0}var da=fa;function va(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var ha=va,ga=ie,ya="__lodash_hash_undefined__",_a=Object.prototype,pa=_a.hasOwnProperty;function ba(e){var t=this.__data__;if(ga){var r=t[e];return r===ya?void 0:r}return pa.call(t,e)?t[e]:void 0}var $a=ba,ma=ie,Aa=Object.prototype,wa=Aa.hasOwnProperty;function Ta(e){var t=this.__data__;return ma?t[e]!==void 0:wa.call(t,e)}var Sa=Ta,ja=ie,Ea="__lodash_hash_undefined__";function Ca(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=ja&&t===void 0?Ea:t,this}var Oa=Ca,Pa=da,Ia=ha,Da=$a,La=Sa,xa=Oa;function R(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t<r;){var a=e[t];this.set(a[0],a[1])}}R.prototype.clear=Pa;R.prototype.delete=Ia;R.prototype.get=Da;R.prototype.has=La;R.prototype.set=xa;var Ma=R,Ie=Ma,Fa=ne,Ga=$e;function Ra(){this.size=0,this.__data__={hash:new Ie,map:new(Ga||Fa),string:new Ie}}var qa=Ra;function Na(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}var ka=Na,za=ka;function Ua(e,t){var r=e.__data__;return za(t)?r[typeof t=="string"?"string":"hash"]:r.map}var oe=Ua,Ba=oe;function Ha(e){var t=Ba(this,e).delete(e);return this.size-=t?1:0,t}var Ka=Ha,Va=oe;function Wa(e){return Va(this,e).get(e)}var Ja=Wa,Ya=oe;function Xa(e){return Ya(this,e).has(e)}var Za=Xa,Qa=oe;function en(e,t){var r=Qa(this,e),a=r.size;return r.set(e,t),this.size+=r.size==a?0:1,this}var tn=en,rn=qa,an=Ka,nn=Ja,sn=Za,on=tn;function q(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t<r;){var a=e[t];this.set(a[0],a[1])}}q.prototype.clear=rn;q.prototype.delete=an;q.prototype.get=nn;q.prototype.has=sn;q.prototype.set=on;var ot=q,un=ne,cn=$e,ln=ot,fn=200;function dn(e,t){var r=this.__data__;if(r instanceof un){var a=r.__data__;if(!cn||a.length<fn-1)return a.push([e,t]),this.size=++r.size,this;r=this.__data__=new ln(a)}return r.set(e,t),this.size=r.size,this}var vn=dn,hn=ne,gn=er,yn=rr,_n=nr,pn=ir,bn=vn;function N(e){var t=this.__data__=new hn(e);this.size=t.size}N.prototype.clear=gn;N.prototype.delete=yn;N.prototype.get=_n;N.prototype.has=pn;N.prototype.set=bn;var $n=N,mn="__lodash_hash_undefined__";function An(e){return this.__data__.set(e,mn),this}var wn=An;function Tn(e){return this.__data__.has(e)}var Sn=Tn,jn=ot,En=wn,Cn=Sn;function Z(e){var t=-1,r=e==null?0:e.length;for(this.__data__=new jn;++t<r;)this.add(e[t])}Z.prototype.add=Z.prototype.push=En;Z.prototype.has=Cn;var On=Z;function Pn(e,t){for(var r=-1,a=e==null?0:e.length;++r<a;)if(t(e[r],r,e))return!0;return!1}var In=Pn;function Dn(e,t){return e.has(t)}var Ln=Dn,xn=On,Mn=In,Fn=Ln,Gn=1,Rn=2;function qn(e,t,r,a,s,n){var u=r&Gn,i=e.length,l=t.length;if(i!=l&&!(u&&l>i))return!1;var f=n.get(e),v=n.get(t);if(f&&v)return f==t&&v==e;var p=-1,o=!0,c=r&Rn?new xn:void 0;for(n.set(e,t),n.set(t,e);++p<i;){var d=e[p],g=t[p];if(a)var h=u?a(g,d,p,t,e,n):a(d,g,p,e,t,n);if(h!==void 0){if(h)continue;o=!1;break}if(c){if(!Mn(t,function(_,$){if(!Fn(c,$)&&(d===_||s(d,_,r,a,n)))return c.push($)})){o=!1;break}}else if(!(d===g||s(d,g,r,a,n))){o=!1;break}}return n.delete(e),n.delete(t),o}var ut=qn,Nn=I,kn=Nn.Uint8Array,zn=kn;function Un(e){var t=-1,r=Array(e.size);return e.forEach(function(a,s){r[++t]=[s,a]}),r}var Bn=Un;function Hn(e){var t=-1,r=Array(e.size);return e.forEach(function(a){r[++t]=a}),r}var Kn=Hn,De=be,Le=zn,Vn=tt,Wn=ut,Jn=Bn,Yn=Kn,Xn=1,Zn=2,Qn="[object Boolean]",es="[object Date]",ts="[object Error]",rs="[object Map]",as="[object Number]",ns="[object RegExp]",ss="[object Set]",is="[object String]",os="[object Symbol]",us="[object ArrayBuffer]",cs="[object DataView]",xe=De?De.prototype:void 0,le=xe?xe.valueOf:void 0;function ls(e,t,r,a,s,n,u){switch(r){case cs:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case us:return!(e.byteLength!=t.byteLength||!n(new Le(e),new Le(t)));case Qn:case es:case as:return Vn(+e,+t);case ts:return e.name==t.name&&e.message==t.message;case ns:case is:return e==t+"";case rs:var i=Jn;case ss:var l=a&Xn;if(i||(i=Yn),e.size!=t.size&&!l)return!1;var f=u.get(e);if(f)return f==t;a|=Zn,u.set(e,t);var v=Wn(i(e),i(t),a,s,n,u);return u.delete(e),v;case os:if(le)return le.call(e)==le.call(t)}return!1}var fs=ls;function ds(e,t){for(var r=-1,a=t.length,s=e.length;++r<a;)e[s+r]=t[r];return e}var vs=ds,hs=Array.isArray,me=hs,gs=vs,ys=me;function _s(e,t,r){var a=t(e);return ys(e)?a:gs(a,r(e))}var ps=_s;function bs(e,t){for(var r=-1,a=e==null?0:e.length,s=0,n=[];++r<a;){var u=e[r];t(u,r,e)&&(n[s++]=u)}return n}var $s=bs;function ms(){return[]}var As=ms,ws=$s,Ts=As,Ss=Object.prototype,js=Ss.propertyIsEnumerable,Me=Object.getOwnPropertySymbols,Es=Me?function(e){return e==null?[]:(e=Object(e),ws(Me(e),function(t){return js.call(e,t)}))}:Ts,Cs=Es;function Os(e,t){for(var r=-1,a=Array(e);++r<e;)a[r]=t(r);return a}var Ps=Os;function Is(e){return e!=null&&typeof e=="object"}var ue=Is,Ds=se,Ls=ue,xs="[object Arguments]";function Ms(e){return Ls(e)&&Ds(e)==xs}var Fs=Ms,Fe=Fs,Gs=ue,ct=Object.prototype,Rs=ct.hasOwnProperty,qs=ct.propertyIsEnumerable,Ns=Fe(function(){return arguments}())?Fe:function(e){return Gs(e)&&Rs.call(e,"callee")&&!qs.call(e,"callee")},ks=Ns,Q={exports:{}};function zs(){return!1}var Us=zs;Q.exports;(function(e,t){var r=I,a=Us,s=t&&!t.nodeType&&t,n=s&&!0&&e&&!e.nodeType&&e,u=n&&n.exports===s,i=u?r.Buffer:void 0,l=i?i.isBuffer:void 0,f=l||a;e.exports=f})(Q,Q.exports);var lt=Q.exports,Bs=9007199254740991,Hs=/^(?:0|[1-9]\d*)$/;function Ks(e,t){var r=typeof e;return t=t??Bs,!!t&&(r=="number"||r!="symbol"&&Hs.test(e))&&e>-1&&e%1==0&&e<t}var Vs=Ks,Ws=9007199254740991;function Js(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=Ws}var ft=Js,Ys=se,Xs=ft,Zs=ue,Qs="[object Arguments]",ei="[object Array]",ti="[object Boolean]",ri="[object Date]",ai="[object Error]",ni="[object Function]",si="[object Map]",ii="[object Number]",oi="[object Object]",ui="[object RegExp]",ci="[object Set]",li="[object String]",fi="[object WeakMap]",di="[object ArrayBuffer]",vi="[object DataView]",hi="[object Float32Array]",gi="[object Float64Array]",yi="[object Int8Array]",_i="[object Int16Array]",pi="[object Int32Array]",bi="[object Uint8Array]",$i="[object Uint8ClampedArray]",mi="[object Uint16Array]",Ai="[object Uint32Array]",y={};y[hi]=y[gi]=y[yi]=y[_i]=y[pi]=y[bi]=y[$i]=y[mi]=y[Ai]=!0;y[Qs]=y[ei]=y[di]=y[ti]=y[vi]=y[ri]=y[ai]=y[ni]=y[si]=y[ii]=y[oi]=y[ui]=y[ci]=y[li]=y[fi]=!1;function wi(e){return Zs(e)&&Xs(e.length)&&!!y[Ys(e)]}var Ti=wi;function Si(e){return function(t){return e(t)}}var ji=Si,ee={exports:{}};ee.exports;(function(e,t){var r=rt,a=t&&!t.nodeType&&t,s=a&&!0&&e&&!e.nodeType&&e,n=s&&s.exports===a,u=n&&r.process,i=function(){try{var l=s&&s.require&&s.require("util").types;return l||u&&u.binding&&u.binding("util")}catch{}}();e.exports=i})(ee,ee.exports);var Ei=ee.exports,Ci=Ti,Oi=ji,Ge=Ei,Re=Ge&&Ge.isTypedArray,Pi=Re?Oi(Re):Ci,dt=Pi,Ii=Ps,Di=ks,Li=me,xi=lt,Mi=Vs,Fi=dt,Gi=Object.prototype,Ri=Gi.hasOwnProperty;function qi(e,t){var r=Li(e),a=!r&&Di(e),s=!r&&!a&&xi(e),n=!r&&!a&&!s&&Fi(e),u=r||a||s||n,i=u?Ii(e.length,String):[],l=i.length;for(var f in e)(t||Ri.call(e,f))&&!(u&&(f=="length"||s&&(f=="offset"||f=="parent")||n&&(f=="buffer"||f=="byteLength"||f=="byteOffset")||Mi(f,l)))&&i.push(f);return i}var Ni=qi,ki=Object.prototype;function zi(e){var t=e&&e.constructor,r=typeof t=="function"&&t.prototype||ki;return e===r}var Ui=zi;function Bi(e,t){return function(r){return e(t(r))}}var Hi=Bi,Ki=Hi,Vi=Ki(Object.keys,Object),Wi=Vi,Ji=Ui,Yi=Wi,Xi=Object.prototype,Zi=Xi.hasOwnProperty;function Qi(e){if(!Ji(e))return Yi(e);var t=[];for(var r in Object(e))Zi.call(e,r)&&r!="constructor"&&t.push(r);return t}var eo=Qi,to=st,ro=ft;function ao(e){return e!=null&&ro(e.length)&&!to(e)}var no=ao,so=Ni,io=eo,oo=no;function uo(e){return oo(e)?so(e):io(e)}var co=uo,lo=ps,fo=Cs,vo=co;function ho(e){return lo(e,vo,fo)}var go=ho,qe=go,yo=1,_o=Object.prototype,po=_o.hasOwnProperty;function bo(e,t,r,a,s,n){var u=r&yo,i=qe(e),l=i.length,f=qe(t),v=f.length;if(l!=v&&!u)return!1;for(var p=l;p--;){var o=i[p];if(!(u?o in t:po.call(t,o)))return!1}var c=n.get(e),d=n.get(t);if(c&&d)return c==t&&d==e;var g=!0;n.set(e,t),n.set(t,e);for(var h=u;++p<l;){o=i[p];var _=e[o],$=t[o];if(a)var b=u?a($,_,o,t,e,n):a(_,$,o,e,t,n);if(!(b===void 0?_===$||s(_,$,r,a,n):b)){g=!1;break}h||(h=o=="constructor")}if(g&&!h){var m=e.constructor,D=t.constructor;m!=D&&"constructor"in e&&"constructor"in t&&!(typeof m=="function"&&m instanceof m&&typeof D=="function"&&D instanceof D)&&(g=!1)}return n.delete(e),n.delete(t),g}var $o=bo,mo=G,Ao=I,wo=mo(Ao,"DataView"),To=wo,So=G,jo=I,Eo=So(jo,"Promise"),Co=Eo,Oo=G,Po=I,Io=Oo(Po,"Set"),Do=Io,Lo=G,xo=I,Mo=Lo(xo,"WeakMap"),Fo=Mo,de=To,ve=$e,he=Co,ge=Do,ye=Fo,vt=se,k=it,Ne="[object Map]",Go="[object Object]",ke="[object Promise]",ze="[object Set]",Ue="[object WeakMap]",Be="[object DataView]",Ro=k(de),qo=k(ve),No=k(he),ko=k(ge),zo=k(ye),L=vt;(de&&L(new de(new ArrayBuffer(1)))!=Be||ve&&L(new ve)!=Ne||he&&L(he.resolve())!=ke||ge&&L(new ge)!=ze||ye&&L(new ye)!=Ue)&&(L=function(e){var t=vt(e),r=t==Go?e.constructor:void 0,a=r?k(r):"";if(a)switch(a){case Ro:return Be;case qo:return Ne;case No:return ke;case ko:return ze;case zo:return Ue}return t});var Uo=L,fe=$n,Bo=ut,Ho=fs,Ko=$o,He=Uo,Ke=me,Ve=lt,Vo=dt,Wo=1,We="[object Arguments]",Je="[object Array]",W="[object Object]",Jo=Object.prototype,Ye=Jo.hasOwnProperty;function Yo(e,t,r,a,s,n){var u=Ke(e),i=Ke(t),l=u?Je:He(e),f=i?Je:He(t);l=l==We?W:l,f=f==We?W:f;var v=l==W,p=f==W,o=l==f;if(o&&Ve(e)){if(!Ve(t))return!1;u=!0,v=!1}if(o&&!v)return n||(n=new fe),u||Vo(e)?Bo(e,t,r,a,s,n):Ho(e,t,l,r,a,s,n);if(!(r&Wo)){var c=v&&Ye.call(e,"__wrapped__"),d=p&&Ye.call(t,"__wrapped__");if(c||d){var g=c?e.value():e,h=d?t.value():t;return n||(n=new fe),s(g,h,r,a,n)}}return o?(n||(n=new fe),Ko(e,t,r,a,s,n)):!1}var Xo=Yo,Zo=Xo,Xe=ue;function ht(e,t,r,a,s){return e===t?!0:e==null||t==null||!Xe(e)&&!Xe(t)?e!==e&&t!==t:Zo(e,t,r,a,ht,s)}var Qo=ht,eu=Qo;function tu(e,t){return eu(e,t)}var ru=tu;const au=Et(ru);function nu(e,t){return Object.is(e,t)}function H(e,t,r=Object.is){if(Object.is(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;const a=Object.keys(e),s=Object.keys(t);if(a.length!==s.length)return!1;for(const n of a)if(!Object.prototype.hasOwnProperty.call(t,n)||!r(e[n],t[n]))return!1;return!0}function Ae(e,t){return H(e,t,H)}function su(e,t){return H(e,t,Ae)}const iu=au;function we(e){return!e||e==="strict"?nu:e==="shallow"?H:e==="shallow2"?Ae:e==="shallow3"?su:e==="deep"?iu:e}function Ze(e){const t=e;let r=e;return Object.assign((...a)=>r(...a),{getOriginal:()=>t,getCurrent:()=>r,setCurrent(a){r=a}})}function ou(e){return typeof e=="function"&&"getOriginal"in e&&"getCurrent"in e&&"setCurrent"in e}function uu(e,t,r){return e?typeof t=="function"?ou(e.value)?(e.value.setCurrent(t),[e.value,!0]):[Ze(t),!1]:t&&t instanceof Date?e.value&&e.value instanceof Date&&t.getTime()===e.value.getTime()?[e.value,!0]:[t,!1]:r(e.value,t)?[e.value,!0]:[t,!1]:typeof t=="function"?[Ze(t),!1]:[t,!1]}const te=U(e=>e()),re=Symbol.for("atomirx.atom"),_e=Symbol.for("atomirx.derived");function K(e){return Object.assign(e,{use(t){const r=t(e);return r?typeof r=="object"||typeof r=="function"?"use"in r?r:K(r):r:e}})}function w(e){return e!==null&&typeof e=="object"&&"then"in e&&typeof e.then=="function"}const pe=new WeakMap;function Qe(e){return pe.get(e)}function J(e,t){if(t.length===1){if(e==="allSettled"){const a=Promise.allSettled(t).then(()=>{});return pe.set(a,{type:e,promises:t}),a}return t[0]}const r=Promise[e](t);return r.catch(()=>{}),pe.set(r,{type:e,promises:t}),r}function cu(e,t){if(e===t)return!0;if(!e||!t)return!1;const r=Qe(e),a=Qe(t);return!!r&&!!a&&Ae(r,a)}const M=new WeakMap;function O(e){const t=M.get(e);if(t)return t;const r={status:"pending",promise:e};return M.set(e,r),e.then(a=>{const s=M.get(e);(s==null?void 0:s.status)==="pending"&&M.set(e,{status:"fulfilled",value:a})},a=>{const s=M.get(e);(s==null?void 0:s.status)==="pending"&&M.set(e,{status:"rejected",error:a})}),r}function lu(e){if(!w(e))return e;const r=O(e);switch(r.status){case"pending":throw r.promise;case"rejected":throw r.error;case"fulfilled":return r.value}}function fu(e){return w(e)?O(e).status==="pending":!1}function du(e){return w(e)?O(e).status==="fulfilled":!1}function vu(e){return w(e)?O(e).status==="rejected":!1}function hu(e,t={}){var _,$;const r=B(),a=we(t.equals);let s=null;const n=B(),u=b=>{s&&(s.abort(b),s=null),n.emitAndClear()},i=()=>(s=new AbortController,K({signal:s.signal,onCleanup:n.on})),l=typeof e=="function";let v=l?e(i()):e,p=!1;w(v)&&O(v);const o=()=>{r.forEach(b=>{te.current(b)})},c=b=>{let m;typeof b=="function"?m=b(v):m=b,!a(m,v)&&(u("value changed"),v=m,p=!0,w(v)&&O(v),o())},d=()=>{u("reset");const b=l?e(i()):e;w(b)&&O(b);const m=!a(b,v);v=b,p=!1,m&&o()},g=()=>p,h=K({[re]:!0,meta:t.meta,get(){return v},use:void 0,set:c,reset:d,dirty:g,on:r.on});return($=j.current)==null||$.call(j,{type:"mutable",key:(_=t.meta)==null?void 0:_.key,meta:t.meta,instance:h}),h}function gu(e){return e}let Y=0;function gt(e){if(Y++,Y===1){let t=new Set;const r=a=>{t.add(a)};try{return U.use([te(()=>r)],e)}finally{Y--,U.use([te(()=>r)],()=>{for(;t.size>0;){const a=t;t=new Set;for(const s of a)s()}})}}try{return e()}finally{Y--}}function yu(e,t){let r,a;const s=i=>{i&&typeof i=="object"&&"dispose"in i&&typeof i.dispose=="function"&&i.dispose()},n=()=>{s(r),r=void 0};return Object.assign(()=>{var i;return r||(a?r=a(e):r=e(),(i=j.current)==null||i.call(j,{type:"module",key:t==null?void 0:t.key,meta:t==null?void 0:t.meta,instance:r})),r},{key:t==null?void 0:t.key,override:i=>{if(r!==void 0)throw new Error("Cannot override after initialization. Call override() before accessing the service.");a=i},reset:()=>{a=void 0,n()},invalidate:()=>{a=void 0,n()},isOverridden:()=>a!==void 0,isInitialized:()=>r!==void 0})}const X=U();function yt(e){return e!==null&&typeof e=="object"&&re in e&&e[re]===!0}function _t(e){return e!==null&&typeof e=="object"&&_e in e&&e[_e]===!0}function x(e){if(_t(e))return e.state();const t=e.get();if(!w(t))return{status:"ready",value:t};const r=O(t);switch(r.status){case"fulfilled":return{status:"ready",value:r.value};case"rejected":return{status:"error",error:r.error};case"pending":return{status:"loading",promise:r.promise}}}const _u=typeof AggregateError<"u"?AggregateError:class extends Error{constructor(r,a){super(a);A(this,"errors");this.name="AggregateError",this.errors=r}};class pu extends Error{constructor(r,a="All atoms rejected"){super(a);A(this,"errors");this.name="AllAtomsRejectedError",this.errors=r}}function pt(e){const t=new Set;let r=!0;const a=o=>{if(!r)throw new Error(`${o}() was called outside of the selection context. This usually happens when calling context methods in async callbacks (setTimeout, Promise.then, etc.). All atom reads must happen synchronously during selector execution. For async access, use atom.get() directly (e.g., myMutableAtom$.get() or await myDerivedAtom$.get()).`)},s=o=>{a("read"),t.add(o);const c=x(o);switch(c.status){case"ready":return c.value;case"error":throw c.error;case"loading":throw c.promise}},n=o=>{a("all");const c=[],d=[];for(const g of o){t.add(g);const h=x(g);switch(h.status){case"ready":c.push(h.value);break;case"error":throw h.error;case"loading":d.push(h.promise);break}}if(d.length>0)throw J("all",d);return c},u=o=>{a("race");const c=[],d=Object.entries(o);for(const[g,h]of d){t.add(h);const _=x(h);switch(_.status){case"ready":return{key:g,value:_.value};case"error":throw _.error;case"loading":c.push(_.promise);break}}throw c.length>0?J("race",c):new Error("race() called with no atoms")},i=o=>{a("any");const c=[],d=[],g=Object.entries(o);for(const[h,_]of g){t.add(_);const $=x(_);switch($.status){case"ready":return{key:h,value:$.value};case"error":c.push($.error);break;case"loading":d.push($.promise);break}}throw d.length>0?J("race",d):new _u(c,"All atoms rejected")},l=o=>{a("settled");const c=[],d=[];for(const g of o){t.add(g);const h=x(g);switch(h.status){case"ready":c.push({status:"ready",value:h.value});break;case"error":c.push({status:"error",error:h.error});break;case"loading":d.push(h.promise);break}}if(d.length>0)throw J("allSettled",d);return c},f=o=>{a("safe");try{return[void 0,o()]}catch(c){if(w(c))throw c;return[c,void 0]}};function v(o){if(a("state"),yt(o)){t.add(o);const c=x(o);switch(c.status){case"ready":return{status:"ready",value:c.value,error:void 0};case"error":return{status:"error",value:void 0,error:c.error};case"loading":return{status:"loading",value:void 0,error:void 0}}}try{return{status:"ready",value:o(),error:void 0}}catch(c){return w(c)?{status:"loading",value:void 0,error:void 0}:{status:"error",value:void 0,error:c}}}const p=K({read:s,all:n,any:i,race:u,settled:l,safe:f,state:v});try{const o=e(p);if(w(o))throw new Error("select() selector must return a synchronous value, not a Promise. For async data, create an async atom with atom(Promise) and use get() to read it.");return{value:o,error:void 0,promise:void 0,dependencies:t}}catch(o){return w(o)?{value:void 0,error:void 0,promise:o,dependencies:t}:{value:void 0,error:o,promise:void 0,dependencies:t}}finally{r=!1}}function et(e){if(e==null)throw new Promise(()=>{});if(w(e)){const t=O(e);if(t.status==="pending")throw t.promise;if(t.status==="fulfilled")return t.value;throw t.error}return e}function bu(){return e=>({...e,ready:(t,r)=>{if(typeof t=="function"){const n=t();if(w(n))throw new Error("ready(callback) overload does not support async callbacks. Use ready(atom, selector?) instead.");return et(n)}const a=e.read(t),s=r?r(a):a;return et(s)}})}function bt(e,t={}){var Te,Se;const r=B(),a=we(t.equals),s="fallback"in t,n=t.fallback;let u,i,l=null,f=!1,v=!1,p=0,o=null,c=null;const d=new Map;let g;const h=T=>{var P,S;(P=t.onError)==null||P.call(t,T);const E=t._errorSource??g;(S=X.current)==null||S.call(X,{source:E,error:T})},_=()=>{r.forEach(T=>{te.current(T)})},$=T=>{for(const[E,P]of d)T.has(E)||(P(),d.delete(E));for(const E of T)if(!d.has(E)){const P=E.on(()=>{b()});d.set(E,P)}},b=(T=!1)=>{const E=++p;v=!0,i=void 0,o||(l=new Promise((S,C)=>{o=S,c=C}),l.catch(()=>{}));const P=()=>{const S=pt(C=>e(C.use(bu())));if($(S.dependencies),S.promise)T||_(),S.promise.then(()=>{p===E&&P()},C=>{p===E&&(v=!1,i=C,c==null||c(C),o=null,c=null,h(C),_())});else if(S.error!==void 0)v=!1,i=S.error,c==null||c(S.error),o=null,c=null,h(S.error),T||_();else{const C=S.value,$t=!u;v=!1,i=void 0,(!u||!a(C,u.value))&&(u={value:C},($t||!T)&&_()),o==null||o(C),o=null,c=null}};return P(),l},m=()=>{f||(f=!0,b(!0))},D={[re]:!0,[_e]:!0,meta:t.meta,get(){return m(),l},get staleValue(){if(m(),u)return u.value;if(s)return n},state(){return m(),v?{status:"loading",promise:l}:i!==void 0?{status:"error",error:i}:u?{status:"ready",value:u.value}:{status:"loading",promise:l}},refresh(){f?b():m()},on(T){return m(),r.on(T)}};return g={type:"derived",key:(Te=t.meta)==null?void 0:Te.key,meta:t.meta,instance:D},(Se=j.current)==null||Se.call(j,g),D}function $u(e,t){var i,l;let r=!1;const a=B(),s={meta:t==null?void 0:t.meta,dispose:()=>{r||(r=!0,a.emitAndClear())}},n={type:"effect",key:(i=t==null?void 0:t.meta)==null?void 0:i.key,meta:t==null?void 0:t.meta,instance:s};return bt(f=>{if(a.emitAndClear(),r)return;const v={...f,onCleanup:a.on};gt(()=>e(v))},{onError:t==null?void 0:t.onError,_errorSource:n}).get(),(l=j.current)==null||l.call(j,n),s}exports.AllAtomsRejectedError=pu;exports.atom=hu;exports.batch=gt;exports.define=yu;exports.derived=bt;exports.effect=$u;exports.emitter=B;exports.getAtomState=x;exports.isAtom=yt;exports.isDerived=_t;exports.isFulfilled=du;exports.isPending=fu;exports.isPromiseLike=w;exports.isRejected=vu;exports.onCreateHook=j;exports.onErrorHook=X;exports.promisesEqual=cu;exports.readonly=gu;exports.resolveEquality=we;exports.select=pt;exports.shallowEqual=H;exports.trackPromise=O;exports.tryStabilize=uu;exports.unwrap=lu;exports.withUse=K;
@@ -1,198 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- /**
4
- * Publish helper scripts for manual npm publish with OTP.
5
- *
6
- * Workflow:
7
- * 1. pnpm prepublish:patch (test -> build -> bump)
8
- * 2. npm publish (manual, enter OTP via browser)
9
- * 3. pnpm postpublish (git commit -> tag -> push)
10
- *
11
- * Or all at once (if you have automation token):
12
- * pnpm publish:patch
13
- */
14
-
15
- import { execSync } from "child_process";
16
- import { readFileSync } from "fs";
17
- import { fileURLToPath } from "url";
18
- import { dirname, join } from "path";
19
-
20
- const __filename = fileURLToPath(import.meta.url);
21
- const __dirname = dirname(__filename);
22
- const packageJsonPath = join(__dirname, "..", "package.json");
23
-
24
- function exec(command, options = {}) {
25
- console.log(`\n> ${command}`);
26
- try {
27
- execSync(command, { stdio: "inherit", ...options });
28
- return true;
29
- } catch (error) {
30
- if (options.allowFail) {
31
- console.warn(` (skipped - already done or nothing to do)`);
32
- return false;
33
- }
34
- console.error(`\nāŒ Failed: ${command}`);
35
- process.exit(1);
36
- }
37
- }
38
-
39
- function hasGitRemote() {
40
- try {
41
- const result = execSync("git remote", { encoding: "utf-8" });
42
- return result.trim().length > 0;
43
- } catch {
44
- return false;
45
- }
46
- }
47
-
48
- function getVersion() {
49
- const pkg = JSON.parse(readFileSync(packageJsonPath, "utf-8"));
50
- return pkg.version;
51
- }
52
-
53
- function bumpVersion(type) {
54
- const validTypes = ["patch", "minor", "major"];
55
- if (!validTypes.includes(type)) {
56
- console.error(
57
- `āŒ Invalid version type: ${type}. Must be one of: ${validTypes.join(
58
- ", "
59
- )}`
60
- );
61
- process.exit(1);
62
- }
63
-
64
- console.log(`\nšŸ“¦ Bumping ${type} version...`);
65
- exec(`npm version ${type} --no-git-tag-version`);
66
- return getVersion();
67
- }
68
-
69
- /**
70
- * Pre-publish: test -> build -> bump version
71
- */
72
- function prepublish(versionType) {
73
- console.log("šŸš€ Pre-publish: preparing for release...\n");
74
-
75
- // Step 1: Test
76
- console.log("1ļøāƒ£ Running tests...");
77
- exec("npm test");
78
-
79
- // Step 2: Build
80
- console.log("\n2ļøāƒ£ Building...");
81
- exec("npm run build");
82
-
83
- // Step 3: Bump version
84
- const newVersion = bumpVersion(versionType);
85
- console.log(`\nāœ… Version bumped to ${newVersion}`);
86
-
87
- console.log("\n" + "=".repeat(50));
88
- console.log(`šŸ“¦ Ready to publish v${newVersion}`);
89
- console.log("=".repeat(50));
90
- console.log("\nNow run:");
91
- console.log(" npm publish");
92
- console.log("\nThen after successful publish, run:");
93
- console.log(" pnpm postpublish\n");
94
- }
95
-
96
- /**
97
- * Post-publish: git commit -> tag -> push
98
- */
99
- function postpublish() {
100
- const version = getVersion();
101
-
102
- console.log("šŸš€ Post-publish: committing and pushing...\n");
103
-
104
- // Git commit and tag
105
- console.log("1ļøāƒ£ Creating git commit and tag...");
106
- exec("git add package.json");
107
- exec(`git commit -m "chore: release v${version}"`, { allowFail: true });
108
- exec(`git tag v${version}`, { allowFail: true });
109
-
110
- // Push to git (skip if no remote)
111
- if (hasGitRemote()) {
112
- console.log("\n2ļøāƒ£ Pushing to git...");
113
- exec("git push");
114
- exec("git push --tags");
115
- } else {
116
- console.log("\nāš ļø No git remote configured. Skipping push.");
117
- console.log(" To push later, run:");
118
- console.log(" git remote add origin <url>");
119
- console.log(" git push -u origin main --tags");
120
- }
121
-
122
- console.log(`\nāœ… Successfully released fluxdom@${version}!\n`);
123
- }
124
-
125
- /**
126
- * Full publish (for automation tokens)
127
- */
128
- function fullPublish(versionType) {
129
- console.log("šŸš€ Full publish workflow...\n");
130
-
131
- // Pre-publish steps
132
- console.log("1ļøāƒ£ Running tests...");
133
- exec("npm test");
134
-
135
- console.log("\n2ļøāƒ£ Building...");
136
- exec("npm run build");
137
-
138
- const newVersion = bumpVersion(versionType);
139
- console.log(`āœ… Version bumped to ${newVersion}`);
140
-
141
- // Publish
142
- console.log("\n3ļøāƒ£ Publishing to npm...");
143
- exec("npm publish");
144
-
145
- // Post-publish steps
146
- console.log("\n4ļøāƒ£ Creating git commit and tag...");
147
- exec("git add package.json");
148
- exec(`git commit -m "chore: release v${newVersion}"`);
149
- exec(`git tag v${newVersion}`);
150
-
151
- // Push to git (skip if no remote)
152
- if (hasGitRemote()) {
153
- console.log("\n5ļøāƒ£ Pushing to git...");
154
- exec("git push");
155
- exec("git push --tags");
156
- } else {
157
- console.log("\nāš ļø No git remote configured. Skipping push.");
158
- }
159
-
160
- console.log(`\nāœ… Successfully published fluxdom@${newVersion}!\n`);
161
- }
162
-
163
- // Main
164
- const command = process.argv[2];
165
- const versionType = process.argv[3];
166
-
167
- switch (command) {
168
- case "pre":
169
- if (!versionType) {
170
- console.error(
171
- "āŒ Usage: node scripts/publish.js pre <patch|minor|major>"
172
- );
173
- process.exit(1);
174
- }
175
- prepublish(versionType);
176
- break;
177
-
178
- case "post":
179
- postpublish();
180
- break;
181
-
182
- case "full":
183
- if (!versionType) {
184
- console.error(
185
- "āŒ Usage: node scripts/publish.js full <patch|minor|major>"
186
- );
187
- process.exit(1);
188
- }
189
- fullPublish(versionType);
190
- break;
191
-
192
- default:
193
- console.error("āŒ Usage:");
194
- console.error(" node scripts/publish.js pre <patch|minor|major>");
195
- console.error(" node scripts/publish.js post");
196
- console.error(" node scripts/publish.js full <patch|minor|major>");
197
- process.exit(1);
198
- }