@effect/platform-browser 0.74.0 → 4.0.0-beta.0

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 (170) hide show
  1. package/README.md +0 -6
  2. package/dist/BrowserHttpClient.d.ts +49 -0
  3. package/dist/BrowserHttpClient.d.ts.map +1 -0
  4. package/dist/{esm/internal/httpClient.js → BrowserHttpClient.js} +98 -60
  5. package/dist/BrowserHttpClient.js.map +1 -0
  6. package/dist/BrowserKeyValueStore.d.ts +24 -0
  7. package/dist/BrowserKeyValueStore.d.ts.map +1 -0
  8. package/dist/BrowserKeyValueStore.js +20 -0
  9. package/dist/BrowserKeyValueStore.js.map +1 -0
  10. package/dist/BrowserRuntime.d.ts +28 -0
  11. package/dist/BrowserRuntime.d.ts.map +1 -0
  12. package/dist/BrowserRuntime.js +13 -0
  13. package/dist/BrowserRuntime.js.map +1 -0
  14. package/dist/{dts/BrowserSocket.d.ts → BrowserSocket.d.ts} +4 -4
  15. package/dist/BrowserSocket.d.ts.map +1 -0
  16. package/dist/{esm/BrowserSocket.js → BrowserSocket.js} +5 -5
  17. package/dist/BrowserSocket.js.map +1 -0
  18. package/dist/BrowserStream.d.ts +35 -0
  19. package/dist/BrowserStream.d.ts.map +1 -0
  20. package/dist/BrowserStream.js +25 -0
  21. package/dist/BrowserStream.js.map +1 -0
  22. package/dist/BrowserWorker.d.ts +13 -0
  23. package/dist/BrowserWorker.d.ts.map +1 -0
  24. package/dist/{esm/internal/worker.js → BrowserWorker.js} +23 -17
  25. package/dist/BrowserWorker.js.map +1 -0
  26. package/dist/BrowserWorkerRunner.d.ts +18 -0
  27. package/dist/BrowserWorkerRunner.d.ts.map +1 -0
  28. package/dist/BrowserWorkerRunner.js +143 -0
  29. package/dist/BrowserWorkerRunner.js.map +1 -0
  30. package/dist/{dts/Clipboard.d.ts → Clipboard.d.ts} +13 -30
  31. package/dist/Clipboard.d.ts.map +1 -0
  32. package/dist/{esm/Clipboard.js → Clipboard.js} +12 -18
  33. package/dist/Clipboard.js.map +1 -0
  34. package/dist/Geolocation.d.ts +97 -0
  35. package/dist/Geolocation.d.ts.map +1 -0
  36. package/dist/Geolocation.js +99 -0
  37. package/dist/Geolocation.js.map +1 -0
  38. package/dist/Permissions.d.ts +80 -0
  39. package/dist/Permissions.d.ts.map +1 -0
  40. package/dist/Permissions.js +70 -0
  41. package/dist/Permissions.js.map +1 -0
  42. package/dist/index.d.ts +44 -0
  43. package/dist/index.d.ts.map +1 -0
  44. package/dist/{esm/index.js → index.js} +4 -0
  45. package/dist/index.js.map +1 -0
  46. package/package.json +51 -111
  47. package/src/BrowserHttpClient.ts +364 -16
  48. package/src/BrowserKeyValueStore.ts +15 -8
  49. package/src/BrowserRuntime.ts +30 -4
  50. package/src/BrowserSocket.ts +5 -5
  51. package/src/BrowserStream.ts +20 -10
  52. package/src/BrowserWorker.ts +58 -21
  53. package/src/BrowserWorkerRunner.ts +151 -18
  54. package/src/Clipboard.ts +16 -38
  55. package/src/Geolocation.ts +80 -40
  56. package/src/Permissions.ts +49 -34
  57. package/src/index.ts +16 -10
  58. package/BrowserHttpClient/package.json +0 -6
  59. package/BrowserKeyValueStore/package.json +0 -6
  60. package/BrowserRuntime/package.json +0 -6
  61. package/BrowserSocket/package.json +0 -6
  62. package/BrowserStream/package.json +0 -6
  63. package/BrowserWorker/package.json +0 -6
  64. package/BrowserWorkerRunner/package.json +0 -6
  65. package/Clipboard/package.json +0 -6
  66. package/Geolocation/package.json +0 -6
  67. package/Permissions/package.json +0 -6
  68. package/dist/cjs/BrowserHttpClient.js +0 -31
  69. package/dist/cjs/BrowserHttpClient.js.map +0 -1
  70. package/dist/cjs/BrowserKeyValueStore.js +0 -23
  71. package/dist/cjs/BrowserKeyValueStore.js.map +0 -1
  72. package/dist/cjs/BrowserRuntime.js +0 -14
  73. package/dist/cjs/BrowserRuntime.js.map +0 -1
  74. package/dist/cjs/BrowserSocket.js +0 -27
  75. package/dist/cjs/BrowserSocket.js.map +0 -1
  76. package/dist/cjs/BrowserStream.js +0 -23
  77. package/dist/cjs/BrowserStream.js.map +0 -1
  78. package/dist/cjs/BrowserWorker.js +0 -29
  79. package/dist/cjs/BrowserWorker.js.map +0 -1
  80. package/dist/cjs/BrowserWorkerRunner.js +0 -31
  81. package/dist/cjs/BrowserWorkerRunner.js.map +0 -1
  82. package/dist/cjs/Clipboard.js +0 -86
  83. package/dist/cjs/Clipboard.js.map +0 -1
  84. package/dist/cjs/Geolocation.js +0 -73
  85. package/dist/cjs/Geolocation.js.map +0 -1
  86. package/dist/cjs/Permissions.js +0 -59
  87. package/dist/cjs/Permissions.js.map +0 -1
  88. package/dist/cjs/index.js +0 -28
  89. package/dist/cjs/index.js.map +0 -1
  90. package/dist/cjs/internal/httpClient.js +0 -266
  91. package/dist/cjs/internal/httpClient.js.map +0 -1
  92. package/dist/cjs/internal/keyValueStore.js +0 -13
  93. package/dist/cjs/internal/keyValueStore.js.map +0 -1
  94. package/dist/cjs/internal/runtime.js +0 -16
  95. package/dist/cjs/internal/runtime.js.map +0 -1
  96. package/dist/cjs/internal/stream.js +0 -19
  97. package/dist/cjs/internal/stream.js.map +0 -1
  98. package/dist/cjs/internal/worker.js +0 -60
  99. package/dist/cjs/internal/worker.js.map +0 -1
  100. package/dist/cjs/internal/workerRunner.js +0 -144
  101. package/dist/cjs/internal/workerRunner.js.map +0 -1
  102. package/dist/dts/BrowserHttpClient.d.ts +0 -33
  103. package/dist/dts/BrowserHttpClient.d.ts.map +0 -1
  104. package/dist/dts/BrowserKeyValueStore.d.ts +0 -20
  105. package/dist/dts/BrowserKeyValueStore.d.ts.map +0 -1
  106. package/dist/dts/BrowserRuntime.d.ts +0 -10
  107. package/dist/dts/BrowserRuntime.d.ts.map +0 -1
  108. package/dist/dts/BrowserSocket.d.ts.map +0 -1
  109. package/dist/dts/BrowserStream.d.ts +0 -25
  110. package/dist/dts/BrowserStream.d.ts.map +0 -1
  111. package/dist/dts/BrowserWorker.d.ts +0 -26
  112. package/dist/dts/BrowserWorker.d.ts.map +0 -1
  113. package/dist/dts/BrowserWorkerRunner.d.ts +0 -27
  114. package/dist/dts/BrowserWorkerRunner.d.ts.map +0 -1
  115. package/dist/dts/Clipboard.d.ts.map +0 -1
  116. package/dist/dts/Geolocation.d.ts +0 -67
  117. package/dist/dts/Geolocation.d.ts.map +0 -1
  118. package/dist/dts/Permissions.d.ts +0 -67
  119. package/dist/dts/Permissions.d.ts.map +0 -1
  120. package/dist/dts/index.d.ts +0 -41
  121. package/dist/dts/index.d.ts.map +0 -1
  122. package/dist/dts/internal/httpClient.d.ts +0 -2
  123. package/dist/dts/internal/httpClient.d.ts.map +0 -1
  124. package/dist/dts/internal/keyValueStore.d.ts +0 -2
  125. package/dist/dts/internal/keyValueStore.d.ts.map +0 -1
  126. package/dist/dts/internal/runtime.d.ts +0 -2
  127. package/dist/dts/internal/runtime.d.ts.map +0 -1
  128. package/dist/dts/internal/stream.d.ts +0 -5
  129. package/dist/dts/internal/stream.d.ts.map +0 -1
  130. package/dist/dts/internal/worker.d.ts +0 -2
  131. package/dist/dts/internal/worker.d.ts.map +0 -1
  132. package/dist/dts/internal/workerRunner.d.ts +0 -2
  133. package/dist/dts/internal/workerRunner.d.ts.map +0 -1
  134. package/dist/esm/BrowserHttpClient.js +0 -23
  135. package/dist/esm/BrowserHttpClient.js.map +0 -1
  136. package/dist/esm/BrowserKeyValueStore.js +0 -16
  137. package/dist/esm/BrowserKeyValueStore.js.map +0 -1
  138. package/dist/esm/BrowserRuntime.js +0 -7
  139. package/dist/esm/BrowserRuntime.js.map +0 -1
  140. package/dist/esm/BrowserSocket.js.map +0 -1
  141. package/dist/esm/BrowserStream.js +0 -15
  142. package/dist/esm/BrowserStream.js.map +0 -1
  143. package/dist/esm/BrowserWorker.js +0 -22
  144. package/dist/esm/BrowserWorker.js.map +0 -1
  145. package/dist/esm/BrowserWorkerRunner.js +0 -23
  146. package/dist/esm/BrowserWorkerRunner.js.map +0 -1
  147. package/dist/esm/Clipboard.js.map +0 -1
  148. package/dist/esm/Geolocation.js +0 -63
  149. package/dist/esm/Geolocation.js.map +0 -1
  150. package/dist/esm/Permissions.js +0 -50
  151. package/dist/esm/Permissions.js.map +0 -1
  152. package/dist/esm/index.js.map +0 -1
  153. package/dist/esm/internal/httpClient.js.map +0 -1
  154. package/dist/esm/internal/keyValueStore.js +0 -6
  155. package/dist/esm/internal/keyValueStore.js.map +0 -1
  156. package/dist/esm/internal/runtime.js +0 -10
  157. package/dist/esm/internal/runtime.js.map +0 -1
  158. package/dist/esm/internal/stream.js +0 -9
  159. package/dist/esm/internal/stream.js.map +0 -1
  160. package/dist/esm/internal/worker.js.map +0 -1
  161. package/dist/esm/internal/workerRunner.js +0 -135
  162. package/dist/esm/internal/workerRunner.js.map +0 -1
  163. package/dist/esm/package.json +0 -4
  164. package/index/package.json +0 -6
  165. package/src/internal/httpClient.ts +0 -324
  166. package/src/internal/keyValueStore.ts +0 -7
  167. package/src/internal/runtime.ts +0 -8
  168. package/src/internal/stream.ts +0 -27
  169. package/src/internal/worker.ts +0 -58
  170. package/src/internal/workerRunner.ts +0 -155
