@doeixd/machine 0.0.5 → 0.0.7
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 +158 -0
- package/dist/cjs/development/index.js +277 -7
- package/dist/cjs/development/index.js.map +4 -4
- package/dist/cjs/production/index.js +5 -5
- package/dist/esm/development/index.js +277 -7
- package/dist/esm/development/index.js.map +4 -4
- package/dist/esm/production/index.js +5 -5
- package/dist/types/extract.d.ts +40 -4
- package/dist/types/extract.d.ts.map +1 -1
- package/dist/types/generators.d.ts +40 -9
- package/dist/types/generators.d.ts.map +1 -1
- package/dist/types/higher-order.d.ts +221 -0
- package/dist/types/higher-order.d.ts.map +1 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/primitives.d.ts.map +1 -1
- package/dist/types/utils.d.ts +208 -0
- package/dist/types/utils.d.ts.map +1 -0
- package/package.json +1 -1
- package/src/extract.ts +180 -8
- package/src/generators.ts +25 -25
- package/src/higher-order.ts +364 -0
- package/src/index.ts +18 -1
- package/src/primitives.ts +3 -2
- package/src/solid.ts +8 -8
- package/src/utils.ts +171 -5
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
var
|
|
2
|
-
🔍 Analyzing machine: ${
|
|
3
|
-
📊 Starting statechart extraction`),console.error(` Machines to extract: ${
|
|
4
|
-
✅ Extraction complete: ${i.length}/${
|
|
5
|
-
`);let
|
|
1
|
+
var N=(e=>typeof require!="undefined"?require:typeof Proxy!="undefined"?new Proxy(e,{get:(t,n)=>(typeof require!="undefined"?require:t)[n]}):e)(function(e){if(typeof require!="undefined")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});function j(e,t){let n=e(t),i=t;for(;;){let{value:r,done:o}=n.next(i);if(o)return r;i=r}}function W(e){return function*(){return yield e}()}function G(e){return e}function B(e,t){return t.reduce((n,i)=>j(i,n),e)}function V(e){return e}function z(e,t,n=(i,r)=>{console.log(`Step ${i}:`,r.context)}){let i=e(t),r=t,o=0;for(n(o,r);;){let{value:a,done:s}=i.next(r);if(s)return console.log("Final:",a),a;r=a,o++,n(o,r)}}async function U(e,t){let n=e(t),i=t;for(;;){let{value:r,done:o}=await n.next(i);if(o)return r;i=r}}async function*q(e){return yield e}var J=Symbol("MachineMeta"),h=Symbol("__machine_runtime_meta__");function p(e,t){let n=e[h]||{},i={...n,...t};t.guards&&n.guards?i.guards=[...t.guards,...n.guards]:t.guards&&(i.guards=[...t.guards]),t.actions&&n.actions?i.actions=[...t.actions,...n.actions]:t.actions&&(i.actions=[...t.actions]),Object.defineProperty(e,h,{value:i,enumerable:!1,writable:!1,configurable:!0})}function Y(e,t){return p(t,{target:e.name||e.toString()}),t}function X(e,t){return p(t,{description:e}),t}function H(e,t){return p(t,{guards:[e]}),t}function Q(e,t){return p(t,{invoke:{src:e.src,onDone:e.onDone.name||e.onDone.toString(),onError:e.onError.name||e.onError.toString(),description:e.description}}),t}function Z(e,t){return p(t,{actions:[e]}),t}function ee(e,t){return t}import{Project as O,Node as l}from"ts-morph";function K(e){return l.isIdentifier(e)?e.getText():l.isTypeOfExpression(e)?e.getExpression().getText():"unknown"}function m(e){if(!l.isObjectLiteralExpression(e))return{};let t={};for(let n of e.getProperties())if(l.isPropertyAssignment(n)){let i=n.getName(),r=n.getInitializer();r&&(l.isStringLiteral(r)||l.isNumericLiteral(r)?t[i]=r.getLiteralValue():r.getText()==="true"||r.getText()==="false"?t[i]=r.getText()==="true":l.isIdentifier(r)?t[i]=r.getText():l.isObjectLiteralExpression(r)?t[i]=m(r):l.isArrayLiteralExpression(r)&&(t[i]=r.getElements().map(o=>l.isObjectLiteralExpression(o)?m(o):o.getText())))}return t}function te(e){if(!l.isObjectLiteralExpression(e))return{};let t={};for(let n of e.getProperties())if(l.isPropertyAssignment(n)){let i=n.getName(),r=n.getInitializer();if(!r)continue;i==="onDone"||i==="onError"?t[i]=K(r):l.isStringLiteral(r)?t[i]=r.getLiteralValue():l.isIdentifier(r)&&(t[i]=r.getText())}return t}function T(e,t=!1){if(!l.isCallExpression(e))return null;let n=e.getExpression(),i=l.isIdentifier(n)?n.getText():null;if(!i)return null;let r={},o=e.getArguments();switch(i){case"transitionTo":o[0]&&(r.target=K(o[0]));break;case"describe":if(o[0]&&l.isStringLiteral(o[0])&&(r.description=o[0].getLiteralValue()),o[1]&&l.isCallExpression(o[1])){let a=T(o[1],t);a&&Object.assign(r,a)}break;case"guarded":if(o[0]){let a=m(o[0]);Object.keys(a).length>0&&(r.guards=[a])}if(o[1]&&l.isCallExpression(o[1])){let a=T(o[1],t);a&&Object.assign(r,a)}break;case"invoke":if(o[0]){let a=te(o[0]);Object.keys(a).length>0&&(r.invoke=a)}break;case"action":if(o[0]){let a=m(o[0]);Object.keys(a).length>0&&(r.actions=[a])}if(o[1]&&l.isCallExpression(o[1])){let a=T(o[1],t);a&&Object.assign(r,a)}break;default:return null}return Object.keys(r).length>0?r:null}function ne(e,t=!1){if(!l.isPropertyDeclaration(e))return t&&console.error(" ⚠️ Not a property declaration"),null;let n=e.getInitializer();if(!n)return t&&console.error(" ⚠️ No initializer"),null;if(!l.isCallExpression(n))return t&&console.error(" ⚠️ Initializer is not a call expression"),null;let i=T(n,t);return i&&t&&console.error(" ✅ Extracted metadata:",JSON.stringify(i,null,2)),i}function b(e,t=!1){let n={on:{}},i=e.getDeclarations()[0];if(!i||!l.isClassDeclaration(i))return t&&console.error(`⚠️ Warning: Could not get class declaration for ${e.getName()}`),n;let r=e.getName();t&&console.error(` Analyzing state: ${r}`);for(let o of i.getInstanceMembers()){let a=o.getName();t&&console.error(` Checking member: ${a}`);let s=ne(o,t);if(!s)continue;t&&console.error(` Found transition: ${a}`);let{invoke:c,actions:u,guards:x,...y}=s;if(c&&(n.invoke||(n.invoke=[]),n.invoke.push({src:c.src,onDone:{target:c.onDone},onError:{target:c.onError},description:c.description}),t&&console.error(` → Invoke: ${c.src}`)),y.target){let d={target:y.target};y.description&&(d.description=y.description),x&&(d.cond=x.map(E=>E.name).join(" && "),t&&console.error(` → Guard: ${d.cond}`)),u&&u.length>0&&(d.actions=u.map(E=>E.name),t&&console.error(` → Actions: ${d.actions.join(", ")}`)),n.on[a]=d,t&&console.error(` → Target: ${y.target}`)}}return n}function re(e,t,n,i,r=!1){let o=b(t,r);if(i){r&&console.error(` 👪 Analyzing children for state: ${e}`),o.initial=i.initialState,o.states={};for(let a of i.classes){let s=n.getClass(a);if(s){let c=s.getSymbolOrThrow();o.states[a]=b(c,r)}else console.warn(`⚠️ Warning: Child class '${a}' not found.`)}}return o}function S(e,t,n=!1){n&&(console.error(`
|
|
2
|
+
🔍 Analyzing machine: ${e.id}`),console.error(` Source: ${e.input}`));let i=t.getSourceFile(e.input);if(!i)throw new Error(`Source file not found: ${e.input}`);if(e.parallel){n&&console.error(" ⏹️ Parallel machine detected. Analyzing regions.");let o={id:e.id,type:"parallel",states:{}};e.description&&(o.description=e.description);for(let a of e.parallel.regions){n&&console.error(` 📍 Analyzing region: ${a.name}`);let s={};for(let c of a.classes){let u=i.getClass(c);if(u){let x=u.getSymbolOrThrow();s[c]=b(x,n)}else console.warn(`⚠️ Warning: Class '${c}' not found for region '${a.name}'.`)}o.states[a.name]={initial:a.initialState,states:s}}return n&&console.error(` ✅ Extracted ${e.parallel.regions.length} parallel regions`),o}if(!e.initialState||!e.classes)throw new Error(`Machine config for '${e.id}' must have either 'parallel' or 'initialState'/'classes'.`);let r={id:e.id,initial:e.initialState,states:{}};e.description&&(r.description=e.description);for(let o of e.classes){let a=i.getClass(o);if(!a){console.warn(`⚠️ Warning: Class '${o}' not found in '${e.input}'. Skipping.`);continue}let s=a.getSymbolOrThrow(),c=o===e.initialState&&e.children,u=re(o,s,i,c?e.children:void 0,n);r.states[o]=u}return n&&console.error(` ✅ Extracted ${e.classes.length} states`),r}function ie(e){var r;let t=(r=e.verbose)!=null?r:!1;t&&(console.error(`
|
|
3
|
+
📊 Starting statechart extraction`),console.error(` Machines to extract: ${e.machines.length}`));let n=new O;n.addSourceFilesAtPaths("src/**/*.ts"),n.addSourceFilesAtPaths("examples/**/*.ts");let i=[];for(let o of e.machines)try{let a=S(o,n,t);i.push(a)}catch(a){console.error(`❌ Error extracting machine '${o.id}':`,a),t||console.error(" Run with --verbose for more details")}return t&&console.error(`
|
|
4
|
+
✅ Extraction complete: ${i.length}/${e.machines.length} machines extracted`),i}function D(){let e={input:"examples/authMachine.ts",classes:["LoggedOutMachine","LoggingInMachine","LoggedInMachine","SessionExpiredMachine","ErrorMachine"],id:"auth",initialState:"LoggedOutMachine",description:"Authentication state machine"};console.error("🔍 Using legacy generateChart function"),console.error(`⚠️ Consider using extractMachines() with a config file instead
|
|
5
|
+
`);let t=new O;t.addSourceFilesAtPaths("src/**/*.ts"),t.addSourceFilesAtPaths("examples/**/*.ts");try{let n=S(e,t,!0);console.log(JSON.stringify(n,null,2))}catch(n){console.error("❌ Error:",n),process.exit(1)}}N.main===module&&D();function $(e){return typeof e!="function"?null:e[h]||null}function A(e){let t={on:{}},n=[];for(let i in e){let r=e[i];if(typeof r!="function")continue;let o=$(r);if(o&&(o.invoke&&n.push({src:o.invoke.src,onDone:{target:o.invoke.onDone},onError:{target:o.invoke.onError},description:o.invoke.description}),o.target)){let a={target:o.target};o.description&&(a.description=o.description),o.guards&&o.guards.length>0&&(a.cond=o.guards.map(s=>s.name).join(" && ")),o.actions&&o.actions.length>0&&(a.actions=o.actions.map(s=>s.name)),t.on[i]=a}}return n.length>0&&(t.invoke=n),t}function oe(e,t){let n={id:t.id,initial:t.initial,states:{}};t.description&&(n.description=t.description);for(let[i,r]of Object.entries(e))n.states[i]=A(r);return n}function ae(e,t){let n=t.stateName||e.constructor.name||"State";return{id:t.id,initial:n,states:{[n]:A(e)}}}function se(e,t){let n=e,i=s=>{n=s,t==null||t(s)},{context:r,...o}=e,a=new Proxy({},{get(s,c){let u=n[c];if(typeof u=="function")return(...x)=>{let y=u.apply(n.context,x),d=Object.assign({context:y.context},o);return i(d),d}}});return{get state(){return n},get context(){return n.context},actions:a,setState:i}}function be(e,t,n){let i=()=>{let o=e.getContext(),a=n(o),s=t[a];if(!s)throw new Error(`[Ensemble] Invalid state: No factory found for state "${String(a)}".`);return s(o)},r=new Proxy({},{get(o,a){let s=i(),c=s[a];if(typeof c!="function")throw new Error(`[Ensemble] Transition "${a}" is not valid in the current state.`);return(...u)=>c.apply(s.context,u)}});return{get context(){return e.getContext()},get state(){return i()},actions:r}}function Se(e,t){let n=se(t),i=e(n),r=i.next();for(;!r.done;)r=i.next();return r.value}function Ae(e,t){let n=e(t),i=n.next();for(;!i.done;)i=n.next();return i.value}var L=class{constructor(t){this.store=t}get context(){return this.store.getContext()}setContext(t){this.store.setContext(t)}};function we(e,t){let n=new e(t);return new Proxy({},{get(i,r){let o=t.getContext();if(r in o)return o[r];let a=n[r];if(typeof a=="function")return(...s)=>a.apply(n,s)},set(i,r,o){let a=t.getContext();if(r in a){let s={...a,[r]:o};return t.setContext(s),!0}return!1},has(i,r){let o=t.getContext();return r in o||typeof n[r]=="function"},ownKeys(i){let r=t.getContext(),o=Object.keys(r),a=Object.getOwnPropertyNames(Object.getPrototypeOf(n)).filter(s=>s!=="constructor"&&typeof n[s]=="function");return Array.from(new Set([...o,...a]))},getOwnPropertyDescriptor(i,r){let o=t.getContext();if(r in o||typeof n[r]=="function")return{value:void 0,writable:!0,enumerable:!0,configurable:!0}}})}function ke(e,t,n){let i=()=>{let r=n(e),o=t[r];if(!o)throw new Error(`[MutableMachine] Invalid state: No factory for state "${String(r)}".`);return o(e)};return new Proxy(e,{get(r,o,a){if(o in r)return r[o];let s=i(),c=s[o];if(typeof c=="function")return(...u)=>{let x=c.apply(s.context,u);if(typeof x!="object"||x===null){console.warn(`[MutableMachine] Transition "${String(o)}" did not return a valid context object. State may be inconsistent.`);return}Object.keys(r).forEach(y=>delete r[y]),Object.assign(r,x)}},set(r,o,a,s){return r[o]=a,!0},has(r,o){let a=i();return o in r||typeof a[o]=="function"}})}function je(e){return function(...t){let n=this.context.child;if(typeof n[e]=="function"){let i=n[e](...t);return C(this,{...this.context,child:i})}return this}}function Oe(e){return function(){return typeof this.context[e]!="boolean"&&console.warn(`[toggle primitive] Property '${String(e)}' is not a boolean. Toggling may have unexpected results.`),C(this,{...this.context,[e]:!this.context[e]})}}var w=class extends M{constructor(n){super({status:"idle"});this.config=n;this.fetch=n=>new f(this.config,n!=null?n:this.config.initialParams,1)}},f=class extends M{constructor(n,i,r){super({status:"loading",abortController:new AbortController,attempts:r});this.config=n;this.params=i;this.succeed=n=>{var i,r;return(r=(i=this.config).onSuccess)==null||r.call(i,n),new F(this.config,{status:"success",data:n})};this.fail=n=>{var r,o,a;let i=(r=this.config.maxRetries)!=null?r:3;return this.context.attempts<i?new k(this.config,this.params,n,this.context.attempts):((a=(o=this.config).onError)==null||a.call(o,n),new P(this.config,{status:"error",error:n}))};this.cancel=()=>(this.context.abortController.abort(),new R(this.config));this.execute()}async execute(){}},k=class extends M{constructor(n,i,r,o){super({status:"retrying",error:r,attempts:o});this.config=n;this.params=i;this.retry=n=>new f(this.config,n!=null?n:this.params,this.context.attempts+1)}},F=class extends M{constructor(n,i){super(i);this.config=n;this.refetch=n=>new f(this.config,n!=null?n:this.config.initialParams,1)}},P=class extends M{constructor(n,i){super(i);this.config=n;this.retry=n=>new f(this.config,n!=null?n:this.config.initialParams,1)}},R=class extends M{constructor(n){super({status:"canceled"});this.config=n;this.refetch=n=>new f(this.config,n!=null?n:this.config.initialParams,1)}};function Ke(e){return new w(e)}function I(e,t){let n={...e.context,...t.context},i={...e},r={...t};delete i.context,delete r.context;let o={};for(let a in i){let s=i[a];o[a]=(...c)=>{let u=s.apply(e.context,c);return I(u,t)}}for(let a in r){let s=r[a];o[a]=(...c)=>{let u=s.apply(t.context,c);return I(e,u)}}return{context:n,...o}}function ce(e,t){return e instanceof t}function le(e,...t){return{type:e,args:t}}function ue(e,t){return C(e,n=>({...n,...t}))}async function xe(e,...t){let n=e;for(let i of t)n=await i(n);return n}function ye(e,t){return t?console.log(t,e.context):console.log(e.context),e}function de(e,t,...n){return e.apply(t,n)}function _(e){return new Proxy(e,{get(t,n){let i=t[n];return typeof i=="function"?function(...r){let o=i.apply(t.context,r);return o&&typeof o=="object"&&"context"in o?_(o):o}:i}})}var v=class e{constructor(t){return this.wrappedMachine=t,new Proxy(this,{get:(n,i)=>{if(i==="wrappedMachine"||i==="context")return Reflect.get(n,i);let r=this.wrappedMachine[i];return typeof r=="function"?(...o)=>{let a=r.apply(this.wrappedMachine.context,o);return a&&typeof a=="object"&&"context"in a?new e(a):a}:r}})}get context(){return this.wrappedMachine.context}};function g(e,t){return Object.assign({context:e},t)}function Ue(e,t){return Object.assign({context:e},t)}function qe(){return e=>{let t=Object.fromEntries(Object.entries(e).map(([n,i])=>[n,function(...r){let o=i(this,...r);return g(o,t)}]));return n=>g(n,t)}}function C(e,t){let{context:n,...i}=e,r=typeof t=="function"?t(n):t;return g(r,i)}function Je(e,t){let{context:n,...i}=e,r={...i,...t};return g(n,r)}function Ye(e,t){let{context:n,...i}=e,r={...i,...t};return g(n,r)}function Xe(e){let{context:t,...n}=e;return i=>g(i,n)}function He(e,t,n){let i=e.context[t],r=n[i];if(!r)throw new Error(`No handler found for state: ${String(i)}`);return r(e.context)}function Qe(e,t,n){return e.context[t]===n}function Ze(e,t){let n=e;async function i(r){let o=n[r.type];if(typeof o!="function")throw new Error(`[Machine] Unknown event type '${String(r.type)}' on current state.`);return n=await o.apply(n.context,r.args),t==null||t(n),n}return{get state(){return n.context},dispatch:i}}var M=class{constructor(t){this.context=t}};function et(e,t){let{context:n,...i}=e;return g(t(n),i)}export{v as BoundMachine,J as META_KEY,M as MachineBase,L as MultiMachineBase,h as RUNTIME_META,Z as action,_ as bindTransitions,de as call,Ue as createAsyncMachine,be as createEnsemble,le as createEvent,Ke as createFetchMachine,V as createFlow,g as createMachine,Xe as createMachineBuilder,qe as createMachineFactory,we as createMultiMachine,ke as createMutableMachine,I as createParallelMachine,se as createRunner,je as delegateToChild,X as describe,Ye as extendTransitions,ae as extractFromInstance,$ as extractFunctionMetadata,S as extractMachine,ie as extractMachines,A as extractStateNode,D as generateChart,oe as generateStatechart,H as guarded,Qe as hasState,Q as invoke,ce as isState,ye as logState,He as matchMachine,ue as mergeContext,ee as metadata,et as next,Je as overrideTransitions,xe as pipeTransitions,j as run,U as runAsync,Ze as runMachine,B as runSequence,z as runWithDebug,Ae as runWithEnsemble,Se as runWithRunner,C as setContext,W as step,q as stepAsync,Oe as toggle,Y as transitionTo,G as yieldMachine};
|
package/dist/types/extract.d.ts
CHANGED
|
@@ -14,22 +14,50 @@
|
|
|
14
14
|
* 3. Run the script from your project root: `npx ts-node ./scripts/extract-statechart.ts`
|
|
15
15
|
*/
|
|
16
16
|
import { Project } from 'ts-morph';
|
|
17
|
+
/**
|
|
18
|
+
* Configuration for a parallel region
|
|
19
|
+
*/
|
|
20
|
+
export interface ParallelRegionConfig {
|
|
21
|
+
/** A unique name for this region (e.g., 'fontStyle') */
|
|
22
|
+
name: string;
|
|
23
|
+
/** The initial state class for this region */
|
|
24
|
+
initialState: string;
|
|
25
|
+
/** All reachable state classes within this region */
|
|
26
|
+
classes: string[];
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Configuration for child states in a hierarchical machine
|
|
30
|
+
*/
|
|
31
|
+
export interface ChildStatesConfig {
|
|
32
|
+
/** The property in the parent's context that holds the child machine */
|
|
33
|
+
contextProperty: string;
|
|
34
|
+
/** An array of all possible child state class names */
|
|
35
|
+
classes: string[];
|
|
36
|
+
/** The initial child state */
|
|
37
|
+
initialState: string;
|
|
38
|
+
}
|
|
17
39
|
/**
|
|
18
40
|
* Configuration for a single machine to extract
|
|
19
41
|
*/
|
|
20
42
|
export interface MachineConfig {
|
|
21
43
|
/** Path to the source file containing the machine */
|
|
22
44
|
input: string;
|
|
23
|
-
/** Array of class names that represent states */
|
|
24
|
-
classes: string[];
|
|
25
45
|
/** Output file path (optional, defaults to stdout) */
|
|
26
46
|
output?: string;
|
|
27
47
|
/** Top-level ID for the statechart */
|
|
28
48
|
id: string;
|
|
29
|
-
/** Name of the class that represents the initial state */
|
|
30
|
-
initialState: string;
|
|
31
49
|
/** Optional description of the machine */
|
|
32
50
|
description?: string;
|
|
51
|
+
/** Array of class names that represent states (for simple FSM) */
|
|
52
|
+
classes?: string[];
|
|
53
|
+
/** Name of the class that represents the initial state (for simple FSM) */
|
|
54
|
+
initialState?: string;
|
|
55
|
+
/** Configuration for parallel regions (mutually exclusive with initialState/classes) */
|
|
56
|
+
parallel?: {
|
|
57
|
+
regions: ParallelRegionConfig[];
|
|
58
|
+
};
|
|
59
|
+
/** Configuration for hierarchical/nested states */
|
|
60
|
+
children?: ChildStatesConfig;
|
|
33
61
|
}
|
|
34
62
|
/**
|
|
35
63
|
* Global extraction configuration
|
|
@@ -68,4 +96,12 @@ export declare function extractMachines(config: ExtractionConfig): any[];
|
|
|
68
96
|
* @deprecated Use extractMachine or extractMachines instead
|
|
69
97
|
*/
|
|
70
98
|
export declare function generateChart(): void;
|
|
99
|
+
/**
|
|
100
|
+
* Example configuration demonstrating hierarchical and parallel machines.
|
|
101
|
+
* This is not used by default but serves as documentation.
|
|
102
|
+
*/
|
|
103
|
+
export declare const ADVANCED_CONFIG_EXAMPLES: {
|
|
104
|
+
hierarchical: MachineConfig;
|
|
105
|
+
parallel: MachineConfig;
|
|
106
|
+
};
|
|
71
107
|
//# sourceMappingURL=extract.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extract.d.ts","sourceRoot":"","sources":["../../src/extract.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,OAAO,EAAc,MAAM,UAAU,CAAC;AAM/C;;GAEG;AACH,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"extract.d.ts","sourceRoot":"","sources":["../../src/extract.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,OAAO,EAAc,MAAM,UAAU,CAAC;AAM/C;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,wDAAwD;IACxD,IAAI,EAAE,MAAM,CAAC;IACb,8CAA8C;IAC9C,YAAY,EAAE,MAAM,CAAC;IACrB,qDAAqD;IACrD,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,wEAAwE;IACxE,eAAe,EAAE,MAAM,CAAC;IACxB,uDAAuD;IACvD,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,8BAA8B;IAC9B,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,qDAAqD;IACrD,KAAK,EAAE,MAAM,CAAC;IACd,sDAAsD;IACtD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sCAAsC;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,0CAA0C;IAC1C,WAAW,CAAC,EAAE,MAAM,CAAC;IAGrB,kEAAkE;IAClE,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,2EAA2E;IAC3E,YAAY,CAAC,EAAE,MAAM,CAAC;IAGtB,wFAAwF;IACxF,QAAQ,CAAC,EAAE;QACT,OAAO,EAAE,oBAAoB,EAAE,CAAC;KACjC,CAAC;IAEF,mDAAmD;IACnD,QAAQ,CAAC,EAAE,iBAAiB,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,mCAAmC;IACnC,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,4DAA4D;IAC5D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,6CAA6C;IAC7C,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC;IACrC,mDAAmD;IACnD,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,sBAAsB;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AA0aD;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE,OAAO,EAChB,OAAO,UAAQ,GACd,GAAG,CAiGL;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,gBAAgB,GAAG,GAAG,EAAE,CA+B/D;AAED;;;;GAIG;AACH,wBAAgB,aAAa,SAkC5B;AAED;;;GAGG;AACH,eAAO,MAAM,wBAAwB;kBAW9B,aAAa;cAmBb,aAAa;CACnB,CAAC"}
|
|
@@ -25,7 +25,6 @@
|
|
|
25
25
|
* }, initialMachine);
|
|
26
26
|
* ```
|
|
27
27
|
*/
|
|
28
|
-
import { Machine } from './index';
|
|
29
28
|
/**
|
|
30
29
|
* Runs a generator-based state machine flow to completion.
|
|
31
30
|
*
|
|
@@ -115,7 +114,11 @@ import { Machine } from './index';
|
|
|
115
114
|
* }, machine);
|
|
116
115
|
* ```
|
|
117
116
|
*/
|
|
118
|
-
export declare function run<C extends
|
|
117
|
+
export declare function run<C extends any = any, M extends {
|
|
118
|
+
context: C;
|
|
119
|
+
} & Record<string, any> = {
|
|
120
|
+
context: C;
|
|
121
|
+
}, T = any>(flow: (m: M) => Generator<M, T, M>, initial: M): T;
|
|
119
122
|
/**
|
|
120
123
|
* A helper function to yield a machine state and receive the next state back.
|
|
121
124
|
*
|
|
@@ -169,7 +172,11 @@ export declare function run<C extends object, T>(flow: (m: Machine<C>) => Genera
|
|
|
169
172
|
* }, machine);
|
|
170
173
|
* ```
|
|
171
174
|
*/
|
|
172
|
-
export declare function step<C extends
|
|
175
|
+
export declare function step<C extends any = any, M extends {
|
|
176
|
+
context: C;
|
|
177
|
+
} & Record<string, any> = {
|
|
178
|
+
context: C;
|
|
179
|
+
}>(m: M): Generator<M, M, M>;
|
|
173
180
|
/**
|
|
174
181
|
* Alternative to `step` that doesn't require `yield*`.
|
|
175
182
|
* This is semantically identical but uses direct yielding.
|
|
@@ -189,7 +196,11 @@ export declare function step<C extends object>(m: Machine<C>): Generator<Machine
|
|
|
189
196
|
* }, counter);
|
|
190
197
|
* ```
|
|
191
198
|
*/
|
|
192
|
-
export declare function yieldMachine<C extends
|
|
199
|
+
export declare function yieldMachine<C extends any = any, M extends {
|
|
200
|
+
context: C;
|
|
201
|
+
} & Record<string, any> = {
|
|
202
|
+
context: C;
|
|
203
|
+
}>(m: M): M;
|
|
193
204
|
/**
|
|
194
205
|
* Runs multiple generator flows in sequence, passing the result of each to the next.
|
|
195
206
|
*
|
|
@@ -216,7 +227,11 @@ export declare function yieldMachine<C extends object>(m: Machine<C>): Machine<C
|
|
|
216
227
|
* console.log(result.context.count); // 6
|
|
217
228
|
* ```
|
|
218
229
|
*/
|
|
219
|
-
export declare function runSequence<C extends
|
|
230
|
+
export declare function runSequence<C extends any = any, M extends {
|
|
231
|
+
context: C;
|
|
232
|
+
} & Record<string, any> = {
|
|
233
|
+
context: C;
|
|
234
|
+
}>(initial: M, flows: Array<(m: M) => Generator<M, M, M>>): M;
|
|
220
235
|
/**
|
|
221
236
|
* Creates a reusable generator flow that can be composed into other flows.
|
|
222
237
|
*
|
|
@@ -244,7 +259,11 @@ export declare function runSequence<C extends object>(initial: Machine<C>, flows
|
|
|
244
259
|
* }, counter);
|
|
245
260
|
* ```
|
|
246
261
|
*/
|
|
247
|
-
export declare function createFlow<C extends
|
|
262
|
+
export declare function createFlow<C extends any = any, M extends {
|
|
263
|
+
context: C;
|
|
264
|
+
} & Record<string, any> = {
|
|
265
|
+
context: C;
|
|
266
|
+
}>(flow: (m: M) => Generator<M, M, M>): (m: M) => Generator<M, M, M>;
|
|
248
267
|
/**
|
|
249
268
|
* Runs a generator flow with debugging output at each step.
|
|
250
269
|
*
|
|
@@ -272,7 +291,11 @@ export declare function createFlow<C extends object>(flow: (m: Machine<C>) => Ge
|
|
|
272
291
|
* // Final: 6
|
|
273
292
|
* ```
|
|
274
293
|
*/
|
|
275
|
-
export declare function runWithDebug<C extends
|
|
294
|
+
export declare function runWithDebug<C extends any = any, M extends {
|
|
295
|
+
context: C;
|
|
296
|
+
} & Record<string, any> = {
|
|
297
|
+
context: C;
|
|
298
|
+
}, T = any>(flow: (m: M) => Generator<M, T, M>, initial: M, logger?: (step: number, machine: M) => void): T;
|
|
276
299
|
/**
|
|
277
300
|
* Async version of `run` for async state machines.
|
|
278
301
|
*
|
|
@@ -294,7 +317,11 @@ export declare function runWithDebug<C extends object, T>(flow: (m: Machine<C>)
|
|
|
294
317
|
* }, asyncMachine);
|
|
295
318
|
* ```
|
|
296
319
|
*/
|
|
297
|
-
export declare function runAsync<C extends
|
|
320
|
+
export declare function runAsync<C extends any = any, M extends {
|
|
321
|
+
context: C;
|
|
322
|
+
} & Record<string, any> = {
|
|
323
|
+
context: C;
|
|
324
|
+
}, T = any>(flow: (m: M) => AsyncGenerator<M, T, M>, initial: M): Promise<T>;
|
|
298
325
|
/**
|
|
299
326
|
* Async version of `step` for async generators.
|
|
300
327
|
*
|
|
@@ -310,5 +337,9 @@ export declare function runAsync<C extends object, T>(flow: (m: Machine<C>) => A
|
|
|
310
337
|
* }, machine);
|
|
311
338
|
* ```
|
|
312
339
|
*/
|
|
313
|
-
export declare function stepAsync<C extends
|
|
340
|
+
export declare function stepAsync<C extends any = any, M extends {
|
|
341
|
+
context: C;
|
|
342
|
+
} & Record<string, any> = {
|
|
343
|
+
context: C;
|
|
344
|
+
}>(m: M): AsyncGenerator<M, M, M>;
|
|
314
345
|
//# sourceMappingURL=generators.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generators.d.ts","sourceRoot":"","sources":["../../src/generators.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;
|
|
1
|
+
{"version":3,"file":"generators.d.ts","sourceRoot":"","sources":["../../src/generators.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file Higher-Level Abstractions for @doeixd/machine
|
|
3
|
+
* @description
|
|
4
|
+
* This module provides a collection of powerful, pre-built patterns and primitives
|
|
5
|
+
* on top of the core `@doeixd/machine` library. These utilities are designed to
|
|
6
|
+
* solve common, recurring problems in state management, such as data fetching,
|
|
7
|
+
* hierarchical state, and toggling boolean context properties.
|
|
8
|
+
*
|
|
9
|
+
* Think of this as the "standard library" of common machine patterns.
|
|
10
|
+
*/
|
|
11
|
+
import { MachineBase, Machine, Transitions, Context } from './index';
|
|
12
|
+
/**
|
|
13
|
+
* A type utility to infer the child machine type from a parent.
|
|
14
|
+
*/
|
|
15
|
+
type ChildMachine<P> = P extends MachineBase<{
|
|
16
|
+
child: infer C;
|
|
17
|
+
}> ? C : never;
|
|
18
|
+
/**
|
|
19
|
+
* Creates a transition method that delegates a call to a child machine.
|
|
20
|
+
*
|
|
21
|
+
* This is a higher-order function that reduces boilerplate when implementing
|
|
22
|
+
* hierarchical state machines. It generates a method for the parent machine that:
|
|
23
|
+
* 1. Checks if the specified action exists on the current child state.
|
|
24
|
+
* 2. If it exists, calls the action on the child.
|
|
25
|
+
* 3. Reconstructs the parent machine with the new child state returned by the action.
|
|
26
|
+
* 4. If the action doesn't exist on the child, it returns the parent machine unchanged.
|
|
27
|
+
*
|
|
28
|
+
* @template P - The parent machine type, which must have a `child` property in its context.
|
|
29
|
+
* @template K - The name of the action on the child machine to delegate to.
|
|
30
|
+
* @param actionName - The string name of the child's transition method.
|
|
31
|
+
* @param ...args - Any arguments to pass to the child's transition method.
|
|
32
|
+
* @returns The parent machine instance, with its `child` state potentially updated.
|
|
33
|
+
*
|
|
34
|
+
* @example
|
|
35
|
+
* ```typescript
|
|
36
|
+
* class Parent extends MachineBase<{ child: ChildMachine }> {
|
|
37
|
+
* // Instead of writing a manual delegation method...
|
|
38
|
+
* // save = () => {
|
|
39
|
+
* // if ('save' in this.context.child) {
|
|
40
|
+
* // const newChild = this.context.child.save();
|
|
41
|
+
* // return setContext(this, { child: newChild });
|
|
42
|
+
* // }
|
|
43
|
+
* // return this;
|
|
44
|
+
* // }
|
|
45
|
+
*
|
|
46
|
+
* // ...you can just use the primitive.
|
|
47
|
+
* save = delegateToChild('save');
|
|
48
|
+
* edit = delegateToChild('edit');
|
|
49
|
+
* }
|
|
50
|
+
* ```
|
|
51
|
+
*/
|
|
52
|
+
export declare function delegateToChild<P extends MachineBase<{
|
|
53
|
+
child: MachineBase<any>;
|
|
54
|
+
}>, K extends keyof ChildMachine<P> & string>(actionName: K): (...args: ChildMachine<P>[K] extends (...a: infer A) => any ? A : never) => P;
|
|
55
|
+
/**
|
|
56
|
+
* Creates a transition method that toggles a boolean property within the machine's context.
|
|
57
|
+
*
|
|
58
|
+
* This is a simple utility to reduce boilerplate for managing boolean flags.
|
|
59
|
+
*
|
|
60
|
+
* @template M - The machine type.
|
|
61
|
+
* @template K - The key of the boolean property in the machine's context.
|
|
62
|
+
* @param prop - The string name of the context property to toggle.
|
|
63
|
+
* @returns A new machine instance with the toggled property.
|
|
64
|
+
*
|
|
65
|
+
* @example
|
|
66
|
+
* ```typescript
|
|
67
|
+
* class SettingsMachine extends MachineBase<{ notifications: boolean; darkMode: boolean }> {
|
|
68
|
+
* toggleNotifications = toggle('notifications');
|
|
69
|
+
* toggleDarkMode = toggle('darkMode');
|
|
70
|
+
* }
|
|
71
|
+
* ```
|
|
72
|
+
*/
|
|
73
|
+
export declare function toggle<M extends MachineBase<any>, K extends keyof Context<M>>(prop: K): (this: M) => M;
|
|
74
|
+
/**
|
|
75
|
+
* A fully-featured, pre-built state machine for data fetching.
|
|
76
|
+
* It handles loading, success, error states, cancellation, and retry logic out of the box.
|
|
77
|
+
*
|
|
78
|
+
* This machine is highly customizable through its configuration options.
|
|
79
|
+
*/
|
|
80
|
+
export type Fetcher<T, _E = Error> = (params: any) => Promise<T>;
|
|
81
|
+
export type OnSuccess<T> = (data: T) => void;
|
|
82
|
+
export type OnError<E> = (error: E) => void;
|
|
83
|
+
export interface FetchMachineConfig<T, E = Error> {
|
|
84
|
+
fetcher: Fetcher<T, E>;
|
|
85
|
+
initialParams?: any;
|
|
86
|
+
maxRetries?: number;
|
|
87
|
+
onSuccess?: OnSuccess<T>;
|
|
88
|
+
onError?: OnError<E>;
|
|
89
|
+
}
|
|
90
|
+
type IdleContext = {
|
|
91
|
+
status: 'idle';
|
|
92
|
+
};
|
|
93
|
+
type LoadingContext = {
|
|
94
|
+
status: 'loading';
|
|
95
|
+
abortController: AbortController;
|
|
96
|
+
attempts: number;
|
|
97
|
+
};
|
|
98
|
+
type RetryingContext = {
|
|
99
|
+
status: 'retrying';
|
|
100
|
+
error: any;
|
|
101
|
+
attempts: number;
|
|
102
|
+
};
|
|
103
|
+
type SuccessContext<T> = {
|
|
104
|
+
status: 'success';
|
|
105
|
+
data: T;
|
|
106
|
+
};
|
|
107
|
+
type ErrorContext<E> = {
|
|
108
|
+
status: 'error';
|
|
109
|
+
error: E;
|
|
110
|
+
};
|
|
111
|
+
type CanceledContext = {
|
|
112
|
+
status: 'canceled';
|
|
113
|
+
};
|
|
114
|
+
declare class IdleMachine<T, E> extends MachineBase<IdleContext> {
|
|
115
|
+
private config;
|
|
116
|
+
constructor(config: FetchMachineConfig<T, E>);
|
|
117
|
+
fetch: (params?: any) => LoadingMachine<T, E>;
|
|
118
|
+
}
|
|
119
|
+
declare class LoadingMachine<T, E> extends MachineBase<LoadingContext> {
|
|
120
|
+
private config;
|
|
121
|
+
private params;
|
|
122
|
+
constructor(config: FetchMachineConfig<T, E>, params: any, attempts: number);
|
|
123
|
+
private execute;
|
|
124
|
+
succeed: (data: T) => SuccessMachine<T, E>;
|
|
125
|
+
fail: (error: E) => RetryingMachine<T, E> | ErrorMachine<T, E>;
|
|
126
|
+
cancel: () => CanceledMachine<T, E>;
|
|
127
|
+
}
|
|
128
|
+
declare class RetryingMachine<T, E> extends MachineBase<RetryingContext> {
|
|
129
|
+
private config;
|
|
130
|
+
private params;
|
|
131
|
+
constructor(config: FetchMachineConfig<T, E>, params: any, error: E, attempts: number);
|
|
132
|
+
retry: (params?: any) => LoadingMachine<T, E>;
|
|
133
|
+
}
|
|
134
|
+
declare class SuccessMachine<T, E> extends MachineBase<SuccessContext<T>> {
|
|
135
|
+
private config;
|
|
136
|
+
constructor(config: FetchMachineConfig<T, E>, context: SuccessContext<T>);
|
|
137
|
+
refetch: (params?: any) => LoadingMachine<T, E>;
|
|
138
|
+
}
|
|
139
|
+
declare class ErrorMachine<T, E> extends MachineBase<ErrorContext<E>> {
|
|
140
|
+
private config;
|
|
141
|
+
constructor(config: FetchMachineConfig<T, E>, context: ErrorContext<E>);
|
|
142
|
+
retry: (params?: any) => LoadingMachine<T, E>;
|
|
143
|
+
}
|
|
144
|
+
declare class CanceledMachine<T, E> extends MachineBase<CanceledContext> {
|
|
145
|
+
private config;
|
|
146
|
+
constructor(config: FetchMachineConfig<T, E>);
|
|
147
|
+
refetch: (params?: any) => LoadingMachine<T, E>;
|
|
148
|
+
}
|
|
149
|
+
export type FetchMachine<T, E = Error> = IdleMachine<T, E> | LoadingMachine<T, E> | RetryingMachine<T, E> | SuccessMachine<T, E> | ErrorMachine<T, E> | CanceledMachine<T, E>;
|
|
150
|
+
/**
|
|
151
|
+
* Creates a pre-built, highly configurable async data-fetching machine.
|
|
152
|
+
*
|
|
153
|
+
* This factory function returns a state machine that handles the entire lifecycle
|
|
154
|
+
* of a data request, including loading, success, error, cancellation, and retries.
|
|
155
|
+
*
|
|
156
|
+
* @template T - The type of the data to be fetched.
|
|
157
|
+
* @template E - The type of the error.
|
|
158
|
+
* @param config - Configuration object.
|
|
159
|
+
* @param config.fetcher - An async function that takes params and returns the data.
|
|
160
|
+
* @param [config.maxRetries=3] - The number of times to retry on failure.
|
|
161
|
+
* @param [config.onSuccess] - Optional callback fired with the data on success.
|
|
162
|
+
* @param [config.onError] - Optional callback fired with the error on final failure.
|
|
163
|
+
* @returns An `IdleMachine` instance, ready to start fetching.
|
|
164
|
+
*
|
|
165
|
+
* @example
|
|
166
|
+
* ```typescript
|
|
167
|
+
* // 1. Define your data fetching logic
|
|
168
|
+
* async function fetchUser(id: number): Promise<{ id: number; name: string }> {
|
|
169
|
+
* const res = await fetch(`/api/users/${id}`);
|
|
170
|
+
* if (!res.ok) throw new Error('User not found');
|
|
171
|
+
* return res.json();
|
|
172
|
+
* }
|
|
173
|
+
*
|
|
174
|
+
* // 2. Create the machine
|
|
175
|
+
* const userMachine = createFetchMachine({
|
|
176
|
+
* fetcher: fetchUser,
|
|
177
|
+
* onSuccess: (user) => console.log(`Fetched: ${user.name}`),
|
|
178
|
+
* });
|
|
179
|
+
*
|
|
180
|
+
* // 3. Use it (e.g., in a React hook)
|
|
181
|
+
* // let machine = userMachine;
|
|
182
|
+
* // machine = await machine.fetch(123); // Transitions to Loading, then Success/Error
|
|
183
|
+
* ```
|
|
184
|
+
*
|
|
185
|
+
* @note This is a simplified example. For a real-world implementation, you would
|
|
186
|
+
* typically use this machine with a runner (like `runMachine` or `useMachine`) to
|
|
187
|
+
* manage the async transitions and state updates automatically.
|
|
188
|
+
*/
|
|
189
|
+
export declare function createFetchMachine<T, E = Error>(config: FetchMachineConfig<T, E>): FetchMachine<T, E>;
|
|
190
|
+
/**
|
|
191
|
+
* The core type for a Parallel Machine.
|
|
192
|
+
* It combines two machines, M1 and M2, into a single, unified type.
|
|
193
|
+
* @template M1 - The first machine in the parallel composition.
|
|
194
|
+
* @template M2 - The second machine in the parallel composition.
|
|
195
|
+
*/
|
|
196
|
+
export type ParallelMachine<M1 extends Machine<any>, M2 extends Machine<any>> = Machine<Context<M1> & Context<M2>> & {
|
|
197
|
+
[K in keyof Transitions<M1>]: Transitions<M1>[K] extends (...args: infer A) => infer R ? R extends Machine<any> ? (...args: A) => ParallelMachine<R, M2> : never : never;
|
|
198
|
+
} & {
|
|
199
|
+
[K in keyof Transitions<M2>]: Transitions<M2>[K] extends (...args: infer A) => infer R ? R extends Machine<any> ? (...args: A) => ParallelMachine<M1, R> : never : never;
|
|
200
|
+
};
|
|
201
|
+
/**
|
|
202
|
+
* Creates a parallel machine by composing two independent machines.
|
|
203
|
+
*
|
|
204
|
+
* This function takes two machines and merges them into a single machine entity.
|
|
205
|
+
* Transitions from either machine can be called, and they will only affect
|
|
206
|
+
* their respective part of the combined state.
|
|
207
|
+
*
|
|
208
|
+
* NOTE: This primitive assumes that the transition names between the two
|
|
209
|
+
* machines do not collide. If both machines have a transition named `next`,
|
|
210
|
+
* the behavior is undefined.
|
|
211
|
+
*
|
|
212
|
+
* @param m1 The first machine instance.
|
|
213
|
+
* @param m2 The second machine instance.
|
|
214
|
+
* @returns A new ParallelMachine instance.
|
|
215
|
+
*/
|
|
216
|
+
export declare function createParallelMachine<M1 extends Machine<any>, M2 extends Machine<any>>(m1: M1, m2: M2): ParallelMachine<M1, M2>;
|
|
217
|
+
export type RemapTransitions<M extends Machine<any>, T> = {
|
|
218
|
+
[K in keyof Transitions<M>]: Transitions<M>[K] extends (...args: infer A) => any ? (...args: A) => T : never;
|
|
219
|
+
};
|
|
220
|
+
export {};
|
|
221
|
+
//# sourceMappingURL=higher-order.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"higher-order.d.ts","sourceRoot":"","sources":["../../src/higher-order.ts"],"names":[],"mappings":"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"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -341,4 +341,6 @@ export { extractMachine, extractMachines, generateChart, type MachineConfig, typ
|
|
|
341
341
|
export { extractFunctionMetadata, extractStateNode, generateStatechart, extractFromInstance } from './runtime-extract';
|
|
342
342
|
export { RUNTIME_META, type RuntimeTransitionMeta } from './primitives';
|
|
343
343
|
export * from './multi';
|
|
344
|
+
export * from './higher-order';
|
|
345
|
+
export { isState, createEvent, mergeContext, pipeTransitions, logState, call, bindTransitions, BoundMachine } from './utils';
|
|
344
346
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"primitives.d.ts","sourceRoot":"","sources":["../../src/primitives.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAMH;;;GAGG;AACH,eAAO,MAAM,QAAQ,eAAwB,CAAC;AAE9C;;;;GAIG;AACH,eAAO,MAAM,YAAY,eAAqC,CAAC;AAE/D;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;AAE3D;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,+CAA+C;IAC/C,IAAI,EAAE,MAAM,CAAC;IACb,mDAAmD;IACnD,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,8DAA8D;IAC9D,GAAG,EAAE,MAAM,CAAC;IACZ,mDAAmD;IACnD,MAAM,EAAE,gBAAgB,CAAC;IACzB,iDAAiD;IACjD,OAAO,EAAE,gBAAgB,CAAC;IAC1B,4BAA4B;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,qDAAqD;IACrD,IAAI,EAAE,MAAM,CAAC;IACb,4BAA4B;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,uDAAuD;IACvD,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,sDAAsD;IACtD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,8EAA8E;IAC9E,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC;IACrB,+EAA+E;IAC/E,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,oEAAoE;IACpE,OAAO,CAAC,EAAE,UAAU,EAAE,CAAC;CACxB;AAED;;;;GAIG;AACH,MAAM,MAAM,QAAQ,CAClB,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EACjC,CAAC,SAAS,cAAc,IACtB,CAAC,GAAG;IAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;CAAE,CAAC;AAM1B;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACvD,MAAM,CAAC,EAAE;QACP,GAAG,EAAE,MAAM,CAAC;QACZ,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACzD;
|
|
1
|
+
{"version":3,"file":"primitives.d.ts","sourceRoot":"","sources":["../../src/primitives.ts"],"names":[],"mappings":"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"}
|