@appmachina/node 0.0.1 → 2.2.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.
@@ -0,0 +1,377 @@
1
+ import { AppMachinaError, ConsentState, ConsentState as ConsentState$1, Environment, Environment as Environment$1, EventProperties, EventProperties as EventProperties$1, UserProperties, UserProperties as UserProperties$1 } from "@appmachina/core-wasm";
2
+
3
+ //#region src/standard-events.d.ts
4
+
5
+ /**
6
+ * Predefined standard event name constants.
7
+ *
8
+ * Usage:
9
+ * ```ts
10
+ * import { StandardEvents } from '@appmachina/node';
11
+ * appmachina.track(distinctId, StandardEvents.PURCHASE, { amount: 9.99 });
12
+ * ```
13
+ */
14
+ declare const StandardEvents: {
15
+ readonly APP_INSTALL: "app_install";
16
+ readonly APP_OPEN: "app_open";
17
+ readonly LOGIN: "login";
18
+ readonly SIGN_UP: "sign_up";
19
+ readonly REGISTER: "register";
20
+ readonly PURCHASE: "purchase_success";
21
+ readonly ADD_TO_CART: "add_to_cart";
22
+ readonly ADD_TO_WISHLIST: "add_to_wishlist";
23
+ readonly INITIATE_CHECKOUT: "initiate_checkout";
24
+ readonly BEGIN_CHECKOUT: "begin_checkout";
25
+ readonly START_TRIAL: "start_trial";
26
+ readonly SUBSCRIBE: "subscribe";
27
+ readonly LEVEL_START: "level_start";
28
+ readonly LEVEL_COMPLETE: "level_complete";
29
+ readonly TUTORIAL_COMPLETE: "tutorial_complete";
30
+ readonly SEARCH: "search";
31
+ readonly VIEW_ITEM: "view_item";
32
+ readonly VIEW_CONTENT: "view_content";
33
+ readonly SHARE: "share";
34
+ readonly DEEP_LINK: "deep_link_opened";
35
+ readonly SCREEN_VIEW: "screen_view";
36
+ };
37
+ /** Union type of all standard event name strings. */
38
+ type StandardEventName = (typeof StandardEvents)[keyof typeof StandardEvents];
39
+ //#endregion
40
+ //#region src/commerce.d.ts
41
+ /** Event properties bag accepted by commerce functions. */
42
+ type EventProperties$2 = Record<string, unknown>;
43
+ /** Minimal AppMachina SDK interface required by the Node commerce module. */
44
+ interface NodeCommerceTracker {
45
+ track(distinctId: string, event: string, properties?: Record<string, any>): void;
46
+ }
47
+ /** Purchase details for trackPurchase. */
48
+ interface PurchaseParams {
49
+ productId: string;
50
+ /** Unit price of the item. Revenue is computed as `price * quantity`. */
51
+ price: number;
52
+ currency: string;
53
+ transactionId?: string;
54
+ quantity?: number;
55
+ isRestored?: boolean;
56
+ store?: string;
57
+ properties?: EventProperties$2;
58
+ }
59
+ /** Subscription details for trackSubscription. */
60
+ interface SubscriptionParams {
61
+ productId: string;
62
+ /** Unit price of the subscription. */
63
+ price: number;
64
+ currency: string;
65
+ period?: string;
66
+ transactionId?: string;
67
+ isRenewal?: boolean;
68
+ isTrial?: boolean;
69
+ subscriptionGroupId?: string;
70
+ originalTransactionId?: string;
71
+ properties?: EventProperties$2;
72
+ }
73
+ /** Cart item for order and checkout tracking. */
74
+ interface CartItem {
75
+ productId: string;
76
+ name: string;
77
+ price: number;
78
+ quantity?: number;
79
+ category?: string;
80
+ }
81
+ /** Order details for trackOrder. */
82
+ interface OrderParams {
83
+ orderId: string;
84
+ items: CartItem[];
85
+ subtotal: number;
86
+ currency?: string;
87
+ tax?: number;
88
+ shipping?: number;
89
+ discount?: number;
90
+ couponCode?: string;
91
+ properties?: EventProperties$2;
92
+ }
93
+ /** Refund details for trackRefund. */
94
+ interface RefundParams {
95
+ transactionId: string;
96
+ amount: number;
97
+ currency: string;
98
+ reason?: string;
99
+ properties?: EventProperties$2;
100
+ }
101
+ /** Purchase failure details for trackPurchaseFailed. */
102
+ interface PurchaseFailedParams {
103
+ productId: string;
104
+ currency: string;
105
+ errorCode: string | number;
106
+ errorMessage?: string;
107
+ properties?: EventProperties$2;
108
+ }
109
+ /**
110
+ * Track a successful purchase for a specific user.
111
+ *
112
+ * ```ts
113
+ * import { trackPurchase } from '@appmachina/node';
114
+ *
115
+ * trackPurchase(sdk, 'user_123', {
116
+ * productId: 'premium_monthly',
117
+ * price: 9.99,
118
+ * currency: 'USD',
119
+ * transactionId: 'txn_abc123',
120
+ * });
121
+ * ```
122
+ */
123
+ declare function trackPurchase(sdk: NodeCommerceTracker, distinctId: string, params: PurchaseParams): void;
124
+ /**
125
+ * Track a failed purchase attempt for a specific user.
126
+ */
127
+ declare function trackPurchaseFailed(sdk: NodeCommerceTracker, distinctId: string, params: PurchaseFailedParams): void;
128
+ /**
129
+ * Track a subscription purchase or renewal for a specific user.
130
+ *
131
+ * ```ts
132
+ * import { trackSubscription } from '@appmachina/node';
133
+ *
134
+ * trackSubscription(sdk, 'user_123', {
135
+ * productId: 'pro_annual',
136
+ * price: 49.99,
137
+ * currency: 'USD',
138
+ * period: 'P1Y',
139
+ * });
140
+ * ```
141
+ */
142
+ declare function trackSubscription(sdk: NodeCommerceTracker, distinctId: string, params: SubscriptionParams): void;
143
+ /**
144
+ * Track a completed order with multiple line items for a specific user.
145
+ */
146
+ declare function trackOrder(sdk: NodeCommerceTracker, distinctId: string, params: OrderParams): void;
147
+ /**
148
+ * Track an item being added to the cart for a specific user.
149
+ */
150
+ declare function trackAddToCart(sdk: NodeCommerceTracker, distinctId: string, item: CartItem, properties?: EventProperties$2): void;
151
+ /**
152
+ * Track an item being removed from the cart for a specific user.
153
+ */
154
+ declare function trackRemoveFromCart(sdk: NodeCommerceTracker, distinctId: string, item: CartItem, properties?: EventProperties$2): void;
155
+ /**
156
+ * Track beginning the checkout flow for a specific user.
157
+ */
158
+ declare function trackBeginCheckout(sdk: NodeCommerceTracker, distinctId: string, items: CartItem[], currency?: string, properties?: EventProperties$2): void;
159
+ /**
160
+ * Track viewing a product detail page for a specific user.
161
+ */
162
+ declare function trackViewProduct(sdk: NodeCommerceTracker, distinctId: string, productId: string, name: string, price: number, currency?: string, category?: string, properties?: EventProperties$2): void;
163
+ /**
164
+ * Track a refund for a specific user.
165
+ */
166
+ declare function trackRefund(sdk: NodeCommerceTracker, distinctId: string, params: RefundParams): void;
167
+ //#endregion
168
+ //#region src/index.d.ts
169
+ type ErrorListener = (error: Error) => void;
170
+ interface AppMachinaNodeConfig {
171
+ /** Application identifier that scopes events to a specific app. */
172
+ appId: string;
173
+ /** Deployment environment (e.g. "production", "development"). */
174
+ environment: Environment;
175
+ /** Enable verbose debug logging. */
176
+ enableDebug?: boolean;
177
+ /** Override the default AppMachina ingestion endpoint URL. */
178
+ baseUrl?: string;
179
+ /**
180
+ * How often (in milliseconds) the SDK automatically flushes queued events.
181
+ * @default 10000
182
+ */
183
+ flushIntervalMs?: number;
184
+ /**
185
+ * Number of queued events that triggers an automatic flush.
186
+ * @default 20
187
+ */
188
+ flushThreshold?: number;
189
+ /** Maximum number of events to hold in the in-memory queue. Events beyond this limit are dropped. */
190
+ maxQueueSize?: number;
191
+ /** Maximum number of events sent in a single HTTP request batch. */
192
+ maxBatchSize?: number;
193
+ /**
194
+ * Maximum time (in milliseconds) to wait for a final flush during shutdown before giving up.
195
+ * @default 5000
196
+ */
197
+ shutdownFlushTimeoutMs?: number;
198
+ /** Whether to register SIGTERM/SIGINT handlers for graceful shutdown. Default: true */
199
+ handleSignals?: boolean;
200
+ /**
201
+ * Directory where persisted event data is stored.
202
+ * Defaults to `os.tmpdir()` (e.g. `/tmp/appmachina-sdk/<appId>`).
203
+ */
204
+ persistenceDir?: string;
205
+ }
206
+ declare class AppMachinaNode {
207
+ private core;
208
+ private readonly config;
209
+ private readonly enableDebug;
210
+ private readonly baseUrl;
211
+ private readonly shutdownFlushTimeoutMs;
212
+ private isShutDown;
213
+ private readonly errorListeners;
214
+ private static globalSignalHandlersRegistered;
215
+ private static instances;
216
+ private readonly _instanceId;
217
+ private _initDurationMs;
218
+ constructor(config: AppMachinaNodeConfig);
219
+ /**
220
+ * Complete asynchronous initialization: fetches remote config and tracks init timing.
221
+ *
222
+ * Call this after constructing the instance. The constructor handles synchronous
223
+ * setup; this method handles async work (remote config fetch) and fires the
224
+ * `appmachina_init_timing` event.
225
+ */
226
+ init(): Promise<void>;
227
+ /**
228
+ * Track an event for a specific user.
229
+ *
230
+ * Unlike @appmachina/client which stores the user ID via identify(),
231
+ * the Node.js SDK requires a distinctId on every call. This is the
232
+ * correct pattern for server-side SDKs where requests come from
233
+ * many users concurrently.
234
+ */
235
+ track(distinctId: string, eventName: string, properties?: EventProperties): void;
236
+ /**
237
+ * Track a screen view for a specific user.
238
+ */
239
+ screen(distinctId: string, screenName: string, properties?: EventProperties): void;
240
+ /**
241
+ * Set user properties for a specific user.
242
+ *
243
+ * Calls identify(distinctId) first so the core associates
244
+ * these properties with the correct user.
245
+ *
246
+ * Note: identify(distinctId) and setUserProperties are two separate calls.
247
+ * In concurrent server environments, interleaving is possible. For atomic
248
+ * user property updates, the Rust core would need a single
249
+ * identify-and-set-properties API.
250
+ */
251
+ setUserProperties(distinctId: string, properties: UserProperties): void;
252
+ /**
253
+ * Set user properties with "set once" semantics for a specific user.
254
+ *
255
+ * Only properties whose keys have not been previously set via this method
256
+ * are forwarded. Calls identify(distinctId) first so the core associates
257
+ * these properties with the correct user.
258
+ */
259
+ setUserPropertiesOnce(distinctId: string, properties: UserProperties): void;
260
+ /**
261
+ * Associate events for a specific user with a group (company, team, organization).
262
+ *
263
+ * Unlike @appmachina/client which stores the group ID, the Node.js SDK
264
+ * follows the server-side pattern where distinctId is required on every call.
265
+ * The group association is set on the core and a `group` event is tracked
266
+ * with the provided properties.
267
+ */
268
+ group(distinctId: string, groupId: string, properties?: EventProperties): void;
269
+ /**
270
+ * Update consent state.
271
+ *
272
+ * Consent applies globally to this SDK instance, not per-user.
273
+ * All events from this instance will respect the configured consent state.
274
+ */
275
+ setConsent(consent: ConsentState): void;
276
+ /**
277
+ * Get the persistent instance ID for this server instance.
278
+ *
279
+ * The instance ID is a UUID generated on first init and persisted to the
280
+ * filesystem so it survives process restarts. Stored in
281
+ * `.appmachina-instance-id` inside the persistence directory.
282
+ */
283
+ getInstanceId(): string;
284
+ /**
285
+ * Get current session ID.
286
+ */
287
+ getSessionId(): string;
288
+ /**
289
+ * Get current consent state.
290
+ */
291
+ getConsentState(): ConsentState;
292
+ /**
293
+ * Get number of queued events.
294
+ */
295
+ queueDepth(): number;
296
+ /**
297
+ * Flush all queued events to the server.
298
+ */
299
+ flush(): Promise<void>;
300
+ /**
301
+ * Gracefully shut down: flush remaining events, then stop.
302
+ */
303
+ shutdown(): Promise<void>;
304
+ /**
305
+ * Register an error listener. Errors from track/screen/flush
306
+ * that would otherwise be silently dropped are forwarded here.
307
+ */
308
+ on(event: 'error', listener: ErrorListener): this;
309
+ /**
310
+ * Remove a previously registered error listener.
311
+ */
312
+ off(event: 'error', listener: ErrorListener): this;
313
+ private emitError;
314
+ /**
315
+ * Fire-and-forget POST to /users/properties.
316
+ * Best-effort: errors are silently swallowed.
317
+ */
318
+ private sendUserPropertiesAsync;
319
+ private registerSignalHandlers;
320
+ }
321
+ //#endregion
322
+ //#region src/express.d.ts
323
+ interface AppMachinaExpressOptions {
324
+ /** Track each HTTP request as an event. @default true */
325
+ trackRequests?: boolean;
326
+ /** Include response time in request event properties. @default true */
327
+ trackResponseTime?: boolean;
328
+ /** Capture attribution URL parameters (fbclid, gclid, utm_source, etc.) from request query strings. @default true */
329
+ captureUrlParams?: boolean;
330
+ /** URL paths to exclude from tracking. @default ['/health', '/healthz', '/ready', '/favicon.ico'] */
331
+ ignorePaths?: string[];
332
+ }
333
+ interface Request {
334
+ method: string;
335
+ path: string;
336
+ url: string;
337
+ headers: Record<string, string | string[] | undefined>;
338
+ query?: Record<string, unknown>;
339
+ ip?: string;
340
+ }
341
+ interface Response {
342
+ statusCode: number;
343
+ on(event: string, callback: () => void): void;
344
+ }
345
+ type NextFunction = (err?: unknown) => void;
346
+ /**
347
+ * Extract attribution parameters from the request URL query string.
348
+ *
349
+ * Tries `req.query` first (populated by Express's query parser) and falls
350
+ * back to parsing `req.url` with `URLSearchParams` for minimal frameworks.
351
+ */
352
+ declare function extractUrlParams(req: Request): Record<string, string>;
353
+ /**
354
+ * Express middleware that automatically tracks HTTP requests as events.
355
+ *
356
+ * Usage:
357
+ * import { AppMachinaNode } from '@appmachina/node';
358
+ * import { appMachinaExpressMiddleware } from '@appmachina/node/express';
359
+ *
360
+ * const sdk = new AppMachinaNode({ appId: '...', environment: 'production' });
361
+ * app.use(appMachinaExpressMiddleware(sdk));
362
+ */
363
+ declare function appMachinaExpressMiddleware(sdk: AppMachinaNode, options?: AppMachinaExpressOptions): (req: Request, res: Response, next: NextFunction) => void;
364
+ /**
365
+ * Express route handler that returns SDK debug information as JSON.
366
+ *
367
+ * Usage:
368
+ * import { appMachinaDebugMiddleware } from '@appmachina/node/express';
369
+ *
370
+ * app.get('/__appmachina/debug', appMachinaDebugMiddleware(sdk));
371
+ */
372
+ declare function appMachinaDebugMiddleware(sdk: AppMachinaNode): (_req: unknown, res: {
373
+ json: (body: unknown) => void;
374
+ }) => void;
375
+ //#endregion
376
+ export { StandardEvents as A, trackPurchase as C, trackSubscription as D, trackRemoveFromCart as E, trackViewProduct as O, trackOrder as S, trackRefund as T, PurchaseParams as _, AppMachinaError as a, trackAddToCart as b, ConsentState$1 as c, EventProperties$1 as d, UserProperties$1 as f, PurchaseFailedParams as g, OrderParams as h, extractUrlParams as i, StandardEventName as k, Environment$1 as l, NodeCommerceTracker as m, appMachinaDebugMiddleware as n, AppMachinaNode as o, CartItem as p, appMachinaExpressMiddleware as r, AppMachinaNodeConfig as s, AppMachinaExpressOptions as t, ErrorListener as u, RefundParams as v, trackPurchaseFailed as w, trackBeginCheckout as x, SubscriptionParams as y };
377
+ //# sourceMappingURL=express-D5w2Pl15.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"express-D5w2Pl15.d.ts","names":[],"sources":["../src/standard-events.ts","../src/commerce.ts","../src/index.ts","../src/express.ts"],"sourcesContent":[],"mappings":";;;;;;;AAaA;AAyBA;;;;ACvBA;AAGiB,cDLJ,cCKuB,EAAA;EAKnB,SAAA,WAAc,EAAA,aAShB;EAIE,SAAA,QAAA,EAAA,UAAkB;EAelB,SAAA,KAAQ,EAAA,OAAA;EASR,SAAA,OAAW,EAAA,SAEnB;EAWQ,SAAA,QAAY,EAAA,UAKd;EAIE,SAAA,QAAA,EAAA,kBAKF;EAqBC,SAAA,WAAa,EAAA,aACtB;EAuBS,SAAA,eAAmB,EAAA,iBAC5B;EAiCS,SAAA,iBAAiB,EAAA,mBAC1B;EA+BS,SAAA,cAAU,EACnB,gBAAA;EA+BS,SAAA,WAAc,EAAA,aAAA;EACvB,SAAA,SAAA,EAAA,WAAA;EAEC,SAAA,WAAA,EAAA,aAAA;EACO,SAAA,cAAA,EAAA,gBAAA;EAAe,SAAA,iBAAA,EAAA,mBAAA;EAmBd,SAAA,MAAA,EAAA,QAAmB;EAC5B,SAAA,SAAA,EAAA,WAAA;EAEC,SAAA,YAAA,EAAA,cAAA;EACO,SAAA,KAAA,EAAA,OAAA;EAAe,SAAA,SAAA,EAAA,kBAAA;EAkBd,SAAA,WAAA,EAAkB,aAAA;CAC3B;;AAIQ,KDlPH,iBAAA,GCkPG,CAAA,ODlPyB,cCkPzB,CAAA,CAAA,MAAA,ODlPsD,cCkPtD,CAAA;;;;KAzQH,iBAAA,GAAkB;;ADFjB,UCKI,mBAAA,CDiBP;EAGE,KAAA,CAAA,UAAA,EAAA,MAAiB,EAAA,KAAA,EAAW,MAAA,EAAA,UAA2C,CAAd,ECnBb,MDmBa,CAAA,MAAc,EAAA,GAAA,CAAA,CAAA,EAAA,IAAA;;;UCflE,cAAA;EARL,SAAA,EAAA,MAAA;EAGK;EAKA,KAAA,EAAA,MAAA;EAaA,QAAA,EAAA,MAAA;EAeA,aAAQ,CAAA,EAAA,MAAA;EASR,QAAA,CAAA,EAAA,MAAW;EAaX,UAAA,CAAA,EAAA,OAAY;EASZ,KAAA,CAAA,EAAA,MAAA;EA0BD,UAAA,CAAA,EA5ED,iBA6ER;AAuBP;AAkCA;AAgCgB,UAlKC,kBAAA,CAmKV;EA+BS,SAAA,EAAA,MAAc;EACvB;EAEC,KAAA,EAAA,MAAA;EACO,QAAA,EAAA,MAAA;EAAe,MAAA,CAAA,EAAA,MAAA;EAmBd,aAAA,CAAA,EAAA,MAAmB;EAC5B,SAAA,CAAA,EAAA,OAAA;EAEC,OAAA,CAAA,EAAA,OAAA;EACO,mBAAA,CAAA,EAAA,MAAA;EAAe,qBAAA,CAAA,EAAA,MAAA;EAkBd,UAAA,CAAA,EApOD,iBAoOmB;;;AAKnB,UArOE,QAAA,CAqOF;EAAe,SAAA,EAAA,MAAA;EAqBd,IAAA,EAAA,MAAA;EA6BA,KAAA,EAAA,MAAA;;;;ACjRhB;AAEiB,UDCA,WAAA,CCDoB;EA0CxB,OAAA,EAAA,MAAA;EAaS,KAAA,EDpDb,QCoDa,EAAA;EAsDN,QAAA,EAAA,MAAA;EA2C4C,QAAA,CAAA,EAAA,MAAA;EA8BE,GAAA,CAAA,EAAA,MAAA;EA6BV,QAAA,CAAA,EAAA,MAAA;EA2BI,QAAA,CAAA,EAAA,MAAA;EA4BE,UAAA,CAAA,EAAA,MAAA;EAyBpC,UAAA,CAAA,EDzRP,iBCyRO;;;AAwDF,UD7UH,YAAA,CC6UG;EAyBW,aAAA,EAAA,MAAA;EAQC,MAAA,EAAA,MAAA;EAAa,QAAA,EAAA,MAAA;;eDzW9B;;AE9Df;AAWU,UFuDO,oBAAA,CElDP;EAIA,SAAA,EAAQ,MAAA;EAKb,QAAA,EAAA,MAAY;EAQD,SAAA,EAAA,MAAA,GAAgB,MAAA;EA2ChB,YAAA,CAAA,EAAA,MAAA;EACT,UAAA,CAAA,EFNQ,iBEMR;;;;;;AAsFP;;;;;;;;;;iBFvEgB,aAAA,MACT,iDAEG;;;;iBAqBM,mBAAA,MACT,iDAEG;;;;;;;;;;;;;;;iBA+BM,iBAAA,MACT,iDAEG;;;;iBA6BM,UAAA,MACT,iDAEG;;;;iBA6BM,cAAA,MACT,+CAEC,uBACO;;;;iBAmBC,mBAAA,MACT,+CAEC,uBACO;;;;iBAkBC,kBAAA,MACT,gDAEE,4CAEM;;;;iBAqBC,gBAAA,MACT,4IAOQ;;;;iBAqBC,WAAA,MACT,iDAEG;;;AA3TO,KCuCL,aAAA,GDvCwB,CAAA,KAAA,ECuCA,KDtCoB,EAAA,GAAM,IAAA;AAI7C,UCoCA,oBAAA,CD3BF;EAIE;EAeA,KAAA,EAAA,MAAQ;EASR;EAaA,WAAA,ECVF,WDUc;EASZ;EA0BD,WAAA,CAAA,EAAA,OAAa;EAwBb;EAkCA,OAAA,CAAA,EAAA,MAAA;EAgCA;AAgChB;;;EAIe,eAAA,CAAA,EAAA,MAAA;EAAe;AAmB9B;;;EAIe,cAAA,CAAA,EAAA,MAAA;EAAe;EAkBd,YAAA,CAAA,EAAA,MAAkB;EAC3B;EAEE,YAAA,CAAA,EAAA,MAAA;EAEM;;AAqBf;AA6BA;;;;ECjRY;AAEZ;AA0CA;;EAmEgB,cAAA,CAAA,EAAA,MAAA;;AAyE8C,cA5IjD,cAAA,CA4IiD;EA6BV,QAAA,IAAA;EA2BI,iBAAA,MAAA;EA4BE,iBAAA,WAAA;EAyBpC,iBAAA,OAAA;EA8BD,iBAAA,sBAAA;EAcJ,QAAA,UAAA;EAYG,iBAAA,cAAA;EAyBW,eAAA,8BAAA;EAQC,eAAA,SAAA;EAAa,iBAAA,WAAA;;sBArUvB;;AClGtB;AASC;AAOe;AAIE;AAalB;AA2CA;EACO,IAAA,CAAA,CAAA,ED2ES,OC3ET,CAAA,IAAA,CAAA;EACI;;;;;AAqFX;;;4DDgC4D;;;;8DA8BE;;;;;;;;;;;;oDA6BV;;;;;;;;wDA2BI;;;;;;;;;0DA4BE;;;;;;;sBAyBpC;;;;;;;;;;;;;;;;qBA8BD;;;;;;;;WAcJ;;;;cAYG;;;;;+BAyBW;;;;gCAQC;;;;;;;;;;;UCvaf,wBAAA;;EHHJ,aAAA,CAAA,EAAA,OAsBH;EAGE;;;;ECvBA;EAGK,WAAA,CAAA,EAAA,MAAA,EAAmB;AAKpC;AAaA,UETU,OAAA,CFSO;EAeA,MAAA,EAAA,MAAQ;EASR,IAAA,EAAA,MAAA;EAaA,GAAA,EAAA,MAAA;EASA,OAAA,EEnDN,MFmDM,CAAA,MAAA,EAAoB,MAAA,GAAA,MAKtB,EAAA,GAAA,SAAe,CAAA;EAqBd,KAAA,CAAA,EE5EN,MF4EM,CAAA,MAAa,EAAA,OACtB,CAAA;EAuBS,EAAA,CAAA,EAAA,MAAA;AAkChB;AAgCA,UElKU,QAAA,CFkKgB;EAgCV,UAAA,EAAA,MAAc;EACvB,EAAA,CAAA,KAAA,EAAA,MAAA,EAAA,QAAA,EAAA,GAAA,GAAA,IAAA,CAAA,EAAA,IAAA;;KE9LF,YAAA,GFiMU,CAAA,GAAA,CAAA,EAAA,OAAA,EAAA,GAAA,IAAA;;AAmBf;;;;;AAsBgB,iBElOA,gBAAA,CFkOkB,GAAA,EElOI,OFkOJ,CAAA,EElOc,MFkOd,CAAA,MAAA,EAAA,MAAA,CAAA;;;;;AA0BlC;AA6BA;;;;ACjRA;AAEiB,iBCiCD,2BAAA,CD7BU,GAAA,EC8BnB,cD9BmB,EAAA,OAAA,CAAA,EC+Bf,wBD/Be,CAAA,EAAA,CAAA,GAAA,EC0CX,OD1CW,EAAA,GAAA,EC0CG,QD1CH,EAAA,IAAA,EC0CmB,YD1CnB,EAAA,GAAA,IAAA;AAsC1B;;;;;;;;AAyPsB,iBC3KN,yBAAA,CD2KM,GAAA,EC3KyB,cD2KzB,CAAA,EAAA,CAAA,IAAA,EAAA,OAAA,EAAA,GAAA,EAAA;EA8BD,IAAA,EAAA,CAAA,IAAA,EAAA,OAAA,EAAA,GAAA,IAAA;CAcJ,EAAA,GAAA,IAAA"}
@@ -0,0 +1,3 @@
1
+ import "./persistence-ChBsyTkr.js";
2
+ import { i as extractUrlParams, n as appMachinaDebugMiddleware, r as appMachinaExpressMiddleware, t as AppMachinaExpressOptions } from "./express-D5w2Pl15.js";
3
+ export { AppMachinaExpressOptions, appMachinaDebugMiddleware, appMachinaExpressMiddleware, extractUrlParams };
@@ -0,0 +1,3 @@
1
+ import { n as appMachinaExpressMiddleware, r as extractUrlParams, t as appMachinaDebugMiddleware } from "./express-CeETK4sI.js";
2
+
3
+ export { appMachinaDebugMiddleware, appMachinaExpressMiddleware, extractUrlParams };
@@ -0,0 +1,3 @@
1
+ import { t as FilePersistence } from "./persistence-ChBsyTkr.js";
2
+ import { A as StandardEvents, C as trackPurchase, D as trackSubscription, E as trackRemoveFromCart, O as trackViewProduct, S as trackOrder, T as trackRefund, _ as PurchaseParams, a as AppMachinaError, b as trackAddToCart, c as ConsentState, d as EventProperties, f as UserProperties, g as PurchaseFailedParams, h as OrderParams, k as StandardEventName, l as Environment, m as NodeCommerceTracker, n as appMachinaDebugMiddleware, o as AppMachinaNode, p as CartItem, s as AppMachinaNodeConfig, u as ErrorListener, v as RefundParams, w as trackPurchaseFailed, x as trackBeginCheckout, y as SubscriptionParams } from "./express-D5w2Pl15.js";
3
+ export { AppMachinaError, AppMachinaNode, AppMachinaNodeConfig, CartItem, ConsentState, Environment, ErrorListener, EventProperties, FilePersistence, NodeCommerceTracker, OrderParams, PurchaseFailedParams, PurchaseParams, RefundParams, StandardEventName, StandardEvents, SubscriptionParams, UserProperties, appMachinaDebugMiddleware, trackAddToCart, trackBeginCheckout, trackOrder, trackPurchase, trackPurchaseFailed, trackRefund, trackRemoveFromCart, trackSubscription, trackViewProduct };