@shware/workflow 5.0.0 → 5.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_virtual/_rolldown/runtime.cjs +1 -2
- package/dist/apns-relay.cjs +1 -2
- package/dist/apns-relay.d.cts +0 -2
- package/dist/apns-relay.d.cts.map +1 -1
- package/dist/apns-relay.d.mts +0 -2
- package/dist/apns-relay.d.mts.map +1 -1
- package/dist/apns-relay.mjs +1 -2
- package/dist/apns.cjs +1 -2
- package/dist/apns.d.cts +0 -2
- package/dist/apns.d.cts.map +1 -1
- package/dist/apns.d.mts +0 -2
- package/dist/apns.d.mts.map +1 -1
- package/dist/apns.mjs +1 -2
- package/dist/aws/engine-step.cjs +1 -2
- package/dist/aws/engine-step.d.cts +0 -2
- package/dist/aws/engine-step.d.cts.map +1 -1
- package/dist/aws/engine-step.d.mts +0 -2
- package/dist/aws/engine-step.d.mts.map +1 -1
- package/dist/aws/engine-step.mjs +1 -2
- package/dist/aws/function-url.cjs +1 -2
- package/dist/aws/function-url.d.cts +0 -2
- package/dist/aws/function-url.d.cts.map +1 -1
- package/dist/aws/function-url.d.mts +0 -2
- package/dist/aws/function-url.d.mts.map +1 -1
- package/dist/aws/function-url.mjs +1 -2
- package/dist/aws/index.cjs +1 -2
- package/dist/aws/index.d.cts +0 -2
- package/dist/aws/index.d.cts.map +1 -1
- package/dist/aws/index.d.mts +0 -2
- package/dist/aws/index.d.mts.map +1 -1
- package/dist/aws/index.mjs +1 -2
- package/dist/aws/instances.cjs +1 -2
- package/dist/aws/instances.d.cts +0 -2
- package/dist/aws/instances.d.cts.map +1 -1
- package/dist/aws/instances.d.mts +0 -2
- package/dist/aws/instances.d.mts.map +1 -1
- package/dist/aws/instances.mjs +1 -2
- package/dist/aws/lambda-api.cjs +1 -2
- package/dist/aws/lambda-api.d.cts +0 -2
- package/dist/aws/lambda-api.d.cts.map +1 -1
- package/dist/aws/lambda-api.d.mts +0 -2
- package/dist/aws/lambda-api.d.mts.map +1 -1
- package/dist/aws/lambda-api.mjs +1 -2
- package/dist/client.cjs +1 -2
- package/dist/client.d.cts +0 -2
- package/dist/client.d.cts.map +1 -1
- package/dist/client.d.mts +0 -2
- package/dist/client.d.mts.map +1 -1
- package/dist/client.mjs +1 -2
- package/dist/cloudflare/bindings.cjs +1 -2
- package/dist/cloudflare/bindings.d.cts +0 -2
- package/dist/cloudflare/bindings.d.cts.map +1 -1
- package/dist/cloudflare/bindings.d.mts +0 -2
- package/dist/cloudflare/bindings.d.mts.map +1 -1
- package/dist/cloudflare/bindings.mjs +1 -2
- package/dist/cloudflare/runner.cjs +1 -2
- package/dist/cloudflare/runner.d.cts +0 -2
- package/dist/cloudflare/runner.d.cts.map +1 -1
- package/dist/cloudflare/runner.d.mts +0 -2
- package/dist/cloudflare/runner.d.mts.map +1 -1
- package/dist/cloudflare/runner.mjs +1 -2
- package/dist/cloudflare/worker.cjs +1 -2
- package/dist/cloudflare/worker.d.cts +0 -2
- package/dist/cloudflare/worker.d.cts.map +1 -1
- package/dist/cloudflare/worker.d.mts +0 -2
- package/dist/cloudflare/worker.d.mts.map +1 -1
- package/dist/cloudflare/worker.mjs +1 -2
- package/dist/cloudflare/workers.d.cts +0 -2
- package/dist/cloudflare/workers.d.cts.map +1 -1
- package/dist/cloudflare/workers.d.mts +0 -2
- package/dist/cloudflare/workers.d.mts.map +1 -1
- package/dist/config.cjs +1 -2
- package/dist/config.d.cts +0 -2
- package/dist/config.d.cts.map +1 -1
- package/dist/config.d.mts +0 -2
- package/dist/config.d.mts.map +1 -1
- package/dist/config.mjs +1 -2
- package/dist/contract.cjs +1 -2
- package/dist/contract.d.cts +0 -2
- package/dist/contract.d.cts.map +1 -1
- package/dist/contract.d.mts +0 -2
- package/dist/contract.d.mts.map +1 -1
- package/dist/contract.mjs +1 -2
- package/dist/dsl/action.cjs +1 -2
- package/dist/dsl/action.d.cts +0 -2
- package/dist/dsl/action.d.cts.map +1 -1
- package/dist/dsl/action.d.mts +0 -2
- package/dist/dsl/action.d.mts.map +1 -1
- package/dist/dsl/action.mjs +1 -2
- package/dist/dsl/base.cjs +1 -2
- package/dist/dsl/base.d.cts +0 -2
- package/dist/dsl/base.d.cts.map +1 -1
- package/dist/dsl/base.d.mts +0 -2
- package/dist/dsl/base.d.mts.map +1 -1
- package/dist/dsl/base.mjs +1 -2
- package/dist/dsl/bundle.cjs +1 -2
- package/dist/dsl/bundle.d.cts +0 -2
- package/dist/dsl/bundle.d.cts.map +1 -1
- package/dist/dsl/bundle.d.mts +0 -2
- package/dist/dsl/bundle.d.mts.map +1 -1
- package/dist/dsl/bundle.mjs +1 -2
- package/dist/dsl/condition.cjs +1 -2
- package/dist/dsl/condition.d.cts +0 -2
- package/dist/dsl/condition.d.cts.map +1 -1
- package/dist/dsl/condition.d.mts +0 -2
- package/dist/dsl/condition.d.mts.map +1 -1
- package/dist/dsl/condition.mjs +1 -2
- package/dist/dsl/flow.cjs +1 -2
- package/dist/dsl/flow.d.cts +0 -2
- package/dist/dsl/flow.d.cts.map +1 -1
- package/dist/dsl/flow.d.mts +0 -2
- package/dist/dsl/flow.d.mts.map +1 -1
- package/dist/dsl/flow.mjs +1 -2
- package/dist/dsl/refs.cjs +1 -2
- package/dist/dsl/refs.d.cts +0 -2
- package/dist/dsl/refs.d.cts.map +1 -1
- package/dist/dsl/refs.d.mts +0 -2
- package/dist/dsl/refs.d.mts.map +1 -1
- package/dist/dsl/refs.mjs +1 -2
- package/dist/dsl/template.cjs +1 -2
- package/dist/dsl/template.d.cts +0 -2
- package/dist/dsl/template.d.cts.map +1 -1
- package/dist/dsl/template.d.mts +0 -2
- package/dist/dsl/template.d.mts.map +1 -1
- package/dist/dsl/template.mjs +1 -2
- package/dist/dsl/trigger.cjs +1 -2
- package/dist/dsl/trigger.d.cts +0 -2
- package/dist/dsl/trigger.d.cts.map +1 -1
- package/dist/dsl/trigger.d.mts +0 -2
- package/dist/dsl/trigger.d.mts.map +1 -1
- package/dist/dsl/trigger.mjs +1 -2
- package/dist/dsl/workflow.cjs +1 -2
- package/dist/dsl/workflow.d.cts +0 -2
- package/dist/dsl/workflow.d.cts.map +1 -1
- package/dist/dsl/workflow.d.mts +0 -2
- package/dist/dsl/workflow.d.mts.map +1 -1
- package/dist/dsl/workflow.mjs +1 -2
- package/dist/email-context.cjs +1 -2
- package/dist/email-context.d.cts +0 -2
- package/dist/email-context.d.cts.map +1 -1
- package/dist/email-context.d.mts +0 -2
- package/dist/email-context.d.mts.map +1 -1
- package/dist/email-context.mjs +1 -2
- package/dist/email-sender.cjs +1 -2
- package/dist/email-sender.d.cts +0 -2
- package/dist/email-sender.d.cts.map +1 -1
- package/dist/email-sender.d.mts +0 -2
- package/dist/email-sender.d.mts.map +1 -1
- package/dist/email-sender.mjs +1 -2
- package/dist/email.cjs +1 -2
- package/dist/email.d.cts +0 -2
- package/dist/email.d.cts.map +1 -1
- package/dist/email.d.mts +0 -2
- package/dist/email.d.mts.map +1 -1
- package/dist/email.mjs +1 -2
- package/dist/engine/actions.cjs +1 -2
- package/dist/engine/actions.d.cts +0 -2
- package/dist/engine/actions.d.cts.map +1 -1
- package/dist/engine/actions.d.mts +0 -2
- package/dist/engine/actions.d.mts.map +1 -1
- package/dist/engine/actions.mjs +1 -2
- package/dist/engine/bucket.cjs +1 -2
- package/dist/engine/bucket.d.cts +0 -2
- package/dist/engine/bucket.d.cts.map +1 -1
- package/dist/engine/bucket.d.mts +0 -2
- package/dist/engine/bucket.d.mts.map +1 -1
- package/dist/engine/bucket.mjs +1 -2
- package/dist/engine/condition.cjs +1 -2
- package/dist/engine/condition.d.cts +0 -2
- package/dist/engine/condition.d.cts.map +1 -1
- package/dist/engine/condition.d.mts +0 -2
- package/dist/engine/condition.d.mts.map +1 -1
- package/dist/engine/condition.mjs +1 -2
- package/dist/engine/duration.cjs +1 -2
- package/dist/engine/duration.d.cts +0 -2
- package/dist/engine/duration.d.cts.map +1 -1
- package/dist/engine/duration.d.mts +0 -2
- package/dist/engine/duration.d.mts.map +1 -1
- package/dist/engine/duration.mjs +1 -2
- package/dist/engine/interpreter.cjs +1 -2
- package/dist/engine/interpreter.d.cts +0 -2
- package/dist/engine/interpreter.d.cts.map +1 -1
- package/dist/engine/interpreter.d.mts +0 -2
- package/dist/engine/interpreter.d.mts.map +1 -1
- package/dist/engine/interpreter.mjs +1 -2
- package/dist/engine/ports.d.cts +0 -2
- package/dist/engine/ports.d.cts.map +1 -1
- package/dist/engine/ports.d.mts +0 -2
- package/dist/engine/ports.d.mts.map +1 -1
- package/dist/engine/recipient.cjs +1 -2
- package/dist/engine/recipient.d.cts +0 -2
- package/dist/engine/recipient.d.cts.map +1 -1
- package/dist/engine/recipient.d.mts +0 -2
- package/dist/engine/recipient.d.mts.map +1 -1
- package/dist/engine/recipient.mjs +1 -2
- package/dist/engine/retry.cjs +1 -2
- package/dist/engine/retry.d.cts +0 -2
- package/dist/engine/retry.d.cts.map +1 -1
- package/dist/engine/retry.d.mts +0 -2
- package/dist/engine/retry.d.mts.map +1 -1
- package/dist/engine/retry.mjs +1 -2
- package/dist/engine/time-scale.cjs +1 -2
- package/dist/engine/time-scale.d.cts +0 -2
- package/dist/engine/time-scale.d.cts.map +1 -1
- package/dist/engine/time-scale.d.mts +0 -2
- package/dist/engine/time-scale.d.mts.map +1 -1
- package/dist/engine/time-scale.mjs +1 -2
- package/dist/engine/time-window.cjs +1 -2
- package/dist/engine/time-window.d.cts +0 -2
- package/dist/engine/time-window.d.cts.map +1 -1
- package/dist/engine/time-window.d.mts +0 -2
- package/dist/engine/time-window.d.mts.map +1 -1
- package/dist/engine/time-window.mjs +1 -2
- package/dist/fcm.cjs +1 -2
- package/dist/fcm.d.cts +0 -2
- package/dist/fcm.d.cts.map +1 -1
- package/dist/fcm.d.mts +0 -2
- package/dist/fcm.d.mts.map +1 -1
- package/dist/fcm.mjs +1 -2
- package/dist/hash.cjs +1 -2
- package/dist/hash.d.cts +0 -2
- package/dist/hash.d.cts.map +1 -1
- package/dist/hash.d.mts +0 -2
- package/dist/hash.d.mts.map +1 -1
- package/dist/hash.mjs +1 -2
- package/dist/host/auth.cjs +1 -2
- package/dist/host/auth.d.cts +0 -2
- package/dist/host/auth.d.cts.map +1 -1
- package/dist/host/auth.d.mts +0 -2
- package/dist/host/auth.d.mts.map +1 -1
- package/dist/host/auth.mjs +1 -2
- package/dist/host/channels.cjs +1 -2
- package/dist/host/channels.d.cts +0 -2
- package/dist/host/channels.d.cts.map +1 -1
- package/dist/host/channels.d.mts +0 -2
- package/dist/host/channels.d.mts.map +1 -1
- package/dist/host/channels.mjs +1 -2
- package/dist/host/execute.cjs +1 -2
- package/dist/host/execute.d.cts +0 -2
- package/dist/host/execute.d.cts.map +1 -1
- package/dist/host/execute.d.mts +0 -2
- package/dist/host/execute.d.mts.map +1 -1
- package/dist/host/execute.mjs +1 -2
- package/dist/host/fresh-read.cjs +1 -2
- package/dist/host/fresh-read.d.cts +0 -2
- package/dist/host/fresh-read.d.cts.map +1 -1
- package/dist/host/fresh-read.d.mts +0 -2
- package/dist/host/fresh-read.d.mts.map +1 -1
- package/dist/host/fresh-read.mjs +1 -2
- package/dist/host/http.cjs +1 -2
- package/dist/host/http.d.cts +0 -2
- package/dist/host/http.d.cts.map +1 -1
- package/dist/host/http.d.mts +0 -2
- package/dist/host/http.d.mts.map +1 -1
- package/dist/host/http.mjs +1 -2
- package/dist/host/ingest.cjs +1 -2
- package/dist/host/ingest.d.cts +0 -2
- package/dist/host/ingest.d.cts.map +1 -1
- package/dist/host/ingest.d.mts +0 -2
- package/dist/host/ingest.d.mts.map +1 -1
- package/dist/host/ingest.mjs +1 -2
- package/dist/host/journey-host.cjs +1 -2
- package/dist/host/journey-host.d.cts +0 -2
- package/dist/host/journey-host.d.cts.map +1 -1
- package/dist/host/journey-host.d.mts +0 -2
- package/dist/host/journey-host.d.mts.map +1 -1
- package/dist/host/journey-host.mjs +1 -2
- package/dist/host/platform.cjs +1 -2
- package/dist/host/platform.d.cts +0 -2
- package/dist/host/platform.d.cts.map +1 -1
- package/dist/host/platform.d.mts +0 -2
- package/dist/host/platform.d.mts.map +1 -1
- package/dist/host/platform.mjs +1 -2
- package/dist/host/senders.cjs +1 -2
- package/dist/host/senders.d.cts +0 -2
- package/dist/host/senders.d.cts.map +1 -1
- package/dist/host/senders.d.mts +0 -2
- package/dist/host/senders.d.mts.map +1 -1
- package/dist/host/senders.mjs +1 -2
- package/dist/http2-client.cjs +1 -2
- package/dist/http2-client.d.cts +0 -2
- package/dist/http2-client.d.cts.map +1 -1
- package/dist/http2-client.d.mts +0 -2
- package/dist/http2-client.d.mts.map +1 -1
- package/dist/http2-client.mjs +1 -2
- package/dist/ir.cjs +1 -2
- package/dist/ir.d.cts +0 -2
- package/dist/ir.d.cts.map +1 -1
- package/dist/ir.d.mts +0 -2
- package/dist/ir.d.mts.map +1 -1
- package/dist/ir.mjs +1 -2
- package/dist/jwt.cjs +1 -2
- package/dist/jwt.d.cts +0 -2
- package/dist/jwt.d.cts.map +1 -1
- package/dist/jwt.d.mts +0 -2
- package/dist/jwt.d.mts.map +1 -1
- package/dist/jwt.mjs +1 -2
- package/dist/plan.cjs +1 -2
- package/dist/plan.d.cts +0 -2
- package/dist/plan.d.cts.map +1 -1
- package/dist/plan.d.mts +0 -2
- package/dist/plan.d.mts.map +1 -1
- package/dist/plan.mjs +1 -2
- package/dist/postgres-js.cjs +1 -2
- package/dist/postgres-js.d.cts +0 -2
- package/dist/postgres-js.d.cts.map +1 -1
- package/dist/postgres-js.d.mts +0 -2
- package/dist/postgres-js.d.mts.map +1 -1
- package/dist/postgres-js.mjs +1 -2
- package/dist/provenance.cjs +1 -2
- package/dist/provenance.d.cts +0 -2
- package/dist/provenance.d.cts.map +1 -1
- package/dist/provenance.d.mts +0 -2
- package/dist/provenance.d.mts.map +1 -1
- package/dist/provenance.mjs +1 -2
- package/dist/push.cjs +1 -2
- package/dist/push.d.cts +0 -2
- package/dist/push.d.cts.map +1 -1
- package/dist/push.d.mts +0 -2
- package/dist/push.d.mts.map +1 -1
- package/dist/push.mjs +1 -2
- package/dist/react-email.cjs +1 -2
- package/dist/react-email.d.cts +0 -2
- package/dist/react-email.d.cts.map +1 -1
- package/dist/react-email.d.mts +0 -2
- package/dist/react-email.d.mts.map +1 -1
- package/dist/react-email.mjs +1 -2
- package/dist/reporting/classify.cjs +1 -2
- package/dist/reporting/classify.d.cts +0 -2
- package/dist/reporting/classify.d.cts.map +1 -1
- package/dist/reporting/classify.d.mts +0 -2
- package/dist/reporting/classify.d.mts.map +1 -1
- package/dist/reporting/classify.mjs +1 -2
- package/dist/reporting/observer.cjs +1 -2
- package/dist/reporting/observer.d.cts +0 -2
- package/dist/reporting/observer.d.cts.map +1 -1
- package/dist/reporting/observer.d.mts +0 -2
- package/dist/reporting/observer.d.mts.map +1 -1
- package/dist/reporting/observer.mjs +1 -2
- package/dist/reporting/tracking.cjs +1 -2
- package/dist/reporting/tracking.d.cts +0 -2
- package/dist/reporting/tracking.d.cts.map +1 -1
- package/dist/reporting/tracking.d.mts +0 -2
- package/dist/reporting/tracking.d.mts.map +1 -1
- package/dist/reporting/tracking.mjs +1 -2
- package/dist/runtime.cjs +1 -2
- package/dist/runtime.d.cts +0 -2
- package/dist/runtime.d.cts.map +1 -1
- package/dist/runtime.d.mts +0 -2
- package/dist/runtime.d.mts.map +1 -1
- package/dist/runtime.mjs +1 -2
- package/dist/store/erasure.cjs +1 -2
- package/dist/store/erasure.d.cts +0 -2
- package/dist/store/erasure.d.cts.map +1 -1
- package/dist/store/erasure.d.mts +0 -2
- package/dist/store/erasure.d.mts.map +1 -1
- package/dist/store/erasure.mjs +1 -2
- package/dist/store/facts.cjs +1 -2
- package/dist/store/facts.d.cts +0 -2
- package/dist/store/facts.d.cts.map +1 -1
- package/dist/store/facts.d.mts +0 -2
- package/dist/store/facts.d.mts.map +1 -1
- package/dist/store/facts.mjs +1 -2
- package/dist/store/index.cjs +1 -2
- package/dist/store/index.d.cts +0 -2
- package/dist/store/index.d.cts.map +1 -1
- package/dist/store/index.d.mts +0 -2
- package/dist/store/index.d.mts.map +1 -1
- package/dist/store/index.mjs +1 -2
- package/dist/store/postgres-reporting.cjs +1 -2
- package/dist/store/postgres-reporting.d.cts +0 -2
- package/dist/store/postgres-reporting.d.cts.map +1 -1
- package/dist/store/postgres-reporting.d.mts +0 -2
- package/dist/store/postgres-reporting.d.mts.map +1 -1
- package/dist/store/postgres-reporting.mjs +1 -2
- package/dist/store/postgres.cjs +1 -2
- package/dist/store/postgres.d.cts +0 -2
- package/dist/store/postgres.d.cts.map +1 -1
- package/dist/store/postgres.d.mts +0 -2
- package/dist/store/postgres.d.mts.map +1 -1
- package/dist/store/postgres.mjs +1 -2
- package/dist/store/sql.cjs +1 -2
- package/dist/store/sql.d.cts +0 -2
- package/dist/store/sql.d.cts.map +1 -1
- package/dist/store/sql.d.mts +0 -2
- package/dist/store/sql.d.mts.map +1 -1
- package/dist/store/sql.mjs +1 -2
- package/dist/store/tables.cjs +1 -2
- package/dist/store/tables.d.cts +0 -2
- package/dist/store/tables.d.cts.map +1 -1
- package/dist/store/tables.d.mts +0 -2
- package/dist/store/tables.d.mts.map +1 -1
- package/dist/store/tables.mjs +1 -2
- package/dist/store/user-lock.cjs +1 -2
- package/dist/store/user-lock.d.cts +0 -2
- package/dist/store/user-lock.d.cts.map +1 -1
- package/dist/store/user-lock.d.mts +0 -2
- package/dist/store/user-lock.d.mts.map +1 -1
- package/dist/store/user-lock.mjs +1 -2
- package/dist/templates.cjs +1 -2
- package/dist/templates.d.cts +0 -2
- package/dist/templates.d.cts.map +1 -1
- package/dist/templates.d.mts +0 -2
- package/dist/templates.d.mts.map +1 -1
- package/dist/templates.mjs +1 -2
- package/dist/transports/cloudflare-email.cjs +1 -2
- package/dist/transports/cloudflare-email.d.cts +0 -2
- package/dist/transports/cloudflare-email.d.cts.map +1 -1
- package/dist/transports/cloudflare-email.d.mts +0 -2
- package/dist/transports/cloudflare-email.d.mts.map +1 -1
- package/dist/transports/cloudflare-email.mjs +1 -2
- package/dist/transports/ses.cjs +1 -2
- package/dist/transports/ses.d.cts +0 -2
- package/dist/transports/ses.d.cts.map +1 -1
- package/dist/transports/ses.d.mts +0 -2
- package/dist/transports/ses.d.mts.map +1 -1
- package/dist/transports/ses.mjs +1 -2
- package/dist/transports/sigv4.cjs +1 -2
- package/dist/transports/sigv4.d.cts +0 -2
- package/dist/transports/sigv4.d.cts.map +1 -1
- package/dist/transports/sigv4.d.mts +0 -2
- package/dist/transports/sigv4.d.mts.map +1 -1
- package/dist/transports/sigv4.mjs +1 -2
- package/dist/webhooks.cjs +1 -2
- package/dist/webhooks.d.cts +0 -2
- package/dist/webhooks.d.cts.map +1 -1
- package/dist/webhooks.d.mts +0 -2
- package/dist/webhooks.d.mts.map +1 -1
- package/dist/webhooks.mjs +1 -2
- package/dist/webpush.cjs +1 -2
- package/dist/webpush.d.cts +0 -2
- package/dist/webpush.d.cts.map +1 -1
- package/dist/webpush.d.mts +0 -2
- package/dist/webpush.d.mts.map +1 -1
- package/dist/webpush.mjs +1 -2
- package/package.json +5 -5
package/dist/email.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
|
|
2
|
+
// src/email.ts
|
|
3
3
|
/** `Name <email>`, or the bare address. */
|
|
4
4
|
function formatEmailAddress(address) {
|
|
5
5
|
if (typeof address === "string") return address;
|
|
@@ -80,7 +80,6 @@ function isUnsubscribeLink(url, unsubscribeUrl) {
|
|
|
80
80
|
return false;
|
|
81
81
|
}
|
|
82
82
|
}
|
|
83
|
-
//#endregion
|
|
84
83
|
exports.assertEmailAddress = assertEmailAddress;
|
|
85
84
|
exports.assertEmailConfig = assertEmailConfig;
|
|
86
85
|
exports.assertEmailMetadata = assertEmailMetadata;
|
package/dist/email.d.cts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { EmailTemplate } from "./templates.cjs";
|
|
2
|
-
//#region src/email.d.ts
|
|
3
2
|
/**
|
|
4
3
|
* Email metadata: who a template's email comes from, where replies go, and the unsubscribe link
|
|
5
4
|
* its layout carries. Each `emailTemplate` declares its own `from` (and `replyTo`, if replies should
|
|
@@ -65,5 +64,4 @@ export declare function assertEmailMetadata(template: {
|
|
|
65
64
|
}, where: string): void;
|
|
66
65
|
/** The unsubscribe link may carry its own query (a token, a list): the path names it. */
|
|
67
66
|
export declare function isUnsubscribeLink(url: string, unsubscribeUrl: string | undefined): boolean;
|
|
68
|
-
//#endregion
|
|
69
67
|
//# sourceMappingURL=email.d.cts.map
|
package/dist/email.d.cts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"email.d.cts","names":[],"sources":["../src/email.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"email.d.cts","names":[],"sources":["../src/email.ts"],"mappings":";;;;;;;;;;YAYY;EAA0B;EAAe;;;wBAGrC,mBAAmB,SAAS;;;;;;wBAa5B,YAAY,SAAS;;iBAepB;;;;;;EAMf;;EAEA;;;;;;IAME;;;;iBAKa;EACf,MAAM;;EAEN,UAAU;;EAEV;;;wBAIc,aACd,UAAU,KAAK,uDACf,SAAS,cACR;;wBAYa,mBAAmB,kBAAkB;;wBAkBrC,qBAAqB,cAAc;;wBAanC,kBACd;EAAU,QAAQ;GAClB,WAAW,SAAS;;wBA0BN,oBACd;EAAY;EAAgB;EAAmB;GAC/C;;wBAUc,kBAAkB,aAAa"}
|
package/dist/email.d.mts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { EmailTemplate } from "./templates.mjs";
|
|
2
|
-
//#region src/email.d.ts
|
|
3
2
|
/**
|
|
4
3
|
* Email metadata: who a template's email comes from, where replies go, and the unsubscribe link
|
|
5
4
|
* its layout carries. Each `emailTemplate` declares its own `from` (and `replyTo`, if replies should
|
|
@@ -65,5 +64,4 @@ export declare function assertEmailMetadata(template: {
|
|
|
65
64
|
}, where: string): void;
|
|
66
65
|
/** The unsubscribe link may carry its own query (a token, a list): the path names it. */
|
|
67
66
|
export declare function isUnsubscribeLink(url: string, unsubscribeUrl: string | undefined): boolean;
|
|
68
|
-
//#endregion
|
|
69
67
|
//# sourceMappingURL=email.d.mts.map
|
package/dist/email.d.mts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"email.d.mts","names":[],"sources":["../src/email.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"email.d.mts","names":[],"sources":["../src/email.ts"],"mappings":";;;;;;;;;;YAYY;EAA0B;EAAe;;;wBAGrC,mBAAmB,SAAS;;;;;;wBAa5B,YAAY,SAAS;;iBAepB;;;;;;EAMf;;EAEA;;;;;;IAME;;;;iBAKa;EACf,MAAM;;EAEN,UAAU;;EAEV;;;wBAIc,aACd,UAAU,KAAK,uDACf,SAAS,cACR;;wBAYa,mBAAmB,kBAAkB;;wBAkBrC,qBAAqB,cAAc;;wBAanC,kBACd;EAAU,QAAQ;GAClB,WAAW,SAAS;;wBA0BN,oBACd;EAAY;EAAgB;EAAmB;GAC/C;;wBAUc,kBAAkB,aAAa"}
|
package/dist/email.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
// src/email.ts
|
|
2
2
|
/** `Name <email>`, or the bare address. */
|
|
3
3
|
function formatEmailAddress(address) {
|
|
4
4
|
if (typeof address === "string") return address;
|
|
@@ -79,7 +79,6 @@ function isUnsubscribeLink(url, unsubscribeUrl) {
|
|
|
79
79
|
return false;
|
|
80
80
|
}
|
|
81
81
|
}
|
|
82
|
-
//#endregion
|
|
83
82
|
export { assertEmailAddress, assertEmailConfig, assertEmailMetadata, assertUnsubscribeUrl, formatEmailAddress, isUnsubscribeLink, mimeAddress, resolveEmail };
|
|
84
83
|
|
|
85
84
|
//# sourceMappingURL=email.mjs.map
|
package/dist/engine/actions.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
|
|
2
|
+
// src/engine/actions.ts
|
|
3
3
|
var RegistryActionInvoker = class {
|
|
4
4
|
registry;
|
|
5
5
|
constructor(actions) {
|
|
@@ -14,7 +14,6 @@ var RegistryActionInvoker = class {
|
|
|
14
14
|
});
|
|
15
15
|
}
|
|
16
16
|
};
|
|
17
|
-
//#endregion
|
|
18
17
|
exports.RegistryActionInvoker = RegistryActionInvoker;
|
|
19
18
|
|
|
20
19
|
//# sourceMappingURL=actions.cjs.map
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { ScalarIR } from "../ir.cjs";
|
|
2
2
|
import { ActionInvocation, ActionInvoker } from "./ports.cjs";
|
|
3
|
-
//#region src/engine/actions.d.ts
|
|
4
3
|
/**
|
|
5
4
|
* The default ActionInvoker: a name → handler registry (the runtime half of
|
|
6
5
|
* the dual-plane model — IR carries identity, the deployed bundle carries
|
|
@@ -25,5 +24,4 @@ export declare class RegistryActionInvoker implements ActionInvoker {
|
|
|
25
24
|
constructor(actions: readonly RegisteredAction[]);
|
|
26
25
|
invoke(invocation: ActionInvocation): Promise<void>;
|
|
27
26
|
}
|
|
28
|
-
//#endregion
|
|
29
27
|
//# sourceMappingURL=actions.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actions.d.cts","names":[],"sources":["../../src/engine/actions.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"actions.d.cts","names":[],"sources":["../../src/engine/actions.ts"],"mappings":";;;;;;;;;;;;;iBAeiB;WACN;;EAET,QACE,MAAM,eAAe,uBACrB;IAAO;IAAgB;MACtB;;qBAGQ,iCAAiC;mBAC3B;EAEjB,YAAY,kBAAkB;EAIxB,OAAO,YAAY,mBAAmB"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { ScalarIR } from "../ir.mjs";
|
|
2
2
|
import { ActionInvocation, ActionInvoker } from "./ports.mjs";
|
|
3
|
-
//#region src/engine/actions.d.ts
|
|
4
3
|
/**
|
|
5
4
|
* The default ActionInvoker: a name → handler registry (the runtime half of
|
|
6
5
|
* the dual-plane model — IR carries identity, the deployed bundle carries
|
|
@@ -25,5 +24,4 @@ export declare class RegistryActionInvoker implements ActionInvoker {
|
|
|
25
24
|
constructor(actions: readonly RegisteredAction[]);
|
|
26
25
|
invoke(invocation: ActionInvocation): Promise<void>;
|
|
27
26
|
}
|
|
28
|
-
//#endregion
|
|
29
27
|
//# sourceMappingURL=actions.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actions.d.mts","names":[],"sources":["../../src/engine/actions.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"actions.d.mts","names":[],"sources":["../../src/engine/actions.ts"],"mappings":";;;;;;;;;;;;;iBAeiB;WACN;;EAET,QACE,MAAM,eAAe,uBACrB;IAAO;IAAgB;MACtB;;qBAGQ,iCAAiC;mBAC3B;EAEjB,YAAY,kBAAkB;EAIxB,OAAO,YAAY,mBAAmB"}
|
package/dist/engine/actions.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
// src/engine/actions.ts
|
|
2
2
|
var RegistryActionInvoker = class {
|
|
3
3
|
registry;
|
|
4
4
|
constructor(actions) {
|
|
@@ -13,7 +13,6 @@ var RegistryActionInvoker = class {
|
|
|
13
13
|
});
|
|
14
14
|
}
|
|
15
15
|
};
|
|
16
|
-
//#endregion
|
|
17
16
|
export { RegistryActionInvoker };
|
|
18
17
|
|
|
19
18
|
//# sourceMappingURL=actions.mjs.map
|
package/dist/engine/bucket.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
|
|
2
|
+
// src/engine/bucket.ts
|
|
3
3
|
/**
|
|
4
4
|
* Cohort bucketing — deterministic assignment of a user to an A/B arm.
|
|
5
5
|
*
|
|
@@ -64,7 +64,6 @@ const BUCKET_RESOLUTION = 1e4;
|
|
|
64
64
|
function hashToBucket(input) {
|
|
65
65
|
return murmur3(utf8.encode(input)) % BUCKET_RESOLUTION;
|
|
66
66
|
}
|
|
67
|
-
//#endregion
|
|
68
67
|
exports.BUCKET_RESOLUTION = BUCKET_RESOLUTION;
|
|
69
68
|
exports.hashToBucket = hashToBucket;
|
|
70
69
|
exports.murmur3 = murmur3;
|
package/dist/engine/bucket.d.cts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
//#region src/engine/bucket.d.ts
|
|
2
1
|
/**
|
|
3
2
|
* Cohort bucketing — deterministic assignment of a user to an A/B arm.
|
|
4
3
|
*
|
|
@@ -28,5 +27,4 @@ export declare const BUCKET_RESOLUTION = 10000;
|
|
|
28
27
|
* regardless of the user id's alphabet.
|
|
29
28
|
*/
|
|
30
29
|
export declare function hashToBucket(input: string): number;
|
|
31
|
-
//#endregion
|
|
32
30
|
//# sourceMappingURL=bucket.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bucket.d.cts","names":[],"sources":["../../src/engine/bucket.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"bucket.d.cts","names":[],"sources":["../../src/engine/bucket.ts"],"mappings":";;;;;;;;;;;;;;;wBAgBgB,QAAQ,OAAO,YAAY;;;;;;;qBA6C9B;;;;;;wBAOG,aAAa"}
|
package/dist/engine/bucket.d.mts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
//#region src/engine/bucket.d.ts
|
|
2
1
|
/**
|
|
3
2
|
* Cohort bucketing — deterministic assignment of a user to an A/B arm.
|
|
4
3
|
*
|
|
@@ -28,5 +27,4 @@ export declare const BUCKET_RESOLUTION = 10000;
|
|
|
28
27
|
* regardless of the user id's alphabet.
|
|
29
28
|
*/
|
|
30
29
|
export declare function hashToBucket(input: string): number;
|
|
31
|
-
//#endregion
|
|
32
30
|
//# sourceMappingURL=bucket.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bucket.d.mts","names":[],"sources":["../../src/engine/bucket.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"bucket.d.mts","names":[],"sources":["../../src/engine/bucket.ts"],"mappings":";;;;;;;;;;;;;;;wBAgBgB,QAAQ,OAAO,YAAY;;;;;;;qBA6C9B;;;;;;wBAOG,aAAa"}
|
package/dist/engine/bucket.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
// src/engine/bucket.ts
|
|
2
2
|
/**
|
|
3
3
|
* Cohort bucketing — deterministic assignment of a user to an A/B arm.
|
|
4
4
|
*
|
|
@@ -63,7 +63,6 @@ const BUCKET_RESOLUTION = 1e4;
|
|
|
63
63
|
function hashToBucket(input) {
|
|
64
64
|
return murmur3(utf8.encode(input)) % BUCKET_RESOLUTION;
|
|
65
65
|
}
|
|
66
|
-
//#endregion
|
|
67
66
|
export { BUCKET_RESOLUTION, hashToBucket, murmur3 };
|
|
68
67
|
|
|
69
68
|
//# sourceMappingURL=bucket.mjs.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
2
|
const require_engine_recipient = require("./recipient.cjs");
|
|
3
|
-
|
|
3
|
+
// src/engine/condition.ts
|
|
4
4
|
/**
|
|
5
5
|
* ConditionIR evaluation: pure logic, with facts injected through FactSource,
|
|
6
6
|
* so the store-backed implementation and the in-memory test one share a single set of
|
|
@@ -175,7 +175,6 @@ async function relevantEvents(condition, facts) {
|
|
|
175
175
|
await walk(condition);
|
|
176
176
|
return [...found];
|
|
177
177
|
}
|
|
178
|
-
//#endregion
|
|
179
178
|
exports.DEVICES_UPDATED_EVENT = DEVICES_UPDATED_EVENT;
|
|
180
179
|
exports.PROFILE_UPDATED_EVENT = PROFILE_UPDATED_EVENT;
|
|
181
180
|
exports.evaluateCondition = evaluateCondition;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { ConditionIR } from "../ir.cjs";
|
|
2
2
|
import { FactSource } from "./ports.cjs";
|
|
3
|
-
//#region src/engine/condition.d.ts
|
|
4
3
|
/**
|
|
5
4
|
* Evaluation options.
|
|
6
5
|
* - anchorMs: the earliest instant `performed` counts events from — the goal
|
|
@@ -57,5 +56,4 @@ export declare const DEVICES_UPDATED_EVENT = "$devices_updated";
|
|
|
57
56
|
* resolve their definitions.
|
|
58
57
|
*/
|
|
59
58
|
export declare function relevantEvents(condition: ConditionIR, facts: FactSource): Promise<string[]>;
|
|
60
|
-
//#endregion
|
|
61
59
|
//# sourceMappingURL=condition.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"condition.d.cts","names":[],"sources":["../../src/engine/condition.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"condition.d.cts","names":[],"sources":["../../src/engine/condition.ts"],"mappings":";;;;;;;;;;;;iBAciB;EACf;EACA;;;;;;;wBAQoB,kBACpB,WAAW,aACX,OAAO,YACP,eACA,OAAO,kBACN;;;;;;;wBAqFa,aAAa,kBAAkB,OAAO;;;;;;;qBAuFzC;;;;;;wBAOG,oBAAoB;;;;;qBAQvB;;;;;;;;;;;wBAYS,eAAe,WAAW,aAAa,OAAO,aAAa"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { ConditionIR } from "../ir.mjs";
|
|
2
2
|
import { FactSource } from "./ports.mjs";
|
|
3
|
-
//#region src/engine/condition.d.ts
|
|
4
3
|
/**
|
|
5
4
|
* Evaluation options.
|
|
6
5
|
* - anchorMs: the earliest instant `performed` counts events from — the goal
|
|
@@ -57,5 +56,4 @@ export declare const DEVICES_UPDATED_EVENT = "$devices_updated";
|
|
|
57
56
|
* resolve their definitions.
|
|
58
57
|
*/
|
|
59
58
|
export declare function relevantEvents(condition: ConditionIR, facts: FactSource): Promise<string[]>;
|
|
60
|
-
//#endregion
|
|
61
59
|
//# sourceMappingURL=condition.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"condition.d.mts","names":[],"sources":["../../src/engine/condition.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"condition.d.mts","names":[],"sources":["../../src/engine/condition.ts"],"mappings":";;;;;;;;;;;;iBAciB;EACf;EACA;;;;;;;wBAQoB,kBACpB,WAAW,aACX,OAAO,YACP,eACA,OAAO,kBACN;;;;;;;wBAqFa,aAAa,kBAAkB,OAAO;;;;;;;qBAuFzC;;;;;;wBAOG,oBAAoB;;;;;qBAQvB;;;;;;;;;;;wBAYS,eAAe,WAAW,aAAa,OAAO,aAAa"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { RECIPIENT_PROPERTY } from "./recipient.mjs";
|
|
2
|
-
|
|
2
|
+
// src/engine/condition.ts
|
|
3
3
|
/**
|
|
4
4
|
* ConditionIR evaluation: pure logic, with facts injected through FactSource,
|
|
5
5
|
* so the store-backed implementation and the in-memory test one share a single set of
|
|
@@ -174,7 +174,6 @@ async function relevantEvents(condition, facts) {
|
|
|
174
174
|
await walk(condition);
|
|
175
175
|
return [...found];
|
|
176
176
|
}
|
|
177
|
-
//#endregion
|
|
178
177
|
export { DEVICES_UPDATED_EVENT, PROFILE_UPDATED_EVENT, evaluateCondition, matchesWhere, profileUpdatedEvent, relevantEvents };
|
|
179
178
|
|
|
180
179
|
//# sourceMappingURL=condition.mjs.map
|
package/dist/engine/duration.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
|
|
2
|
+
// src/engine/duration.ts
|
|
3
3
|
/**
|
|
4
4
|
* The longest an instance of a workflow can live, from its IR: every delay at its longest, every
|
|
5
5
|
* wait to its timeout, a time window as a full week (the furthest the next allowed slot can be),
|
|
@@ -28,7 +28,6 @@ function nodeMs(node) {
|
|
|
28
28
|
function longestJourneyMs(ir) {
|
|
29
29
|
return Math.max(flowMs(ir.flow), ir.goal?.within?.ms ?? 0);
|
|
30
30
|
}
|
|
31
|
-
//#endregion
|
|
32
31
|
exports.longestJourneyMs = longestJourneyMs;
|
|
33
32
|
|
|
34
33
|
//# sourceMappingURL=duration.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"duration.d.cts","names":[],"sources":["../../src/engine/duration.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"duration.d.cts","names":[],"sources":["../../src/engine/duration.ts"],"mappings":";wBAyCgB,iBAAiB,IAAI,KAAK"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"duration.d.mts","names":[],"sources":["../../src/engine/duration.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"duration.d.mts","names":[],"sources":["../../src/engine/duration.ts"],"mappings":";wBAyCgB,iBAAiB,IAAI,KAAK"}
|
package/dist/engine/duration.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
// src/engine/duration.ts
|
|
2
2
|
/**
|
|
3
3
|
* The longest an instance of a workflow can live, from its IR: every delay at its longest, every
|
|
4
4
|
* wait to its timeout, a time window as a full week (the furthest the next allowed slot can be),
|
|
@@ -27,7 +27,6 @@ function nodeMs(node) {
|
|
|
27
27
|
function longestJourneyMs(ir) {
|
|
28
28
|
return Math.max(flowMs(ir.flow), ir.goal?.within?.ms ?? 0);
|
|
29
29
|
}
|
|
30
|
-
//#endregion
|
|
31
30
|
export { longestJourneyMs };
|
|
32
31
|
|
|
33
32
|
//# sourceMappingURL=duration.mjs.map
|
|
@@ -3,7 +3,7 @@ const require_engine_bucket = require("./bucket.cjs");
|
|
|
3
3
|
const require_engine_recipient = require("./recipient.cjs");
|
|
4
4
|
const require_engine_condition = require("./condition.cjs");
|
|
5
5
|
const require_engine_time_window = require("./time-window.cjs");
|
|
6
|
-
|
|
6
|
+
// src/engine/interpreter.ts
|
|
7
7
|
/**
|
|
8
8
|
* IR interpreter: the execution core for one user's journey instance.
|
|
9
9
|
*
|
|
@@ -429,7 +429,6 @@ async function resolveValues(values, facts) {
|
|
|
429
429
|
for (const [key, value] of Object.entries(values)) resolved[key] = typeof value === "object" ? await facts.getProperty(value.path) : value;
|
|
430
430
|
return resolved;
|
|
431
431
|
}
|
|
432
|
-
//#endregion
|
|
433
432
|
exports.runJourney = runJourney;
|
|
434
433
|
|
|
435
434
|
//# sourceMappingURL=interpreter.cjs.map
|
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
import { WorkflowIR } from "../ir.cjs";
|
|
2
2
|
import { JourneyContext, JourneyOutcome } from "./ports.cjs";
|
|
3
|
-
//#region src/engine/interpreter.d.ts
|
|
4
3
|
export declare function runJourney(ir: WorkflowIR, ctx: JourneyContext): Promise<JourneyOutcome>;
|
|
5
|
-
//#endregion
|
|
6
4
|
//# sourceMappingURL=interpreter.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interpreter.d.cts","names":[],"sources":["../../src/engine/interpreter.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"interpreter.d.cts","names":[],"sources":["../../src/engine/interpreter.ts"],"mappings":";;wBAiGsB,WAAW,IAAI,YAAY,KAAK,iBAAiB,QAAQ"}
|
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
import { WorkflowIR } from "../ir.mjs";
|
|
2
2
|
import { JourneyContext, JourneyOutcome } from "./ports.mjs";
|
|
3
|
-
//#region src/engine/interpreter.d.ts
|
|
4
3
|
export declare function runJourney(ir: WorkflowIR, ctx: JourneyContext): Promise<JourneyOutcome>;
|
|
5
|
-
//#endregion
|
|
6
4
|
//# sourceMappingURL=interpreter.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interpreter.d.mts","names":[],"sources":["../../src/engine/interpreter.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"interpreter.d.mts","names":[],"sources":["../../src/engine/interpreter.ts"],"mappings":";;wBAiGsB,WAAW,IAAI,YAAY,KAAK,iBAAiB,QAAQ"}
|
|
@@ -2,7 +2,7 @@ import { hashToBucket } from "./bucket.mjs";
|
|
|
2
2
|
import { RECIPIENT_PROPERTY } from "./recipient.mjs";
|
|
3
3
|
import { evaluateCondition, relevantEvents } from "./condition.mjs";
|
|
4
4
|
import { nextWindowStart } from "./time-window.mjs";
|
|
5
|
-
|
|
5
|
+
// src/engine/interpreter.ts
|
|
6
6
|
/**
|
|
7
7
|
* IR interpreter: the execution core for one user's journey instance.
|
|
8
8
|
*
|
|
@@ -428,7 +428,6 @@ async function resolveValues(values, facts) {
|
|
|
428
428
|
for (const [key, value] of Object.entries(values)) resolved[key] = typeof value === "object" ? await facts.getProperty(value.path) : value;
|
|
429
429
|
return resolved;
|
|
430
430
|
}
|
|
431
|
-
//#endregion
|
|
432
431
|
export { runJourney };
|
|
433
432
|
|
|
434
433
|
//# sourceMappingURL=interpreter.mjs.map
|
package/dist/engine/ports.d.cts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { ChannelIR, ConditionIR, ScalarIR } from "../ir.cjs";
|
|
2
|
-
//#region src/engine/ports.d.ts
|
|
3
2
|
/**
|
|
4
3
|
* Engine ports: the only shape of the outside world the interpreter depends on.
|
|
5
4
|
*
|
|
@@ -273,5 +272,4 @@ export type JourneyOutcome = ({
|
|
|
273
272
|
}) & {
|
|
274
273
|
convertedAt?: number;
|
|
275
274
|
};
|
|
276
|
-
//#endregion
|
|
277
275
|
//# sourceMappingURL=ports.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ports.d.cts","names":[],"sources":["../../src/engine/ports.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"ports.d.cts","names":[],"sources":["../../src/engine/ports.ts"],"mappings":";;;;;;;;;;;;;;;iBAiBiB;;EAEf,GAAG,GAAG,cAAc,UAAU,QAAQ,KAAK,QAAQ;;;;;EAMnD,MAAM,cAAc,aAAa;;;;;;;;;;;;;;;EAgBjC,UACE,cACA,2BACA;IAAY;MACX;;EAGH,YAAY,eAAe;;;;;;;;;;;;EAa3B,YACE,cACA;IAAQ;IAAmB;MAC1B;;;iBAIY;EACf;EACA;;;iBAIe;;;;;;EAMf,YACE,eACA;IAAS;IAAkB;IAAkB,QAAQ;MACpD;EACH,YAAY,eAAe,QAAQ;;EAEnC,oBAAoB,eAAe,QAAQ;;EAE3C,eAAe,QAAQ;;EAEvB,cAAc,SAAS,YAAY;;iBAGpB;;EAEf;EACA;EACA;EACA,SAAS;EACT;;EAEA,OAAO,eAAe;EACtB;;;;;;EAMA;;EAEA,SAAS;;;;;;EAMT;;EAEA,WAAW;;;YAID;;;;;;iBAOK;;;;;EAKf,QAAQ,aAAa,SAAS;;EAE9B;;;;;;EAMA;;EAEA,OAAO;;;;;;EAMP,eAAe;;;;;;;iBAQA;EACf;EACA;;iBAGe;EACf,KAAK,SAAS,kBAAkB,eAAe;;;;;;;;;iBAUhC;;EAEf,SAAS;IACP;IACA;IACA;IACA;MACE;;EAEJ,aAAa;IACX;IACA;IACA;IACA;IACA;MACE;;EAEJ,iBAAiB,SAAS,kBAAkB,QAAQ;;EAEpD,aAAa,SAAS,iBAAiB;IAAU;MAAoB,aAAa;;EAElF,UAAU;IACR;IACA;IACA;IACA,QAAQ;IACR;;IAEA;MACE;;;;;;;;;iBAUW;EACf,SAAS;IACP,SAAS;IACT;IACA,OAAO,eAAe;MACpB,eAAe;;;iBAIJ;;;;;;;;EAQf,KAAK,eAAe,SAAS,eAAe,uBAAuB,aAAa;;;iBAIjE;;EAEf;;EAEA,MAAM,eAAe;EACrB;;EAEA;;;;;;;iBAQe;EACf,OAAO,YAAY,mBAAmB;;iBAGvB;EACf;;EAEA;;;;;;;EAOA;EACA,MAAM;EACN,OAAO;EACP,UAAU;EACV,QAAQ;;EAER,UAAU;;EAEV,YAAY;;EAEZ,WAAW;;;;;;;YAQD;EACN;;EACA;EAAkB;;EAClB;;EACA;;EACA"}
|
package/dist/engine/ports.d.mts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { ChannelIR, ConditionIR, ScalarIR } from "../ir.mjs";
|
|
2
|
-
//#region src/engine/ports.d.ts
|
|
3
2
|
/**
|
|
4
3
|
* Engine ports: the only shape of the outside world the interpreter depends on.
|
|
5
4
|
*
|
|
@@ -273,5 +272,4 @@ export type JourneyOutcome = ({
|
|
|
273
272
|
}) & {
|
|
274
273
|
convertedAt?: number;
|
|
275
274
|
};
|
|
276
|
-
//#endregion
|
|
277
275
|
//# sourceMappingURL=ports.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ports.d.mts","names":[],"sources":["../../src/engine/ports.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"ports.d.mts","names":[],"sources":["../../src/engine/ports.ts"],"mappings":";;;;;;;;;;;;;;;iBAiBiB;;EAEf,GAAG,GAAG,cAAc,UAAU,QAAQ,KAAK,QAAQ;;;;;EAMnD,MAAM,cAAc,aAAa;;;;;;;;;;;;;;;EAgBjC,UACE,cACA,2BACA;IAAY;MACX;;EAGH,YAAY,eAAe;;;;;;;;;;;;EAa3B,YACE,cACA;IAAQ;IAAmB;MAC1B;;;iBAIY;EACf;EACA;;;iBAIe;;;;;;EAMf,YACE,eACA;IAAS;IAAkB;IAAkB,QAAQ;MACpD;EACH,YAAY,eAAe,QAAQ;;EAEnC,oBAAoB,eAAe,QAAQ;;EAE3C,eAAe,QAAQ;;EAEvB,cAAc,SAAS,YAAY;;iBAGpB;;EAEf;EACA;EACA;EACA,SAAS;EACT;;EAEA,OAAO,eAAe;EACtB;;;;;;EAMA;;EAEA,SAAS;;;;;;EAMT;;EAEA,WAAW;;;YAID;;;;;;iBAOK;;;;;EAKf,QAAQ,aAAa,SAAS;;EAE9B;;;;;;EAMA;;EAEA,OAAO;;;;;;EAMP,eAAe;;;;;;;iBAQA;EACf;EACA;;iBAGe;EACf,KAAK,SAAS,kBAAkB,eAAe;;;;;;;;;iBAUhC;;EAEf,SAAS;IACP;IACA;IACA;IACA;MACE;;EAEJ,aAAa;IACX;IACA;IACA;IACA;IACA;MACE;;EAEJ,iBAAiB,SAAS,kBAAkB,QAAQ;;EAEpD,aAAa,SAAS,iBAAiB;IAAU;MAAoB,aAAa;;EAElF,UAAU;IACR;IACA;IACA;IACA,QAAQ;IACR;;IAEA;MACE;;;;;;;;;iBAUW;EACf,SAAS;IACP,SAAS;IACT;IACA,OAAO,eAAe;MACpB,eAAe;;;iBAIJ;;;;;;;;EAQf,KAAK,eAAe,SAAS,eAAe,uBAAuB,aAAa;;;iBAIjE;;EAEf;;EAEA,MAAM,eAAe;EACrB;;EAEA;;;;;;;iBAQe;EACf,OAAO,YAAY,mBAAmB;;iBAGvB;EACf;;EAEA;;;;;;;EAOA;EACA,MAAM;EACN,OAAO;EACP,UAAU;EACV,QAAQ;;EAER,UAAU;;EAEV,YAAY;;EAEZ,WAAW;;;;;;;YAQD;EACN;;EACA;EAAkB;;EAClB;;EACA;;EACA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
|
|
2
|
+
// src/engine/recipient.ts
|
|
3
3
|
/**
|
|
4
4
|
* Channel → the user property holding its recipient address. The engine
|
|
5
5
|
* resolves it before sending, which keeps senders stateless. Push is absent on
|
|
@@ -17,7 +17,6 @@ const RECIPIENT_PROPERTY = {
|
|
|
17
17
|
survey: "email",
|
|
18
18
|
in_app: void 0
|
|
19
19
|
};
|
|
20
|
-
//#endregion
|
|
21
20
|
exports.RECIPIENT_PROPERTY = RECIPIENT_PROPERTY;
|
|
22
21
|
|
|
23
22
|
//# sourceMappingURL=recipient.cjs.map
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { ChannelIR } from "../ir.cjs";
|
|
2
|
-
//#region src/engine/recipient.d.ts
|
|
3
2
|
/**
|
|
4
3
|
* Channel → the user property holding its recipient address. The engine
|
|
5
4
|
* resolves it before sending, which keeps senders stateless. Push is absent on
|
|
@@ -9,5 +8,4 @@ import { ChannelIR } from "../ir.cjs";
|
|
|
9
8
|
* UserPropertyBase guaranteeing `email` exists).
|
|
10
9
|
*/
|
|
11
10
|
export declare const RECIPIENT_PROPERTY: Record<ChannelIR, string | undefined>;
|
|
12
|
-
//#endregion
|
|
13
11
|
//# sourceMappingURL=recipient.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recipient.d.cts","names":[],"sources":["../../src/engine/recipient.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"recipient.d.cts","names":[],"sources":["../../src/engine/recipient.ts"],"mappings":";;;;;;;;;qBAUa,oBAAoB,OAAO"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { ChannelIR } from "../ir.mjs";
|
|
2
|
-
//#region src/engine/recipient.d.ts
|
|
3
2
|
/**
|
|
4
3
|
* Channel → the user property holding its recipient address. The engine
|
|
5
4
|
* resolves it before sending, which keeps senders stateless. Push is absent on
|
|
@@ -9,5 +8,4 @@ import { ChannelIR } from "../ir.mjs";
|
|
|
9
8
|
* UserPropertyBase guaranteeing `email` exists).
|
|
10
9
|
*/
|
|
11
10
|
export declare const RECIPIENT_PROPERTY: Record<ChannelIR, string | undefined>;
|
|
12
|
-
//#endregion
|
|
13
11
|
//# sourceMappingURL=recipient.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recipient.d.mts","names":[],"sources":["../../src/engine/recipient.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"recipient.d.mts","names":[],"sources":["../../src/engine/recipient.ts"],"mappings":";;;;;;;;;qBAUa,oBAAoB,OAAO"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
// src/engine/recipient.ts
|
|
2
2
|
/**
|
|
3
3
|
* Channel → the user property holding its recipient address. The engine
|
|
4
4
|
* resolves it before sending, which keeps senders stateless. Push is absent on
|
|
@@ -16,7 +16,6 @@ const RECIPIENT_PROPERTY = {
|
|
|
16
16
|
survey: "email",
|
|
17
17
|
in_app: void 0
|
|
18
18
|
};
|
|
19
|
-
//#endregion
|
|
20
19
|
export { RECIPIENT_PROPERTY };
|
|
21
20
|
|
|
22
21
|
//# sourceMappingURL=recipient.mjs.map
|
package/dist/engine/retry.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
|
|
2
|
+
// src/engine/retry.ts
|
|
3
3
|
/**
|
|
4
4
|
* Which step failures a retry would only repeat. A durable step retries what it throws; an
|
|
5
5
|
* error that is the same on every attempt — a template refusing its props, the contract
|
|
@@ -34,7 +34,6 @@ function isRetryable(error) {
|
|
|
34
34
|
function isRetryableStatus(status) {
|
|
35
35
|
return status === 408 || status === 429 || status >= 500;
|
|
36
36
|
}
|
|
37
|
-
//#endregion
|
|
38
37
|
exports.PermanentError = PermanentError;
|
|
39
38
|
exports.isRetryable = isRetryable;
|
|
40
39
|
exports.isRetryableStatus = isRetryableStatus;
|
package/dist/engine/retry.d.cts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
//#region src/engine/retry.d.ts
|
|
2
1
|
/**
|
|
3
2
|
* Which step failures a retry would only repeat. A durable step retries what it throws; an
|
|
4
3
|
* error that is the same on every attempt — a template refusing its props, the contract
|
|
@@ -25,5 +24,4 @@ export declare class PermanentError extends Error {
|
|
|
25
24
|
export declare function isRetryable(error: unknown): boolean;
|
|
26
25
|
/** An HTTP answer a retry can change: a timeout, throttling, or the provider's own fault. */
|
|
27
26
|
export declare function isRetryableStatus(status: number): boolean;
|
|
28
|
-
//#endregion
|
|
29
27
|
//# sourceMappingURL=retry.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"retry.d.cts","names":[],"sources":["../../src/engine/retry.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"retry.d.cts","names":[],"sources":["../../src/engine/retry.ts"],"mappings":";;;;;;;;;;;;qBAaa,uBAAuB;WAChB;WACT;EACT,YAAY,iBAAiB;IAAY;;;;;;;wBAY3B,YAAY;;wBAOZ,kBAAkB"}
|
package/dist/engine/retry.d.mts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
//#region src/engine/retry.d.ts
|
|
2
1
|
/**
|
|
3
2
|
* Which step failures a retry would only repeat. A durable step retries what it throws; an
|
|
4
3
|
* error that is the same on every attempt — a template refusing its props, the contract
|
|
@@ -25,5 +24,4 @@ export declare class PermanentError extends Error {
|
|
|
25
24
|
export declare function isRetryable(error: unknown): boolean;
|
|
26
25
|
/** An HTTP answer a retry can change: a timeout, throttling, or the provider's own fault. */
|
|
27
26
|
export declare function isRetryableStatus(status: number): boolean;
|
|
28
|
-
//#endregion
|
|
29
27
|
//# sourceMappingURL=retry.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"retry.d.mts","names":[],"sources":["../../src/engine/retry.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"retry.d.mts","names":[],"sources":["../../src/engine/retry.ts"],"mappings":";;;;;;;;;;;;qBAaa,uBAAuB;WAChB;WACT;EACT,YAAY,iBAAiB;IAAY;;;;;;;wBAY3B,YAAY;;wBAOZ,kBAAkB"}
|
package/dist/engine/retry.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
// src/engine/retry.ts
|
|
2
2
|
/**
|
|
3
3
|
* Which step failures a retry would only repeat. A durable step retries what it throws; an
|
|
4
4
|
* error that is the same on every attempt — a template refusing its props, the contract
|
|
@@ -33,7 +33,6 @@ function isRetryable(error) {
|
|
|
33
33
|
function isRetryableStatus(status) {
|
|
34
34
|
return status === 408 || status === 429 || status >= 500;
|
|
35
35
|
}
|
|
36
|
-
//#endregion
|
|
37
36
|
export { PermanentError, isRetryable, isRetryableStatus };
|
|
38
37
|
|
|
39
38
|
//# sourceMappingURL=retry.mjs.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
|
|
2
|
+
// src/engine/time-scale.ts
|
|
3
3
|
/**
|
|
4
4
|
* Debug time scale: divide every duration in a workflow's IR by a factor so a
|
|
5
5
|
* journey written in days plays out in seconds — with a factor of 3600, a
|
|
@@ -121,7 +121,6 @@ function scaleSegmentWindows(store, factor) {
|
|
|
121
121
|
return typeof value === "function" ? value.bind(target) : value;
|
|
122
122
|
} });
|
|
123
123
|
}
|
|
124
|
-
//#endregion
|
|
125
124
|
exports.scaleCondition = scaleCondition;
|
|
126
125
|
exports.scaleDurations = scaleDurations;
|
|
127
126
|
exports.scaleSegmentWindows = scaleSegmentWindows;
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { ConditionIR, WorkflowIR } from "../ir.cjs";
|
|
2
|
-
//#region src/engine/time-scale.d.ts
|
|
3
2
|
/**
|
|
4
3
|
* Debug time scale: divide every duration in a workflow's IR by a factor so a
|
|
5
4
|
* journey written in days plays out in seconds — with a factor of 3600, a
|
|
@@ -30,5 +29,4 @@ export declare function scaleCondition(condition: ConditionIR, factor: number):
|
|
|
30
29
|
export declare function scaleSegmentWindows<S extends {
|
|
31
30
|
getSegmentCondition(name: string): Promise<ConditionIR | undefined>;
|
|
32
31
|
}>(store: S, factor: number): S;
|
|
33
|
-
//#endregion
|
|
34
32
|
//# sourceMappingURL=time-scale.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"time-scale.d.cts","names":[],"sources":["../../src/engine/time-scale.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"time-scale.d.cts","names":[],"sources":["../../src/engine/time-scale.ts"],"mappings":";;;;;;;;;;;;;;;;;;;wBAoBgB,eAAe,IAAI,YAAY,iBAAiB;;wBA4BhD,eAAe,WAAW,aAAa,iBAAiB;;;;;;;wBAuExD,oBACd;EAAY,oBAAoB,eAAe,QAAQ;GACvD,OAAO,GAAG,iBAAiB"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { ConditionIR, WorkflowIR } from "../ir.mjs";
|
|
2
|
-
//#region src/engine/time-scale.d.ts
|
|
3
2
|
/**
|
|
4
3
|
* Debug time scale: divide every duration in a workflow's IR by a factor so a
|
|
5
4
|
* journey written in days plays out in seconds — with a factor of 3600, a
|
|
@@ -30,5 +29,4 @@ export declare function scaleCondition(condition: ConditionIR, factor: number):
|
|
|
30
29
|
export declare function scaleSegmentWindows<S extends {
|
|
31
30
|
getSegmentCondition(name: string): Promise<ConditionIR | undefined>;
|
|
32
31
|
}>(store: S, factor: number): S;
|
|
33
|
-
//#endregion
|
|
34
32
|
//# sourceMappingURL=time-scale.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"time-scale.d.mts","names":[],"sources":["../../src/engine/time-scale.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"time-scale.d.mts","names":[],"sources":["../../src/engine/time-scale.ts"],"mappings":";;;;;;;;;;;;;;;;;;;wBAoBgB,eAAe,IAAI,YAAY,iBAAiB;;wBA4BhD,eAAe,WAAW,aAAa,iBAAiB;;;;;;;wBAuExD,oBACd;EAAY,oBAAoB,eAAe,QAAQ;GACvD,OAAO,GAAG,iBAAiB"}
|