@murphai/hosted-execution 0.1.15 → 0.1.18
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/LICENSE +201 -674
- package/README.md +15 -14
- package/dist/auth.d.ts +11 -25
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +32 -76
- package/dist/auth.js.map +1 -1
- package/dist/builders.d.ts +3 -4
- package/dist/builders.d.ts.map +1 -1
- package/dist/builders.js +24 -24
- package/dist/builders.js.map +1 -1
- package/dist/bundles.d.ts +3 -13
- package/dist/bundles.d.ts.map +1 -1
- package/dist/bundles.js +1 -16
- package/dist/bundles.js.map +1 -1
- package/dist/client.d.ts +2 -26
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +38 -212
- package/dist/client.js.map +1 -1
- package/dist/contracts.d.ts +49 -118
- package/dist/contracts.d.ts.map +1 -1
- package/dist/contracts.js +15 -58
- package/dist/contracts.js.map +1 -1
- package/dist/dispatch-ref.d.ts +1 -2
- package/dist/dispatch-ref.d.ts.map +1 -1
- package/dist/dispatch-ref.js +16 -30
- package/dist/dispatch-ref.js.map +1 -1
- package/dist/env.d.ts +0 -38
- package/dist/env.d.ts.map +1 -1
- package/dist/env.js +1 -87
- package/dist/env.js.map +1 -1
- package/dist/index.d.ts +0 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -2
- package/dist/index.js.map +1 -1
- package/dist/observability.d.ts +3 -1
- package/dist/observability.d.ts.map +1 -1
- package/dist/observability.js +76 -53
- package/dist/observability.js.map +1 -1
- package/dist/outbox-payload.d.ts +7 -5
- package/dist/outbox-payload.d.ts.map +1 -1
- package/dist/outbox-payload.js +75 -38
- package/dist/outbox-payload.js.map +1 -1
- package/dist/parsers.d.ts +10 -10
- package/dist/parsers.d.ts.map +1 -1
- package/dist/parsers.js +192 -139
- package/dist/parsers.js.map +1 -1
- package/dist/routes.d.ts +4 -9
- package/dist/routes.d.ts.map +1 -1
- package/dist/routes.js +7 -18
- package/dist/routes.js.map +1 -1
- package/node_modules/@murphai/core/README.md +3 -0
- package/node_modules/@murphai/core/dist/assessment/index.d.ts +5 -0
- package/node_modules/@murphai/core/dist/assessment/index.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/assessment/index.js +4 -0
- package/node_modules/@murphai/core/dist/assessment/index.js.map +1 -0
- package/node_modules/@murphai/core/dist/assessment/project.d.ts +9 -0
- package/node_modules/@murphai/core/dist/assessment/project.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/assessment/project.js +353 -0
- package/node_modules/@murphai/core/dist/assessment/project.js.map +1 -0
- package/node_modules/@murphai/core/dist/assessment/storage.d.ts +13 -0
- package/node_modules/@murphai/core/dist/assessment/storage.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/assessment/storage.js +202 -0
- package/node_modules/@murphai/core/dist/assessment/storage.js.map +1 -0
- package/node_modules/@murphai/core/dist/assessment/types.d.ts +112 -0
- package/node_modules/@murphai/core/dist/assessment/types.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/assessment/types.js +5 -0
- package/node_modules/@murphai/core/dist/assessment/types.js.map +1 -0
- package/node_modules/@murphai/core/dist/atomic-write.d.ts +5 -0
- package/node_modules/@murphai/core/dist/atomic-write.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/atomic-write.js +120 -0
- package/node_modules/@murphai/core/dist/atomic-write.js.map +1 -0
- package/node_modules/@murphai/core/dist/audit.d.ts +27 -0
- package/node_modules/@murphai/core/dist/audit.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/audit.js +94 -0
- package/node_modules/@murphai/core/dist/audit.js.map +1 -0
- package/node_modules/@murphai/core/dist/automation.d.ts +55 -0
- package/node_modules/@murphai/core/dist/automation.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/automation.js +411 -0
- package/node_modules/@murphai/core/dist/automation.js.map +1 -0
- package/node_modules/@murphai/core/dist/bank/allergies.d.ts +5 -0
- package/node_modules/@murphai/core/dist/bank/allergies.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/bank/allergies.js +209 -0
- package/node_modules/@murphai/core/dist/bank/allergies.js.map +1 -0
- package/node_modules/@murphai/core/dist/bank/conditions.d.ts +5 -0
- package/node_modules/@murphai/core/dist/bank/conditions.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/bank/conditions.js +249 -0
- package/node_modules/@murphai/core/dist/bank/conditions.js.map +1 -0
- package/node_modules/@murphai/core/dist/bank/foods.d.ts +8 -0
- package/node_modules/@murphai/core/dist/bank/foods.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/bank/foods.js +255 -0
- package/node_modules/@murphai/core/dist/bank/foods.js.map +1 -0
- package/node_modules/@murphai/core/dist/bank/goals.d.ts +5 -0
- package/node_modules/@murphai/core/dist/bank/goals.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/bank/goals.js +289 -0
- package/node_modules/@murphai/core/dist/bank/goals.js.map +1 -0
- package/node_modules/@murphai/core/dist/bank/index.d.ts +10 -0
- package/node_modules/@murphai/core/dist/bank/index.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/bank/index.js +10 -0
- package/node_modules/@murphai/core/dist/bank/index.js.map +1 -0
- package/node_modules/@murphai/core/dist/bank/protocols.d.ts +8 -0
- package/node_modules/@murphai/core/dist/bank/protocols.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/bank/protocols.js +466 -0
- package/node_modules/@murphai/core/dist/bank/protocols.js.map +1 -0
- package/node_modules/@murphai/core/dist/bank/providers.d.ts +46 -0
- package/node_modules/@murphai/core/dist/bank/providers.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/bank/providers.js +160 -0
- package/node_modules/@murphai/core/dist/bank/providers.js.map +1 -0
- package/node_modules/@murphai/core/dist/bank/recipes.d.ts +8 -0
- package/node_modules/@murphai/core/dist/bank/recipes.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/bank/recipes.js +287 -0
- package/node_modules/@murphai/core/dist/bank/recipes.js.map +1 -0
- package/node_modules/@murphai/core/dist/bank/shared.d.ts +39 -0
- package/node_modules/@murphai/core/dist/bank/shared.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/bank/shared.js +150 -0
- package/node_modules/@murphai/core/dist/bank/shared.js.map +1 -0
- package/node_modules/@murphai/core/dist/bank/types.d.ts +469 -0
- package/node_modules/@murphai/core/dist/bank/types.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/bank/types.js +35 -0
- package/node_modules/@murphai/core/dist/bank/types.js.map +1 -0
- package/node_modules/@murphai/core/dist/bank/workout-formats.d.ts +5 -0
- package/node_modules/@murphai/core/dist/bank/workout-formats.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/bank/workout-formats.js +204 -0
- package/node_modules/@murphai/core/dist/bank/workout-formats.js.map +1 -0
- package/node_modules/@murphai/core/dist/canonical-mutations.d.ts +54 -0
- package/node_modules/@murphai/core/dist/canonical-mutations.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/canonical-mutations.js +196 -0
- package/node_modules/@murphai/core/dist/canonical-mutations.js.map +1 -0
- package/node_modules/@murphai/core/dist/constants.d.ts +125 -0
- package/node_modules/@murphai/core/dist/constants.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/constants.js +132 -0
- package/node_modules/@murphai/core/dist/constants.js.map +1 -0
- package/node_modules/@murphai/core/dist/domains/events.d.ts +100 -0
- package/node_modules/@murphai/core/dist/domains/events.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/domains/events.js +593 -0
- package/node_modules/@murphai/core/dist/domains/events.js.map +1 -0
- package/node_modules/@murphai/core/dist/domains/experiments.d.ts +71 -0
- package/node_modules/@murphai/core/dist/domains/experiments.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/domains/experiments.js +275 -0
- package/node_modules/@murphai/core/dist/domains/experiments.js.map +1 -0
- package/node_modules/@murphai/core/dist/domains/journal.d.ts +52 -0
- package/node_modules/@murphai/core/dist/domains/journal.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/domains/journal.js +173 -0
- package/node_modules/@murphai/core/dist/domains/journal.js.map +1 -0
- package/node_modules/@murphai/core/dist/domains/shared.d.ts +37 -0
- package/node_modules/@murphai/core/dist/domains/shared.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/domains/shared.js +101 -0
- package/node_modules/@murphai/core/dist/domains/shared.js.map +1 -0
- package/node_modules/@murphai/core/dist/domains/vault-summary.d.ts +15 -0
- package/node_modules/@murphai/core/dist/domains/vault-summary.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/domains/vault-summary.js +58 -0
- package/node_modules/@murphai/core/dist/domains/vault-summary.js.map +1 -0
- package/node_modules/@murphai/core/dist/errors.d.ts +8 -0
- package/node_modules/@murphai/core/dist/errors.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/errors.js +14 -0
- package/node_modules/@murphai/core/dist/errors.js.map +1 -0
- package/node_modules/@murphai/core/dist/event-attachments.d.ts +69 -0
- package/node_modules/@murphai/core/dist/event-attachments.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/event-attachments.js +202 -0
- package/node_modules/@murphai/core/dist/event-attachments.js.map +1 -0
- package/node_modules/@murphai/core/dist/event-links.d.ts +15 -0
- package/node_modules/@murphai/core/dist/event-links.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/event-links.js +54 -0
- package/node_modules/@murphai/core/dist/event-links.js.map +1 -0
- package/node_modules/@murphai/core/dist/family/api.d.ts +5 -0
- package/node_modules/@murphai/core/dist/family/api.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/family/api.js +221 -0
- package/node_modules/@murphai/core/dist/family/api.js.map +1 -0
- package/node_modules/@murphai/core/dist/family/index.d.ts +3 -0
- package/node_modules/@murphai/core/dist/family/index.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/family/index.js +3 -0
- package/node_modules/@murphai/core/dist/family/index.js.map +1 -0
- package/node_modules/@murphai/core/dist/family/types.d.ts +34 -0
- package/node_modules/@murphai/core/dist/family/types.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/family/types.js +2 -0
- package/node_modules/@murphai/core/dist/family/types.js.map +1 -0
- package/node_modules/@murphai/core/dist/frontmatter.d.ts +4 -0
- package/node_modules/@murphai/core/dist/frontmatter.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/frontmatter.js +99 -0
- package/node_modules/@murphai/core/dist/frontmatter.js.map +1 -0
- package/node_modules/@murphai/core/dist/fs.d.ts +22 -0
- package/node_modules/@murphai/core/dist/fs.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/fs.js +172 -0
- package/node_modules/@murphai/core/dist/fs.js.map +1 -0
- package/node_modules/@murphai/core/dist/genetics/api.d.ts +5 -0
- package/node_modules/@murphai/core/dist/genetics/api.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/genetics/api.js +226 -0
- package/node_modules/@murphai/core/dist/genetics/api.js.map +1 -0
- package/node_modules/@murphai/core/dist/genetics/index.d.ts +3 -0
- package/node_modules/@murphai/core/dist/genetics/index.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/genetics/index.js +3 -0
- package/node_modules/@murphai/core/dist/genetics/index.js.map +1 -0
- package/node_modules/@murphai/core/dist/genetics/types.d.ts +40 -0
- package/node_modules/@murphai/core/dist/genetics/types.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/genetics/types.js +4 -0
- package/node_modules/@murphai/core/dist/genetics/types.js.map +1 -0
- package/node_modules/@murphai/core/dist/history/api.d.ts +7 -0
- package/node_modules/@murphai/core/dist/history/api.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/history/api.js +473 -0
- package/node_modules/@murphai/core/dist/history/api.js.map +1 -0
- package/node_modules/@murphai/core/dist/history/event-spine.d.ts +41 -0
- package/node_modules/@murphai/core/dist/history/event-spine.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/history/event-spine.js +111 -0
- package/node_modules/@murphai/core/dist/history/event-spine.js.map +1 -0
- package/node_modules/@murphai/core/dist/history/index.d.ts +3 -0
- package/node_modules/@murphai/core/dist/history/index.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/history/index.js +3 -0
- package/node_modules/@murphai/core/dist/history/index.js.map +1 -0
- package/node_modules/@murphai/core/dist/history/shared.d.ts +25 -0
- package/node_modules/@murphai/core/dist/history/shared.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/history/shared.js +144 -0
- package/node_modules/@murphai/core/dist/history/shared.js.map +1 -0
- package/node_modules/@murphai/core/dist/history/types.d.ts +127 -0
- package/node_modules/@murphai/core/dist/history/types.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/history/types.js +8 -0
- package/node_modules/@murphai/core/dist/history/types.js.map +1 -0
- package/node_modules/@murphai/core/dist/ids.d.ts +3 -0
- package/node_modules/@murphai/core/dist/ids.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/ids.js +20 -0
- package/node_modules/@murphai/core/dist/ids.js.map +1 -0
- package/node_modules/@murphai/core/dist/index.d.ts +30 -0
- package/node_modules/@murphai/core/dist/index.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/index.js +23 -0
- package/node_modules/@murphai/core/dist/index.js.map +1 -0
- package/node_modules/@murphai/core/dist/jsonl.d.ts +12 -0
- package/node_modules/@murphai/core/dist/jsonl.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/jsonl.js +40 -0
- package/node_modules/@murphai/core/dist/jsonl.js.map +1 -0
- package/node_modules/@murphai/core/dist/memory.d.ts +17 -0
- package/node_modules/@murphai/core/dist/memory.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/memory.js +72 -0
- package/node_modules/@murphai/core/dist/memory.js.map +1 -0
- package/node_modules/@murphai/core/dist/mutations.d.ts +150 -0
- package/node_modules/@murphai/core/dist/mutations.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/mutations.js +1109 -0
- package/node_modules/@murphai/core/dist/mutations.js.map +1 -0
- package/node_modules/@murphai/core/dist/operations/canonical-write-lock.d.ts +29 -0
- package/node_modules/@murphai/core/dist/operations/canonical-write-lock.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/operations/canonical-write-lock.js +164 -0
- package/node_modules/@murphai/core/dist/operations/canonical-write-lock.js.map +1 -0
- package/node_modules/@murphai/core/dist/operations/index.d.ts +5 -0
- package/node_modules/@murphai/core/dist/operations/index.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/operations/index.js +3 -0
- package/node_modules/@murphai/core/dist/operations/index.js.map +1 -0
- package/node_modules/@murphai/core/dist/operations/raw-manifests.d.ts +33 -0
- package/node_modules/@murphai/core/dist/operations/raw-manifests.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/operations/raw-manifests.js +105 -0
- package/node_modules/@murphai/core/dist/operations/raw-manifests.js.map +1 -0
- package/node_modules/@murphai/core/dist/operations/write-batch.d.ts +166 -0
- package/node_modules/@murphai/core/dist/operations/write-batch.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/operations/write-batch.js +886 -0
- package/node_modules/@murphai/core/dist/operations/write-batch.js.map +1 -0
- package/node_modules/@murphai/core/dist/path-safety.d.ts +19 -0
- package/node_modules/@murphai/core/dist/path-safety.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/path-safety.js +193 -0
- package/node_modules/@murphai/core/dist/path-safety.js.map +1 -0
- package/node_modules/@murphai/core/dist/profile/index.d.ts +4 -0
- package/node_modules/@murphai/core/dist/profile/index.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/profile/index.js +3 -0
- package/node_modules/@murphai/core/dist/profile/index.js.map +1 -0
- package/node_modules/@murphai/core/dist/profile/storage.d.ts +41 -0
- package/node_modules/@murphai/core/dist/profile/storage.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/profile/storage.js +225 -0
- package/node_modules/@murphai/core/dist/profile/storage.js.map +1 -0
- package/node_modules/@murphai/core/dist/profile/types.d.ts +29 -0
- package/node_modules/@murphai/core/dist/profile/types.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/profile/types.js +8 -0
- package/node_modules/@murphai/core/dist/profile/types.js.map +1 -0
- package/node_modules/@murphai/core/dist/public-mutations.d.ts +120 -0
- package/node_modules/@murphai/core/dist/public-mutations.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/public-mutations.js +275 -0
- package/node_modules/@murphai/core/dist/public-mutations.js.map +1 -0
- package/node_modules/@murphai/core/dist/raw.d.ts +28 -0
- package/node_modules/@murphai/core/dist/raw.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/raw.js +107 -0
- package/node_modules/@murphai/core/dist/raw.js.map +1 -0
- package/node_modules/@murphai/core/dist/registry/api.d.ts +80 -0
- package/node_modules/@murphai/core/dist/registry/api.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/registry/api.js +113 -0
- package/node_modules/@murphai/core/dist/registry/api.js.map +1 -0
- package/node_modules/@murphai/core/dist/registry/id-or-slug.d.ts +15 -0
- package/node_modules/@murphai/core/dist/registry/id-or-slug.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/registry/id-or-slug.js +9 -0
- package/node_modules/@murphai/core/dist/registry/id-or-slug.js.map +1 -0
- package/node_modules/@murphai/core/dist/registry/markdown.d.ts +101 -0
- package/node_modules/@murphai/core/dist/registry/markdown.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/registry/markdown.js +136 -0
- package/node_modules/@murphai/core/dist/registry/markdown.js.map +1 -0
- package/node_modules/@murphai/core/dist/shares.d.ts +36 -0
- package/node_modules/@murphai/core/dist/shares.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/shares.js +333 -0
- package/node_modules/@murphai/core/dist/shares.js.map +1 -0
- package/node_modules/@murphai/core/dist/storage-spine.d.ts +3 -0
- package/node_modules/@murphai/core/dist/storage-spine.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/storage-spine.js +3 -0
- package/node_modules/@murphai/core/dist/storage-spine.js.map +1 -0
- package/node_modules/@murphai/core/dist/time.d.ts +11 -0
- package/node_modules/@murphai/core/dist/time.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/time.js +72 -0
- package/node_modules/@murphai/core/dist/time.js.map +1 -0
- package/node_modules/@murphai/core/dist/types.d.ts +18 -0
- package/node_modules/@murphai/core/dist/types.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/types.js +7 -0
- package/node_modules/@murphai/core/dist/types.js.map +1 -0
- package/node_modules/@murphai/core/dist/vault-core-document.d.ts +8 -0
- package/node_modules/@murphai/core/dist/vault-core-document.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/vault-core-document.js +16 -0
- package/node_modules/@murphai/core/dist/vault-core-document.js.map +1 -0
- package/node_modules/@murphai/core/dist/vault-metadata.d.ts +17 -0
- package/node_modules/@murphai/core/dist/vault-metadata.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/vault-metadata.js +44 -0
- package/node_modules/@murphai/core/dist/vault-metadata.js.map +1 -0
- package/node_modules/@murphai/core/dist/vault-upgrade.d.ts +24 -0
- package/node_modules/@murphai/core/dist/vault-upgrade.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/vault-upgrade.js +44 -0
- package/node_modules/@murphai/core/dist/vault-upgrade.js.map +1 -0
- package/node_modules/@murphai/core/dist/vault.d.ts +40 -0
- package/node_modules/@murphai/core/dist/vault.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/vault.js +649 -0
- package/node_modules/@murphai/core/dist/vault.js.map +1 -0
- package/node_modules/@murphai/core/dist/write-policy.d.ts +63 -0
- package/node_modules/@murphai/core/dist/write-policy.d.ts.map +1 -0
- package/node_modules/@murphai/core/dist/write-policy.js +146 -0
- package/node_modules/@murphai/core/dist/write-policy.js.map +1 -0
- package/node_modules/@murphai/core/package.json +27 -0
- package/node_modules/@murphai/device-syncd/README.md +123 -0
- package/node_modules/@murphai/device-syncd/dist/bin.d.ts +2 -0
- package/node_modules/@murphai/device-syncd/dist/bin.d.ts.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/bin.js +29 -0
- package/node_modules/@murphai/device-syncd/dist/bin.js.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/client.d.ts +124 -0
- package/node_modules/@murphai/device-syncd/dist/client.d.ts.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/client.js +199 -0
- package/node_modules/@murphai/device-syncd/dist/client.js.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/config.d.ts +18 -0
- package/node_modules/@murphai/device-syncd/dist/config.d.ts.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/config.js +279 -0
- package/node_modules/@murphai/device-syncd/dist/config.js.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/crypto.d.ts +6 -0
- package/node_modules/@murphai/device-syncd/dist/crypto.d.ts.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/crypto.js +27 -0
- package/node_modules/@murphai/device-syncd/dist/crypto.js.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/errors.d.ts +21 -0
- package/node_modules/@murphai/device-syncd/dist/errors.d.ts.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/errors.js +32 -0
- package/node_modules/@murphai/device-syncd/dist/errors.js.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/hosted-hints.d.ts +3 -0
- package/node_modules/@murphai/device-syncd/dist/hosted-hints.d.ts.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/hosted-hints.js +110 -0
- package/node_modules/@murphai/device-syncd/dist/hosted-hints.js.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/hosted-runtime.d.ts +139 -0
- package/node_modules/@murphai/device-syncd/dist/hosted-runtime.d.ts.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/hosted-runtime.js +336 -0
- package/node_modules/@murphai/device-syncd/dist/hosted-runtime.js.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/http.d.ts +34 -0
- package/node_modules/@murphai/device-syncd/dist/http.d.ts.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/http.js +644 -0
- package/node_modules/@murphai/device-syncd/dist/http.js.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/index.d.ts +23 -0
- package/node_modules/@murphai/device-syncd/dist/index.d.ts.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/index.js +15 -0
- package/node_modules/@murphai/device-syncd/dist/index.js.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/providers/garmin.d.ts +15 -0
- package/node_modules/@murphai/device-syncd/dist/providers/garmin.d.ts.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/providers/garmin.js +485 -0
- package/node_modules/@murphai/device-syncd/dist/providers/garmin.js.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/providers/oura-webhooks.d.ts +49 -0
- package/node_modules/@murphai/device-syncd/dist/providers/oura-webhooks.d.ts.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/providers/oura-webhooks.js +401 -0
- package/node_modules/@murphai/device-syncd/dist/providers/oura-webhooks.js.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/providers/oura.d.ts +20 -0
- package/node_modules/@murphai/device-syncd/dist/providers/oura.d.ts.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/providers/oura.js +804 -0
- package/node_modules/@murphai/device-syncd/dist/providers/oura.js.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/providers/shared-oauth.d.ts +104 -0
- package/node_modules/@murphai/device-syncd/dist/providers/shared-oauth.d.ts.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/providers/shared-oauth.js +214 -0
- package/node_modules/@murphai/device-syncd/dist/providers/shared-oauth.js.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/providers/whoop.d.ts +15 -0
- package/node_modules/@murphai/device-syncd/dist/providers/whoop.d.ts.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/providers/whoop.js +551 -0
- package/node_modules/@murphai/device-syncd/dist/providers/whoop.js.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/public-account.d.ts +4 -0
- package/node_modules/@murphai/device-syncd/dist/public-account.d.ts.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/public-account.js +13 -0
- package/node_modules/@murphai/device-syncd/dist/public-account.js.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/public-ingress.d.ts +43 -0
- package/node_modules/@murphai/device-syncd/dist/public-ingress.d.ts.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/public-ingress.js +353 -0
- package/node_modules/@murphai/device-syncd/dist/public-ingress.js.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/registry.d.ts +3 -0
- package/node_modules/@murphai/device-syncd/dist/registry.d.ts.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/registry.js +5 -0
- package/node_modules/@murphai/device-syncd/dist/registry.js.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/service.d.ts +61 -0
- package/node_modules/@murphai/device-syncd/dist/service.d.ts.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/service.js +496 -0
- package/node_modules/@murphai/device-syncd/dist/service.js.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/shared.d.ts +26 -0
- package/node_modules/@murphai/device-syncd/dist/shared.d.ts.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/shared.js +182 -0
- package/node_modules/@murphai/device-syncd/dist/shared.js.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/store.d.ts +105 -0
- package/node_modules/@murphai/device-syncd/dist/store.d.ts.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/store.js +965 -0
- package/node_modules/@murphai/device-syncd/dist/store.js.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/types.d.ts +287 -0
- package/node_modules/@murphai/device-syncd/dist/types.d.ts.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/types.js +2 -0
- package/node_modules/@murphai/device-syncd/dist/types.js.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/webhook-verification.d.ts +14 -0
- package/node_modules/@murphai/device-syncd/dist/webhook-verification.d.ts.map +1 -0
- package/node_modules/@murphai/device-syncd/dist/webhook-verification.js +16 -0
- package/node_modules/@murphai/device-syncd/dist/webhook-verification.js.map +1 -0
- package/node_modules/@murphai/device-syncd/package.json +85 -0
- package/node_modules/@murphai/importers/README.md +34 -0
- package/node_modules/@murphai/importers/dist/assessment/core-port.d.ts +13 -0
- package/node_modules/@murphai/importers/dist/assessment/core-port.d.ts.map +1 -0
- package/node_modules/@murphai/importers/dist/assessment/core-port.js +13 -0
- package/node_modules/@murphai/importers/dist/assessment/core-port.js.map +1 -0
- package/node_modules/@murphai/importers/dist/assessment/import-assessment-response.d.ts +15 -0
- package/node_modules/@murphai/importers/dist/assessment/import-assessment-response.d.ts.map +1 -0
- package/node_modules/@murphai/importers/dist/assessment/import-assessment-response.js +32 -0
- package/node_modules/@murphai/importers/dist/assessment/import-assessment-response.js.map +1 -0
- package/node_modules/@murphai/importers/dist/assessment/index.d.ts +4 -0
- package/node_modules/@murphai/importers/dist/assessment/index.d.ts.map +1 -0
- package/node_modules/@murphai/importers/dist/assessment/index.js +2 -0
- package/node_modules/@murphai/importers/dist/assessment/index.js.map +1 -0
- package/node_modules/@murphai/importers/dist/core-port.d.ts +119 -0
- package/node_modules/@murphai/importers/dist/core-port.d.ts.map +1 -0
- package/node_modules/@murphai/importers/dist/core-port.js +22 -0
- package/node_modules/@murphai/importers/dist/core-port.js.map +1 -0
- package/node_modules/@murphai/importers/dist/create-importers.d.ts +17 -0
- package/node_modules/@murphai/importers/dist/create-importers.d.ts.map +1 -0
- package/node_modules/@murphai/importers/dist/create-importers.js +68 -0
- package/node_modules/@murphai/importers/dist/create-importers.js.map +1 -0
- package/node_modules/@murphai/importers/dist/csv-sample-importer.d.ts +22 -0
- package/node_modules/@murphai/importers/dist/csv-sample-importer.d.ts.map +1 -0
- package/node_modules/@murphai/importers/dist/csv-sample-importer.js +153 -0
- package/node_modules/@murphai/importers/dist/csv-sample-importer.js.map +1 -0
- package/node_modules/@murphai/importers/dist/device-providers/defaults.d.ts +5 -0
- package/node_modules/@murphai/importers/dist/device-providers/defaults.d.ts.map +1 -0
- package/node_modules/@murphai/importers/dist/device-providers/defaults.js +11 -0
- package/node_modules/@murphai/importers/dist/device-providers/defaults.js.map +1 -0
- package/node_modules/@murphai/importers/dist/device-providers/garmin-activity-normalizers.d.ts +9 -0
- package/node_modules/@murphai/importers/dist/device-providers/garmin-activity-normalizers.d.ts.map +1 -0
- package/node_modules/@murphai/importers/dist/device-providers/garmin-activity-normalizers.js +172 -0
- package/node_modules/@murphai/importers/dist/device-providers/garmin-activity-normalizers.js.map +1 -0
- package/node_modules/@murphai/importers/dist/device-providers/garmin-health-normalizers.d.ts +12 -0
- package/node_modules/@murphai/importers/dist/device-providers/garmin-health-normalizers.d.ts.map +1 -0
- package/node_modules/@murphai/importers/dist/device-providers/garmin-health-normalizers.js +619 -0
- package/node_modules/@murphai/importers/dist/device-providers/garmin-health-normalizers.js.map +1 -0
- package/node_modules/@murphai/importers/dist/device-providers/garmin-helpers.d.ts +40 -0
- package/node_modules/@murphai/importers/dist/device-providers/garmin-helpers.d.ts.map +1 -0
- package/node_modules/@murphai/importers/dist/device-providers/garmin-helpers.js +295 -0
- package/node_modules/@murphai/importers/dist/device-providers/garmin-helpers.js.map +1 -0
- package/node_modules/@murphai/importers/dist/device-providers/garmin.d.ts +19 -0
- package/node_modules/@murphai/importers/dist/device-providers/garmin.d.ts.map +1 -0
- package/node_modules/@murphai/importers/dist/device-providers/garmin.js +150 -0
- package/node_modules/@murphai/importers/dist/device-providers/garmin.js.map +1 -0
- package/node_modules/@murphai/importers/dist/device-providers/import-device-provider-snapshot.d.ts +14 -0
- package/node_modules/@murphai/importers/dist/device-providers/import-device-provider-snapshot.d.ts.map +1 -0
- package/node_modules/@murphai/importers/dist/device-providers/import-device-provider-snapshot.js +37 -0
- package/node_modules/@murphai/importers/dist/device-providers/import-device-provider-snapshot.js.map +1 -0
- package/node_modules/@murphai/importers/dist/device-providers/index.d.ts +10 -0
- package/node_modules/@murphai/importers/dist/device-providers/index.d.ts.map +1 -0
- package/node_modules/@murphai/importers/dist/device-providers/index.js +8 -0
- package/node_modules/@murphai/importers/dist/device-providers/index.js.map +1 -0
- package/node_modules/@murphai/importers/dist/device-providers/oura.d.ts +20 -0
- package/node_modules/@murphai/importers/dist/device-providers/oura.d.ts.map +1 -0
- package/node_modules/@murphai/importers/dist/device-providers/oura.js +602 -0
- package/node_modules/@murphai/importers/dist/device-providers/oura.js.map +1 -0
- package/node_modules/@murphai/importers/dist/device-providers/provider-descriptors.d.ts +491 -0
- package/node_modules/@murphai/importers/dist/device-providers/provider-descriptors.d.ts.map +1 -0
- package/node_modules/@murphai/importers/dist/device-providers/provider-descriptors.js +326 -0
- package/node_modules/@murphai/importers/dist/device-providers/provider-descriptors.js.map +1 -0
- package/node_modules/@murphai/importers/dist/device-providers/registry.d.ts +9 -0
- package/node_modules/@murphai/importers/dist/device-providers/registry.d.ts.map +1 -0
- package/node_modules/@murphai/importers/dist/device-providers/registry.js +5 -0
- package/node_modules/@murphai/importers/dist/device-providers/registry.js.map +1 -0
- package/node_modules/@murphai/importers/dist/device-providers/shared-normalization.d.ts +81 -0
- package/node_modules/@murphai/importers/dist/device-providers/shared-normalization.d.ts.map +1 -0
- package/node_modules/@murphai/importers/dist/device-providers/shared-normalization.js +215 -0
- package/node_modules/@murphai/importers/dist/device-providers/shared-normalization.js.map +1 -0
- package/node_modules/@murphai/importers/dist/device-providers/types.d.ts +12 -0
- package/node_modules/@murphai/importers/dist/device-providers/types.d.ts.map +1 -0
- package/node_modules/@murphai/importers/dist/device-providers/types.js +2 -0
- package/node_modules/@murphai/importers/dist/device-providers/types.js.map +1 -0
- package/node_modules/@murphai/importers/dist/device-providers/whoop.d.ts +16 -0
- package/node_modules/@murphai/importers/dist/device-providers/whoop.d.ts.map +1 -0
- package/node_modules/@murphai/importers/dist/device-providers/whoop.js +410 -0
- package/node_modules/@murphai/importers/dist/device-providers/whoop.js.map +1 -0
- package/node_modules/@murphai/importers/dist/document-importer.d.ts +15 -0
- package/node_modules/@murphai/importers/dist/document-importer.d.ts.map +1 -0
- package/node_modules/@murphai/importers/dist/document-importer.js +31 -0
- package/node_modules/@murphai/importers/dist/document-importer.js.map +1 -0
- package/node_modules/@murphai/importers/dist/index.d.ts +10 -0
- package/node_modules/@murphai/importers/dist/index.d.ts.map +1 -0
- package/node_modules/@murphai/importers/dist/index.js +9 -0
- package/node_modules/@murphai/importers/dist/index.js.map +1 -0
- package/node_modules/@murphai/importers/dist/meal-importer.d.ts +15 -0
- package/node_modules/@murphai/importers/dist/meal-importer.d.ts.map +1 -0
- package/node_modules/@murphai/importers/dist/meal-importer.js +39 -0
- package/node_modules/@murphai/importers/dist/meal-importer.js.map +1 -0
- package/node_modules/@murphai/importers/dist/preset-registry.d.ts +31 -0
- package/node_modules/@murphai/importers/dist/preset-registry.d.ts.map +1 -0
- package/node_modules/@murphai/importers/dist/preset-registry.js +96 -0
- package/node_modules/@murphai/importers/dist/preset-registry.js.map +1 -0
- package/node_modules/@murphai/importers/dist/shared.d.ts +31 -0
- package/node_modules/@murphai/importers/dist/shared.d.ts.map +1 -0
- package/node_modules/@murphai/importers/dist/shared.js +154 -0
- package/node_modules/@murphai/importers/dist/shared.js.map +1 -0
- package/node_modules/@murphai/importers/package.json +36 -0
- package/node_modules/@murphai/runtime-state/README.md +37 -0
- package/node_modules/@murphai/runtime-state/dist/assistant-local-state-descriptors.d.ts +3 -0
- package/node_modules/@murphai/runtime-state/dist/assistant-local-state-descriptors.d.ts.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/assistant-local-state-descriptors.js +80 -0
- package/node_modules/@murphai/runtime-state/dist/assistant-local-state-descriptors.js.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/assistant-state-security.d.ts +29 -0
- package/node_modules/@murphai/runtime-state/dist/assistant-state-security.d.ts.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/assistant-state-security.js +159 -0
- package/node_modules/@murphai/runtime-state/dist/assistant-state-security.js.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/assistant-state.d.ts +33 -0
- package/node_modules/@murphai/runtime-state/dist/assistant-state.d.ts.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/assistant-state.js +47 -0
- package/node_modules/@murphai/runtime-state/dist/assistant-state.js.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/assistant-usage.d.ts +56 -0
- package/node_modules/@murphai/runtime-state/dist/assistant-usage.d.ts.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/assistant-usage.js +189 -0
- package/node_modules/@murphai/runtime-state/dist/assistant-usage.js.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/atomic-write.d.ts +7 -0
- package/node_modules/@murphai/runtime-state/dist/atomic-write.d.ts.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/atomic-write.js +27 -0
- package/node_modules/@murphai/runtime-state/dist/atomic-write.js.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/device-sync-local-state-descriptors.d.ts +3 -0
- package/node_modules/@murphai/runtime-state/dist/device-sync-local-state-descriptors.d.ts.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/device-sync-local-state-descriptors.js +12 -0
- package/node_modules/@murphai/runtime-state/dist/device-sync-local-state-descriptors.js.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/gateway-local-state-descriptors.d.ts +3 -0
- package/node_modules/@murphai/runtime-state/dist/gateway-local-state-descriptors.d.ts.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/gateway-local-state-descriptors.js +13 -0
- package/node_modules/@murphai/runtime-state/dist/gateway-local-state-descriptors.js.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/hosted-bundle-node.d.ts +43 -0
- package/node_modules/@murphai/runtime-state/dist/hosted-bundle-node.d.ts.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/hosted-bundle-node.js +203 -0
- package/node_modules/@murphai/runtime-state/dist/hosted-bundle-node.js.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/hosted-bundle-ref.d.ts +13 -0
- package/node_modules/@murphai/runtime-state/dist/hosted-bundle-ref.d.ts.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/hosted-bundle-ref.js +46 -0
- package/node_modules/@murphai/runtime-state/dist/hosted-bundle-ref.js.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/hosted-bundle.d.ts +67 -0
- package/node_modules/@murphai/runtime-state/dist/hosted-bundle.d.ts.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/hosted-bundle.js +261 -0
- package/node_modules/@murphai/runtime-state/dist/hosted-bundle.js.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/hosted-bundles.d.ts +31 -0
- package/node_modules/@murphai/runtime-state/dist/hosted-bundles.d.ts.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/hosted-bundles.js +211 -0
- package/node_modules/@murphai/runtime-state/dist/hosted-bundles.js.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/hosted-email.d.ts +50 -0
- package/node_modules/@murphai/runtime-state/dist/hosted-email.d.ts.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/hosted-email.js +191 -0
- package/node_modules/@murphai/runtime-state/dist/hosted-email.js.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/hosted-user-env.d.ts +14 -0
- package/node_modules/@murphai/runtime-state/dist/hosted-user-env.d.ts.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/hosted-user-env.js +59 -0
- package/node_modules/@murphai/runtime-state/dist/hosted-user-env.js.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/hosted-user-keys.d.ts +83 -0
- package/node_modules/@murphai/runtime-state/dist/hosted-user-keys.d.ts.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/hosted-user-keys.js +308 -0
- package/node_modules/@murphai/runtime-state/dist/hosted-user-keys.js.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/inbox-local-state-descriptors.d.ts +3 -0
- package/node_modules/@murphai/runtime-state/dist/inbox-local-state-descriptors.d.ts.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/inbox-local-state-descriptors.js +18 -0
- package/node_modules/@murphai/runtime-state/dist/inbox-local-state-descriptors.js.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/index.d.ts +7 -0
- package/node_modules/@murphai/runtime-state/dist/index.d.ts.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/index.js +7 -0
- package/node_modules/@murphai/runtime-state/dist/index.js.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/local-state-descriptor-helpers.d.ts +31 -0
- package/node_modules/@murphai/runtime-state/dist/local-state-descriptor-helpers.d.ts.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/local-state-descriptor-helpers.js +120 -0
- package/node_modules/@murphai/runtime-state/dist/local-state-descriptor-helpers.js.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/local-state-descriptor-manifests.d.ts +3 -0
- package/node_modules/@murphai/runtime-state/dist/local-state-descriptor-manifests.d.ts.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/local-state-descriptor-manifests.js +17 -0
- package/node_modules/@murphai/runtime-state/dist/local-state-descriptor-manifests.js.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/local-state-files.d.ts +10 -0
- package/node_modules/@murphai/runtime-state/dist/local-state-files.d.ts.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/local-state-files.js +27 -0
- package/node_modules/@murphai/runtime-state/dist/local-state-files.js.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/local-state-taxonomy.d.ts +29 -0
- package/node_modules/@murphai/runtime-state/dist/local-state-taxonomy.d.ts.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/local-state-taxonomy.js +82 -0
- package/node_modules/@murphai/runtime-state/dist/local-state-taxonomy.js.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/locks.d.ts +46 -0
- package/node_modules/@murphai/runtime-state/dist/locks.d.ts.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/locks.js +187 -0
- package/node_modules/@murphai/runtime-state/dist/locks.js.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/loopback-control-plane.d.ts +4 -0
- package/node_modules/@murphai/runtime-state/dist/loopback-control-plane.d.ts.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/loopback-control-plane.js +35 -0
- package/node_modules/@murphai/runtime-state/dist/loopback-control-plane.js.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/node/index.d.ts +22 -0
- package/node_modules/@murphai/runtime-state/dist/node/index.d.ts.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/node/index.js +22 -0
- package/node_modules/@murphai/runtime-state/dist/node/index.js.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/parser-local-state-descriptors.d.ts +3 -0
- package/node_modules/@murphai/runtime-state/dist/parser-local-state-descriptors.d.ts.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/parser-local-state-descriptors.js +12 -0
- package/node_modules/@murphai/runtime-state/dist/parser-local-state-descriptors.js.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/process-env.d.ts +4 -0
- package/node_modules/@murphai/runtime-state/dist/process-env.d.ts.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/process-env.js +124 -0
- package/node_modules/@murphai/runtime-state/dist/process-env.js.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/query-local-state-descriptors.d.ts +3 -0
- package/node_modules/@murphai/runtime-state/dist/query-local-state-descriptors.d.ts.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/query-local-state-descriptors.js +13 -0
- package/node_modules/@murphai/runtime-state/dist/query-local-state-descriptors.js.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/runtime-paths.d.ts +48 -0
- package/node_modules/@murphai/runtime-state/dist/runtime-paths.d.ts.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/runtime-paths.js +93 -0
- package/node_modules/@murphai/runtime-state/dist/runtime-paths.js.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/shared.d.ts +14 -0
- package/node_modules/@murphai/runtime-state/dist/shared.d.ts.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/shared.js +46 -0
- package/node_modules/@murphai/runtime-state/dist/shared.js.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/sqlite.d.ts +26 -0
- package/node_modules/@murphai/runtime-state/dist/sqlite.d.ts.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/sqlite.js +110 -0
- package/node_modules/@murphai/runtime-state/dist/sqlite.js.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/ulid.d.ts +5 -0
- package/node_modules/@murphai/runtime-state/dist/ulid.d.ts.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/ulid.js +31 -0
- package/node_modules/@murphai/runtime-state/dist/ulid.js.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/versioned-json-files.d.ts +24 -0
- package/node_modules/@murphai/runtime-state/dist/versioned-json-files.d.ts.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/versioned-json-files.js +30 -0
- package/node_modules/@murphai/runtime-state/dist/versioned-json-files.js.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/versioned-json-state.d.ts +18 -0
- package/node_modules/@murphai/runtime-state/dist/versioned-json-state.d.ts.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/versioned-json-state.js +25 -0
- package/node_modules/@murphai/runtime-state/dist/versioned-json-state.js.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/write-operation-local-state-descriptors.d.ts +3 -0
- package/node_modules/@murphai/runtime-state/dist/write-operation-local-state-descriptors.d.ts.map +1 -0
- package/node_modules/@murphai/runtime-state/dist/write-operation-local-state-descriptors.js +12 -0
- package/node_modules/@murphai/runtime-state/dist/write-operation-local-state-descriptors.js.map +1 -0
- package/node_modules/@murphai/runtime-state/package.json +30 -0
- package/package.json +45 -11
- package/dist/.tsbuildinfo +0 -1
- package/dist/callback-hosts.d.ts +0 -19
- package/dist/callback-hosts.d.ts.map +0 -1
- package/dist/callback-hosts.js +0 -19
- package/dist/callback-hosts.js.map +0 -1
- package/dist/web-control-plane.d.ts +0 -105
- package/dist/web-control-plane.d.ts.map +0 -1
- package/dist/web-control-plane.js +0 -358
- package/dist/web-control-plane.js.map +0 -1
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
import { isLoopbackHostname } from "@murphai/runtime-state";
|
|
2
|
+
export const DEVICE_SYNC_BASE_URL_ENV = "DEVICE_SYNC_BASE_URL";
|
|
3
|
+
export const DEVICE_SYNC_BASE_URL_ENV_KEYS = [
|
|
4
|
+
DEVICE_SYNC_BASE_URL_ENV,
|
|
5
|
+
];
|
|
6
|
+
export const DEVICE_SYNC_CONTROL_TOKEN_ENV = "DEVICE_SYNC_CONTROL_TOKEN";
|
|
7
|
+
export const DEVICE_SYNC_CONTROL_TOKEN_ENV_KEYS = [
|
|
8
|
+
DEVICE_SYNC_CONTROL_TOKEN_ENV,
|
|
9
|
+
];
|
|
10
|
+
export const DEFAULT_DEVICE_SYNC_BASE_URL = "http://localhost:8788";
|
|
11
|
+
export const DEVICE_SYNC_LOCAL_CONTROL_PLANE_ERROR_PREFIX = "Device sync control-plane bearer tokens from DEVICE_SYNC_CONTROL_TOKEN may only target loopback DEVICE_SYNC_BASE_URL values.";
|
|
12
|
+
export const DEVICE_SYNC_SECRET_ENV = "DEVICE_SYNC_SECRET";
|
|
13
|
+
export const DEVICE_SYNC_SECRET_ENV_KEYS = [
|
|
14
|
+
DEVICE_SYNC_SECRET_ENV,
|
|
15
|
+
];
|
|
16
|
+
export function normalizeDeviceSyncBaseUrl(value) {
|
|
17
|
+
const url = new URL(value);
|
|
18
|
+
url.pathname = url.pathname.replace(/\/+$/u, "");
|
|
19
|
+
url.search = "";
|
|
20
|
+
url.hash = "";
|
|
21
|
+
return url.toString().replace(/\/$/u, "");
|
|
22
|
+
}
|
|
23
|
+
export function resolveDeviceSyncBaseUrl(input = {}) {
|
|
24
|
+
const configured = (typeof input.value === "string" && input.value.trim()) ||
|
|
25
|
+
readEnvValue(input.env, DEVICE_SYNC_BASE_URL_ENV_KEYS) ||
|
|
26
|
+
DEFAULT_DEVICE_SYNC_BASE_URL;
|
|
27
|
+
const controlToken = (typeof input.controlToken === "string" && input.controlToken.trim()) ||
|
|
28
|
+
readEnvValue(input.env, DEVICE_SYNC_CONTROL_TOKEN_ENV_KEYS) ||
|
|
29
|
+
null;
|
|
30
|
+
const baseUrl = normalizeDeviceSyncBaseUrl(configured);
|
|
31
|
+
assertLocalDeviceSyncControlPlaneBaseUrl({
|
|
32
|
+
baseUrl,
|
|
33
|
+
controlToken,
|
|
34
|
+
});
|
|
35
|
+
return baseUrl;
|
|
36
|
+
}
|
|
37
|
+
export function resolveDeviceSyncControlToken(input = {}) {
|
|
38
|
+
const configured = (typeof input.value === "string" && input.value.trim()) ||
|
|
39
|
+
readEnvValue(input.env, DEVICE_SYNC_CONTROL_TOKEN_ENV_KEYS) ||
|
|
40
|
+
null;
|
|
41
|
+
return configured || null;
|
|
42
|
+
}
|
|
43
|
+
export function resolveDeviceSyncControlPlane(input = {}) {
|
|
44
|
+
const controlToken = resolveDeviceSyncControlToken({
|
|
45
|
+
value: input.controlToken,
|
|
46
|
+
env: input.env,
|
|
47
|
+
});
|
|
48
|
+
return {
|
|
49
|
+
baseUrl: resolveDeviceSyncBaseUrl({
|
|
50
|
+
value: input.baseUrl,
|
|
51
|
+
env: input.env,
|
|
52
|
+
controlToken,
|
|
53
|
+
}),
|
|
54
|
+
controlToken,
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
export function isLoopbackDeviceSyncBaseUrl(baseUrl) {
|
|
58
|
+
const url = new URL(baseUrl);
|
|
59
|
+
return isLoopbackHostname(url.hostname);
|
|
60
|
+
}
|
|
61
|
+
export function assertLocalDeviceSyncControlPlaneBaseUrl(input) {
|
|
62
|
+
if (!input.controlToken) {
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
if (isLoopbackDeviceSyncBaseUrl(input.baseUrl)) {
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
throw new TypeError(`${DEVICE_SYNC_LOCAL_CONTROL_PLANE_ERROR_PREFIX} Received ${input.baseUrl}.`);
|
|
69
|
+
}
|
|
70
|
+
export function isDeviceSyncLocalControlPlaneError(error) {
|
|
71
|
+
return (error instanceof TypeError &&
|
|
72
|
+
error.message.startsWith(DEVICE_SYNC_LOCAL_CONTROL_PLANE_ERROR_PREFIX));
|
|
73
|
+
}
|
|
74
|
+
function readEnvValue(env, keys) {
|
|
75
|
+
for (const key of keys) {
|
|
76
|
+
const value = env?.[key]?.trim();
|
|
77
|
+
if (value) {
|
|
78
|
+
return value;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
return null;
|
|
82
|
+
}
|
|
83
|
+
export function withControlPlaneAuth(headers, controlToken) {
|
|
84
|
+
if (!controlToken) {
|
|
85
|
+
return headers;
|
|
86
|
+
}
|
|
87
|
+
const nextHeaders = new Headers(headers);
|
|
88
|
+
nextHeaders.set("Authorization", `Bearer ${controlToken}`);
|
|
89
|
+
return nextHeaders;
|
|
90
|
+
}
|
|
91
|
+
export function parseJsonPayload(text) {
|
|
92
|
+
if (!text.trim()) {
|
|
93
|
+
return {};
|
|
94
|
+
}
|
|
95
|
+
try {
|
|
96
|
+
return JSON.parse(text);
|
|
97
|
+
}
|
|
98
|
+
catch {
|
|
99
|
+
return null;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
export function asErrorPayload(payload) {
|
|
103
|
+
if (!payload || typeof payload !== "object" || Array.isArray(payload)) {
|
|
104
|
+
return {};
|
|
105
|
+
}
|
|
106
|
+
const envelope = payload;
|
|
107
|
+
const error = envelope.error;
|
|
108
|
+
if (!error || typeof error !== "object") {
|
|
109
|
+
return {};
|
|
110
|
+
}
|
|
111
|
+
return {
|
|
112
|
+
code: typeof error.code === "string" ? error.code : undefined,
|
|
113
|
+
message: typeof error.message === "string" ? error.message : undefined,
|
|
114
|
+
retryable: typeof error.retryable === "boolean" ? error.retryable : undefined,
|
|
115
|
+
details: error.details,
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
export function createDeviceSyncJsonRequester(input) {
|
|
119
|
+
const fetchImpl = input.fetchImpl ?? fetch;
|
|
120
|
+
const controlToken = input.controlToken ?? null;
|
|
121
|
+
return async function requestJson(path, request) {
|
|
122
|
+
return await requestDeviceSyncJson({
|
|
123
|
+
baseUrl: input.baseUrl,
|
|
124
|
+
path,
|
|
125
|
+
fetchImpl,
|
|
126
|
+
controlToken,
|
|
127
|
+
request: mergeRequestInit(input.requestDefaults, request),
|
|
128
|
+
createUnavailableError: input.createUnavailableError,
|
|
129
|
+
createHttpError: input.createHttpError,
|
|
130
|
+
createInvalidResponseError: input.createInvalidResponseError,
|
|
131
|
+
});
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
export async function requestDeviceSyncJson(input) {
|
|
135
|
+
const fetchImpl = input.fetchImpl ?? fetch;
|
|
136
|
+
const url = new URL(input.path.replace(/^\/+/u, ""), `${input.baseUrl}/`).toString();
|
|
137
|
+
let response;
|
|
138
|
+
try {
|
|
139
|
+
response = await fetchImpl(url, {
|
|
140
|
+
...input.request,
|
|
141
|
+
headers: withControlPlaneAuth(input.request?.headers, input.controlToken ?? null),
|
|
142
|
+
});
|
|
143
|
+
}
|
|
144
|
+
catch (cause) {
|
|
145
|
+
throw input.createUnavailableError({
|
|
146
|
+
baseUrl: input.baseUrl,
|
|
147
|
+
path: input.path,
|
|
148
|
+
cause,
|
|
149
|
+
});
|
|
150
|
+
}
|
|
151
|
+
const text = await response.text();
|
|
152
|
+
const payload = parseJsonPayload(text);
|
|
153
|
+
if (!response.ok) {
|
|
154
|
+
throw input.createHttpError({
|
|
155
|
+
baseUrl: input.baseUrl,
|
|
156
|
+
path: input.path,
|
|
157
|
+
status: response.status,
|
|
158
|
+
controlToken: input.controlToken ?? null,
|
|
159
|
+
payload,
|
|
160
|
+
errorPayload: asErrorPayload(payload),
|
|
161
|
+
});
|
|
162
|
+
}
|
|
163
|
+
if (!payload || typeof payload !== "object" || Array.isArray(payload)) {
|
|
164
|
+
throw input.createInvalidResponseError({
|
|
165
|
+
baseUrl: input.baseUrl,
|
|
166
|
+
path: input.path,
|
|
167
|
+
status: response.status,
|
|
168
|
+
payload,
|
|
169
|
+
});
|
|
170
|
+
}
|
|
171
|
+
return payload;
|
|
172
|
+
}
|
|
173
|
+
function mergeRequestInit(defaults, request) {
|
|
174
|
+
if (!defaults) {
|
|
175
|
+
return request;
|
|
176
|
+
}
|
|
177
|
+
if (!request) {
|
|
178
|
+
return { ...defaults };
|
|
179
|
+
}
|
|
180
|
+
return {
|
|
181
|
+
...defaults,
|
|
182
|
+
...request,
|
|
183
|
+
headers: mergeHeaders(defaults.headers, request.headers),
|
|
184
|
+
};
|
|
185
|
+
}
|
|
186
|
+
function mergeHeaders(defaults, request) {
|
|
187
|
+
if (defaults === undefined) {
|
|
188
|
+
return request;
|
|
189
|
+
}
|
|
190
|
+
if (request === undefined) {
|
|
191
|
+
return defaults;
|
|
192
|
+
}
|
|
193
|
+
const headers = new Headers(defaults);
|
|
194
|
+
new Headers(request).forEach((value, key) => {
|
|
195
|
+
headers.set(key, value);
|
|
196
|
+
});
|
|
197
|
+
return headers;
|
|
198
|
+
}
|
|
199
|
+
//# sourceMappingURL=client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { GarminDeviceSyncProviderConfig } from "./providers/garmin.ts";
|
|
2
|
+
import type { OuraDeviceSyncProviderConfig } from "./providers/oura.ts";
|
|
3
|
+
import type { WhoopDeviceSyncProviderConfig } from "./providers/whoop.ts";
|
|
4
|
+
import type { CreateDeviceSyncServiceInput } from "./service.ts";
|
|
5
|
+
import type { DeviceSyncHttpConfig, DeviceSyncLogger, DeviceSyncProvider } from "./types.ts";
|
|
6
|
+
export interface LoadedDeviceSyncEnvironment {
|
|
7
|
+
service: CreateDeviceSyncServiceInput;
|
|
8
|
+
http: DeviceSyncHttpConfig;
|
|
9
|
+
}
|
|
10
|
+
type DeviceSyncEnvSource = Readonly<Record<string, string | undefined>>;
|
|
11
|
+
export declare function loadDeviceSyncEnvironment(env?: NodeJS.ProcessEnv): LoadedDeviceSyncEnvironment;
|
|
12
|
+
export declare function createConsoleDeviceSyncLogger(consoleLike?: Console): DeviceSyncLogger;
|
|
13
|
+
export declare function createConfiguredDeviceSyncProviders(env: DeviceSyncEnvSource): DeviceSyncProvider[];
|
|
14
|
+
export declare function readConfiguredGarminDeviceSyncProviderConfig(env: DeviceSyncEnvSource): GarminDeviceSyncProviderConfig | null;
|
|
15
|
+
export declare function readConfiguredWhoopDeviceSyncProviderConfig(env: DeviceSyncEnvSource): WhoopDeviceSyncProviderConfig | null;
|
|
16
|
+
export declare function readConfiguredOuraDeviceSyncProviderConfig(env: DeviceSyncEnvSource): OuraDeviceSyncProviderConfig | null;
|
|
17
|
+
export {};
|
|
18
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;AAC1E,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,KAAK,EACV,oBAAoB,EACpB,gBAAgB,EAChB,kBAAkB,EAEnB,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,2BAA2B;IAC1C,OAAO,EAAE,4BAA4B,CAAC;IACtC,IAAI,EAAE,oBAAoB,CAAC;CAC5B;AAED,KAAK,mBAAmB,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC;AAuFxE,wBAAgB,yBAAyB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,2BAA2B,CAiD3G;AAED,wBAAgB,6BAA6B,CAAC,WAAW,GAAE,OAAiB,GAAG,gBAAgB,CAe9F;AAED,wBAAgB,mCAAmC,CAAC,GAAG,EAAE,mBAAmB,GAAG,kBAAkB,EAAE,CAmBlG;AAED,wBAAgB,4CAA4C,CAC1D,GAAG,EAAE,mBAAmB,GACvB,8BAA8B,GAAG,IAAI,CAuBvC;AAED,wBAAgB,2CAA2C,CACzD,GAAG,EAAE,mBAAmB,GACvB,6BAA6B,GAAG,IAAI,CAuBtC;AAED,wBAAgB,0CAA0C,CACxD,GAAG,EAAE,mBAAmB,GACvB,4BAA4B,GAAG,IAAI,CAwBrC"}
|
|
@@ -0,0 +1,279 @@
|
|
|
1
|
+
import { isLoopbackHostname } from "@murphai/runtime-state";
|
|
2
|
+
import { DEVICE_SYNC_CONTROL_TOKEN_ENV_KEYS, DEVICE_SYNC_SECRET_ENV_KEYS, } from "./client.js";
|
|
3
|
+
import { createGarminDeviceSyncProvider } from "./providers/garmin.js";
|
|
4
|
+
import { createOuraDeviceSyncProvider } from "./providers/oura.js";
|
|
5
|
+
import { createWhoopDeviceSyncProvider } from "./providers/whoop.js";
|
|
6
|
+
import { DEFAULT_DEVICE_SYNC_HOST, normalizeString } from "./shared.js";
|
|
7
|
+
const DEVICE_SYNC_ALLOWED_RETURN_ORIGINS_ENV_KEYS = [
|
|
8
|
+
"DEVICE_SYNC_ALLOWED_RETURN_ORIGINS",
|
|
9
|
+
];
|
|
10
|
+
const DEVICE_SYNC_HOST_ENV_KEYS = ["DEVICE_SYNC_HOST"];
|
|
11
|
+
const DEVICE_SYNC_PORT_ENV_KEYS = ["DEVICE_SYNC_PORT"];
|
|
12
|
+
const DEVICE_SYNC_PUBLIC_BASE_URL_ENV_KEYS = [
|
|
13
|
+
"DEVICE_SYNC_PUBLIC_BASE_URL",
|
|
14
|
+
];
|
|
15
|
+
const DEVICE_SYNC_PUBLIC_HOST_ENV_KEYS = [
|
|
16
|
+
"DEVICE_SYNC_PUBLIC_HOST",
|
|
17
|
+
];
|
|
18
|
+
const DEVICE_SYNC_PUBLIC_PORT_ENV_KEYS = [
|
|
19
|
+
"DEVICE_SYNC_PUBLIC_PORT",
|
|
20
|
+
];
|
|
21
|
+
const DEVICE_SYNC_SCHEDULER_POLL_MS_ENV_KEYS = [
|
|
22
|
+
"DEVICE_SYNC_SCHEDULER_POLL_MS",
|
|
23
|
+
];
|
|
24
|
+
const DEVICE_SYNC_SESSION_TTL_MS_ENV_KEYS = [
|
|
25
|
+
"DEVICE_SYNC_SESSION_TTL_MS",
|
|
26
|
+
];
|
|
27
|
+
const DEVICE_SYNC_STATE_DB_PATH_ENV_KEYS = [
|
|
28
|
+
"DEVICE_SYNC_STATE_DB_PATH",
|
|
29
|
+
];
|
|
30
|
+
const DEVICE_SYNC_VAULT_ROOT_ENV_KEYS = ["DEVICE_SYNC_VAULT_ROOT"];
|
|
31
|
+
const DEVICE_SYNC_WORKER_BATCH_SIZE_ENV_KEYS = [
|
|
32
|
+
"DEVICE_SYNC_WORKER_BATCH_SIZE",
|
|
33
|
+
];
|
|
34
|
+
const DEVICE_SYNC_WORKER_LEASE_MS_ENV_KEYS = [
|
|
35
|
+
"DEVICE_SYNC_WORKER_LEASE_MS",
|
|
36
|
+
];
|
|
37
|
+
const DEVICE_SYNC_WORKER_POLL_MS_ENV_KEYS = [
|
|
38
|
+
"DEVICE_SYNC_WORKER_POLL_MS",
|
|
39
|
+
];
|
|
40
|
+
const GARMIN_API_BASE_URL_ENV_KEYS = ["GARMIN_API_BASE_URL"];
|
|
41
|
+
const GARMIN_AUTH_BASE_URL_ENV_KEYS = ["GARMIN_AUTH_BASE_URL"];
|
|
42
|
+
const GARMIN_BACKFILL_DAYS_ENV_KEYS = ["GARMIN_BACKFILL_DAYS"];
|
|
43
|
+
const GARMIN_CLIENT_ID_ENV_KEYS = ["GARMIN_CLIENT_ID"];
|
|
44
|
+
const GARMIN_CLIENT_SECRET_ENV_KEYS = ["GARMIN_CLIENT_SECRET"];
|
|
45
|
+
const GARMIN_TOKEN_BASE_URL_ENV_KEYS = ["GARMIN_TOKEN_BASE_URL"];
|
|
46
|
+
const GARMIN_RECONCILE_DAYS_ENV_KEYS = [
|
|
47
|
+
"GARMIN_RECONCILE_DAYS",
|
|
48
|
+
];
|
|
49
|
+
const GARMIN_RECONCILE_INTERVAL_MS_ENV_KEYS = [
|
|
50
|
+
"GARMIN_RECONCILE_INTERVAL_MS",
|
|
51
|
+
];
|
|
52
|
+
const GARMIN_REQUEST_TIMEOUT_MS_ENV_KEYS = [
|
|
53
|
+
"GARMIN_REQUEST_TIMEOUT_MS",
|
|
54
|
+
];
|
|
55
|
+
const OURA_API_BASE_URL_ENV_KEYS = ["OURA_API_BASE_URL"];
|
|
56
|
+
const OURA_AUTH_BASE_URL_ENV_KEYS = ["OURA_AUTH_BASE_URL"];
|
|
57
|
+
const OURA_BACKFILL_DAYS_ENV_KEYS = ["OURA_BACKFILL_DAYS"];
|
|
58
|
+
const OURA_CLIENT_ID_ENV_KEYS = ["OURA_CLIENT_ID"];
|
|
59
|
+
const OURA_CLIENT_SECRET_ENV_KEYS = ["OURA_CLIENT_SECRET"];
|
|
60
|
+
const OURA_WEBHOOK_VERIFICATION_TOKEN_ENV_KEYS = ["OURA_WEBHOOK_VERIFICATION_TOKEN"];
|
|
61
|
+
const OURA_RECONCILE_DAYS_ENV_KEYS = [
|
|
62
|
+
"OURA_RECONCILE_DAYS",
|
|
63
|
+
];
|
|
64
|
+
const OURA_RECONCILE_INTERVAL_MS_ENV_KEYS = [
|
|
65
|
+
"OURA_RECONCILE_INTERVAL_MS",
|
|
66
|
+
];
|
|
67
|
+
const OURA_REQUEST_TIMEOUT_MS_ENV_KEYS = [
|
|
68
|
+
"OURA_REQUEST_TIMEOUT_MS",
|
|
69
|
+
];
|
|
70
|
+
const OURA_SCOPES_ENV_KEYS = ["OURA_SCOPES"];
|
|
71
|
+
const OURA_WEBHOOK_TIMESTAMP_TOLERANCE_MS_ENV_KEYS = [
|
|
72
|
+
"OURA_WEBHOOK_TIMESTAMP_TOLERANCE_MS",
|
|
73
|
+
];
|
|
74
|
+
const WHOOP_BACKFILL_DAYS_ENV_KEYS = ["WHOOP_BACKFILL_DAYS"];
|
|
75
|
+
const WHOOP_BASE_URL_ENV_KEYS = ["WHOOP_BASE_URL"];
|
|
76
|
+
const WHOOP_CLIENT_ID_ENV_KEYS = ["WHOOP_CLIENT_ID"];
|
|
77
|
+
const WHOOP_CLIENT_SECRET_ENV_KEYS = ["WHOOP_CLIENT_SECRET"];
|
|
78
|
+
const WHOOP_RECONCILE_DAYS_ENV_KEYS = [
|
|
79
|
+
"WHOOP_RECONCILE_DAYS",
|
|
80
|
+
];
|
|
81
|
+
const WHOOP_RECONCILE_INTERVAL_MS_ENV_KEYS = [
|
|
82
|
+
"WHOOP_RECONCILE_INTERVAL_MS",
|
|
83
|
+
];
|
|
84
|
+
const WHOOP_REQUEST_TIMEOUT_MS_ENV_KEYS = [
|
|
85
|
+
"WHOOP_REQUEST_TIMEOUT_MS",
|
|
86
|
+
];
|
|
87
|
+
const WHOOP_SCOPES_ENV_KEYS = ["WHOOP_SCOPES"];
|
|
88
|
+
const WHOOP_WEBHOOK_TIMESTAMP_TOLERANCE_MS_ENV_KEYS = [
|
|
89
|
+
"WHOOP_WEBHOOK_TIMESTAMP_TOLERANCE_MS",
|
|
90
|
+
];
|
|
91
|
+
export function loadDeviceSyncEnvironment(env = process.env) {
|
|
92
|
+
const vaultRoot = requireEnv(env, DEVICE_SYNC_VAULT_ROOT_ENV_KEYS);
|
|
93
|
+
const publicBaseUrl = requireEnv(env, DEVICE_SYNC_PUBLIC_BASE_URL_ENV_KEYS);
|
|
94
|
+
const secret = requireEnv(env, DEVICE_SYNC_SECRET_ENV_KEYS);
|
|
95
|
+
const controlToken = requireEnv(env, DEVICE_SYNC_CONTROL_TOKEN_ENV_KEYS);
|
|
96
|
+
const logger = createConsoleDeviceSyncLogger();
|
|
97
|
+
const providers = createConfiguredDeviceSyncProviders(env);
|
|
98
|
+
const publicListener = readOptionalPublicListener(env);
|
|
99
|
+
const host = optionalEnv(env, DEVICE_SYNC_HOST_ENV_KEYS) ?? DEFAULT_DEVICE_SYNC_HOST;
|
|
100
|
+
if (!isLoopbackHostname(host)) {
|
|
101
|
+
throw new TypeError("DEVICE_SYNC_HOST must be a loopback hostname or address. Use DEVICE_SYNC_PUBLIC_HOST and DEVICE_SYNC_PUBLIC_PORT for externally reachable callback and webhook routes.");
|
|
102
|
+
}
|
|
103
|
+
if (providers.length === 0) {
|
|
104
|
+
throw new TypeError("No device sync providers are configured. Set Garmin, WHOOP, and/or Oura client credentials before starting device-syncd.");
|
|
105
|
+
}
|
|
106
|
+
const serviceConfig = {
|
|
107
|
+
vaultRoot,
|
|
108
|
+
publicBaseUrl,
|
|
109
|
+
allowedReturnOrigins: parseCsvEnv(env, DEVICE_SYNC_ALLOWED_RETURN_ORIGINS_ENV_KEYS),
|
|
110
|
+
stateDatabasePath: optionalEnv(env, DEVICE_SYNC_STATE_DB_PATH_ENV_KEYS),
|
|
111
|
+
sessionTtlMs: parseIntegerEnv(env, DEVICE_SYNC_SESSION_TTL_MS_ENV_KEYS),
|
|
112
|
+
workerLeaseMs: parseIntegerEnv(env, DEVICE_SYNC_WORKER_LEASE_MS_ENV_KEYS),
|
|
113
|
+
workerPollMs: parseIntegerEnv(env, DEVICE_SYNC_WORKER_POLL_MS_ENV_KEYS),
|
|
114
|
+
workerBatchSize: parseIntegerEnv(env, DEVICE_SYNC_WORKER_BATCH_SIZE_ENV_KEYS),
|
|
115
|
+
schedulerPollMs: parseIntegerEnv(env, DEVICE_SYNC_SCHEDULER_POLL_MS_ENV_KEYS),
|
|
116
|
+
log: logger,
|
|
117
|
+
};
|
|
118
|
+
return {
|
|
119
|
+
service: {
|
|
120
|
+
secret,
|
|
121
|
+
config: serviceConfig,
|
|
122
|
+
providers,
|
|
123
|
+
},
|
|
124
|
+
http: {
|
|
125
|
+
host,
|
|
126
|
+
port: parseIntegerEnv(env, DEVICE_SYNC_PORT_ENV_KEYS) ?? 8788,
|
|
127
|
+
controlToken,
|
|
128
|
+
ouraWebhookVerificationToken: optionalEnv(env, OURA_WEBHOOK_VERIFICATION_TOKEN_ENV_KEYS),
|
|
129
|
+
...publicListener,
|
|
130
|
+
},
|
|
131
|
+
};
|
|
132
|
+
}
|
|
133
|
+
export function createConsoleDeviceSyncLogger(consoleLike = console) {
|
|
134
|
+
return {
|
|
135
|
+
debug(message, context) {
|
|
136
|
+
consoleLike.debug?.(message, context ?? {});
|
|
137
|
+
},
|
|
138
|
+
info(message, context) {
|
|
139
|
+
consoleLike.info?.(message, context ?? {});
|
|
140
|
+
},
|
|
141
|
+
warn(message, context) {
|
|
142
|
+
consoleLike.warn?.(message, context ?? {});
|
|
143
|
+
},
|
|
144
|
+
error(message, context) {
|
|
145
|
+
consoleLike.error?.(message, context ?? {});
|
|
146
|
+
},
|
|
147
|
+
};
|
|
148
|
+
}
|
|
149
|
+
export function createConfiguredDeviceSyncProviders(env) {
|
|
150
|
+
const providers = [];
|
|
151
|
+
const garminConfig = readConfiguredGarminDeviceSyncProviderConfig(env);
|
|
152
|
+
const whoopConfig = readConfiguredWhoopDeviceSyncProviderConfig(env);
|
|
153
|
+
const ouraConfig = readConfiguredOuraDeviceSyncProviderConfig(env);
|
|
154
|
+
if (garminConfig) {
|
|
155
|
+
providers.push(createGarminDeviceSyncProvider(garminConfig));
|
|
156
|
+
}
|
|
157
|
+
if (whoopConfig) {
|
|
158
|
+
providers.push(createWhoopDeviceSyncProvider(whoopConfig));
|
|
159
|
+
}
|
|
160
|
+
if (ouraConfig) {
|
|
161
|
+
providers.push(createOuraDeviceSyncProvider(ouraConfig));
|
|
162
|
+
}
|
|
163
|
+
return providers;
|
|
164
|
+
}
|
|
165
|
+
export function readConfiguredGarminDeviceSyncProviderConfig(env) {
|
|
166
|
+
const credentials = readOptionalCredentialPair(env, GARMIN_CLIENT_ID_ENV_KEYS, GARMIN_CLIENT_SECRET_ENV_KEYS, "Garmin");
|
|
167
|
+
if (!credentials) {
|
|
168
|
+
return null;
|
|
169
|
+
}
|
|
170
|
+
return {
|
|
171
|
+
clientId: credentials.clientId,
|
|
172
|
+
clientSecret: credentials.clientSecret,
|
|
173
|
+
authBaseUrl: optionalEnv(env, GARMIN_AUTH_BASE_URL_ENV_KEYS),
|
|
174
|
+
tokenBaseUrl: optionalEnv(env, GARMIN_TOKEN_BASE_URL_ENV_KEYS),
|
|
175
|
+
apiBaseUrl: optionalEnv(env, GARMIN_API_BASE_URL_ENV_KEYS),
|
|
176
|
+
backfillDays: parseIntegerEnv(env, GARMIN_BACKFILL_DAYS_ENV_KEYS),
|
|
177
|
+
reconcileDays: parseIntegerEnv(env, GARMIN_RECONCILE_DAYS_ENV_KEYS),
|
|
178
|
+
reconcileIntervalMs: parseIntegerEnv(env, GARMIN_RECONCILE_INTERVAL_MS_ENV_KEYS),
|
|
179
|
+
requestTimeoutMs: parseIntegerEnv(env, GARMIN_REQUEST_TIMEOUT_MS_ENV_KEYS),
|
|
180
|
+
};
|
|
181
|
+
}
|
|
182
|
+
export function readConfiguredWhoopDeviceSyncProviderConfig(env) {
|
|
183
|
+
const credentials = readOptionalCredentialPair(env, WHOOP_CLIENT_ID_ENV_KEYS, WHOOP_CLIENT_SECRET_ENV_KEYS, "WHOOP");
|
|
184
|
+
if (!credentials) {
|
|
185
|
+
return null;
|
|
186
|
+
}
|
|
187
|
+
return {
|
|
188
|
+
clientId: credentials.clientId,
|
|
189
|
+
clientSecret: credentials.clientSecret,
|
|
190
|
+
baseUrl: optionalEnv(env, WHOOP_BASE_URL_ENV_KEYS),
|
|
191
|
+
scopes: parseCsvEnv(env, WHOOP_SCOPES_ENV_KEYS),
|
|
192
|
+
backfillDays: parseIntegerEnv(env, WHOOP_BACKFILL_DAYS_ENV_KEYS),
|
|
193
|
+
reconcileDays: parseIntegerEnv(env, WHOOP_RECONCILE_DAYS_ENV_KEYS),
|
|
194
|
+
reconcileIntervalMs: parseIntegerEnv(env, WHOOP_RECONCILE_INTERVAL_MS_ENV_KEYS),
|
|
195
|
+
webhookTimestampToleranceMs: parseIntegerEnv(env, WHOOP_WEBHOOK_TIMESTAMP_TOLERANCE_MS_ENV_KEYS),
|
|
196
|
+
requestTimeoutMs: parseIntegerEnv(env, WHOOP_REQUEST_TIMEOUT_MS_ENV_KEYS),
|
|
197
|
+
};
|
|
198
|
+
}
|
|
199
|
+
export function readConfiguredOuraDeviceSyncProviderConfig(env) {
|
|
200
|
+
const credentials = readOptionalCredentialPair(env, OURA_CLIENT_ID_ENV_KEYS, OURA_CLIENT_SECRET_ENV_KEYS, "Oura");
|
|
201
|
+
if (!credentials) {
|
|
202
|
+
return null;
|
|
203
|
+
}
|
|
204
|
+
return {
|
|
205
|
+
clientId: credentials.clientId,
|
|
206
|
+
clientSecret: credentials.clientSecret,
|
|
207
|
+
authBaseUrl: optionalEnv(env, OURA_AUTH_BASE_URL_ENV_KEYS),
|
|
208
|
+
apiBaseUrl: optionalEnv(env, OURA_API_BASE_URL_ENV_KEYS),
|
|
209
|
+
scopes: parseCsvEnv(env, OURA_SCOPES_ENV_KEYS),
|
|
210
|
+
backfillDays: parseIntegerEnv(env, OURA_BACKFILL_DAYS_ENV_KEYS),
|
|
211
|
+
reconcileDays: parseIntegerEnv(env, OURA_RECONCILE_DAYS_ENV_KEYS),
|
|
212
|
+
reconcileIntervalMs: parseIntegerEnv(env, OURA_RECONCILE_INTERVAL_MS_ENV_KEYS),
|
|
213
|
+
webhookTimestampToleranceMs: parseIntegerEnv(env, OURA_WEBHOOK_TIMESTAMP_TOLERANCE_MS_ENV_KEYS),
|
|
214
|
+
requestTimeoutMs: parseIntegerEnv(env, OURA_REQUEST_TIMEOUT_MS_ENV_KEYS),
|
|
215
|
+
};
|
|
216
|
+
}
|
|
217
|
+
function readOptionalPublicListener(env) {
|
|
218
|
+
const publicHost = optionalEnv(env, DEVICE_SYNC_PUBLIC_HOST_ENV_KEYS);
|
|
219
|
+
const publicPort = parseIntegerEnv(env, DEVICE_SYNC_PUBLIC_PORT_ENV_KEYS);
|
|
220
|
+
if (!publicHost && publicPort === undefined) {
|
|
221
|
+
return {};
|
|
222
|
+
}
|
|
223
|
+
if (!publicHost || publicPort === undefined) {
|
|
224
|
+
throw new TypeError("Set DEVICE_SYNC_PUBLIC_HOST and DEVICE_SYNC_PUBLIC_PORT together to enable the public callback/webhook listener.");
|
|
225
|
+
}
|
|
226
|
+
return {
|
|
227
|
+
publicHost,
|
|
228
|
+
publicPort,
|
|
229
|
+
};
|
|
230
|
+
}
|
|
231
|
+
function readOptionalCredentialPair(env, clientIdKeys, clientSecretKeys, providerLabel) {
|
|
232
|
+
const clientId = optionalEnv(env, clientIdKeys);
|
|
233
|
+
const clientSecret = optionalEnv(env, clientSecretKeys);
|
|
234
|
+
if (!clientId && !clientSecret) {
|
|
235
|
+
return null;
|
|
236
|
+
}
|
|
237
|
+
if (!clientId || !clientSecret) {
|
|
238
|
+
throw new TypeError(`${providerLabel} configuration is incomplete. Set ${clientIdKeys[0]} and ${clientSecretKeys[0]} together.`);
|
|
239
|
+
}
|
|
240
|
+
return { clientId, clientSecret };
|
|
241
|
+
}
|
|
242
|
+
function requireEnv(env, keys) {
|
|
243
|
+
const value = optionalEnv(env, keys);
|
|
244
|
+
if (!value) {
|
|
245
|
+
throw new TypeError(`Missing required environment variable. Set one of: ${keys.join(", ")}`);
|
|
246
|
+
}
|
|
247
|
+
return value;
|
|
248
|
+
}
|
|
249
|
+
function optionalEnv(env, keys) {
|
|
250
|
+
for (const key of keys) {
|
|
251
|
+
const value = normalizeString(env[key]);
|
|
252
|
+
if (value) {
|
|
253
|
+
return value;
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
return undefined;
|
|
257
|
+
}
|
|
258
|
+
function parseIntegerEnv(env, keys) {
|
|
259
|
+
const value = optionalEnv(env, keys);
|
|
260
|
+
if (!value) {
|
|
261
|
+
return undefined;
|
|
262
|
+
}
|
|
263
|
+
const parsed = Number.parseInt(value, 10);
|
|
264
|
+
if (!Number.isFinite(parsed)) {
|
|
265
|
+
throw new TypeError(`Environment variable ${keys[0]} must be an integer.`);
|
|
266
|
+
}
|
|
267
|
+
return parsed;
|
|
268
|
+
}
|
|
269
|
+
function parseCsvEnv(env, keys) {
|
|
270
|
+
const value = optionalEnv(env, keys);
|
|
271
|
+
if (!value) {
|
|
272
|
+
return undefined;
|
|
273
|
+
}
|
|
274
|
+
return value
|
|
275
|
+
.split(",")
|
|
276
|
+
.map((entry) => entry.trim())
|
|
277
|
+
.filter(Boolean);
|
|
278
|
+
}
|
|
279
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"crypto.d.ts","sourceRoot":"","sources":["../src/crypto.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,WAAW;IAC1B,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;CAClC;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,CA2B7D"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { createCipheriv, createDecipheriv, createHash, randomBytes } from "node:crypto";
|
|
2
|
+
export function createSecretCodec(secret) {
|
|
3
|
+
const key = createHash("sha256").update(secret).digest();
|
|
4
|
+
return {
|
|
5
|
+
encrypt(value) {
|
|
6
|
+
const iv = randomBytes(12);
|
|
7
|
+
const cipher = createCipheriv("aes-256-gcm", key, iv);
|
|
8
|
+
const ciphertext = Buffer.concat([cipher.update(value, "utf8"), cipher.final()]);
|
|
9
|
+
const authTag = cipher.getAuthTag();
|
|
10
|
+
return Buffer.concat([iv, authTag, ciphertext]).toString("base64url");
|
|
11
|
+
},
|
|
12
|
+
decrypt(payload) {
|
|
13
|
+
const decoded = Buffer.from(payload, "base64url");
|
|
14
|
+
if (decoded.length < 28) {
|
|
15
|
+
throw new TypeError("Encrypted payload is invalid.");
|
|
16
|
+
}
|
|
17
|
+
const iv = decoded.subarray(0, 12);
|
|
18
|
+
const authTag = decoded.subarray(12, 28);
|
|
19
|
+
const ciphertext = decoded.subarray(28);
|
|
20
|
+
const decipher = createDecipheriv("aes-256-gcm", key, iv);
|
|
21
|
+
decipher.setAuthTag(authTag);
|
|
22
|
+
const plaintext = Buffer.concat([decipher.update(ciphertext), decipher.final()]);
|
|
23
|
+
return plaintext.toString("utf8");
|
|
24
|
+
},
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=crypto.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"crypto.js","sourceRoot":"","sources":["../src/crypto.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAOxF,MAAM,UAAU,iBAAiB,CAAC,MAAc;IAC9C,MAAM,GAAG,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC;IAEzD,OAAO;QACL,OAAO,CAAC,KAAK;YACX,MAAM,EAAE,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC;YAC3B,MAAM,MAAM,GAAG,cAAc,CAAC,aAAa,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;YACtD,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YACjF,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;YACpC,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QACxE,CAAC;QACD,OAAO,CAAC,OAAO;YACb,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;YAElD,IAAI,OAAO,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;gBACxB,MAAM,IAAI,SAAS,CAAC,+BAA+B,CAAC,CAAC;YACvD,CAAC;YAED,MAAM,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACnC,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YACzC,MAAM,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YACxC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,aAAa,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;YAC1D,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAC7B,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YACjF,OAAO,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACpC,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export interface DeviceSyncErrorOptions {
|
|
2
|
+
code: string;
|
|
3
|
+
message: string;
|
|
4
|
+
retryable?: boolean;
|
|
5
|
+
httpStatus?: number;
|
|
6
|
+
accountStatus?: "reauthorization_required" | "disconnected" | null;
|
|
7
|
+
details?: Record<string, unknown>;
|
|
8
|
+
cause?: unknown;
|
|
9
|
+
}
|
|
10
|
+
export declare class DeviceSyncError extends Error {
|
|
11
|
+
readonly code: string;
|
|
12
|
+
readonly retryable: boolean;
|
|
13
|
+
readonly httpStatus: number;
|
|
14
|
+
readonly accountStatus: "reauthorization_required" | "disconnected" | null;
|
|
15
|
+
readonly details: Record<string, unknown> | undefined;
|
|
16
|
+
constructor(options: DeviceSyncErrorOptions);
|
|
17
|
+
}
|
|
18
|
+
export declare function deviceSyncError(options: DeviceSyncErrorOptions): DeviceSyncError;
|
|
19
|
+
export declare function isDeviceSyncError(error: unknown): error is DeviceSyncError;
|
|
20
|
+
export declare function formatDeviceSyncStartupError(error: unknown): string;
|
|
21
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,0BAA0B,GAAG,cAAc,GAAG,IAAI,CAAC;IACnE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,qBAAa,eAAgB,SAAQ,KAAK;IACxC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,aAAa,EAAE,0BAA0B,GAAG,cAAc,GAAG,IAAI,CAAC;IAC3E,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;gBAE1C,OAAO,EAAE,sBAAsB;CAS5C;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,sBAAsB,GAAG,eAAe,CAEhF;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,eAAe,CAE1E;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAUnE"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
export class DeviceSyncError extends Error {
|
|
2
|
+
code;
|
|
3
|
+
retryable;
|
|
4
|
+
httpStatus;
|
|
5
|
+
accountStatus;
|
|
6
|
+
details;
|
|
7
|
+
constructor(options) {
|
|
8
|
+
super(options.message, options.cause === undefined ? undefined : { cause: options.cause });
|
|
9
|
+
this.name = "DeviceSyncError";
|
|
10
|
+
this.code = options.code;
|
|
11
|
+
this.retryable = options.retryable ?? false;
|
|
12
|
+
this.httpStatus = options.httpStatus ?? 500;
|
|
13
|
+
this.accountStatus = options.accountStatus ?? null;
|
|
14
|
+
this.details = options.details;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
export function deviceSyncError(options) {
|
|
18
|
+
return new DeviceSyncError(options);
|
|
19
|
+
}
|
|
20
|
+
export function isDeviceSyncError(error) {
|
|
21
|
+
return error instanceof DeviceSyncError;
|
|
22
|
+
}
|
|
23
|
+
export function formatDeviceSyncStartupError(error) {
|
|
24
|
+
if (isDeviceSyncError(error)) {
|
|
25
|
+
return `${error.name} ${error.code}: ${error.message}`;
|
|
26
|
+
}
|
|
27
|
+
if (error instanceof Error) {
|
|
28
|
+
return `${error.name}: ${error.message}`;
|
|
29
|
+
}
|
|
30
|
+
return String(error);
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAUA,MAAM,OAAO,eAAgB,SAAQ,KAAK;IAC/B,IAAI,CAAS;IACb,SAAS,CAAU;IACnB,UAAU,CAAS;IACnB,aAAa,CAAqD;IAClE,OAAO,CAAsC;IAEtD,YAAY,OAA+B;QACzC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;QAC3F,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;QAC9B,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QACzB,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,KAAK,CAAC;QAC5C,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,GAAG,CAAC;QAC5C,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,IAAI,CAAC;QACnD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IACjC,CAAC;CACF;AAED,MAAM,UAAU,eAAe,CAAC,OAA+B;IAC7D,OAAO,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC;AACtC,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,KAAc;IAC9C,OAAO,KAAK,YAAY,eAAe,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,KAAc;IACzD,IAAI,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,GAAG,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC;IACzD,CAAC;IAED,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC3B,OAAO,GAAG,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC;IAC3C,CAAC;IAED,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;AACvB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hosted-hints.d.ts","sourceRoot":"","sources":["../src/hosted-hints.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAErD,wBAAgB,mCAAmC,CACjD,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,IAAI,CAAC,kBAAkB,EAAE,MAAM,GAAG,SAAS,CAAC,GAChD,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAazB"}
|