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.
- package/README.md +198 -2234
- package/bin/cli.js +90 -0
- package/dist/core/derived.d.ts +2 -2
- package/dist/core/effect.d.ts +3 -2
- package/dist/core/onCreateHook.d.ts +15 -2
- package/dist/core/onErrorHook.d.ts +4 -1
- package/dist/core/pool.d.ts +78 -0
- package/dist/core/pool.test.d.ts +1 -0
- package/dist/core/select-boolean.test.d.ts +1 -0
- package/dist/core/select-pool.test.d.ts +1 -0
- package/dist/core/select.d.ts +278 -86
- package/dist/core/types.d.ts +233 -1
- package/dist/core/withAbort.d.ts +95 -0
- package/dist/core/withReady.d.ts +3 -3
- package/dist/devtools/constants.d.ts +41 -0
- package/dist/devtools/index.cjs +1 -0
- package/dist/devtools/index.d.ts +29 -0
- package/dist/devtools/index.js +429 -0
- package/dist/devtools/registry.d.ts +98 -0
- package/dist/devtools/registry.test.d.ts +1 -0
- package/dist/devtools/setup.d.ts +61 -0
- package/dist/devtools/types.d.ts +311 -0
- package/dist/index-BZEnfIcB.cjs +1 -0
- package/dist/index-BbPZhsDl.js +1653 -0
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +4 -3
- package/dist/index.js +18 -14
- package/dist/onDispatchHook-C8yLzr-o.cjs +1 -0
- package/dist/onDispatchHook-SKbiIUaJ.js +5 -0
- package/dist/onErrorHook-BGGy3tqK.js +38 -0
- package/dist/onErrorHook-DHBASmYw.cjs +1 -0
- package/dist/react/index.cjs +1 -30
- package/dist/react/index.js +206 -791
- package/dist/react/onDispatchHook.d.ts +106 -0
- package/dist/react/useAction.d.ts +4 -1
- package/dist/react-devtools/DevToolsPanel.d.ts +93 -0
- package/dist/react-devtools/EntityDetails.d.ts +10 -0
- package/dist/react-devtools/EntityList.d.ts +15 -0
- package/dist/react-devtools/LogList.d.ts +12 -0
- package/dist/react-devtools/hooks.d.ts +50 -0
- package/dist/react-devtools/index.cjs +1 -0
- package/dist/react-devtools/index.d.ts +31 -0
- package/dist/react-devtools/index.js +1589 -0
- package/dist/react-devtools/styles.d.ts +148 -0
- package/package.json +26 -2
- package/skills/atomirx/SKILL.md +456 -0
- package/skills/atomirx/references/async-patterns.md +188 -0
- package/skills/atomirx/references/atom-patterns.md +238 -0
- package/skills/atomirx/references/deferred-loading.md +191 -0
- package/skills/atomirx/references/derived-patterns.md +428 -0
- package/skills/atomirx/references/effect-patterns.md +426 -0
- package/skills/atomirx/references/error-handling.md +140 -0
- package/skills/atomirx/references/hooks.md +322 -0
- package/skills/atomirx/references/pool-patterns.md +229 -0
- package/skills/atomirx/references/react-integration.md +411 -0
- package/skills/atomirx/references/rules.md +407 -0
- package/skills/atomirx/references/select-context.md +309 -0
- package/skills/atomirx/references/service-template.md +172 -0
- package/skills/atomirx/references/store-template.md +205 -0
- package/skills/atomirx/references/testing-patterns.md +431 -0
- package/coverage/base.css +0 -224
- package/coverage/block-navigation.js +0 -87
- package/coverage/clover.xml +0 -1440
- package/coverage/coverage-final.json +0 -14
- package/coverage/favicon.png +0 -0
- package/coverage/index.html +0 -131
- package/coverage/prettify.css +0 -1
- package/coverage/prettify.js +0 -2
- package/coverage/sort-arrow-sprite.png +0 -0
- package/coverage/sorter.js +0 -210
- package/coverage/src/core/atom.ts.html +0 -889
- package/coverage/src/core/batch.ts.html +0 -223
- package/coverage/src/core/define.ts.html +0 -805
- package/coverage/src/core/emitter.ts.html +0 -919
- package/coverage/src/core/equality.ts.html +0 -631
- package/coverage/src/core/hook.ts.html +0 -460
- package/coverage/src/core/index.html +0 -281
- package/coverage/src/core/isAtom.ts.html +0 -100
- package/coverage/src/core/isPromiseLike.ts.html +0 -133
- package/coverage/src/core/onCreateHook.ts.html +0 -138
- package/coverage/src/core/scheduleNotifyHook.ts.html +0 -94
- package/coverage/src/core/types.ts.html +0 -523
- package/coverage/src/core/withUse.ts.html +0 -253
- package/coverage/src/index.html +0 -116
- package/coverage/src/index.ts.html +0 -106
- package/dist/index-CBVj1kSj.js +0 -1350
- package/dist/index-Cxk9v0um.cjs +0 -1
- package/scripts/publish.js +0 -198
- package/src/core/atom.test.ts +0 -633
- package/src/core/atom.ts +0 -311
- package/src/core/atomState.test.ts +0 -342
- package/src/core/atomState.ts +0 -256
- package/src/core/batch.test.ts +0 -257
- package/src/core/batch.ts +0 -172
- package/src/core/define.test.ts +0 -343
- package/src/core/define.ts +0 -243
- package/src/core/derived.test.ts +0 -1215
- package/src/core/derived.ts +0 -450
- package/src/core/effect.test.ts +0 -802
- package/src/core/effect.ts +0 -188
- package/src/core/emitter.test.ts +0 -364
- package/src/core/emitter.ts +0 -392
- package/src/core/equality.test.ts +0 -392
- package/src/core/equality.ts +0 -182
- package/src/core/getAtomState.ts +0 -69
- package/src/core/hook.test.ts +0 -227
- package/src/core/hook.ts +0 -177
- package/src/core/isAtom.ts +0 -27
- package/src/core/isPromiseLike.test.ts +0 -72
- package/src/core/isPromiseLike.ts +0 -16
- package/src/core/onCreateHook.ts +0 -107
- package/src/core/onErrorHook.test.ts +0 -350
- package/src/core/onErrorHook.ts +0 -52
- package/src/core/promiseCache.test.ts +0 -241
- package/src/core/promiseCache.ts +0 -284
- package/src/core/scheduleNotifyHook.ts +0 -53
- package/src/core/select.ts +0 -729
- package/src/core/selector.test.ts +0 -799
- package/src/core/types.ts +0 -389
- package/src/core/withReady.test.ts +0 -534
- package/src/core/withReady.ts +0 -191
- package/src/core/withUse.test.ts +0 -249
- package/src/core/withUse.ts +0 -56
- package/src/index.test.ts +0 -80
- package/src/index.ts +0 -65
- package/src/react/index.ts +0 -21
- package/src/react/rx.test.tsx +0 -571
- package/src/react/rx.tsx +0 -531
- package/src/react/strictModeTest.tsx +0 -71
- package/src/react/useAction.test.ts +0 -987
- package/src/react/useAction.ts +0 -607
- package/src/react/useSelector.test.ts +0 -182
- package/src/react/useSelector.ts +0 -292
- package/src/react/useStable.test.ts +0 -553
- package/src/react/useStable.ts +0 -288
- package/tsconfig.json +0 -9
- package/v2.md +0 -725
- package/vite.config.ts +0 -39
package/dist/index-Cxk9v0um.cjs
DELETED
|
@@ -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;
|
package/scripts/publish.js
DELETED
|
@@ -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
|
-
}
|