@dxos/functions 0.8.4-main.a4bbb77 → 0.8.4-main.ae835ea

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.
Files changed (142) hide show
  1. package/dist/lib/browser/bundler/index.mjs +16 -25
  2. package/dist/lib/browser/bundler/index.mjs.map +3 -3
  3. package/dist/lib/browser/chunk-M6EXIREF.mjs +610 -0
  4. package/dist/lib/browser/chunk-M6EXIREF.mjs.map +7 -0
  5. package/dist/lib/browser/index.mjs +957 -977
  6. package/dist/lib/browser/index.mjs.map +4 -4
  7. package/dist/lib/browser/meta.json +1 -1
  8. package/dist/lib/browser/testing/index.mjs +8 -6
  9. package/dist/lib/browser/testing/index.mjs.map +3 -3
  10. package/dist/lib/node-esm/bundler/index.mjs +16 -25
  11. package/dist/lib/node-esm/bundler/index.mjs.map +3 -3
  12. package/dist/lib/node-esm/chunk-P3IATZMZ.mjs +612 -0
  13. package/dist/lib/node-esm/chunk-P3IATZMZ.mjs.map +7 -0
  14. package/dist/lib/node-esm/index.mjs +957 -977
  15. package/dist/lib/node-esm/index.mjs.map +4 -4
  16. package/dist/lib/node-esm/meta.json +1 -1
  17. package/dist/lib/node-esm/testing/index.mjs +8 -6
  18. package/dist/lib/node-esm/testing/index.mjs.map +3 -3
  19. package/dist/types/src/bundler/bundler.d.ts.map +1 -1
  20. package/dist/types/src/e2e/deploy.test.d.ts +2 -0
  21. package/dist/types/src/e2e/deploy.test.d.ts.map +1 -0
  22. package/dist/types/src/example/fib.d.ts.map +1 -0
  23. package/dist/types/src/example/forex-effect.d.ts +3 -0
  24. package/dist/types/src/example/forex-effect.d.ts.map +1 -0
  25. package/dist/types/src/example/index.d.ts +12 -0
  26. package/dist/types/src/example/index.d.ts.map +1 -0
  27. package/dist/types/src/example/reply.d.ts.map +1 -0
  28. package/dist/types/src/example/sleep.d.ts.map +1 -0
  29. package/dist/types/src/executor/executor.d.ts.map +1 -1
  30. package/dist/types/src/handler.d.ts +20 -24
  31. package/dist/types/src/handler.d.ts.map +1 -1
  32. package/dist/types/src/index.d.ts +4 -5
  33. package/dist/types/src/index.d.ts.map +1 -1
  34. package/dist/types/src/services/credentials.d.ts +6 -2
  35. package/dist/types/src/services/credentials.d.ts.map +1 -1
  36. package/dist/types/src/services/database.d.ts +6 -2
  37. package/dist/types/src/services/database.d.ts.map +1 -1
  38. package/dist/types/src/services/event-logger.d.ts +4 -1
  39. package/dist/types/src/services/event-logger.d.ts.map +1 -1
  40. package/dist/types/src/services/function-invocation-service.d.ts +5 -3
  41. package/dist/types/src/services/function-invocation-service.d.ts.map +1 -1
  42. package/dist/types/src/services/local-function-execution.d.ts +5 -3
  43. package/dist/types/src/services/local-function-execution.d.ts.map +1 -1
  44. package/dist/types/src/services/queues.d.ts +3 -1
  45. package/dist/types/src/services/queues.d.ts.map +1 -1
  46. package/dist/types/src/services/remote-function-execution-service.d.ts +3 -1
  47. package/dist/types/src/services/remote-function-execution-service.d.ts.map +1 -1
  48. package/dist/types/src/services/service-container.d.ts +2 -1
  49. package/dist/types/src/services/service-container.d.ts.map +1 -1
  50. package/dist/types/src/services/service-registry.d.ts +3 -1
  51. package/dist/types/src/services/service-registry.d.ts.map +1 -1
  52. package/dist/types/src/services/tracing.d.ts +4 -2
  53. package/dist/types/src/services/tracing.d.ts.map +1 -1
  54. package/dist/types/src/testing/layer.d.ts +3 -2
  55. package/dist/types/src/testing/layer.d.ts.map +1 -1
  56. package/dist/types/src/testing/logger.d.ts +1 -1
  57. package/dist/types/src/testing/logger.d.ts.map +1 -1
  58. package/dist/types/src/testing/services.d.ts +1 -1
  59. package/dist/types/src/testing/services.d.ts.map +1 -1
  60. package/dist/types/src/trace.d.ts +4 -4
  61. package/dist/types/src/trace.d.ts.map +1 -1
  62. package/dist/types/src/translations.d.ts +2 -2
  63. package/dist/types/src/translations.d.ts.map +1 -1
  64. package/dist/types/src/triggers/input-builder.d.ts +2 -2
  65. package/dist/types/src/triggers/input-builder.d.ts.map +1 -1
  66. package/dist/types/src/triggers/invocation-tracer.d.ts +5 -3
  67. package/dist/types/src/triggers/invocation-tracer.d.ts.map +1 -1
  68. package/dist/types/src/triggers/trigger-dispatcher.d.ts +10 -6
  69. package/dist/types/src/triggers/trigger-dispatcher.d.ts.map +1 -1
  70. package/dist/types/src/triggers/trigger-state-store.d.ts +5 -4
  71. package/dist/types/src/triggers/trigger-state-store.d.ts.map +1 -1
  72. package/dist/types/src/types/Function.d.ts +47 -0
  73. package/dist/types/src/types/Function.d.ts.map +1 -0
  74. package/dist/types/src/types/Script.d.ts +28 -0
  75. package/dist/types/src/types/Script.d.ts.map +1 -0
  76. package/dist/types/src/types/Trigger.d.ts +139 -0
  77. package/dist/types/src/types/Trigger.d.ts.map +1 -0
  78. package/dist/types/src/types/TriggerEvent.d.ts +44 -0
  79. package/dist/types/src/types/TriggerEvent.d.ts.map +1 -0
  80. package/dist/types/src/types/index.d.ts +5 -0
  81. package/dist/types/src/types/index.d.ts.map +1 -0
  82. package/dist/types/src/url.d.ts +1 -1
  83. package/dist/types/src/url.d.ts.map +1 -1
  84. package/dist/types/tsconfig.tsbuildinfo +1 -1
  85. package/package.json +24 -36
  86. package/src/bundler/bundler.ts +7 -3
  87. package/src/e2e/deploy.test.ts +69 -0
  88. package/src/{examples → example}/fib.ts +2 -1
  89. package/src/example/forex-effect.ts +40 -0
  90. package/src/example/index.ts +13 -0
  91. package/src/{examples → example}/reply.ts +3 -1
  92. package/src/{examples → example}/sleep.ts +2 -1
  93. package/src/executor/executor.ts +2 -1
  94. package/src/handler.ts +23 -19
  95. package/src/index.ts +4 -5
  96. package/src/services/credentials.ts +7 -2
  97. package/src/services/database.ts +6 -2
  98. package/src/services/event-logger.ts +4 -1
  99. package/src/services/function-invocation-service.test.ts +3 -1
  100. package/src/services/function-invocation-service.ts +5 -3
  101. package/src/services/local-function-execution.ts +10 -7
  102. package/src/services/queues.ts +3 -1
  103. package/src/services/remote-function-execution-service.ts +3 -1
  104. package/src/services/service-container.ts +2 -1
  105. package/src/services/service-registry.test.ts +4 -1
  106. package/src/services/service-registry.ts +7 -3
  107. package/src/services/tracing.ts +4 -2
  108. package/src/testing/layer.ts +6 -4
  109. package/src/testing/logger.ts +2 -1
  110. package/src/testing/persist-database.test.ts +1 -1
  111. package/src/testing/services.ts +1 -1
  112. package/src/trace.ts +5 -5
  113. package/src/translations.ts +2 -2
  114. package/src/triggers/input-builder.ts +2 -2
  115. package/src/triggers/invocation-tracer.ts +5 -3
  116. package/src/triggers/trigger-dispatcher.test.ts +57 -44
  117. package/src/triggers/trigger-dispatcher.ts +26 -27
  118. package/src/triggers/trigger-state-store.ts +6 -5
  119. package/src/{schema.ts → types/Function.ts} +9 -26
  120. package/src/types/Script.ts +33 -0
  121. package/src/types/Trigger.ts +139 -0
  122. package/src/types/TriggerEvent.ts +62 -0
  123. package/src/types/index.ts +8 -0
  124. package/src/url.ts +1 -1
  125. package/dist/lib/browser/chunk-C2Z7LCJ2.mjs +0 -649
  126. package/dist/lib/browser/chunk-C2Z7LCJ2.mjs.map +0 -7
  127. package/dist/lib/node-esm/chunk-AH3AZM2U.mjs +0 -651
  128. package/dist/lib/node-esm/chunk-AH3AZM2U.mjs.map +0 -7
  129. package/dist/types/src/examples/fib.d.ts.map +0 -1
  130. package/dist/types/src/examples/index.d.ts +0 -4
  131. package/dist/types/src/examples/index.d.ts.map +0 -1
  132. package/dist/types/src/examples/reply.d.ts.map +0 -1
  133. package/dist/types/src/examples/sleep.d.ts.map +0 -1
  134. package/dist/types/src/schema.d.ts +0 -43
  135. package/dist/types/src/schema.d.ts.map +0 -1
  136. package/dist/types/src/types.d.ts +0 -221
  137. package/dist/types/src/types.d.ts.map +0 -1
  138. package/src/examples/index.ts +0 -7
  139. package/src/types.ts +0 -214
  140. /package/dist/types/src/{examples → example}/fib.d.ts +0 -0
  141. /package/dist/types/src/{examples → example}/reply.d.ts +0 -0
  142. /package/dist/types/src/{examples → example}/sleep.d.ts +0 -0
