@graphrefly/ts 0.0.1 → 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +197 -117
- package/dist/actions-types-CH-XCU9O.d.cts +657 -0
- package/dist/actions-types-w2iPQTkv.d.ts +657 -0
- package/dist/adapters/index.cjs +5157 -2951
- package/dist/adapters/index.cjs.map +1 -1
- package/dist/adapters/index.d.cts +207 -70
- package/dist/adapters/index.d.ts +207 -70
- package/dist/adapters/index.js +3738 -1688
- package/dist/adapters/index.js.map +1 -1
- package/dist/adapters/nestjs/microservices.cjs +841 -0
- package/dist/adapters/nestjs/microservices.cjs.map +1 -0
- package/dist/adapters/nestjs/microservices.d.cts +45 -0
- package/dist/adapters/nestjs/microservices.d.ts +45 -0
- package/dist/adapters/nestjs/microservices.js +206 -0
- package/dist/adapters/nestjs/microservices.js.map +1 -0
- package/dist/adapters/nestjs/native.cjs +1391 -0
- package/dist/adapters/nestjs/native.cjs.map +1 -0
- package/dist/adapters/nestjs/native.d.cts +111 -0
- package/dist/adapters/nestjs/native.d.ts +111 -0
- package/dist/adapters/nestjs/native.js +577 -0
- package/dist/adapters/nestjs/native.js.map +1 -0
- package/dist/adapters/nestjs/websockets.cjs +924 -0
- package/dist/adapters/nestjs/websockets.cjs.map +1 -0
- package/dist/adapters/nestjs/websockets.d.cts +47 -0
- package/dist/adapters/nestjs/websockets.d.ts +47 -0
- package/dist/adapters/nestjs/websockets.js +286 -0
- package/dist/adapters/nestjs/websockets.js.map +1 -0
- package/dist/adapters/nestjs.cjs +1085 -0
- package/dist/adapters/nestjs.cjs.map +1 -0
- package/dist/adapters/nestjs.d.cts +385 -0
- package/dist/adapters/nestjs.d.ts +385 -0
- package/dist/adapters/nestjs.js +112 -0
- package/dist/adapters/nestjs.js.map +1 -0
- package/dist/adapters/observe-storage.d.cts +3 -3
- package/dist/adapters/observe-storage.d.ts +3 -3
- package/dist/adapters/observe-storage.js +4 -4
- package/dist/adapters/react.cjs.map +1 -1
- package/dist/adapters/react.d.cts +2 -2
- package/dist/adapters/react.d.ts +2 -2
- package/dist/adapters/react.js +1 -1
- package/dist/adapters/solid.cjs.map +1 -1
- package/dist/adapters/solid.d.cts +2 -2
- package/dist/adapters/solid.d.ts +2 -2
- package/dist/adapters/solid.js +1 -1
- package/dist/adapters/svelte.cjs.map +1 -1
- package/dist/adapters/svelte.d.cts +2 -2
- package/dist/adapters/svelte.d.ts +2 -2
- package/dist/adapters/svelte.js +1 -1
- package/dist/adapters/vue.cjs.map +1 -1
- package/dist/adapters/vue.d.cts +2 -2
- package/dist/adapters/vue.d.ts +2 -2
- package/dist/adapters/vue.js +1 -1
- package/dist/{agent-runtime-BesGDZcB.d.ts → agent-runtime-types-core-CKwrBDyi.d.ts} +171 -320
- package/dist/{agent-runtime-DZTJ3C-p.d.cts → agent-runtime-types-core-bfl4m0vM.d.cts} +171 -320
- package/dist/agent-runtime-types-tool-BLPV3azj.d.cts +695 -0
- package/dist/agent-runtime-types-tool-hwqvVqNt.d.ts +695 -0
- package/dist/agentic-memory-retention-CLwI76JK.d.ts +14 -0
- package/dist/agentic-memory-retention-Cz8GR6ie.d.cts +14 -0
- package/dist/{agentic-memory-DfuVZ-lY.d.cts → agentic-memory-types-JDr7MPhh.d.cts} +13 -57
- package/dist/{agentic-memory-BmRCvh0d.d.ts → agentic-memory-types-khYJgzKL.d.ts} +13 -57
- package/dist/{capability-admission-B0BzqAm5.d.cts → capability-admission-B8RNFyaZ.d.cts} +3 -3
- package/dist/{capability-admission-g0mn9hpq.d.ts → capability-admission-Dkw1Xz3r.d.ts} +3 -3
- package/dist/chunk-2KUAG2GZ.js +9693 -0
- package/dist/chunk-2KUAG2GZ.js.map +1 -0
- package/dist/{chunk-CZNV3VXM.js → chunk-3J7UPZL5.js} +11 -11
- package/dist/{chunk-HKK2JD7Z.js → chunk-3LYI6ADX.js} +12 -125
- package/dist/chunk-3LYI6ADX.js.map +1 -0
- package/dist/{chunk-YXMZ2N6J.js → chunk-4M37FH2I.js} +1071 -1025
- package/dist/chunk-4M37FH2I.js.map +1 -0
- package/dist/{chunk-YDSIVHRR.js → chunk-4NWSNI4K.js} +1598 -1584
- package/dist/chunk-4NWSNI4K.js.map +1 -0
- package/dist/{chunk-Z2ANQ6JW.js → chunk-4Q77MMJY.js} +2 -2
- package/dist/{chunk-SS2A464I.js → chunk-54WPEODM.js} +3 -3
- package/dist/chunk-54WPEODM.js.map +1 -0
- package/dist/chunk-6E76H4OU.js +132 -0
- package/dist/chunk-6E76H4OU.js.map +1 -0
- package/dist/chunk-7GOTIIQ7.js +819 -0
- package/dist/chunk-7GOTIIQ7.js.map +1 -0
- package/dist/{chunk-V7CIJE4B.js → chunk-DKFWDTVY.js} +92 -9
- package/dist/chunk-DKFWDTVY.js.map +1 -0
- package/dist/{chunk-FBUU43PM.js → chunk-E4QCH32M.js} +448 -446
- package/dist/chunk-E4QCH32M.js.map +1 -0
- package/dist/{chunk-XKXWK2KP.js → chunk-GXU6WFEJ.js} +1157 -1021
- package/dist/chunk-GXU6WFEJ.js.map +1 -0
- package/dist/{chunk-K3FXTC3I.js → chunk-HJACH5PU.js} +3 -3
- package/dist/{chunk-GTPCOEOZ.js → chunk-IDMLXLLG.js} +3 -3
- package/dist/{chunk-DKP56CSW.js → chunk-JKAYLDQV.js} +2 -2
- package/dist/{chunk-4VLAQHZI.js → chunk-K7FB3JTD.js} +17 -1
- package/dist/chunk-K7FB3JTD.js.map +1 -0
- package/dist/{chunk-43BKLFZU.js → chunk-KFURM6FM.js} +10 -10
- package/dist/{chunk-H75VXTGT.js → chunk-L6LDXRWE.js} +3 -3
- package/dist/{chunk-H75VXTGT.js.map → chunk-L6LDXRWE.js.map} +1 -1
- package/dist/chunk-MCOFHMUU.js +4131 -0
- package/dist/chunk-MCOFHMUU.js.map +1 -0
- package/dist/chunk-MQEQMS7B.js +1009 -0
- package/dist/chunk-MQEQMS7B.js.map +1 -0
- package/dist/chunk-MTELVIYR.js +1421 -0
- package/dist/chunk-MTELVIYR.js.map +1 -0
- package/dist/{chunk-3JR3EDB2.js → chunk-NNDIFUKX.js} +121 -115
- package/dist/chunk-NNDIFUKX.js.map +1 -0
- package/dist/{chunk-2747WN4Y.js → chunk-PUSRRALM.js} +3 -3
- package/dist/{chunk-QFY4AFY4.js → chunk-PVC7WDKI.js} +58 -52
- package/dist/chunk-PVC7WDKI.js.map +1 -0
- package/dist/{chunk-VTHLCFN4.js → chunk-RAHNUYA5.js} +2 -2
- package/dist/chunk-TQPCAIQI.js +612 -0
- package/dist/chunk-TQPCAIQI.js.map +1 -0
- package/dist/{chunk-IXZBUWSP.js → chunk-UEMN5URK.js} +2 -2
- package/dist/chunk-WOS7RJYZ.js +1320 -0
- package/dist/chunk-WOS7RJYZ.js.map +1 -0
- package/dist/{chunk-6PHB5CJS.js → chunk-ZLFRB6FI.js} +2 -2
- package/dist/composition/index.cjs +1228 -1076
- package/dist/composition/index.cjs.map +1 -1
- package/dist/composition/index.d.cts +3 -3
- package/dist/composition/index.d.ts +3 -3
- package/dist/composition/index.js +4 -4
- package/dist/core/index.cjs +1198 -1046
- package/dist/core/index.cjs.map +1 -1
- package/dist/core/index.d.cts +23 -2
- package/dist/core/index.d.ts +23 -2
- package/dist/core/index.js +2 -2
- package/dist/cqrs/index.d.cts +3 -3
- package/dist/cqrs/index.d.ts +3 -3
- package/dist/cqrs/messaging.d.cts +4 -4
- package/dist/cqrs/messaging.d.ts +4 -4
- package/dist/cqrs/work-queue.d.cts +5 -5
- package/dist/cqrs/work-queue.d.ts +5 -5
- package/dist/data-structures/index.cjs +1226 -1074
- package/dist/data-structures/index.cjs.map +1 -1
- package/dist/data-structures/index.d.cts +8 -7
- package/dist/data-structures/index.d.ts +8 -7
- package/dist/data-structures/index.js +6 -5
- package/dist/{describe-DYMw_l1C.d.cts → describe-BumQ-3_0.d.cts} +1 -1
- package/dist/{describe-BpyJuWkw.d.ts → describe-cYr_Z5zm.d.ts} +1 -1
- package/dist/executors/tool-provider-adapters.cjs +3091 -0
- package/dist/executors/tool-provider-adapters.cjs.map +1 -0
- package/dist/executors/tool-provider-adapters.d.cts +174 -0
- package/dist/executors/tool-provider-adapters.d.ts +174 -0
- package/dist/executors/tool-provider-adapters.js +1336 -0
- package/dist/executors/tool-provider-adapters.js.map +1 -0
- package/dist/executors/tool-provider-runtime.cjs +5178 -0
- package/dist/executors/tool-provider-runtime.cjs.map +1 -0
- package/dist/executors/tool-provider-runtime.d.cts +17 -0
- package/dist/executors/tool-provider-runtime.d.ts +17 -0
- package/dist/executors/tool-provider-runtime.js +15 -0
- package/dist/executors/tool-provider-runtime.js.map +1 -0
- package/dist/executors/tool-provider.cjs +6392 -0
- package/dist/executors/tool-provider.cjs.map +1 -0
- package/dist/executors/tool-provider.d.cts +60 -0
- package/dist/executors/tool-provider.d.ts +60 -0
- package/dist/executors/tool-provider.js +89 -0
- package/dist/executors/tool-provider.js.map +1 -0
- package/dist/executors/work-queue.d.cts +6 -6
- package/dist/executors/work-queue.d.ts +6 -6
- package/dist/graph/index.cjs +1499 -1341
- package/dist/graph/index.cjs.map +1 -1
- package/dist/graph/index.d.cts +9 -8
- package/dist/graph/index.d.ts +9 -8
- package/dist/graph/index.js +23 -22
- package/dist/{graph-DCEWh4T2.d.cts → graph-C1C-wb0L.d.cts} +266 -137
- package/dist/{graph-D-1-SQeC.d.ts → graph-CS0b4V9B.d.ts} +266 -137
- package/dist/{index-72VZC0-E.d.cts → index-DLrNopda.d.cts} +151 -10
- package/dist/{index-Bmxeu0nK.d.ts → index-DzJni3_6.d.ts} +151 -10
- package/dist/index.cjs +3397 -3140
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +12 -9
- package/dist/index.d.ts +12 -9
- package/dist/index.js +110 -109
- package/dist/inspection/boundary.d.cts +4 -4
- package/dist/inspection/boundary.d.ts +4 -4
- package/dist/measurements-BWAnochv.d.ts +294 -0
- package/dist/measurements-B_gJfD8h.d.cts +294 -0
- package/dist/messaging/index.cjs +57 -51
- package/dist/messaging/index.cjs.map +1 -1
- package/dist/messaging/index.d.cts +11 -276
- package/dist/messaging/index.d.ts +11 -276
- package/dist/messaging/index.js +1 -1
- package/dist/operators/index.cjs +1228 -1076
- package/dist/operators/index.cjs.map +1 -1
- package/dist/operators/index.d.cts +5 -5
- package/dist/operators/index.d.ts +5 -5
- package/dist/operators/index.js +5 -5
- package/dist/orchestration/index.cjs +8844 -6071
- package/dist/orchestration/index.cjs.map +1 -1
- package/dist/orchestration/index.d.cts +171 -224
- package/dist/orchestration/index.d.ts +171 -224
- package/dist/orchestration/index.js +42 -991
- package/dist/orchestration/index.js.map +1 -1
- package/dist/orchestration/messaging.d.cts +5 -8
- package/dist/orchestration/messaging.d.ts +5 -8
- package/dist/orchestration/work-queue.cjs +1243 -5
- package/dist/orchestration/work-queue.cjs.map +1 -1
- package/dist/orchestration/work-queue.d.cts +121 -10
- package/dist/orchestration/work-queue.d.ts +121 -10
- package/dist/orchestration/work-queue.js +1067 -4
- package/dist/orchestration/work-queue.js.map +1 -1
- package/dist/patterns/event-flow.cjs +6 -20
- package/dist/patterns/event-flow.cjs.map +1 -1
- package/dist/patterns/event-flow.d.cts +4 -4
- package/dist/patterns/event-flow.d.ts +4 -4
- package/dist/patterns/event-flow.js +2 -2
- package/dist/patterns/index.cjs +453 -465
- package/dist/patterns/index.cjs.map +1 -1
- package/dist/patterns/index.d.cts +6 -5
- package/dist/patterns/index.d.ts +6 -5
- package/dist/patterns/index.js +3 -3
- package/dist/process-types-BB7oRhX3.d.cts +200 -0
- package/dist/process-types-QNhyoYJ8.d.ts +200 -0
- package/dist/{reactive-collection-DNV0-gFi.d.cts → reactive-collection-BYlWvtnp.d.cts} +4 -34
- package/dist/{reactive-collection-BAmfrGjd.d.ts → reactive-collection-efOEdGFN.d.ts} +4 -34
- package/dist/{reactive-collection-storage-BNEldDyi.d.cts → reactive-collection-storage-BjoLsoiC.d.cts} +5 -5
- package/dist/{reactive-collection-storage-YZsAQsWK.d.ts → reactive-collection-storage-DwW6UuK_.d.ts} +5 -5
- package/dist/{reactive-map-DRD1LJ2H.d.cts → reactive-map-BHacbIqz.d.cts} +7 -2
- package/dist/{reactive-map-EsDiCmJk.d.ts → reactive-map-DN4Jyqnf.d.ts} +7 -2
- package/dist/render/index.d.cts +2 -2
- package/dist/render/index.d.ts +2 -2
- package/dist/scheduled-readiness-BmqXxnzX.d.ts +91 -0
- package/dist/scheduled-readiness-CYSw7KDE.d.cts +91 -0
- package/dist/semantic-memory-graph-B_LwbM-E.d.cts +30 -0
- package/dist/semantic-memory-graph-rsFNNhwn.d.ts +30 -0
- package/dist/{semantic-memory-graph-DKuNzuWw.d.cts → semantic-memory-graph-types-Y73bbwVI.d.cts} +2 -28
- package/dist/{semantic-memory-graph-uwbwJdhe.d.ts → semantic-memory-graph-types-safmPkuX.d.ts} +2 -28
- package/dist/solutions/index.cjs +6353 -6169
- package/dist/solutions/index.cjs.map +1 -1
- package/dist/solutions/index.d.cts +12 -10
- package/dist/solutions/index.d.ts +12 -10
- package/dist/solutions/index.js +5 -5
- package/dist/solutions/reactive-layout/browser/index.cjs +116 -108
- package/dist/solutions/reactive-layout/browser/index.cjs.map +1 -1
- package/dist/solutions/reactive-layout/browser/index.d.cts +4 -4
- package/dist/solutions/reactive-layout/browser/index.d.ts +4 -4
- package/dist/solutions/reactive-layout/browser/index.js +3 -3
- package/dist/solutions/reactive-layout/index.cjs +3578 -3350
- package/dist/solutions/reactive-layout/index.cjs.map +1 -1
- package/dist/solutions/reactive-layout/index.d.cts +32 -576
- package/dist/solutions/reactive-layout/index.d.ts +32 -576
- package/dist/solutions/reactive-layout/index.js +65 -5
- package/dist/solutions/reactive-layout/node-canvas/index.cjs +127 -117
- package/dist/solutions/reactive-layout/node-canvas/index.cjs.map +1 -1
- package/dist/solutions/reactive-layout/node-canvas/index.d.cts +4 -4
- package/dist/solutions/reactive-layout/node-canvas/index.d.ts +4 -4
- package/dist/solutions/reactive-layout/node-canvas/index.js +3 -3
- package/dist/solutions/reactive-layout/react-native/index.cjs +127 -117
- package/dist/solutions/reactive-layout/react-native/index.cjs.map +1 -1
- package/dist/solutions/reactive-layout/react-native/index.d.cts +4 -4
- package/dist/solutions/reactive-layout/react-native/index.d.ts +4 -4
- package/dist/solutions/reactive-layout/react-native/index.js +3 -3
- package/dist/solutions/reactive-layout/skia/index.cjs +127 -117
- package/dist/solutions/reactive-layout/skia/index.cjs.map +1 -1
- package/dist/solutions/reactive-layout/skia/index.d.cts +4 -4
- package/dist/solutions/reactive-layout/skia/index.d.ts +4 -4
- package/dist/solutions/reactive-layout/skia/index.js +3 -3
- package/dist/solutions/work-item/actions.cjs +1609 -1428
- package/dist/solutions/work-item/actions.cjs.map +1 -1
- package/dist/solutions/work-item/actions.d.cts +23 -184
- package/dist/solutions/work-item/actions.d.ts +23 -184
- package/dist/solutions/work-item/actions.js +1558 -934
- package/dist/solutions/work-item/actions.js.map +1 -1
- package/dist/solutions/work-item/scheduling.cjs +9181 -1838
- package/dist/solutions/work-item/scheduling.cjs.map +1 -1
- package/dist/solutions/work-item/scheduling.d.cts +1763 -328
- package/dist/solutions/work-item/scheduling.d.ts +1763 -328
- package/dist/solutions/work-item/scheduling.js +117 -3
- package/dist/solutions/work-item/work-queue.d.cts +7 -7
- package/dist/solutions/work-item/work-queue.d.ts +7 -7
- package/dist/sources/browser.cjs +1318 -1083
- package/dist/sources/browser.cjs.map +1 -1
- package/dist/sources/browser.d.cts +22 -6
- package/dist/sources/browser.d.ts +22 -6
- package/dist/sources/browser.js +4 -4
- package/dist/sources/browser.js.map +1 -1
- package/dist/sources/index.cjs +1318 -1083
- package/dist/sources/index.cjs.map +1 -1
- package/dist/sources/index.d.cts +4 -4
- package/dist/sources/index.d.ts +4 -4
- package/dist/sources/index.js +4 -4
- package/dist/sources/node.d.cts +3 -3
- package/dist/sources/node.d.ts +3 -3
- package/dist/storage/browser.cjs +16 -0
- package/dist/storage/browser.cjs.map +1 -1
- package/dist/storage/browser.js +3 -3
- package/dist/storage/index.cjs +16 -0
- package/dist/storage/index.cjs.map +1 -1
- package/dist/storage/index.d.cts +5 -4
- package/dist/storage/index.d.ts +5 -4
- package/dist/storage/index.js +6 -6
- package/dist/storage/node.cjs +16 -0
- package/dist/storage/node.cjs.map +1 -1
- package/dist/storage/node.js +3 -3
- package/dist/{store-C-joM4gh.d.ts → store-6_CHF6Ge.d.ts} +1 -1
- package/dist/{store-CNJwmT-h.d.cts → store-BljX8RkQ.d.cts} +1 -1
- package/dist/types-BAw2QVVE.d.cts +274 -0
- package/dist/types-BUbbbh4f.d.cts +34 -0
- package/dist/types-CMnzoL54.d.cts +457 -0
- package/dist/{types-CcPIn7sy.d.cts → types-CTN3XoMl.d.cts} +57 -108
- package/dist/types-CV_ohy5T.d.cts +357 -0
- package/dist/{types-BsJvElYZ.d.ts → types-DChxk1vK.d.ts} +57 -108
- package/dist/types-DRu7SnLV.d.ts +274 -0
- package/dist/types-DeID_FRl.d.ts +34 -0
- package/dist/types-IhKH0hGW.d.ts +357 -0
- package/dist/types-ePlD2uyT.d.ts +457 -0
- package/dist/{work-item-runtime-qaVgsL0T.d.cts → work-item-runtime-types-BTxLskN5.d.cts} +3 -93
- package/dist/{work-item-runtime-C3M79vE9.d.ts → work-item-runtime-types-DAsZbb2y.d.ts} +3 -93
- package/dist/work-queue/index.cjs +957 -953
- package/dist/work-queue/index.cjs.map +1 -1
- package/dist/work-queue/index.d.cts +9 -357
- package/dist/work-queue/index.d.ts +9 -357
- package/dist/work-queue/index.js +957 -953
- package/dist/work-queue/index.js.map +1 -1
- package/package.json +611 -513
- package/dist/chunk-3JR3EDB2.js.map +0 -1
- package/dist/chunk-4VLAQHZI.js.map +0 -1
- package/dist/chunk-6XAIOL3X.js +0 -2407
- package/dist/chunk-6XAIOL3X.js.map +0 -1
- package/dist/chunk-FBUU43PM.js.map +0 -1
- package/dist/chunk-HKK2JD7Z.js.map +0 -1
- package/dist/chunk-PC3BTTBE.js +0 -3217
- package/dist/chunk-PC3BTTBE.js.map +0 -1
- package/dist/chunk-QFY4AFY4.js.map +0 -1
- package/dist/chunk-SS2A464I.js.map +0 -1
- package/dist/chunk-V7CIJE4B.js.map +0 -1
- package/dist/chunk-XKXWK2KP.js.map +0 -1
- package/dist/chunk-YDSIVHRR.js.map +0 -1
- package/dist/chunk-YXMZ2N6J.js.map +0 -1
- /package/dist/{chunk-CZNV3VXM.js.map → chunk-3J7UPZL5.js.map} +0 -0
- /package/dist/{chunk-Z2ANQ6JW.js.map → chunk-4Q77MMJY.js.map} +0 -0
- /package/dist/{chunk-K3FXTC3I.js.map → chunk-HJACH5PU.js.map} +0 -0
- /package/dist/{chunk-GTPCOEOZ.js.map → chunk-IDMLXLLG.js.map} +0 -0
- /package/dist/{chunk-DKP56CSW.js.map → chunk-JKAYLDQV.js.map} +0 -0
- /package/dist/{chunk-43BKLFZU.js.map → chunk-KFURM6FM.js.map} +0 -0
- /package/dist/{chunk-2747WN4Y.js.map → chunk-PUSRRALM.js.map} +0 -0
- /package/dist/{chunk-VTHLCFN4.js.map → chunk-RAHNUYA5.js.map} +0 -0
- /package/dist/{chunk-IXZBUWSP.js.map → chunk-UEMN5URK.js.map} +0 -0
- /package/dist/{chunk-6PHB5CJS.js.map → chunk-ZLFRB6FI.js.map} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/adapters/nestjs/native.ts"],"sourcesContent":["/**\n * Nest-native provider bridge for GraphReFly boundary metadata (D484).\n *\n * This focused subpath is allowed to import Nest/RxJS. The dependency-light\n * `@graphrefly/ts/adapters/nestjs` structural layer stays Nest-free.\n */\n\nimport type {\n\tArgumentsHost,\n\tCallHandler,\n\tCanActivate,\n\tExceptionFilter,\n\tExecutionContext,\n\tOnModuleDestroy,\n\tOnModuleInit,\n\tProvider,\n} from \"@nestjs/common\";\nimport { Catch, HttpException, type NestInterceptor } from \"@nestjs/common\";\nimport { APP_GUARD, APP_INTERCEPTOR } from \"@nestjs/core\";\nimport { from, type Observable } from \"rxjs\";\nimport {\n\ttype CronSchedule,\n\ttype FromCronOptions,\n\tmatchesCron,\n\tparseCron,\n} from \"../../graph/sources.js\";\nimport {\n\tbindingEmitOptions,\n\tbindingRequestId,\n\tcreateNestGraphBoundaryRunner,\n\ttype DecoratorBoundMethod,\n\ttype DecoratorHostConstructor,\n\ttype GraphGuardDecision,\n\tgetNestBoundaryBindings,\n\tisDataIssue,\n\tlowerHttpReplyPayload,\n\tlowerProtocolError,\n\ttype NestBoundaryBindingMeta,\n\ttype NestDiagnosticIngressBoundary,\n\ttype NestGraphRunOptions,\n\ttype NestHttpReplyBindingMeta,\n\ttype NestHttpResponsePayload,\n\ttype NestIngressBindingMeta,\n\ttype NestIssueResponse,\n\ttype NestProtocolErrorResponse,\n\tprotocolError,\n\tresolveNestMethodKey,\n\ttoNestHttp,\n} from \"../nestjs.js\";\n\nexport const GRAPHREFLY_NEST_CRON_SCHEDULER = Symbol.for(\"graphrefly:nest:cron-scheduler\");\nexport const GRAPHREFLY_NEST_EXCEPTION_FILTER = Symbol.for(\"graphrefly:nest:exception-filter\");\nexport const GRAPHREFLY_NEST_LIFECYCLE_HOOKS = Symbol.for(\"graphrefly:nest:lifecycle-hooks\");\n\nexport interface GraphNativeHostOptions<THost = unknown> extends NestGraphRunOptions<THost> {\n\treadonly host?: (context: ExecutionContext) => THost;\n\treadonly diagnosticBoundary?: NestDiagnosticIngressBoundary;\n}\n\nexport interface GraphNativeHttpOptions<THost = unknown> extends GraphNativeHostOptions<THost> {\n\treadonly issueResponse?: NestIssueResponse<THost>;\n\treadonly protocolError?: NestProtocolErrorResponse<THost>;\n}\n\nexport interface GraphExceptionFilterTarget {\n\treadonly target: DecoratorHostConstructor | object;\n\treadonly methodKey: string | symbol;\n}\n\nexport interface GraphExceptionFilterProviderOptions<THost = unknown> {\n\treadonly host?: (host: ArgumentsHost, exception: unknown) => THost;\n\treadonly target: (\n\t\thost: ArgumentsHost,\n\t\texception: unknown,\n\t) => GraphExceptionFilterTarget | undefined;\n\treadonly diagnosticBoundary?: NestDiagnosticIngressBoundary;\n\treadonly requestId?: string | ((host: THost) => string | undefined);\n\treadonly issueResponse?: NestIssueResponse<THost>;\n\treadonly protocolError?: NestProtocolErrorResponse<THost>;\n}\n\nexport interface GraphCronProviderTarget<THost = unknown> {\n\treadonly target: DecoratorHostConstructor | object;\n\treadonly methodKey?: string | symbol;\n\treadonly expr: string;\n\treadonly tickMs?: number;\n\treadonly timezone?: string;\n\treadonly dst?: FromCronOptions[\"dst\"];\n\treadonly host?: (date: Date) => THost;\n}\n\nexport interface GraphCronSchedulerProviderOptions {\n\treadonly targets: readonly GraphCronProviderTarget[];\n}\n\nexport interface GraphCronController {\n\tcheck(now: Date): void;\n}\n\nexport interface GraphCronControllerOptions {\n\treadonly targets: readonly GraphCronProviderTarget[];\n}\n\nexport interface GraphLifecycleProviderTarget<THost = unknown> {\n\treadonly target: DecoratorHostConstructor | object;\n\treadonly methodKey?: string | symbol;\n\treadonly event?: \"module-init\" | \"module-destroy\";\n\treadonly host?: (event: \"module-init\" | \"module-destroy\") => THost;\n}\n\nexport interface GraphLifecycleHooksProviderOptions {\n\treadonly targets: readonly GraphLifecycleProviderTarget[];\n}\n\nexport interface GraphNativeHttpProviderBundleOptions<THost = unknown> {\n\treadonly boundaryInterceptor?: GraphNativeHttpOptions<THost> | false;\n\treadonly guard?: GraphNativeHttpOptions<THost> | false;\n\treadonly guardDeniedFilter?: boolean;\n\treadonly exceptionFilter?: GraphExceptionFilterProviderOptions<THost>;\n}\n\nexport interface GraphNativeProviderBundleOptions<THost = unknown> {\n\treadonly http?: GraphNativeHttpProviderBundleOptions<THost> | false;\n\treadonly cronScheduler?: GraphCronSchedulerProviderOptions;\n\treadonly lifecycleHooks?: GraphLifecycleHooksProviderOptions;\n}\n\nexport function provideGraphBoundaryInterceptor<THost = unknown>(\n\topts: GraphNativeHttpOptions<THost> = {},\n): Provider {\n\treturn { provide: APP_INTERCEPTOR, useValue: new GraphBoundaryInterceptorBridge(opts) };\n}\n\nexport function provideGraphGuard<THost = unknown>(\n\topts: GraphNativeHttpOptions<THost> = {},\n): Provider {\n\treturn { provide: APP_GUARD, useValue: new GraphGuardBridge(opts) };\n}\n\nexport function provideGraphExceptionFilter<THost = unknown>(\n\topts: GraphExceptionFilterProviderOptions<THost>,\n): Provider {\n\treturn { provide: GRAPHREFLY_NEST_EXCEPTION_FILTER, useValue: createGraphExceptionFilter(opts) };\n}\n\nexport function createGraphExceptionFilter<THost = unknown>(\n\topts: GraphExceptionFilterProviderOptions<THost>,\n): ExceptionFilter & OnModuleDestroy {\n\treturn new GraphExceptionFilterBridge(opts);\n}\n\nexport function provideGraphGuardDeniedFilter(): Provider {\n\treturn GraphGuardDeniedFilter;\n}\n\nexport function createGraphGuardDeniedFilter(): ExceptionFilter {\n\treturn new GraphGuardDeniedFilter();\n}\n\nexport function provideGraphCronScheduler(opts: GraphCronSchedulerProviderOptions): Provider {\n\treturn { provide: GRAPHREFLY_NEST_CRON_SCHEDULER, useValue: new GraphCronSchedulerBridge(opts) };\n}\n\nexport function provideGraphLifecycleHooks(opts: GraphLifecycleHooksProviderOptions): Provider {\n\treturn {\n\t\tprovide: GRAPHREFLY_NEST_LIFECYCLE_HOOKS,\n\t\tuseValue: new GraphLifecycleHooksBridge(opts),\n\t};\n}\n\nexport function provideGraphNativeHttpProviders<THost = unknown>(\n\topts: GraphNativeHttpProviderBundleOptions<THost> = {},\n): Provider[] {\n\tconst providers: Provider[] = [];\n\tif (opts.boundaryInterceptor !== false)\n\t\tproviders.push(provideGraphBoundaryInterceptor(opts.boundaryInterceptor ?? {}));\n\tif (opts.guard !== false) providers.push(provideGraphGuard(opts.guard ?? {}));\n\tif (opts.guardDeniedFilter ?? true) providers.push(provideGraphGuardDeniedFilter());\n\tif (opts.exceptionFilter !== undefined)\n\t\tproviders.push(provideGraphExceptionFilter(opts.exceptionFilter));\n\treturn providers;\n}\n\nexport function provideGraphNativeProviders<THost = unknown>(\n\topts: GraphNativeProviderBundleOptions<THost> = {},\n): Provider[] {\n\tconst providers: Provider[] = [];\n\tif (opts.http !== false) providers.push(...provideGraphNativeHttpProviders(opts.http ?? {}));\n\tif (opts.cronScheduler !== undefined)\n\t\tproviders.push(provideGraphCronScheduler(opts.cronScheduler));\n\tif (opts.lifecycleHooks !== undefined)\n\t\tproviders.push(provideGraphLifecycleHooks(opts.lifecycleHooks));\n\treturn providers;\n}\n\nexport function graphCronTarget<THost = unknown>(\n\ttarget: DecoratorHostConstructor | object,\n\tmethodKey: string | symbol,\n\topts: Omit<GraphCronProviderTarget<THost>, \"target\" | \"methodKey\">,\n): GraphCronProviderTarget<THost> {\n\treturn { ...opts, target, methodKey };\n}\n\nexport function graphLifecycleTarget<THost = unknown>(\n\ttarget: DecoratorHostConstructor | object,\n\tmethodKey: string | symbol,\n\topts: Omit<GraphLifecycleProviderTarget<THost>, \"target\" | \"methodKey\"> = {},\n): GraphLifecycleProviderTarget<THost> {\n\treturn { ...opts, target, methodKey };\n}\n\nexport function createGraphCronController(opts: GraphCronControllerOptions): GraphCronController {\n\treturn new GraphCronControllerImpl(opts);\n}\n\nclass GraphBoundaryInterceptorBridge<THost> implements NestInterceptor, OnModuleDestroy {\n\tprivate readonly runner: ReturnType<typeof createNestGraphBoundaryRunner>;\n\n\tconstructor(private readonly opts: GraphNativeHttpOptions<THost>) {\n\t\tthis.runner = createNestGraphBoundaryRunner({\n\t\t\tdiagnosticBoundary: opts.diagnosticBoundary,\n\t\t\tdiagnosticPhase: \"http\",\n\t\t});\n\t}\n\n\tintercept(context: ExecutionContext, next: CallHandler): Observable<unknown> {\n\t\tconst host = this.opts.host?.(context) ?? (defaultHttpHost(context) as THost);\n\t\tconst result = this.runner.run(\n\t\t\tcontext.getClass(),\n\t\t\tmethodKeyForContext(context),\n\t\t\thost,\n\t\t\tthis.opts,\n\t\t);\n\t\tconst reply = firstHttpReply(context);\n\t\tconst value =\n\t\t\tresult === undefined\n\t\t\t\t? next.handle()\n\t\t\t\t: Promise.resolve(result).then(\n\t\t\t\t\t\t(payload) =>\n\t\t\t\t\t\t\twriteHttpResponse(\n\t\t\t\t\t\t\t\tcontext,\n\t\t\t\t\t\t\t\tlowerHttpReplyPayload(payload, host, {\n\t\t\t\t\t\t\t\t\tissueResponse: reply?.issueResponse ?? this.opts.issueResponse,\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t(errorPayload) =>\n\t\t\t\t\t\t\twriteHttpResponse(\n\t\t\t\t\t\t\t\tcontext,\n\t\t\t\t\t\t\t\tlowerProtocolError(errorPayload, host, {\n\t\t\t\t\t\t\t\t\tprotocolError: reply?.protocolError ?? this.opts.protocolError,\n\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t),\n\t\t\t\t\t);\n\t\treturn isObservableLike(value) ? value : from(Promise.resolve(value));\n\t}\n\n\tonModuleDestroy(): void {\n\t\tthis.runner.dispose();\n\t}\n}\n\nclass GraphGuardBridge<THost> implements CanActivate, OnModuleDestroy {\n\tprivate readonly decisions = new WeakMap<\n\t\tobject,\n\t\tMap<string, ReturnType<typeof toNestHttp<GraphGuardDecision>>>\n\t>();\n\tprivate readonly disposableDecisions = new Set<\n\t\tReturnType<typeof toNestHttp<GraphGuardDecision>>\n\t>();\n\n\tconstructor(private readonly opts: GraphNativeHttpOptions<THost>) {}\n\n\tasync canActivate(context: ExecutionContext): Promise<boolean> {\n\t\tconst methodKey = methodKeyForContext(context);\n\t\tconst bindings = getNestBoundaryBindings(context.getClass(), methodKey);\n\t\tconst guards = bindings.filter(isGuardIngress);\n\t\tif (guards.length === 0) return true;\n\t\tconst decisions = bindings.filter(isGuardDecision);\n\t\tif (decisions.length === 0) return false;\n\t\tconst host = this.opts.host?.(context) ?? (defaultHttpHost(context) as THost);\n\t\tconst guardEmits = guards.map((guard) => ({\n\t\t\tguard,\n\t\t\trequestId: bindingRequestId(host, guard, this.opts.requestId),\n\t\t}));\n\t\tif (guardEmits.some((entry) => entry.requestId === undefined)) return false;\n\t\tconst requestIds = new Set(guardEmits.map((entry) => entry.requestId as string));\n\t\tconst cleanups: Array<() => boolean> = [];\n\t\ttry {\n\t\t\tconst pending: GuardDecisionState[] = [];\n\t\t\tfor (const requestId of requestIds) {\n\t\t\t\tfor (const decision of decisions) {\n\t\t\t\t\tconst state: GuardDecisionState = { status: \"pending\", binding: decision };\n\t\t\t\t\tpending.push(state);\n\t\t\t\t\tcleanups.push(\n\t\t\t\t\t\tthis.decisionBoundary(decision).attach({\n\t\t\t\t\t\t\trequestId,\n\t\t\t\t\t\t\tbindingId: decision.bindingId,\n\t\t\t\t\t\t\thandle: {\n\t\t\t\t\t\t\t\tresolve(payload) {\n\t\t\t\t\t\t\t\t\tstate.status = \"resolved\";\n\t\t\t\t\t\t\t\t\tstate.payload = payload;\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\treject(error) {\n\t\t\t\t\t\t\t\t\tstate.status = \"rejected\";\n\t\t\t\t\t\t\t\t\tstate.error = error;\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t}),\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t\tfor (const entry of guardEmits)\n\t\t\t\tentry.guard.boundary.emit(host, bindingEmitOptions(host, entry.guard, entry.requestId));\n\t\t\tconst rejected = pending.find((state) => state.status === \"rejected\");\n\t\t\tif (rejected !== undefined) {\n\t\t\t\tthrow new GraphGuardProtocolErrorException(\n\t\t\t\t\tlowerProtocolError(rejected.error, host, {\n\t\t\t\t\t\tprotocolError: rejected.binding.protocolError ?? this.opts.protocolError,\n\t\t\t\t\t}),\n\t\t\t\t);\n\t\t\t}\n\t\t\tif (pending.some((state) => state.status !== \"resolved\")) return false;\n\t\t\tconst denied = pending.find(\n\t\t\t\t(\n\t\t\t\t\tstate,\n\t\t\t\t): state is GuardDecisionState & {\n\t\t\t\t\treadonly status: \"resolved\";\n\t\t\t\t\treadonly payload: Extract<GraphGuardDecision, { readonly kind: \"deny\" }>;\n\t\t\t\t} => state.status === \"resolved\" && state.payload?.kind === \"deny\",\n\t\t\t);\n\t\t\tif (denied !== undefined) {\n\t\t\t\tthrow new GraphGuardDeniedException(\n\t\t\t\t\tguardDecisionResponse(denied.payload, host, {\n\t\t\t\t\t\tissueResponse: denied.binding.issueResponse ?? this.opts.issueResponse,\n\t\t\t\t\t}),\n\t\t\t\t);\n\t\t\t}\n\t\t\treturn pending.every((state) => state.payload?.kind === \"allow\");\n\t\t} catch (error) {\n\t\t\tif (isGraphGuardDeniedException(error) || error instanceof GraphGuardProtocolErrorException) {\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t\treturn false;\n\t\t} finally {\n\t\t\tfor (const cleanup of cleanups) cleanup();\n\t\t}\n\t}\n\n\tonModuleDestroy(): void {\n\t\tfor (const boundary of this.disposableDecisions) boundary.dispose();\n\t\tthis.disposableDecisions.clear();\n\t}\n\n\tprivate decisionBoundary(\n\t\tbinding: NestGuardDecisionBindingMeta,\n\t): ReturnType<typeof toNestHttp<GraphGuardDecision>> {\n\t\tconst node = binding.decisionNode as object;\n\t\tlet byBinding = this.decisions.get(node);\n\t\tif (byBinding === undefined) {\n\t\t\tbyBinding = new Map();\n\t\t\tthis.decisions.set(node, byBinding);\n\t\t}\n\t\tconst existing = byBinding.get(binding.bindingId);\n\t\tif (existing !== undefined) return existing;\n\t\tconst boundary = toNestHttp(binding.decisionNode, {\n\t\t\tbindingId: binding.bindingId,\n\t\t\tdiagnosticBoundary: this.opts.diagnosticBoundary,\n\t\t\tdiagnosticPhase: \"guard\",\n\t\t});\n\t\tbyBinding.set(binding.bindingId, boundary);\n\t\tthis.disposableDecisions.add(boundary);\n\t\treturn boundary;\n\t}\n}\n\nexport class GraphExceptionFilterBridge<THost> implements ExceptionFilter, OnModuleDestroy {\n\tprivate readonly replies = new WeakMap<\n\t\tobject,\n\t\tMap<string, ReturnType<typeof toNestHttp<NestHttpReplyPayloadUnknown>>>\n\t>();\n\tprivate readonly disposableReplies = new Set<\n\t\tReturnType<typeof toNestHttp<NestHttpReplyPayloadUnknown>>\n\t>();\n\n\tconstructor(private readonly opts: GraphExceptionFilterProviderOptions<THost>) {}\n\n\tcatch(exception: unknown, host: ArgumentsHost): unknown {\n\t\tconst target = this.opts.target(host, exception);\n\t\tif (target === undefined) throw exception;\n\t\tconst bindings = getNestBoundaryBindings(target.target, target.methodKey);\n\t\tconst filters = bindings.filter(isErrorIngress);\n\t\tif (filters.length === 0) throw exception;\n\t\tconst nativeHost =\n\t\t\tthis.opts.host?.(host, exception) ?? (defaultArgumentsHost(host, exception) as THost);\n\t\tconst filterEmits = filters.map((filter) => ({\n\t\t\tfilter,\n\t\t\trequestId: bindingRequestId(nativeHost, filter, this.opts.requestId),\n\t\t}));\n\t\tconst handleFilters = filterEmits.filter((entry) => entry.filter.mode !== \"observe\");\n\t\tconst observeOnly = handleFilters.length === 0;\n\t\tconst replies = bindings.filter(isHttpReply);\n\t\tconst cleanups: Array<() => boolean> = [];\n\t\tconst emitFilters = () => {\n\t\t\tfor (const entry of filterEmits) {\n\t\t\t\tentry.filter.boundary.emit(\n\t\t\t\t\tnativeHost,\n\t\t\t\t\tbindingEmitOptions(nativeHost, entry.filter, entry.requestId),\n\t\t\t\t);\n\t\t\t}\n\t\t};\n\t\tif (observeOnly) {\n\t\t\temitFilters();\n\t\t\tthrow exception;\n\t\t}\n\t\tconst requestIds = new Set(\n\t\t\thandleFilters\n\t\t\t\t.map((entry) => entry.requestId)\n\t\t\t\t.filter((requestId): requestId is string => requestId !== undefined),\n\t\t);\n\t\tif (replies.length === 0 || requestIds.size === 0) {\n\t\t\tfor (const entry of filterEmits) {\n\t\t\t\tif (entry.requestId === undefined) continue;\n\t\t\t\tentry.filter.boundary.emit(\n\t\t\t\t\tnativeHost,\n\t\t\t\t\tbindingEmitOptions(nativeHost, entry.filter, entry.requestId),\n\t\t\t\t);\n\t\t\t}\n\t\t\tconst filter = handleFilters[0]?.filter;\n\t\t\tconst lowered = lowerCaughtException(exception, nativeHost, {\n\t\t\t\tissueResponse: filter?.issueResponse ?? this.opts.issueResponse,\n\t\t\t\tprotocolError: filter?.protocolError ?? this.opts.protocolError,\n\t\t\t});\n\t\t\treturn writeHttpResponse(host, lowered);\n\t\t}\n\t\tconst pending: FilterReplyState[] = [];\n\t\ttry {\n\t\t\tfor (const requestId of requestIds) {\n\t\t\t\tfor (const reply of replies) {\n\t\t\t\t\tconst state: FilterReplyState = { status: \"pending\", reply };\n\t\t\t\t\tpending.push(state);\n\t\t\t\t\tcleanups.push(\n\t\t\t\t\t\tthis.replyBoundary(reply).attach({\n\t\t\t\t\t\t\trequestId,\n\t\t\t\t\t\t\tbindingId: reply.bindingId,\n\t\t\t\t\t\t\thandle: {\n\t\t\t\t\t\t\t\tresolve(payload) {\n\t\t\t\t\t\t\t\t\tstate.status = \"resolved\";\n\t\t\t\t\t\t\t\t\tstate.payload = payload;\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\treject(error) {\n\t\t\t\t\t\t\t\t\tstate.status = \"rejected\";\n\t\t\t\t\t\t\t\t\tstate.error = error;\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t}),\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t\temitFilters();\n\t\t\tconst resolved = pending.find((state) => state.status === \"resolved\");\n\t\t\tif (resolved !== undefined) {\n\t\t\t\treturn writeHttpResponse(\n\t\t\t\t\thost,\n\t\t\t\t\tlowerHttpReplyPayload(resolved.payload, nativeHost, {\n\t\t\t\t\t\tissueResponse:\n\t\t\t\t\t\t\tresolved.reply.issueResponse ??\n\t\t\t\t\t\t\thandleFilters[0]?.filter.issueResponse ??\n\t\t\t\t\t\t\tthis.opts.issueResponse,\n\t\t\t\t\t}),\n\t\t\t\t);\n\t\t\t}\n\t\t\tconst rejected = pending.find((state) => state.status === \"rejected\");\n\t\t\tif (rejected !== undefined) {\n\t\t\t\treturn writeHttpResponse(\n\t\t\t\t\thost,\n\t\t\t\t\tlowerProtocolError(rejected.error, nativeHost, {\n\t\t\t\t\t\tprotocolError:\n\t\t\t\t\t\t\trejected.reply.protocolError ??\n\t\t\t\t\t\t\thandleFilters[0]?.filter.protocolError ??\n\t\t\t\t\t\t\tthis.opts.protocolError,\n\t\t\t\t\t}),\n\t\t\t\t);\n\t\t\t}\n\t\t\tconst filter = handleFilters[0]?.filter;\n\t\t\treturn writeHttpResponse(\n\t\t\t\thost,\n\t\t\t\tlowerCaughtException(exception, nativeHost, {\n\t\t\t\t\tissueResponse: filter?.issueResponse ?? this.opts.issueResponse,\n\t\t\t\t\tprotocolError: filter?.protocolError ?? this.opts.protocolError,\n\t\t\t\t}),\n\t\t\t);\n\t\t} finally {\n\t\t\tfor (const cleanup of cleanups) cleanup();\n\t\t}\n\t}\n\n\tonModuleDestroy(): void {\n\t\tfor (const boundary of this.disposableReplies) boundary.dispose();\n\t\tthis.disposableReplies.clear();\n\t}\n\n\tprivate replyBoundary(\n\t\tbinding: NestHttpReplyBindingMeta,\n\t): ReturnType<typeof toNestHttp<NestHttpReplyPayloadUnknown>> {\n\t\tconst node = binding.replyNode as object;\n\t\tlet byBinding = this.replies.get(node);\n\t\tif (byBinding === undefined) {\n\t\t\tbyBinding = new Map();\n\t\t\tthis.replies.set(node, byBinding);\n\t\t}\n\t\tconst existing = byBinding.get(binding.bindingId);\n\t\tif (existing !== undefined) return existing;\n\t\tconst boundary = toNestHttp(binding.replyNode as NodeReplyPayload, {\n\t\t\tbindingId: binding.bindingId,\n\t\t\tdiagnosticBoundary: this.opts.diagnosticBoundary,\n\t\t\tdiagnosticPhase: \"filter\",\n\t\t});\n\t\tbyBinding.set(binding.bindingId, boundary);\n\t\tthis.disposableReplies.add(boundary);\n\t\treturn boundary;\n\t}\n}\n\nclass GraphCronControllerImpl implements GraphCronController {\n\tprivate readonly targets: Array<{\n\t\treadonly target: GraphCronProviderTarget;\n\t\treadonly schedule: CronSchedule;\n\t\treadonly fired: Set<string>;\n\t}>;\n\n\tconstructor(opts: GraphCronControllerOptions) {\n\t\tthis.targets = opts.targets.map((target) => ({\n\t\t\ttarget,\n\t\t\tschedule: parseCron(target.expr),\n\t\t\tfired: new Set<string>(),\n\t\t}));\n\t}\n\n\tcheck(now: Date): void {\n\t\tfor (const entry of this.targets) {\n\t\t\temitCronTarget(entry.target, entry.schedule, entry.fired, now);\n\t\t}\n\t}\n}\n\nclass GraphCronSchedulerBridge implements OnModuleInit, OnModuleDestroy {\n\tprivate readonly timers: Array<ReturnType<typeof setInterval>> = [];\n\n\tconstructor(private readonly opts: GraphCronSchedulerProviderOptions) {}\n\n\tonModuleInit(): void {\n\t\ttry {\n\t\t\tfor (const target of this.opts.targets) this.startTarget(target);\n\t\t} catch (error) {\n\t\t\tthis.onModuleDestroy();\n\t\t\tthrow error;\n\t\t}\n\t}\n\n\tonModuleDestroy(): void {\n\t\tfor (const timer of this.timers.splice(0)) clearInterval(timer);\n\t}\n\n\tprivate startTarget(target: GraphCronProviderTarget): void {\n\t\tconst tickMs = target.tickMs ?? 60_000;\n\t\tif (!Number.isFinite(tickMs) || tickMs <= 0) {\n\t\t\tthrow new RangeError(\"provideGraphCronScheduler: tickMs must be a positive finite number\");\n\t\t}\n\t\tconst controller = createGraphCronController({ targets: [target] });\n\t\tconst check = () => controller.check(new Date());\n\t\tcheck();\n\t\tthis.timers.push(setInterval(check, tickMs));\n\t}\n}\n\nclass GraphLifecycleHooksBridge implements OnModuleInit, OnModuleDestroy {\n\tconstructor(private readonly opts: GraphLifecycleHooksProviderOptions) {}\n\n\tonModuleInit(): void {\n\t\tthis.emit(\"module-init\");\n\t}\n\n\tonModuleDestroy(): void {\n\t\tthis.emit(\"module-destroy\");\n\t}\n\n\tprivate emit(event: \"module-init\" | \"module-destroy\"): void {\n\t\tfor (const target of this.opts.targets) {\n\t\t\tif (target.event !== undefined && target.event !== event) continue;\n\t\t\tconst host = target.host?.(event) ?? { event };\n\t\t\tfor (const binding of lifecycleBindings(target)) {\n\t\t\t\tbinding.boundary.emit(host, bindingEmitOptions(host, binding, undefined));\n\t\t\t}\n\t\t}\n\t}\n}\n\ntype NestHttpReplyPayloadUnknown = unknown;\ntype NodeReplyPayload = Parameters<typeof toNestHttp<NestHttpReplyPayloadUnknown>>[0];\ntype NestGuardDecisionBindingMeta = Extract<NestBoundaryBindingMeta, { kind: \"guard-decision\" }>;\ninterface GuardDecisionState {\n\tstatus: \"pending\" | \"resolved\" | \"rejected\";\n\tbinding: NestGuardDecisionBindingMeta;\n\tpayload?: GraphGuardDecision;\n\terror?: unknown;\n}\n\ninterface FilterReplyState {\n\tstatus: \"pending\" | \"resolved\" | \"rejected\";\n\treply: NestHttpReplyBindingMeta;\n\tpayload?: NestHttpReplyPayloadUnknown;\n\terror?: unknown;\n}\n\nfunction methodKeyForContext(context: ExecutionContext): string | symbol {\n\tconst resolved = resolveNestMethodKey(\n\t\tcontext.getClass(),\n\t\tcontext.getHandler() as DecoratorBoundMethod,\n\t);\n\treturn resolved ?? context.getHandler().name;\n}\n\nfunction defaultHttpHost(context: ExecutionContext): unknown {\n\tconst request = context.switchToHttp?.().getRequest?.();\n\treturn request ?? {};\n}\n\nfunction defaultArgumentsHost(host: ArgumentsHost, exception: unknown): unknown {\n\tconst request = host.switchToHttp?.().getRequest?.();\n\tif (request !== undefined && request !== null) return { ...request, exception };\n\treturn { exception };\n}\n\nfunction isObservableLike(value: unknown): value is Observable<unknown> {\n\treturn (\n\t\tvalue !== null &&\n\t\ttypeof value === \"object\" &&\n\t\ttypeof (value as { subscribe?: unknown }).subscribe === \"function\"\n\t);\n}\n\nfunction isGuardIngress(binding: NestBoundaryBindingMeta): binding is NestIngressBindingMeta {\n\treturn binding.direction === \"ingress\" && binding.kind === \"guard\";\n}\n\nfunction isErrorIngress(binding: NestBoundaryBindingMeta): binding is NestIngressBindingMeta {\n\treturn binding.direction === \"ingress\" && binding.kind === \"error\";\n}\n\nfunction isHttpReply(binding: NestBoundaryBindingMeta): binding is NestHttpReplyBindingMeta {\n\treturn binding.direction === \"egress\" && binding.kind === \"http\";\n}\n\nfunction isGuardDecision(\n\tbinding: NestBoundaryBindingMeta,\n): binding is NestGuardDecisionBindingMeta {\n\treturn binding.direction === \"egress\" && binding.kind === \"guard-decision\";\n}\n\nfunction firstHttpReply(context: ExecutionContext): NestHttpReplyBindingMeta | undefined {\n\treturn getNestBoundaryBindings(context.getClass(), methodKeyForContext(context)).find(\n\t\tisHttpReply,\n\t);\n}\n\nfunction lifecycleBindings(\n\ttarget: GraphLifecycleProviderTarget,\n): readonly NestIngressBindingMeta[] {\n\treturn getNestBoundaryBindings(target.target, target.methodKey).filter(\n\t\t(binding): binding is NestIngressBindingMeta =>\n\t\t\tbinding.direction === \"ingress\" && binding.kind === \"lifecycle\",\n\t);\n}\n\nfunction cronBindings(target: GraphCronProviderTarget): readonly NestIngressBindingMeta[] {\n\treturn getNestBoundaryBindings(target.target, target.methodKey).filter(\n\t\t(binding): binding is NestIngressBindingMeta =>\n\t\t\tbinding.direction === \"ingress\" && binding.kind === \"cron\",\n\t);\n}\n\nfunction emitCronTarget(\n\ttarget: GraphCronProviderTarget,\n\tschedule: CronSchedule,\n\tfired: Set<string>,\n\tnow: Date,\n): void {\n\tif (!matchesCron(schedule, now, { timezone: target.timezone })) return;\n\tconst key = cronProviderMinuteKey(now, target.timezone);\n\tfor (const existing of fired) {\n\t\tif (!existing.startsWith(`${key.dayKey}:`)) fired.delete(existing);\n\t}\n\tif (fired.has(key.minuteKey)) return;\n\tfired.add(key.minuteKey);\n\tconst host =\n\t\ttarget.host?.(now) ??\n\t\t({\n\t\t\tiso: now.toISOString(),\n\t\t\ttimestamp_ms: now.getTime(),\n\t\t\ttimestamp_ns: (BigInt(now.getTime()) * 1_000_000n).toString(),\n\t\t\ttimezone: target.timezone,\n\t\t} satisfies Record<string, unknown>);\n\tfor (const binding of cronBindings(target)) {\n\t\tbinding.boundary.emit(host, bindingEmitOptions(host, binding, undefined));\n\t}\n}\n\nfunction cronProviderMinuteKey(\n\tdate: Date,\n\ttimezone?: string,\n): { readonly dayKey: string; readonly minuteKey: string } {\n\tif (timezone === undefined) {\n\t\tconst dayKey = `${date.getFullYear()}-${date.getMonth() + 1}-${date.getDate()}`;\n\t\treturn { dayKey, minuteKey: `${dayKey}:${date.getHours()}:${date.getMinutes()}` };\n\t}\n\tconst parts = new Intl.DateTimeFormat(\"en-US-u-ca-gregory-nu-latn\", {\n\t\ttimeZone: timezone,\n\t\tyear: \"numeric\",\n\t\tmonth: \"2-digit\",\n\t\tday: \"2-digit\",\n\t\thour: \"2-digit\",\n\t\tminute: \"2-digit\",\n\t\thourCycle: \"h23\",\n\t}).formatToParts(date);\n\tconst byType = new Map(parts.map((part) => [part.type, part.value]));\n\tconst dayKey = `${byType.get(\"year\")}-${byType.get(\"month\")}-${byType.get(\"day\")}`;\n\treturn { dayKey, minuteKey: `${dayKey}:${byType.get(\"hour\")}:${byType.get(\"minute\")}` };\n}\n\nfunction lowerCaughtException<THost>(\n\texception: unknown,\n\thost: THost,\n\topts: {\n\t\treadonly issueResponse?: NestIssueResponse<THost>;\n\t\treadonly protocolError?: NestProtocolErrorResponse<THost>;\n\t},\n): ReturnType<typeof lowerHttpReplyPayload> {\n\tif (isDataIssue(exception)) return lowerHttpReplyPayload(exception, host, opts);\n\treturn (opts.protocolError ?? protocolError)(exception, host);\n}\n\nfunction guardDecisionResponse<THost>(\n\tdecision: Extract<GraphGuardDecision, { readonly kind: \"deny\" }>,\n\thost: THost,\n\topts: { readonly issueResponse?: NestIssueResponse<THost> },\n): NestHttpResponsePayload {\n\tif (decision.issue !== undefined) return lowerHttpReplyPayload(decision.issue, host, opts);\n\tif (Number.isInteger(decision.status)) {\n\t\treturn {\n\t\t\tstatus: decision.status as number,\n\t\t\tbody: decision.body ?? {\n\t\t\t\tcode: \"graphrefly.guard_denied\",\n\t\t\t\tmessage: decision.reason ?? \"GraphReFly guard denied request\",\n\t\t\t},\n\t\t\theaders: decision.headers,\n\t\t};\n\t}\n\treturn {\n\t\tstatus: 403,\n\t\tbody: {\n\t\t\tcode: \"graphrefly.guard_denied\",\n\t\t\tmessage: decision.reason ?? \"GraphReFly guard denied request\",\n\t\t},\n\t\theaders: decision.headers,\n\t};\n}\n\nexport class GraphGuardDeniedException extends HttpException {\n\treadonly payload: NestHttpResponsePayload;\n\n\tconstructor(payload: NestHttpResponsePayload) {\n\t\tsuper(payload.body ?? {}, payload.status);\n\t\tthis.payload = payload;\n\t}\n}\n\nclass GraphGuardProtocolErrorException extends HttpException {\n\tconstructor(payload: NestHttpResponsePayload) {\n\t\tsuper(payload.body ?? {}, payload.status);\n\t}\n}\n\nexport function isGraphGuardDeniedException(value: unknown): value is GraphGuardDeniedException {\n\treturn value instanceof GraphGuardDeniedException;\n}\n\nexport class GraphGuardDeniedFilter implements ExceptionFilter {\n\tcatch(exception: unknown, host: ArgumentsHost): unknown {\n\t\tif (!isGraphGuardDeniedException(exception)) throw exception;\n\t\treturn writeHttpResponse(host, exception.payload);\n\t}\n}\n\nCatch(GraphGuardDeniedException)(GraphGuardDeniedFilter);\n\nfunction writeHttpResponse(\n\thost: ArgumentsHost,\n\tpayload: ReturnType<typeof lowerHttpReplyPayload>,\n): unknown {\n\tconst response = host.switchToHttp?.().getResponse?.() as\n\t\t| {\n\t\t\t\tstatus?: (status: number) => unknown;\n\t\t\t\tjson?: (body: unknown) => unknown;\n\t\t\t\tsend?: (body?: unknown) => unknown;\n\t\t\t\tsetHeader?: (name: string, value: string) => void;\n\t\t\t\theader?: (name: string, value: string) => void;\n\t\t }\n\t\t| undefined;\n\tif (response === undefined) return payload;\n\tfor (const [name, value] of Object.entries(payload.headers ?? {})) {\n\t\tif (typeof response.setHeader === \"function\") response.setHeader(name, value);\n\t\telse response.header?.(name, value);\n\t}\n\tresponse.status?.(payload.status);\n\tif (typeof response.json === \"function\") return response.json(payload.body ?? {});\n\tif (typeof response.send === \"function\") return response.send(payload.body);\n\treturn payload;\n}\n"],"mappings":"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","names":["dayKey"]}
|