@@ -1,50 +0,0 @@
1
- /**
2
- * @since 1.0.0
3
- */
4
- import { TypeIdError } from "@effect/platform/Error";
5
- import * as Context from "effect/Context";
6
- import * as Effect from "effect/Effect";
7
- import * as Layer from "effect/Layer";
8
- /**
9
- * @since 1.0.0
10
- * @category type ids
11
- */
12
- export const TypeId = /*#__PURE__*/Symbol.for("@effect/platform-browser/Permissions");
13
- /**
14
- * @since 1.0.0
15
- * @category type ids
16
- */
17
- export const ErrorTypeId = /*#__PURE__*/Symbol.for("@effect/platform-browser/Permissions/PermissionsError");
18
- /**
19
- * @since 1.0.0
20
- * @category errors
21
- */
22
- export class PermissionsError extends /*#__PURE__*/TypeIdError(ErrorTypeId, "PermissionsError") {
23
- get message() {
24
- return this.reason;
25
- }
26
- }
27
- /**
28
- * @since 1.0.0
29
- * @category tags
30
- */
31
- export const Permissions = /*#__PURE__*/Context.GenericTag("@effect/platform-browser/Permissions");
32
- /**
33
- * A layer that directly interfaces with the `navigator.permissions` api
34
- *
35
- * @since 1.0.0
36
- * @category layers
37
- */
38
- export const layer = /*#__PURE__*/Layer.succeed(Permissions, /*#__PURE__*/Permissions.of({
39
- [TypeId]: TypeId,
40
- query: name => Effect.tryPromise({
41
- try: () => navigator.permissions.query({
42
- name
43
- }),
44
- catch: cause => new PermissionsError({
45
- reason: cause instanceof DOMException ? "InvalidStateError" : "TypeError",
46
- cause
47
- })
48
- })
49
- }));
50
- //# sourceMappingURL=Permissions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Permissions.js","names":["TypeIdError","Context","Effect","Layer","TypeId","Symbol","for","ErrorTypeId","PermissionsError","message","reason","Permissions","GenericTag","layer","succeed","of","query","name","tryPromise","try","navigator","permissions","catch","cause","DOMException"],"sources":["../../src/Permissions.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,SAASA,WAAW,QAAQ,wBAAwB;AACpD,OAAO,KAAKC,OAAO,MAAM,gBAAgB;AACzC,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,KAAK,MAAM,cAAc;AAErC;;;;AAIA,OAAO,MAAMC,MAAM,gBAAkBC,MAAM,CAACC,GAAG,CAAC,sCAAsC,CAAC;AA+BvF;;;;AAIA,OAAO,MAAMC,WAAW,gBAAkBF,MAAM,CAACC,GAAG,CAAC,uDAAuD,CAAC;AAQ7G;;;;AAIA,OAAM,MAAOE,gBAAiB,sBAAQR,WAAW,CAACO,WAAW,EAAE,kBAAkB,CAI/E;EACA,IAAIE,OAAOA,CAAA;IACT,OAAO,IAAI,CAACC,MAAM;EACpB;;AAGF;;;;AAIA,OAAO,MAAMC,WAAW,gBAA0CV,OAAO,CAACW,UAAU,CAClF,sCAAsC,CACvC;AAED;;;;;;AAMA,OAAO,MAAMC,KAAK,gBAA6BV,KAAK,CAACW,OAAO,CAC1DH,WAAW,eACXA,WAAW,CAACI,EAAE,CAAC;EACb,CAACX,MAAM,GAAGA,MAAM;EAChBY,KAAK,EAAGC,IAAI,IACVf,MAAM,CAACgB,UAAU,CAAC;IAChBC,GAAG,EAAEA,CAAA,KAAMC,SAAS,CAACC,WAAW,CAACL,KAAK,CAAC;MAAEC;IAAI,CAAE,CAAiB;IAChEK,KAAK,EAAGC,KAAK,IACX,IAAIf,gBAAgB,CAAC;MACnBE,MAAM,EAAEa,KAAK,YAAYC,YAAY,GAAG,mBAAmB,GAAG,WAAW;MACzED;KACD;GACJ;CACJ,CAAC,CACH","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","names":["BrowserHttpClient","BrowserKeyValueStore","BrowserRuntime","BrowserSocket","BrowserStream","BrowserWorker","BrowserWorkerRunner","Clipboard","Geolocation","Permissions"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,OAAO,KAAKA,iBAAiB,MAAM,wBAAwB;AAE3D;;;AAGA,OAAO,KAAKC,oBAAoB,MAAM,2BAA2B;AAEjE;;;AAGA,OAAO,KAAKC,cAAc,MAAM,qBAAqB;AAErD;;;AAGA,OAAO,KAAKC,aAAa,MAAM,oBAAoB;AAEnD;;;AAGA,OAAO,KAAKC,aAAa,MAAM,oBAAoB;AAEnD;;;AAGA,OAAO,KAAKC,aAAa,MAAM,oBAAoB;AAEnD;;;AAGA,OAAO,KAAKC,mBAAmB,MAAM,0BAA0B;AAE/D;;;AAGA,OAAO,KAAKC,SAAS,MAAM,gBAAgB;AAE3C;;;AAGA,OAAO,KAAKC,WAAW,MAAM,kBAAkB;AAE/C;;;AAGA,OAAO,KAAKC,WAAW,MAAM,kBAAkB","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"httpClient.js","names":["Cookies","Headers","Client","Error","ClientResponse","IncomingMessage","UrlParams","Context","Effect","FiberRef","globalValue","Inspectable","Option","Stream","HeaderParser","xhrTagKey","xhrTag","GenericTag","currentXHRResponseType","unsafeMake","withXHRArrayBuffer","effect","locally","makeXhr","XMLHttpRequest","makeXMLHttpRequest","make","request","url","signal","fiber","suspend","xhr","getOrElse","getFiberRef","currentContext","addEventListener","abort","onreadystatechange","once","open","method","toString","responseType","Object","entries","headers","forEach","k","v","setRequestHeader","zipRight","sendBody","async","resume","sent","onChange","readyState","succeed","ClientResponseImpl","onerror","_event","fail","RequestError","reason","cause","statusText","void","body","_tag","sync","send","formData","matchEffect","runFold","stream","Uint8Array","acc","chunk","next","length","set","onFailure","onSuccess","encoder","TextEncoder","IncomingMessageImpl","Class","source","onError","TypeId","constructor","_rawHeaderString","getAllResponseHeaders","_rawHeaders","_headers","empty","parser","result","encode","undefined","parsed","fromInput","cachedCookies","cookies","fromSetCookie","remoteAddress","none","_textEffect","text","responseText","onReadyStateChange","removeEventListener","pipe","cached","runSync","json","tryMap","try","_","JSON","parse","catch","urlParamsBody","flatMap","URLSearchParams","emit","offset","single","slice","end","_arrayBufferEffect","arrayBuffer","response","map","arr","byteLength","buffer","byteOffset","ResponseError","status","die","toJSON","inspect","_id","layerXMLHttpRequest","layerMergedContext"],"sources":["../../../src/internal/httpClient.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAO,KAAKA,OAAO,MAAM,0BAA0B;AACnD,OAAO,KAAKC,OAAO,MAAM,0BAA0B;AACnD,OAAO,KAAKC,MAAM,MAAM,6BAA6B;AACrD,OAAO,KAAKC,KAAK,MAAM,kCAAkC;AAEzD,OAAO,KAAKC,cAAc,MAAM,qCAAqC;AACrE,OAAO,KAAKC,eAAe,MAAM,sCAAsC;AACvE,OAAO,KAAKC,SAAS,MAAM,4BAA4B;AACvD,OAAO,KAAKC,OAAO,MAAM,gBAAgB;AACzC,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,QAAQ,MAAM,iBAAiB;AAE3C,SAASC,WAAW,QAAQ,oBAAoB;AAChD,OAAO,KAAKC,WAAW,MAAM,oBAAoB;AACjD,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,YAAY,MAAM,0BAA0B;AAExD;AACA,OAAO,MAAMC,SAAS,GAAG,2DAA2D;AAEpF,MAAMC,MAAM,gBAAGT,OAAO,CAACU,UAAU,CAA0BF,SAAS,CAAC;AAErE;AACA,OAAO,MAAMG,sBAAsB,gBAAGR,WAAW,CAC/C,mEAAmE,EACnE,MAAMD,QAAQ,CAACU,UAAU,CAAyB,MAAM,CAAC,CAC1D;AAED;AACA,OAAO,MAAMC,kBAAkB,GAAaC,MAA8B,IACxEb,MAAM,CAACc,OAAO,CACZD,MAAM,EACNH,sBAAsB,EACtB,aAAa,CACd;AAEH,MAAMK,OAAO,GAAGA,CAAA,KAAM,IAAIC,cAAc,EAAE;AAE1C,MAAMC,kBAAkB,gBAAGvB,MAAM,CAACwB,IAAI,CAAC,CAACC,OAAO,EAAEC,GAAG,EAAEC,MAAM,EAAEC,KAAK,KACjEtB,MAAM,CAACuB,OAAO,CAAC,MAAK;EAClB,MAAMC,GAAG,GAAGzB,OAAO,CAAC0B,SAAS,CAC3BH,KAAK,CAACI,WAAW,CAACzB,QAAQ,CAAC0B,cAAc,CAAC,EAC1CnB,MAAM,EACN,MAAMO,OAAO,CACd,EAAE;EACHM,MAAM,CAACO,gBAAgB,CAAC,OAAO,EAAE,MAAK;IACpCJ,GAAG,CAACK,KAAK,EAAE;IACXL,GAAG,CAACM,kBAAkB,GAAG,IAAI;EAC/B,CAAC,EAAE;IAAEC,IAAI,EAAE;EAAI,CAAE,CAAC;EAClBP,GAAG,CAACQ,IAAI,CAACb,OAAO,CAACc,MAAM,EAAEb,GAAG,CAACc,QAAQ,EAAE,EAAE,IAAI,CAAC;EAC9CV,GAAG,CAACW,YAAY,GAAGb,KAAK,CAACI,WAAW,CAAChB,sBAAsB,CAAC;EAC5D0B,MAAM,CAACC,OAAO,CAAClB,OAAO,CAACmB,OAAO,CAAC,CAACC,OAAO,CAAC,CAAC,CAACC,CAAC,EAAEC,CAAC,CAAC,KAAI;IACjDjB,GAAG,CAACkB,gBAAgB,CAACF,CAAC,EAAEC,CAAC,CAAC;EAC5B,CAAC,CAAC;EACF,OAAOzC,MAAM,CAAC2C,QAAQ,CACpBC,QAAQ,CAACpB,GAAG,EAAEL,OAAO,CAAC,EACtBnB,MAAM,CAAC6C,KAAK,CAA0CC,MAAM,IAAI;IAC9D,IAAIC,IAAI,GAAG,KAAK;IAChB,MAAMC,QAAQ,GAAGA,CAAA,KAAK;MACpB,IAAI,CAACD,IAAI,IAAIvB,GAAG,CAACyB,UAAU,IAAI,CAAC,EAAE;QAChCF,IAAI,GAAG,IAAI;QACXD,MAAM,CAAC9C,MAAM,CAACkD,OAAO,CAAC,IAAIC,kBAAkB,CAAChC,OAAO,EAAEK,GAAG,CAAC,CAAC,CAAC;MAC9D;IACF,CAAC;IACDA,GAAG,CAACM,kBAAkB,GAAGkB,QAAQ;IACjCxB,GAAG,CAAC4B,OAAO,GAAIC,MAAM,IAAI;MACvBP,MAAM,CAAC9C,MAAM,CAACsD,IAAI,CAChB,IAAI3D,KAAK,CAAC4D,YAAY,CAAC;QACrBpC,OAAO;QACPqC,MAAM,EAAE,WAAW;QACnBC,KAAK,EAAEjC,GAAG,CAACkC;OACZ,CAAC,CACH,CAAC;IACJ,CAAC;IACDV,QAAQ,EAAE;IACV,OAAOhD,MAAM,CAAC2D,IAAI;EACpB,CAAC,CAAC,CACH;AACH,CAAC,CAAC,CACH;AAED,MAAMf,QAAQ,GAAGA,CACfpB,GAAmB,EACnBL,OAAwC,KACG;EAC3C,MAAMyC,IAAI,GAAGzC,OAAO,CAACyC,IAAI;EACzB,QAAQA,IAAI,CAACC,IAAI;IACf,KAAK,OAAO;MACV,OAAO7D,MAAM,CAAC8D,IAAI,CAAC,MAAMtC,GAAG,CAACuC,IAAI,EAAE,CAAC;IACtC,KAAK,KAAK;MACR,OAAO/D,MAAM,CAAC8D,IAAI,CAAC,MAAMtC,GAAG,CAACuC,IAAI,CAACH,IAAI,CAACA,IAAW,CAAC,CAAC;IACtD,KAAK,YAAY;MACf,OAAO5D,MAAM,CAAC8D,IAAI,CAAC,MAAMtC,GAAG,CAACuC,IAAI,CAACH,IAAI,CAACA,IAAI,CAAC,CAAC;IAC/C,KAAK,UAAU;MACb,OAAO5D,MAAM,CAAC8D,IAAI,CAAC,MAAMtC,GAAG,CAACuC,IAAI,CAACH,IAAI,CAACI,QAAQ,CAAC,CAAC;IACnD,KAAK,QAAQ;MACX,OAAOhE,MAAM,CAACiE,WAAW,CACvB5D,MAAM,CAAC6D,OAAO,CAACN,IAAI,CAACO,MAAM,EAAE,IAAIC,UAAU,CAAC,CAAC,CAAC,EAAE,CAACC,GAAG,EAAEC,KAAK,KAAI;QAC5D,MAAMC,IAAI,GAAG,IAAIH,UAAU,CAACC,GAAG,CAACG,MAAM,GAAGF,KAAK,CAACE,MAAM,CAAC;QACtDD,IAAI,CAACE,GAAG,CAACJ,GAAG,EAAE,CAAC,CAAC;QAChBE,IAAI,CAACE,GAAG,CAACH,KAAK,EAAED,GAAG,CAACG,MAAM,CAAC;QAC3B,OAAOD,IAAI;MACb,CAAC,CAAC,EACF;QACEG,SAAS,EAAGjB,KAAK,IACfzD,MAAM,CAACsD,IAAI,CACT,IAAI3D,KAAK,CAAC4D,YAAY,CAAC;UACrBpC,OAAO;UACPqC,MAAM,EAAE,QAAQ;UAChBC;SACD,CAAC,CACH;QACHkB,SAAS,EAAGf,IAAI,IAAK5D,MAAM,CAAC8D,IAAI,CAAC,MAAMtC,GAAG,CAACuC,IAAI,CAACH,IAAI,CAAC;OACtD,CACF;EACL;AACF,CAAC;AAED,MAAMgB,OAAO,gBAAG,IAAIC,WAAW,EAAE;AAEjC;AACA,OAAM,MAAgBC,mBAAuB,SAAQ3E,WAAW,CAAC4E,KAAK;EAMzDC,MAAA;EACAC,OAAA;EAJF,CAACpF,eAAe,CAACqF,MAAM;EAEhCC,YACWH,MAAsB,EACtBC,OAA8B;IAEvC,KAAK,EAAE;IAHE,KAAAD,MAAM,GAANA,MAAM;IACN,KAAAC,OAAO,GAAPA,OAAO;IAGhB,IAAI,CAACpF,eAAe,CAACqF,MAAM,CAAC,GAAGrF,eAAe,CAACqF,MAAM;IACrD,IAAI,CAACE,gBAAgB,GAAGJ,MAAM,CAACK,qBAAqB,EAAE;EACxD;EAEQD,gBAAgB;EAChBE,WAAW;EACXC,QAAQ;EAChB,IAAIjD,OAAOA,CAAA;IACT,IAAI,IAAI,CAACiD,QAAQ,EAAE;MACjB,OAAO,IAAI,CAACA,QAAQ;IACtB;IACA,IAAI,IAAI,CAACH,gBAAgB,KAAK,EAAE,EAAE;MAChC,OAAO,IAAI,CAACG,QAAQ,GAAG9F,OAAO,CAAC+F,KAAK;IACtC;IACA,MAAMC,MAAM,GAAGnF,YAAY,CAACY,IAAI,EAAE;IAClC,MAAMwE,MAAM,GAAGD,MAAM,CAACb,OAAO,CAACe,MAAM,CAAC,IAAI,CAACP,gBAAgB,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;IACxE,IAAI,CAACE,WAAW,GAAGI,MAAM,CAAC7B,IAAI,KAAK,SAAS,GAAG6B,MAAM,CAACpD,OAAO,GAAGsD,SAAS;IACzE,MAAMC,MAAM,GAAGH,MAAM,CAAC7B,IAAI,KAAK,SAAS,GAAGpE,OAAO,CAACqG,SAAS,CAACJ,MAAM,CAACpD,OAAO,CAAC,GAAG7C,OAAO,CAAC+F,KAAK;IAC5F,OAAO,IAAI,CAACD,QAAQ,GAAGM,MAAM;EAC/B;EAEAE,aAAa;EACb,IAAIC,OAAOA,CAAA;IACT,IAAI,IAAI,CAACD,aAAa,EAAE;MACtB,OAAO,IAAI,CAACA,aAAa;IAC3B;IACA,IAAI,IAAI,CAACT,WAAW,KAAKM,SAAS,EAAE;MAClC,OAAOpG,OAAO,CAACgG,KAAK;IACtB,CAAC,MAAM,IAAI,IAAI,CAACF,WAAW,CAAC,YAAY,CAAC,KAAKM,SAAS,EAAE;MACvD,OAAO,IAAI,CAACG,aAAa,GAAGvG,OAAO,CAACgG,KAAK;IAC3C;IACA,OAAO,IAAI,CAACO,aAAa,GAAGvG,OAAO,CAACyG,aAAa,CAAC,IAAI,CAACX,WAAW,CAAC,YAAY,CAAC,CAAC;EACnF;EAEA,IAAIY,aAAaA,CAAA;IACf,OAAO9F,MAAM,CAAC+F,IAAI,EAAE;EACtB;EAEAC,WAAW;EACX,IAAIC,IAAIA,CAAA;IACN,IAAI,IAAI,CAACD,WAAW,EAAE;MACpB,OAAO,IAAI,CAACA,WAAW;IACzB;IACA,OAAO,IAAI,CAACA,WAAW,GAAGpG,MAAM,CAAC6C,KAAK,CAAaC,MAAM,IAAI;MAC3D,IAAI,IAAI,CAACkC,MAAM,CAAC/B,UAAU,KAAK,CAAC,EAAE;QAChCH,MAAM,CAAC9C,MAAM,CAACkD,OAAO,CAAC,IAAI,CAAC8B,MAAM,CAACsB,YAAY,CAAC,CAAC;QAChD;MACF;MAEA,MAAMC,kBAAkB,GAAGA,CAAA,KAAK;QAC9B,IAAI,IAAI,CAACvB,MAAM,CAAC/B,UAAU,KAAK,CAAC,EAAE;UAChCH,MAAM,CAAC9C,MAAM,CAACkD,OAAO,CAAC,IAAI,CAAC8B,MAAM,CAACsB,YAAY,CAAC,CAAC;QAClD;MACF,CAAC;MACD,MAAMrB,OAAO,GAAGA,CAAA,KAAK;QACnBnC,MAAM,CAAC9C,MAAM,CAACsD,IAAI,CAAC,IAAI,CAAC2B,OAAO,CAAC,IAAI,CAACD,MAAM,CAACtB,UAAU,CAAC,CAAC,CAAC;MAC3D,CAAC;MACD,IAAI,CAACsB,MAAM,CAACpD,gBAAgB,CAAC,kBAAkB,EAAE2E,kBAAkB,CAAC;MACpE,IAAI,CAACvB,MAAM,CAACpD,gBAAgB,CAAC,OAAO,EAAEqD,OAAO,CAAC;MAC9C,OAAOjF,MAAM,CAAC8D,IAAI,CAAC,MAAK;QACtB,IAAI,CAACkB,MAAM,CAACwB,mBAAmB,CAAC,kBAAkB,EAAED,kBAAkB,CAAC;QACvE,IAAI,CAACvB,MAAM,CAACwB,mBAAmB,CAAC,OAAO,EAAEvB,OAAO,CAAC;MACnD,CAAC,CAAC;IACJ,CAAC,CAAC,CAACwB,IAAI,CACLzG,MAAM,CAAC0G,MAAM,EACb1G,MAAM,CAAC2G,OAAO,CACf;EACH;EAEA,IAAIC,IAAIA,CAAA;IACN,OAAO5G,MAAM,CAAC6G,MAAM,CAAC,IAAI,CAACR,IAAI,EAAE;MAC9BS,GAAG,EAAGC,CAAC,IAAKA,CAAC,KAAK,EAAE,GAAG,IAAI,GAAGC,IAAI,CAACC,KAAK,CAACF,CAAC,CAAY;MACtDG,KAAK,EAAE,IAAI,CAACjC;KACb,CAAC;EACJ;EAEA,IAAIkC,aAAaA,CAAA;IACf,OAAOnH,MAAM,CAACoH,OAAO,CAAC,IAAI,CAACf,IAAI,EAAGU,CAAC,IACjC/G,MAAM,CAAC8G,GAAG,CAAC;MACTA,GAAG,EAAEA,CAAA,KAAMhH,SAAS,CAACgG,SAAS,CAAC,IAAIuB,eAAe,CAACN,CAAC,CAAC,CAAC;MACtDG,KAAK,EAAE,IAAI,CAACjC;KACb,CAAC,CAAC;EACP;EAEA,IAAId,MAAMA,CAAA;IACR,OAAO9D,MAAM,CAACwC,KAAK,CAAiByE,IAAI,IAAI;MAC1C,IAAIC,MAAM,GAAG,CAAC;MACd,MAAMhB,kBAAkB,GAAGA,CAAA,KAAK;QAC9B,IAAI,IAAI,CAACvB,MAAM,CAAC/B,UAAU,KAAK,CAAC,EAAE;UAChCqE,IAAI,CAACE,MAAM,CAAC5C,OAAO,CAACe,MAAM,CAAC,IAAI,CAACX,MAAM,CAACsB,YAAY,CAACmB,KAAK,CAACF,MAAM,CAAC,CAAC,CAAC;UACnEA,MAAM,GAAG,IAAI,CAACvC,MAAM,CAACsB,YAAY,CAAC9B,MAAM;QAC1C,CAAC,MAAM,IAAI,IAAI,CAACQ,MAAM,CAAC/B,UAAU,KAAK,CAAC,EAAE;UACvC,IAAIsE,MAAM,GAAG,IAAI,CAACvC,MAAM,CAACsB,YAAY,CAAC9B,MAAM,EAAE;YAC5C8C,IAAI,CAACE,MAAM,CAAC5C,OAAO,CAACe,MAAM,CAAC,IAAI,CAACX,MAAM,CAACsB,YAAY,CAACmB,KAAK,CAACF,MAAM,CAAC,CAAC,CAAC;UACrE;UACAD,IAAI,CAACI,GAAG,EAAE;QACZ;MACF,CAAC;MACD,MAAMzC,OAAO,GAAGA,CAAA,KAAK;QACnBqC,IAAI,CAAChE,IAAI,CAAC,IAAI,CAAC2B,OAAO,CAAC,IAAI,CAACD,MAAM,CAACtB,UAAU,CAAC,CAAC;MACjD,CAAC;MACD,IAAI,CAACsB,MAAM,CAACpD,gBAAgB,CAAC,kBAAkB,EAAE2E,kBAAkB,CAAC;MACpE,IAAI,CAACvB,MAAM,CAACpD,gBAAgB,CAAC,OAAO,EAAEqD,OAAO,CAAC;MAC9CsB,kBAAkB,EAAE;MACpB,OAAOvG,MAAM,CAAC8D,IAAI,CAAC,MAAK;QACtB,IAAI,CAACkB,MAAM,CAACwB,mBAAmB,CAAC,kBAAkB,EAAED,kBAAkB,CAAC;QACvE,IAAI,CAACvB,MAAM,CAACwB,mBAAmB,CAAC,OAAO,EAAEvB,OAAO,CAAC;MACnD,CAAC,CAAC;IACJ,CAAC,CAAC;EACJ;EAEA0C,kBAAkB;EAClB,IAAIC,WAAWA,CAAA;IACb,IAAI,IAAI,CAACD,kBAAkB,EAAE;MAC3B,OAAO,IAAI,CAACA,kBAAkB;IAChC;IACA,OAAO,IAAI,CAACA,kBAAkB,GAAG3H,MAAM,CAAC6C,KAAK,CAAkBC,MAAM,IAAI;MACvE,IAAI,IAAI,CAACkC,MAAM,CAAC/B,UAAU,KAAK,CAAC,EAAE;QAChCH,MAAM,CAAC9C,MAAM,CAACkD,OAAO,CAAC,IAAI,CAAC8B,MAAM,CAAC6C,QAAQ,CAAC,CAAC;QAC5C;MACF;MAEA,MAAMtB,kBAAkB,GAAGA,CAAA,KAAK;QAC9B,IAAI,IAAI,CAACvB,MAAM,CAAC/B,UAAU,KAAK,CAAC,EAAE;UAChCH,MAAM,CAAC9C,MAAM,CAACkD,OAAO,CAAC,IAAI,CAAC8B,MAAM,CAAC6C,QAAQ,CAAC,CAAC;QAC9C;MACF,CAAC;MACD,MAAM5C,OAAO,GAAGA,CAAA,KAAK;QACnBnC,MAAM,CAAC9C,MAAM,CAACsD,IAAI,CAAC,IAAI,CAAC2B,OAAO,CAAC,IAAI,CAACD,MAAM,CAACtB,UAAU,CAAC,CAAC,CAAC;MAC3D,CAAC;MACD,IAAI,CAACsB,MAAM,CAACpD,gBAAgB,CAAC,kBAAkB,EAAE2E,kBAAkB,CAAC;MACpE,IAAI,CAACvB,MAAM,CAACpD,gBAAgB,CAAC,OAAO,EAAEqD,OAAO,CAAC;MAC9C,OAAOjF,MAAM,CAAC8D,IAAI,CAAC,MAAK;QACtB,IAAI,CAACkB,MAAM,CAACwB,mBAAmB,CAAC,kBAAkB,EAAED,kBAAkB,CAAC;QACvE,IAAI,CAACvB,MAAM,CAACwB,mBAAmB,CAAC,OAAO,EAAEvB,OAAO,CAAC;MACnD,CAAC,CAAC;IACJ,CAAC,CAAC,CAACwB,IAAI,CACLzG,MAAM,CAAC8H,GAAG,CAAED,QAAQ,IAAI;MACtB,IAAI,OAAOA,QAAQ,KAAK,QAAQ,EAAE;QAChC,MAAME,GAAG,GAAGnD,OAAO,CAACe,MAAM,CAACkC,QAAQ,CAAC;QACpC,OAAOE,GAAG,CAACC,UAAU,KAAKD,GAAG,CAACE,MAAM,CAACD,UAAU,GAC3CD,GAAG,CAACE,MAAM,CAACR,KAAK,CAACM,GAAG,CAACG,UAAU,EAAEH,GAAG,CAACG,UAAU,GAAGH,GAAG,CAACC,UAAU,CAAC,GACjED,GAAG,CAACE,MAAM;MAChB;MACA,OAAOJ,QAAQ;IACjB,CAAC,CAAC,EACF7H,MAAM,CAAC0G,MAAM,EACb1G,MAAM,CAAC2G,OAAO,CACf;EACH;;AAGF,MAAMxD,kBAAmB,SAAQ2B,mBAAwC;EAI5D3D,OAAA;EAHF,CAACvB,cAAc,CAACsF,MAAM;EAE/BC,YACWhE,OAAwC,EACjD6D,MAAsB;IAEtB,KAAK,CAACA,MAAM,EAAGvB,KAAK,IAClB,IAAI9D,KAAK,CAACwI,aAAa,CAAC;MACtBhH,OAAO;MACP0G,QAAQ,EAAE,IAAI;MACdrE,MAAM,EAAE,QAAQ;MAChBC;KACD,CAAC,CAAC;IATI,KAAAtC,OAAO,GAAPA,OAAO;IAUhB,IAAI,CAACvB,cAAc,CAACsF,MAAM,CAAC,GAAGtF,cAAc,CAACsF,MAAM;EACrD;EAEA,IAAIkD,MAAMA,CAAA;IACR,OAAO,IAAI,CAACpD,MAAM,CAACoD,MAAM;EAC3B;EAEA,IAAIpE,QAAQA,CAAA;IACV,OAAOhE,MAAM,CAACqI,GAAG,CAAC,iBAAiB,CAAC;EACtC;EAEAnG,QAAQA,CAAA;IACN,OAAO,kBAAkB,IAAI,CAACkG,MAAM,GAAG;EACzC;EAEAE,MAAMA,CAAA;IACJ,OAAOzI,eAAe,CAAC0I,OAAO,CAAC,IAAI,EAAE;MACnCC,GAAG,EAAE,qCAAqC;MAC1CrH,OAAO,EAAE,IAAI,CAACA,OAAO,CAACmH,MAAM,EAAE;MAC9BF,MAAM,EAAE,IAAI,CAACA;KACd,CAAC;EACJ;;AAGF;AACA,OAAO,MAAMK,mBAAmB,gBAAG/I,MAAM,CAACgJ,kBAAkB,cAAC1I,MAAM,CAACkD,OAAO,CAACjC,kBAAkB,CAAC,CAAC","ignoreList":[]}
@@ -1,6 +0,0 @@
1
- import * as KeyValueStore from "@effect/platform/KeyValueStore";
2
- /** @internal */
3
- export const layerSessionStorage = /*#__PURE__*/KeyValueStore.layerStorage(() => sessionStorage);
4
- /** @internal */
5
- export const layerLocalStorage = /*#__PURE__*/KeyValueStore.layerStorage(() => localStorage);
6
- //# sourceMappingURL=keyValueStore.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"keyValueStore.js","names":["KeyValueStore","layerSessionStorage","layerStorage","sessionStorage","layerLocalStorage","localStorage"],"sources":["../../../src/internal/keyValueStore.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAO,KAAKA,aAAa,MAAM,gCAAgC;AAE/D;AACA,OAAO,MAAMC,mBAAmB,gBAAGD,aAAa,CAACE,YAAY,CAAC,MAAMC,cAAc,CAAC;AAEnF;AACA,OAAO,MAAMC,iBAAiB,gBAAGJ,aAAa,CAACE,YAAY,CAAC,MAAMG,YAAY,CAAC","ignoreList":[]}
@@ -1,10 +0,0 @@
1
- import { makeRunMain } from "@effect/platform/Runtime";
2
- /** @internal */
3
- export const runMain = /*#__PURE__*/makeRunMain(({
4
- fiber
5
- }) => {
6
- addEventListener("beforeunload", () => {
7
- fiber.unsafeInterruptAsFork(fiber.id());
8
- });
9
- });
10
- //# sourceMappingURL=runtime.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"runtime.js","names":["makeRunMain","runMain","fiber","addEventListener","unsafeInterruptAsFork","id"],"sources":["../../../src/internal/runtime.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,WAAW,QAAQ,0BAA0B;AAEtD;AACA,OAAO,MAAMC,OAAO,gBAAGD,WAAW,CAAC,CAAC;EAAEE;AAAK,CAAE,KAAI;EAC/CC,gBAAgB,CAAC,cAAc,EAAE,MAAK;IACpCD,KAAK,CAACE,qBAAqB,CAACF,KAAK,CAACG,EAAE,EAAE,CAAC;EACzC,CAAC,CAAC;AACJ,CAAC,CAAC","ignoreList":[]}
@@ -1,9 +0,0 @@
1
- /**
2
- * @since 1.0.0
3
- */
4
- import * as Stream from "effect/Stream";
5
- /** @internal */
6
- export const fromEventListenerWindow = (type, options) => Stream.fromEventListener(window, type, options);
7
- /** @internal */
8
- export const fromEventListenerDocument = (type, options) => Stream.fromEventListener(document, type, options);
9
- //# sourceMappingURL=stream.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stream.js","names":["Stream","fromEventListenerWindow","type","options","fromEventListener","window","fromEventListenerDocument","document"],"sources":["../../../src/internal/stream.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAIA,OAAO,KAAKA,MAAM,MAAM,eAAe;AAEvC;AACA,OAAO,MAAMC,uBAAuB,GAAGA,CACrCC,IAAO,EACPC,OAKa,KACVH,MAAM,CAACI,iBAAiB,CAAoBC,MAAM,EAAEH,IAAI,EAAEC,OAAO,CAAC;AAEvE;AACA,OAAO,MAAMG,yBAAyB,GAAGA,CACvCJ,IAAO,EACPC,OAKa,KACVH,MAAM,CAACI,iBAAiB,CAAsBG,QAAQ,EAAEL,IAAI,EAAEC,OAAO,CAAC","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"worker.js","names":["Worker","WorkerError","Deferred","Effect","Layer","Scope","platformWorkerImpl","makePlatform","setup","scope","worker","port","as","addFinalizer","sync","postMessage","listen","deferred","emit","onMessage","event","data","onError","unsafeDone","reason","cause","error","message","addEventListener","start","removeEventListener","layerWorker","succeed","PlatformWorker","layerManager","provide","layer","spawn","merge","layerSpawner","layerPlatform"],"sources":["../../../src/internal/worker.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAO,KAAKA,MAAM,MAAM,yBAAyB;AACjD,SAASC,WAAW,QAAQ,8BAA8B;AAC1D,OAAO,KAAKC,QAAQ,MAAM,iBAAiB;AAC3C,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,KAAK,MAAM,cAAc;AAErC,MAAMC,kBAAkB,gBAAGN,MAAM,CAACO,YAAY,EAA6D,CAAC;EAC1GC,KAAKA,CAAC;IAAEC,KAAK;IAAEC;EAAM,CAAE;IACrB,MAAMC,IAAI,GAAG,MAAM,IAAID,MAAM,GAAGA,MAAM,CAACC,IAAI,GAAGD,MAAM;IACpD,OAAOP,MAAM,CAACS,EAAE,CACdP,KAAK,CAACQ,YAAY,CAChBJ,KAAK,EACLN,MAAM,CAACW,IAAI,CAAC,MAAK;MACfH,IAAI,CAACI,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;IACvB,CAAC,CAAC,CACH,EACDJ,IAAI,CACL;EACH,CAAC;EACDK,MAAMA,CAAC;IAAEC,QAAQ;IAAEC,IAAI;IAAEP,IAAI;IAAEF;EAAK,CAAE;IACpC,SAASU,SAASA,CAACC,KAAmB;MACpCF,IAAI,CAACE,KAAK,CAACC,IAAI,CAAC;IAClB;IACA,SAASC,OAAOA,CAACF,KAAiB;MAChClB,QAAQ,CAACqB,UAAU,CACjBN,QAAQ,EACR,IAAIhB,WAAW,CAAC;QAAEuB,MAAM,EAAE,SAAS;QAAEC,KAAK,EAAEL,KAAK,CAACM,KAAK,IAAIN,KAAK,CAACO;MAAO,CAAE,CAAC,CAC5E;IACH;IACAhB,IAAI,CAACiB,gBAAgB,CAAC,SAAS,EAAET,SAAgB,CAAC;IAClDR,IAAI,CAACiB,gBAAgB,CAAC,OAAO,EAAEN,OAAc,CAAC;IAC9C,IAAI,OAAO,IAAIX,IAAI,EAAE;MACnBA,IAAI,CAACkB,KAAK,EAAE;IACd;IACA,OAAOxB,KAAK,CAACQ,YAAY,CACvBJ,KAAK,EACLN,MAAM,CAACW,IAAI,CAAC,MAAK;MACfH,IAAI,CAACmB,mBAAmB,CAAC,SAAS,EAAEX,SAAgB,CAAC;MACrDR,IAAI,CAACmB,mBAAmB,CAAC,OAAO,EAAER,OAAc,CAAC;IACnD,CAAC,CAAC,CACH;EACH;CACD,CAAC;AAEF;AACA,OAAO,MAAMS,WAAW,gBAAG3B,KAAK,CAAC4B,OAAO,CAAChC,MAAM,CAACiC,cAAc,EAAE3B,kBAAkB,CAAC;AAEnF;AACA,OAAO,MAAM4B,YAAY,gBAAG9B,KAAK,CAAC+B,OAAO,CAACnC,MAAM,CAACkC,YAAY,EAAEH,WAAW,CAAC;AAE3E;AACA,OAAO,MAAMK,KAAK,GAAIC,KAAgF,IACpGjC,KAAK,CAACkC,KAAK,CAACJ,YAAY,EAAElC,MAAM,CAACuC,YAAY,CAACF,KAAK,CAAC,CAAC;AAEvD;AACA,OAAO,MAAMG,aAAa,GAAIH,KAAgF,IAC5GjC,KAAK,CAACkC,KAAK,CAACP,WAAW,EAAE/B,MAAM,CAACuC,YAAY,CAACF,KAAK,CAAC,CAAC","ignoreList":[]}
@@ -1,135 +0,0 @@
1
- import { WorkerError } from "@effect/platform/WorkerError";
2
- import * as Runner from "@effect/platform/WorkerRunner";
3
- import * as Cause from "effect/Cause";
4
- import * as Context from "effect/Context";
5
- import * as Deferred from "effect/Deferred";
6
- import * as Effect from "effect/Effect";
7
- import * as ExecStrategy from "effect/ExecutionStrategy";
8
- import * as Exit from "effect/Exit";
9
- import * as FiberSet from "effect/FiberSet";
10
- import { identity } from "effect/Function";
11
- import { globalValue } from "effect/GlobalValue";
12
- import * as Layer from "effect/Layer";
13
- import * as Mailbox from "effect/Mailbox";
14
- import * as Runtime from "effect/Runtime";
15
- import * as Scope from "effect/Scope";
16
- const cachedPorts = /*#__PURE__*/globalValue("@effect/platform-browser/Worker/cachedPorts", () => new Set());
17
- function globalHandleConnect(event) {
18
- cachedPorts.add(event.ports[0]);
19
- }
20
- if (typeof self !== "undefined" && "onconnect" in self) {
21
- self.onconnect = globalHandleConnect;
22
- }
23
- /** @internal */
24
- export const make = self => Runner.PlatformRunner.of({
25
- [Runner.PlatformRunnerTypeId]: Runner.PlatformRunnerTypeId,
26
- start: Effect.fnUntraced(function* (closeLatch) {
27
- const disconnects = yield* Mailbox.make();
28
- let currentPortId = 0;
29
- const ports = new Map();
30
- const send = (portId, message, transfer) => Effect.sync(() => {
31
- ;
32
- (ports.get(portId)?.[0] ?? self).postMessage([1, message], {
33
- transfer: transfer
34
- });
35
- });
36
- const run = Effect.fnUntraced(function* (handler) {
37
- const scope = yield* Effect.scope;
38
- const runtime = (yield* Effect.interruptible(Effect.runtime())).pipe(Runtime.updateContext(Context.omit(Scope.Scope)));
39
- const fiberSet = yield* FiberSet.make();
40
- const runFork = Runtime.runFork(runtime);
41
- function onExit(exit) {
42
- if (exit._tag === "Failure" && !Cause.isInterruptedOnly(exit.cause)) {
43
- Deferred.unsafeDone(closeLatch, Exit.die(Cause.squash(exit.cause)));
44
- }
45
- }
46
- function onMessage(portId) {
47
- return function (event) {
48
- const message = event.data;
49
- if (message[0] === 0) {
50
- const result = handler(portId, message[1]);
51
- if (Effect.isEffect(result)) {
52
- const fiber = runFork(result);
53
- fiber.addObserver(onExit);
54
- FiberSet.unsafeAdd(fiberSet, fiber);
55
- }
56
- } else {
57
- const port = ports.get(portId);
58
- if (!port) {
59
- return;
60
- } else if (ports.size === 1) {
61
- // let the last port close with the outer scope
62
- return Deferred.unsafeDone(closeLatch, Exit.void);
63
- }
64
- ports.delete(portId);
65
- Effect.runFork(Scope.close(port[1], Exit.void));
66
- }
67
- };
68
- }
69
- function onMessageError(error) {
70
- Deferred.unsafeDone(closeLatch, new WorkerError({
71
- reason: "decode",
72
- cause: error.data
73
- }));
74
- }
75
- function onError(error) {
76
- Deferred.unsafeDone(closeLatch, new WorkerError({
77
- reason: "unknown",
78
- cause: error.data
79
- }));
80
- }
81
- function handlePort(port) {
82
- const fiber = Scope.fork(scope, ExecStrategy.sequential).pipe(Effect.flatMap(scope => {
83
- const portId = currentPortId++;
84
- ports.set(portId, [port, scope]);
85
- const onMsg = onMessage(portId);
86
- port.addEventListener("message", onMsg);
87
- port.addEventListener("messageerror", onMessageError);
88
- if ("start" in port) {
89
- port.start();
90
- }
91
- port.postMessage([0]);
92
- return Scope.addFinalizer(scope, Effect.sync(() => {
93
- port.removeEventListener("message", onMsg);
94
- port.removeEventListener("messageerror", onError);
95
- port.close();
96
- }));
97
- }), runFork);
98
- fiber.addObserver(onExit);
99
- FiberSet.unsafeAdd(fiberSet, fiber);
100
- }
101
- self.addEventListener("error", onError);
102
- let prevOnConnect;
103
- if ("onconnect" in self) {
104
- prevOnConnect = self.onconnect;
105
- self.onconnect = function (event) {
106
- const port = event.ports[0];
107
- handlePort(port);
108
- };
109
- for (const port of cachedPorts) {
110
- handlePort(port);
111
- }
112
- cachedPorts.clear();
113
- yield* Scope.addFinalizer(scope, Effect.sync(() => self.close()));
114
- } else {
115
- handlePort(self);
116
- }
117
- yield* Scope.addFinalizer(scope, Effect.sync(() => {
118
- self.removeEventListener("error", onError);
119
- if ("onconnect" in self) {
120
- self.onconnect = prevOnConnect;
121
- }
122
- }));
123
- });
124
- return identity({
125
- run,
126
- send,
127
- disconnects
128
- });
129
- })
130
- });
131
- /** @internal */
132
- export const layerMessagePort = port => Layer.succeed(Runner.PlatformRunner, make(port));
133
- /** @internal */
134
- export const layer = /*#__PURE__*/Layer.sync(Runner.PlatformRunner, () => make(self));
135
- //# sourceMappingURL=workerRunner.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"workerRunner.js","names":["WorkerError","Runner","Cause","Context","Deferred","Effect","ExecStrategy","Exit","FiberSet","identity","globalValue","Layer","Mailbox","Runtime","Scope","cachedPorts","Set","globalHandleConnect","event","add","ports","self","onconnect","make","PlatformRunner","of","PlatformRunnerTypeId","start","fnUntraced","closeLatch","disconnects","currentPortId","Map","send","portId","message","transfer","sync","get","postMessage","run","handler","scope","runtime","interruptible","pipe","updateContext","omit","fiberSet","runFork","onExit","exit","_tag","isInterruptedOnly","cause","unsafeDone","die","squash","onMessage","data","result","isEffect","fiber","addObserver","unsafeAdd","port","size","void","delete","close","onMessageError","error","reason","onError","handlePort","fork","sequential","flatMap","set","onMsg","addEventListener","addFinalizer","removeEventListener","prevOnConnect","clear","layerMessagePort","succeed","layer"],"sources":["../../../src/internal/workerRunner.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,4 +0,0 @@
1
- {
2
- "type": "module",
3
- "sideEffects": []
4
- }
@@ -1,6 +0,0 @@
1
- {
2
- "sideEffects": [],
3
- "main": "../dist/cjs/index.js",
4
- "module": "../dist/esm/index.js",
5
- "types": "../dist/dts/index.d.ts"
6
- }
@@ -1,324 +0,0 @@
1
- import * as Cookies from "@effect/platform/Cookies"
2
- import * as Headers from "@effect/platform/Headers"
3
- import * as Client from "@effect/platform/HttpClient"
4
- import * as Error from "@effect/platform/HttpClientError"
5
- import type * as ClientRequest from "@effect/platform/HttpClientRequest"
6
- import * as ClientResponse from "@effect/platform/HttpClientResponse"
7
- import * as IncomingMessage from "@effect/platform/HttpIncomingMessage"
8
- import * as UrlParams from "@effect/platform/UrlParams"
9
- import * as Context from "effect/Context"
10
- import * as Effect from "effect/Effect"
11
- import * as FiberRef from "effect/FiberRef"
12
- import { type LazyArg } from "effect/Function"
13
- import { globalValue } from "effect/GlobalValue"
14
- import * as Inspectable from "effect/Inspectable"
15
- import * as Option from "effect/Option"
16
- import * as Stream from "effect/Stream"
17
- import * as HeaderParser from "multipasta/HeadersParser"
18
-
19
- /** @internal */
20
- export const xhrTagKey = "@effect/platform-browser/BrowserHttpClient/XMLHttpRequest"
21
-
22
- const xhrTag = Context.GenericTag<LazyArg<XMLHttpRequest>>(xhrTagKey)
23
-
24
- /** @internal */
25
- export const currentXHRResponseType = globalValue(
26
- "@effect/platform-browser/BrowserHttpClient/currentXHRResponseType",
27
- () => FiberRef.unsafeMake<"text" | "arraybuffer">("text")
28
- )
29
-
30
- /** @internal */
31
- export const withXHRArrayBuffer = <A, E, R>(effect: Effect.Effect<A, E, R>): Effect.Effect<A, E, R> =>
32
- Effect.locally(
33
- effect,
34
- currentXHRResponseType,
35
- "arraybuffer"
36
- )
37
-
38
- const makeXhr = () => new XMLHttpRequest()
39
-
40
- const makeXMLHttpRequest = Client.make((request, url, signal, fiber) =>
41
- Effect.suspend(() => {
42
- const xhr = Context.getOrElse(
43
- fiber.getFiberRef(FiberRef.currentContext),
44
- xhrTag,
45
- () => makeXhr
46
- )()
47
- signal.addEventListener("abort", () => {
48
- xhr.abort()
49
- xhr.onreadystatechange = null
50
- }, { once: true })
51
- xhr.open(request.method, url.toString(), true)
52
- xhr.responseType = fiber.getFiberRef(currentXHRResponseType)
53
- Object.entries(request.headers).forEach(([k, v]) => {
54
- xhr.setRequestHeader(k, v)
55
- })
56
- return Effect.zipRight(
57
- sendBody(xhr, request),
58
- Effect.async<ClientResponseImpl, Error.RequestError>((resume) => {
59
- let sent = false
60
- const onChange = () => {
61
- if (!sent && xhr.readyState >= 2) {
62
- sent = true
63
- resume(Effect.succeed(new ClientResponseImpl(request, xhr)))
64
- }
65
- }
66
- xhr.onreadystatechange = onChange
67
- xhr.onerror = (_event) => {
68
- resume(Effect.fail(
69
- new Error.RequestError({
70
- request,
71
- reason: "Transport",
72
- cause: xhr.statusText
73
- })
74
- ))
75
- }
76
- onChange()
77
- return Effect.void
78
- })
79
- )
80
- })
81
- )
82
-
83
- const sendBody = (
84
- xhr: XMLHttpRequest,
85
- request: ClientRequest.HttpClientRequest
86
- ): Effect.Effect<void, Error.RequestError> => {
87
- const body = request.body
88
- switch (body._tag) {
89
- case "Empty":
90
- return Effect.sync(() => xhr.send())
91
- case "Raw":
92
- return Effect.sync(() => xhr.send(body.body as any))
93
- case "Uint8Array":
94
- return Effect.sync(() => xhr.send(body.body))
95
- case "FormData":
96
- return Effect.sync(() => xhr.send(body.formData))
97
- case "Stream":
98
- return Effect.matchEffect(
99
- Stream.runFold(body.stream, new Uint8Array(0), (acc, chunk) => {
100
- const next = new Uint8Array(acc.length + chunk.length)
101
- next.set(acc, 0)
102
- next.set(chunk, acc.length)
103
- return next
104
- }),
105
- {
106
- onFailure: (cause) =>
107
- Effect.fail(
108
- new Error.RequestError({
109
- request,
110
- reason: "Encode",
111
- cause
112
- })
113
- ),
114
- onSuccess: (body) => Effect.sync(() => xhr.send(body))
115
- }
116
- )
117
- }
118
- }
119
-
120
- const encoder = new TextEncoder()
121
-
122
- /** @internal */
123
- export abstract class IncomingMessageImpl<E> extends Inspectable.Class
124
- implements IncomingMessage.HttpIncomingMessage<E>
125
- {
126
- readonly [IncomingMessage.TypeId]: IncomingMessage.TypeId
127
-
128
- constructor(
129
- readonly source: XMLHttpRequest,
130
- readonly onError: (error: unknown) => E
131
- ) {
132
- super()
133
- this[IncomingMessage.TypeId] = IncomingMessage.TypeId
134
- this._rawHeaderString = source.getAllResponseHeaders()
135
- }
136
-
137
- private _rawHeaderString: string
138
- private _rawHeaders: Record<string, string | Array<string>> | undefined
139
- private _headers: Headers.Headers | undefined
140
- get headers() {
141
- if (this._headers) {
142
- return this._headers
143
- }
144
- if (this._rawHeaderString === "") {
145
- return this._headers = Headers.empty
146
- }
147
- const parser = HeaderParser.make()
148
- const result = parser(encoder.encode(this._rawHeaderString + "\r\n"), 0)
149
- this._rawHeaders = result._tag === "Headers" ? result.headers : undefined
150
- const parsed = result._tag === "Headers" ? Headers.fromInput(result.headers) : Headers.empty
151
- return this._headers = parsed
152
- }
153
-
154
- cachedCookies: Cookies.Cookies | undefined
155
- get cookies() {
156
- if (this.cachedCookies) {
157
- return this.cachedCookies
158
- }
159
- if (this._rawHeaders === undefined) {
160
- return Cookies.empty
161
- } else if (this._rawHeaders["set-cookie"] === undefined) {
162
- return this.cachedCookies = Cookies.empty
163
- }
164
- return this.cachedCookies = Cookies.fromSetCookie(this._rawHeaders["set-cookie"])
165
- }
166
-
167
- get remoteAddress() {
168
- return Option.none()
169
- }
170
-
171
- _textEffect: Effect.Effect<string, E> | undefined
172
- get text(): Effect.Effect<string, E> {
173
- if (this._textEffect) {
174
- return this._textEffect
175
- }
176
- return this._textEffect = Effect.async<string, E>((resume) => {
177
- if (this.source.readyState === 4) {
178
- resume(Effect.succeed(this.source.responseText))
179
- return
180
- }
181
-
182
- const onReadyStateChange = () => {
183
- if (this.source.readyState === 4) {
184
- resume(Effect.succeed(this.source.responseText))
185
- }
186
- }
187
- const onError = () => {
188
- resume(Effect.fail(this.onError(this.source.statusText)))
189
- }
190
- this.source.addEventListener("readystatechange", onReadyStateChange)
191
- this.source.addEventListener("error", onError)
192
- return Effect.sync(() => {
193
- this.source.removeEventListener("readystatechange", onReadyStateChange)
194
- this.source.removeEventListener("error", onError)
195
- })
196
- }).pipe(
197
- Effect.cached,
198
- Effect.runSync
199
- )
200
- }
201
-
202
- get json(): Effect.Effect<unknown, E> {
203
- return Effect.tryMap(this.text, {
204
- try: (_) => _ === "" ? null : JSON.parse(_) as unknown,
205
- catch: this.onError
206
- })
207
- }
208
-
209
- get urlParamsBody(): Effect.Effect<UrlParams.UrlParams, E> {
210
- return Effect.flatMap(this.text, (_) =>
211
- Effect.try({
212
- try: () => UrlParams.fromInput(new URLSearchParams(_)),
213
- catch: this.onError
214
- }))
215
- }
216
-
217
- get stream(): Stream.Stream<Uint8Array, E> {
218
- return Stream.async<Uint8Array, E>((emit) => {
219
- let offset = 0
220
- const onReadyStateChange = () => {
221
- if (this.source.readyState === 3) {
222
- emit.single(encoder.encode(this.source.responseText.slice(offset)))
223
- offset = this.source.responseText.length
224
- } else if (this.source.readyState === 4) {
225
- if (offset < this.source.responseText.length) {
226
- emit.single(encoder.encode(this.source.responseText.slice(offset)))
227
- }
228
- emit.end()
229
- }
230
- }
231
- const onError = () => {
232
- emit.fail(this.onError(this.source.statusText))
233
- }
234
- this.source.addEventListener("readystatechange", onReadyStateChange)
235
- this.source.addEventListener("error", onError)
236
- onReadyStateChange()
237
- return Effect.sync(() => {
238
- this.source.removeEventListener("readystatechange", onReadyStateChange)
239
- this.source.removeEventListener("error", onError)
240
- })
241
- })
242
- }
243
-
244
- _arrayBufferEffect: Effect.Effect<ArrayBuffer, E> | undefined
245
- get arrayBuffer(): Effect.Effect<ArrayBuffer, E> {
246
- if (this._arrayBufferEffect) {
247
- return this._arrayBufferEffect
248
- }
249
- return this._arrayBufferEffect = Effect.async<ArrayBuffer, E>((resume) => {
250
- if (this.source.readyState === 4) {
251
- resume(Effect.succeed(this.source.response))
252
- return
253
- }
254
-
255
- const onReadyStateChange = () => {
256
- if (this.source.readyState === 4) {
257
- resume(Effect.succeed(this.source.response))
258
- }
259
- }
260
- const onError = () => {
261
- resume(Effect.fail(this.onError(this.source.statusText)))
262
- }
263
- this.source.addEventListener("readystatechange", onReadyStateChange)
264
- this.source.addEventListener("error", onError)
265
- return Effect.sync(() => {
266
- this.source.removeEventListener("readystatechange", onReadyStateChange)
267
- this.source.removeEventListener("error", onError)
268
- })
269
- }).pipe(
270
- Effect.map((response) => {
271
- if (typeof response === "string") {
272
- const arr = encoder.encode(response)
273
- return arr.byteLength !== arr.buffer.byteLength
274
- ? arr.buffer.slice(arr.byteOffset, arr.byteOffset + arr.byteLength)
275
- : arr.buffer
276
- }
277
- return response
278
- }),
279
- Effect.cached,
280
- Effect.runSync
281
- )
282
- }
283
- }
284
-
285
- class ClientResponseImpl extends IncomingMessageImpl<Error.ResponseError> implements ClientResponse.HttpClientResponse {
286
- readonly [ClientResponse.TypeId]: ClientResponse.TypeId
287
-
288
- constructor(
289
- readonly request: ClientRequest.HttpClientRequest,
290
- source: XMLHttpRequest
291
- ) {
292
- super(source, (cause) =>
293
- new Error.ResponseError({
294
- request,
295
- response: this,
296
- reason: "Decode",
297
- cause
298
- }))
299
- this[ClientResponse.TypeId] = ClientResponse.TypeId
300
- }
301
-
302
- get status() {
303
- return this.source.status
304
- }
305
-
306
- get formData(): Effect.Effect<FormData, Error.ResponseError> {
307
- return Effect.die("Not implemented")
308
- }
309
-
310
- toString(): string {
311
- return `ClientResponse(${this.status})`
312
- }
313
-
314
- toJSON(): unknown {
315
- return IncomingMessage.inspect(this, {
316
- _id: "@effect/platform/HttpClientResponse",
317
- request: this.request.toJSON(),
318
- status: this.status
319
- })
320
- }
321
- }
322
-
323
- /** @internal */
324
- export const layerXMLHttpRequest = Client.layerMergedContext(Effect.succeed(makeXMLHttpRequest))
@@ -1,7 +0,0 @@
1
- import * as KeyValueStore from "@effect/platform/KeyValueStore"
2
-
3
- /** @internal */
4
- export const layerSessionStorage = KeyValueStore.layerStorage(() => sessionStorage)
5
-
6
- /** @internal */
7
- export const layerLocalStorage = KeyValueStore.layerStorage(() => localStorage)
@@ -1,8 +0,0 @@
1
- import { makeRunMain } from "@effect/platform/Runtime"
2
-
3
- /** @internal */
4
- export const runMain = makeRunMain(({ fiber }) => {
5
- addEventListener("beforeunload", () => {
6
- fiber.unsafeInterruptAsFork(fiber.id())
7
- })
8
- })