@@ -1 +1 @@
1
- {"inputs":{"src/bundler/bundler.ts":{"bytes":33439,"imports":[{"path":"@effect/platform","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"esbuild-wasm","kind":"import-statement","external":true},{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"@dxos/effect","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"src/bundler/index.ts":{"bytes":457,"imports":[{"path":"src/bundler/bundler.ts","kind":"import-statement","original":"./bundler"}],"format":"esm"},"src/edge/functions.ts":{"bytes":6996,"imports":[{"path":"@dxos/client/edge","kind":"import-statement","external":true},{"path":"@dxos/edge-client","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"src/edge/index.ts":{"bytes":864,"imports":[{"path":"src/edge/functions.ts","kind":"import-statement","original":"./functions"}],"format":"esm"},"src/errors.ts":{"bytes":3093,"imports":[{"path":"@dxos/errors","kind":"import-statement","external":true}],"format":"esm"},"src/schema.ts":{"bytes":6542,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"format":"esm"},"src/url.ts":{"bytes":5797,"imports":[],"format":"esm"},"src/handler.ts":{"bytes":17916,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"src/schema.ts","kind":"import-statement","original":"./schema"},{"path":"src/url.ts","kind":"import-statement","original":"./url"}],"format":"esm"},"src/types.ts":{"bytes":21118,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"src/schema.ts","kind":"import-statement","original":"./schema"}],"format":"esm"},"src/trace.ts":{"bytes":16919,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"src/types.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"src/services/database.ts":{"bytes":16506,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/effect","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true}],"format":"esm"},"src/services/credentials.ts":{"bytes":15127,"imports":[{"path":"@effect/platform","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"src/services/database.ts","kind":"import-statement","original":"./database"}],"format":"esm"},"src/services/tracing.ts":{"bytes":12709,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"format":"esm"},"src/services/event-logger.ts":{"bytes":12016,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"src/services/tracing.ts","kind":"import-statement","original":"./tracing"}],"format":"esm"},"src/services/queues.ts":{"bytes":6886,"imports":[{"path":"effect","kind":"import-statement","external":true}],"format":"esm"},"src/services/remote-function-execution-service.ts":{"bytes":7486,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"src/errors.ts","kind":"import-statement","original":"../errors"},{"path":"src/url.ts","kind":"import-statement","original":"../url"}],"format":"esm"},"src/services/local-function-execution.ts":{"bytes":18843,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"src/errors.ts","kind":"import-statement","original":"../errors"},{"path":"src/services/credentials.ts","kind":"import-statement","original":"./credentials"},{"path":"src/services/database.ts","kind":"import-statement","original":"./database"},{"path":"src/services/queues.ts","kind":"import-statement","original":"./queues"},{"path":"src/services/remote-function-execution-service.ts","kind":"import-statement","original":"./remote-function-execution-service"}],"format":"esm"},"src/services/function-invocation-service.ts":{"bytes":9377,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"src/services/credentials.ts","kind":"import-statement","original":"./credentials"},{"path":"src/services/database.ts","kind":"import-statement","original":"./database"},{"path":"src/services/local-function-execution.ts","kind":"import-statement","original":"./local-function-execution"},{"path":"src/services/queues.ts","kind":"import-statement","original":"./queues"},{"path":"src/services/remote-function-execution-service.ts","kind":"import-statement","original":"./remote-function-execution-service"}],"format":"esm"},"src/services/service-container.ts":{"bytes":12560,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"src/services/credentials.ts","kind":"import-statement","original":"./credentials"},{"path":"src/services/database.ts","kind":"import-statement","original":"./database"},{"path":"src/services/event-logger.ts","kind":"import-statement","original":"./event-logger"},{"path":"src/services/queues.ts","kind":"import-statement","original":"./queues"},{"path":"src/services/remote-function-execution-service.ts","kind":"import-statement","original":"./remote-function-execution-service"},{"path":"src/services/tracing.ts","kind":"import-statement","original":"./tracing"}],"format":"esm"},"src/services/index.ts":{"bytes":1352,"imports":[{"path":"src/services/credentials.ts","kind":"import-statement","original":"./credentials"},{"path":"src/services/database.ts","kind":"import-statement","original":"./database"},{"path":"src/services/event-logger.ts","kind":"import-statement","original":"./event-logger"},{"path":"src/services/function-invocation-service.ts","kind":"import-statement","original":"./function-invocation-service"},{"path":"src/services/local-function-execution.ts","kind":"import-statement","original":"./local-function-execution"},{"path":"src/services/queues.ts","kind":"import-statement","original":"./queues"},{"path":"src/services/service-container.ts","kind":"import-statement","original":"./service-container"},{"path":"src/services/tracing.ts","kind":"import-statement","original":"./tracing"},{"path":"src/services/remote-function-execution-service.ts","kind":"import-statement","original":"./remote-function-execution-service"}],"format":"esm"},"src/triggers/invocation-tracer.ts":{"bytes":11680,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"src/services/index.ts","kind":"import-statement","original":"../services"},{"path":"src/trace.ts","kind":"import-statement","original":"../trace"}],"format":"esm"},"src/triggers/input-builder.ts":{"bytes":3617,"imports":[],"format":"esm"},"src/triggers/trigger-state-store.ts":{"bytes":7894,"imports":[{"path":"@effect/platform","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"src/errors.ts","kind":"import-statement","original":"../errors"}],"format":"esm"},"src/triggers/trigger-dispatcher.ts":{"bytes":59004,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/effect","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"src/handler.ts","kind":"import-statement","original":"../handler"},{"path":"src/schema.ts","kind":"import-statement","original":"../schema"},{"path":"src/services/index.ts","kind":"import-statement","original":"../services"},{"path":"src/types.ts","kind":"import-statement","original":"../types"},{"path":"src/triggers/input-builder.ts","kind":"import-statement","original":"./input-builder"},{"path":"src/triggers/invocation-tracer.ts","kind":"import-statement","original":"./invocation-tracer"},{"path":"src/triggers/trigger-state-store.ts","kind":"import-statement","original":"./trigger-state-store"},{"path":"src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"src/triggers/index.ts":{"bytes":713,"imports":[{"path":"src/triggers/invocation-tracer.ts","kind":"import-statement","original":"./invocation-tracer"},{"path":"src/triggers/trigger-dispatcher.ts","kind":"import-statement","original":"./trigger-dispatcher"},{"path":"src/triggers/trigger-state-store.ts","kind":"import-statement","original":"./trigger-state-store"}],"format":"esm"},"src/executor/executor.ts":{"bytes":5828,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/effect","kind":"import-statement","external":true}],"format":"esm"},"src/executor/index.ts":{"bytes":459,"imports":[{"path":"src/executor/executor.ts","kind":"import-statement","original":"./executor"}],"format":"esm"},"src/examples/fib.ts":{"bytes":3145,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"src/handler.ts","kind":"import-statement","original":"../handler"}],"format":"esm"},"src/examples/reply.ts":{"bytes":1938,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"src/handler.ts","kind":"import-statement","original":"../handler"}],"format":"esm"},"src/examples/sleep.ts":{"bytes":2477,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"src/handler.ts","kind":"import-statement","original":"../handler"}],"format":"esm"},"src/examples/index.ts":{"bytes":847,"imports":[{"path":"src/examples/fib.ts","kind":"import-statement","original":"./fib"},{"path":"src/examples/reply.ts","kind":"import-statement","original":"./reply"},{"path":"src/examples/sleep.ts","kind":"import-statement","original":"./sleep"}],"format":"esm"},"src/index.ts":{"bytes":1302,"imports":[{"path":"src/errors.ts","kind":"import-statement","original":"./errors"},{"path":"src/handler.ts","kind":"import-statement","original":"./handler"},{"path":"src/schema.ts","kind":"import-statement","original":"./schema"},{"path":"src/trace.ts","kind":"import-statement","original":"./trace"},{"path":"src/types.ts","kind":"import-statement","original":"./types"},{"path":"src/url.ts","kind":"import-statement","original":"./url"},{"path":"src/triggers/index.ts","kind":"import-statement","original":"./triggers"},{"path":"src/services/index.ts","kind":"import-statement","original":"./services"},{"path":"src/executor/index.ts","kind":"import-statement","original":"./executor"},{"path":"src/examples/index.ts","kind":"import-statement","original":"./examples"}],"format":"esm"},"src/testing/logger.ts":{"bytes":1635,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"src/services/index.ts","kind":"import-statement","original":"../services"}],"format":"esm"},"src/testing/services.ts":{"bytes":6645,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"src/services/index.ts","kind":"import-statement","original":"../services"},{"path":"src/testing/logger.ts","kind":"import-statement","original":"./logger"}],"format":"esm"},"src/testing/layer.ts":{"bytes":13832,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo-db/testing","kind":"import-statement","external":true},{"path":"@dxos/effect","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/kv-store/testing","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"src/services/index.ts","kind":"import-statement","original":"../services"}],"format":"esm"},"src/testing/index.ts":{"bytes":539,"imports":[{"path":"src/testing/services.ts","kind":"import-statement","original":"./services"},{"path":"src/testing/layer.ts","kind":"import-statement","original":"./layer"}],"format":"esm"}},"outputs":{"dist/lib/browser/bundler/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":16005},"dist/lib/browser/bundler/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-J5LGTIGS.mjs","kind":"import-statement"},{"path":"@effect/platform","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"esbuild-wasm","kind":"import-statement","external":true},{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"@dxos/effect","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"exports":["Bundler","initializeBundler"],"entryPoint":"src/bundler/index.ts","inputs":{"src/bundler/bundler.ts":{"bytesInOutput":8084},"src/bundler/index.ts":{"bytesInOutput":0}},"bytes":8221},"dist/lib/browser/edge/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":3513},"dist/lib/browser/edge/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-J5LGTIGS.mjs","kind":"import-statement"},{"path":"@dxos/client/edge","kind":"import-statement","external":true},{"path":"@dxos/edge-client","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"exports":["incrementSemverPatch","publicKeyToDid","uploadWorkerFunction"],"entryPoint":"src/edge/index.ts","inputs":{"src/edge/functions.ts":{"bytesInOutput":1853},"src/edge/index.ts":{"bytesInOutput":0}},"bytes":2023},"dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":94250},"dist/lib/browser/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-C2Z7LCJ2.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-J5LGTIGS.mjs","kind":"import-statement"},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/effect","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@effect/platform","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/effect","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true}],"exports":["ComputeEvent","ComputeEventLogger","ComputeEventPayload","ConfiguredCredentialsService","ContextQueueService","CredentialsService","DatabaseService","EmailTriggerOutput","FUNCTIONS_META_KEY","FUNCTIONS_PRESET_META_KEY","FUNCTION_TYPES","FunctionDefinition","FunctionError","FunctionExecutor","FunctionImplementationResolver","FunctionInvocationService","FunctionManifestSchema","FunctionNotFoundError","FunctionTrigger","FunctionType","InvocationOutcome","InvocationTraceEndEvent","InvocationTraceEventType","InvocationTraceStartEvent","InvocationTracer","LocalFunctionExecutionService","MESSAGE_PROPERTY_TOOL_CALL_ID","QueueService","QueueTriggerOutput","RemoteFunctionExecutionService","SERVICE_TAGS","ScriptType","ServiceContainer","ServiceNotAvailableError","SubscriptionTriggerOutput","TimerTriggerOutput","TraceEvent","TraceEventException","TraceEventLog","TracingService","TriggerDispatcher","TriggerKinds","TriggerSchema","TriggerState","TriggerStateNotFoundError","TriggerStateStore","WebhookTriggerOutput","createDefectLogger","createEventLogger","createInvocationSpans","defineFunction","deserializeFunction","exampleFunctions","getInvocationUrl","getUserFunctionIdInMetadata","logCustomEvent","serializeFunction","setUserFunctionIdInMetadata","withAuthorization"],"entryPoint":"src/index.ts","inputs":{"src/index.ts":{"bytesInOutput":0},"src/handler.ts":{"bytesInOutput":2998},"src/schema.ts":{"bytesInOutput":1634},"src/trace.ts":{"bytesInOutput":4278},"src/types.ts":{"bytesInOutput":4543},"src/triggers/invocation-tracer.ts":{"bytesInOutput":2734},"src/services/function-invocation-service.ts":{"bytesInOutput":1906},"src/services/local-function-execution.ts":{"bytesInOutput":4302},"src/triggers/trigger-dispatcher.ts":{"bytesInOutput":14154},"src/triggers/input-builder.ts":{"bytesInOutput":770},"src/triggers/trigger-state-store.ts":{"bytesInOutput":2066},"src/executor/executor.ts":{"bytesInOutput":1375},"src/examples/index.ts":{"bytesInOutput":145},"src/examples/fib.ts":{"bytesInOutput":687},"src/examples/reply.ts":{"bytesInOutput":393},"src/examples/sleep.ts":{"bytesInOutput":537}},"bytes":45228},"dist/lib/browser/testing/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":11755},"dist/lib/browser/testing/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-C2Z7LCJ2.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-J5LGTIGS.mjs","kind":"import-statement"},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo-db/testing","kind":"import-statement","external":true},{"path":"@dxos/effect","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/kv-store/testing","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"exports":["TestDatabaseLayer","createTestServices","testStoragePath"],"entryPoint":"src/testing/index.ts","inputs":{"src/testing/services.ts":{"bytesInOutput":904},"src/testing/logger.ts":{"bytesInOutput":201},"src/testing/index.ts":{"bytesInOutput":0},"src/testing/layer.ts":{"bytesInOutput":2891}},"bytes":4391},"dist/lib/browser/chunk-C2Z7LCJ2.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":47942},"dist/lib/browser/chunk-C2Z7LCJ2.mjs":{"imports":[{"path":"@dxos/errors","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/effect","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@effect/platform","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"exports":["ComputeEvent","ComputeEventLogger","ComputeEventPayload","ConfiguredCredentialsService","ContextQueueService","CredentialsService","DatabaseService","FUNCTIONS_META_KEY","FUNCTIONS_PRESET_META_KEY","FunctionError","FunctionNotFoundError","MESSAGE_PROPERTY_TOOL_CALL_ID","QueueService","RemoteFunctionExecutionService","SERVICE_TAGS","ServiceContainer","ServiceNotAvailableError","TracingService","TriggerStateNotFoundError","createDefectLogger","createEventLogger","getInvocationUrl","getUserFunctionIdInMetadata","logCustomEvent","setUserFunctionIdInMetadata","withAuthorization"],"inputs":{"src/errors.ts":{"bytesInOutput":744},"src/url.ts":{"bytesInOutput":1077},"src/services/database.ts":{"bytesInOutput":3422},"src/services/credentials.ts":{"bytesInOutput":3586},"src/services/tracing.ts":{"bytesInOutput":2960},"src/services/event-logger.ts":{"bytesInOutput":3046},"src/services/queues.ts":{"bytesInOutput":1543},"src/services/remote-function-execution-service.ts":{"bytesInOutput":1937},"src/services/service-container.ts":{"bytesInOutput":2779}},"bytes":22031},"dist/lib/browser/chunk-J5LGTIGS.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/browser/chunk-J5LGTIGS.mjs":{"imports":[],"exports":["__export"],"inputs":{},"bytes":235}}}
1
+ {"inputs":{"src/bundler/bundler.ts":{"bytes":33602,"imports":[{"path":"@effect/platform/FetchHttpClient","kind":"import-statement","external":true},{"path":"@effect/platform/HttpClient","kind":"import-statement","external":true},{"path":"effect/Duration","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Function","kind":"import-statement","external":true},{"path":"effect/Schedule","kind":"import-statement","external":true},{"path":"esbuild-wasm","kind":"import-statement","external":true},{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"@dxos/effect","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"src/bundler/index.ts":{"bytes":457,"imports":[{"path":"src/bundler/bundler.ts","kind":"import-statement","original":"./bundler"}],"format":"esm"},"src/edge/functions.ts":{"bytes":6996,"imports":[{"path":"@dxos/client/edge","kind":"import-statement","external":true},{"path":"@dxos/edge-client","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"src/edge/index.ts":{"bytes":864,"imports":[{"path":"src/edge/functions.ts","kind":"import-statement","original":"./functions"}],"format":"esm"},"src/errors.ts":{"bytes":3093,"imports":[{"path":"@dxos/errors","kind":"import-statement","external":true}],"format":"esm"},"src/types/Script.ts":{"bytes":3979,"imports":[{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"format":"esm"},"src/types/Function.ts":{"bytes":5121,"imports":[{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"src/types/Script.ts","kind":"import-statement","original":"./Script"}],"format":"esm"},"src/types/Trigger.ts":{"bytes":14603,"imports":[{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"effect/SchemaAST","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true}],"format":"esm"},"src/types/TriggerEvent.ts":{"bytes":5563,"imports":[{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true}],"format":"esm"},"src/types/index.ts":{"bytes":986,"imports":[{"path":"src/types/Function.ts","kind":"import-statement","original":"./Function"},{"path":"src/types/Script.ts","kind":"import-statement","original":"./Script"},{"path":"src/types/Trigger.ts","kind":"import-statement","original":"./Trigger"},{"path":"src/types/TriggerEvent.ts","kind":"import-statement","original":"./TriggerEvent"}],"format":"esm"},"src/url.ts":{"bytes":5801,"imports":[],"format":"esm"},"src/handler.ts":{"bytes":18152,"imports":[{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"src/types/index.ts","kind":"import-statement","original":"./types"},{"path":"src/url.ts","kind":"import-statement","original":"./url"}],"format":"esm"},"src/example/fib.ts":{"bytes":3255,"imports":[{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"src/handler.ts","kind":"import-statement","original":"../handler"}],"format":"esm"},"src/example/reply.ts":{"bytes":2144,"imports":[{"path":"effect/Console","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"src/handler.ts","kind":"import-statement","original":"../handler"}],"format":"esm"},"src/example/sleep.ts":{"bytes":2587,"imports":[{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"src/handler.ts","kind":"import-statement","original":"../handler"}],"format":"esm"},"src/example/index.ts":{"bytes":1301,"imports":[{"path":"src/example/fib.ts","kind":"import-statement","original":"./fib"},{"path":"src/example/reply.ts","kind":"import-statement","original":"./reply"},{"path":"src/example/sleep.ts","kind":"import-statement","original":"./sleep"}],"format":"esm"},"src/executor/executor.ts":{"bytes":5580,"imports":[{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/effect","kind":"import-statement","external":true}],"format":"esm"},"src/executor/index.ts":{"bytes":459,"imports":[{"path":"src/executor/executor.ts","kind":"import-statement","original":"./executor"}],"format":"esm"},"src/services/database.ts":{"bytes":16197,"imports":[{"path":"effect/Context","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Layer","kind":"import-statement","external":true},{"path":"effect/Option","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/effect","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true}],"format":"esm"},"src/services/credentials.ts":{"bytes":15206,"imports":[{"path":"@effect/platform/HttpClient","kind":"import-statement","external":true},{"path":"@effect/platform/HttpClientRequest","kind":"import-statement","external":true},{"path":"effect/Context","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Layer","kind":"import-statement","external":true},{"path":"effect/Redacted","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"src/services/database.ts","kind":"import-statement","original":"./database"}],"format":"esm"},"src/services/tracing.ts":{"bytes":12471,"imports":[{"path":"effect/Context","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Layer","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"format":"esm"},"src/services/event-logger.ts":{"bytes":11913,"imports":[{"path":"effect/Context","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Layer","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"src/services/tracing.ts","kind":"import-statement","original":"./tracing"}],"format":"esm"},"src/services/queues.ts":{"bytes":6500,"imports":[{"path":"effect/Context","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Layer","kind":"import-statement","external":true}],"format":"esm"},"src/services/remote-function-execution-service.ts":{"bytes":7226,"imports":[{"path":"effect/Context","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Layer","kind":"import-statement","external":true},{"path":"src/errors.ts","kind":"import-statement","original":"../errors"},{"path":"src/url.ts","kind":"import-statement","original":"../url"}],"format":"esm"},"src/services/local-function-execution.ts":{"bytes":18674,"imports":[{"path":"effect/Context","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Layer","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"src/errors.ts","kind":"import-statement","original":"../errors"},{"path":"src/services/credentials.ts","kind":"import-statement","original":"./credentials"},{"path":"src/services/database.ts","kind":"import-statement","original":"./database"},{"path":"src/services/queues.ts","kind":"import-statement","original":"./queues"},{"path":"src/services/remote-function-execution-service.ts","kind":"import-statement","original":"./remote-function-execution-service"}],"format":"esm"},"src/services/function-invocation-service.ts":{"bytes":9129,"imports":[{"path":"effect/Context","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Layer","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"src/services/credentials.ts","kind":"import-statement","original":"./credentials"},{"path":"src/services/database.ts","kind":"import-statement","original":"./database"},{"path":"src/services/local-function-execution.ts","kind":"import-statement","original":"./local-function-execution"},{"path":"src/services/queues.ts","kind":"import-statement","original":"./queues"},{"path":"src/services/remote-function-execution-service.ts","kind":"import-statement","original":"./remote-function-execution-service"}],"format":"esm"},"src/services/service-container.ts":{"bytes":12222,"imports":[{"path":"effect/Layer","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"src/services/credentials.ts","kind":"import-statement","original":"./credentials"},{"path":"src/services/database.ts","kind":"import-statement","original":"./database"},{"path":"src/services/event-logger.ts","kind":"import-statement","original":"./event-logger"},{"path":"src/services/queues.ts","kind":"import-statement","original":"./queues"},{"path":"src/services/remote-function-execution-service.ts","kind":"import-statement","original":"./remote-function-execution-service"},{"path":"src/services/tracing.ts","kind":"import-statement","original":"./tracing"}],"format":"esm"},"src/services/index.ts":{"bytes":1352,"imports":[{"path":"src/services/credentials.ts","kind":"import-statement","original":"./credentials"},{"path":"src/services/database.ts","kind":"import-statement","original":"./database"},{"path":"src/services/event-logger.ts","kind":"import-statement","original":"./event-logger"},{"path":"src/services/function-invocation-service.ts","kind":"import-statement","original":"./function-invocation-service"},{"path":"src/services/local-function-execution.ts","kind":"import-statement","original":"./local-function-execution"},{"path":"src/services/queues.ts","kind":"import-statement","original":"./queues"},{"path":"src/services/service-container.ts","kind":"import-statement","original":"./service-container"},{"path":"src/services/tracing.ts","kind":"import-statement","original":"./tracing"},{"path":"src/services/remote-function-execution-service.ts","kind":"import-statement","original":"./remote-function-execution-service"}],"format":"esm"},"src/trace.ts":{"bytes":16925,"imports":[{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"src/types/index.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"src/triggers/invocation-tracer.ts":{"bytes":11644,"imports":[{"path":"effect/Context","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Layer","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"src/services/index.ts","kind":"import-statement","original":"../services"},{"path":"src/trace.ts","kind":"import-statement","original":"../trace"}],"format":"esm"},"src/triggers/input-builder.ts":{"bytes":3621,"imports":[],"format":"esm"},"src/triggers/trigger-state-store.ts":{"bytes":7628,"imports":[{"path":"@effect/platform/KeyValueStore","kind":"import-statement","external":true},{"path":"effect/Context","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Layer","kind":"import-statement","external":true},{"path":"effect/Option","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"src/errors.ts","kind":"import-statement","original":"../errors"}],"format":"esm"},"src/triggers/trigger-dispatcher.ts":{"bytes":57232,"imports":[{"path":"effect/Cause","kind":"import-statement","external":true},{"path":"effect/Context","kind":"import-statement","external":true},{"path":"effect/Cron","kind":"import-statement","external":true},{"path":"effect/Duration","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Either","kind":"import-statement","external":true},{"path":"effect/Exit","kind":"import-statement","external":true},{"path":"effect/Fiber","kind":"import-statement","external":true},{"path":"effect/Layer","kind":"import-statement","external":true},{"path":"effect/Option","kind":"import-statement","external":true},{"path":"effect/Record","kind":"import-statement","external":true},{"path":"effect/Schedule","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/effect","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"src/handler.ts","kind":"import-statement","original":"../handler"},{"path":"src/services/index.ts","kind":"import-statement","original":"../services"},{"path":"src/types/index.ts","kind":"import-statement","original":"../types"},{"path":"src/triggers/input-builder.ts","kind":"import-statement","original":"./input-builder"},{"path":"src/triggers/invocation-tracer.ts","kind":"import-statement","original":"./invocation-tracer"},{"path":"src/triggers/trigger-state-store.ts","kind":"import-statement","original":"./trigger-state-store"}],"format":"esm"},"src/triggers/index.ts":{"bytes":713,"imports":[{"path":"src/triggers/invocation-tracer.ts","kind":"import-statement","original":"./invocation-tracer"},{"path":"src/triggers/trigger-dispatcher.ts","kind":"import-statement","original":"./trigger-dispatcher"},{"path":"src/triggers/trigger-state-store.ts","kind":"import-statement","original":"./trigger-state-store"}],"format":"esm"},"src/index.ts":{"bytes":1119,"imports":[{"path":"src/errors.ts","kind":"import-statement","original":"./errors"},{"path":"src/example/index.ts","kind":"import-statement","original":"./example"},{"path":"src/executor/index.ts","kind":"import-statement","original":"./executor"},{"path":"src/handler.ts","kind":"import-statement","original":"./handler"},{"path":"src/services/index.ts","kind":"import-statement","original":"./services"},{"path":"src/trace.ts","kind":"import-statement","original":"./trace"},{"path":"src/triggers/index.ts","kind":"import-statement","original":"./triggers"},{"path":"src/types/index.ts","kind":"import-statement","original":"./types"},{"path":"src/url.ts","kind":"import-statement","original":"./url"}],"format":"esm"},"src/testing/logger.ts":{"bytes":1695,"imports":[{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"src/services/index.ts","kind":"import-statement","original":"../services"}],"format":"esm"},"src/testing/services.ts":{"bytes":6657,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"src/services/index.ts","kind":"import-statement","original":"../services"},{"path":"src/testing/logger.ts","kind":"import-statement","original":"./logger"}],"format":"esm"},"src/testing/layer.ts":{"bytes":14046,"imports":[{"path":"effect/Context","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Layer","kind":"import-statement","external":true},{"path":"@dxos/echo-db/testing","kind":"import-statement","external":true},{"path":"@dxos/effect","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/kv-store/testing","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"src/services/index.ts","kind":"import-statement","original":"../services"}],"format":"esm"},"src/testing/index.ts":{"bytes":539,"imports":[{"path":"src/testing/services.ts","kind":"import-statement","original":"./services"},{"path":"src/testing/layer.ts","kind":"import-statement","original":"./layer"}],"format":"esm"}},"outputs":{"dist/lib/browser/bundler/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":16163},"dist/lib/browser/bundler/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-J5LGTIGS.mjs","kind":"import-statement"},{"path":"@effect/platform/FetchHttpClient","kind":"import-statement","external":true},{"path":"@effect/platform/HttpClient","kind":"import-statement","external":true},{"path":"effect/Duration","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Function","kind":"import-statement","external":true},{"path":"effect/Schedule","kind":"import-statement","external":true},{"path":"esbuild-wasm","kind":"import-statement","external":true},{"path":"@dxos/crypto","kind":"import-statement","external":true},{"path":"@dxos/effect","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"exports":["Bundler","initializeBundler"],"entryPoint":"src/bundler/index.ts","inputs":{"src/bundler/bundler.ts":{"bytesInOutput":7975},"src/bundler/index.ts":{"bytesInOutput":0}},"bytes":8112},"dist/lib/browser/edge/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":3513},"dist/lib/browser/edge/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-J5LGTIGS.mjs","kind":"import-statement"},{"path":"@dxos/client/edge","kind":"import-statement","external":true},{"path":"@dxos/edge-client","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"exports":["incrementSemverPatch","publicKeyToDid","uploadWorkerFunction"],"entryPoint":"src/edge/index.ts","inputs":{"src/edge/functions.ts":{"bytesInOutput":1853},"src/edge/index.ts":{"bytesInOutput":0}},"bytes":2023},"dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93569},"dist/lib/browser/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-M6EXIREF.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-J5LGTIGS.mjs","kind":"import-statement"},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"effect/SchemaAST","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"effect/Console","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/effect","kind":"import-statement","external":true},{"path":"effect/Context","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Layer","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"effect/Context","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Layer","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/echo-db","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"effect/Context","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Layer","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"effect/Cause","kind":"import-statement","external":true},{"path":"effect/Context","kind":"import-statement","external":true},{"path":"effect/Cron","kind":"import-statement","external":true},{"path":"effect/Duration","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Either","kind":"import-statement","external":true},{"path":"effect/Exit","kind":"import-statement","external":true},{"path":"effect/Fiber","kind":"import-statement","external":true},{"path":"effect/Layer","kind":"import-statement","external":true},{"path":"effect/Option","kind":"import-statement","external":true},{"path":"effect/Record","kind":"import-statement","external":true},{"path":"effect/Schedule","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/effect","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"@effect/platform/KeyValueStore","kind":"import-statement","external":true},{"path":"effect/Context","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Layer","kind":"import-statement","external":true},{"path":"effect/Option","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true}],"exports":["ComputeEvent","ComputeEventLogger","ComputeEventPayload","ConfiguredCredentialsService","ContextQueueService","CredentialsService","DatabaseService","Example","FUNCTIONS_META_KEY","FUNCTIONS_PRESET_META_KEY","Function","FunctionDefinition","FunctionError","FunctionExecutor","FunctionImplementationResolver","FunctionInvocationService","FunctionNotFoundError","InvocationOutcome","InvocationTraceEndEvent","InvocationTraceEventType","InvocationTraceStartEvent","InvocationTracer","LocalFunctionExecutionService","MESSAGE_PROPERTY_TOOL_CALL_ID","QueueService","RemoteFunctionExecutionService","SERVICE_TAGS","Script","ServiceContainer","ServiceNotAvailableError","TraceEvent","TraceEventException","TraceEventLog","TracingService","Trigger","TriggerDispatcher","TriggerEvent","TriggerState","TriggerStateNotFoundError","TriggerStateStore","createDefectLogger","createEventLogger","createInvocationSpans","defineFunction","deserializeFunction","getInvocationUrl","getUserFunctionIdInMetadata","logCustomEvent","serializeFunction","setUserFunctionIdInMetadata","withAuthorization"],"entryPoint":"src/index.ts","inputs":{"src/index.ts":{"bytesInOutput":0},"src/example/fib.ts":{"bytesInOutput":708},"src/handler.ts":{"bytesInOutput":3055},"src/types/Function.ts":{"bytesInOutput":1407},"src/types/Script.ts":{"bytesInOutput":913},"src/types/index.ts":{"bytesInOutput":0},"src/types/Trigger.ts":{"bytesInOutput":3602},"src/types/TriggerEvent.ts":{"bytesInOutput":1314},"src/example/reply.ts":{"bytesInOutput":448},"src/example/sleep.ts":{"bytesInOutput":550},"src/example/index.ts":{"bytesInOutput":164},"src/executor/executor.ts":{"bytesInOutput":1110},"src/services/function-invocation-service.ts":{"bytesInOutput":1856},"src/services/local-function-execution.ts":{"bytesInOutput":4052},"src/trace.ts":{"bytesInOutput":4328},"src/triggers/invocation-tracer.ts":{"bytesInOutput":2558},"src/triggers/trigger-dispatcher.ts":{"bytesInOutput":13120},"src/triggers/input-builder.ts":{"bytesInOutput":770},"src/triggers/trigger-state-store.ts":{"bytesInOutput":1765}},"bytes":44342},"dist/lib/browser/testing/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":11761},"dist/lib/browser/testing/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-M6EXIREF.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-J5LGTIGS.mjs","kind":"import-statement"},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"effect/Context","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Layer","kind":"import-statement","external":true},{"path":"@dxos/echo-db/testing","kind":"import-statement","external":true},{"path":"@dxos/effect","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/kv-store/testing","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"exports":["TestDatabaseLayer","createTestServices","testStoragePath"],"entryPoint":"src/testing/index.ts","inputs":{"src/testing/services.ts":{"bytesInOutput":904},"src/testing/logger.ts":{"bytesInOutput":209},"src/testing/index.ts":{"bytesInOutput":0},"src/testing/layer.ts":{"bytesInOutput":2955}},"bytes":4463},"dist/lib/browser/chunk-M6EXIREF.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":46990},"dist/lib/browser/chunk-M6EXIREF.mjs":{"imports":[{"path":"@dxos/errors","kind":"import-statement","external":true},{"path":"effect/Context","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Layer","kind":"import-statement","external":true},{"path":"effect/Option","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/effect","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@effect/platform/HttpClient","kind":"import-statement","external":true},{"path":"@effect/platform/HttpClientRequest","kind":"import-statement","external":true},{"path":"effect/Context","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Layer","kind":"import-statement","external":true},{"path":"effect/Redacted","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"effect/Context","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Layer","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"effect/Context","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Layer","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"effect/Context","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Layer","kind":"import-statement","external":true},{"path":"effect/Context","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"effect/Layer","kind":"import-statement","external":true},{"path":"effect/Layer","kind":"import-statement","external":true},{"path":"@dxos/ai","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"exports":["ComputeEvent","ComputeEventLogger","ComputeEventPayload","ConfiguredCredentialsService","ContextQueueService","CredentialsService","DatabaseService","FUNCTIONS_META_KEY","FUNCTIONS_PRESET_META_KEY","FunctionError","FunctionNotFoundError","MESSAGE_PROPERTY_TOOL_CALL_ID","QueueService","RemoteFunctionExecutionService","SERVICE_TAGS","ServiceContainer","ServiceNotAvailableError","TracingService","TriggerStateNotFoundError","createDefectLogger","createEventLogger","getInvocationUrl","getUserFunctionIdInMetadata","logCustomEvent","setUserFunctionIdInMetadata","withAuthorization"],"inputs":{"src/errors.ts":{"bytesInOutput":744},"src/url.ts":{"bytesInOutput":1077},"src/services/database.ts":{"bytesInOutput":3611},"src/services/credentials.ts":{"bytesInOutput":3354},"src/services/tracing.ts":{"bytesInOutput":2769},"src/services/event-logger.ts":{"bytesInOutput":2891},"src/services/queues.ts":{"bytesInOutput":1233},"src/services/remote-function-execution-service.ts":{"bytesInOutput":1619},"src/services/service-container.ts":{"bytesInOutput":2474}},"bytes":20709},"dist/lib/browser/chunk-J5LGTIGS.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/browser/chunk-J5LGTIGS.mjs":{"imports":[],"exports":["__export"],"inputs":{},"bytes":235}}}
@@ -4,14 +4,14 @@ import {
4
4
  QueueService,
5
5
  ServiceContainer,
6
6
  createEventLogger
7
- } from "../chunk-C2Z7LCJ2.mjs";
7
+ } from "../chunk-M6EXIREF.mjs";
8
8
  import "../chunk-J5LGTIGS.mjs";
