@elizaos/plugin-personal-assistant 2.0.3-beta.6 → 2.0.3-beta.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/actions/app-block.d.ts +15 -0
- package/dist/actions/app-block.d.ts.map +1 -0
- package/dist/actions/app-block.js +349 -0
- package/dist/actions/app-block.js.map +1 -0
- package/dist/actions/autofill.d.ts +20 -0
- package/dist/actions/autofill.d.ts.map +1 -0
- package/dist/actions/autofill.js +370 -0
- package/dist/actions/autofill.js.map +1 -0
- package/dist/actions/block.d.ts +30 -0
- package/dist/actions/block.d.ts.map +1 -0
- package/dist/actions/block.js +326 -0
- package/dist/actions/block.js.map +1 -0
- package/dist/actions/book-travel.d.ts +10 -0
- package/dist/actions/book-travel.d.ts.map +1 -0
- package/dist/actions/book-travel.js +467 -0
- package/dist/actions/book-travel.js.map +1 -0
- package/dist/actions/brief.d.ts +60 -0
- package/dist/actions/brief.d.ts.map +1 -0
- package/dist/actions/brief.js +485 -0
- package/dist/actions/brief.js.map +1 -0
- package/dist/actions/calendar.d.ts +22 -0
- package/dist/actions/calendar.d.ts.map +1 -0
- package/dist/actions/calendar.js +832 -0
- package/dist/actions/calendar.js.map +1 -0
- package/dist/actions/conflict-detect.d.ts +67 -0
- package/dist/actions/conflict-detect.d.ts.map +1 -0
- package/dist/actions/conflict-detect.js +310 -0
- package/dist/actions/conflict-detect.js.map +1 -0
- package/dist/actions/connector.d.ts +5 -0
- package/dist/actions/connector.d.ts.map +1 -0
- package/dist/actions/connector.js +1354 -0
- package/dist/actions/connector.js.map +1 -0
- package/dist/actions/credentials.d.ts +14 -0
- package/dist/actions/credentials.d.ts.map +1 -0
- package/dist/actions/credentials.js +191 -0
- package/dist/actions/credentials.js.map +1 -0
- package/dist/actions/document.d.ts +36 -0
- package/dist/actions/document.d.ts.map +1 -0
- package/dist/actions/document.js +613 -0
- package/dist/actions/document.js.map +1 -0
- package/dist/actions/entity.d.ts +20 -0
- package/dist/actions/entity.d.ts.map +1 -0
- package/dist/actions/entity.js +785 -0
- package/dist/actions/entity.js.map +1 -0
- package/dist/actions/health.d.ts +4 -0
- package/dist/actions/health.d.ts.map +1 -0
- package/dist/actions/health.js +37 -0
- package/dist/actions/health.js.map +1 -0
- package/dist/actions/inbox.d.ts +12 -0
- package/dist/actions/inbox.d.ts.map +1 -0
- package/dist/actions/inbox.js +13 -0
- package/dist/actions/inbox.js.map +1 -0
- package/dist/actions/lib/calendly-handler.d.ts +3 -0
- package/dist/actions/lib/calendly-handler.d.ts.map +1 -0
- package/dist/actions/lib/calendly-handler.js +506 -0
- package/dist/actions/lib/calendly-handler.js.map +1 -0
- package/dist/actions/lib/extract-goal-plan.d.ts +69 -0
- package/dist/actions/lib/extract-goal-plan.d.ts.map +1 -0
- package/dist/actions/lib/extract-goal-plan.js +488 -0
- package/dist/actions/lib/extract-goal-plan.js.map +1 -0
- package/dist/actions/lib/extract-life-operation.d.ts +18 -0
- package/dist/actions/lib/extract-life-operation.d.ts.map +1 -0
- package/dist/actions/lib/extract-life-operation.js +318 -0
- package/dist/actions/lib/extract-life-operation.js.map +1 -0
- package/dist/actions/lib/extract-task-plan.d.ts +78 -0
- package/dist/actions/lib/extract-task-plan.d.ts.map +1 -0
- package/dist/actions/lib/extract-task-plan.js +355 -0
- package/dist/actions/lib/extract-task-plan.js.map +1 -0
- package/dist/actions/lib/extract-update-fields.d.ts +27 -0
- package/dist/actions/lib/extract-update-fields.d.ts.map +1 -0
- package/dist/actions/lib/extract-update-fields.js +172 -0
- package/dist/actions/lib/extract-update-fields.js.map +1 -0
- package/dist/actions/lib/lifeops-deferred-draft.d.ts +68 -0
- package/dist/actions/lib/lifeops-deferred-draft.d.ts.map +1 -0
- package/dist/actions/lib/lifeops-deferred-draft.js +315 -0
- package/dist/actions/lib/lifeops-deferred-draft.js.map +1 -0
- package/dist/actions/lib/messaging-helpers.d.ts +20 -0
- package/dist/actions/lib/messaging-helpers.d.ts.map +1 -0
- package/dist/actions/lib/messaging-helpers.js +103 -0
- package/dist/actions/lib/messaging-helpers.js.map +1 -0
- package/dist/actions/lib/owner-policy-writes.d.ts +49 -0
- package/dist/actions/lib/owner-policy-writes.d.ts.map +1 -0
- package/dist/actions/lib/owner-policy-writes.js +157 -0
- package/dist/actions/lib/owner-policy-writes.js.map +1 -0
- package/dist/actions/lib/prompt-format.d.ts +3 -0
- package/dist/actions/lib/prompt-format.d.ts.map +1 -0
- package/dist/actions/lib/prompt-format.js +42 -0
- package/dist/actions/lib/prompt-format.js.map +1 -0
- package/dist/actions/lib/scheduling-handler.d.ts +93 -0
- package/dist/actions/lib/scheduling-handler.d.ts.map +1 -0
- package/dist/actions/lib/scheduling-handler.js +868 -0
- package/dist/actions/lib/scheduling-handler.js.map +1 -0
- package/dist/actions/life.d.ts +13 -0
- package/dist/actions/life.d.ts.map +1 -0
- package/dist/actions/life.js +2524 -0
- package/dist/actions/life.js.map +1 -0
- package/dist/actions/money.d.ts +24 -0
- package/dist/actions/money.d.ts.map +1 -0
- package/dist/actions/money.js +41 -0
- package/dist/actions/money.js.map +1 -0
- package/dist/actions/owner-surfaces.d.ts +11 -0
- package/dist/actions/owner-surfaces.d.ts.map +1 -0
- package/dist/actions/owner-surfaces.js +493 -0
- package/dist/actions/owner-surfaces.js.map +1 -0
- package/dist/actions/password-manager.d.ts +10 -0
- package/dist/actions/password-manager.d.ts.map +1 -0
- package/dist/actions/password-manager.js +195 -0
- package/dist/actions/password-manager.js.map +1 -0
- package/dist/actions/payments.d.ts +10 -0
- package/dist/actions/payments.d.ts.map +1 -0
- package/dist/actions/payments.js +5 -0
- package/dist/actions/payments.js.map +1 -0
- package/dist/actions/prioritize.d.ts +49 -0
- package/dist/actions/prioritize.d.ts.map +1 -0
- package/dist/actions/prioritize.js +313 -0
- package/dist/actions/prioritize.js.map +1 -0
- package/dist/actions/remote-desktop.d.ts +13 -0
- package/dist/actions/remote-desktop.d.ts.map +1 -0
- package/dist/actions/remote-desktop.js +11 -0
- package/dist/actions/remote-desktop.js.map +1 -0
- package/dist/actions/resolve-request.d.ts +12 -0
- package/dist/actions/resolve-request.d.ts.map +1 -0
- package/dist/actions/resolve-request.js +427 -0
- package/dist/actions/resolve-request.js.map +1 -0
- package/dist/actions/schedule.d.ts +10 -0
- package/dist/actions/schedule.d.ts.map +1 -0
- package/dist/actions/schedule.js +113 -0
- package/dist/actions/schedule.js.map +1 -0
- package/dist/actions/scheduled-task.d.ts +32 -0
- package/dist/actions/scheduled-task.d.ts.map +1 -0
- package/dist/actions/scheduled-task.js +661 -0
- package/dist/actions/scheduled-task.js.map +1 -0
- package/dist/actions/screen-time.d.ts +4 -0
- package/dist/actions/screen-time.d.ts.map +1 -0
- package/dist/actions/screen-time.js +47 -0
- package/dist/actions/screen-time.js.map +1 -0
- package/dist/actions/subscriptions.d.ts +8 -0
- package/dist/actions/subscriptions.d.ts.map +1 -0
- package/dist/actions/subscriptions.js +327 -0
- package/dist/actions/subscriptions.js.map +1 -0
- package/dist/actions/voice-call.d.ts +16 -0
- package/dist/actions/voice-call.d.ts.map +1 -0
- package/dist/actions/voice-call.js +756 -0
- package/dist/actions/voice-call.js.map +1 -0
- package/dist/actions/website-block.d.ts +15 -0
- package/dist/actions/website-block.d.ts.map +1 -0
- package/dist/actions/website-block.js +719 -0
- package/dist/actions/website-block.js.map +1 -0
- package/dist/actions/work-thread.d.ts +5 -0
- package/dist/actions/work-thread.d.ts.map +1 -0
- package/dist/actions/work-thread.js +556 -0
- package/dist/actions/work-thread.js.map +1 -0
- package/dist/activity-profile/activity-tracker-repo.d.ts +28 -0
- package/dist/activity-profile/activity-tracker-repo.d.ts.map +1 -0
- package/dist/activity-profile/activity-tracker-repo.js +61 -0
- package/dist/activity-profile/activity-tracker-repo.js.map +1 -0
- package/dist/activity-profile/activity-tracker-reporting.d.ts +52 -0
- package/dist/activity-profile/activity-tracker-reporting.d.ts.map +1 -0
- package/dist/activity-profile/activity-tracker-reporting.js +119 -0
- package/dist/activity-profile/activity-tracker-reporting.js.map +1 -0
- package/dist/activity-profile/activity-tracker-service.d.ts +36 -0
- package/dist/activity-profile/activity-tracker-service.d.ts.map +1 -0
- package/dist/activity-profile/activity-tracker-service.js +187 -0
- package/dist/activity-profile/activity-tracker-service.js.map +1 -0
- package/dist/activity-profile/analyzer.d.ts +23 -0
- package/dist/activity-profile/analyzer.d.ts.map +1 -0
- package/dist/activity-profile/analyzer.js +485 -0
- package/dist/activity-profile/analyzer.js.map +1 -0
- package/dist/activity-profile/presence-signal-bridge-service.d.ts +14 -0
- package/dist/activity-profile/presence-signal-bridge-service.d.ts.map +1 -0
- package/dist/activity-profile/presence-signal-bridge-service.js +159 -0
- package/dist/activity-profile/presence-signal-bridge-service.js.map +1 -0
- package/dist/activity-profile/proactive-inbox-digest.d.ts +3 -0
- package/dist/activity-profile/proactive-inbox-digest.d.ts.map +1 -0
- package/dist/activity-profile/proactive-inbox-digest.js +21 -0
- package/dist/activity-profile/proactive-inbox-digest.js.map +1 -0
- package/dist/activity-profile/proactive-planner.d.ts +150 -0
- package/dist/activity-profile/proactive-planner.d.ts.map +1 -0
- package/dist/activity-profile/proactive-planner.js +529 -0
- package/dist/activity-profile/proactive-planner.js.map +1 -0
- package/dist/activity-profile/proactive-worker.d.ts +33 -0
- package/dist/activity-profile/proactive-worker.d.ts.map +1 -0
- package/dist/activity-profile/proactive-worker.js +779 -0
- package/dist/activity-profile/proactive-worker.js.map +1 -0
- package/dist/activity-profile/profile-metadata.d.ts +10 -0
- package/dist/activity-profile/profile-metadata.d.ts.map +1 -0
- package/dist/activity-profile/profile-metadata.js +16 -0
- package/dist/activity-profile/profile-metadata.js.map +1 -0
- package/dist/activity-profile/redactor.d.ts +15 -0
- package/dist/activity-profile/redactor.d.ts.map +1 -0
- package/dist/activity-profile/redactor.js +22 -0
- package/dist/activity-profile/redactor.js.map +1 -0
- package/dist/activity-profile/service.d.ts +11 -0
- package/dist/activity-profile/service.d.ts.map +1 -0
- package/dist/activity-profile/service.js +272 -0
- package/dist/activity-profile/service.js.map +1 -0
- package/dist/activity-profile/types.d.ts +97 -0
- package/dist/activity-profile/types.d.ts.map +1 -0
- package/dist/activity-profile/types.js +36 -0
- package/dist/activity-profile/types.js.map +1 -0
- package/dist/agent-lifeops.d.ts +2 -0
- package/dist/agent-lifeops.d.ts.map +1 -0
- package/dist/agent-lifeops.js +2 -0
- package/dist/agent-lifeops.js.map +1 -0
- package/dist/api/client-lifeops.d.ts +319 -0
- package/dist/api/client-lifeops.d.ts.map +1 -0
- package/dist/api/client-lifeops.js +794 -0
- package/dist/api/client-lifeops.js.map +1 -0
- package/dist/automation-node-contributor.d.ts +2 -0
- package/dist/automation-node-contributor.d.ts.map +1 -0
- package/dist/automation-node-contributor.js +184 -0
- package/dist/automation-node-contributor.js.map +1 -0
- package/dist/client.d.ts +16 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +18 -0
- package/dist/client.js.map +1 -0
- package/dist/components/AppBlockerSettingsCard.d.ts +3 -0
- package/dist/components/AppBlockerSettingsCard.d.ts.map +1 -0
- package/dist/components/AppBlockerSettingsCard.js +538 -0
- package/dist/components/AppBlockerSettingsCard.js.map +1 -0
- package/dist/components/WebsiteBlockerSettingsCard.d.ts +3 -0
- package/dist/components/WebsiteBlockerSettingsCard.d.ts.map +1 -0
- package/dist/components/WebsiteBlockerSettingsCard.js +148 -0
- package/dist/components/WebsiteBlockerSettingsCard.js.map +1 -0
- package/dist/contracts/index.d.ts +2 -0
- package/dist/contracts/index.d.ts.map +1 -0
- package/dist/contracts/index.js +2 -0
- package/dist/contracts/index.js.map +1 -0
- package/dist/contracts/lifeops.d.ts +2 -0
- package/dist/contracts/lifeops.d.ts.map +1 -0
- package/dist/contracts/lifeops.js +2 -0
- package/dist/contracts/lifeops.js.map +1 -0
- package/dist/default-packs/autofill-whitelist-pack.d.ts +17 -0
- package/dist/default-packs/autofill-whitelist-pack.d.ts.map +1 -0
- package/dist/default-packs/autofill-whitelist-pack.js +56 -0
- package/dist/default-packs/autofill-whitelist-pack.js.map +1 -0
- package/dist/default-packs/consolidation-policies.d.ts +14 -0
- package/dist/default-packs/consolidation-policies.d.ts.map +1 -0
- package/dist/default-packs/consolidation-policies.js +17 -0
- package/dist/default-packs/consolidation-policies.js.map +1 -0
- package/dist/default-packs/contract-types.d.ts +200 -0
- package/dist/default-packs/contract-types.d.ts.map +1 -0
- package/dist/default-packs/contract-types.js +1 -0
- package/dist/default-packs/contract-types.js.map +1 -0
- package/dist/default-packs/daily-rhythm.d.ts +28 -0
- package/dist/default-packs/daily-rhythm.d.ts.map +1 -0
- package/dist/default-packs/daily-rhythm.js +136 -0
- package/dist/default-packs/daily-rhythm.js.map +1 -0
- package/dist/default-packs/escalation-ladders.d.ts +18 -0
- package/dist/default-packs/escalation-ladders.d.ts.map +1 -0
- package/dist/default-packs/escalation-ladders.js +17 -0
- package/dist/default-packs/escalation-ladders.js.map +1 -0
- package/dist/default-packs/executive-assistant.d.ts +50 -0
- package/dist/default-packs/executive-assistant.d.ts.map +1 -0
- package/dist/default-packs/executive-assistant.js +745 -0
- package/dist/default-packs/executive-assistant.js.map +1 -0
- package/dist/default-packs/followup-starter.d.ts +49 -0
- package/dist/default-packs/followup-starter.d.ts.map +1 -0
- package/dist/default-packs/followup-starter.js +104 -0
- package/dist/default-packs/followup-starter.js.map +1 -0
- package/dist/default-packs/habit-starters.d.ts +37 -0
- package/dist/default-packs/habit-starters.d.ts.map +1 -0
- package/dist/default-packs/habit-starters.js +255 -0
- package/dist/default-packs/habit-starters.js.map +1 -0
- package/dist/default-packs/inbox-triage-starter.d.ts +23 -0
- package/dist/default-packs/inbox-triage-starter.d.ts.map +1 -0
- package/dist/default-packs/inbox-triage-starter.js +61 -0
- package/dist/default-packs/inbox-triage-starter.js.map +1 -0
- package/dist/default-packs/index.d.ts +54 -0
- package/dist/default-packs/index.d.ts.map +1 -0
- package/dist/default-packs/index.js +150 -0
- package/dist/default-packs/index.js.map +1 -0
- package/dist/default-packs/lint.d.ts +62 -0
- package/dist/default-packs/lint.d.ts.map +1 -0
- package/dist/default-packs/lint.js +161 -0
- package/dist/default-packs/lint.js.map +1 -0
- package/dist/default-packs/morning-brief.d.ts +44 -0
- package/dist/default-packs/morning-brief.d.ts.map +1 -0
- package/dist/default-packs/morning-brief.js +69 -0
- package/dist/default-packs/morning-brief.js.map +1 -0
- package/dist/default-packs/quiet-user-watcher.d.ts +49 -0
- package/dist/default-packs/quiet-user-watcher.d.ts.map +1 -0
- package/dist/default-packs/quiet-user-watcher.js +92 -0
- package/dist/default-packs/quiet-user-watcher.js.map +1 -0
- package/dist/default-packs/registry-types.d.ts +51 -0
- package/dist/default-packs/registry-types.d.ts.map +1 -0
- package/dist/default-packs/registry-types.js +1 -0
- package/dist/default-packs/registry-types.js.map +1 -0
- package/dist/default-packs/task-definitions.d.ts +88 -0
- package/dist/default-packs/task-definitions.d.ts.map +1 -0
- package/dist/default-packs/task-definitions.js +87 -0
- package/dist/default-packs/task-definitions.js.map +1 -0
- package/dist/events/index.d.ts +34 -0
- package/dist/events/index.d.ts.map +1 -0
- package/dist/events/index.js +30 -0
- package/dist/events/index.js.map +1 -0
- package/dist/followup/actions/listOverdueFollowups.d.ts +3 -0
- package/dist/followup/actions/listOverdueFollowups.d.ts.map +1 -0
- package/dist/followup/actions/listOverdueFollowups.js +90 -0
- package/dist/followup/actions/listOverdueFollowups.js.map +1 -0
- package/dist/followup/actions/markFollowupDone.d.ts +3 -0
- package/dist/followup/actions/markFollowupDone.d.ts.map +1 -0
- package/dist/followup/actions/markFollowupDone.js +171 -0
- package/dist/followup/actions/markFollowupDone.js.map +1 -0
- package/dist/followup/actions/setFollowupThreshold.d.ts +3 -0
- package/dist/followup/actions/setFollowupThreshold.d.ts.map +1 -0
- package/dist/followup/actions/setFollowupThreshold.js +171 -0
- package/dist/followup/actions/setFollowupThreshold.js.map +1 -0
- package/dist/followup/followup-tracker.d.ts +83 -0
- package/dist/followup/followup-tracker.d.ts.map +1 -0
- package/dist/followup/followup-tracker.js +311 -0
- package/dist/followup/followup-tracker.js.map +1 -0
- package/dist/followup/index.d.ts +5 -0
- package/dist/followup/index.d.ts.map +1 -0
- package/dist/followup/index.js +39 -0
- package/dist/followup/index.js.map +1 -0
- package/dist/hooks/connector-error.d.ts +2 -0
- package/dist/hooks/connector-error.d.ts.map +1 -0
- package/dist/hooks/connector-error.js +13 -0
- package/dist/hooks/connector-error.js.map +1 -0
- package/dist/hooks/useDiscordConnector.d.ts +11 -0
- package/dist/hooks/useDiscordConnector.d.ts.map +1 -0
- package/dist/hooks/useDiscordConnector.js +95 -0
- package/dist/hooks/useDiscordConnector.js.map +1 -0
- package/dist/hooks/useGoogleLifeOpsConnector.d.ts +23 -0
- package/dist/hooks/useGoogleLifeOpsConnector.d.ts.map +1 -0
- package/dist/hooks/useGoogleLifeOpsConnector.js +630 -0
- package/dist/hooks/useGoogleLifeOpsConnector.js.map +1 -0
- package/dist/hooks/useIMessageConnector.d.ts +10 -0
- package/dist/hooks/useIMessageConnector.d.ts.map +1 -0
- package/dist/hooks/useIMessageConnector.js +57 -0
- package/dist/hooks/useIMessageConnector.js.map +1 -0
- package/dist/hooks/useInbox.d.ts +36 -0
- package/dist/hooks/useInbox.d.ts.map +1 -0
- package/dist/hooks/useInbox.js +96 -0
- package/dist/hooks/useInbox.js.map +1 -0
- package/dist/hooks/useLifeOpsActivitySignals.d.ts +2 -0
- package/dist/hooks/useLifeOpsActivitySignals.d.ts.map +1 -0
- package/dist/hooks/useLifeOpsActivitySignals.js +358 -0
- package/dist/hooks/useLifeOpsActivitySignals.js.map +1 -0
- package/dist/hooks/useLifeOpsAppState.d.ts +9 -0
- package/dist/hooks/useLifeOpsAppState.d.ts.map +1 -0
- package/dist/hooks/useLifeOpsAppState.js +79 -0
- package/dist/hooks/useLifeOpsAppState.js.map +1 -0
- package/dist/hooks/useLifeOpsCapabilitiesStatus.d.ts +8 -0
- package/dist/hooks/useLifeOpsCapabilitiesStatus.d.ts.map +1 -0
- package/dist/hooks/useLifeOpsCapabilitiesStatus.js +60 -0
- package/dist/hooks/useLifeOpsCapabilitiesStatus.js.map +1 -0
- package/dist/hooks/useLifeOpsXConnector.d.ts +11 -0
- package/dist/hooks/useLifeOpsXConnector.d.ts.map +1 -0
- package/dist/hooks/useLifeOpsXConnector.js +92 -0
- package/dist/hooks/useLifeOpsXConnector.js.map +1 -0
- package/dist/hooks/useSignalConnector.d.ts +14 -0
- package/dist/hooks/useSignalConnector.d.ts.map +1 -0
- package/dist/hooks/useSignalConnector.js +89 -0
- package/dist/hooks/useSignalConnector.js.map +1 -0
- package/dist/hooks/useTelegramConnector.d.ts +14 -0
- package/dist/hooks/useTelegramConnector.d.ts.map +1 -0
- package/dist/hooks/useTelegramConnector.js +97 -0
- package/dist/hooks/useTelegramConnector.js.map +1 -0
- package/dist/hooks/useWhatsAppConnector.d.ts +8 -0
- package/dist/hooks/useWhatsAppConnector.d.ts.map +1 -0
- package/dist/hooks/useWhatsAppConnector.js +62 -0
- package/dist/hooks/useWhatsAppConnector.js.map +1 -0
- package/dist/inbox/message-fetcher.d.ts +11 -0
- package/dist/inbox/message-fetcher.d.ts.map +1 -0
- package/dist/inbox/message-fetcher.js +13 -0
- package/dist/inbox/message-fetcher.js.map +1 -0
- package/dist/inbox/repository.d.ts +11 -0
- package/dist/inbox/repository.d.ts.map +1 -0
- package/dist/inbox/repository.js +5 -0
- package/dist/inbox/repository.js.map +1 -0
- package/dist/inbox/types.d.ts +10 -0
- package/dist/inbox/types.d.ts.map +1 -0
- package/dist/inbox/types.js +2 -0
- package/dist/inbox/types.js.map +1 -0
- package/dist/index.d.ts +36 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +188 -0
- package/dist/index.js.map +1 -0
- package/dist/lifeops/access.d.ts +29 -0
- package/dist/lifeops/access.d.ts.map +1 -0
- package/dist/lifeops/access.js +56 -0
- package/dist/lifeops/access.js.map +1 -0
- package/dist/lifeops/app-state.d.ts +22 -0
- package/dist/lifeops/app-state.d.ts.map +1 -0
- package/dist/lifeops/app-state.js +67 -0
- package/dist/lifeops/app-state.js.map +1 -0
- package/dist/lifeops/apple-reminders.d.ts +67 -0
- package/dist/lifeops/apple-reminders.d.ts.map +1 -0
- package/dist/lifeops/apple-reminders.js +396 -0
- package/dist/lifeops/apple-reminders.js.map +1 -0
- package/dist/lifeops/approval-queue.d.ts +38 -0
- package/dist/lifeops/approval-queue.d.ts.map +1 -0
- package/dist/lifeops/approval-queue.js +575 -0
- package/dist/lifeops/approval-queue.js.map +1 -0
- package/dist/lifeops/approval-queue.types.d.ts +172 -0
- package/dist/lifeops/approval-queue.types.d.ts.map +1 -0
- package/dist/lifeops/approval-queue.types.js +27 -0
- package/dist/lifeops/approval-queue.types.js.map +1 -0
- package/dist/lifeops/autofill-whitelist.d.ts +20 -0
- package/dist/lifeops/autofill-whitelist.d.ts.map +1 -0
- package/dist/lifeops/autofill-whitelist.js +59 -0
- package/dist/lifeops/autofill-whitelist.js.map +1 -0
- package/dist/lifeops/background-planner-dispatch.d.ts +60 -0
- package/dist/lifeops/background-planner-dispatch.d.ts.map +1 -0
- package/dist/lifeops/background-planner-dispatch.js +113 -0
- package/dist/lifeops/background-planner-dispatch.js.map +1 -0
- package/dist/lifeops/background-planner.d.ts +140 -0
- package/dist/lifeops/background-planner.d.ts.map +1 -0
- package/dist/lifeops/background-planner.js +359 -0
- package/dist/lifeops/background-planner.js.map +1 -0
- package/dist/lifeops/bill-extraction.d.ts +46 -0
- package/dist/lifeops/bill-extraction.d.ts.map +1 -0
- package/dist/lifeops/bill-extraction.js +325 -0
- package/dist/lifeops/bill-extraction.js.map +1 -0
- package/dist/lifeops/browser-constants.d.ts +4 -0
- package/dist/lifeops/browser-constants.d.ts.map +1 -0
- package/dist/lifeops/browser-constants.js +27 -0
- package/dist/lifeops/browser-constants.js.map +1 -0
- package/dist/lifeops/browser-extension-store.d.ts +61 -0
- package/dist/lifeops/browser-extension-store.d.ts.map +1 -0
- package/dist/lifeops/browser-extension-store.js +176 -0
- package/dist/lifeops/browser-extension-store.js.map +1 -0
- package/dist/lifeops/browser-session-lifecycle.d.ts +57 -0
- package/dist/lifeops/browser-session-lifecycle.d.ts.map +1 -0
- package/dist/lifeops/browser-session-lifecycle.js +308 -0
- package/dist/lifeops/browser-session-lifecycle.js.map +1 -0
- package/dist/lifeops/bulk-review.d.ts +333 -0
- package/dist/lifeops/bulk-review.d.ts.map +1 -0
- package/dist/lifeops/bulk-review.js +1120 -0
- package/dist/lifeops/bulk-review.js.map +1 -0
- package/dist/lifeops/calendar-gate.d.ts +20 -0
- package/dist/lifeops/calendar-gate.d.ts.map +1 -0
- package/dist/lifeops/calendar-gate.js +30 -0
- package/dist/lifeops/calendar-gate.js.map +1 -0
- package/dist/lifeops/channels/contract.d.ts +47 -0
- package/dist/lifeops/channels/contract.d.ts.map +1 -0
- package/dist/lifeops/channels/contract.js +1 -0
- package/dist/lifeops/channels/contract.js.map +1 -0
- package/dist/lifeops/channels/default-pack.d.ts +26 -0
- package/dist/lifeops/channels/default-pack.d.ts.map +1 -0
- package/dist/lifeops/channels/default-pack.js +243 -0
- package/dist/lifeops/channels/default-pack.js.map +1 -0
- package/dist/lifeops/channels/index.d.ts +5 -0
- package/dist/lifeops/channels/index.d.ts.map +1 -0
- package/dist/lifeops/channels/index.js +23 -0
- package/dist/lifeops/channels/index.js.map +1 -0
- package/dist/lifeops/channels/priority-posture.d.ts +36 -0
- package/dist/lifeops/channels/priority-posture.d.ts.map +1 -0
- package/dist/lifeops/channels/priority-posture.js +27 -0
- package/dist/lifeops/channels/priority-posture.js.map +1 -0
- package/dist/lifeops/channels/registry.d.ts +7 -0
- package/dist/lifeops/channels/registry.d.ts.map +1 -0
- package/dist/lifeops/channels/registry.js +49 -0
- package/dist/lifeops/channels/registry.js.map +1 -0
- package/dist/lifeops/checkin/checkin-service.d.ts +66 -0
- package/dist/lifeops/checkin/checkin-service.d.ts.map +1 -0
- package/dist/lifeops/checkin/checkin-service.js +1084 -0
- package/dist/lifeops/checkin/checkin-service.js.map +1 -0
- package/dist/lifeops/checkin/schedule-resolver.d.ts +17 -0
- package/dist/lifeops/checkin/schedule-resolver.d.ts.map +1 -0
- package/dist/lifeops/checkin/schedule-resolver.js +26 -0
- package/dist/lifeops/checkin/schedule-resolver.js.map +1 -0
- package/dist/lifeops/checkin/types.d.ts +106 -0
- package/dist/lifeops/checkin/types.d.ts.map +1 -0
- package/dist/lifeops/checkin/types.js +1 -0
- package/dist/lifeops/checkin/types.js.map +1 -0
- package/dist/lifeops/connectors/_helpers.d.ts +51 -0
- package/dist/lifeops/connectors/_helpers.d.ts.map +1 -0
- package/dist/lifeops/connectors/_helpers.js +104 -0
- package/dist/lifeops/connectors/_helpers.js.map +1 -0
- package/dist/lifeops/connectors/calendly.d.ts +11 -0
- package/dist/lifeops/connectors/calendly.d.ts.map +1 -0
- package/dist/lifeops/connectors/calendly.js +61 -0
- package/dist/lifeops/connectors/calendly.js.map +1 -0
- package/dist/lifeops/connectors/contract.d.ts +88 -0
- package/dist/lifeops/connectors/contract.d.ts.map +1 -0
- package/dist/lifeops/connectors/contract.js +1 -0
- package/dist/lifeops/connectors/contract.js.map +1 -0
- package/dist/lifeops/connectors/default-pack.d.ts +35 -0
- package/dist/lifeops/connectors/default-pack.d.ts.map +1 -0
- package/dist/lifeops/connectors/default-pack.js +37 -0
- package/dist/lifeops/connectors/default-pack.js.map +1 -0
- package/dist/lifeops/connectors/discord.d.ts +8 -0
- package/dist/lifeops/connectors/discord.d.ts.map +1 -0
- package/dist/lifeops/connectors/discord.js +53 -0
- package/dist/lifeops/connectors/discord.js.map +1 -0
- package/dist/lifeops/connectors/dispatch-policy.d.ts +75 -0
- package/dist/lifeops/connectors/dispatch-policy.d.ts.map +1 -0
- package/dist/lifeops/connectors/dispatch-policy.js +35 -0
- package/dist/lifeops/connectors/dispatch-policy.js.map +1 -0
- package/dist/lifeops/connectors/duffel.d.ts +11 -0
- package/dist/lifeops/connectors/duffel.d.ts.map +1 -0
- package/dist/lifeops/connectors/duffel.js +74 -0
- package/dist/lifeops/connectors/duffel.js.map +1 -0
- package/dist/lifeops/connectors/google.d.ts +27 -0
- package/dist/lifeops/connectors/google.d.ts.map +1 -0
- package/dist/lifeops/connectors/google.js +80 -0
- package/dist/lifeops/connectors/google.js.map +1 -0
- package/dist/lifeops/connectors/imessage.d.ts +11 -0
- package/dist/lifeops/connectors/imessage.d.ts.map +1 -0
- package/dist/lifeops/connectors/imessage.js +55 -0
- package/dist/lifeops/connectors/imessage.js.map +1 -0
- package/dist/lifeops/connectors/index.d.ts +5 -0
- package/dist/lifeops/connectors/index.d.ts.map +1 -0
- package/dist/lifeops/connectors/index.js +23 -0
- package/dist/lifeops/connectors/index.js.map +1 -0
- package/dist/lifeops/connectors/mockoon-redirect.d.ts +54 -0
- package/dist/lifeops/connectors/mockoon-redirect.d.ts.map +1 -0
- package/dist/lifeops/connectors/mockoon-redirect.js +71 -0
- package/dist/lifeops/connectors/mockoon-redirect.js.map +1 -0
- package/dist/lifeops/connectors/registry.d.ts +7 -0
- package/dist/lifeops/connectors/registry.d.ts.map +1 -0
- package/dist/lifeops/connectors/registry.js +55 -0
- package/dist/lifeops/connectors/registry.js.map +1 -0
- package/dist/lifeops/connectors/signal.d.ts +8 -0
- package/dist/lifeops/connectors/signal.d.ts.map +1 -0
- package/dist/lifeops/connectors/signal.js +60 -0
- package/dist/lifeops/connectors/signal.js.map +1 -0
- package/dist/lifeops/connectors/telegram.d.ts +12 -0
- package/dist/lifeops/connectors/telegram.d.ts.map +1 -0
- package/dist/lifeops/connectors/telegram.js +65 -0
- package/dist/lifeops/connectors/telegram.js.map +1 -0
- package/dist/lifeops/connectors/twilio.d.ts +15 -0
- package/dist/lifeops/connectors/twilio.d.ts.map +1 -0
- package/dist/lifeops/connectors/twilio.js +126 -0
- package/dist/lifeops/connectors/twilio.js.map +1 -0
- package/dist/lifeops/connectors/whatsapp.d.ts +10 -0
- package/dist/lifeops/connectors/whatsapp.d.ts.map +1 -0
- package/dist/lifeops/connectors/whatsapp.js +56 -0
- package/dist/lifeops/connectors/whatsapp.js.map +1 -0
- package/dist/lifeops/connectors/x.d.ts +8 -0
- package/dist/lifeops/connectors/x.d.ts.map +1 -0
- package/dist/lifeops/connectors/x.js +62 -0
- package/dist/lifeops/connectors/x.js.map +1 -0
- package/dist/lifeops/contact-route-policy.d.ts +27 -0
- package/dist/lifeops/contact-route-policy.d.ts.map +1 -0
- package/dist/lifeops/contact-route-policy.js +153 -0
- package/dist/lifeops/contact-route-policy.js.map +1 -0
- package/dist/lifeops/continuity-probe.d.ts +49 -0
- package/dist/lifeops/continuity-probe.d.ts.map +1 -0
- package/dist/lifeops/continuity-probe.js +161 -0
- package/dist/lifeops/continuity-probe.js.map +1 -0
- package/dist/lifeops/cross-channel-search.d.ts +108 -0
- package/dist/lifeops/cross-channel-search.d.ts.map +1 -0
- package/dist/lifeops/cross-channel-search.js +888 -0
- package/dist/lifeops/cross-channel-search.js.map +1 -0
- package/dist/lifeops/defaults.d.ts +30 -0
- package/dist/lifeops/defaults.d.ts.map +1 -0
- package/dist/lifeops/defaults.js +206 -0
- package/dist/lifeops/defaults.js.map +1 -0
- package/dist/lifeops/device-bus-service.d.ts +16 -0
- package/dist/lifeops/device-bus-service.d.ts.map +1 -0
- package/dist/lifeops/device-bus-service.js +20 -0
- package/dist/lifeops/device-bus-service.js.map +1 -0
- package/dist/lifeops/device-identity.d.ts +31 -0
- package/dist/lifeops/device-identity.d.ts.map +1 -0
- package/dist/lifeops/device-identity.js +94 -0
- package/dist/lifeops/device-identity.js.map +1 -0
- package/dist/lifeops/document-review.d.ts +264 -0
- package/dist/lifeops/document-review.d.ts.map +1 -0
- package/dist/lifeops/document-review.js +925 -0
- package/dist/lifeops/document-review.js.map +1 -0
- package/dist/lifeops/email-classifier.d.ts +9 -0
- package/dist/lifeops/email-classifier.d.ts.map +1 -0
- package/dist/lifeops/email-classifier.js +15 -0
- package/dist/lifeops/email-classifier.js.map +1 -0
- package/dist/lifeops/email-curation.d.ts +13 -0
- package/dist/lifeops/email-curation.d.ts.map +1 -0
- package/dist/lifeops/email-curation.js +2 -0
- package/dist/lifeops/email-curation.js.map +1 -0
- package/dist/lifeops/email-unsubscribe-types.d.ts +7 -0
- package/dist/lifeops/email-unsubscribe-types.d.ts.map +1 -0
- package/dist/lifeops/email-unsubscribe-types.js +1 -0
- package/dist/lifeops/email-unsubscribe-types.js.map +1 -0
- package/dist/lifeops/enforcement-windows.d.ts +34 -0
- package/dist/lifeops/enforcement-windows.d.ts.map +1 -0
- package/dist/lifeops/enforcement-windows.js +80 -0
- package/dist/lifeops/enforcement-windows.js.map +1 -0
- package/dist/lifeops/engine.d.ts +8 -0
- package/dist/lifeops/engine.d.ts.map +1 -0
- package/dist/lifeops/engine.js +540 -0
- package/dist/lifeops/engine.js.map +1 -0
- package/dist/lifeops/entities/index.d.ts +4 -0
- package/dist/lifeops/entities/index.d.ts.map +1 -0
- package/dist/lifeops/entities/index.js +29 -0
- package/dist/lifeops/entities/index.js.map +1 -0
- package/dist/lifeops/entities/merge.d.ts +9 -0
- package/dist/lifeops/entities/merge.d.ts.map +1 -0
- package/dist/lifeops/entities/merge.js +17 -0
- package/dist/lifeops/entities/merge.js.map +1 -0
- package/dist/lifeops/entities/store.d.ts +13 -0
- package/dist/lifeops/entities/store.d.ts.map +1 -0
- package/dist/lifeops/entities/store.js +7 -0
- package/dist/lifeops/entities/store.js.map +1 -0
- package/dist/lifeops/entities/types.d.ts +9 -0
- package/dist/lifeops/entities/types.d.ts.map +1 -0
- package/dist/lifeops/entities/types.js +13 -0
- package/dist/lifeops/entities/types.js.map +1 -0
- package/dist/lifeops/entities/voice-attribution.d.ts +70 -0
- package/dist/lifeops/entities/voice-attribution.d.ts.map +1 -0
- package/dist/lifeops/entities/voice-attribution.js +121 -0
- package/dist/lifeops/entities/voice-attribution.js.map +1 -0
- package/dist/lifeops/entities/voice-observer-bridge.d.ts +32 -0
- package/dist/lifeops/entities/voice-observer-bridge.d.ts.map +1 -0
- package/dist/lifeops/entities/voice-observer-bridge.js +68 -0
- package/dist/lifeops/entities/voice-observer-bridge.js.map +1 -0
- package/dist/lifeops/entities/voice-observer.d.ts +72 -0
- package/dist/lifeops/entities/voice-observer.d.ts.map +1 -0
- package/dist/lifeops/entities/voice-observer.js +97 -0
- package/dist/lifeops/entities/voice-observer.js.map +1 -0
- package/dist/lifeops/escalation-ladders.d.ts +28 -0
- package/dist/lifeops/escalation-ladders.d.ts.map +1 -0
- package/dist/lifeops/escalation-ladders.js +17 -0
- package/dist/lifeops/escalation-ladders.js.map +1 -0
- package/dist/lifeops/fda-probe.d.ts +23 -0
- package/dist/lifeops/fda-probe.d.ts.map +1 -0
- package/dist/lifeops/fda-probe.js +59 -0
- package/dist/lifeops/fda-probe.js.map +1 -0
- package/dist/lifeops/feature-flags.d.ts +24 -0
- package/dist/lifeops/feature-flags.d.ts.map +1 -0
- package/dist/lifeops/feature-flags.js +261 -0
- package/dist/lifeops/feature-flags.js.map +1 -0
- package/dist/lifeops/feature-flags.types.d.ts +156 -0
- package/dist/lifeops/feature-flags.types.d.ts.map +1 -0
- package/dist/lifeops/feature-flags.types.js +129 -0
- package/dist/lifeops/feature-flags.types.js.map +1 -0
- package/dist/lifeops/first-run/defaults.d.ts +57 -0
- package/dist/lifeops/first-run/defaults.d.ts.map +1 -0
- package/dist/lifeops/first-run/defaults.js +159 -0
- package/dist/lifeops/first-run/defaults.js.map +1 -0
- package/dist/lifeops/first-run/questions.d.ts +74 -0
- package/dist/lifeops/first-run/questions.d.ts.map +1 -0
- package/dist/lifeops/first-run/questions.js +184 -0
- package/dist/lifeops/first-run/questions.js.map +1 -0
- package/dist/lifeops/first-run/replay.d.ts +41 -0
- package/dist/lifeops/first-run/replay.d.ts.map +1 -0
- package/dist/lifeops/first-run/replay.js +34 -0
- package/dist/lifeops/first-run/replay.js.map +1 -0
- package/dist/lifeops/first-run/service.d.ts +147 -0
- package/dist/lifeops/first-run/service.d.ts.map +1 -0
- package/dist/lifeops/first-run/service.js +455 -0
- package/dist/lifeops/first-run/service.js.map +1 -0
- package/dist/lifeops/first-run/state.d.ts +36 -0
- package/dist/lifeops/first-run/state.d.ts.map +1 -0
- package/dist/lifeops/first-run/state.js +128 -0
- package/dist/lifeops/first-run/state.js.map +1 -0
- package/dist/lifeops/global-pause/store.d.ts +22 -0
- package/dist/lifeops/global-pause/store.d.ts.map +1 -0
- package/dist/lifeops/global-pause/store.js +18 -0
- package/dist/lifeops/global-pause/store.js.map +1 -0
- package/dist/lifeops/goal-grounding.d.ts +9 -0
- package/dist/lifeops/goal-grounding.d.ts.map +1 -0
- package/dist/lifeops/goal-grounding.js +19 -0
- package/dist/lifeops/goal-grounding.js.map +1 -0
- package/dist/lifeops/goal-semantic-evaluator.d.ts +8 -0
- package/dist/lifeops/goal-semantic-evaluator.d.ts.map +1 -0
- package/dist/lifeops/goal-semantic-evaluator.js +7 -0
- package/dist/lifeops/goal-semantic-evaluator.js.map +1 -0
- package/dist/lifeops/google/format-helpers.d.ts +63 -0
- package/dist/lifeops/google/format-helpers.d.ts.map +1 -0
- package/dist/lifeops/google/format-helpers.js +597 -0
- package/dist/lifeops/google/format-helpers.js.map +1 -0
- package/dist/lifeops/google-plugin-delegates.d.ts +59 -0
- package/dist/lifeops/google-plugin-delegates.d.ts.map +1 -0
- package/dist/lifeops/google-plugin-delegates.js +408 -0
- package/dist/lifeops/google-plugin-delegates.js.map +1 -0
- package/dist/lifeops/google-scopes.d.ts +15 -0
- package/dist/lifeops/google-scopes.d.ts.map +1 -0
- package/dist/lifeops/google-scopes.js +118 -0
- package/dist/lifeops/google-scopes.js.map +1 -0
- package/dist/lifeops/handoff/store.d.ts +23 -0
- package/dist/lifeops/handoff/store.d.ts.map +1 -0
- package/dist/lifeops/handoff/store.js +20 -0
- package/dist/lifeops/handoff/store.js.map +1 -0
- package/dist/lifeops/i18n/localized-examples-provider.d.ts +16 -0
- package/dist/lifeops/i18n/localized-examples-provider.d.ts.map +1 -0
- package/dist/lifeops/i18n/localized-examples-provider.js +33 -0
- package/dist/lifeops/i18n/localized-examples-provider.js.map +1 -0
- package/dist/lifeops/i18n/localized-examples-resolver.d.ts +32 -0
- package/dist/lifeops/i18n/localized-examples-resolver.d.ts.map +1 -0
- package/dist/lifeops/i18n/localized-examples-resolver.js +28 -0
- package/dist/lifeops/i18n/localized-examples-resolver.js.map +1 -0
- package/dist/lifeops/i18n/prompt-registry.d.ts +64 -0
- package/dist/lifeops/i18n/prompt-registry.d.ts.map +1 -0
- package/dist/lifeops/i18n/prompt-registry.js +283 -0
- package/dist/lifeops/i18n/prompt-registry.js.map +1 -0
- package/dist/lifeops/imessage-outbound-probe.d.ts +7 -0
- package/dist/lifeops/imessage-outbound-probe.d.ts.map +1 -0
- package/dist/lifeops/imessage-outbound-probe.js +81 -0
- package/dist/lifeops/imessage-outbound-probe.js.map +1 -0
- package/dist/lifeops/index.d.ts +24 -0
- package/dist/lifeops/index.d.ts.map +1 -0
- package/dist/lifeops/index.js +24 -0
- package/dist/lifeops/index.js.map +1 -0
- package/dist/lifeops/intent-sync.d.ts +64 -0
- package/dist/lifeops/intent-sync.d.ts.map +1 -0
- package/dist/lifeops/intent-sync.js +321 -0
- package/dist/lifeops/intent-sync.js.map +1 -0
- package/dist/lifeops/messaging/index.d.ts +2 -0
- package/dist/lifeops/messaging/index.d.ts.map +1 -0
- package/dist/lifeops/messaging/index.js +5 -0
- package/dist/lifeops/messaging/index.js.map +1 -0
- package/dist/lifeops/messaging/owner-send-policy.d.ts +3 -0
- package/dist/lifeops/messaging/owner-send-policy.d.ts.map +1 -0
- package/dist/lifeops/messaging/owner-send-policy.js +83 -0
- package/dist/lifeops/messaging/owner-send-policy.js.map +1 -0
- package/dist/lifeops/notifications-push.d.ts +37 -0
- package/dist/lifeops/notifications-push.d.ts.map +1 -0
- package/dist/lifeops/notifications-push.js +95 -0
- package/dist/lifeops/notifications-push.js.map +1 -0
- package/dist/lifeops/optimized-prompt-instructions.d.ts +5 -0
- package/dist/lifeops/optimized-prompt-instructions.d.ts.map +1 -0
- package/dist/lifeops/optimized-prompt-instructions.js +48 -0
- package/dist/lifeops/optimized-prompt-instructions.js.map +1 -0
- package/dist/lifeops/owner/fact-store.d.ts +143 -0
- package/dist/lifeops/owner/fact-store.d.ts.map +1 -0
- package/dist/lifeops/owner/fact-store.js +446 -0
- package/dist/lifeops/owner/fact-store.js.map +1 -0
- package/dist/lifeops/owner/profile-extraction-evaluator.d.ts +3 -0
- package/dist/lifeops/owner/profile-extraction-evaluator.d.ts.map +1 -0
- package/dist/lifeops/owner/profile-extraction-evaluator.js +241 -0
- package/dist/lifeops/owner/profile-extraction-evaluator.js.map +1 -0
- package/dist/lifeops/owner-profile.d.ts +61 -0
- package/dist/lifeops/owner-profile.d.ts.map +1 -0
- package/dist/lifeops/owner-profile.js +407 -0
- package/dist/lifeops/owner-profile.js.map +1 -0
- package/dist/lifeops/pending-prompts/store.d.ts +23 -0
- package/dist/lifeops/pending-prompts/store.d.ts.map +1 -0
- package/dist/lifeops/pending-prompts/store.js +16 -0
- package/dist/lifeops/pending-prompts/store.js.map +1 -0
- package/dist/lifeops/policy-memory.d.ts +190 -0
- package/dist/lifeops/policy-memory.d.ts.map +1 -0
- package/dist/lifeops/policy-memory.js +1026 -0
- package/dist/lifeops/policy-memory.js.map +1 -0
- package/dist/lifeops/priority-scoring.d.ts +51 -0
- package/dist/lifeops/priority-scoring.d.ts.map +1 -0
- package/dist/lifeops/priority-scoring.js +305 -0
- package/dist/lifeops/priority-scoring.js.map +1 -0
- package/dist/lifeops/privacy-egress.d.ts +92 -0
- package/dist/lifeops/privacy-egress.d.ts.map +1 -0
- package/dist/lifeops/privacy-egress.js +230 -0
- package/dist/lifeops/privacy-egress.js.map +1 -0
- package/dist/lifeops/privacy.d.ts +49 -0
- package/dist/lifeops/privacy.d.ts.map +1 -0
- package/dist/lifeops/privacy.js +66 -0
- package/dist/lifeops/privacy.js.map +1 -0
- package/dist/lifeops/redact-sensitive-data.d.ts +32 -0
- package/dist/lifeops/redact-sensitive-data.d.ts.map +1 -0
- package/dist/lifeops/redact-sensitive-data.js +98 -0
- package/dist/lifeops/redact-sensitive-data.js.map +1 -0
- package/dist/lifeops/registries/app-blocker-contribution.d.ts +13 -0
- package/dist/lifeops/registries/app-blocker-contribution.d.ts.map +1 -0
- package/dist/lifeops/registries/app-blocker-contribution.js +73 -0
- package/dist/lifeops/registries/app-blocker-contribution.js.map +1 -0
- package/dist/lifeops/registries/blocker-registry.d.ts +76 -0
- package/dist/lifeops/registries/blocker-registry.d.ts.map +1 -0
- package/dist/lifeops/registries/blocker-registry.js +40 -0
- package/dist/lifeops/registries/blocker-registry.js.map +1 -0
- package/dist/lifeops/registries/event-kind-registry.d.ts +57 -0
- package/dist/lifeops/registries/event-kind-registry.d.ts.map +1 -0
- package/dist/lifeops/registries/event-kind-registry.js +82 -0
- package/dist/lifeops/registries/event-kind-registry.js.map +1 -0
- package/dist/lifeops/registries/family-registry.d.ts +72 -0
- package/dist/lifeops/registries/family-registry.d.ts.map +1 -0
- package/dist/lifeops/registries/family-registry.js +98 -0
- package/dist/lifeops/registries/family-registry.js.map +1 -0
- package/dist/lifeops/registries/feature-flag-default-pack.d.ts +32 -0
- package/dist/lifeops/registries/feature-flag-default-pack.d.ts.map +1 -0
- package/dist/lifeops/registries/feature-flag-default-pack.js +36 -0
- package/dist/lifeops/registries/feature-flag-default-pack.js.map +1 -0
- package/dist/lifeops/registries/feature-flag-registry.d.ts +76 -0
- package/dist/lifeops/registries/feature-flag-registry.d.ts.map +1 -0
- package/dist/lifeops/registries/feature-flag-registry.js +68 -0
- package/dist/lifeops/registries/feature-flag-registry.js.map +1 -0
- package/dist/lifeops/registries/index.d.ts +24 -0
- package/dist/lifeops/registries/index.d.ts.map +1 -0
- package/dist/lifeops/registries/index.js +115 -0
- package/dist/lifeops/registries/index.js.map +1 -0
- package/dist/lifeops/registries/website-blocker-contribution.d.ts +21 -0
- package/dist/lifeops/registries/website-blocker-contribution.d.ts.map +1 -0
- package/dist/lifeops/registries/website-blocker-contribution.js +76 -0
- package/dist/lifeops/registries/website-blocker-contribution.js.map +1 -0
- package/dist/lifeops/registries/workflow-step-default-pack.d.ts +30 -0
- package/dist/lifeops/registries/workflow-step-default-pack.d.ts.map +1 -0
- package/dist/lifeops/registries/workflow-step-default-pack.js +315 -0
- package/dist/lifeops/registries/workflow-step-default-pack.js.map +1 -0
- package/dist/lifeops/registries/workflow-step-registry.d.ts +101 -0
- package/dist/lifeops/registries/workflow-step-registry.d.ts.map +1 -0
- package/dist/lifeops/registries/workflow-step-registry.js +56 -0
- package/dist/lifeops/registries/workflow-step-registry.js.map +1 -0
- package/dist/lifeops/relationships/extraction.d.ts +77 -0
- package/dist/lifeops/relationships/extraction.d.ts.map +1 -0
- package/dist/lifeops/relationships/extraction.js +146 -0
- package/dist/lifeops/relationships/extraction.js.map +1 -0
- package/dist/lifeops/relationships/index.d.ts +4 -0
- package/dist/lifeops/relationships/index.d.ts.map +1 -0
- package/dist/lifeops/relationships/index.js +19 -0
- package/dist/lifeops/relationships/index.js.map +1 -0
- package/dist/lifeops/relationships/mapping.d.ts +34 -0
- package/dist/lifeops/relationships/mapping.d.ts.map +1 -0
- package/dist/lifeops/relationships/mapping.js +87 -0
- package/dist/lifeops/relationships/mapping.js.map +1 -0
- package/dist/lifeops/relationships/store.d.ts +12 -0
- package/dist/lifeops/relationships/store.d.ts.map +1 -0
- package/dist/lifeops/relationships/store.js +5 -0
- package/dist/lifeops/relationships/store.js.map +1 -0
- package/dist/lifeops/relationships/types.d.ts +9 -0
- package/dist/lifeops/relationships/types.d.ts.map +1 -0
- package/dist/lifeops/relationships/types.js +11 -0
- package/dist/lifeops/relationships/types.js.map +1 -0
- package/dist/lifeops/relative-schedule-resolver.d.ts +13 -0
- package/dist/lifeops/relative-schedule-resolver.d.ts.map +1 -0
- package/dist/lifeops/relative-schedule-resolver.js +107 -0
- package/dist/lifeops/relative-schedule-resolver.js.map +1 -0
- package/dist/lifeops/relative-time.d.ts +15 -0
- package/dist/lifeops/relative-time.d.ts.map +1 -0
- package/dist/lifeops/relative-time.js +191 -0
- package/dist/lifeops/relative-time.js.map +1 -0
- package/dist/lifeops/repository.d.ts +638 -0
- package/dist/lifeops/repository.d.ts.map +1 -0
- package/dist/lifeops/repository.js +6289 -0
- package/dist/lifeops/repository.js.map +1 -0
- package/dist/lifeops/runtime-cache.d.ts +4 -0
- package/dist/lifeops/runtime-cache.d.ts.map +1 -0
- package/dist/lifeops/runtime-cache.js +7 -0
- package/dist/lifeops/runtime-cache.js.map +1 -0
- package/dist/lifeops/runtime-service-delegates.d.ts +236 -0
- package/dist/lifeops/runtime-service-delegates.d.ts.map +1 -0
- package/dist/lifeops/runtime-service-delegates.js +839 -0
- package/dist/lifeops/runtime-service-delegates.js.map +1 -0
- package/dist/lifeops/runtime.d.ts +13 -0
- package/dist/lifeops/runtime.d.ts.map +1 -0
- package/dist/lifeops/runtime.js +104 -0
- package/dist/lifeops/runtime.js.map +1 -0
- package/dist/lifeops/schedule-insight.d.ts +133 -0
- package/dist/lifeops/schedule-insight.d.ts.map +1 -0
- package/dist/lifeops/schedule-insight.js +726 -0
- package/dist/lifeops/schedule-insight.js.map +1 -0
- package/dist/lifeops/schedule-state.d.ts +39 -0
- package/dist/lifeops/schedule-state.d.ts.map +1 -0
- package/dist/lifeops/schedule-state.js +671 -0
- package/dist/lifeops/schedule-state.js.map +1 -0
- package/dist/lifeops/schedule-sync-config.d.ts +3 -0
- package/dist/lifeops/schedule-sync-config.d.ts.map +1 -0
- package/dist/lifeops/schedule-sync-config.js +23 -0
- package/dist/lifeops/schedule-sync-config.js.map +1 -0
- package/dist/lifeops/schedule-sync-contracts.d.ts +2 -0
- package/dist/lifeops/schedule-sync-contracts.d.ts.map +1 -0
- package/dist/lifeops/schedule-sync-contracts.js +2 -0
- package/dist/lifeops/schedule-sync-contracts.js.map +1 -0
- package/dist/lifeops/scheduled-task/index.d.ts +13 -0
- package/dist/lifeops/scheduled-task/index.d.ts.map +1 -0
- package/dist/lifeops/scheduled-task/index.js +14 -0
- package/dist/lifeops/scheduled-task/index.js.map +1 -0
- package/dist/lifeops/scheduled-task/runtime-wiring.d.ts +33 -0
- package/dist/lifeops/scheduled-task/runtime-wiring.d.ts.map +1 -0
- package/dist/lifeops/scheduled-task/runtime-wiring.js +334 -0
- package/dist/lifeops/scheduled-task/runtime-wiring.js.map +1 -0
- package/dist/lifeops/scheduled-task/scheduler.d.ts +28 -0
- package/dist/lifeops/scheduled-task/scheduler.d.ts.map +1 -0
- package/dist/lifeops/scheduled-task/scheduler.js +202 -0
- package/dist/lifeops/scheduled-task/scheduler.js.map +1 -0
- package/dist/lifeops/scheduled-task/service.d.ts +61 -0
- package/dist/lifeops/scheduled-task/service.d.ts.map +1 -0
- package/dist/lifeops/scheduled-task/service.js +64 -0
- package/dist/lifeops/scheduled-task/service.js.map +1 -0
- package/dist/lifeops/scheduler-task.d.ts +19 -0
- package/dist/lifeops/scheduler-task.d.ts.map +1 -0
- package/dist/lifeops/scheduler-task.js +201 -0
- package/dist/lifeops/scheduler-task.js.map +1 -0
- package/dist/lifeops/schema.d.ts +28068 -0
- package/dist/lifeops/schema.d.ts.map +1 -0
- package/dist/lifeops/schema.js +1689 -0
- package/dist/lifeops/schema.js.map +1 -0
- package/dist/lifeops/screen-context.d.ts +66 -0
- package/dist/lifeops/screen-context.d.ts.map +1 -0
- package/dist/lifeops/screen-context.js +347 -0
- package/dist/lifeops/screen-context.js.map +1 -0
- package/dist/lifeops/seed-routine-migration/migrator.d.ts +113 -0
- package/dist/lifeops/seed-routine-migration/migrator.d.ts.map +1 -0
- package/dist/lifeops/seed-routine-migration/migrator.js +142 -0
- package/dist/lifeops/seed-routine-migration/migrator.js.map +1 -0
- package/dist/lifeops/seed-routines.d.ts +24 -0
- package/dist/lifeops/seed-routines.d.ts.map +1 -0
- package/dist/lifeops/seed-routines.js +140 -0
- package/dist/lifeops/seed-routines.js.map +1 -0
- package/dist/lifeops/send-policy/contract.d.ts +81 -0
- package/dist/lifeops/send-policy/contract.d.ts.map +1 -0
- package/dist/lifeops/send-policy/contract.js +1 -0
- package/dist/lifeops/send-policy/contract.js.map +1 -0
- package/dist/lifeops/send-policy/index.d.ts +3 -0
- package/dist/lifeops/send-policy/index.d.ts.map +1 -0
- package/dist/lifeops/send-policy/index.js +13 -0
- package/dist/lifeops/send-policy/index.js.map +1 -0
- package/dist/lifeops/send-policy/registry.d.ts +7 -0
- package/dist/lifeops/send-policy/registry.d.ts.map +1 -0
- package/dist/lifeops/send-policy/registry.js +62 -0
- package/dist/lifeops/send-policy/registry.js.map +1 -0
- package/dist/lifeops/sensitive-request-delivery.d.ts +46 -0
- package/dist/lifeops/sensitive-request-delivery.d.ts.map +1 -0
- package/dist/lifeops/sensitive-request-delivery.js +103 -0
- package/dist/lifeops/sensitive-request-delivery.js.map +1 -0
- package/dist/lifeops/service-constants.d.ts +10 -0
- package/dist/lifeops/service-constants.d.ts.map +1 -0
- package/dist/lifeops/service-constants.js +129 -0
- package/dist/lifeops/service-constants.js.map +1 -0
- package/dist/lifeops/service-helpers-browser.d.ts +41 -0
- package/dist/lifeops/service-helpers-browser.d.ts.map +1 -0
- package/dist/lifeops/service-helpers-browser.js +290 -0
- package/dist/lifeops/service-helpers-browser.js.map +1 -0
- package/dist/lifeops/service-helpers-misc.d.ts +68 -0
- package/dist/lifeops/service-helpers-misc.d.ts.map +1 -0
- package/dist/lifeops/service-helpers-misc.js +531 -0
- package/dist/lifeops/service-helpers-misc.js.map +1 -0
- package/dist/lifeops/service-helpers-occurrence.d.ts +23 -0
- package/dist/lifeops/service-helpers-occurrence.d.ts.map +1 -0
- package/dist/lifeops/service-helpers-occurrence.js +257 -0
- package/dist/lifeops/service-helpers-occurrence.js.map +1 -0
- package/dist/lifeops/service-helpers-reminder.d.ts +260 -0
- package/dist/lifeops/service-helpers-reminder.d.ts.map +1 -0
- package/dist/lifeops/service-helpers-reminder.js +1186 -0
- package/dist/lifeops/service-helpers-reminder.js.map +1 -0
- package/dist/lifeops/service-mixin-browser.d.ts +31 -0
- package/dist/lifeops/service-mixin-browser.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-browser.js +975 -0
- package/dist/lifeops/service-mixin-browser.js.map +1 -0
- package/dist/lifeops/service-mixin-calendar.d.ts +53 -0
- package/dist/lifeops/service-mixin-calendar.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-calendar.js +68 -0
- package/dist/lifeops/service-mixin-calendar.js.map +1 -0
- package/dist/lifeops/service-mixin-core.d.ts +51 -0
- package/dist/lifeops/service-mixin-core.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-core.js +500 -0
- package/dist/lifeops/service-mixin-core.js.map +1 -0
- package/dist/lifeops/service-mixin-definitions.d.ts +14 -0
- package/dist/lifeops/service-mixin-definitions.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-definitions.js +470 -0
- package/dist/lifeops/service-mixin-definitions.js.map +1 -0
- package/dist/lifeops/service-mixin-discord.d.ts +49 -0
- package/dist/lifeops/service-mixin-discord.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-discord.js +1253 -0
- package/dist/lifeops/service-mixin-discord.js.map +1 -0
- package/dist/lifeops/service-mixin-drive.d.ts +96 -0
- package/dist/lifeops/service-mixin-drive.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-drive.js +213 -0
- package/dist/lifeops/service-mixin-drive.js.map +1 -0
- package/dist/lifeops/service-mixin-email-unsubscribe.d.ts +23 -0
- package/dist/lifeops/service-mixin-email-unsubscribe.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-email-unsubscribe.js +27 -0
- package/dist/lifeops/service-mixin-email-unsubscribe.js.map +1 -0
- package/dist/lifeops/service-mixin-gmail.d.ts +43 -0
- package/dist/lifeops/service-mixin-gmail.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-gmail.js +727 -0
- package/dist/lifeops/service-mixin-gmail.js.map +1 -0
- package/dist/lifeops/service-mixin-goals.d.ts +22 -0
- package/dist/lifeops/service-mixin-goals.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-goals.js +884 -0
- package/dist/lifeops/service-mixin-goals.js.map +1 -0
- package/dist/lifeops/service-mixin-google.d.ts +13 -0
- package/dist/lifeops/service-mixin-google.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-google.js +398 -0
- package/dist/lifeops/service-mixin-google.js.map +1 -0
- package/dist/lifeops/service-mixin-health.d.ts +27 -0
- package/dist/lifeops/service-mixin-health.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-health.js +670 -0
- package/dist/lifeops/service-mixin-health.js.map +1 -0
- package/dist/lifeops/service-mixin-imessage.d.ts +106 -0
- package/dist/lifeops/service-mixin-imessage.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-imessage.js +303 -0
- package/dist/lifeops/service-mixin-imessage.js.map +1 -0
- package/dist/lifeops/service-mixin-inbox.d.ts +55 -0
- package/dist/lifeops/service-mixin-inbox.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-inbox.js +597 -0
- package/dist/lifeops/service-mixin-inbox.js.map +1 -0
- package/dist/lifeops/service-mixin-relationships.d.ts +65 -0
- package/dist/lifeops/service-mixin-relationships.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-relationships.js +150 -0
- package/dist/lifeops/service-mixin-relationships.js.map +1 -0
- package/dist/lifeops/service-mixin-reminders.d.ts +62 -0
- package/dist/lifeops/service-mixin-reminders.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-reminders.js +4003 -0
- package/dist/lifeops/service-mixin-reminders.js.map +1 -0
- package/dist/lifeops/service-mixin-scheduling.d.ts +53 -0
- package/dist/lifeops/service-mixin-scheduling.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-scheduling.js +405 -0
- package/dist/lifeops/service-mixin-scheduling.js.map +1 -0
- package/dist/lifeops/service-mixin-screentime.d.ts +71 -0
- package/dist/lifeops/service-mixin-screentime.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-screentime.js +530 -0
- package/dist/lifeops/service-mixin-screentime.js.map +1 -0
- package/dist/lifeops/service-mixin-signal.d.ts +74 -0
- package/dist/lifeops/service-mixin-signal.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-signal.js +214 -0
- package/dist/lifeops/service-mixin-signal.js.map +1 -0
- package/dist/lifeops/service-mixin-sleep.d.ts +68 -0
- package/dist/lifeops/service-mixin-sleep.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-sleep.js +43 -0
- package/dist/lifeops/service-mixin-sleep.js.map +1 -0
- package/dist/lifeops/service-mixin-status.d.ts +31 -0
- package/dist/lifeops/service-mixin-status.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-status.js +373 -0
- package/dist/lifeops/service-mixin-status.js.map +1 -0
- package/dist/lifeops/service-mixin-subscriptions.d.ts +101 -0
- package/dist/lifeops/service-mixin-subscriptions.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-subscriptions.js +50 -0
- package/dist/lifeops/service-mixin-subscriptions.js.map +1 -0
- package/dist/lifeops/service-mixin-telegram.d.ts +104 -0
- package/dist/lifeops/service-mixin-telegram.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-telegram.js +280 -0
- package/dist/lifeops/service-mixin-telegram.js.map +1 -0
- package/dist/lifeops/service-mixin-travel.d.ts +66 -0
- package/dist/lifeops/service-mixin-travel.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-travel.js +275 -0
- package/dist/lifeops/service-mixin-travel.js.map +1 -0
- package/dist/lifeops/service-mixin-whatsapp.d.ts +96 -0
- package/dist/lifeops/service-mixin-whatsapp.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-whatsapp.js +186 -0
- package/dist/lifeops/service-mixin-whatsapp.js.map +1 -0
- package/dist/lifeops/service-mixin-workflows.d.ts +15 -0
- package/dist/lifeops/service-mixin-workflows.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-workflows.js +710 -0
- package/dist/lifeops/service-mixin-workflows.js.map +1 -0
- package/dist/lifeops/service-mixin-x-read.d.ts +31 -0
- package/dist/lifeops/service-mixin-x-read.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-x-read.js +267 -0
- package/dist/lifeops/service-mixin-x-read.js.map +1 -0
- package/dist/lifeops/service-mixin-x.d.ts +66 -0
- package/dist/lifeops/service-mixin-x.d.ts.map +1 -0
- package/dist/lifeops/service-mixin-x.js +501 -0
- package/dist/lifeops/service-mixin-x.js.map +1 -0
- package/dist/lifeops/service-normalize-connector.d.ts +19 -0
- package/dist/lifeops/service-normalize-connector.d.ts.map +1 -0
- package/dist/lifeops/service-normalize-connector.js +816 -0
- package/dist/lifeops/service-normalize-connector.js.map +1 -0
- package/dist/lifeops/service-normalize-gmail.d.ts +11 -0
- package/dist/lifeops/service-normalize-gmail.d.ts.map +1 -0
- package/dist/lifeops/service-normalize-gmail.js +85 -0
- package/dist/lifeops/service-normalize-gmail.js.map +1 -0
- package/dist/lifeops/service-normalize-task.d.ts +9 -0
- package/dist/lifeops/service-normalize-task.d.ts.map +1 -0
- package/dist/lifeops/service-normalize-task.js +567 -0
- package/dist/lifeops/service-normalize-task.js.map +1 -0
- package/dist/lifeops/service-normalize.d.ts +9 -0
- package/dist/lifeops/service-normalize.d.ts.map +1 -0
- package/dist/lifeops/service-normalize.js +53 -0
- package/dist/lifeops/service-normalize.js.map +1 -0
- package/dist/lifeops/service-types.d.ts +75 -0
- package/dist/lifeops/service-types.d.ts.map +1 -0
- package/dist/lifeops/service-types.js +5 -0
- package/dist/lifeops/service-types.js.map +1 -0
- package/dist/lifeops/service.d.ts +482 -0
- package/dist/lifeops/service.d.ts.map +1 -0
- package/dist/lifeops/service.js +62 -0
- package/dist/lifeops/service.js.map +1 -0
- package/dist/lifeops/signal-runtime-config.d.ts +13 -0
- package/dist/lifeops/signal-runtime-config.d.ts.map +1 -0
- package/dist/lifeops/signal-runtime-config.js +44 -0
- package/dist/lifeops/signal-runtime-config.js.map +1 -0
- package/dist/lifeops/signals/bus.d.ts +78 -0
- package/dist/lifeops/signals/bus.d.ts.map +1 -0
- package/dist/lifeops/signals/bus.js +117 -0
- package/dist/lifeops/signals/bus.js.map +1 -0
- package/dist/lifeops/sql.d.ts +65 -0
- package/dist/lifeops/sql.d.ts.map +1 -0
- package/dist/lifeops/sql.js +182 -0
- package/dist/lifeops/sql.js.map +1 -0
- package/dist/lifeops/stretch-decider.d.ts +73 -0
- package/dist/lifeops/stretch-decider.d.ts.map +1 -0
- package/dist/lifeops/stretch-decider.js +49 -0
- package/dist/lifeops/stretch-decider.js.map +1 -0
- package/dist/lifeops/telemetry-mapping.d.ts +14 -0
- package/dist/lifeops/telemetry-mapping.d.ts.map +1 -0
- package/dist/lifeops/telemetry-mapping.js +115 -0
- package/dist/lifeops/telemetry-mapping.js.map +1 -0
- package/dist/lifeops/telemetry-retention.d.ts +21 -0
- package/dist/lifeops/telemetry-retention.d.ts.map +1 -0
- package/dist/lifeops/telemetry-retention.js +13 -0
- package/dist/lifeops/telemetry-retention.js.map +1 -0
- package/dist/lifeops/time/timezone.d.ts +4 -0
- package/dist/lifeops/time/timezone.d.ts.map +1 -0
- package/dist/lifeops/time/timezone.js +154 -0
- package/dist/lifeops/time/timezone.js.map +1 -0
- package/dist/lifeops/time-util.d.ts +10 -0
- package/dist/lifeops/time-util.d.ts.map +1 -0
- package/dist/lifeops/time-util.js +14 -0
- package/dist/lifeops/time-util.js.map +1 -0
- package/dist/lifeops/time.d.ts +17 -0
- package/dist/lifeops/time.d.ts.map +1 -0
- package/dist/lifeops/time.js +152 -0
- package/dist/lifeops/time.js.map +1 -0
- package/dist/lifeops/travel-booking.types.d.ts +46 -0
- package/dist/lifeops/travel-booking.types.d.ts.map +1 -0
- package/dist/lifeops/travel-booking.types.js +1 -0
- package/dist/lifeops/travel-booking.types.js.map +1 -0
- package/dist/lifeops/triggers/schedule-once.d.ts +19 -0
- package/dist/lifeops/triggers/schedule-once.d.ts.map +1 -0
- package/dist/lifeops/triggers/schedule-once.js +99 -0
- package/dist/lifeops/triggers/schedule-once.js.map +1 -0
- package/dist/lifeops/validate/coding-task-request.d.ts +18 -0
- package/dist/lifeops/validate/coding-task-request.d.ts.map +1 -0
- package/dist/lifeops/validate/coding-task-request.js +16 -0
- package/dist/lifeops/validate/coding-task-request.js.map +1 -0
- package/dist/lifeops/voice/grounded-reply.d.ts +41 -0
- package/dist/lifeops/voice/grounded-reply.d.ts.map +1 -0
- package/dist/lifeops/voice/grounded-reply.js +24 -0
- package/dist/lifeops/voice/grounded-reply.js.map +1 -0
- package/dist/lifeops/voice-affect.d.ts +79 -0
- package/dist/lifeops/voice-affect.d.ts.map +1 -0
- package/dist/lifeops/voice-affect.js +253 -0
- package/dist/lifeops/voice-affect.js.map +1 -0
- package/dist/lifeops/wave1-types.d.ts +125 -0
- package/dist/lifeops/wave1-types.d.ts.map +1 -0
- package/dist/lifeops/wave1-types.js +1 -0
- package/dist/lifeops/wave1-types.js.map +1 -0
- package/dist/lifeops/work-threads/field-evaluator-thread-ops.d.ts +33 -0
- package/dist/lifeops/work-threads/field-evaluator-thread-ops.d.ts.map +1 -0
- package/dist/lifeops/work-threads/field-evaluator-thread-ops.js +226 -0
- package/dist/lifeops/work-threads/field-evaluator-thread-ops.js.map +1 -0
- package/dist/lifeops/work-threads/index.d.ts +3 -0
- package/dist/lifeops/work-threads/index.d.ts.map +1 -0
- package/dist/lifeops/work-threads/index.js +7 -0
- package/dist/lifeops/work-threads/index.js.map +1 -0
- package/dist/lifeops/work-threads/store.d.ts +91 -0
- package/dist/lifeops/work-threads/store.d.ts.map +1 -0
- package/dist/lifeops/work-threads/store.js +245 -0
- package/dist/lifeops/work-threads/store.js.map +1 -0
- package/dist/lifeops/work-threads/types.d.ts +58 -0
- package/dist/lifeops/work-threads/types.d.ts.map +1 -0
- package/dist/lifeops/work-threads/types.js +1 -0
- package/dist/lifeops/work-threads/types.js.map +1 -0
- package/dist/platform/host.d.ts +16 -0
- package/dist/platform/host.d.ts.map +1 -0
- package/dist/platform/host.js +22 -0
- package/dist/platform/host.js.map +1 -0
- package/dist/platform/index.d.ts +3 -0
- package/dist/platform/index.d.ts.map +1 -0
- package/dist/platform/index.js +3 -0
- package/dist/platform/index.js.map +1 -0
- package/dist/platform/lifeops-github.d.ts +15 -0
- package/dist/platform/lifeops-github.d.ts.map +1 -0
- package/dist/platform/lifeops-github.js +146 -0
- package/dist/platform/lifeops-github.js.map +1 -0
- package/dist/plugin.d.ts +106 -0
- package/dist/plugin.d.ts.map +1 -0
- package/dist/plugin.js +989 -0
- package/dist/plugin.js.map +1 -0
- package/dist/provider.d.ts +4 -0
- package/dist/provider.d.ts.map +1 -0
- package/dist/provider.js +108 -0
- package/dist/provider.js.map +1 -0
- package/dist/providers/activity-profile.d.ts +3 -0
- package/dist/providers/activity-profile.d.ts.map +1 -0
- package/dist/providers/activity-profile.js +140 -0
- package/dist/providers/activity-profile.js.map +1 -0
- package/dist/providers/cross-channel-context.d.ts +29 -0
- package/dist/providers/cross-channel-context.d.ts.map +1 -0
- package/dist/providers/cross-channel-context.js +206 -0
- package/dist/providers/cross-channel-context.js.map +1 -0
- package/dist/providers/first-run.d.ts +22 -0
- package/dist/providers/first-run.d.ts.map +1 -0
- package/dist/providers/first-run.js +93 -0
- package/dist/providers/first-run.js.map +1 -0
- package/dist/providers/health.d.ts +2 -0
- package/dist/providers/health.d.ts.map +1 -0
- package/dist/providers/health.js +14 -0
- package/dist/providers/health.js.map +1 -0
- package/dist/providers/inbox-triage.d.ts +3 -0
- package/dist/providers/inbox-triage.d.ts.map +1 -0
- package/dist/providers/inbox-triage.js +134 -0
- package/dist/providers/inbox-triage.js.map +1 -0
- package/dist/providers/lifeops.d.ts +3 -0
- package/dist/providers/lifeops.d.ts.map +1 -0
- package/dist/providers/lifeops.js +548 -0
- package/dist/providers/lifeops.js.map +1 -0
- package/dist/providers/pending-prompts.d.ts +38 -0
- package/dist/providers/pending-prompts.d.ts.map +1 -0
- package/dist/providers/pending-prompts.js +81 -0
- package/dist/providers/pending-prompts.js.map +1 -0
- package/dist/providers/recent-task-states.d.ts +52 -0
- package/dist/providers/recent-task-states.d.ts.map +1 -0
- package/dist/providers/recent-task-states.js +166 -0
- package/dist/providers/recent-task-states.js.map +1 -0
- package/dist/providers/room-policy.d.ts +16 -0
- package/dist/providers/room-policy.d.ts.map +1 -0
- package/dist/providers/room-policy.js +71 -0
- package/dist/providers/room-policy.js.map +1 -0
- package/dist/providers/work-threads.d.ts +3 -0
- package/dist/providers/work-threads.d.ts.map +1 -0
- package/dist/providers/work-threads.js +97 -0
- package/dist/providers/work-threads.js.map +1 -0
- package/dist/public.d.ts +3 -0
- package/dist/public.d.ts.map +1 -0
- package/dist/public.js +17 -0
- package/dist/public.js.map +1 -0
- package/dist/routes/cloud-features-routes.d.ts +9 -0
- package/dist/routes/cloud-features-routes.d.ts.map +1 -0
- package/dist/routes/cloud-features-routes.js +164 -0
- package/dist/routes/cloud-features-routes.js.map +1 -0
- package/dist/routes/entities.d.ts +14 -0
- package/dist/routes/entities.d.ts.map +1 -0
- package/dist/routes/entities.js +203 -0
- package/dist/routes/entities.js.map +1 -0
- package/dist/routes/lifeops-routes.d.ts +20 -0
- package/dist/routes/lifeops-routes.d.ts.map +1 -0
- package/dist/routes/lifeops-routes.js +2337 -0
- package/dist/routes/lifeops-routes.js.map +1 -0
- package/dist/routes/plugin.d.ts +9 -0
- package/dist/routes/plugin.d.ts.map +1 -0
- package/dist/routes/plugin.js +568 -0
- package/dist/routes/plugin.js.map +1 -0
- package/dist/routes/relationships.d.ts +13 -0
- package/dist/routes/relationships.d.ts.map +1 -0
- package/dist/routes/relationships.js +195 -0
- package/dist/routes/relationships.js.map +1 -0
- package/dist/routes/scheduled-tasks.d.ts +102 -0
- package/dist/routes/scheduled-tasks.d.ts.map +1 -0
- package/dist/routes/scheduled-tasks.js +322 -0
- package/dist/routes/scheduled-tasks.js.map +1 -0
- package/dist/routes/sleep-routes.d.ts +3 -0
- package/dist/routes/sleep-routes.d.ts.map +1 -0
- package/dist/routes/sleep-routes.js +33 -0
- package/dist/routes/sleep-routes.js.map +1 -0
- package/dist/routes/travel-provider-relay-routes.d.ts +2 -0
- package/dist/routes/travel-provider-relay-routes.d.ts.map +1 -0
- package/dist/routes/travel-provider-relay-routes.js +7 -0
- package/dist/routes/travel-provider-relay-routes.js.map +1 -0
- package/dist/routes/website-blocker-routes.d.ts +6 -0
- package/dist/routes/website-blocker-routes.d.ts.map +1 -0
- package/dist/routes/website-blocker-routes.js +218 -0
- package/dist/routes/website-blocker-routes.js.map +1 -0
- package/dist/security/action-confirmation.d.ts +12 -0
- package/dist/security/action-confirmation.d.ts.map +1 -0
- package/dist/security/action-confirmation.js +36 -0
- package/dist/security/action-confirmation.js.map +1 -0
- package/dist/service.d.ts +34 -0
- package/dist/service.d.ts.map +1 -0
- package/dist/service.js +111 -0
- package/dist/service.js.map +1 -0
- package/dist/travel-time/calendar-create.d.ts +17 -0
- package/dist/travel-time/calendar-create.d.ts.map +1 -0
- package/dist/travel-time/calendar-create.js +28 -0
- package/dist/travel-time/calendar-create.js.map +1 -0
- package/dist/travel-time/service.d.ts +114 -0
- package/dist/travel-time/service.d.ts.map +1 -0
- package/dist/travel-time/service.js +209 -0
- package/dist/travel-time/service.js.map +1 -0
- package/dist/types/app-blocker-settings-card.d.ts +2 -0
- package/dist/types/app-blocker-settings-card.d.ts.map +1 -0
- package/dist/types/app-blocker-settings-card.js +1 -0
- package/dist/types/app-blocker-settings-card.js.map +1 -0
- package/dist/types/briefing.d.ts +59 -0
- package/dist/types/briefing.d.ts.map +1 -0
- package/dist/types/briefing.js +1 -0
- package/dist/types/briefing.js.map +1 -0
- package/dist/types/document-request.d.ts +41 -0
- package/dist/types/document-request.d.ts.map +1 -0
- package/dist/types/document-request.js +1 -0
- package/dist/types/document-request.js.map +1 -0
- package/dist/types/index.d.ts +5 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +1 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/website-blocker-settings-card.d.ts +2 -0
- package/dist/types/website-blocker-settings-card.d.ts.map +1 -0
- package/dist/types/website-blocker-settings-card.js +1 -0
- package/dist/types/website-blocker-settings-card.js.map +1 -0
- package/dist/ui.d.ts +13 -0
- package/dist/ui.d.ts.map +1 -0
- package/dist/ui.js +25 -0
- package/dist/ui.js.map +1 -0
- package/dist/utils/format-duration.d.ts +2 -0
- package/dist/utils/format-duration.d.ts.map +1 -0
- package/dist/utils/format-duration.js +13 -0
- package/dist/utils/format-duration.js.map +1 -0
- package/dist/utils/index.d.ts +3 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +3 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/lifeops-url.d.ts +3 -0
- package/dist/utils/lifeops-url.d.ts.map +1 -0
- package/dist/utils/lifeops-url.js +28 -0
- package/dist/utils/lifeops-url.js.map +1 -0
- package/dist/website-blocker/chat-integration/block-activator.d.ts +32 -0
- package/dist/website-blocker/chat-integration/block-activator.d.ts.map +1 -0
- package/dist/website-blocker/chat-integration/block-activator.js +30 -0
- package/dist/website-blocker/chat-integration/block-activator.js.map +1 -0
- package/dist/website-blocker/chat-integration/block-rule-reconciler.d.ts +7 -0
- package/dist/website-blocker/chat-integration/block-rule-reconciler.d.ts.map +1 -0
- package/dist/website-blocker/chat-integration/block-rule-reconciler.js +115 -0
- package/dist/website-blocker/chat-integration/block-rule-reconciler.js.map +1 -0
- package/dist/website-blocker/chat-integration/block-rule-schema.d.ts +39 -0
- package/dist/website-blocker/chat-integration/block-rule-schema.d.ts.map +1 -0
- package/dist/website-blocker/chat-integration/block-rule-schema.js +133 -0
- package/dist/website-blocker/chat-integration/block-rule-schema.js.map +1 -0
- package/dist/website-blocker/chat-integration/block-rule-service.d.ts +21 -0
- package/dist/website-blocker/chat-integration/block-rule-service.d.ts.map +1 -0
- package/dist/website-blocker/chat-integration/block-rule-service.js +230 -0
- package/dist/website-blocker/chat-integration/block-rule-service.js.map +1 -0
- package/dist/website-blocker/chat-integration/harsh-mode-check.d.ts +13 -0
- package/dist/website-blocker/chat-integration/harsh-mode-check.d.ts.map +1 -0
- package/dist/website-blocker/chat-integration/harsh-mode-check.js +22 -0
- package/dist/website-blocker/chat-integration/harsh-mode-check.js.map +1 -0
- package/dist/website-blocker/chat-integration/index.d.ts +5 -0
- package/dist/website-blocker/chat-integration/index.d.ts.map +1 -0
- package/dist/website-blocker/chat-integration/index.js +26 -0
- package/dist/website-blocker/chat-integration/index.js.map +1 -0
- package/dist/website-blocker/proactive-block-bridge.d.ts +75 -0
- package/dist/website-blocker/proactive-block-bridge.d.ts.map +1 -0
- package/dist/website-blocker/proactive-block-bridge.js +154 -0
- package/dist/website-blocker/proactive-block-bridge.js.map +1 -0
- package/dist/website-blocker/public.d.ts +12 -0
- package/dist/website-blocker/public.d.ts.map +1 -0
- package/dist/website-blocker/public.js +51 -0
- package/dist/website-blocker/public.js.map +1 -0
- package/package.json +28 -28
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/travel-time/service.ts"],"sourcesContent":["/**\n * T8a — Travel-time awareness (plan §6.9).\n *\n * {@link TravelTimeService} computes a travel-time buffer (in minutes) for a\n * calendar event. It calls Google's Distance Matrix API with\n * `departure_time=now` and prefers `duration_in_traffic` over `duration`.\n * Missing configuration, missing addresses, and provider failures are surfaced\n * as explicit errors. The service never fabricates a travel buffer.\n */\n\nimport type { IAgentRuntime } from \"@elizaos/core\";\nimport type {\n LifeOpsCalendarEvent,\n LifeOpsCalendarFeed,\n} from \"@elizaos/shared\";\n\nexport const GOOGLE_DISTANCE_MATRIX_URL =\n \"https://maps.googleapis.com/maps/api/distancematrix/json\";\n\nexport type TravelBufferMethod = \"maps-api\";\n\nexport interface TravelBufferResult {\n bufferMinutes: number;\n method: TravelBufferMethod;\n originAddress: string | null;\n destinationAddress: string | null;\n}\n\nexport interface ComputeTravelBufferInput {\n eventId: string;\n originAddress?: string;\n}\n\n/** Structural provider for resolving an event's destination address. */\nexport interface CalendarEventLookupLike {\n getCalendarFeed(\n requestUrl: URL,\n request: { timeMin?: string; timeMax?: string },\n now?: Date,\n ): Promise<LifeOpsCalendarFeed>;\n}\n\n/** Injectable HTTP fetcher so tests don't hit the network. */\nexport type TravelTimeFetch = (\n url: string,\n init?: { signal?: AbortSignal },\n) => Promise<{\n ok: boolean;\n status: number;\n json: () => Promise<unknown>;\n}>;\n\n/**\n * Structural slice of the Location plugin\n * (`@elizaos/plugin-location`'s `LocationPlugin`).\n *\n * Captured here as a local interface so this service stays free of any\n * platform/native imports — the action layer wires the real plugin in.\n */\nexport interface LocationProviderLike {\n checkPermissions(): Promise<{ location: \"granted\" | \"denied\" | \"prompt\" }>;\n getCurrentPosition(options?: {\n timeout?: number;\n accuracy?: \"best\" | \"high\" | \"medium\" | \"low\" | \"passive\";\n maxAge?: number;\n }): Promise<{\n coords: { latitude: number; longitude: number };\n } | null>;\n}\n\nexport interface TravelTimeServiceDeps {\n calendar: CalendarEventLookupLike;\n /** Optional fetch override. Defaults to global `fetch`. */\n fetchImpl?: TravelTimeFetch;\n /** Optional env accessor — defaults to `process.env.GOOGLE_MAPS_API_KEY`. */\n getApiKey?: () => string | undefined;\n /** Default origin used when caller omits originAddress. */\n defaultOriginAddress?: string | null;\n /**\n * Optional Location plugin handle. When supplied, the service falls back\n * to `Location.getCurrentPosition()` if no origin address was provided\n * (and no `defaultOriginAddress` is configured) but the user has granted\n * location permission. A denied permission, a missing plugin, or a\n * plugin error all surface as `MISSING_ORIGIN` so callers fail loud\n * instead of silently fabricating a buffer.\n */\n locationProvider?: LocationProviderLike;\n}\n\ninterface DistanceMatrixElement {\n status: string;\n duration?: { value: number; text: string };\n duration_in_traffic?: { value: number; text: string };\n}\n\ninterface DistanceMatrixResponse {\n status: string;\n rows?: Array<{ elements: DistanceMatrixElement[] }>;\n origin_addresses?: string[];\n destination_addresses?: string[];\n}\n\nexport class TravelTimeUnavailableError extends Error {\n constructor(\n message: string,\n readonly code:\n | \"MISSING_DESTINATION\"\n | \"MISSING_ORIGIN\"\n | \"MISSING_API_KEY\"\n | \"DISTANCE_MATRIX_FAILED\"\n | \"INVALID_DISTANCE_MATRIX_RESPONSE\",\n ) {\n super(message);\n this.name = \"TravelTimeUnavailableError\";\n }\n}\n\nexport class TravelTimeService {\n constructor(\n readonly _runtime: IAgentRuntime,\n private readonly deps: TravelTimeServiceDeps,\n ) {}\n\n async computeBuffer(\n input: ComputeTravelBufferInput,\n ): Promise<TravelBufferResult> {\n const event = await this.resolveEvent(input.eventId);\n if (!event) {\n throw new Error(`[TravelTimeService] event ${input.eventId} not found`);\n }\n return this.computeBufferForEvent(event, input.originAddress);\n }\n\n async computeBufferForEvent(\n event: Pick<LifeOpsCalendarEvent, \"location\">,\n originAddressInput?: string,\n ): Promise<TravelBufferResult> {\n const destinationAddress = normalizeAddress(event.location);\n const explicitOrigin =\n normalizeAddress(originAddressInput) ??\n normalizeAddress(this.deps.defaultOriginAddress ?? null);\n\n if (!destinationAddress) {\n throw new TravelTimeUnavailableError(\n \"Cannot compute travel time because the event has no destination location.\",\n \"MISSING_DESTINATION\",\n );\n }\n\n const originAddress =\n explicitOrigin ?? (await this.resolveOriginFromLocationPlugin());\n if (!originAddress) {\n throw new TravelTimeUnavailableError(\n \"Cannot compute travel time because no origin address was supplied.\",\n \"MISSING_ORIGIN\",\n );\n }\n\n const apiKey = (\n this.deps.getApiKey ?? (() => process.env.GOOGLE_MAPS_API_KEY)\n )();\n if (!apiKey) {\n throw new TravelTimeUnavailableError(\n \"Cannot compute travel time because GOOGLE_MAPS_API_KEY is not configured.\",\n \"MISSING_API_KEY\",\n );\n }\n\n const url = buildDistanceMatrixUrl({\n apiKey,\n origin: originAddress,\n destination: destinationAddress,\n });\n const fetchImpl = this.deps.fetchImpl ?? globalFetch;\n\n const response = await safeFetch(fetchImpl, url);\n if (response.ok === false) {\n throw new TravelTimeUnavailableError(\n `Distance Matrix ${response.kind} error: ${response.message}`,\n \"DISTANCE_MATRIX_FAILED\",\n );\n }\n const parsed = parseDistanceMatrix(response.body);\n if (parsed.ok === false) {\n throw new TravelTimeUnavailableError(\n parsed.reason,\n \"INVALID_DISTANCE_MATRIX_RESPONSE\",\n );\n }\n return {\n bufferMinutes: parsed.bufferMinutes,\n method: \"maps-api\",\n originAddress,\n destinationAddress,\n };\n }\n\n /**\n * Ask the Location plugin for the user's current coordinates and format\n * them as a `lat,lng` string the Distance Matrix API accepts as origin.\n *\n * Returns null when:\n * - no location provider was injected,\n * - the user has not granted location permission,\n * - the plugin returned no fix.\n *\n * Throws `TravelTimeUnavailableError(\"MISSING_ORIGIN\")` when the plugin\n * call itself fails — surfaces the underlying error message so callers\n * can debug instead of silently fabricating a buffer.\n *\n * Returning null causes the caller to throw `MISSING_ORIGIN` too.\n */\n private async resolveOriginFromLocationPlugin(): Promise<string | null> {\n const provider = this.deps.locationProvider;\n if (!provider) return null;\n\n const status = await this.callLocationPlugin(\n () => provider.checkPermissions(),\n \"checkPermissions\",\n );\n if (status.location !== \"granted\") return null;\n\n const position = await this.callLocationPlugin(\n () => provider.getCurrentPosition({ timeout: 5000 }),\n \"getCurrentPosition\",\n );\n if (!position) return null;\n\n const { latitude, longitude } = position.coords;\n if (\n typeof latitude !== \"number\" ||\n typeof longitude !== \"number\" ||\n !Number.isFinite(latitude) ||\n !Number.isFinite(longitude)\n ) {\n return null;\n }\n return `${latitude},${longitude}`;\n }\n\n /**\n * Boundary-translation wrapper for the Location plugin. The plugin lives\n * outside this service's trust domain (Capacitor / native bridge), so we\n * convert any rejection into a typed `TravelTimeUnavailableError` with\n * enough context for an operator to diagnose the failure.\n */\n private async callLocationPlugin<T>(\n op: () => Promise<T>,\n label: string,\n ): Promise<T> {\n try {\n return await op();\n } catch (error) {\n const detail = error instanceof Error ? error.message : String(error);\n throw new TravelTimeUnavailableError(\n `Cannot compute travel time because the location plugin failed during ${label}: ${detail}`,\n \"MISSING_ORIGIN\",\n );\n }\n }\n\n private async resolveEvent(\n eventId: string,\n ): Promise<LifeOpsCalendarEvent | null> {\n const now = new Date();\n const timeMin = new Date(\n now.getTime() - 7 * 24 * 60 * 60 * 1000,\n ).toISOString();\n const timeMax = new Date(\n now.getTime() + 30 * 24 * 60 * 60 * 1000,\n ).toISOString();\n const feed = await this.deps.calendar.getCalendarFeed(\n new URL(\"internal://travel-time/resolve\"),\n { timeMin, timeMax },\n now,\n );\n return (\n feed.events.find((e) => e.id === eventId || e.externalId === eventId) ??\n null\n );\n }\n}\n\nfunction normalizeAddress(value: string | null | undefined): string | null {\n if (typeof value !== \"string\") return null;\n const trimmed = value.trim();\n return trimmed.length > 0 ? trimmed : null;\n}\n\nfunction buildDistanceMatrixUrl(input: {\n apiKey: string;\n origin: string;\n destination: string;\n}): string {\n const params = new URLSearchParams({\n origins: input.origin,\n destinations: input.destination,\n departure_time: \"now\",\n key: input.apiKey,\n });\n return `${GOOGLE_DISTANCE_MATRIX_URL}?${params.toString()}`;\n}\n\ntype SafeFetchResult =\n | { ok: true; body: unknown }\n | { ok: false; kind: \"network\" | \"http\"; message: string };\n\nasync function safeFetch(\n fetchImpl: TravelTimeFetch,\n url: string,\n): Promise<SafeFetchResult> {\n try {\n const res = await fetchImpl(url);\n if (!res.ok) {\n return {\n ok: false,\n kind: \"http\",\n message: `status ${res.status}`,\n };\n }\n const body = await res.json();\n return { ok: true, body };\n } catch (err) {\n return {\n ok: false,\n kind: \"network\",\n message: err instanceof Error ? err.message : String(err),\n };\n }\n}\n\nfunction parseDistanceMatrix(\n body: unknown,\n): { ok: true; bufferMinutes: number } | { ok: false; reason: string } {\n if (!body || typeof body !== \"object\") {\n return { ok: false, reason: \"response was not an object\" };\n }\n const resp = body as DistanceMatrixResponse;\n if (resp.status !== \"OK\") {\n return { ok: false, reason: `distance matrix status ${resp.status}` };\n }\n const element = resp.rows?.[0]?.elements?.[0];\n if (!element) {\n return { ok: false, reason: \"distance matrix returned no elements\" };\n }\n if (element.status !== \"OK\") {\n return { ok: false, reason: `element status ${element.status}` };\n }\n const seconds =\n element.duration_in_traffic?.value ?? element.duration?.value ?? null;\n if (typeof seconds !== \"number\" || !Number.isFinite(seconds) || seconds < 0) {\n return { ok: false, reason: \"no duration in response\" };\n }\n return { ok: true, bufferMinutes: Math.max(1, Math.ceil(seconds / 60)) };\n}\n\nconst globalFetch: TravelTimeFetch = async (url, init) => {\n const res = await fetch(url, init);\n return {\n ok: res.ok,\n status: res.status,\n json: () => res.json(),\n };\n};\n"],"mappings":"AAgBO,MAAM,6BACX;AAqFK,MAAM,mCAAmC,MAAM;AAAA,EACpD,YACE,SACS,MAMT;AACA,UAAM,OAAO;AAPJ;AAQT,SAAK,OAAO;AAAA,EACd;AAAA,EATW;AAUb;AAEO,MAAM,kBAAkB;AAAA,EAC7B,YACW,UACQ,MACjB;AAFS;AACQ;AAAA,EAChB;AAAA,EAFQ;AAAA,EACQ;AAAA,EAGnB,MAAM,cACJ,OAC6B;AAC7B,UAAM,QAAQ,MAAM,KAAK,aAAa,MAAM,OAAO;AACnD,QAAI,CAAC,OAAO;AACV,YAAM,IAAI,MAAM,6BAA6B,MAAM,OAAO,YAAY;AAAA,IACxE;AACA,WAAO,KAAK,sBAAsB,OAAO,MAAM,aAAa;AAAA,EAC9D;AAAA,EAEA,MAAM,sBACJ,OACA,oBAC6B;AAC7B,UAAM,qBAAqB,iBAAiB,MAAM,QAAQ;AAC1D,UAAM,iBACJ,iBAAiB,kBAAkB,KACnC,iBAAiB,KAAK,KAAK,wBAAwB,IAAI;AAEzD,QAAI,CAAC,oBAAoB;AACvB,YAAM,IAAI;AAAA,QACR;AAAA,QACA;AAAA,MACF;AAAA,IACF;AAEA,UAAM,gBACJ,kBAAmB,MAAM,KAAK,gCAAgC;AAChE,QAAI,CAAC,eAAe;AAClB,YAAM,IAAI;AAAA,QACR;AAAA,QACA;AAAA,MACF;AAAA,IACF;AAEA,UAAM,UACJ,KAAK,KAAK,cAAc,MAAM,QAAQ,IAAI,sBAC1C;AACF,QAAI,CAAC,QAAQ;AACX,YAAM,IAAI;AAAA,QACR;AAAA,QACA;AAAA,MACF;AAAA,IACF;AAEA,UAAM,MAAM,uBAAuB;AAAA,MACjC;AAAA,MACA,QAAQ;AAAA,MACR,aAAa;AAAA,IACf,CAAC;AACD,UAAM,YAAY,KAAK,KAAK,aAAa;AAEzC,UAAM,WAAW,MAAM,UAAU,WAAW,GAAG;AAC/C,QAAI,SAAS,OAAO,OAAO;AACzB,YAAM,IAAI;AAAA,QACR,mBAAmB,SAAS,IAAI,WAAW,SAAS,OAAO;AAAA,QAC3D;AAAA,MACF;AAAA,IACF;AACA,UAAM,SAAS,oBAAoB,SAAS,IAAI;AAChD,QAAI,OAAO,OAAO,OAAO;AACvB,YAAM,IAAI;AAAA,QACR,OAAO;AAAA,QACP;AAAA,MACF;AAAA,IACF;AACA,WAAO;AAAA,MACL,eAAe,OAAO;AAAA,MACtB,QAAQ;AAAA,MACR;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAiBA,MAAc,kCAA0D;AACtE,UAAM,WAAW,KAAK,KAAK;AAC3B,QAAI,CAAC,SAAU,QAAO;AAEtB,UAAM,SAAS,MAAM,KAAK;AAAA,MACxB,MAAM,SAAS,iBAAiB;AAAA,MAChC;AAAA,IACF;AACA,QAAI,OAAO,aAAa,UAAW,QAAO;AAE1C,UAAM,WAAW,MAAM,KAAK;AAAA,MAC1B,MAAM,SAAS,mBAAmB,EAAE,SAAS,IAAK,CAAC;AAAA,MACnD;AAAA,IACF;AACA,QAAI,CAAC,SAAU,QAAO;AAEtB,UAAM,EAAE,UAAU,UAAU,IAAI,SAAS;AACzC,QACE,OAAO,aAAa,YACpB,OAAO,cAAc,YACrB,CAAC,OAAO,SAAS,QAAQ,KACzB,CAAC,OAAO,SAAS,SAAS,GAC1B;AACA,aAAO;AAAA,IACT;AACA,WAAO,GAAG,QAAQ,IAAI,SAAS;AAAA,EACjC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,MAAc,mBACZ,IACA,OACY;AACZ,QAAI;AACF,aAAO,MAAM,GAAG;AAAA,IAClB,SAAS,OAAO;AACd,YAAM,SAAS,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK;AACpE,YAAM,IAAI;AAAA,QACR,wEAAwE,KAAK,KAAK,MAAM;AAAA,QACxF;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAAA,EAEA,MAAc,aACZ,SACsC;AACtC,UAAM,MAAM,oBAAI,KAAK;AACrB,UAAM,UAAU,IAAI;AAAA,MAClB,IAAI,QAAQ,IAAI,IAAI,KAAK,KAAK,KAAK;AAAA,IACrC,EAAE,YAAY;AACd,UAAM,UAAU,IAAI;AAAA,MAClB,IAAI,QAAQ,IAAI,KAAK,KAAK,KAAK,KAAK;AAAA,IACtC,EAAE,YAAY;AACd,UAAM,OAAO,MAAM,KAAK,KAAK,SAAS;AAAA,MACpC,IAAI,IAAI,gCAAgC;AAAA,MACxC,EAAE,SAAS,QAAQ;AAAA,MACnB;AAAA,IACF;AACA,WACE,KAAK,OAAO,KAAK,CAAC,MAAM,EAAE,OAAO,WAAW,EAAE,eAAe,OAAO,KACpE;AAAA,EAEJ;AACF;AAEA,SAAS,iBAAiB,OAAiD;AACzE,MAAI,OAAO,UAAU,SAAU,QAAO;AACtC,QAAM,UAAU,MAAM,KAAK;AAC3B,SAAO,QAAQ,SAAS,IAAI,UAAU;AACxC;AAEA,SAAS,uBAAuB,OAIrB;AACT,QAAM,SAAS,IAAI,gBAAgB;AAAA,IACjC,SAAS,MAAM;AAAA,IACf,cAAc,MAAM;AAAA,IACpB,gBAAgB;AAAA,IAChB,KAAK,MAAM;AAAA,EACb,CAAC;AACD,SAAO,GAAG,0BAA0B,IAAI,OAAO,SAAS,CAAC;AAC3D;AAMA,eAAe,UACb,WACA,KAC0B;AAC1B,MAAI;AACF,UAAM,MAAM,MAAM,UAAU,GAAG;AAC/B,QAAI,CAAC,IAAI,IAAI;AACX,aAAO;AAAA,QACL,IAAI;AAAA,QACJ,MAAM;AAAA,QACN,SAAS,UAAU,IAAI,MAAM;AAAA,MAC/B;AAAA,IACF;AACA,UAAM,OAAO,MAAM,IAAI,KAAK;AAC5B,WAAO,EAAE,IAAI,MAAM,KAAK;AAAA,EAC1B,SAAS,KAAK;AACZ,WAAO;AAAA,MACL,IAAI;AAAA,MACJ,MAAM;AAAA,MACN,SAAS,eAAe,QAAQ,IAAI,UAAU,OAAO,GAAG;AAAA,IAC1D;AAAA,EACF;AACF;AAEA,SAAS,oBACP,MACqE;AACrE,MAAI,CAAC,QAAQ,OAAO,SAAS,UAAU;AACrC,WAAO,EAAE,IAAI,OAAO,QAAQ,6BAA6B;AAAA,EAC3D;AACA,QAAM,OAAO;AACb,MAAI,KAAK,WAAW,MAAM;AACxB,WAAO,EAAE,IAAI,OAAO,QAAQ,0BAA0B,KAAK,MAAM,GAAG;AAAA,EACtE;AACA,QAAM,UAAU,KAAK,OAAO,CAAC,GAAG,WAAW,CAAC;AAC5C,MAAI,CAAC,SAAS;AACZ,WAAO,EAAE,IAAI,OAAO,QAAQ,uCAAuC;AAAA,EACrE;AACA,MAAI,QAAQ,WAAW,MAAM;AAC3B,WAAO,EAAE,IAAI,OAAO,QAAQ,kBAAkB,QAAQ,MAAM,GAAG;AAAA,EACjE;AACA,QAAM,UACJ,QAAQ,qBAAqB,SAAS,QAAQ,UAAU,SAAS;AACnE,MAAI,OAAO,YAAY,YAAY,CAAC,OAAO,SAAS,OAAO,KAAK,UAAU,GAAG;AAC3E,WAAO,EAAE,IAAI,OAAO,QAAQ,0BAA0B;AAAA,EACxD;AACA,SAAO,EAAE,IAAI,MAAM,eAAe,KAAK,IAAI,GAAG,KAAK,KAAK,UAAU,EAAE,CAAC,EAAE;AACzE;AAEA,MAAM,cAA+B,OAAO,KAAK,SAAS;AACxD,QAAM,MAAM,MAAM,MAAM,KAAK,IAAI;AACjC,SAAO;AAAA,IACL,IAAI,IAAI;AAAA,IACR,QAAQ,IAAI;AAAA,IACZ,MAAM,MAAM,IAAI,KAAK;AAAA,EACvB;AACF;","names":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"app-blocker-settings-card.d.ts","sourceRoot":"","sources":["../../src/types/app-blocker-settings-card.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,2BAA2B,EAC3B,sBAAsB,GACvB,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=app-blocker-settings-card.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `LifeOpsBriefing` domain type.
|
|
3
|
+
*
|
|
4
|
+
* PRD: `prd-lifeops-executive-assistant.md` §Daily Operations, and
|
|
5
|
+
* `plan-lifeops-executive-assistant-scenario-matrix.md` + the 2026-04-23
|
|
6
|
+
* "proactive life agent" plan (Phase 2). Wave-2 scenarios assert against this
|
|
7
|
+
* shape; Wave-1 (W2-5) only ships the scaffold + composer.
|
|
8
|
+
*
|
|
9
|
+
* A LifeOpsBriefing is a structured snapshot the agent can compose into prose
|
|
10
|
+
* for morning / evening / weekly digests. Each section is optional so the
|
|
11
|
+
* `include` arg on the BRIEF action can suppress domains the owner doesn't
|
|
12
|
+
* want surfaced.
|
|
13
|
+
*/
|
|
14
|
+
export type LifeOpsBriefingPeriod = "today" | "tomorrow" | "this_week";
|
|
15
|
+
export type LifeOpsBriefingKind = "morning" | "evening" | "weekly";
|
|
16
|
+
export interface LifeOpsBriefingCalendarItem {
|
|
17
|
+
readonly id: string;
|
|
18
|
+
readonly title: string;
|
|
19
|
+
readonly startAt: string;
|
|
20
|
+
readonly endAt: string;
|
|
21
|
+
readonly location?: string;
|
|
22
|
+
}
|
|
23
|
+
export interface LifeOpsBriefingInboxItem {
|
|
24
|
+
readonly id: string;
|
|
25
|
+
readonly channel: string;
|
|
26
|
+
readonly senderName: string;
|
|
27
|
+
readonly snippet: string;
|
|
28
|
+
readonly urgency: "low" | "medium" | "high" | "unknown";
|
|
29
|
+
readonly classification: string;
|
|
30
|
+
}
|
|
31
|
+
export interface LifeOpsBriefingLifeItem {
|
|
32
|
+
readonly id: string;
|
|
33
|
+
readonly kind: "todo" | "reminder" | "habit" | "goal";
|
|
34
|
+
readonly title: string;
|
|
35
|
+
readonly dueAt: string | null;
|
|
36
|
+
}
|
|
37
|
+
export interface LifeOpsBriefingMoneyItem {
|
|
38
|
+
readonly id: string;
|
|
39
|
+
readonly merchant: string;
|
|
40
|
+
readonly amountUsd: number;
|
|
41
|
+
readonly cadence: "daily" | "weekly" | "monthly" | "yearly" | "irregular";
|
|
42
|
+
readonly nextChargeAt: string | null;
|
|
43
|
+
}
|
|
44
|
+
export interface LifeOpsBriefingSections {
|
|
45
|
+
readonly calendar?: readonly LifeOpsBriefingCalendarItem[];
|
|
46
|
+
readonly inbox?: readonly LifeOpsBriefingInboxItem[];
|
|
47
|
+
readonly life?: readonly LifeOpsBriefingLifeItem[];
|
|
48
|
+
readonly money?: readonly LifeOpsBriefingMoneyItem[];
|
|
49
|
+
}
|
|
50
|
+
export interface LifeOpsBriefing {
|
|
51
|
+
readonly id: string;
|
|
52
|
+
readonly kind: LifeOpsBriefingKind;
|
|
53
|
+
readonly period: LifeOpsBriefingPeriod;
|
|
54
|
+
readonly generatedAt: string;
|
|
55
|
+
readonly sections: LifeOpsBriefingSections;
|
|
56
|
+
/** Free-form narrative composed by the LLM compose pass. */
|
|
57
|
+
readonly narrative?: string;
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=briefing.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"briefing.d.ts","sourceRoot":"","sources":["../../src/types/briefing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,MAAM,MAAM,qBAAqB,GAAG,OAAO,GAAG,UAAU,GAAG,WAAW,CAAC;AAEvE,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAC;AAEnE,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAC;IACxD,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;CACjC;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,OAAO,GAAG,MAAM,CAAC;IACtD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,GAAG,WAAW,CAAC;IAC1E,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CACtC;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,2BAA2B,EAAE,CAAC;IAC3D,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,wBAAwB,EAAE,CAAC;IACrD,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,uBAAuB,EAAE,CAAC;IACnD,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,wBAAwB,EAAE,CAAC;CACtD;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;IACnC,QAAQ,CAAC,MAAM,EAAE,qBAAqB,CAAC;IACvC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,uBAAuB,CAAC;IAC3C,4DAA4D;IAC5D,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=briefing.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `DocumentRequest` domain type.
|
|
3
|
+
*
|
|
4
|
+
* PRD: `prd-lifeops-executive-assistant.md` §Docs And Portals.
|
|
5
|
+
*
|
|
6
|
+
* A DocumentRequest is anything that needs signature, review, upload, or
|
|
7
|
+
* approval by a deadline. The Wave-1 scaffold stores these in-memory; the
|
|
8
|
+
* Wave-2 follow-up is to persist them via the existing repository surface
|
|
9
|
+
* alongside `SCHEDULED_TASK` linkage.
|
|
10
|
+
*/
|
|
11
|
+
export type DocumentRequestStatus = "draft" | "pending" | "in_progress" | "completed" | "expired" | "cancelled";
|
|
12
|
+
export type DocumentRequestKind = "signature" | "approval" | "upload" | "collect_id";
|
|
13
|
+
export interface DocumentRequest {
|
|
14
|
+
/** Stable id. */
|
|
15
|
+
readonly id: string;
|
|
16
|
+
/** What this request is asking for. */
|
|
17
|
+
readonly kind: DocumentRequestKind;
|
|
18
|
+
/** Entity (person) we're asking; absent for self-upload flows. */
|
|
19
|
+
readonly requesteeEntityId?: string;
|
|
20
|
+
/** Short label, e.g. "Partnership NDA", "Speaker deck for Solana Breakpoint". */
|
|
21
|
+
readonly title: string;
|
|
22
|
+
/** ISO 8601 deadline; the SCHEDULED_TASK trigger references this. */
|
|
23
|
+
readonly deadline?: string;
|
|
24
|
+
/** Portal endpoint for `upload` / `collect_id` flows. */
|
|
25
|
+
readonly portalUrl?: string;
|
|
26
|
+
/** "deck" | "headshot" | "id" | "form" | ... — free-form label. */
|
|
27
|
+
readonly assetKind?: string;
|
|
28
|
+
readonly status: DocumentRequestStatus;
|
|
29
|
+
readonly createdAt: string;
|
|
30
|
+
readonly updatedAt: string;
|
|
31
|
+
readonly createdBy: string;
|
|
32
|
+
/** Link to SCHEDULED_TASK that tracks the deadline. */
|
|
33
|
+
readonly scheduledTaskId?: string;
|
|
34
|
+
/** Link to an escalation ladder for stronger nudges as deadline approaches. */
|
|
35
|
+
readonly escalationLadderId?: string;
|
|
36
|
+
/** Link to ApprovalRequest while gated on owner approval (draft state). */
|
|
37
|
+
readonly approvalRequestId?: string;
|
|
38
|
+
/** Free-form note from the requester. */
|
|
39
|
+
readonly note?: string;
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=document-request.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"document-request.d.ts","sourceRoot":"","sources":["../../src/types/document-request.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,MAAM,MAAM,qBAAqB,GAC7B,OAAO,GACP,SAAS,GACT,aAAa,GACb,WAAW,GACX,SAAS,GACT,WAAW,CAAC;AAEhB,MAAM,MAAM,mBAAmB,GAC3B,WAAW,GACX,UAAU,GACV,QAAQ,GACR,YAAY,CAAC;AAEjB,MAAM,WAAW,eAAe;IAC9B,iBAAiB;IACjB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,uCAAuC;IACvC,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;IACnC,kEAAkE;IAClE,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IACpC,iFAAiF;IACjF,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,qEAAqE;IACrE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,yDAAyD;IACzD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,mEAAmE;IACnE,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,qBAAqB,CAAC;IACvC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,uDAAuD;IACvD,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,+EAA+E;IAC/E,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IACrC,2EAA2E;IAC3E,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IACpC,yCAAyC;IACzC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACxB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=document-request.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export type { AppBlockerSettingsCardProps, AppBlockerSettingsMode, } from "./app-blocker-settings-card.js";
|
|
2
|
+
export type { LifeOpsBriefing, LifeOpsBriefingCalendarItem, LifeOpsBriefingInboxItem, LifeOpsBriefingKind, LifeOpsBriefingLifeItem, LifeOpsBriefingMoneyItem, LifeOpsBriefingPeriod, LifeOpsBriefingSections, } from "./briefing.js";
|
|
3
|
+
export type { DocumentRequest, DocumentRequestKind, DocumentRequestStatus, } from "./document-request.js";
|
|
4
|
+
export type { WebsiteBlockerSettingsCardProps, WebsiteBlockerSettingsMode, } from "./website-blocker-settings-card.js";
|
|
5
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,2BAA2B,EAC3B,sBAAsB,GACvB,MAAM,gCAAgC,CAAC;AACxC,YAAY,EACV,eAAe,EACf,2BAA2B,EAC3B,wBAAwB,EACxB,mBAAmB,EACnB,uBAAuB,EACvB,wBAAwB,EACxB,qBAAqB,EACrB,uBAAuB,GACxB,MAAM,eAAe,CAAC;AACvB,YAAY,EACV,eAAe,EACf,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EACV,+BAA+B,EAC/B,0BAA0B,GAC3B,MAAM,oCAAoC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"website-blocker-settings-card.d.ts","sourceRoot":"","sources":["../../src/types/website-blocker-settings-card.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,+BAA+B,EAC/B,0BAA0B,GAC3B,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=website-blocker-settings-card.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
package/dist/ui.d.ts
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import "./api/client-lifeops.js";
|
|
2
|
+
import React from "react";
|
|
3
|
+
import { dispatchQueuedLifeOpsGithubCallbackFromUrl } from "./platform/lifeops-github.js";
|
|
4
|
+
import type { AppBlockerSettingsCardProps, AppBlockerSettingsMode } from "./types/app-blocker-settings-card.js";
|
|
5
|
+
import type { WebsiteBlockerSettingsCardProps, WebsiteBlockerSettingsMode } from "./types/website-blocker-settings-card.js";
|
|
6
|
+
declare function EmptyComponent(): null;
|
|
7
|
+
export declare const LifeOpsActivitySignalsEffect: typeof EmptyComponent;
|
|
8
|
+
export declare function AppBlockerSettingsCard(props: AppBlockerSettingsCardProps): React.FunctionComponentElement<AppBlockerSettingsCardProps>;
|
|
9
|
+
export declare function WebsiteBlockerSettingsCard(props: WebsiteBlockerSettingsCardProps): React.FunctionComponentElement<WebsiteBlockerSettingsCardProps>;
|
|
10
|
+
export declare function registerLifeOpsApp(): void;
|
|
11
|
+
export type { AppBlockerSettingsMode, WebsiteBlockerSettingsMode };
|
|
12
|
+
export { dispatchQueuedLifeOpsGithubCallbackFromUrl };
|
|
13
|
+
//# sourceMappingURL=ui.d.ts.map
|
package/dist/ui.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../src/ui.ts"],"names":[],"mappings":"AAMA,OAAO,yBAAyB,CAAC;AACjC,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,EAAE,0CAA0C,EAAE,MAAM,8BAA8B,CAAC;AAC1F,OAAO,KAAK,EACV,2BAA2B,EAC3B,sBAAsB,EACvB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,KAAK,EACV,+BAA+B,EAC/B,0BAA0B,EAC3B,MAAM,0CAA0C,CAAC;AAElD,iBAAS,cAAc,SAEtB;AAED,eAAO,MAAM,4BAA4B,uBAAiB,CAAC;AAE3D,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,2BAA2B,+DAExE;AAED,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,+BAA+B,mEAGvC;AAED,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC;AAED,YAAY,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,CAAC;AACnE,OAAO,EAAE,0CAA0C,EAAE,CAAC"}
|
package/dist/ui.js
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import "./api/client-lifeops.js";
|
|
2
|
+
import React from "react";
|
|
3
|
+
import { AppBlockerSettingsCard as AppBlockerSettingsCardImpl } from "./components/AppBlockerSettingsCard.js";
|
|
4
|
+
import { WebsiteBlockerSettingsCard as WebsiteBlockerSettingsCardImpl } from "./components/WebsiteBlockerSettingsCard.js";
|
|
5
|
+
import { dispatchQueuedLifeOpsGithubCallbackFromUrl } from "./platform/lifeops-github.js";
|
|
6
|
+
function EmptyComponent() {
|
|
7
|
+
return null;
|
|
8
|
+
}
|
|
9
|
+
const LifeOpsActivitySignalsEffect = EmptyComponent;
|
|
10
|
+
function AppBlockerSettingsCard(props) {
|
|
11
|
+
return React.createElement(AppBlockerSettingsCardImpl, props);
|
|
12
|
+
}
|
|
13
|
+
function WebsiteBlockerSettingsCard(props) {
|
|
14
|
+
return React.createElement(WebsiteBlockerSettingsCardImpl, props);
|
|
15
|
+
}
|
|
16
|
+
function registerLifeOpsApp() {
|
|
17
|
+
}
|
|
18
|
+
export {
|
|
19
|
+
AppBlockerSettingsCard,
|
|
20
|
+
LifeOpsActivitySignalsEffect,
|
|
21
|
+
WebsiteBlockerSettingsCard,
|
|
22
|
+
dispatchQueuedLifeOpsGithubCallbackFromUrl,
|
|
23
|
+
registerLifeOpsApp
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=ui.js.map
|
package/dist/ui.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/ui.ts"],"sourcesContent":["// Renderer-safe browser entry for @elizaos/plugin-personal-assistant.\n//\n// The legacy /lifeops dashboard was decomposed into domain views, but the app\n// shell still imports this module for browser-only settings cards and old boot\n// hooks. Keep this facade thin so Vite never follows the server-side plugin\n// entrypoint into connector/native dependencies.\nimport \"./api/client-lifeops.js\";\nimport React from \"react\";\nimport { AppBlockerSettingsCard as AppBlockerSettingsCardImpl } from \"./components/AppBlockerSettingsCard.js\";\nimport { WebsiteBlockerSettingsCard as WebsiteBlockerSettingsCardImpl } from \"./components/WebsiteBlockerSettingsCard.js\";\n\nimport { dispatchQueuedLifeOpsGithubCallbackFromUrl } from \"./platform/lifeops-github.js\";\nimport type {\n AppBlockerSettingsCardProps,\n AppBlockerSettingsMode,\n} from \"./types/app-blocker-settings-card.js\";\nimport type {\n WebsiteBlockerSettingsCardProps,\n WebsiteBlockerSettingsMode,\n} from \"./types/website-blocker-settings-card.js\";\n\nfunction EmptyComponent() {\n return null;\n}\n\nexport const LifeOpsActivitySignalsEffect = EmptyComponent;\n\nexport function AppBlockerSettingsCard(props: AppBlockerSettingsCardProps) {\n return React.createElement(AppBlockerSettingsCardImpl, props);\n}\n\nexport function WebsiteBlockerSettingsCard(\n props: WebsiteBlockerSettingsCardProps,\n) {\n return React.createElement(WebsiteBlockerSettingsCardImpl, props);\n}\n\nexport function registerLifeOpsApp(): void {\n // The host shell owns the route; this facade keeps renderer imports browser-safe.\n}\n\nexport type { AppBlockerSettingsMode, WebsiteBlockerSettingsMode };\nexport { dispatchQueuedLifeOpsGithubCallbackFromUrl };\n"],"mappings":"AAMA,OAAO;AACP,OAAO,WAAW;AAClB,SAAS,0BAA0B,kCAAkC;AACrE,SAAS,8BAA8B,sCAAsC;AAE7E,SAAS,kDAAkD;AAU3D,SAAS,iBAAiB;AACxB,SAAO;AACT;AAEO,MAAM,+BAA+B;AAErC,SAAS,uBAAuB,OAAoC;AACzE,SAAO,MAAM,cAAc,4BAA4B,KAAK;AAC9D;AAEO,SAAS,2BACd,OACA;AACA,SAAO,MAAM,cAAc,gCAAgC,KAAK;AAClE;AAEO,SAAS,qBAA2B;AAE3C;","names":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"format-duration.d.ts","sourceRoot":"","sources":["../../src/utils/format-duration.ts"],"names":[],"mappings":"AAIA,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAU7D"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
function formatMinutesDuration(minutes) {
|
|
2
|
+
const total = Math.max(0, Math.round(minutes));
|
|
3
|
+
if (total < 60) {
|
|
4
|
+
return `${total}m`;
|
|
5
|
+
}
|
|
6
|
+
const hours = Math.floor(total / 60);
|
|
7
|
+
const remainingMinutes = total % 60;
|
|
8
|
+
return remainingMinutes === 0 ? `${hours}h` : `${hours}h ${remainingMinutes}m`;
|
|
9
|
+
}
|
|
10
|
+
export {
|
|
11
|
+
formatMinutesDuration
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=format-duration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/utils/format-duration.ts"],"sourcesContent":["// Humanize a raw minute count as `Xh Ym` / `Xh` / `Xm`. Returns a bare\n// duration with no \"in\"/\"ago\" prefix so callers can wrap it in their own\n// phrasing. Paired with formatRelativeMinutes in lifeops/google/format-helpers,\n// which prefixes \"in\" for forward-looking phrasing.\nexport function formatMinutesDuration(minutes: number): string {\n const total = Math.max(0, Math.round(minutes));\n if (total < 60) {\n return `${total}m`;\n }\n const hours = Math.floor(total / 60);\n const remainingMinutes = total % 60;\n return remainingMinutes === 0\n ? `${hours}h`\n : `${hours}h ${remainingMinutes}m`;\n}\n"],"mappings":"AAIO,SAAS,sBAAsB,SAAyB;AAC7D,QAAM,QAAQ,KAAK,IAAI,GAAG,KAAK,MAAM,OAAO,CAAC;AAC7C,MAAI,QAAQ,IAAI;AACd,WAAO,GAAG,KAAK;AAAA,EACjB;AACA,QAAM,QAAQ,KAAK,MAAM,QAAQ,EAAE;AACnC,QAAM,mBAAmB,QAAQ;AACjC,SAAO,qBAAqB,IACxB,GAAG,KAAK,MACR,GAAG,KAAK,KAAK,gBAAgB;AACnC;","names":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/utils/index.ts"],"sourcesContent":["export * from \"./format-duration.js\";\nexport * from \"./lifeops-url.js\";\n"],"mappings":"AAAA,cAAc;AACd,cAAc;","names":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lifeops-url.d.ts","sourceRoot":"","sources":["../../src/utils/lifeops-url.ts"],"names":[],"mappings":"AA8BA,wBAAgB,8BAA8B,IAAI,MAAM,CAIvD;AAED,wBAAgB,gCAAgC,IAAI,GAAG,CAEtD"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { client } from "@elizaos/ui";
|
|
2
|
+
function resolveLocationOrigin() {
|
|
3
|
+
if (typeof globalThis.location.origin === "string" && globalThis.location.origin.trim().length > 0) {
|
|
4
|
+
return globalThis.location.origin.trim();
|
|
5
|
+
}
|
|
6
|
+
if (typeof window !== "undefined" && typeof window.location.origin === "string" && window.location.origin.trim().length > 0) {
|
|
7
|
+
return window.location.origin.trim();
|
|
8
|
+
}
|
|
9
|
+
return null;
|
|
10
|
+
}
|
|
11
|
+
function resolveLifeOpsBaseUrl(fallback) {
|
|
12
|
+
const baseUrl = client.getBaseUrl().trim();
|
|
13
|
+
if (baseUrl) {
|
|
14
|
+
return new URL(baseUrl);
|
|
15
|
+
}
|
|
16
|
+
return new URL(resolveLocationOrigin() ?? fallback);
|
|
17
|
+
}
|
|
18
|
+
function resolveBrowserBridgeApiBaseUrl() {
|
|
19
|
+
return resolveLifeOpsBaseUrl("http://127.0.0.1:31337").toString().replace(/\/+$/, "");
|
|
20
|
+
}
|
|
21
|
+
function resolveLifeOpsSettingsApiBaseUrl() {
|
|
22
|
+
return resolveLifeOpsBaseUrl("http://127.0.0.1:3000");
|
|
23
|
+
}
|
|
24
|
+
export {
|
|
25
|
+
resolveBrowserBridgeApiBaseUrl,
|
|
26
|
+
resolveLifeOpsSettingsApiBaseUrl
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=lifeops-url.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/utils/lifeops-url.ts"],"sourcesContent":["import { client } from \"@elizaos/ui\";\n\nfunction resolveLocationOrigin(): string | null {\n if (\n typeof globalThis.location.origin === \"string\" &&\n globalThis.location.origin.trim().length > 0\n ) {\n return globalThis.location.origin.trim();\n }\n\n if (\n typeof window !== \"undefined\" &&\n typeof window.location.origin === \"string\" &&\n window.location.origin.trim().length > 0\n ) {\n return window.location.origin.trim();\n }\n\n return null;\n}\n\nfunction resolveLifeOpsBaseUrl(fallback: string): URL {\n const baseUrl = client.getBaseUrl().trim();\n if (baseUrl) {\n return new URL(baseUrl);\n }\n\n return new URL(resolveLocationOrigin() ?? fallback);\n}\n\nexport function resolveBrowserBridgeApiBaseUrl(): string {\n return resolveLifeOpsBaseUrl(\"http://127.0.0.1:31337\")\n .toString()\n .replace(/\\/+$/, \"\");\n}\n\nexport function resolveLifeOpsSettingsApiBaseUrl(): URL {\n return resolveLifeOpsBaseUrl(\"http://127.0.0.1:3000\");\n}\n"],"mappings":"AAAA,SAAS,cAAc;AAEvB,SAAS,wBAAuC;AAC9C,MACE,OAAO,WAAW,SAAS,WAAW,YACtC,WAAW,SAAS,OAAO,KAAK,EAAE,SAAS,GAC3C;AACA,WAAO,WAAW,SAAS,OAAO,KAAK;AAAA,EACzC;AAEA,MACE,OAAO,WAAW,eAClB,OAAO,OAAO,SAAS,WAAW,YAClC,OAAO,SAAS,OAAO,KAAK,EAAE,SAAS,GACvC;AACA,WAAO,OAAO,SAAS,OAAO,KAAK;AAAA,EACrC;AAEA,SAAO;AACT;AAEA,SAAS,sBAAsB,UAAuB;AACpD,QAAM,UAAU,OAAO,WAAW,EAAE,KAAK;AACzC,MAAI,SAAS;AACX,WAAO,IAAI,IAAI,OAAO;AAAA,EACxB;AAEA,SAAO,IAAI,IAAI,sBAAsB,KAAK,QAAQ;AACpD;AAEO,SAAS,iCAAyC;AACvD,SAAO,sBAAsB,wBAAwB,EAClD,SAAS,EACT,QAAQ,QAAQ,EAAE;AACvB;AAEO,SAAS,mCAAwC;AACtD,SAAO,sBAAsB,uBAAuB;AACtD;","names":[]}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared block-activation seam.
|
|
3
|
+
*
|
|
4
|
+
* Both the BLOCK action's website target and the `BlockRuleWriter`
|
|
5
|
+
* (chat-integration / application) need to flip the
|
|
6
|
+
* OS-level hosts-file block on for a given hostname set + duration.
|
|
7
|
+
*
|
|
8
|
+
* Owning this here breaks the cycle that existed when the writer reached
|
|
9
|
+
* up into `actions/website-block.ts` to invoke the action handler purely
|
|
10
|
+
* for its side effect — the handler is presentation, the writer is
|
|
11
|
+
* application, and the OS-block transaction is domain.
|
|
12
|
+
*
|
|
13
|
+
* The activator wraps `startSelfControlBlock` + `syncWebsiteBlockerExpiryTask`
|
|
14
|
+
* with rollback semantics: if the expiry task can't be scheduled the OS
|
|
15
|
+
* block is stopped before returning a failure.
|
|
16
|
+
*/
|
|
17
|
+
import type { IAgentRuntime } from "@elizaos/core";
|
|
18
|
+
export interface ActivateBlockRequest {
|
|
19
|
+
runtime: IAgentRuntime;
|
|
20
|
+
websites: readonly string[];
|
|
21
|
+
/** `null` = manual / indefinite; positive integer = timed minutes. */
|
|
22
|
+
durationMinutes: number | null;
|
|
23
|
+
}
|
|
24
|
+
export type ActivateBlockResult = {
|
|
25
|
+
success: true;
|
|
26
|
+
endsAt: string | null;
|
|
27
|
+
} | {
|
|
28
|
+
success: false;
|
|
29
|
+
error: string;
|
|
30
|
+
};
|
|
31
|
+
export declare function activateBlockRule(request: ActivateBlockRequest): Promise<ActivateBlockResult>;
|
|
32
|
+
//# sourceMappingURL=block-activator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"block-activator.d.ts","sourceRoot":"","sources":["../../../src/website-blocker/chat-integration/block-activator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAOnD,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,aAAa,CAAC;IACvB,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5B,sEAAsE;IACtE,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAED,MAAM,MAAM,mBAAmB,GAC3B;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GACxC;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtC,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,mBAAmB,CAAC,CAuB9B"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import {
|
|
2
|
+
startSelfControlBlock,
|
|
3
|
+
stopSelfControlBlock,
|
|
4
|
+
syncWebsiteBlockerExpiryTask
|
|
5
|
+
} from "@elizaos/plugin-blocker/services/website-blocker/index";
|
|
6
|
+
async function activateBlockRule(request) {
|
|
7
|
+
const result = await startSelfControlBlock({
|
|
8
|
+
websites: [...request.websites],
|
|
9
|
+
durationMinutes: request.durationMinutes,
|
|
10
|
+
scheduledByAgentId: String(request.runtime.agentId)
|
|
11
|
+
});
|
|
12
|
+
if (result.success === false) {
|
|
13
|
+
return { success: false, error: result.error };
|
|
14
|
+
}
|
|
15
|
+
if (request.durationMinutes !== null) {
|
|
16
|
+
const taskId = await syncWebsiteBlockerExpiryTask(request.runtime);
|
|
17
|
+
if (!taskId) {
|
|
18
|
+
await stopSelfControlBlock();
|
|
19
|
+
return {
|
|
20
|
+
success: false,
|
|
21
|
+
error: "Eliza started the website block but could not schedule its automatic unblock task, so it rolled the block back."
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
return { success: true, endsAt: result.endsAt };
|
|
26
|
+
}
|
|
27
|
+
export {
|
|
28
|
+
activateBlockRule
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=block-activator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/website-blocker/chat-integration/block-activator.ts"],"sourcesContent":["/**\n * Shared block-activation seam.\n *\n * Both the BLOCK action's website target and the `BlockRuleWriter`\n * (chat-integration / application) need to flip the\n * OS-level hosts-file block on for a given hostname set + duration.\n *\n * Owning this here breaks the cycle that existed when the writer reached\n * up into `actions/website-block.ts` to invoke the action handler purely\n * for its side effect — the handler is presentation, the writer is\n * application, and the OS-block transaction is domain.\n *\n * The activator wraps `startSelfControlBlock` + `syncWebsiteBlockerExpiryTask`\n * with rollback semantics: if the expiry task can't be scheduled the OS\n * block is stopped before returning a failure.\n */\n\nimport type { IAgentRuntime } from \"@elizaos/core\";\nimport {\n startSelfControlBlock,\n stopSelfControlBlock,\n syncWebsiteBlockerExpiryTask,\n} from \"@elizaos/plugin-blocker/services/website-blocker/index\";\n\nexport interface ActivateBlockRequest {\n runtime: IAgentRuntime;\n websites: readonly string[];\n /** `null` = manual / indefinite; positive integer = timed minutes. */\n durationMinutes: number | null;\n}\n\nexport type ActivateBlockResult =\n | { success: true; endsAt: string | null }\n | { success: false; error: string };\n\nexport async function activateBlockRule(\n request: ActivateBlockRequest,\n): Promise<ActivateBlockResult> {\n const result = await startSelfControlBlock({\n websites: [...request.websites],\n durationMinutes: request.durationMinutes,\n scheduledByAgentId: String(request.runtime.agentId),\n });\n if (result.success === false) {\n return { success: false, error: result.error };\n }\n\n if (request.durationMinutes !== null) {\n const taskId = await syncWebsiteBlockerExpiryTask(request.runtime);\n if (!taskId) {\n await stopSelfControlBlock();\n return {\n success: false,\n error:\n \"Eliza started the website block but could not schedule its automatic unblock task, so it rolled the block back.\",\n };\n }\n }\n\n return { success: true, endsAt: result.endsAt };\n}\n"],"mappings":"AAkBA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAaP,eAAsB,kBACpB,SAC8B;AAC9B,QAAM,SAAS,MAAM,sBAAsB;AAAA,IACzC,UAAU,CAAC,GAAG,QAAQ,QAAQ;AAAA,IAC9B,iBAAiB,QAAQ;AAAA,IACzB,oBAAoB,OAAO,QAAQ,QAAQ,OAAO;AAAA,EACpD,CAAC;AACD,MAAI,OAAO,YAAY,OAAO;AAC5B,WAAO,EAAE,SAAS,OAAO,OAAO,OAAO,MAAM;AAAA,EAC/C;AAEA,MAAI,QAAQ,oBAAoB,MAAM;AACpC,UAAM,SAAS,MAAM,6BAA6B,QAAQ,OAAO;AACjE,QAAI,CAAC,QAAQ;AACX,YAAM,qBAAqB;AAC3B,aAAO;AAAA,QACL,SAAS;AAAA,QACT,OACE;AAAA,MACJ;AAAA,IACF;AAAA,EACF;AAEA,SAAO,EAAE,SAAS,MAAM,QAAQ,OAAO,OAAO;AAChD;","names":[]}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { IAgentRuntime } from "@elizaos/core";
|
|
2
|
+
export declare const BLOCK_RULE_RECONCILE_TASK_NAME: "BLOCK_RULE_RECONCILE";
|
|
3
|
+
export declare const BLOCK_RULE_RECONCILE_TASK_TAGS: readonly ["queue", "website-blocker", "block-rule-reconciler"];
|
|
4
|
+
export declare const BLOCK_RULE_RECONCILE_INTERVAL_MS = 60000;
|
|
5
|
+
export declare function reconcileBlockRulesOnce(runtime: IAgentRuntime, nowMs?: number): Promise<void>;
|
|
6
|
+
export declare function registerBlockRuleReconcilerWorker(runtime: IAgentRuntime): void;
|
|
7
|
+
//# sourceMappingURL=block-rule-reconciler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"block-rule-reconciler.d.ts","sourceRoot":"","sources":["../../../src/website-blocker/chat-integration/block-rule-reconciler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAMnD,eAAO,MAAM,8BAA8B,EAAG,sBAA+B,CAAC;AAC9E,eAAO,MAAM,8BAA8B,gEAIjC,CAAC;AACX,eAAO,MAAM,gCAAgC,QAAS,CAAC;AA2GvD,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,aAAa,EACtB,KAAK,GAAE,MAAmB,GACzB,OAAO,CAAC,IAAI,CAAC,CAOf;AAED,wBAAgB,iCAAiC,CAC/C,OAAO,EAAE,aAAa,GACrB,IAAI,CAYN"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import { logger } from "@elizaos/core";
|
|
2
|
+
import { executeRawSql, sqlQuote } from "../../lifeops/sql.js";
|
|
3
|
+
import { BlockRuleReader, BlockRuleWriter } from "./block-rule-service.js";
|
|
4
|
+
const BLOCK_RULE_RECONCILE_TASK_NAME = "BLOCK_RULE_RECONCILE";
|
|
5
|
+
const BLOCK_RULE_RECONCILE_TASK_TAGS = [
|
|
6
|
+
"queue",
|
|
7
|
+
"website-blocker",
|
|
8
|
+
"block-rule-reconciler"
|
|
9
|
+
];
|
|
10
|
+
const BLOCK_RULE_RECONCILE_INTERVAL_MS = 6e4;
|
|
11
|
+
async function isTodoCompleted(runtime, todoId) {
|
|
12
|
+
const rows = await executeRawSql(
|
|
13
|
+
runtime,
|
|
14
|
+
`SELECT state FROM app_lifeops.life_task_occurrences
|
|
15
|
+
WHERE id = ${sqlQuote(todoId)}
|
|
16
|
+
LIMIT 1`
|
|
17
|
+
);
|
|
18
|
+
if (rows.length === 0) {
|
|
19
|
+
const defRows = await executeRawSql(
|
|
20
|
+
runtime,
|
|
21
|
+
`SELECT status FROM app_lifeops.life_task_definitions
|
|
22
|
+
WHERE id = ${sqlQuote(todoId)}
|
|
23
|
+
LIMIT 1`
|
|
24
|
+
);
|
|
25
|
+
if (defRows.length === 0) return false;
|
|
26
|
+
const definitionRow = defRows[0];
|
|
27
|
+
if (!definitionRow) return false;
|
|
28
|
+
const status = definitionRow.status;
|
|
29
|
+
return typeof status === "string" && status.toLowerCase() === "completed";
|
|
30
|
+
}
|
|
31
|
+
const row = rows[0];
|
|
32
|
+
if (!row) return false;
|
|
33
|
+
const state = row.state;
|
|
34
|
+
return typeof state === "string" && state.toLowerCase() === "completed";
|
|
35
|
+
}
|
|
36
|
+
function shouldReleaseByTime(rule, nowMs) {
|
|
37
|
+
if (rule.gateType === "fixed_duration") {
|
|
38
|
+
if (rule.fixedDurationMs === null) return { release: false, reason: "" };
|
|
39
|
+
if (nowMs - rule.createdAt >= rule.fixedDurationMs) {
|
|
40
|
+
return { release: true, reason: "fixed_duration_elapsed" };
|
|
41
|
+
}
|
|
42
|
+
return { release: false, reason: "" };
|
|
43
|
+
}
|
|
44
|
+
if (rule.gateType === "until_iso") {
|
|
45
|
+
if (rule.gateUntilMs === null) return { release: false, reason: "" };
|
|
46
|
+
if (nowMs >= rule.gateUntilMs) {
|
|
47
|
+
return { release: true, reason: "until_iso_reached" };
|
|
48
|
+
}
|
|
49
|
+
return { release: false, reason: "" };
|
|
50
|
+
}
|
|
51
|
+
return { release: false, reason: "" };
|
|
52
|
+
}
|
|
53
|
+
async function evaluateRule(runtime, writer, rule, nowMs) {
|
|
54
|
+
if (rule.gateType === "until_todo" || rule.gateType === "harsh_no_bypass") {
|
|
55
|
+
if (!rule.gateTodoId) return;
|
|
56
|
+
const completed = await isTodoCompleted(runtime, rule.gateTodoId);
|
|
57
|
+
if (!completed) return;
|
|
58
|
+
await writer.updateGateFulfilled(rule.id, "todo_completed");
|
|
59
|
+
logger.info(
|
|
60
|
+
`[BlockRuleReconciler] Released rule ${rule.id}: gate todo ${rule.gateTodoId} completed`
|
|
61
|
+
);
|
|
62
|
+
if (rule.unlockDurationMs !== null && rule.unlockDurationMs > 0) {
|
|
63
|
+
await scheduleAutoReLock(runtime, writer, rule, nowMs);
|
|
64
|
+
}
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
67
|
+
const decision = shouldReleaseByTime(rule, nowMs);
|
|
68
|
+
if (!decision.release) return;
|
|
69
|
+
await writer.updateGateFulfilled(rule.id, decision.reason);
|
|
70
|
+
logger.info(
|
|
71
|
+
`[BlockRuleReconciler] Released rule ${rule.id}: ${decision.reason}`
|
|
72
|
+
);
|
|
73
|
+
}
|
|
74
|
+
async function scheduleAutoReLock(_runtime, writer, rule, nowMs) {
|
|
75
|
+
if (rule.unlockDurationMs === null || rule.unlockDurationMs <= 0) return;
|
|
76
|
+
const reLockAtMs = nowMs + rule.unlockDurationMs;
|
|
77
|
+
const followUpRuleId = await writer.createBlockRule({
|
|
78
|
+
profile: rule.profile,
|
|
79
|
+
websites: rule.websites,
|
|
80
|
+
gateType: "until_iso",
|
|
81
|
+
gateUntilMs: reLockAtMs
|
|
82
|
+
});
|
|
83
|
+
logger.info(
|
|
84
|
+
`[BlockRuleReconciler] Scheduled auto re-lock ${followUpRuleId} until ${new Date(reLockAtMs).toISOString()}`
|
|
85
|
+
);
|
|
86
|
+
}
|
|
87
|
+
async function reconcileBlockRulesOnce(runtime, nowMs = Date.now()) {
|
|
88
|
+
const reader = new BlockRuleReader(runtime);
|
|
89
|
+
const writer = new BlockRuleWriter(runtime);
|
|
90
|
+
const active = await reader.listActiveBlocks();
|
|
91
|
+
for (const rule of active) {
|
|
92
|
+
await evaluateRule(runtime, writer, rule, nowMs);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
function registerBlockRuleReconcilerWorker(runtime) {
|
|
96
|
+
if (runtime.getTaskWorker(BLOCK_RULE_RECONCILE_TASK_NAME)) {
|
|
97
|
+
return;
|
|
98
|
+
}
|
|
99
|
+
runtime.registerTaskWorker({
|
|
100
|
+
name: BLOCK_RULE_RECONCILE_TASK_NAME,
|
|
101
|
+
shouldRun: async () => true,
|
|
102
|
+
execute: async (rt) => {
|
|
103
|
+
await reconcileBlockRulesOnce(rt);
|
|
104
|
+
return void 0;
|
|
105
|
+
}
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
export {
|
|
109
|
+
BLOCK_RULE_RECONCILE_INTERVAL_MS,
|
|
110
|
+
BLOCK_RULE_RECONCILE_TASK_NAME,
|
|
111
|
+
BLOCK_RULE_RECONCILE_TASK_TAGS,
|
|
112
|
+
reconcileBlockRulesOnce,
|
|
113
|
+
registerBlockRuleReconcilerWorker
|
|
114
|
+
};
|
|
115
|
+
//# sourceMappingURL=block-rule-reconciler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/website-blocker/chat-integration/block-rule-reconciler.ts"],"sourcesContent":["import type { IAgentRuntime } from \"@elizaos/core\";\nimport { logger } from \"@elizaos/core\";\nimport { executeRawSql, sqlQuote } from \"../../lifeops/sql.js\";\nimport type { BlockRule } from \"./block-rule-schema.js\";\nimport { BlockRuleReader, BlockRuleWriter } from \"./block-rule-service.js\";\n\nexport const BLOCK_RULE_RECONCILE_TASK_NAME = \"BLOCK_RULE_RECONCILE\" as const;\nexport const BLOCK_RULE_RECONCILE_TASK_TAGS = [\n \"queue\",\n \"website-blocker\",\n \"block-rule-reconciler\",\n] as const;\nexport const BLOCK_RULE_RECONCILE_INTERVAL_MS = 60_000;\n\n/**\n * T7g — Website blocker chat integration reconciler (plan §6.8).\n *\n * Walks the `app_lifeops.life_block_rules` table every tick and releases rules whose\n * gates have been fulfilled. `harsh_no_bypass` rules behave like\n * `until_todo` but also reject manual release attempts in the writer.\n */\n\nasync function isTodoCompleted(\n runtime: IAgentRuntime,\n todoId: string,\n): Promise<boolean> {\n const rows = await executeRawSql(\n runtime,\n `SELECT state FROM app_lifeops.life_task_occurrences\n WHERE id = ${sqlQuote(todoId)}\n LIMIT 1`,\n );\n if (rows.length === 0) {\n const defRows = await executeRawSql(\n runtime,\n `SELECT status FROM app_lifeops.life_task_definitions\n WHERE id = ${sqlQuote(todoId)}\n LIMIT 1`,\n );\n if (defRows.length === 0) return false;\n const definitionRow = defRows[0];\n if (!definitionRow) return false;\n const status = definitionRow.status;\n return typeof status === \"string\" && status.toLowerCase() === \"completed\";\n }\n const row = rows[0];\n if (!row) return false;\n const state = row.state;\n return typeof state === \"string\" && state.toLowerCase() === \"completed\";\n}\n\nfunction shouldReleaseByTime(\n rule: BlockRule,\n nowMs: number,\n): { release: boolean; reason: string } {\n if (rule.gateType === \"fixed_duration\") {\n if (rule.fixedDurationMs === null) return { release: false, reason: \"\" };\n if (nowMs - rule.createdAt >= rule.fixedDurationMs) {\n return { release: true, reason: \"fixed_duration_elapsed\" };\n }\n return { release: false, reason: \"\" };\n }\n if (rule.gateType === \"until_iso\") {\n if (rule.gateUntilMs === null) return { release: false, reason: \"\" };\n if (nowMs >= rule.gateUntilMs) {\n return { release: true, reason: \"until_iso_reached\" };\n }\n return { release: false, reason: \"\" };\n }\n return { release: false, reason: \"\" };\n}\n\nasync function evaluateRule(\n runtime: IAgentRuntime,\n writer: BlockRuleWriter,\n rule: BlockRule,\n nowMs: number,\n): Promise<void> {\n if (rule.gateType === \"until_todo\" || rule.gateType === \"harsh_no_bypass\") {\n if (!rule.gateTodoId) return;\n const completed = await isTodoCompleted(runtime, rule.gateTodoId);\n if (!completed) return;\n await writer.updateGateFulfilled(rule.id, \"todo_completed\");\n logger.info(\n `[BlockRuleReconciler] Released rule ${rule.id}: gate todo ${rule.gateTodoId} completed`,\n );\n if (rule.unlockDurationMs !== null && rule.unlockDurationMs > 0) {\n await scheduleAutoReLock(runtime, writer, rule, nowMs);\n }\n return;\n }\n\n const decision = shouldReleaseByTime(rule, nowMs);\n if (!decision.release) return;\n await writer.updateGateFulfilled(rule.id, decision.reason);\n logger.info(\n `[BlockRuleReconciler] Released rule ${rule.id}: ${decision.reason}`,\n );\n}\n\nasync function scheduleAutoReLock(\n _runtime: IAgentRuntime,\n writer: BlockRuleWriter,\n rule: BlockRule,\n nowMs: number,\n): Promise<void> {\n if (rule.unlockDurationMs === null || rule.unlockDurationMs <= 0) return;\n const reLockAtMs = nowMs + rule.unlockDurationMs;\n const followUpRuleId = await writer.createBlockRule({\n profile: rule.profile,\n websites: rule.websites,\n gateType: \"until_iso\",\n gateUntilMs: reLockAtMs,\n });\n logger.info(\n `[BlockRuleReconciler] Scheduled auto re-lock ${followUpRuleId} until ${new Date(reLockAtMs).toISOString()}`,\n );\n}\n\nexport async function reconcileBlockRulesOnce(\n runtime: IAgentRuntime,\n nowMs: number = Date.now(),\n): Promise<void> {\n const reader = new BlockRuleReader(runtime);\n const writer = new BlockRuleWriter(runtime);\n const active = await reader.listActiveBlocks();\n for (const rule of active) {\n await evaluateRule(runtime, writer, rule, nowMs);\n }\n}\n\nexport function registerBlockRuleReconcilerWorker(\n runtime: IAgentRuntime,\n): void {\n if (runtime.getTaskWorker(BLOCK_RULE_RECONCILE_TASK_NAME)) {\n return;\n }\n runtime.registerTaskWorker({\n name: BLOCK_RULE_RECONCILE_TASK_NAME,\n shouldRun: async () => true,\n execute: async (rt) => {\n await reconcileBlockRulesOnce(rt);\n return undefined;\n },\n });\n}\n"],"mappings":"AACA,SAAS,cAAc;AACvB,SAAS,eAAe,gBAAgB;AAExC,SAAS,iBAAiB,uBAAuB;AAE1C,MAAM,iCAAiC;AACvC,MAAM,iCAAiC;AAAA,EAC5C;AAAA,EACA;AAAA,EACA;AACF;AACO,MAAM,mCAAmC;AAUhD,eAAe,gBACb,SACA,QACkB;AAClB,QAAM,OAAO,MAAM;AAAA,IACjB;AAAA,IACA;AAAA,oBACgB,SAAS,MAAM,CAAC;AAAA;AAAA,EAElC;AACA,MAAI,KAAK,WAAW,GAAG;AACrB,UAAM,UAAU,MAAM;AAAA,MACpB;AAAA,MACA;AAAA,sBACgB,SAAS,MAAM,CAAC;AAAA;AAAA,IAElC;AACA,QAAI,QAAQ,WAAW,EAAG,QAAO;AACjC,UAAM,gBAAgB,QAAQ,CAAC;AAC/B,QAAI,CAAC,cAAe,QAAO;AAC3B,UAAM,SAAS,cAAc;AAC7B,WAAO,OAAO,WAAW,YAAY,OAAO,YAAY,MAAM;AAAA,EAChE;AACA,QAAM,MAAM,KAAK,CAAC;AAClB,MAAI,CAAC,IAAK,QAAO;AACjB,QAAM,QAAQ,IAAI;AAClB,SAAO,OAAO,UAAU,YAAY,MAAM,YAAY,MAAM;AAC9D;AAEA,SAAS,oBACP,MACA,OACsC;AACtC,MAAI,KAAK,aAAa,kBAAkB;AACtC,QAAI,KAAK,oBAAoB,KAAM,QAAO,EAAE,SAAS,OAAO,QAAQ,GAAG;AACvE,QAAI,QAAQ,KAAK,aAAa,KAAK,iBAAiB;AAClD,aAAO,EAAE,SAAS,MAAM,QAAQ,yBAAyB;AAAA,IAC3D;AACA,WAAO,EAAE,SAAS,OAAO,QAAQ,GAAG;AAAA,EACtC;AACA,MAAI,KAAK,aAAa,aAAa;AACjC,QAAI,KAAK,gBAAgB,KAAM,QAAO,EAAE,SAAS,OAAO,QAAQ,GAAG;AACnE,QAAI,SAAS,KAAK,aAAa;AAC7B,aAAO,EAAE,SAAS,MAAM,QAAQ,oBAAoB;AAAA,IACtD;AACA,WAAO,EAAE,SAAS,OAAO,QAAQ,GAAG;AAAA,EACtC;AACA,SAAO,EAAE,SAAS,OAAO,QAAQ,GAAG;AACtC;AAEA,eAAe,aACb,SACA,QACA,MACA,OACe;AACf,MAAI,KAAK,aAAa,gBAAgB,KAAK,aAAa,mBAAmB;AACzE,QAAI,CAAC,KAAK,WAAY;AACtB,UAAM,YAAY,MAAM,gBAAgB,SAAS,KAAK,UAAU;AAChE,QAAI,CAAC,UAAW;AAChB,UAAM,OAAO,oBAAoB,KAAK,IAAI,gBAAgB;AAC1D,WAAO;AAAA,MACL,uCAAuC,KAAK,EAAE,eAAe,KAAK,UAAU;AAAA,IAC9E;AACA,QAAI,KAAK,qBAAqB,QAAQ,KAAK,mBAAmB,GAAG;AAC/D,YAAM,mBAAmB,SAAS,QAAQ,MAAM,KAAK;AAAA,IACvD;AACA;AAAA,EACF;AAEA,QAAM,WAAW,oBAAoB,MAAM,KAAK;AAChD,MAAI,CAAC,SAAS,QAAS;AACvB,QAAM,OAAO,oBAAoB,KAAK,IAAI,SAAS,MAAM;AACzD,SAAO;AAAA,IACL,uCAAuC,KAAK,EAAE,KAAK,SAAS,MAAM;AAAA,EACpE;AACF;AAEA,eAAe,mBACb,UACA,QACA,MACA,OACe;AACf,MAAI,KAAK,qBAAqB,QAAQ,KAAK,oBAAoB,EAAG;AAClE,QAAM,aAAa,QAAQ,KAAK;AAChC,QAAM,iBAAiB,MAAM,OAAO,gBAAgB;AAAA,IAClD,SAAS,KAAK;AAAA,IACd,UAAU,KAAK;AAAA,IACf,UAAU;AAAA,IACV,aAAa;AAAA,EACf,CAAC;AACD,SAAO;AAAA,IACL,gDAAgD,cAAc,UAAU,IAAI,KAAK,UAAU,EAAE,YAAY,CAAC;AAAA,EAC5G;AACF;AAEA,eAAsB,wBACpB,SACA,QAAgB,KAAK,IAAI,GACV;AACf,QAAM,SAAS,IAAI,gBAAgB,OAAO;AAC1C,QAAM,SAAS,IAAI,gBAAgB,OAAO;AAC1C,QAAM,SAAS,MAAM,OAAO,iBAAiB;AAC7C,aAAW,QAAQ,QAAQ;AACzB,UAAM,aAAa,SAAS,QAAQ,MAAM,KAAK;AAAA,EACjD;AACF;AAEO,SAAS,kCACd,SACM;AACN,MAAI,QAAQ,cAAc,8BAA8B,GAAG;AACzD;AAAA,EACF;AACA,UAAQ,mBAAmB;AAAA,IACzB,MAAM;AAAA,IACN,WAAW,YAAY;AAAA,IACvB,SAAS,OAAO,OAAO;AACrB,YAAM,wBAAwB,EAAE;AAChC,aAAO;AAAA,IACT;AAAA,EACF,CAAC;AACH;","names":[]}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* T7g — Website blocker chat integration (plan §6.8).
|
|
3
|
+
*
|
|
4
|
+
* Domain types for the `life_block_rules` table. The table is bootstrapped
|
|
5
|
+
* in `LifeOpsRepository.bootstrapSchema`; this module only provides typed
|
|
6
|
+
* shapes and narrow runtime decoders for rows read back from SQL.
|
|
7
|
+
*/
|
|
8
|
+
export declare const BLOCK_RULES_TABLE: "app_lifeops.life_block_rules";
|
|
9
|
+
export type BlockRuleGateType = "fixed_duration" | "until_todo" | "until_iso" | "harsh_no_bypass";
|
|
10
|
+
export interface BlockRule {
|
|
11
|
+
id: string;
|
|
12
|
+
agentId: string;
|
|
13
|
+
profile: string;
|
|
14
|
+
websites: string[];
|
|
15
|
+
gateType: BlockRuleGateType;
|
|
16
|
+
gateTodoId: string | null;
|
|
17
|
+
gateUntilMs: number | null;
|
|
18
|
+
fixedDurationMs: number | null;
|
|
19
|
+
unlockDurationMs: number | null;
|
|
20
|
+
active: boolean;
|
|
21
|
+
createdAt: number;
|
|
22
|
+
releasedAt: number | null;
|
|
23
|
+
releasedReason: string | null;
|
|
24
|
+
}
|
|
25
|
+
export interface CreateBlockRuleInput {
|
|
26
|
+
id?: string;
|
|
27
|
+
profile: string;
|
|
28
|
+
websites: string[];
|
|
29
|
+
gateType: BlockRuleGateType;
|
|
30
|
+
gateTodoId?: string | null;
|
|
31
|
+
gateUntilMs?: number | null;
|
|
32
|
+
fixedDurationMs?: number | null;
|
|
33
|
+
unlockDurationMs?: number | null;
|
|
34
|
+
}
|
|
35
|
+
export declare class BlockRuleRowError extends Error {
|
|
36
|
+
constructor(message: string);
|
|
37
|
+
}
|
|
38
|
+
export declare function rowToBlockRule(row: Record<string, unknown>): BlockRule;
|
|
39
|
+
//# sourceMappingURL=block-rule-schema.d.ts.map
|