9
9
 
10
10
  // src/testing/services.ts
11
11
  import { assertArgument } from "@dxos/invariant";
12
12
 
13
13
  // src/testing/logger.ts
14
- import { Effect } from "effect";
14
+ import * as Effect from "effect/Effect";
15
15
  import { LogLevel } from "@dxos/log";
16
16
  var noopLogger = {
17
17
  log: () => Effect.succeed(void 0),
@@ -41,14 +41,16 @@ var createCredentialsService = (credentials) => {
41
41
  };
42
42
 
43
43
  // src/testing/layer.ts
44
- import { Context, Effect as Effect2, Layer } from "effect";
44
+ import * as Context from "effect/Context";
45
+ import * as Effect2 from "effect/Effect";
46
+ import * as Layer from "effect/Layer";
45
47
  import { EchoTestBuilder } from "@dxos/echo-db/testing";
46
- import { accuireReleaseResource } from "@dxos/effect";
48
+ import { acquireReleaseResource } from "@dxos/effect";
47
49
  import { PublicKey } from "@dxos/keys";
48
50
  import { createTestLevel } from "@dxos/kv-store/testing";
49
51
  import { log } from "@dxos/log";
50
52
  var __dxlog_file = "/__w/dxos/dxos/packages/core/functions/src/testing/layer.ts";
51
- var testBuilder = accuireReleaseResource(() => new EchoTestBuilder());
53
+ var testBuilder = acquireReleaseResource(() => new EchoTestBuilder());
52
54
  var testStoragePath = ({ name = PublicKey.random().toHex() }) => {
53
55
  return `/tmp/dxos-${name}`;
54
56
  };
@@ -84,7 +86,7 @@ var TestDatabaseLayer = ({ indexing, types, spaceKey, storagePath, onInit } = {}
84
86
  testMetadata
85
87
  }, {
86
88
  F: __dxlog_file,
87
- L: 61,
89
+ L: 63,
88
90
  S: this,
89
91
  C: (f, a) => f(...a)
90
92
  });
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/testing/services.ts", "../../../../src/testing/logger.ts", "../../../../src/testing/layer.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { type Context } from 'effect';\n\nimport type { Space } from '@dxos/client/echo';\nimport type { EchoDatabase, QueueFactory } from '@dxos/echo-db';\nimport { assertArgument } from '@dxos/invariant';\n\nimport {\n type ComputeEventLogger,\n ConfiguredCredentialsService,\n type CredentialsService,\n DatabaseService,\n QueueService,\n ServiceContainer,\n type ServiceCredential,\n type TracingService,\n} from '../services';\n\nimport { consoleLogger, noopLogger } from './logger';\n\n// TODO(burdon): Factor out.\nexport type OneOf<T> = {\n [K in keyof T]: { [P in K]: T[P] } & { [P in Exclude<keyof T, K>]?: never };\n}[keyof T];\n\nexport type AiServiceProvider = 'dev' | 'edge' | 'ollama' | 'lmstudio';\n\nexport type TestServiceOptions = {\n /**\n * AI service configuration.\n */\n ai?: any;\n\n /**\n * Credentials service configuration.\n */\n credentials?: OneOf<{\n /**\n * Predefined credentials list.\n */\n services?: ServiceCredential[];\n\n /**\n * Custom credentials service.\n */\n service?: Context.Tag.Service<CredentialsService>;\n }>;\n\n /**\n * Database configuration.\n */\n db?: EchoDatabase;\n\n /**\n * Gets database and queue services from the space.\n * Exclusive with: `db`, `queues`\n */\n space?: Space;\n\n /**\n * Logging configuration.\n */\n logging?: {\n enabled?: boolean;\n logger?: Context.Tag.Service<ComputeEventLogger>;\n };\n\n /**\n * Queue service configuration.\n */\n queues?: QueueFactory;\n\n tracing?: {\n service?: Context.Tag.Service<TracingService>;\n };\n};\n\n/**\n * @deprecated\n */\nexport const createTestServices = ({\n ai,\n credentials,\n db,\n logging,\n queues,\n space,\n tracing,\n}: TestServiceOptions = {}): ServiceContainer => {\n assertArgument(!(!!space && (!!db || !!queues)), 'space', 'space can be provided only if db and queues are not');\n\n return new ServiceContainer().setServices({\n // ai: createAiService(ai),\n credentials: createCredentialsService(credentials),\n database: space || db ? DatabaseService.make(space?.db || db!) : undefined,\n eventLogger: (logging?.logger ?? logging?.enabled) ? consoleLogger : noopLogger,\n queues: space || queues ? QueueService.make(space?.queues || queues!, undefined) : undefined,\n tracing: tracing?.service,\n });\n};\n\nconst createCredentialsService = (\n credentials: TestServiceOptions['credentials'] | undefined,\n): Context.Tag.Service<CredentialsService> | undefined => {\n if (credentials?.services) {\n return new ConfiguredCredentialsService(credentials.services);\n }\n\n if (credentials?.service) {\n return credentials.service;\n }\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { type Context, Effect } from 'effect';\n\nimport { LogLevel } from '@dxos/log';\n\nimport { type ComputeEventLogger, createEventLogger } from '../services';\n\nexport const noopLogger: Context.Tag.Service<ComputeEventLogger> = {\n log: () => Effect.succeed(undefined),\n nodeId: undefined,\n};\n\nexport const consoleLogger: Context.Tag.Service<ComputeEventLogger> = createEventLogger(LogLevel.INFO);\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport type { Schema } from 'effect';\nimport { Context, Effect, Layer } from 'effect';\n\nimport type { EchoDatabaseImpl, QueueFactory } from '@dxos/echo-db';\nimport { EchoTestBuilder } from '@dxos/echo-db/testing';\nimport type { EchoHostIndexingConfig } from '@dxos/echo-pipeline';\nimport { accuireReleaseResource } from '@dxos/effect';\nimport { PublicKey } from '@dxos/keys';\nimport type { LevelDB } from '@dxos/kv-store';\nimport { createTestLevel } from '@dxos/kv-store/testing';\nimport { log } from '@dxos/log';\n\nimport { DatabaseService, QueueService } from '../services';\n\nconst testBuilder = accuireReleaseResource(() => new EchoTestBuilder());\n\nexport const testStoragePath = ({ name = PublicKey.random().toHex() }: { name?: string }) => {\n return `/tmp/dxos-${name}`;\n};\n\nexport type TestDatabaseOptions = {\n indexing?: Partial<EchoHostIndexingConfig>;\n types?: Schema.Schema.AnyNoContext[];\n spaceKey?: PublicKey;\n storagePath?: string;\n onInit?: () => Effect.Effect<void, never, DatabaseService | QueueService>;\n};\n\nexport const TestDatabaseLayer = ({ indexing, types, spaceKey, storagePath, onInit }: TestDatabaseOptions = {}) =>\n Layer.scopedContext(\n Effect.gen(function* () {\n const builder = yield* testBuilder;\n\n let kv: LevelDB | undefined;\n if (storagePath) {\n kv = createTestLevel(storagePath);\n yield* Effect.promise(() => kv!.open());\n // const keyCount = yield* Effect.promise(async () => (await kv!.iterator({ values: false }).all()).length);\n // log.info('opened test db', { storagePath, keyCount });\n }\n const peer = yield* Effect.promise(() => builder.createPeer({ indexing, types, kv }));\n\n let db: EchoDatabaseImpl | undefined;\n let queues: QueueFactory | undefined;\n\n if (storagePath) {\n const testMetadata = yield* Effect.promise(async () => {\n try {\n return await kv!.get('test-metadata', { valueEncoding: 'json' });\n } catch (e) {\n if ((e as any).code === 'LEVEL_NOT_FOUND') {\n return undefined;\n }\n throw e;\n }\n });\n log('starting persistant test db', { storagePath, testMetadata });\n if (!testMetadata) {\n const key = spaceKey ?? PublicKey.random();\n db = yield* Effect.promise(() => peer.createDatabase(key));\n queues = peer.client.constructQueueFactory(db.spaceId);\n\n yield* Effect.promise(() =>\n kv!.put('test-metadata', { key: key.toHex(), rootUrl: db!.rootUrl }, { valueEncoding: 'json' }),\n );\n\n if (onInit) {\n yield* onInit().pipe(\n Effect.provideService(DatabaseService, DatabaseService.make(db)),\n Effect.provideService(QueueService, QueueService.make(queues, undefined)),\n );\n }\n } else {\n const key = PublicKey.from((testMetadata as any).key);\n const rootUrl = (testMetadata as any).rootUrl;\n db = yield* Effect.promise(() => peer.openDatabase(key, rootUrl));\n queues = peer.client.constructQueueFactory(db.spaceId);\n }\n } else {\n db = yield* Effect.promise(() => peer.createDatabase(spaceKey));\n queues = peer.client.constructQueueFactory(db.spaceId);\n if (onInit) {\n yield* onInit().pipe(\n Effect.provideService(DatabaseService, DatabaseService.make(db)),\n Effect.provideService(QueueService, QueueService.make(queues, undefined)),\n );\n }\n }\n\n yield* Effect.addFinalizer(() =>\n Effect.promise(async () => {\n if (kv) {\n // {\n // const keyCount = (await kv.iterator({ values: false }).all()).length;\n // log.info('closing persistant test db', { storagePath, keyCount });\n // }\n\n await kv.close();\n }\n }),\n );\n\n return Context.mergeAll(\n Context.make(DatabaseService, DatabaseService.make(db)),\n Context.make(QueueService, QueueService.make(queues, undefined)),\n );\n }),\n );\n"],
5
- "mappings": ";;;;;;;;;;AAQA,SAASA,sBAAsB;;;ACJ/B,SAAuBC,cAAc;AAErC,SAASC,gBAAgB;AAIlB,IAAMC,aAAsD;EACjEC,KAAK,MAAMC,OAAOC,QAAQC,MAAAA;EAC1BC,QAAQD;AACV;AAEO,IAAME,gBAAyDC,kBAAkBC,SAASC,IAAI;;;ADoE9F,IAAMC,qBAAqB,CAAC,EACjCC,IACAC,aACAC,IACAC,SACAC,QACAC,OACAC,QAAO,IACe,CAAC,MAAC;AACxBC,iBAAe,EAAE,CAAC,CAACF,UAAU,CAAC,CAACH,MAAM,CAAC,CAACE,UAAU,SAAS,qDAAA;AAE1D,SAAO,IAAII,iBAAAA,EAAmBC,YAAY;;IAExCR,aAAaS,yBAAyBT,WAAAA;IACtCU,UAAUN,SAASH,KAAKU,gBAAgBC,KAAKR,OAAOH,MAAMA,EAAAA,IAAOY;IACjEC,aAAcZ,SAASa,UAAUb,SAASc,UAAWC,gBAAgBC;IACrEf,QAAQC,SAASD,SAASgB,aAAaP,KAAKR,OAAOD,UAAUA,QAASU,MAAAA,IAAaA;IACnFR,SAASA,SAASe;EACpB,CAAA;AACF;AAEA,IAAMX,2BAA2B,CAC/BT,gBAAAA;AAEA,MAAIA,aAAaqB,UAAU;AACzB,WAAO,IAAIC,6BAA6BtB,YAAYqB,QAAQ;EAC9D;AAEA,MAAIrB,aAAaoB,SAAS;AACxB,WAAOpB,YAAYoB;EACrB;AACF;;;AE7GA,SAASG,SAASC,UAAAA,SAAQC,aAAa;AAGvC,SAASC,uBAAuB;AAEhC,SAASC,8BAA8B;AACvC,SAASC,iBAAiB;AAE1B,SAASC,uBAAuB;AAChC,SAASC,WAAW;;AAIpB,IAAMC,cAAcC,uBAAuB,MAAM,IAAIC,gBAAAA,CAAAA;AAE9C,IAAMC,kBAAkB,CAAC,EAAEC,OAAOC,UAAUC,OAAM,EAAGC,MAAK,EAAE,MAAqB;AACtF,SAAO,aAAaH,IAAAA;AACtB;AAUO,IAAMI,oBAAoB,CAAC,EAAEC,UAAUC,OAAOC,UAAUC,aAAaC,OAAM,IAA0B,CAAC,MAC3GC,MAAMC,cACJC,QAAOC,IAAI,aAAA;AACT,QAAMC,UAAU,OAAOlB;AAEvB,MAAImB;AACJ,MAAIP,aAAa;AACfO,SAAKC,gBAAgBR,WAAAA;AACrB,WAAOI,QAAOK,QAAQ,MAAMF,GAAIG,KAAI,CAAA;EAGtC;AACA,QAAMC,OAAO,OAAOP,QAAOK,QAAQ,MAAMH,QAAQM,WAAW;IAAEf;IAAUC;IAAOS;EAAG,CAAA,CAAA;AAElF,MAAIM;AACJ,MAAIC;AAEJ,MAAId,aAAa;AACf,UAAMe,eAAe,OAAOX,QAAOK,QAAQ,YAAA;AACzC,UAAI;AACF,eAAO,MAAMF,GAAIS,IAAI,iBAAiB;UAAEC,eAAe;QAAO,CAAA;MAChE,SAASC,GAAG;AACV,YAAKA,EAAUC,SAAS,mBAAmB;AACzC,iBAAOC;QACT;AACA,cAAMF;MACR;IACF,CAAA;AACAG,QAAI,+BAA+B;MAAErB;MAAae;IAAa,GAAA;;;;;;AAC/D,QAAI,CAACA,cAAc;AACjB,YAAMO,MAAMvB,YAAYN,UAAUC,OAAM;AACxCmB,WAAK,OAAOT,QAAOK,QAAQ,MAAME,KAAKY,eAAeD,GAAAA,CAAAA;AACrDR,eAASH,KAAKa,OAAOC,sBAAsBZ,GAAGa,OAAO;AAErD,aAAOtB,QAAOK,QAAQ,MACpBF,GAAIoB,IAAI,iBAAiB;QAAEL,KAAKA,IAAI3B,MAAK;QAAIiC,SAASf,GAAIe;MAAQ,GAAG;QAAEX,eAAe;MAAO,CAAA,CAAA;AAG/F,UAAIhB,QAAQ;AACV,eAAOA,OAAAA,EAAS4B,KACdzB,QAAO0B,eAAeC,iBAAiBA,gBAAgBC,KAAKnB,EAAAA,CAAAA,GAC5DT,QAAO0B,eAAeG,cAAcA,aAAaD,KAAKlB,QAAQM,MAAAA,CAAAA,CAAAA;MAElE;IACF,OAAO;AACL,YAAME,MAAM7B,UAAUyC,KAAMnB,aAAqBO,GAAG;AACpD,YAAMM,UAAWb,aAAqBa;AACtCf,WAAK,OAAOT,QAAOK,QAAQ,MAAME,KAAKwB,aAAab,KAAKM,OAAAA,CAAAA;AACxDd,eAASH,KAAKa,OAAOC,sBAAsBZ,GAAGa,OAAO;IACvD;EACF,OAAO;AACLb,SAAK,OAAOT,QAAOK,QAAQ,MAAME,KAAKY,eAAexB,QAAAA,CAAAA;AACrDe,aAASH,KAAKa,OAAOC,sBAAsBZ,GAAGa,OAAO;AACrD,QAAIzB,QAAQ;AACV,aAAOA,OAAAA,EAAS4B,KACdzB,QAAO0B,eAAeC,iBAAiBA,gBAAgBC,KAAKnB,EAAAA,CAAAA,GAC5DT,QAAO0B,eAAeG,cAAcA,aAAaD,KAAKlB,QAAQM,MAAAA,CAAAA,CAAAA;IAElE;EACF;AAEA,SAAOhB,QAAOgC,aAAa,MACzBhC,QAAOK,QAAQ,YAAA;AACb,QAAIF,IAAI;AAMN,YAAMA,GAAG8B,MAAK;IAChB;EACF,CAAA,CAAA;AAGF,SAAOC,QAAQC,SACbD,QAAQN,KAAKD,iBAAiBA,gBAAgBC,KAAKnB,EAAAA,CAAAA,GACnDyB,QAAQN,KAAKC,cAAcA,aAAaD,KAAKlB,QAAQM,MAAAA,CAAAA,CAAAA;AAEzD,CAAA,CAAA;",
6
- "names": ["assertArgument", "Effect", "LogLevel", "noopLogger", "log", "Effect", "succeed", "undefined", "nodeId", "consoleLogger", "createEventLogger", "LogLevel", "INFO", "createTestServices", "ai", "credentials", "db", "logging", "queues", "space", "tracing", "assertArgument", "ServiceContainer", "setServices", "createCredentialsService", "database", "DatabaseService", "make", "undefined", "eventLogger", "logger", "enabled", "consoleLogger", "noopLogger", "QueueService", "service", "services", "ConfiguredCredentialsService", "Context", "Effect", "Layer", "EchoTestBuilder", "accuireReleaseResource", "PublicKey", "createTestLevel", "log", "testBuilder", "accuireReleaseResource", "EchoTestBuilder", "testStoragePath", "name", "PublicKey", "random", "toHex", "TestDatabaseLayer", "indexing", "types", "spaceKey", "storagePath", "onInit", "Layer", "scopedContext", "Effect", "gen", "builder", "kv", "createTestLevel", "promise", "open", "peer", "createPeer", "db", "queues", "testMetadata", "get", "valueEncoding", "e", "code", "undefined", "log", "key", "createDatabase", "client", "constructQueueFactory", "spaceId", "put", "rootUrl", "pipe", "provideService", "DatabaseService", "make", "QueueService", "from", "openDatabase", "addFinalizer", "close", "Context", "mergeAll"]
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport type * as Context from 'effect/Context';\n\nimport type { Space } from '@dxos/client/echo';\nimport type { EchoDatabase, QueueFactory } from '@dxos/echo-db';\nimport { assertArgument } from '@dxos/invariant';\n\nimport {\n type ComputeEventLogger,\n ConfiguredCredentialsService,\n type CredentialsService,\n DatabaseService,\n QueueService,\n ServiceContainer,\n type ServiceCredential,\n type TracingService,\n} from '../services';\n\nimport { consoleLogger, noopLogger } from './logger';\n\n// TODO(burdon): Factor out.\nexport type OneOf<T> = {\n [K in keyof T]: { [P in K]: T[P] } & { [P in Exclude<keyof T, K>]?: never };\n}[keyof T];\n\nexport type AiServiceProvider = 'dev' | 'edge' | 'ollama' | 'lmstudio';\n\nexport type TestServiceOptions = {\n /**\n * AI service configuration.\n */\n ai?: any;\n\n /**\n * Credentials service configuration.\n */\n credentials?: OneOf<{\n /**\n * Predefined credentials list.\n */\n services?: ServiceCredential[];\n\n /**\n * Custom credentials service.\n */\n service?: Context.Tag.Service<CredentialsService>;\n }>;\n\n /**\n * Database configuration.\n */\n db?: EchoDatabase;\n\n /**\n * Gets database and queue services from the space.\n * Exclusive with: `db`, `queues`\n */\n space?: Space;\n\n /**\n * Logging configuration.\n */\n logging?: {\n enabled?: boolean;\n logger?: Context.Tag.Service<ComputeEventLogger>;\n };\n\n /**\n * Queue service configuration.\n */\n queues?: QueueFactory;\n\n tracing?: {\n service?: Context.Tag.Service<TracingService>;\n };\n};\n\n/**\n * @deprecated\n */\nexport const createTestServices = ({\n ai,\n credentials,\n db,\n logging,\n queues,\n space,\n tracing,\n}: TestServiceOptions = {}): ServiceContainer => {\n assertArgument(!(!!space && (!!db || !!queues)), 'space', 'space can be provided only if db and queues are not');\n\n return new ServiceContainer().setServices({\n // ai: createAiService(ai),\n credentials: createCredentialsService(credentials),\n database: space || db ? DatabaseService.make(space?.db || db!) : undefined,\n eventLogger: (logging?.logger ?? logging?.enabled) ? consoleLogger : noopLogger,\n queues: space || queues ? QueueService.make(space?.queues || queues!, undefined) : undefined,\n tracing: tracing?.service,\n });\n};\n\nconst createCredentialsService = (\n credentials: TestServiceOptions['credentials'] | undefined,\n): Context.Tag.Service<CredentialsService> | undefined => {\n if (credentials?.services) {\n return new ConfiguredCredentialsService(credentials.services);\n }\n\n if (credentials?.service) {\n return credentials.service;\n }\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport type * as Context from 'effect/Context';\nimport * as Effect from 'effect/Effect';\n\nimport { LogLevel } from '@dxos/log';\n\nimport { type ComputeEventLogger, createEventLogger } from '../services';\n\nexport const noopLogger: Context.Tag.Service<ComputeEventLogger> = {\n log: () => Effect.succeed(undefined),\n nodeId: undefined,\n};\n\nexport const consoleLogger: Context.Tag.Service<ComputeEventLogger> = createEventLogger(LogLevel.INFO);\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Context from 'effect/Context';\nimport * as Effect from 'effect/Effect';\nimport * as Layer from 'effect/Layer';\nimport type * as Schema from 'effect/Schema';\n\nimport type { EchoDatabaseImpl, QueueFactory } from '@dxos/echo-db';\nimport { EchoTestBuilder } from '@dxos/echo-db/testing';\nimport type { EchoHostIndexingConfig } from '@dxos/echo-pipeline';\nimport { acquireReleaseResource } from '@dxos/effect';\nimport { PublicKey } from '@dxos/keys';\nimport type { LevelDB } from '@dxos/kv-store';\nimport { createTestLevel } from '@dxos/kv-store/testing';\nimport { log } from '@dxos/log';\n\nimport { DatabaseService, QueueService } from '../services';\n\nconst testBuilder = acquireReleaseResource(() => new EchoTestBuilder());\n\nexport const testStoragePath = ({ name = PublicKey.random().toHex() }: { name?: string }) => {\n return `/tmp/dxos-${name}`;\n};\n\nexport type TestDatabaseOptions = {\n indexing?: Partial<EchoHostIndexingConfig>;\n types?: Schema.Schema.AnyNoContext[];\n spaceKey?: PublicKey;\n storagePath?: string;\n onInit?: () => Effect.Effect<void, never, DatabaseService | QueueService>;\n};\n\nexport const TestDatabaseLayer = ({ indexing, types, spaceKey, storagePath, onInit }: TestDatabaseOptions = {}) =>\n Layer.scopedContext(\n Effect.gen(function* () {\n const builder = yield* testBuilder;\n\n let kv: LevelDB | undefined;\n if (storagePath) {\n kv = createTestLevel(storagePath);\n yield* Effect.promise(() => kv!.open());\n // const keyCount = yield* Effect.promise(async () => (await kv!.iterator({ values: false }).all()).length);\n // log.info('opened test db', { storagePath, keyCount });\n }\n const peer = yield* Effect.promise(() => builder.createPeer({ indexing, types, kv }));\n\n let db: EchoDatabaseImpl | undefined;\n let queues: QueueFactory | undefined;\n\n if (storagePath) {\n const testMetadata = yield* Effect.promise(async () => {\n try {\n return await kv!.get('test-metadata', { valueEncoding: 'json' });\n } catch (e) {\n if ((e as any).code === 'LEVEL_NOT_FOUND') {\n return undefined;\n }\n throw e;\n }\n });\n log('starting persistant test db', { storagePath, testMetadata });\n if (!testMetadata) {\n const key = spaceKey ?? PublicKey.random();\n db = yield* Effect.promise(() => peer.createDatabase(key));\n queues = peer.client.constructQueueFactory(db.spaceId);\n\n yield* Effect.promise(() =>\n kv!.put('test-metadata', { key: key.toHex(), rootUrl: db!.rootUrl }, { valueEncoding: 'json' }),\n );\n\n if (onInit) {\n yield* onInit().pipe(\n Effect.provideService(DatabaseService, DatabaseService.make(db)),\n Effect.provideService(QueueService, QueueService.make(queues, undefined)),\n );\n }\n } else {\n const key = PublicKey.from((testMetadata as any).key);\n const rootUrl = (testMetadata as any).rootUrl;\n db = yield* Effect.promise(() => peer.openDatabase(key, rootUrl));\n queues = peer.client.constructQueueFactory(db.spaceId);\n }\n } else {\n db = yield* Effect.promise(() => peer.createDatabase(spaceKey));\n queues = peer.client.constructQueueFactory(db.spaceId);\n if (onInit) {\n yield* onInit().pipe(\n Effect.provideService(DatabaseService, DatabaseService.make(db)),\n Effect.provideService(QueueService, QueueService.make(queues, undefined)),\n );\n }\n }\n\n yield* Effect.addFinalizer(() =>\n Effect.promise(async () => {\n if (kv) {\n // {\n // const keyCount = (await kv.iterator({ values: false }).all()).length;\n // log.info('closing persistant test db', { storagePath, keyCount });\n // }\n\n await kv.close();\n }\n }),\n );\n\n return Context.mergeAll(\n Context.make(DatabaseService, DatabaseService.make(db)),\n Context.make(QueueService, QueueService.make(queues, undefined)),\n );\n }),\n );\n"],
5
+ "mappings": "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",
6
+ "names": ["assertArgument", "Effect", "LogLevel", "noopLogger", "log", "succeed", "undefined", "nodeId", "consoleLogger", "createEventLogger", "LogLevel", "INFO", "createTestServices", "ai", "credentials", "db", "logging", "queues", "space", "tracing", "assertArgument", "ServiceContainer", "setServices", "createCredentialsService", "database", "DatabaseService", "make", "undefined", "eventLogger", "logger", "enabled", "consoleLogger", "noopLogger", "QueueService", "service", "services", "ConfiguredCredentialsService", "Context", "Effect", "Layer", "EchoTestBuilder", "acquireReleaseResource", "PublicKey", "createTestLevel", "log", "testBuilder", "acquireReleaseResource", "EchoTestBuilder", "testStoragePath", "name", "PublicKey", "random", "toHex", "TestDatabaseLayer", "indexing", "types", "spaceKey", "storagePath", "onInit", "scopedContext", "gen", "builder", "kv", "createTestLevel", "promise", "open", "peer", "createPeer", "db", "queues", "testMetadata", "get", "valueEncoding", "e", "code", "undefined", "log", "key", "createDatabase", "client", "constructQueueFactory", "spaceId", "put", "rootUrl", "pipe", "provideService", "DatabaseService", "make", "QueueService", "from", "openDatabase", "addFinalizer", "close", "mergeAll"]
7
7
  }
@@ -2,41 +2,36 @@ import { createRequire } from 'node:module';const require = createRequire(import
2
2
  import "../chunk-HSLMI22Q.mjs";
3
3
 
4
4
  // src/bundler/bundler.ts
5
- import { FetchHttpClient, HttpClient } from "@effect/platform";
6
- import { Duration, Effect, Schedule, pipe } from "effect";
5
+ import * as FetchHttpClient from "@effect/platform/FetchHttpClient";
6
+ import * as HttpClient from "@effect/platform/HttpClient";
7
+ import * as Duration from "effect/Duration";
8
+ import * as Effect from "effect/Effect";
9
+ import * as Function from "effect/Function";
10
+ import * as Schedule from "effect/Schedule";
7
11
  import { build, initialize } from "esbuild-wasm";
8
12
  import { subtleCrypto } from "@dxos/crypto";
9
13
  import { runAndForwardErrors } from "@dxos/effect";
10
14
  import { invariant } from "@dxos/invariant";
11
15
  import { log } from "@dxos/log";
12
- function _define_property(obj, key, value) {
13
- if (key in obj) {
14
- Object.defineProperty(obj, key, {
15
- value,
16
- enumerable: true,
17
- configurable: true,
18
- writable: true
19
- });
20
- } else {
21
- obj[key] = value;
22
- }
23
- return obj;
24
- }
25
16
  var __dxlog_file = "/__w/dxos/dxos/packages/core/functions/src/bundler/bundler.ts";
26
17
  var initialized;
27
18
  var initializeBundler = async (options) => {
28
- await (initialized ?? (initialized = initialize({
19
+ await (initialized ??= initialize({
29
20
  wasmURL: options.wasmUrl
30
- })));
21
+ }));
31
22
  };
32
23
  var Bundler = class {
24
+ _options;
25
+ constructor(_options) {
26
+ this._options = _options;
27
+ }
33
28
  async bundle({ source }) {
34
29
  const { sandboxedModules: providedModules, ...options } = this._options;
35
30
  const sourceHash = Buffer.from(await subtleCrypto.digest("SHA-256", Buffer.from(source)));
36
31
  if (this._options.platform === "browser") {
37
32
  invariant(initialized, "Compiler not initialized.", {
38
33
  F: __dxlog_file,
39
- L: 66,
34
+ L: 70,
40
35
  S: this,
41
36
  A: [
42
37
  "initialized",
@@ -131,7 +126,7 @@ var Bundler = class {
131
126
  });
132
127
  log("compile complete", result.metafile, {
133
128
  F: __dxlog_file,
134
- L: 133,
129
+ L: 137,
135
130
  S: this,
136
131
  C: (f, a) => f(...a)
137
132
  });
@@ -156,7 +151,7 @@ var Bundler = class {
156
151
  analyzeImports(result) {
157
152
  invariant(result.outputFiles, void 0, {
158
153
  F: __dxlog_file,
159
- L: 151,
154
+ L: 155,
160
155
  S: this,
161
156
  A: [
162
157
  "result.outputFiles",
@@ -195,10 +190,6 @@ var Bundler = class {
195
190
  };
196
191
  });
197
192
  }
198
- constructor(_options) {
199
- _define_property(this, "_options", void 0);
200
- this._options = _options;
201
- }
202
193
  };
203
194
  var IMPORT_REGEX = /import(?:(?:(?:[ \n\t]+([^ *\n\t{},]+)[ \n\t]*(?:,|[ \n\t]+))?([ \n\t]*{(?:[ \n\t]*[^ \n\t"'{}]+[ \n\t]*,?)+})?[ \n\t]*)|[ \n\t]*\*[ \n\t]*as[ \n\t]+([^ \n\t{}]+)[ \n\t]+)from[ \n\t]*(?:['"])([^'"\n]+)(['"])/gm;
204
195
  var NAMED_IMPORTS_REGEX = /[ \n\t]*{((?:[ \n\t]*[^ \n\t"'{}]+[ \n\t]*,?)+)}[ \n\t]*/gm;
@@ -255,7 +246,7 @@ var httpPlugin = {
255
246
  contents: text,
256
247
  loader: "jsx"
257
248
  };
258
- }).pipe(Effect.retry(pipe(Schedule.exponential(Duration.millis(INITIAL_DELAY)), Schedule.jittered, Schedule.intersect(Schedule.recurs(MAX_RETRIES - 1)))), Effect.provide(FetchHttpClient.layer), runAndForwardErrors);
249
+ }).pipe(Effect.retry(Function.pipe(Schedule.exponential(Duration.millis(INITIAL_DELAY)), Schedule.jittered, Schedule.intersect(Schedule.recurs(MAX_RETRIES - 1)))), Effect.provide(FetchHttpClient.layer), runAndForwardErrors);
259
250
  });
260
251
  }
261
252
  };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/bundler/bundler.ts"],
4
- "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { FetchHttpClient, HttpClient } from '@effect/platform';\nimport { Duration, Effect, Schedule, pipe } from 'effect';\nimport { type BuildOptions, type BuildResult, type Loader, type Plugin, build, initialize } from 'esbuild-wasm';\n\nimport { subtleCrypto } from '@dxos/crypto';\nimport { runAndForwardErrors } from '@dxos/effect';\nimport { invariant } from '@dxos/invariant';\nimport { log } from '@dxos/log';\n\nexport type Import = {\n moduleUrl: string;\n defaultImport: boolean;\n namedImports: string[];\n};\n\nexport type BundleOptions = {\n /**\n * Source code to bundle.\n */\n source: string;\n};\n\nexport type BundleResult =\n | {\n timestamp: number;\n sourceHash: Buffer;\n error: unknown;\n }\n | {\n timestamp: number;\n sourceHash: Buffer;\n imports: Import[];\n entryPoint: string;\n asset: Uint8Array;\n bundle: string;\n };\n\nexport type BundlerOptions = {\n platform: BuildOptions['platform'];\n sandboxedModules: string[];\n remoteModules: Record<string, string>;\n};\n\nlet initialized: Promise<void>;\nexport const initializeBundler = async (options: { wasmUrl: string }) => {\n await (initialized ??= initialize({\n wasmURL: options.wasmUrl,\n }));\n};\n\n/**\n * ESBuild bundler.\n */\nexport class Bundler {\n constructor(private readonly _options: BundlerOptions) {}\n\n async bundle({ source }: BundleOptions): Promise<BundleResult> {\n const { sandboxedModules: providedModules, ...options } = this._options;\n const sourceHash = Buffer.from(await subtleCrypto.digest('SHA-256', Buffer.from(source)));\n\n if (this._options.platform === 'browser') {\n invariant(initialized, 'Compiler not initialized.');\n await initialized;\n }\n\n const imports = source ? analyzeSourceFileImports(source) : [];\n\n // https://esbuild.github.io/api/#build\n try {\n const result = await build({\n platform: options.platform,\n conditions: ['workerd', 'browser'],\n metafile: true,\n write: false,\n entryPoints: {\n // Gets mapped to `userFunc.js` by esbuild.\n userFunc: 'memory:main.tsx',\n },\n bundle: true,\n format: 'esm',\n plugins: [\n {\n name: 'memory',\n setup: (build) => {\n build.onResolve({ filter: /^\\.\\/runtime\\.js$/ }, ({ path }) => {\n return { path, external: true };\n });\n\n build.onResolve({ filter: /^dxos:functions$/ }, ({ path }) => {\n return { path: './runtime.js', external: true };\n });\n\n build.onResolve({ filter: /^memory:/ }, ({ path }) => {\n return { path: path.split(':')[1], namespace: 'memory' };\n });\n\n build.onLoad({ filter: /.*/, namespace: 'memory' }, ({ path }) => {\n if (path === 'main.tsx') {\n return {\n contents: source,\n loader: 'tsx',\n };\n }\n });\n\n for (const module of providedModules) {\n build.onResolve({ filter: new RegExp(`^${module}$`) }, ({ path }) => {\n return { path, namespace: 'injected-module' };\n });\n }\n\n build.onLoad({ filter: /.*/, namespace: 'injected-module' }, ({ path }) => {\n const namedImports = imports.find((entry) => entry.moduleIdentifier === path)?.namedImports ?? [];\n return {\n contents: `\n const { ${namedImports.join(',')} } = window.__DXOS_SANDBOX_MODULES__[${JSON.stringify(path)}];\n export { ${namedImports.join(',')} };\n export default window.__DXOS_SANDBOX_MODULES__[${JSON.stringify(path)}].default;\n `,\n loader: 'tsx',\n };\n });\n },\n },\n httpPlugin,\n ],\n });\n\n log('compile complete', result.metafile);\n\n const entryPoint = 'userFunc.js';\n return {\n timestamp: Date.now(),\n sourceHash,\n imports: this.analyzeImports(result),\n entryPoint,\n asset: result.outputFiles![0].contents,\n bundle: result.outputFiles![0].text,\n };\n } catch (err) {\n return { timestamp: Date.now(), sourceHash, error: err };\n }\n }\n\n // TODO(dmaretskyi): In the future we can replace the compiler with SWC with plugins running in WASM.\n analyzeImports(result: BuildResult): Import[] {\n invariant(result.outputFiles);\n\n // TODO(dmaretskyi): Support import aliases and wildcard imports.\n const parsedImports = allMatches(IMPORT_REGEX, result.outputFiles[0].text);\n return Object.values(result.metafile!.outputs)[0].imports.map((entry): Import => {\n const namedImports: string[] = [];\n const parsedImport = parsedImports.find((capture) => capture?.[4] === entry.path);\n if (parsedImport?.[2]) {\n NAMED_IMPORTS_REGEX.lastIndex = 0;\n const namedImportsMatch = NAMED_IMPORTS_REGEX.exec(parsedImport[2]);\n if (namedImportsMatch) {\n namedImportsMatch[1].split(',').forEach((importName) => {\n namedImports.push(importName.trim());\n });\n }\n }\n\n return {\n moduleUrl: entry.path,\n defaultImport: !!parsedImport?.[1],\n namedImports,\n };\n });\n }\n\n analyzeSourceFileImports(code: string): {\n defaultImportName: string;\n namedImports: string[];\n wildcardImportName: string;\n moduleIdentifier: string;\n quotes: string;\n }[] {\n // TODO(dmaretskyi): Support import aliases and wildcard imports.\n const parsedImports = allMatches(IMPORT_REGEX, code);\n return parsedImports.map((capture) => {\n return {\n defaultImportName: capture[1],\n namedImports: capture[2]?.split(',').map((importName) => importName.trim()),\n wildcardImportName: capture[3],\n moduleIdentifier: capture[4],\n quotes: capture[5],\n };\n });\n }\n}\n\n// https://regex101.com/r/FEN5ks/1\n// https://stackoverflow.com/a/73265022\n// $1 = default import name (can be non-existent)\n// $2 = destructured exports (can be non-existent)\n// $3 = wildcard import name (can be non-existent)\n// $4 = module identifier\n// $5 = quotes used (either ' or \")\nconst IMPORT_REGEX =\n /import(?:(?:(?:[ \\n\\t]+([^ *\\n\\t{},]+)[ \\n\\t]*(?:,|[ \\n\\t]+))?([ \\n\\t]*{(?:[ \\n\\t]*[^ \\n\\t\"'{}]+[ \\n\\t]*,?)+})?[ \\n\\t]*)|[ \\n\\t]*\\*[ \\n\\t]*as[ \\n\\t]+([^ \\n\\t{}]+)[ \\n\\t]+)from[ \\n\\t]*(?:['\"])([^'\"\\n]+)(['\"])/gm;\n\nconst NAMED_IMPORTS_REGEX = /[ \\n\\t]*{((?:[ \\n\\t]*[^ \\n\\t\"'{}]+[ \\n\\t]*,?)+)}[ \\n\\t]*/gm;\n\nconst allMatches = (regex: RegExp, str: string) => {\n let match;\n const matches = [];\n regex.lastIndex = 0;\n while ((match = regex.exec(str))) {\n matches.push(match);\n }\n\n return matches;\n};\n\ntype ParsedImport = {\n defaultImportName?: string;\n namedImports: string[];\n wildcardImportName?: string;\n moduleIdentifier: string;\n quotes: string;\n};\n\nconst analyzeSourceFileImports = (code: string): ParsedImport[] => {\n // TODO(dmaretskyi): Support import aliases and wildcard imports.\n const parsedImports = allMatches(IMPORT_REGEX, code);\n return parsedImports.map((capture) => {\n return {\n defaultImportName: capture[1],\n namedImports: capture[2]\n ?.trim()\n .slice(1, -1)\n .split(',')\n .map((importName) => importName.trim()),\n wildcardImportName: capture[3],\n moduleIdentifier: capture[4],\n quotes: capture[5],\n };\n });\n};\n\nconst MAX_RETRIES = 5;\nconst INITIAL_DELAY = 1_000;\n\nconst httpPlugin: Plugin = {\n name: 'http',\n setup: (build) => {\n // Intercept import paths starting with \"http:\" and \"https:\" so esbuild doesn't attempt to map them to a file system location.\n // Tag them with the \"http-url\" namespace to associate them with this plugin.\n build.onResolve({ filter: /^https?:\\/\\// }, (args) => ({\n path: args.path,\n namespace: 'http-url',\n }));\n\n // We also want to intercept all import paths inside downloaded files and resolve them against the original URL.\n // All of these files will be in the \"http-url\" namespace.\n // Make sure to keep the newly resolved URL in the \"http-url\" namespace so imports inside it will also be resolved as URLs recursively.\n build.onResolve({ filter: /.*/, namespace: 'http-url' }, (args) => ({\n path: new URL(args.path, args.importer).toString(),\n namespace: 'http-url',\n }));\n\n // When a URL is loaded, we want to actually download the content from the internet.\n // This has just enough logic to be able to handle the example import from unpkg.com but in reality this would probably need to be more complex.\n build.onLoad({ filter: /.*/, namespace: 'http-url' }, async (args) => {\n return Effect.gen(function* () {\n const response = yield* HttpClient.get(args.path);\n if (response.status !== 200) {\n throw new Error(`failed to fetch: ${response.status}`);\n }\n\n const text = yield* response.text;\n return { contents: text, loader: 'jsx' as Loader };\n }).pipe(\n Effect.retry(\n pipe(\n Schedule.exponential(Duration.millis(INITIAL_DELAY)),\n Schedule.jittered,\n Schedule.intersect(Schedule.recurs(MAX_RETRIES - 1)),\n ),\n ),\n Effect.provide(FetchHttpClient.layer),\n runAndForwardErrors,\n );\n });\n },\n};\n"],
5
- "mappings": "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",
6
- "names": ["FetchHttpClient", "HttpClient", "Duration", "Effect", "Schedule", "pipe", "build", "initialize", "subtleCrypto", "runAndForwardErrors", "invariant", "log", "initialized", "initializeBundler", "options", "wasmURL", "wasmUrl", "Bundler", "bundle", "source", "sandboxedModules", "providedModules", "_options", "sourceHash", "Buffer", "from", "digest", "platform", "imports", "analyzeSourceFileImports", "result", "conditions", "metafile", "write", "entryPoints", "userFunc", "format", "plugins", "name", "setup", "onResolve", "filter", "path", "external", "split", "namespace", "onLoad", "contents", "loader", "module", "RegExp", "namedImports", "find", "entry", "moduleIdentifier", "join", "JSON", "stringify", "httpPlugin", "entryPoint", "timestamp", "Date", "now", "analyzeImports", "asset", "outputFiles", "text", "err", "error", "parsedImports", "allMatches", "IMPORT_REGEX", "Object", "values", "outputs", "map", "parsedImport", "capture", "NAMED_IMPORTS_REGEX", "lastIndex", "namedImportsMatch", "exec", "forEach", "importName", "push", "trim", "moduleUrl", "defaultImport", "code", "defaultImportName", "wildcardImportName", "quotes", "regex", "str", "match", "matches", "slice", "MAX_RETRIES", "INITIAL_DELAY", "args", "URL", "importer", "toString", "gen", "response", "get", "status", "Error", "retry", "exponential", "millis", "jittered", "intersect", "recurs", "provide", "layer"]
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport * as FetchHttpClient from '@effect/platform/FetchHttpClient';\nimport * as HttpClient from '@effect/platform/HttpClient';\nimport * as Duration from 'effect/Duration';\nimport * as Effect from 'effect/Effect';\nimport * as Function from 'effect/Function';\nimport * as Schedule from 'effect/Schedule';\nimport { type BuildOptions, type BuildResult, type Loader, type Plugin, build, initialize } from 'esbuild-wasm';\n\nimport { subtleCrypto } from '@dxos/crypto';\nimport { runAndForwardErrors } from '@dxos/effect';\nimport { invariant } from '@dxos/invariant';\nimport { log } from '@dxos/log';\n\nexport type Import = {\n moduleUrl: string;\n defaultImport: boolean;\n namedImports: string[];\n};\n\nexport type BundleOptions = {\n /**\n * Source code to bundle.\n */\n source: string;\n};\n\nexport type BundleResult =\n | {\n timestamp: number;\n sourceHash: Buffer;\n error: unknown;\n }\n | {\n timestamp: number;\n sourceHash: Buffer;\n imports: Import[];\n entryPoint: string;\n asset: Uint8Array;\n bundle: string;\n };\n\nexport type BundlerOptions = {\n platform: BuildOptions['platform'];\n sandboxedModules: string[];\n remoteModules: Record<string, string>;\n};\n\nlet initialized: Promise<void>;\nexport const initializeBundler = async (options: { wasmUrl: string }) => {\n await (initialized ??= initialize({\n wasmURL: options.wasmUrl,\n }));\n};\n\n/**\n * ESBuild bundler.\n */\nexport class Bundler {\n constructor(private readonly _options: BundlerOptions) {}\n\n async bundle({ source }: BundleOptions): Promise<BundleResult> {\n const { sandboxedModules: providedModules, ...options } = this._options;\n const sourceHash = Buffer.from(await subtleCrypto.digest('SHA-256', Buffer.from(source)));\n\n if (this._options.platform === 'browser') {\n invariant(initialized, 'Compiler not initialized.');\n await initialized;\n }\n\n const imports = source ? analyzeSourceFileImports(source) : [];\n\n // https://esbuild.github.io/api/#build\n try {\n const result = await build({\n platform: options.platform,\n conditions: ['workerd', 'browser'],\n metafile: true,\n write: false,\n entryPoints: {\n // Gets mapped to `userFunc.js` by esbuild.\n userFunc: 'memory:main.tsx',\n },\n bundle: true,\n format: 'esm',\n plugins: [\n {\n name: 'memory',\n setup: (build) => {\n build.onResolve({ filter: /^\\.\\/runtime\\.js$/ }, ({ path }) => {\n return { path, external: true };\n });\n\n build.onResolve({ filter: /^dxos:functions$/ }, ({ path }) => {\n return { path: './runtime.js', external: true };\n });\n\n build.onResolve({ filter: /^memory:/ }, ({ path }) => {\n return { path: path.split(':')[1], namespace: 'memory' };\n });\n\n build.onLoad({ filter: /.*/, namespace: 'memory' }, ({ path }) => {\n if (path === 'main.tsx') {\n return {\n contents: source,\n loader: 'tsx',\n };\n }\n });\n\n for (const module of providedModules) {\n build.onResolve({ filter: new RegExp(`^${module}$`) }, ({ path }) => {\n return { path, namespace: 'injected-module' };\n });\n }\n\n build.onLoad({ filter: /.*/, namespace: 'injected-module' }, ({ path }) => {\n const namedImports = imports.find((entry) => entry.moduleIdentifier === path)?.namedImports ?? [];\n return {\n contents: `\n const { ${namedImports.join(',')} } = window.__DXOS_SANDBOX_MODULES__[${JSON.stringify(path)}];\n export { ${namedImports.join(',')} };\n export default window.__DXOS_SANDBOX_MODULES__[${JSON.stringify(path)}].default;\n `,\n loader: 'tsx',\n };\n });\n },\n },\n httpPlugin,\n ],\n });\n\n log('compile complete', result.metafile);\n\n const entryPoint = 'userFunc.js';\n return {\n timestamp: Date.now(),\n sourceHash,\n imports: this.analyzeImports(result),\n entryPoint,\n asset: result.outputFiles![0].contents,\n bundle: result.outputFiles![0].text,\n };\n } catch (err) {\n return { timestamp: Date.now(), sourceHash, error: err };\n }\n }\n\n // TODO(dmaretskyi): In the future we can replace the compiler with SWC with plugins running in WASM.\n analyzeImports(result: BuildResult): Import[] {\n invariant(result.outputFiles);\n\n // TODO(dmaretskyi): Support import aliases and wildcard imports.\n const parsedImports = allMatches(IMPORT_REGEX, result.outputFiles[0].text);\n return Object.values(result.metafile!.outputs)[0].imports.map((entry): Import => {\n const namedImports: string[] = [];\n const parsedImport = parsedImports.find((capture) => capture?.[4] === entry.path);\n if (parsedImport?.[2]) {\n NAMED_IMPORTS_REGEX.lastIndex = 0;\n const namedImportsMatch = NAMED_IMPORTS_REGEX.exec(parsedImport[2]);\n if (namedImportsMatch) {\n namedImportsMatch[1].split(',').forEach((importName) => {\n namedImports.push(importName.trim());\n });\n }\n }\n\n return {\n moduleUrl: entry.path,\n defaultImport: !!parsedImport?.[1],\n namedImports,\n };\n });\n }\n\n analyzeSourceFileImports(code: string): {\n defaultImportName: string;\n namedImports: string[];\n wildcardImportName: string;\n moduleIdentifier: string;\n quotes: string;\n }[] {\n // TODO(dmaretskyi): Support import aliases and wildcard imports.\n const parsedImports = allMatches(IMPORT_REGEX, code);\n return parsedImports.map((capture) => {\n return {\n defaultImportName: capture[1],\n namedImports: capture[2]?.split(',').map((importName) => importName.trim()),\n wildcardImportName: capture[3],\n moduleIdentifier: capture[4],\n quotes: capture[5],\n };\n });\n }\n}\n\n// https://regex101.com/r/FEN5ks/1\n// https://stackoverflow.com/a/73265022\n// $1 = default import name (can be non-existent)\n// $2 = destructured exports (can be non-existent)\n// $3 = wildcard import name (can be non-existent)\n// $4 = module identifier\n// $5 = quotes used (either ' or \")\nconst IMPORT_REGEX =\n /import(?:(?:(?:[ \\n\\t]+([^ *\\n\\t{},]+)[ \\n\\t]*(?:,|[ \\n\\t]+))?([ \\n\\t]*{(?:[ \\n\\t]*[^ \\n\\t\"'{}]+[ \\n\\t]*,?)+})?[ \\n\\t]*)|[ \\n\\t]*\\*[ \\n\\t]*as[ \\n\\t]+([^ \\n\\t{}]+)[ \\n\\t]+)from[ \\n\\t]*(?:['\"])([^'\"\\n]+)(['\"])/gm;\n\nconst NAMED_IMPORTS_REGEX = /[ \\n\\t]*{((?:[ \\n\\t]*[^ \\n\\t\"'{}]+[ \\n\\t]*,?)+)}[ \\n\\t]*/gm;\n\nconst allMatches = (regex: RegExp, str: string) => {\n let match;\n const matches = [];\n regex.lastIndex = 0;\n while ((match = regex.exec(str))) {\n matches.push(match);\n }\n\n return matches;\n};\n\ntype ParsedImport = {\n defaultImportName?: string;\n namedImports: string[];\n wildcardImportName?: string;\n moduleIdentifier: string;\n quotes: string;\n};\n\nconst analyzeSourceFileImports = (code: string): ParsedImport[] => {\n // TODO(dmaretskyi): Support import aliases and wildcard imports.\n const parsedImports = allMatches(IMPORT_REGEX, code);\n return parsedImports.map((capture) => {\n return {\n defaultImportName: capture[1],\n namedImports: capture[2]\n ?.trim()\n .slice(1, -1)\n .split(',')\n .map((importName) => importName.trim()),\n wildcardImportName: capture[3],\n moduleIdentifier: capture[4],\n quotes: capture[5],\n };\n });\n};\n\nconst MAX_RETRIES = 5;\nconst INITIAL_DELAY = 1_000;\n\nconst httpPlugin: Plugin = {\n name: 'http',\n setup: (build) => {\n // Intercept import paths starting with \"http:\" and \"https:\" so esbuild doesn't attempt to map them to a file system location.\n // Tag them with the \"http-url\" namespace to associate them with this plugin.\n build.onResolve({ filter: /^https?:\\/\\// }, (args) => ({\n path: args.path,\n namespace: 'http-url',\n }));\n\n // We also want to intercept all import paths inside downloaded files and resolve them against the original URL.\n // All of these files will be in the \"http-url\" namespace.\n // Make sure to keep the newly resolved URL in the \"http-url\" namespace so imports inside it will also be resolved as URLs recursively.\n build.onResolve({ filter: /.*/, namespace: 'http-url' }, (args) => ({\n path: new URL(args.path, args.importer).toString(),\n namespace: 'http-url',\n }));\n\n // When a URL is loaded, we want to actually download the content from the internet.\n // This has just enough logic to be able to handle the example import from unpkg.com but in reality this would probably need to be more complex.\n build.onLoad({ filter: /.*/, namespace: 'http-url' }, async (args) => {\n return Effect.gen(function* () {\n const response = yield* HttpClient.get(args.path);\n if (response.status !== 200) {\n throw new Error(`failed to fetch: ${response.status}`);\n }\n\n const text = yield* response.text;\n return { contents: text, loader: 'jsx' as Loader };\n }).pipe(\n Effect.retry(\n Function.pipe(\n Schedule.exponential(Duration.millis(INITIAL_DELAY)),\n Schedule.jittered,\n Schedule.intersect(Schedule.recurs(MAX_RETRIES - 1)),\n ),\n ),\n Effect.provide(FetchHttpClient.layer),\n runAndForwardErrors,\n );\n });\n },\n};\n"],
5
+ "mappings": "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",
6
+ "names": ["FetchHttpClient", "HttpClient", "Duration", "Effect", "Function", "Schedule", "build", "initialize", "subtleCrypto", "runAndForwardErrors", "invariant", "log", "initialized", "initializeBundler", "options", "wasmURL", "wasmUrl", "Bundler", "_options", "bundle", "source", "sandboxedModules", "providedModules", "sourceHash", "Buffer", "from", "digest", "platform", "imports", "analyzeSourceFileImports", "result", "conditions", "metafile", "write", "entryPoints", "userFunc", "format", "plugins", "name", "setup", "onResolve", "filter", "path", "external", "split", "namespace", "onLoad", "contents", "loader", "module", "RegExp", "namedImports", "find", "entry", "moduleIdentifier", "join", "JSON", "stringify", "httpPlugin", "entryPoint", "timestamp", "Date", "now", "analyzeImports", "asset", "outputFiles", "text", "err", "error", "parsedImports", "allMatches", "IMPORT_REGEX", "Object", "values", "outputs", "map", "parsedImport", "capture", "NAMED_IMPORTS_REGEX", "lastIndex", "namedImportsMatch", "exec", "forEach", "importName", "push", "trim", "moduleUrl", "defaultImport", "code", "defaultImportName", "wildcardImportName", "quotes", "regex", "str", "match", "matches", "slice", "MAX_RETRIES", "INITIAL_DELAY", "args", "URL", "importer", "toString", "gen", "response", "get", "status", "Error", "pipe", "retry", "exponential", "millis", "jittered", "intersect", "recurs", "provide", "layer"]
7
7
  }