react-loosely-lazy 0.7.0 → 1.1.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 (283) hide show
  1. package/{lib → dist}/cjs/cleanup/index.js +2 -2
  2. package/dist/cjs/collect/hydrate.js +21 -0
  3. package/dist/cjs/collect/index.js +38 -0
  4. package/dist/cjs/collect/render.js +22 -0
  5. package/dist/cjs/config/constants.js +12 -0
  6. package/dist/cjs/config/index.js +44 -0
  7. package/dist/cjs/constants.js +15 -0
  8. package/dist/cjs/index.js +92 -0
  9. package/{lib → dist}/cjs/index.js.flow +1 -4
  10. package/dist/cjs/init/index.js +28 -0
  11. package/dist/cjs/lazy/components/client.js +145 -0
  12. package/dist/cjs/lazy/components/server.js +67 -0
  13. package/dist/cjs/lazy/components/utils.js +32 -0
  14. package/dist/cjs/lazy/constants.js +16 -0
  15. package/dist/cjs/lazy/deferred.js +53 -0
  16. package/dist/cjs/lazy/errors/index.js +25 -0
  17. package/dist/cjs/lazy/index.js +142 -0
  18. package/dist/cjs/lazy/placeholders/hydrate.js +50 -0
  19. package/dist/cjs/lazy/placeholders/render.js +64 -0
  20. package/dist/cjs/lazy/preload/index.js +114 -0
  21. package/dist/cjs/lazy/preload/utils.js +60 -0
  22. package/dist/cjs/lazy/retry/index.js +67 -0
  23. package/dist/cjs/lazy-wait/context.js +17 -0
  24. package/{lib → dist}/cjs/lazy-wait/index.js +9 -9
  25. package/dist/cjs/lazy-wait/main.js +48 -0
  26. package/dist/cjs/phase/context.js +43 -0
  27. package/{lib → dist}/cjs/phase/index.js +6 -14
  28. package/{lib → dist}/cjs/phase/listeners.js +2 -2
  29. package/dist/cjs/phase/utils.js +17 -0
  30. package/dist/cjs/profiler/index.js +16 -0
  31. package/dist/cjs/suspense/component.js +120 -0
  32. package/dist/cjs/suspense/context.js +21 -0
  33. package/{lib → dist}/cjs/suspense/index.js +2 -2
  34. package/{lib → dist}/cjs/utils/hash.js +1 -1
  35. package/dist/cjs/utils/index.js +63 -0
  36. package/dist/esm/collect/index.js +25 -0
  37. package/dist/esm/config/constants.js +5 -0
  38. package/dist/esm/config/index.js +25 -0
  39. package/dist/esm/constants.js +7 -0
  40. package/dist/esm/index.js +8 -0
  41. package/{lib → dist}/esm/index.js.flow +1 -4
  42. package/dist/esm/init/index.js +16 -0
  43. package/dist/esm/lazy/components/client.js +120 -0
  44. package/dist/esm/lazy/components/server.js +50 -0
  45. package/{lib/esm/lazy → dist/esm/lazy/components}/types.js +1 -1
  46. package/dist/esm/lazy/components/utils.js +24 -0
  47. package/dist/esm/lazy/constants.js +7 -0
  48. package/dist/esm/lazy/deferred.js +54 -0
  49. package/dist/esm/lazy/index.js +103 -0
  50. package/{lib → dist}/esm/lazy/loader.js +1 -1
  51. package/dist/esm/lazy/placeholders/hydrate.js +37 -0
  52. package/{lib → dist}/esm/lazy/placeholders/render.js +5 -3
  53. package/dist/esm/lazy/preload/index.js +93 -0
  54. package/dist/esm/lazy/preload/utils.js +50 -0
  55. package/{lib/esm/suspense → dist/esm/lazy}/types.js +1 -1
  56. package/dist/esm/lazy-wait/context.js +7 -0
  57. package/dist/esm/lazy-wait/index.js +3 -0
  58. package/dist/esm/lazy-wait/main.js +33 -0
  59. package/dist/esm/phase/context.js +24 -0
  60. package/dist/esm/phase/index.js +4 -0
  61. package/dist/esm/profiler/index.js +6 -0
  62. package/dist/esm/suspense/component.js +103 -0
  63. package/dist/esm/suspense/context.js +8 -0
  64. package/{lib/esm → dist/esm/suspense}/types.js +1 -1
  65. package/dist/esm/utils/index.js +37 -0
  66. package/{lib/esm → dist/types}/cleanup/index.d.ts +1 -0
  67. package/dist/types/cleanup/index.d.ts.map +1 -0
  68. package/{lib/cjs → dist/types}/collect/hydrate.d.ts +1 -0
  69. package/dist/types/collect/hydrate.d.ts.map +1 -0
  70. package/{lib/esm → dist/types}/collect/index.d.ts +1 -0
  71. package/dist/types/collect/index.d.ts.map +1 -0
  72. package/{lib/cjs → dist/types}/collect/render.d.ts +1 -0
  73. package/dist/types/collect/render.d.ts.map +1 -0
  74. package/dist/types/config/constants.d.ts +5 -0
  75. package/dist/types/config/constants.d.ts.map +1 -0
  76. package/dist/types/config/index.d.ts +12 -0
  77. package/dist/types/config/index.d.ts.map +1 -0
  78. package/dist/types/constants.d.ts +7 -0
  79. package/dist/types/constants.d.ts.map +1 -0
  80. package/dist/types/index.d.ts +12 -0
  81. package/dist/types/index.d.ts.map +1 -0
  82. package/dist/types/init/index.d.ts +6 -0
  83. package/dist/types/init/index.d.ts.map +1 -0
  84. package/{lib/cjs → dist/types}/lazy/components/client.d.ts +3 -3
  85. package/dist/types/lazy/components/client.d.ts.map +1 -0
  86. package/{lib/cjs → dist/types}/lazy/components/server.d.ts +2 -1
  87. package/dist/types/lazy/components/server.d.ts.map +1 -0
  88. package/dist/types/lazy/components/types.d.ts +7 -0
  89. package/dist/types/lazy/components/types.d.ts.map +1 -0
  90. package/dist/types/lazy/components/utils.d.ts +10 -0
  91. package/dist/types/lazy/components/utils.d.ts.map +1 -0
  92. package/dist/types/lazy/constants.d.ts +7 -0
  93. package/dist/types/lazy/constants.d.ts.map +1 -0
  94. package/{lib/esm → dist/types}/lazy/deferred.d.ts +7 -2
  95. package/dist/types/lazy/deferred.d.ts.map +1 -0
  96. package/{lib/cjs → dist/types}/lazy/errors/index.d.ts +1 -0
  97. package/dist/types/lazy/errors/index.d.ts.map +1 -0
  98. package/{lib/esm → dist/types}/lazy/index.d.ts +4 -1
  99. package/dist/types/lazy/index.d.ts.map +1 -0
  100. package/{lib/esm → dist/types}/lazy/loader.d.ts +1 -0
  101. package/dist/types/lazy/loader.d.ts.map +1 -0
  102. package/{lib/cjs → dist/types}/lazy/placeholders/hydrate.d.ts +1 -0
  103. package/dist/types/lazy/placeholders/hydrate.d.ts.map +1 -0
  104. package/{lib/cjs → dist/types}/lazy/placeholders/render.d.ts +1 -0
  105. package/dist/types/lazy/placeholders/render.d.ts.map +1 -0
  106. package/{lib/esm → dist/types}/lazy/preload/index.d.ts +2 -1
  107. package/dist/types/lazy/preload/index.d.ts.map +1 -0
  108. package/{lib/esm → dist/types}/lazy/preload/utils.d.ts +1 -0
  109. package/dist/types/lazy/preload/utils.d.ts.map +1 -0
  110. package/{lib/cjs → dist/types}/lazy/retry/index.d.ts +1 -0
  111. package/dist/types/lazy/retry/index.d.ts.map +1 -0
  112. package/{lib/cjs → dist/types}/lazy/types.d.ts +8 -2
  113. package/dist/types/lazy/types.d.ts.map +1 -0
  114. package/dist/types/lazy-wait/context.d.ts +4 -0
  115. package/dist/types/lazy-wait/context.d.ts.map +1 -0
  116. package/{lib/cjs → dist/types}/lazy-wait/index.d.ts +2 -1
  117. package/dist/types/lazy-wait/index.d.ts.map +1 -0
  118. package/{lib/esm → dist/types}/lazy-wait/main.d.ts +1 -0
  119. package/dist/types/lazy-wait/main.d.ts.map +1 -0
  120. package/{lib/esm → dist/types}/phase/context.d.ts +6 -5
  121. package/dist/types/phase/context.d.ts.map +1 -0
  122. package/{lib/cjs → dist/types}/phase/index.d.ts +1 -1
  123. package/dist/types/phase/index.d.ts.map +1 -0
  124. package/{lib/cjs → dist/types}/phase/listeners.d.ts +1 -0
  125. package/dist/types/phase/listeners.d.ts.map +1 -0
  126. package/{lib/esm → dist/types}/phase/utils.d.ts +1 -0
  127. package/dist/types/phase/utils.d.ts.map +1 -0
  128. package/dist/types/profiler/index.d.ts +17 -0
  129. package/dist/types/profiler/index.d.ts.map +1 -0
  130. package/{lib/cjs → dist/types}/suspense/component.d.ts +1 -0
  131. package/dist/types/suspense/component.d.ts.map +1 -0
  132. package/{lib/esm → dist/types}/suspense/context.d.ts +2 -1
  133. package/dist/types/suspense/context.d.ts.map +1 -0
  134. package/{lib/cjs → dist/types}/suspense/index.d.ts +1 -0
  135. package/dist/types/suspense/index.d.ts.map +1 -0
  136. package/{lib/cjs → dist/types}/suspense/types.d.ts +3 -1
  137. package/dist/types/suspense/types.d.ts.map +1 -0
  138. package/{lib/cjs → dist/types}/utils/hash.d.ts +1 -0
  139. package/dist/types/utils/hash.d.ts.map +1 -0
  140. package/{lib/esm → dist/types}/utils/index.d.ts +1 -0
  141. package/dist/types/utils/index.d.ts.map +1 -0
  142. package/package.json +17 -81
  143. package/.eslintignore +0 -6
  144. package/.github/workflows/ci.yml +0 -25
  145. package/.github/workflows/publish.yml +0 -30
  146. package/.nvmrc +0 -1
  147. package/CODE_OF_CONDUCT.md +0 -27
  148. package/CONTRIBUTING.md +0 -18
  149. package/LICENSE +0 -201
  150. package/README.md +0 -40
  151. package/babel-plugin/package.json +0 -5
  152. package/lib/cjs/babel/index.d.ts +0 -15
  153. package/lib/cjs/babel/index.js +0 -312
  154. package/lib/cjs/babel/utils.d.ts +0 -23
  155. package/lib/cjs/babel/utils.js +0 -75
  156. package/lib/cjs/cleanup/index.d.ts +0 -2
  157. package/lib/cjs/collect/hydrate.js +0 -21
  158. package/lib/cjs/collect/index.d.ts +0 -1
  159. package/lib/cjs/collect/index.js +0 -39
  160. package/lib/cjs/collect/render.js +0 -22
  161. package/lib/cjs/config.d.ts +0 -3
  162. package/lib/cjs/config.js +0 -40
  163. package/lib/cjs/constants.d.ts +0 -17
  164. package/lib/cjs/constants.js +0 -31
  165. package/lib/cjs/index.d.ts +0 -13
  166. package/lib/cjs/index.js +0 -86
  167. package/lib/cjs/init.d.ts +0 -6
  168. package/lib/cjs/init.js +0 -28
  169. package/lib/cjs/lazy/components/client.js +0 -138
  170. package/lib/cjs/lazy/components/server.js +0 -71
  171. package/lib/cjs/lazy/deferred.d.ts +0 -9
  172. package/lib/cjs/lazy/deferred.js +0 -49
  173. package/lib/cjs/lazy/errors/index.js +0 -30
  174. package/lib/cjs/lazy/index.d.ts +0 -15
  175. package/lib/cjs/lazy/index.js +0 -134
  176. package/lib/cjs/lazy/loader.d.ts +0 -6
  177. package/lib/cjs/lazy/placeholders/hydrate.js +0 -58
  178. package/lib/cjs/lazy/placeholders/render.js +0 -64
  179. package/lib/cjs/lazy/preload/index.d.ts +0 -18
  180. package/lib/cjs/lazy/preload/index.js +0 -142
  181. package/lib/cjs/lazy/preload/utils.d.ts +0 -1
  182. package/lib/cjs/lazy/preload/utils.js +0 -36
  183. package/lib/cjs/lazy/retry/index.js +0 -97
  184. package/lib/cjs/lazy-wait/context.d.ts +0 -8
  185. package/lib/cjs/lazy-wait/context.js +0 -21
  186. package/lib/cjs/lazy-wait/main.d.ts +0 -6
  187. package/lib/cjs/lazy-wait/main.js +0 -68
  188. package/lib/cjs/lazy-wait/utils.d.ts +0 -1
  189. package/lib/cjs/lazy-wait/utils.js +0 -43
  190. package/lib/cjs/manifest/index.d.ts +0 -8
  191. package/lib/cjs/manifest/index.js +0 -19
  192. package/lib/cjs/manifest/index.js.flow +0 -15
  193. package/lib/cjs/phase/context.d.ts +0 -15
  194. package/lib/cjs/phase/context.js +0 -49
  195. package/lib/cjs/phase/controller.d.ts +0 -1
  196. package/lib/cjs/phase/controller.js +0 -52
  197. package/lib/cjs/phase/utils.d.ts +0 -2
  198. package/lib/cjs/phase/utils.js +0 -19
  199. package/lib/cjs/suspense/component.js +0 -161
  200. package/lib/cjs/suspense/context.d.ts +0 -3
  201. package/lib/cjs/suspense/context.js +0 -24
  202. package/lib/cjs/types.d.ts +0 -9
  203. package/lib/cjs/utils/index.d.ts +0 -15
  204. package/lib/cjs/utils/index.js +0 -73
  205. package/lib/cjs/webpack/index.d.ts +0 -12
  206. package/lib/cjs/webpack/index.js +0 -135
  207. package/lib/cjs/webpack/index.js.flow +0 -11
  208. package/lib/cjs/webpack/utils.d.ts +0 -8
  209. package/lib/cjs/webpack/utils.js +0 -135
  210. package/lib/esm/babel/index.d.ts +0 -15
  211. package/lib/esm/babel/index.js +0 -261
  212. package/lib/esm/babel/utils.d.ts +0 -23
  213. package/lib/esm/babel/utils.js +0 -60
  214. package/lib/esm/collect/hydrate.d.ts +0 -3
  215. package/lib/esm/collect/index.js +0 -25
  216. package/lib/esm/collect/render.d.ts +0 -1
  217. package/lib/esm/config.d.ts +0 -3
  218. package/lib/esm/config.js +0 -24
  219. package/lib/esm/constants.d.ts +0 -17
  220. package/lib/esm/constants.js +0 -18
  221. package/lib/esm/index.d.ts +0 -13
  222. package/lib/esm/index.js +0 -8
  223. package/lib/esm/init.d.ts +0 -6
  224. package/lib/esm/init.js +0 -16
  225. package/lib/esm/lazy/components/client.d.ts +0 -9
  226. package/lib/esm/lazy/components/client.js +0 -98
  227. package/lib/esm/lazy/components/server.d.ts +0 -9
  228. package/lib/esm/lazy/components/server.js +0 -50
  229. package/lib/esm/lazy/deferred.js +0 -40
  230. package/lib/esm/lazy/errors/index.d.ts +0 -3
  231. package/lib/esm/lazy/index.js +0 -97
  232. package/lib/esm/lazy/placeholders/hydrate.d.ts +0 -6
  233. package/lib/esm/lazy/placeholders/hydrate.js +0 -37
  234. package/lib/esm/lazy/placeholders/render.d.ts +0 -6
  235. package/lib/esm/lazy/preload/index.js +0 -89
  236. package/lib/esm/lazy/preload/utils.js +0 -26
  237. package/lib/esm/lazy/retry/index.d.ts +0 -8
  238. package/lib/esm/lazy/types.d.ts +0 -23
  239. package/lib/esm/lazy-wait/context.d.ts +0 -8
  240. package/lib/esm/lazy-wait/context.js +0 -9
  241. package/lib/esm/lazy-wait/index.d.ts +0 -3
  242. package/lib/esm/lazy-wait/index.js +0 -3
  243. package/lib/esm/lazy-wait/main.js +0 -36
  244. package/lib/esm/lazy-wait/utils.d.ts +0 -1
  245. package/lib/esm/lazy-wait/utils.js +0 -14
  246. package/lib/esm/manifest/index.d.ts +0 -8
  247. package/lib/esm/manifest/index.js +0 -8
  248. package/lib/esm/manifest/index.js.flow +0 -15
  249. package/lib/esm/phase/context.js +0 -24
  250. package/lib/esm/phase/controller.d.ts +0 -1
  251. package/lib/esm/phase/controller.js +0 -17
  252. package/lib/esm/phase/index.d.ts +0 -5
  253. package/lib/esm/phase/index.js +0 -5
  254. package/lib/esm/phase/listeners.d.ts +0 -2
  255. package/lib/esm/suspense/component.d.ts +0 -46
  256. package/lib/esm/suspense/component.js +0 -108
  257. package/lib/esm/suspense/context.js +0 -9
  258. package/lib/esm/suspense/index.d.ts +0 -3
  259. package/lib/esm/suspense/types.d.ts +0 -9
  260. package/lib/esm/types.d.ts +0 -9
  261. package/lib/esm/utils/hash.d.ts +0 -1
  262. package/lib/esm/utils/index.js +0 -45
  263. package/lib/esm/webpack/index.d.ts +0 -12
  264. package/lib/esm/webpack/index.js +0 -118
  265. package/lib/esm/webpack/index.js.flow +0 -11
  266. package/lib/esm/webpack/utils.d.ts +0 -8
  267. package/lib/esm/webpack/utils.js +0 -90
  268. package/manifest/package.json +0 -5
  269. package/tsconfig.build.json +0 -5
  270. package/webpack-plugin/package.json +0 -5
  271. /package/{lib/cjs/lazy → dist/cjs/lazy/components}/types.js +0 -0
  272. /package/{lib → dist}/cjs/lazy/loader.js +0 -0
  273. /package/{lib/cjs/suspense → dist/cjs/lazy}/types.js +0 -0
  274. /package/{lib/cjs → dist/cjs/suspense}/types.js +0 -0
  275. /package/{lib → dist}/esm/cleanup/index.js +0 -0
  276. /package/{lib → dist}/esm/collect/hydrate.js +0 -0
  277. /package/{lib → dist}/esm/collect/render.js +0 -0
  278. /package/{lib → dist}/esm/lazy/errors/index.js +0 -0
  279. /package/{lib → dist}/esm/lazy/retry/index.js +0 -0
  280. /package/{lib → dist}/esm/phase/listeners.js +0 -0
  281. /package/{lib → dist}/esm/phase/utils.js +0 -0
  282. /package/{lib → dist}/esm/suspense/index.js +0 -0
  283. /package/{lib → dist}/esm/utils/hash.js +0 -0
@@ -5,8 +5,8 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.noopCleanup = void 0;
7
7
 
8
- var noopCleanup = function noopCleanup() {// Nothing to cleanup...
8
+ const noopCleanup = () => {// Nothing to cleanup...
9
9
  };
10
10
 
11
11
  exports.noopCleanup = noopCleanup;
12
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jbGVhbnVwL2luZGV4LnRzIl0sIm5hbWVzIjpbIm5vb3BDbGVhbnVwIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBRU8sSUFBTUEsV0FBVyxHQUFHLFNBQWRBLFdBQWMsR0FBTSxDQUMvQjtBQUNELENBRk0iLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSBDbGVhbnVwID0gKCkgPT4gdm9pZDtcblxuZXhwb3J0IGNvbnN0IG5vb3BDbGVhbnVwID0gKCkgPT4ge1xuICAvLyBOb3RoaW5nIHRvIGNsZWFudXAuLi5cbn07XG4iXX0=
12
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jbGVhbnVwL2luZGV4LnRzIl0sIm5hbWVzIjpbIm5vb3BDbGVhbnVwIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBRU8sTUFBTUEsV0FBVyxHQUFHLE1BQU0sQ0FDL0I7QUFDRCxDQUZNIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgQ2xlYW51cCA9ICgpID0+IHZvaWQ7XG5cbmV4cG9ydCBjb25zdCBub29wQ2xlYW51cCA9ICgpID0+IHtcbiAgLy8gTm90aGluZyB0byBjbGVhbnVwLi4uXG59O1xuIl19
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.refElements = void 0;
7
+
8
+ const refElements = (fromEl, id) => {
9
+ const result = [];
10
+ let el = fromEl;
11
+
12
+ while (el = el.nextSibling) {
13
+ if (el.dataset && el.dataset.lazyEnd === id) break;
14
+ result.push(el);
15
+ }
16
+
17
+ return result;
18
+ };
19
+
20
+ exports.refElements = refElements;
21
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb2xsZWN0L2h5ZHJhdGUudHMiXSwibmFtZXMiOlsicmVmRWxlbWVudHMiLCJmcm9tRWwiLCJpZCIsInJlc3VsdCIsImVsIiwibmV4dFNpYmxpbmciLCJkYXRhc2V0IiwibGF6eUVuZCIsInB1c2giXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBTyxNQUFNQSxXQUFXLEdBQUcsQ0FDekJDLE1BRHlCLEVBRXpCQyxFQUZ5QixLQUd0QjtBQUNILFFBQU1DLE1BQU0sR0FBRyxFQUFmO0FBQ0EsTUFBSUMsRUFBNEQsR0FBR0gsTUFBbkU7O0FBQ0EsU0FBUUcsRUFBRSxHQUFHQSxFQUFFLENBQUNDLFdBQWhCLEVBQThCO0FBQzVCLFFBQUlELEVBQUUsQ0FBQ0UsT0FBSCxJQUFjRixFQUFFLENBQUNFLE9BQUgsQ0FBV0MsT0FBWCxLQUF1QkwsRUFBekMsRUFBNkM7QUFDN0NDLElBQUFBLE1BQU0sQ0FBQ0ssSUFBUCxDQUFZSixFQUFaO0FBQ0Q7O0FBRUQsU0FBT0QsTUFBUDtBQUNELENBWk0iLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgcmVmRWxlbWVudHMgPSAoXG4gIGZyb21FbDogSFRNTElucHV0RWxlbWVudCxcbiAgaWQ6IHN0cmluZyB8IHVuZGVmaW5lZFxuKSA9PiB7XG4gIGNvbnN0IHJlc3VsdCA9IFtdO1xuICBsZXQgZWw6IChDaGlsZE5vZGUgJiB7IHJlYWRvbmx5IGRhdGFzZXQ/OiBET01TdHJpbmdNYXAgfSkgfCBudWxsID0gZnJvbUVsO1xuICB3aGlsZSAoKGVsID0gZWwubmV4dFNpYmxpbmcpKSB7XG4gICAgaWYgKGVsLmRhdGFzZXQgJiYgZWwuZGF0YXNldC5sYXp5RW5kID09PSBpZCkgYnJlYWs7XG4gICAgcmVzdWx0LnB1c2goZWwpO1xuICB9XG5cbiAgcmV0dXJuIHJlc3VsdDtcbn07XG4iXX0=
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.collect = void 0;
7
+
8
+ var _config = require("../config");
9
+
10
+ var _constants = require("../constants");
11
+
12
+ var _render = require("./render");
13
+
14
+ var _hydrate = require("./hydrate");
15
+
16
+ const collect = () => {
17
+ const markers = document.querySelectorAll('input[data-lazy-begin]');
18
+ const {
19
+ mode
20
+ } = (0, _config.getConfig)();
21
+
22
+ for (let i = 0, j = markers.length; i < j; i += 1) {
23
+ const el = markers[i];
24
+ const {
25
+ lazyBegin
26
+ } = el.dataset || {};
27
+ const value = mode === _config.MODE.RENDER ? (0, _render.cloneElements)(markers[i], lazyBegin) : (0, _hydrate.refElements)(markers[i], lazyBegin);
28
+
29
+ if (_constants.COLLECTED.has(lazyBegin)) {
30
+ _constants.COLLECTED.get(lazyBegin).push(value);
31
+ } else {
32
+ _constants.COLLECTED.set(lazyBegin, [value]);
33
+ }
34
+ }
35
+ };
36
+
37
+ exports.collect = collect;
38
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb2xsZWN0L2luZGV4LnRzIl0sIm5hbWVzIjpbImNvbGxlY3QiLCJtYXJrZXJzIiwiZG9jdW1lbnQiLCJxdWVyeVNlbGVjdG9yQWxsIiwibW9kZSIsImkiLCJqIiwibGVuZ3RoIiwiZWwiLCJsYXp5QmVnaW4iLCJkYXRhc2V0IiwidmFsdWUiLCJNT0RFIiwiUkVOREVSIiwiQ09MTEVDVEVEIiwiaGFzIiwiZ2V0IiwicHVzaCIsInNldCJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOztBQUNBOztBQUVBOztBQUNBOztBQUVPLE1BQU1BLE9BQU8sR0FBRyxNQUFNO0FBQzNCLFFBQU1DLE9BQU8sR0FBR0MsUUFBUSxDQUFDQyxnQkFBVCxDQUNkLHdCQURjLENBQWhCO0FBR0EsUUFBTTtBQUFFQyxJQUFBQTtBQUFGLE1BQVcsd0JBQWpCOztBQUNBLE9BQUssSUFBSUMsQ0FBQyxHQUFHLENBQVIsRUFBV0MsQ0FBQyxHQUFHTCxPQUFPLENBQUNNLE1BQTVCLEVBQW9DRixDQUFDLEdBQUdDLENBQXhDLEVBQTJDRCxDQUFDLElBQUksQ0FBaEQsRUFBbUQ7QUFDakQsVUFBTUcsRUFBRSxHQUFHUCxPQUFPLENBQUNJLENBQUQsQ0FBbEI7QUFDQSxVQUFNO0FBQUVJLE1BQUFBO0FBQUYsUUFBZ0JELEVBQUUsQ0FBQ0UsT0FBSCxJQUFjLEVBQXBDO0FBQ0EsVUFBTUMsS0FBSyxHQUNUUCxJQUFJLEtBQUtRLGFBQUtDLE1BQWQsR0FDSSwyQkFBY1osT0FBTyxDQUFDSSxDQUFELENBQXJCLEVBQTBCSSxTQUExQixDQURKLEdBRUksMEJBQVlSLE9BQU8sQ0FBQ0ksQ0FBRCxDQUFuQixFQUF3QkksU0FBeEIsQ0FITjs7QUFLQSxRQUFJSyxxQkFBVUMsR0FBVixDQUFjTixTQUFkLENBQUosRUFBOEI7QUFDNUJLLDJCQUFVRSxHQUFWLENBQWNQLFNBQWQsRUFBeUJRLElBQXpCLENBQThCTixLQUE5QjtBQUNELEtBRkQsTUFFTztBQUNMRywyQkFBVUksR0FBVixDQUFjVCxTQUFkLEVBQXlCLENBQUNFLEtBQUQsQ0FBekI7QUFDRDtBQUNGO0FBQ0YsQ0FuQk0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXRDb25maWcsIE1PREUgfSBmcm9tICcuLi9jb25maWcnO1xuaW1wb3J0IHsgQ09MTEVDVEVEIH0gZnJvbSAnLi4vY29uc3RhbnRzJztcblxuaW1wb3J0IHsgY2xvbmVFbGVtZW50cyB9IGZyb20gJy4vcmVuZGVyJztcbmltcG9ydCB7IHJlZkVsZW1lbnRzIH0gZnJvbSAnLi9oeWRyYXRlJztcblxuZXhwb3J0IGNvbnN0IGNvbGxlY3QgPSAoKSA9PiB7XG4gIGNvbnN0IG1hcmtlcnMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsPEhUTUxJbnB1dEVsZW1lbnQ+KFxuICAgICdpbnB1dFtkYXRhLWxhenktYmVnaW5dJ1xuICApO1xuICBjb25zdCB7IG1vZGUgfSA9IGdldENvbmZpZygpO1xuICBmb3IgKGxldCBpID0gMCwgaiA9IG1hcmtlcnMubGVuZ3RoOyBpIDwgajsgaSArPSAxKSB7XG4gICAgY29uc3QgZWwgPSBtYXJrZXJzW2ldO1xuICAgIGNvbnN0IHsgbGF6eUJlZ2luIH0gPSBlbC5kYXRhc2V0IHx8IHt9O1xuICAgIGNvbnN0IHZhbHVlID1cbiAgICAgIG1vZGUgPT09IE1PREUuUkVOREVSXG4gICAgICAgID8gY2xvbmVFbGVtZW50cyhtYXJrZXJzW2ldLCBsYXp5QmVnaW4pXG4gICAgICAgIDogcmVmRWxlbWVudHMobWFya2Vyc1tpXSwgbGF6eUJlZ2luKTtcblxuICAgIGlmIChDT0xMRUNURUQuaGFzKGxhenlCZWdpbikpIHtcbiAgICAgIENPTExFQ1RFRC5nZXQobGF6eUJlZ2luKS5wdXNoKHZhbHVlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgQ09MTEVDVEVELnNldChsYXp5QmVnaW4sIFt2YWx1ZV0pO1xuICAgIH1cbiAgfVxufTtcbiJdfQ==
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.cloneElements = void 0;
7
+
8
+ const cloneElements = (fromEl, id) => {
9
+ const fragment = document.createElement('div');
10
+ let el = fromEl;
11
+
12
+ while (el = el.nextSibling) {
13
+ if (el.dataset && el.dataset.lazyEnd === id) break; // cloneNode is 50% faster than outerHTML/textContent
14
+
15
+ fragment.appendChild(el.cloneNode(true));
16
+ }
17
+
18
+ return Array.from(fragment.childNodes);
19
+ };
20
+
21
+ exports.cloneElements = cloneElements;
22
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb2xsZWN0L3JlbmRlci50cyJdLCJuYW1lcyI6WyJjbG9uZUVsZW1lbnRzIiwiZnJvbUVsIiwiaWQiLCJmcmFnbWVudCIsImRvY3VtZW50IiwiY3JlYXRlRWxlbWVudCIsImVsIiwibmV4dFNpYmxpbmciLCJkYXRhc2V0IiwibGF6eUVuZCIsImFwcGVuZENoaWxkIiwiY2xvbmVOb2RlIiwiQXJyYXkiLCJmcm9tIiwiY2hpbGROb2RlcyJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFPLE1BQU1BLGFBQWEsR0FBRyxDQUMzQkMsTUFEMkIsRUFFM0JDLEVBRjJCLEtBR3hCO0FBQ0gsUUFBTUMsUUFBUSxHQUFHQyxRQUFRLENBQUNDLGFBQVQsQ0FBdUIsS0FBdkIsQ0FBakI7QUFDQSxNQUFJQyxFQUE0RCxHQUFHTCxNQUFuRTs7QUFDQSxTQUFRSyxFQUFFLEdBQUdBLEVBQUUsQ0FBQ0MsV0FBaEIsRUFBOEI7QUFDNUIsUUFBSUQsRUFBRSxDQUFDRSxPQUFILElBQWNGLEVBQUUsQ0FBQ0UsT0FBSCxDQUFXQyxPQUFYLEtBQXVCUCxFQUF6QyxFQUE2QyxNQURqQixDQUU1Qjs7QUFDQUMsSUFBQUEsUUFBUSxDQUFDTyxXQUFULENBQXFCSixFQUFFLENBQUNLLFNBQUgsQ0FBYSxJQUFiLENBQXJCO0FBQ0Q7O0FBRUQsU0FBT0MsS0FBSyxDQUFDQyxJQUFOLENBQVdWLFFBQVEsQ0FBQ1csVUFBcEIsQ0FBUDtBQUNELENBYk0iLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgY2xvbmVFbGVtZW50cyA9IChcbiAgZnJvbUVsOiBIVE1MSW5wdXRFbGVtZW50LFxuICBpZDogc3RyaW5nIHwgdW5kZWZpbmVkXG4pID0+IHtcbiAgY29uc3QgZnJhZ21lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgbGV0IGVsOiAoQ2hpbGROb2RlICYgeyByZWFkb25seSBkYXRhc2V0PzogRE9NU3RyaW5nTWFwIH0pIHwgbnVsbCA9IGZyb21FbDtcbiAgd2hpbGUgKChlbCA9IGVsLm5leHRTaWJsaW5nKSkge1xuICAgIGlmIChlbC5kYXRhc2V0ICYmIGVsLmRhdGFzZXQubGF6eUVuZCA9PT0gaWQpIGJyZWFrO1xuICAgIC8vIGNsb25lTm9kZSBpcyA1MCUgZmFzdGVyIHRoYW4gb3V0ZXJIVE1ML3RleHRDb250ZW50XG4gICAgZnJhZ21lbnQuYXBwZW5kQ2hpbGQoZWwuY2xvbmVOb2RlKHRydWUpKTtcbiAgfVxuXG4gIHJldHVybiBBcnJheS5mcm9tKGZyYWdtZW50LmNoaWxkTm9kZXMpO1xufTtcbiJdfQ==
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.MODE = void 0;
7
+ const MODE = {
8
+ RENDER: 'RENDER',
9
+ HYDRATE: 'HYDRATE'
10
+ };
11
+ exports.MODE = MODE;
12
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb25maWcvY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbIk1PREUiLCJSRU5ERVIiLCJIWURSQVRFIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBTyxNQUFNQSxJQUFJLEdBQUc7QUFDbEJDLEVBQUFBLE1BQU0sRUFBRSxRQURVO0FBRWxCQyxFQUFBQSxPQUFPLEVBQUU7QUFGUyxDQUFiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IE1PREUgPSB7XG4gIFJFTkRFUjogJ1JFTkRFUicgYXMgY29uc3QsXG4gIEhZRFJBVEU6ICdIWURSQVRFJyBhcyBjb25zdCxcbn07XG4iXX0=
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "MODE", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _constants.MODE;
10
+ }
11
+ });
12
+ exports.setConfig = exports.getConfig = void 0;
13
+
14
+ var _constants = require("./constants");
15
+
16
+ const DEFAULT_CROSS_ORIGIN = undefined;
17
+ const DEFAULT_MANIFEST = {
18
+ publicPath: '/',
19
+ assets: {}
20
+ };
21
+ const DEFAULT_MODE = _constants.MODE.HYDRATE;
22
+ const DEFAULT_RETRY = 2;
23
+ const config = {
24
+ crossOrigin: DEFAULT_CROSS_ORIGIN,
25
+ manifest: DEFAULT_MANIFEST,
26
+ mode: DEFAULT_MODE,
27
+ retry: DEFAULT_RETRY
28
+ };
29
+
30
+ const getConfig = () => config;
31
+
32
+ exports.getConfig = getConfig;
33
+
34
+ const setConfig = nextConfig => {
35
+ var _nextConfig$crossOrig, _nextConfig$manifest, _nextConfig$mode, _nextConfig$retry;
36
+
37
+ config.crossOrigin = (_nextConfig$crossOrig = nextConfig.crossOrigin) !== null && _nextConfig$crossOrig !== void 0 ? _nextConfig$crossOrig : DEFAULT_CROSS_ORIGIN;
38
+ config.manifest = (_nextConfig$manifest = nextConfig.manifest) !== null && _nextConfig$manifest !== void 0 ? _nextConfig$manifest : DEFAULT_MANIFEST;
39
+ config.mode = (_nextConfig$mode = nextConfig.mode) !== null && _nextConfig$mode !== void 0 ? _nextConfig$mode : DEFAULT_MODE;
40
+ config.retry = (_nextConfig$retry = nextConfig.retry) !== null && _nextConfig$retry !== void 0 ? _nextConfig$retry : DEFAULT_RETRY;
41
+ };
42
+
43
+ exports.setConfig = setConfig;
44
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb25maWcvaW5kZXgudHMiXSwibmFtZXMiOlsiREVGQVVMVF9DUk9TU19PUklHSU4iLCJ1bmRlZmluZWQiLCJERUZBVUxUX01BTklGRVNUIiwicHVibGljUGF0aCIsImFzc2V0cyIsIkRFRkFVTFRfTU9ERSIsIk1PREUiLCJIWURSQVRFIiwiREVGQVVMVF9SRVRSWSIsImNvbmZpZyIsImNyb3NzT3JpZ2luIiwibWFuaWZlc3QiLCJtb2RlIiwicmV0cnkiLCJnZXRDb25maWciLCJzZXRDb25maWciLCJuZXh0Q29uZmlnIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7O0FBRUE7O0FBRUEsTUFBTUEsb0JBQW9CLEdBQUdDLFNBQTdCO0FBRUEsTUFBTUMsZ0JBQWdCLEdBQUc7QUFDdkJDLEVBQUFBLFVBQVUsRUFBRSxHQURXO0FBRXZCQyxFQUFBQSxNQUFNLEVBQUU7QUFGZSxDQUF6QjtBQUtBLE1BQU1DLFlBQVksR0FBR0MsZ0JBQUtDLE9BQTFCO0FBRUEsTUFBTUMsYUFBYSxHQUFHLENBQXRCO0FBU0EsTUFBTUMsTUFBYyxHQUFHO0FBQ3JCQyxFQUFBQSxXQUFXLEVBQUVWLG9CQURRO0FBRXJCVyxFQUFBQSxRQUFRLEVBQUVULGdCQUZXO0FBR3JCVSxFQUFBQSxJQUFJLEVBQUVQLFlBSGU7QUFJckJRLEVBQUFBLEtBQUssRUFBRUw7QUFKYyxDQUF2Qjs7QUFTTyxNQUFNTSxTQUFTLEdBQUcsTUFBTUwsTUFBeEI7Ozs7QUFFQSxNQUFNTSxTQUFTLEdBQUlDLFVBQUQsSUFBaUM7QUFBQTs7QUFDeERQLEVBQUFBLE1BQU0sQ0FBQ0MsV0FBUCw0QkFBcUJNLFVBQVUsQ0FBQ04sV0FBaEMseUVBQStDVixvQkFBL0M7QUFDQVMsRUFBQUEsTUFBTSxDQUFDRSxRQUFQLDJCQUFrQkssVUFBVSxDQUFDTCxRQUE3Qix1RUFBeUNULGdCQUF6QztBQUNBTyxFQUFBQSxNQUFNLENBQUNHLElBQVAsdUJBQWNJLFVBQVUsQ0FBQ0osSUFBekIsK0RBQWlDUCxZQUFqQztBQUNBSSxFQUFBQSxNQUFNLENBQUNJLEtBQVAsd0JBQWVHLFVBQVUsQ0FBQ0gsS0FBMUIsaUVBQW1DTCxhQUFuQztBQUNELENBTE0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IE1hbmlmZXN0IH0gZnJvbSAnQHJlYWN0LWxvb3NlbHktbGF6eS9tYW5pZmVzdCc7XG5cbmltcG9ydCB7IE1PREUgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5cbmNvbnN0IERFRkFVTFRfQ1JPU1NfT1JJR0lOID0gdW5kZWZpbmVkO1xuXG5jb25zdCBERUZBVUxUX01BTklGRVNUID0ge1xuICBwdWJsaWNQYXRoOiAnLycsXG4gIGFzc2V0czoge30sXG59O1xuXG5jb25zdCBERUZBVUxUX01PREUgPSBNT0RFLkhZRFJBVEU7XG5cbmNvbnN0IERFRkFVTFRfUkVUUlkgPSAyO1xuXG5leHBvcnQgdHlwZSBDb25maWcgPSB7XG4gIGNyb3NzT3JpZ2luOiAnYW5vbnltb3VzJyB8ICd1c2UtY3JlZGVudGlhbHMnIHwgdW5kZWZpbmVkO1xuICBtYW5pZmVzdDogTWFuaWZlc3Q7XG4gIG1vZGU6IHR5cGVvZiBNT0RFLkhZRFJBVEUgfCB0eXBlb2YgTU9ERS5SRU5ERVI7XG4gIHJldHJ5OiBudW1iZXI7XG59O1xuXG5jb25zdCBjb25maWc6IENvbmZpZyA9IHtcbiAgY3Jvc3NPcmlnaW46IERFRkFVTFRfQ1JPU1NfT1JJR0lOLFxuICBtYW5pZmVzdDogREVGQVVMVF9NQU5JRkVTVCxcbiAgbW9kZTogREVGQVVMVF9NT0RFLFxuICByZXRyeTogREVGQVVMVF9SRVRSWSxcbn07XG5cbmV4cG9ydCB7IE1PREUgfTtcblxuZXhwb3J0IGNvbnN0IGdldENvbmZpZyA9ICgpID0+IGNvbmZpZztcblxuZXhwb3J0IGNvbnN0IHNldENvbmZpZyA9IChuZXh0Q29uZmlnOiBQYXJ0aWFsPENvbmZpZz4pID0+IHtcbiAgY29uZmlnLmNyb3NzT3JpZ2luID0gbmV4dENvbmZpZy5jcm9zc09yaWdpbiA/PyBERUZBVUxUX0NST1NTX09SSUdJTjtcbiAgY29uZmlnLm1hbmlmZXN0ID0gbmV4dENvbmZpZy5tYW5pZmVzdCA/PyBERUZBVUxUX01BTklGRVNUO1xuICBjb25maWcubW9kZSA9IG5leHRDb25maWcubW9kZSA/PyBERUZBVUxUX01PREU7XG4gIGNvbmZpZy5yZXRyeSA9IG5leHRDb25maWcucmV0cnkgPz8gREVGQVVMVF9SRVRSWTtcbn07XG4iXX0=
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.COLLECTED = exports.PHASE = void 0;
7
+ const PHASE = {
8
+ PAINT: 0,
9
+ AFTER_PAINT: 1,
10
+ LAZY: 2
11
+ };
12
+ exports.PHASE = PHASE;
13
+ const COLLECTED = new Map();
14
+ exports.COLLECTED = COLLECTED;
15
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb25zdGFudHMudHMiXSwibmFtZXMiOlsiUEhBU0UiLCJQQUlOVCIsIkFGVEVSX1BBSU5UIiwiTEFaWSIsIkNPTExFQ1RFRCIsIk1hcCJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQU8sTUFBTUEsS0FBSyxHQUFHO0FBQ25CQyxFQUFBQSxLQUFLLEVBQUUsQ0FEWTtBQUVuQkMsRUFBQUEsV0FBVyxFQUFFLENBRk07QUFHbkJDLEVBQUFBLElBQUksRUFBRTtBQUhhLENBQWQ7O0FBTUEsTUFBTUMsU0FBUyxHQUFHLElBQUlDLEdBQUosRUFBbEIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgUEhBU0UgPSB7XG4gIFBBSU5UOiAwLFxuICBBRlRFUl9QQUlOVDogMSxcbiAgTEFaWTogMixcbn07XG5cbmV4cG9ydCBjb25zdCBDT0xMRUNURUQgPSBuZXcgTWFwKCk7XG4iXX0=
@@ -0,0 +1,92 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "MODE", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _config.MODE;
10
+ }
11
+ });
12
+ Object.defineProperty(exports, "default", {
13
+ enumerable: true,
14
+ get: function () {
15
+ return _init.LooselyLazy;
16
+ }
17
+ });
18
+ Object.defineProperty(exports, "isLoaderError", {
19
+ enumerable: true,
20
+ get: function () {
21
+ return _lazy.isLoaderError;
22
+ }
23
+ });
24
+ Object.defineProperty(exports, "lazyForPaint", {
25
+ enumerable: true,
26
+ get: function () {
27
+ return _lazy.lazyForPaint;
28
+ }
29
+ });
30
+ Object.defineProperty(exports, "lazyAfterPaint", {
31
+ enumerable: true,
32
+ get: function () {
33
+ return _lazy.lazyAfterPaint;
34
+ }
35
+ });
36
+ Object.defineProperty(exports, "lazy", {
37
+ enumerable: true,
38
+ get: function () {
39
+ return _lazy.lazy;
40
+ }
41
+ });
42
+ Object.defineProperty(exports, "PRIORITY", {
43
+ enumerable: true,
44
+ get: function () {
45
+ return _lazy.PRIORITY;
46
+ }
47
+ });
48
+ Object.defineProperty(exports, "LazyWait", {
49
+ enumerable: true,
50
+ get: function () {
51
+ return _lazyWait.LazyWait;
52
+ }
53
+ });
54
+ Object.defineProperty(exports, "LazySuspense", {
55
+ enumerable: true,
56
+ get: function () {
57
+ return _suspense.LazySuspense;
58
+ }
59
+ });
60
+ Object.defineProperty(exports, "useLazyPhase", {
61
+ enumerable: true,
62
+ get: function () {
63
+ return _phase.useLazyPhase;
64
+ }
65
+ });
66
+ Object.defineProperty(exports, "GlobalReactLooselyLazyProfiler", {
67
+ enumerable: true,
68
+ get: function () {
69
+ return _profiler.GlobalReactLooselyLazyProfiler;
70
+ }
71
+ });
72
+ Object.defineProperty(exports, "ProfilerContext", {
73
+ enumerable: true,
74
+ get: function () {
75
+ return _profiler.ProfilerContext;
76
+ }
77
+ });
78
+
79
+ var _config = require("./config");
80
+
81
+ var _init = require("./init");
82
+
83
+ var _lazy = require("./lazy");
84
+
85
+ var _lazyWait = require("./lazy-wait");
86
+
87
+ var _suspense = require("./suspense");
88
+
89
+ var _phase = require("./phase");
90
+
91
+ var _profiler = require("./profiler");
92
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFFQTs7QUFHQTs7QUFnQkE7O0FBR0E7O0FBR0E7O0FBRUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBNT0RFIH0gZnJvbSAnLi9jb25maWcnO1xuXG5leHBvcnQgeyBMb29zZWx5TGF6eSBhcyBkZWZhdWx0IH0gZnJvbSAnLi9pbml0JztcbmV4cG9ydCB0eXBlIHsgSW5pdE9wdGlvbnMgfSBmcm9tICcuL2luaXQnO1xuXG5leHBvcnQge1xuICBpc0xvYWRlckVycm9yLFxuICBsYXp5Rm9yUGFpbnQsXG4gIGxhenlBZnRlclBhaW50LFxuICBsYXp5LFxuICBQUklPUklUWSxcbn0gZnJvbSAnLi9sYXp5JztcblxuZXhwb3J0IHR5cGUge1xuICBDbGllbnRMb2FkZXIsXG4gIExhenlDb21wb25lbnQsXG4gIExhenlPcHRpb25zLFxuICBMb2FkZXIsXG4gIFNlcnZlckxvYWRlcixcbn0gZnJvbSAnLi9sYXp5JztcblxuZXhwb3J0IHsgTGF6eVdhaXQgfSBmcm9tICcuL2xhenktd2FpdCc7XG5leHBvcnQgdHlwZSB7IExhenlXYWl0UHJvcHMgfSBmcm9tICcuL2xhenktd2FpdCc7XG5cbmV4cG9ydCB7IExhenlTdXNwZW5zZSB9IGZyb20gJy4vc3VzcGVuc2UnO1xuZXhwb3J0IHR5cGUgeyBGYWxsYmFjaywgTGF6eVN1c3BlbnNlUHJvcHMgfSBmcm9tICcuL3N1c3BlbnNlJztcblxuZXhwb3J0IHsgdXNlTGF6eVBoYXNlIH0gZnJvbSAnLi9waGFzZSc7XG5cbmV4cG9ydCB7IEdsb2JhbFJlYWN0TG9vc2VseUxhenlQcm9maWxlciwgUHJvZmlsZXJDb250ZXh0IH0gZnJvbSAnLi9wcm9maWxlcic7XG4iXX0=
@@ -1,10 +1,7 @@
1
1
  // @flow strict
2
2
 
3
+ import type { Manifest } from '@react-loosely-lazy/manifest';
3
4
  import type { ComponentType, ElementConfig, Node } from 'react';
4
- import type { Manifest } from './manifest';
5
-
6
- export { getAssetUrlsFromId } from './manifest';
7
- export type { Asset, Manifest } from './manifest';
8
5
 
9
6
  declare export var MODE: {
10
7
  RENDER: string,
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.LooselyLazy = void 0;
7
+
8
+ var _collect = require("../collect");
9
+
10
+ var _config = require("../config");
11
+
12
+ var _phase = require("../phase");
13
+
14
+ var _utils = require("../utils");
15
+
16
+ const LooselyLazy = {
17
+ init: config => {
18
+ (0, _config.setConfig)(config);
19
+ _phase.LISTENERS.length = 0;
20
+ (0, _phase.setCurrent)(0);
21
+
22
+ if (!(0, _utils.isNodeEnvironment)()) {
23
+ (0, _collect.collect)();
24
+ }
25
+ }
26
+ };
27
+ exports.LooselyLazy = LooselyLazy;
28
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9pbml0L2luZGV4LnRzIl0sIm5hbWVzIjpbIkxvb3NlbHlMYXp5IiwiaW5pdCIsImNvbmZpZyIsIkxJU1RFTkVSUyIsImxlbmd0aCJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOztBQUNBOztBQUVBOztBQUNBOztBQUlPLE1BQU1BLFdBQVcsR0FBRztBQUN6QkMsRUFBQUEsSUFBSSxFQUFHQyxNQUFELElBQXlCO0FBQzdCLDJCQUFVQSxNQUFWO0FBRUFDLHFCQUFVQyxNQUFWLEdBQW1CLENBQW5CO0FBQ0EsMkJBQVcsQ0FBWDs7QUFFQSxRQUFJLENBQUMsK0JBQUwsRUFBMEI7QUFDeEI7QUFDRDtBQUNGO0FBVndCLENBQXBCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29sbGVjdCB9IGZyb20gJy4uL2NvbGxlY3QnO1xuaW1wb3J0IHsgc2V0Q29uZmlnIH0gZnJvbSAnLi4vY29uZmlnJztcbmltcG9ydCB0eXBlIHsgQ29uZmlnIH0gZnJvbSAnLi4vY29uZmlnJztcbmltcG9ydCB7IExJU1RFTkVSUywgc2V0Q3VycmVudCB9IGZyb20gJy4uL3BoYXNlJztcbmltcG9ydCB7IGlzTm9kZUVudmlyb25tZW50IH0gZnJvbSAnLi4vdXRpbHMnO1xuXG5leHBvcnQgdHlwZSBJbml0T3B0aW9ucyA9IFBhcnRpYWw8Q29uZmlnPjtcblxuZXhwb3J0IGNvbnN0IExvb3NlbHlMYXp5ID0ge1xuICBpbml0OiAoY29uZmlnOiBJbml0T3B0aW9ucykgPT4ge1xuICAgIHNldENvbmZpZyhjb25maWcpO1xuXG4gICAgTElTVEVORVJTLmxlbmd0aCA9IDA7XG4gICAgc2V0Q3VycmVudCgwKTtcblxuICAgIGlmICghaXNOb2RlRW52aXJvbm1lbnQoKSkge1xuICAgICAgY29sbGVjdCgpO1xuICAgIH1cbiAgfSxcbn07XG4iXX0=
@@ -0,0 +1,145 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.createComponentClient = createComponentClient;
7
+
8
+ var _react = _interopRequireWildcard(require("react"));
9
+
10
+ var _config = require("../../config");
11
+
12
+ var _constants = require("../../constants");
13
+
14
+ var _lazyWait = require("../../lazy-wait");
15
+
16
+ var _phase = require("../../phase");
17
+
18
+ var _suspense = require("../../suspense");
19
+
20
+ var _constants2 = require("../constants");
21
+
22
+ var _errors = require("../errors");
23
+
24
+ var _render = require("../placeholders/render");
25
+
26
+ var _hydrate = require("../placeholders/hydrate");
27
+
28
+ var _preload = require("../preload");
29
+
30
+ var _profiler = require("../../profiler");
31
+
32
+ var _utils = require("./utils");
33
+
34
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
35
+
36
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
37
+
38
+ // @ts-expect-error requestIdleCallback might not exist
39
+ const {
40
+ requestIdleCallback = setTimeout
41
+ } = window;
42
+
43
+ function createComponentClient({
44
+ defer,
45
+ deferred,
46
+ dataLazyId,
47
+ moduleId
48
+ }) {
49
+ const ResolvedLazy = /*#__PURE__*/(0, _react.lazy)(() => deferred.promise);
50
+ return props => {
51
+ // use a single piece of state to hold info about progress or eventually
52
+ // throw an error. We do change it via direct mutation as re-renders
53
+ // break Suspense in React 18, making it lose hydration state
54
+ const [status, bubbleError] = (0, _react.useState)(() => ({
55
+ noWait: undefined,
56
+ phase: defer === _constants.PHASE.AFTER_PAINT ? false : true,
57
+ preloaded: defer === _constants.PHASE.AFTER_PAINT ? false : true,
58
+ started: false
59
+ }));
60
+ const profiler = (0, _react.useContext)(_profiler.ProfilerContext).current;
61
+
62
+ const load = () => {
63
+ if (status.started || !status.phase || !status.noWait) {
64
+ return;
65
+ }
66
+
67
+ status.started = true;
68
+ let onResolve;
69
+
70
+ if (profiler) {
71
+ const eventInfo = {
72
+ identifier: moduleId
73
+ };
74
+
75
+ onResolve = () => {
76
+ profiler.onLoadComplete(eventInfo);
77
+ };
78
+
79
+ profiler.onLoadStart(eventInfo);
80
+ }
81
+
82
+ const result = deferred.start().catch(err => {
83
+ // Throw the error within the component lifecycle
84
+ // refer to https://github.com/facebook/react/issues/11409
85
+ bubbleError(() => {
86
+ throw (0, _errors.createLoaderError)(err);
87
+ });
88
+ });
89
+
90
+ if (onResolve) {
91
+ result.then(onResolve);
92
+ }
93
+ }; // Subscribe to LazyWait context, triggering load when until is true
94
+
95
+
96
+ (0, _utils.useSubscription)({
97
+ context: _lazyWait.WaitContext,
98
+ load,
99
+ onValue: v => status.noWait = v === 1
100
+ });
101
+
102
+ if (defer === _constants.PHASE.AFTER_PAINT) {
103
+ // Subscribe to LazyPhase context, triggering load when own phase starts
104
+ (0, _utils.useSubscription)({
105
+ context: _phase.LazyPhaseContext,
106
+ load,
107
+ onValue: v => status.phase = v >= defer
108
+ }); // Schedule preloading as will be needed soon
109
+
110
+ (0, _react.useMemo)(() => {
111
+ if (!status.preloaded) {
112
+ status.preloaded = true;
113
+ requestIdleCallback(() => {
114
+ if (status.started) return;
115
+ (0, _preload.preloadAsset)({
116
+ loader: deferred.preload,
117
+ moduleId,
118
+ priority: _constants2.PRIORITY.LOW
119
+ });
120
+ });
121
+ }
122
+ }, [status]);
123
+ }
124
+
125
+ const {
126
+ setFallback
127
+ } = (0, _react.useContext)(_suspense.LazySuspenseContext);
128
+ (0, _react.useMemo)(() => {
129
+ // find SSR content (or fallbacks) wrapped in inputs based on lazyId
130
+ const content = (_constants.COLLECTED.get(dataLazyId) || []).shift();
131
+ if (!content) return; // override Suspense fallback with magic input wrappers
132
+
133
+ const component = (0, _config.getConfig)().mode === _config.MODE.RENDER ? /*#__PURE__*/_react.default.createElement(_render.PlaceholderFallbackRender, {
134
+ id: dataLazyId,
135
+ content: content
136
+ }) : /*#__PURE__*/_react.default.createElement(_hydrate.PlaceholderFallbackHydrate, {
137
+ id: dataLazyId,
138
+ content: content
139
+ });
140
+ setFallback(component);
141
+ }, [setFallback]);
142
+ return /*#__PURE__*/_react.default.createElement(ResolvedLazy, props);
143
+ };
144
+ }
145
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9sYXp5L2NvbXBvbmVudHMvY2xpZW50LnRzeCJdLCJuYW1lcyI6WyJyZXF1ZXN0SWRsZUNhbGxiYWNrIiwic2V0VGltZW91dCIsIndpbmRvdyIsImNyZWF0ZUNvbXBvbmVudENsaWVudCIsImRlZmVyIiwiZGVmZXJyZWQiLCJkYXRhTGF6eUlkIiwibW9kdWxlSWQiLCJSZXNvbHZlZExhenkiLCJwcm9taXNlIiwicHJvcHMiLCJzdGF0dXMiLCJidWJibGVFcnJvciIsIm5vV2FpdCIsInVuZGVmaW5lZCIsInBoYXNlIiwiUEhBU0UiLCJBRlRFUl9QQUlOVCIsInByZWxvYWRlZCIsInN0YXJ0ZWQiLCJwcm9maWxlciIsIlByb2ZpbGVyQ29udGV4dCIsImN1cnJlbnQiLCJsb2FkIiwib25SZXNvbHZlIiwiZXZlbnRJbmZvIiwiaWRlbnRpZmllciIsIm9uTG9hZENvbXBsZXRlIiwib25Mb2FkU3RhcnQiLCJyZXN1bHQiLCJzdGFydCIsImNhdGNoIiwiZXJyIiwidGhlbiIsImNvbnRleHQiLCJXYWl0Q29udGV4dCIsIm9uVmFsdWUiLCJ2IiwiTGF6eVBoYXNlQ29udGV4dCIsImxvYWRlciIsInByZWxvYWQiLCJwcmlvcml0eSIsIlBSSU9SSVRZIiwiTE9XIiwic2V0RmFsbGJhY2siLCJMYXp5U3VzcGVuc2VDb250ZXh0IiwiY29udGVudCIsIkNPTExFQ1RFRCIsImdldCIsInNoaWZ0IiwiY29tcG9uZW50IiwibW9kZSIsIk1PREUiLCJSRU5ERVIiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTs7QUFHQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQTs7QUFFQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFHQTs7Ozs7O0FBRUE7QUFDQSxNQUFNO0FBQUVBLEVBQUFBLG1CQUFtQixHQUFHQztBQUF4QixJQUF1Q0MsTUFBN0M7O0FBRU8sU0FBU0MscUJBQVQsQ0FBNkQ7QUFDbEVDLEVBQUFBLEtBRGtFO0FBRWxFQyxFQUFBQSxRQUZrRTtBQUdsRUMsRUFBQUEsVUFIa0U7QUFJbEVDLEVBQUFBO0FBSmtFLENBQTdELEVBVUo7QUFDRCxRQUFNQyxZQUFZLGdCQUFHLGlCQUFLLE1BQU1ILFFBQVEsQ0FBQ0ksT0FBcEIsQ0FBckI7QUFFQSxTQUFRQyxLQUFELElBQThCO0FBQ25DO0FBQ0E7QUFDQTtBQUNBLFVBQU0sQ0FBQ0MsTUFBRCxFQUFTQyxXQUFULElBQXdCLHFCQUFpQixPQUFPO0FBQ3BEQyxNQUFBQSxNQUFNLEVBQUVDLFNBRDRDO0FBRXBEQyxNQUFBQSxLQUFLLEVBQUVYLEtBQUssS0FBS1ksaUJBQU1DLFdBQWhCLEdBQThCLEtBQTlCLEdBQXNDLElBRk87QUFHcERDLE1BQUFBLFNBQVMsRUFBRWQsS0FBSyxLQUFLWSxpQkFBTUMsV0FBaEIsR0FBOEIsS0FBOUIsR0FBc0MsSUFIRztBQUlwREUsTUFBQUEsT0FBTyxFQUFFO0FBSjJDLEtBQVAsQ0FBakIsQ0FBOUI7QUFPQSxVQUFNQyxRQUFRLEdBQUcsdUJBQVdDLHlCQUFYLEVBQTRCQyxPQUE3Qzs7QUFFQSxVQUFNQyxJQUFJLEdBQUcsTUFBTTtBQUNqQixVQUFJWixNQUFNLENBQUNRLE9BQVAsSUFBa0IsQ0FBQ1IsTUFBTSxDQUFDSSxLQUExQixJQUFtQyxDQUFDSixNQUFNLENBQUNFLE1BQS9DLEVBQXVEO0FBQ3JEO0FBQ0Q7O0FBRURGLE1BQUFBLE1BQU0sQ0FBQ1EsT0FBUCxHQUFpQixJQUFqQjtBQUNBLFVBQUlLLFNBQUo7O0FBQ0EsVUFBSUosUUFBSixFQUFjO0FBQ1osY0FBTUssU0FBUyxHQUFHO0FBQUVDLFVBQUFBLFVBQVUsRUFBRW5CO0FBQWQsU0FBbEI7O0FBQ0FpQixRQUFBQSxTQUFTLEdBQUcsTUFBTTtBQUNoQkosVUFBQUEsUUFBUSxDQUFDTyxjQUFULENBQXdCRixTQUF4QjtBQUNELFNBRkQ7O0FBR0FMLFFBQUFBLFFBQVEsQ0FBQ1EsV0FBVCxDQUFxQkgsU0FBckI7QUFDRDs7QUFFRCxZQUFNSSxNQUFNLEdBQUd4QixRQUFRLENBQUN5QixLQUFULEdBQWlCQyxLQUFqQixDQUF3QkMsR0FBRCxJQUFnQjtBQUNwRDtBQUNBO0FBQ0FwQixRQUFBQSxXQUFXLENBQUMsTUFBTTtBQUNoQixnQkFBTSwrQkFBa0JvQixHQUFsQixDQUFOO0FBQ0QsU0FGVSxDQUFYO0FBR0QsT0FOYyxDQUFmOztBQVFBLFVBQUlSLFNBQUosRUFBZTtBQUNiSyxRQUFBQSxNQUFNLENBQUNJLElBQVAsQ0FBWVQsU0FBWjtBQUNEO0FBQ0YsS0ExQkQsQ0FibUMsQ0F5Q25DOzs7QUFDQSxnQ0FBZ0I7QUFDZFUsTUFBQUEsT0FBTyxFQUFFQyxxQkFESztBQUVkWixNQUFBQSxJQUZjO0FBR2RhLE1BQUFBLE9BQU8sRUFBRUMsQ0FBQyxJQUFLMUIsTUFBTSxDQUFDRSxNQUFQLEdBQWdCd0IsQ0FBQyxLQUFLO0FBSHZCLEtBQWhCOztBQU1BLFFBQUlqQyxLQUFLLEtBQUtZLGlCQUFNQyxXQUFwQixFQUFpQztBQUMvQjtBQUNBLGtDQUFnQjtBQUNkaUIsUUFBQUEsT0FBTyxFQUFFSSx1QkFESztBQUVkZixRQUFBQSxJQUZjO0FBR2RhLFFBQUFBLE9BQU8sRUFBRUMsQ0FBQyxJQUFLMUIsTUFBTSxDQUFDSSxLQUFQLEdBQWVzQixDQUFDLElBQUlqQztBQUhyQixPQUFoQixFQUYrQixDQVEvQjs7QUFDQSwwQkFBUSxNQUFNO0FBQ1osWUFBSSxDQUFDTyxNQUFNLENBQUNPLFNBQVosRUFBdUI7QUFDckJQLFVBQUFBLE1BQU0sQ0FBQ08sU0FBUCxHQUFtQixJQUFuQjtBQUNBbEIsVUFBQUEsbUJBQW1CLENBQUMsTUFBTTtBQUN4QixnQkFBSVcsTUFBTSxDQUFDUSxPQUFYLEVBQW9CO0FBQ3BCLHVDQUFhO0FBQ1hvQixjQUFBQSxNQUFNLEVBQUVsQyxRQUFRLENBQUNtQyxPQUROO0FBRVhqQyxjQUFBQSxRQUZXO0FBR1hrQyxjQUFBQSxRQUFRLEVBQUVDLHFCQUFTQztBQUhSLGFBQWI7QUFLRCxXQVBrQixDQUFuQjtBQVFEO0FBQ0YsT0FaRCxFQVlHLENBQUNoQyxNQUFELENBWkg7QUFhRDs7QUFFRCxVQUFNO0FBQUVpQyxNQUFBQTtBQUFGLFFBQWtCLHVCQUFXQyw2QkFBWCxDQUF4QjtBQUVBLHdCQUFRLE1BQU07QUFDWjtBQUNBLFlBQU1DLE9BQU8sR0FBRyxDQUFDQyxxQkFBVUMsR0FBVixDQUFjMUMsVUFBZCxLQUE2QixFQUE5QixFQUFrQzJDLEtBQWxDLEVBQWhCO0FBQ0EsVUFBSSxDQUFDSCxPQUFMLEVBQWMsT0FIRixDQUtaOztBQUNBLFlBQU1JLFNBQVMsR0FDYix5QkFBWUMsSUFBWixLQUFxQkMsYUFBS0MsTUFBMUIsZ0JBQ0UsNkJBQUMsaUNBQUQ7QUFBMkIsUUFBQSxFQUFFLEVBQUUvQyxVQUEvQjtBQUEyQyxRQUFBLE9BQU8sRUFBRXdDO0FBQXBELFFBREYsZ0JBR0UsNkJBQUMsbUNBQUQ7QUFBNEIsUUFBQSxFQUFFLEVBQUV4QyxVQUFoQztBQUE0QyxRQUFBLE9BQU8sRUFBRXdDO0FBQXJELFFBSko7QUFNQUYsTUFBQUEsV0FBVyxDQUFDTSxTQUFELENBQVg7QUFDRCxLQWJELEVBYUcsQ0FBQ04sV0FBRCxDQWJIO0FBZUEsd0JBQU8sNkJBQUMsWUFBRCxFQUFrQmxDLEtBQWxCLENBQVA7QUFDRCxHQTFGRDtBQTJGRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyBsYXp5LCB1c2VDb250ZXh0LCB1c2VNZW1vLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB0eXBlIHsgQ29tcG9uZW50UHJvcHMsIENvbXBvbmVudFR5cGUgfSBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCB7IGdldENvbmZpZywgTU9ERSB9IGZyb20gJy4uLy4uL2NvbmZpZyc7XG5pbXBvcnQgeyBDT0xMRUNURUQsIFBIQVNFIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzJztcbmltcG9ydCB7IFdhaXRDb250ZXh0IH0gZnJvbSAnLi4vLi4vbGF6eS13YWl0JztcbmltcG9ydCB7IExhenlQaGFzZUNvbnRleHQgfSBmcm9tICcuLi8uLi9waGFzZSc7XG5pbXBvcnQgeyBMYXp5U3VzcGVuc2VDb250ZXh0IH0gZnJvbSAnLi4vLi4vc3VzcGVuc2UnO1xuXG5pbXBvcnQgeyBQUklPUklUWSB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBEZWZlcnJlZCB9IGZyb20gJy4uL2RlZmVycmVkJztcbmltcG9ydCB7IGNyZWF0ZUxvYWRlckVycm9yIH0gZnJvbSAnLi4vZXJyb3JzJztcbmltcG9ydCB7IFBsYWNlaG9sZGVyRmFsbGJhY2tSZW5kZXIgfSBmcm9tICcuLi9wbGFjZWhvbGRlcnMvcmVuZGVyJztcbmltcG9ydCB7IFBsYWNlaG9sZGVyRmFsbGJhY2tIeWRyYXRlIH0gZnJvbSAnLi4vcGxhY2Vob2xkZXJzL2h5ZHJhdGUnO1xuaW1wb3J0IHsgcHJlbG9hZEFzc2V0IH0gZnJvbSAnLi4vcHJlbG9hZCc7XG5pbXBvcnQgeyBQcm9maWxlckNvbnRleHQgfSBmcm9tICcuLi8uLi9wcm9maWxlcic7XG5cbmltcG9ydCB0eXBlIHsgU3RhdHVzIH0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgeyB1c2VTdWJzY3JpcHRpb24gfSBmcm9tICcuL3V0aWxzJztcblxuLy8gQHRzLWV4cGVjdC1lcnJvciByZXF1ZXN0SWRsZUNhbGxiYWNrIG1pZ2h0IG5vdCBleGlzdFxuY29uc3QgeyByZXF1ZXN0SWRsZUNhbGxiYWNrID0gc2V0VGltZW91dCB9ID0gd2luZG93O1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlQ29tcG9uZW50Q2xpZW50PEMgZXh0ZW5kcyBDb21wb25lbnRUeXBlPGFueT4+KHtcbiAgZGVmZXIsXG4gIGRlZmVycmVkLFxuICBkYXRhTGF6eUlkLFxuICBtb2R1bGVJZCxcbn06IHtcbiAgZGVmZXI6IG51bWJlcjtcbiAgZGVmZXJyZWQ6IERlZmVycmVkPEM+O1xuICBkYXRhTGF6eUlkOiBzdHJpbmc7XG4gIG1vZHVsZUlkOiBzdHJpbmc7XG59KSB7XG4gIGNvbnN0IFJlc29sdmVkTGF6eSA9IGxhenkoKCkgPT4gZGVmZXJyZWQucHJvbWlzZSk7XG5cbiAgcmV0dXJuIChwcm9wczogQ29tcG9uZW50UHJvcHM8Qz4pID0+IHtcbiAgICAvLyB1c2UgYSBzaW5nbGUgcGllY2Ugb2Ygc3RhdGUgdG8gaG9sZCBpbmZvIGFib3V0IHByb2dyZXNzIG9yIGV2ZW50dWFsbHlcbiAgICAvLyB0aHJvdyBhbiBlcnJvci4gV2UgZG8gY2hhbmdlIGl0IHZpYSBkaXJlY3QgbXV0YXRpb24gYXMgcmUtcmVuZGVyc1xuICAgIC8vIGJyZWFrIFN1c3BlbnNlIGluIFJlYWN0IDE4LCBtYWtpbmcgaXQgbG9zZSBoeWRyYXRpb24gc3RhdGVcbiAgICBjb25zdCBbc3RhdHVzLCBidWJibGVFcnJvcl0gPSB1c2VTdGF0ZTxTdGF0dXM+KCgpID0+ICh7XG4gICAgICBub1dhaXQ6IHVuZGVmaW5lZCxcbiAgICAgIHBoYXNlOiBkZWZlciA9PT0gUEhBU0UuQUZURVJfUEFJTlQgPyBmYWxzZSA6IHRydWUsXG4gICAgICBwcmVsb2FkZWQ6IGRlZmVyID09PSBQSEFTRS5BRlRFUl9QQUlOVCA/IGZhbHNlIDogdHJ1ZSxcbiAgICAgIHN0YXJ0ZWQ6IGZhbHNlLFxuICAgIH0pKTtcblxuICAgIGNvbnN0IHByb2ZpbGVyID0gdXNlQ29udGV4dChQcm9maWxlckNvbnRleHQpLmN1cnJlbnQ7XG5cbiAgICBjb25zdCBsb2FkID0gKCkgPT4ge1xuICAgICAgaWYgKHN0YXR1cy5zdGFydGVkIHx8ICFzdGF0dXMucGhhc2UgfHwgIXN0YXR1cy5ub1dhaXQpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBzdGF0dXMuc3RhcnRlZCA9IHRydWU7XG4gICAgICBsZXQgb25SZXNvbHZlO1xuICAgICAgaWYgKHByb2ZpbGVyKSB7XG4gICAgICAgIGNvbnN0IGV2ZW50SW5mbyA9IHsgaWRlbnRpZmllcjogbW9kdWxlSWQgfTtcbiAgICAgICAgb25SZXNvbHZlID0gKCkgPT4ge1xuICAgICAgICAgIHByb2ZpbGVyLm9uTG9hZENvbXBsZXRlKGV2ZW50SW5mbyk7XG4gICAgICAgIH07XG4gICAgICAgIHByb2ZpbGVyLm9uTG9hZFN0YXJ0KGV2ZW50SW5mbyk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHJlc3VsdCA9IGRlZmVycmVkLnN0YXJ0KCkuY2F0Y2goKGVycjogRXJyb3IpID0+IHtcbiAgICAgICAgLy8gVGhyb3cgdGhlIGVycm9yIHdpdGhpbiB0aGUgY29tcG9uZW50IGxpZmVjeWNsZVxuICAgICAgICAvLyByZWZlciB0byBodHRwczovL2dpdGh1Yi5jb20vZmFjZWJvb2svcmVhY3QvaXNzdWVzLzExNDA5XG4gICAgICAgIGJ1YmJsZUVycm9yKCgpID0+IHtcbiAgICAgICAgICB0aHJvdyBjcmVhdGVMb2FkZXJFcnJvcihlcnIpO1xuICAgICAgICB9KTtcbiAgICAgIH0pO1xuXG4gICAgICBpZiAob25SZXNvbHZlKSB7XG4gICAgICAgIHJlc3VsdC50aGVuKG9uUmVzb2x2ZSk7XG4gICAgICB9XG4gICAgfTtcblxuICAgIC8vIFN1YnNjcmliZSB0byBMYXp5V2FpdCBjb250ZXh0LCB0cmlnZ2VyaW5nIGxvYWQgd2hlbiB1bnRpbCBpcyB0cnVlXG4gICAgdXNlU3Vic2NyaXB0aW9uKHtcbiAgICAgIGNvbnRleHQ6IFdhaXRDb250ZXh0LFxuICAgICAgbG9hZCxcbiAgICAgIG9uVmFsdWU6IHYgPT4gKHN0YXR1cy5ub1dhaXQgPSB2ID09PSAxKSxcbiAgICB9KTtcblxuICAgIGlmIChkZWZlciA9PT0gUEhBU0UuQUZURVJfUEFJTlQpIHtcbiAgICAgIC8vIFN1YnNjcmliZSB0byBMYXp5UGhhc2UgY29udGV4dCwgdHJpZ2dlcmluZyBsb2FkIHdoZW4gb3duIHBoYXNlIHN0YXJ0c1xuICAgICAgdXNlU3Vic2NyaXB0aW9uKHtcbiAgICAgICAgY29udGV4dDogTGF6eVBoYXNlQ29udGV4dCxcbiAgICAgICAgbG9hZCxcbiAgICAgICAgb25WYWx1ZTogdiA9PiAoc3RhdHVzLnBoYXNlID0gdiA+PSBkZWZlciksXG4gICAgICB9KTtcblxuICAgICAgLy8gU2NoZWR1bGUgcHJlbG9hZGluZyBhcyB3aWxsIGJlIG5lZWRlZCBzb29uXG4gICAgICB1c2VNZW1vKCgpID0+IHtcbiAgICAgICAgaWYgKCFzdGF0dXMucHJlbG9hZGVkKSB7XG4gICAgICAgICAgc3RhdHVzLnByZWxvYWRlZCA9IHRydWU7XG4gICAgICAgICAgcmVxdWVzdElkbGVDYWxsYmFjaygoKSA9PiB7XG4gICAgICAgICAgICBpZiAoc3RhdHVzLnN0YXJ0ZWQpIHJldHVybjtcbiAgICAgICAgICAgIHByZWxvYWRBc3NldCh7XG4gICAgICAgICAgICAgIGxvYWRlcjogZGVmZXJyZWQucHJlbG9hZCxcbiAgICAgICAgICAgICAgbW9kdWxlSWQsXG4gICAgICAgICAgICAgIHByaW9yaXR5OiBQUklPUklUWS5MT1csXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfSwgW3N0YXR1c10pO1xuICAgIH1cblxuICAgIGNvbnN0IHsgc2V0RmFsbGJhY2sgfSA9IHVzZUNvbnRleHQoTGF6eVN1c3BlbnNlQ29udGV4dCk7XG5cbiAgICB1c2VNZW1vKCgpID0+IHtcbiAgICAgIC8vIGZpbmQgU1NSIGNvbnRlbnQgKG9yIGZhbGxiYWNrcykgd3JhcHBlZCBpbiBpbnB1dHMgYmFzZWQgb24gbGF6eUlkXG4gICAgICBjb25zdCBjb250ZW50ID0gKENPTExFQ1RFRC5nZXQoZGF0YUxhenlJZCkgfHwgW10pLnNoaWZ0KCk7XG4gICAgICBpZiAoIWNvbnRlbnQpIHJldHVybjtcblxuICAgICAgLy8gb3ZlcnJpZGUgU3VzcGVuc2UgZmFsbGJhY2sgd2l0aCBtYWdpYyBpbnB1dCB3cmFwcGVyc1xuICAgICAgY29uc3QgY29tcG9uZW50ID1cbiAgICAgICAgZ2V0Q29uZmlnKCkubW9kZSA9PT0gTU9ERS5SRU5ERVIgPyAoXG4gICAgICAgICAgPFBsYWNlaG9sZGVyRmFsbGJhY2tSZW5kZXIgaWQ9e2RhdGFMYXp5SWR9IGNvbnRlbnQ9e2NvbnRlbnR9IC8+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPFBsYWNlaG9sZGVyRmFsbGJhY2tIeWRyYXRlIGlkPXtkYXRhTGF6eUlkfSBjb250ZW50PXtjb250ZW50fSAvPlxuICAgICAgICApO1xuICAgICAgc2V0RmFsbGJhY2soY29tcG9uZW50KTtcbiAgICB9LCBbc2V0RmFsbGJhY2tdKTtcblxuICAgIHJldHVybiA8UmVzb2x2ZWRMYXp5IHsuLi5wcm9wc30gLz47XG4gIH07XG59XG4iXX0=
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.createComponentServer = createComponentServer;
7
+
8
+ var _manifest = require("@react-loosely-lazy/manifest");
9
+
10
+ var _react = _interopRequireWildcard(require("react"));
11
+
12
+ var _config = require("../../config");
13
+
14
+ var _constants = require("../../constants");
15
+
16
+ var _suspense = require("../../suspense");
17
+
18
+ var _utils = require("../../utils");
19
+
20
+ var _errors = require("../errors");
21
+
22
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
23
+
24
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
25
+
26
+ function load(moduleId, loader) {
27
+ try {
28
+ return (0, _utils.getExport)(loader());
29
+ } catch (err) {
30
+ throw (0, _errors.createLoaderError)(err);
31
+ }
32
+ }
33
+
34
+ function createComponentServer({
35
+ dataLazyId,
36
+ defer,
37
+ loader,
38
+ moduleId,
39
+ ssr
40
+ }) {
41
+ return props => {
42
+ var _getAssetUrlsFromId;
43
+
44
+ const Resolved = ssr ? load(moduleId, loader) : null;
45
+ const {
46
+ fallback
47
+ } = (0, _react.useContext)(_suspense.LazySuspenseContext);
48
+ const {
49
+ crossOrigin,
50
+ manifest
51
+ } = (0, _config.getConfig)();
52
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("input", {
53
+ type: "hidden",
54
+ "data-lazy-begin": dataLazyId
55
+ }), defer !== _constants.PHASE.LAZY && ((_getAssetUrlsFromId = (0, _manifest.getAssetUrlsFromId)(manifest, moduleId)) === null || _getAssetUrlsFromId === void 0 ? void 0 : _getAssetUrlsFromId.map(url => /*#__PURE__*/_react.default.createElement("link", {
56
+ key: url,
57
+ rel: defer === _constants.PHASE.PAINT ? 'preload' : 'prefetch',
58
+ href: url,
59
+ crossOrigin: crossOrigin,
60
+ as: "script"
61
+ }))), Resolved ? /*#__PURE__*/_react.default.createElement(Resolved, props) : fallback, /*#__PURE__*/_react.default.createElement("input", {
62
+ type: "hidden",
63
+ "data-lazy-end": dataLazyId
64
+ }));
65
+ };
66
+ }
67
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9sYXp5L2NvbXBvbmVudHMvc2VydmVyLnRzeCJdLCJuYW1lcyI6WyJsb2FkIiwibW9kdWxlSWQiLCJsb2FkZXIiLCJlcnIiLCJjcmVhdGVDb21wb25lbnRTZXJ2ZXIiLCJkYXRhTGF6eUlkIiwiZGVmZXIiLCJzc3IiLCJwcm9wcyIsIlJlc29sdmVkIiwiZmFsbGJhY2siLCJMYXp5U3VzcGVuc2VDb250ZXh0IiwiY3Jvc3NPcmlnaW4iLCJtYW5pZmVzdCIsIlBIQVNFIiwiTEFaWSIsIm1hcCIsInVybCIsIlBBSU5UIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7O0FBQ0E7O0FBR0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUE7Ozs7OztBQUdBLFNBQVNBLElBQVQsQ0FBaUJDLFFBQWpCLEVBQW1DQyxNQUFuQyxFQUE0RDtBQUMxRCxNQUFJO0FBQ0YsV0FBTyxzQkFBVUEsTUFBTSxFQUFoQixDQUFQO0FBQ0QsR0FGRCxDQUVFLE9BQU9DLEdBQVAsRUFBWTtBQUNaLFVBQU0sK0JBQWtCQSxHQUFsQixDQUFOO0FBQ0Q7QUFDRjs7QUFFTSxTQUFTQyxxQkFBVCxDQUE2RDtBQUNsRUMsRUFBQUEsVUFEa0U7QUFFbEVDLEVBQUFBLEtBRmtFO0FBR2xFSixFQUFBQSxNQUhrRTtBQUlsRUQsRUFBQUEsUUFKa0U7QUFLbEVNLEVBQUFBO0FBTGtFLENBQTdELEVBWUo7QUFDRCxTQUFRQyxLQUFELElBQThCO0FBQUE7O0FBQ25DLFVBQU1DLFFBQVEsR0FBR0YsR0FBRyxHQUFHUCxJQUFJLENBQUNDLFFBQUQsRUFBV0MsTUFBWCxDQUFQLEdBQTRCLElBQWhEO0FBQ0EsVUFBTTtBQUFFUSxNQUFBQTtBQUFGLFFBQWUsdUJBQVdDLDZCQUFYLENBQXJCO0FBQ0EsVUFBTTtBQUFFQyxNQUFBQSxXQUFGO0FBQWVDLE1BQUFBO0FBQWYsUUFBNEIsd0JBQWxDO0FBRUEsd0JBQ0UseUVBQ0U7QUFBTyxNQUFBLElBQUksRUFBQyxRQUFaO0FBQXFCLHlCQUFpQlI7QUFBdEMsTUFERixFQUVHQyxLQUFLLEtBQUtRLGlCQUFNQyxJQUFoQiw0QkFDQyxrQ0FBbUJGLFFBQW5CLEVBQTZCWixRQUE3QixDQURELHdEQUNDLG9CQUF3Q2UsR0FBeEMsQ0FBNENDLEdBQUcsaUJBQzdDO0FBQ0UsTUFBQSxHQUFHLEVBQUVBLEdBRFA7QUFFRSxNQUFBLEdBQUcsRUFBRVgsS0FBSyxLQUFLUSxpQkFBTUksS0FBaEIsR0FBd0IsU0FBeEIsR0FBb0MsVUFGM0M7QUFHRSxNQUFBLElBQUksRUFBRUQsR0FIUjtBQUlFLE1BQUEsV0FBVyxFQUFFTCxXQUpmO0FBS0UsTUFBQSxFQUFFLEVBQUM7QUFMTCxNQURGLENBREQsQ0FGSCxFQVlHSCxRQUFRLGdCQUFHLDZCQUFDLFFBQUQsRUFBY0QsS0FBZCxDQUFILEdBQTZCRSxRQVp4QyxlQWFFO0FBQU8sTUFBQSxJQUFJLEVBQUMsUUFBWjtBQUFxQix1QkFBZUw7QUFBcEMsTUFiRixDQURGO0FBaUJELEdBdEJEO0FBdUJEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZ2V0QXNzZXRVcmxzRnJvbUlkIH0gZnJvbSAnQHJlYWN0LWxvb3NlbHktbGF6eS9tYW5pZmVzdCc7XG5pbXBvcnQgUmVhY3QsIHsgdXNlQ29udGV4dCB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB0eXBlIHsgQ29tcG9uZW50UHJvcHMsIENvbXBvbmVudFR5cGUgfSBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCB7IGdldENvbmZpZyB9IGZyb20gJy4uLy4uL2NvbmZpZyc7XG5pbXBvcnQgeyBQSEFTRSB9IGZyb20gJy4uLy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBMYXp5U3VzcGVuc2VDb250ZXh0IH0gZnJvbSAnLi4vLi4vc3VzcGVuc2UnO1xuaW1wb3J0IHsgZ2V0RXhwb3J0IH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuXG5pbXBvcnQgeyBjcmVhdGVMb2FkZXJFcnJvciB9IGZyb20gJy4uL2Vycm9ycyc7XG5pbXBvcnQgeyBTZXJ2ZXJMb2FkZXIgfSBmcm9tICcuLi9sb2FkZXInO1xuXG5mdW5jdGlvbiBsb2FkPEM+KG1vZHVsZUlkOiBzdHJpbmcsIGxvYWRlcjogU2VydmVyTG9hZGVyPEM+KSB7XG4gIHRyeSB7XG4gICAgcmV0dXJuIGdldEV4cG9ydChsb2FkZXIoKSk7XG4gIH0gY2F0Y2ggKGVycikge1xuICAgIHRocm93IGNyZWF0ZUxvYWRlckVycm9yKGVycik7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUNvbXBvbmVudFNlcnZlcjxDIGV4dGVuZHMgQ29tcG9uZW50VHlwZTxhbnk+Pih7XG4gIGRhdGFMYXp5SWQsXG4gIGRlZmVyLFxuICBsb2FkZXIsXG4gIG1vZHVsZUlkLFxuICBzc3IsXG59OiB7XG4gIGRhdGFMYXp5SWQ6IHN0cmluZztcbiAgZGVmZXI6IG51bWJlcjtcbiAgbG9hZGVyOiBTZXJ2ZXJMb2FkZXI8Qz47XG4gIG1vZHVsZUlkOiBzdHJpbmc7XG4gIHNzcjogYm9vbGVhbjtcbn0pIHtcbiAgcmV0dXJuIChwcm9wczogQ29tcG9uZW50UHJvcHM8Qz4pID0+IHtcbiAgICBjb25zdCBSZXNvbHZlZCA9IHNzciA/IGxvYWQobW9kdWxlSWQsIGxvYWRlcikgOiBudWxsO1xuICAgIGNvbnN0IHsgZmFsbGJhY2sgfSA9IHVzZUNvbnRleHQoTGF6eVN1c3BlbnNlQ29udGV4dCk7XG4gICAgY29uc3QgeyBjcm9zc09yaWdpbiwgbWFuaWZlc3QgfSA9IGdldENvbmZpZygpO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDw+XG4gICAgICAgIDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgZGF0YS1sYXp5LWJlZ2luPXtkYXRhTGF6eUlkfSAvPlxuICAgICAgICB7ZGVmZXIgIT09IFBIQVNFLkxBWlkgJiZcbiAgICAgICAgICBnZXRBc3NldFVybHNGcm9tSWQobWFuaWZlc3QsIG1vZHVsZUlkKT8ubWFwKHVybCA9PiAoXG4gICAgICAgICAgICA8bGlua1xuICAgICAgICAgICAgICBrZXk9e3VybH1cbiAgICAgICAgICAgICAgcmVsPXtkZWZlciA9PT0gUEhBU0UuUEFJTlQgPyAncHJlbG9hZCcgOiAncHJlZmV0Y2gnfVxuICAgICAgICAgICAgICBocmVmPXt1cmx9XG4gICAgICAgICAgICAgIGNyb3NzT3JpZ2luPXtjcm9zc09yaWdpbn1cbiAgICAgICAgICAgICAgYXM9XCJzY3JpcHRcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApKX1cbiAgICAgICAge1Jlc29sdmVkID8gPFJlc29sdmVkIHsuLi5wcm9wc30gLz4gOiBmYWxsYmFja31cbiAgICAgICAgPGlucHV0IHR5cGU9XCJoaWRkZW5cIiBkYXRhLWxhenktZW5kPXtkYXRhTGF6eUlkfSAvPlxuICAgICAgPC8+XG4gICAgKTtcbiAgfTtcbn1cbiJdfQ==
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useSubscription = useSubscription;
7
+
8
+ var _react = require("react");
9
+
10
+ function useSubscription({
11
+ context,
12
+ load,
13
+ onValue
14
+ }) {
15
+ const {
16
+ subscribe,
17
+ currentValue
18
+ } = (0, _react.useContext)(context);
19
+ (0, _react.useMemo)(() => {
20
+ let unsubscribe = null;
21
+
22
+ const check = () => {
23
+ const done = onValue(currentValue());
24
+ if (done) load();
25
+ if (done && unsubscribe) unsubscribe();
26
+ return done;
27
+ };
28
+
29
+ unsubscribe = !check() ? subscribe(check) : null; // eslint-disable-next-line react-hooks/exhaustive-deps
30
+ }, []);
31
+ }
32
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9sYXp5L2NvbXBvbmVudHMvdXRpbHMudHMiXSwibmFtZXMiOlsidXNlU3Vic2NyaXB0aW9uIiwiY29udGV4dCIsImxvYWQiLCJvblZhbHVlIiwic3Vic2NyaWJlIiwiY3VycmVudFZhbHVlIiwidW5zdWJzY3JpYmUiLCJjaGVjayIsImRvbmUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTs7QUFXTyxTQUFTQSxlQUFULENBQTZEO0FBQ2xFQyxFQUFBQSxPQURrRTtBQUVsRUMsRUFBQUEsSUFGa0U7QUFHbEVDLEVBQUFBO0FBSGtFLENBQTdELEVBSW9CO0FBQ3pCLFFBQU07QUFBRUMsSUFBQUEsU0FBRjtBQUFhQyxJQUFBQTtBQUFiLE1BQThCLHVCQUFXSixPQUFYLENBQXBDO0FBQ0Esc0JBQVEsTUFBTTtBQUNaLFFBQUlLLFdBQWdDLEdBQUcsSUFBdkM7O0FBQ0EsVUFBTUMsS0FBSyxHQUFHLE1BQU07QUFDbEIsWUFBTUMsSUFBSSxHQUFHTCxPQUFPLENBQUNFLFlBQVksRUFBYixDQUFwQjtBQUNBLFVBQUlHLElBQUosRUFBVU4sSUFBSTtBQUNkLFVBQUlNLElBQUksSUFBSUYsV0FBWixFQUF5QkEsV0FBVztBQUVwQyxhQUFPRSxJQUFQO0FBQ0QsS0FORDs7QUFRQUYsSUFBQUEsV0FBVyxHQUFHLENBQUNDLEtBQUssRUFBTixHQUFXSCxTQUFTLENBQUNHLEtBQUQsQ0FBcEIsR0FBOEIsSUFBNUMsQ0FWWSxDQVdaO0FBQ0QsR0FaRCxFQVlHLEVBWkg7QUFhRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHVzZUNvbnRleHQsIHVzZU1lbW8gfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgdHlwZSB7IENvbnRleHQgfSBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCB0eXBlIHsgU3Vic2NyaXB0aW9uQ29udGV4dFZhbHVlIH0gZnJvbSAnLi4vdHlwZXMnO1xuXG50eXBlIFVzZVN1YnNjcmlwdGlvbkFyZ3M8Qz4gPSB7XG4gIGNvbnRleHQ6IENvbnRleHQ8Qz47XG4gIGxvYWQ6ICgpID0+IHZvaWQ7XG4gIG9uVmFsdWU6ICh2OiBudW1iZXIpID0+IGJvb2xlYW47XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gdXNlU3Vic2NyaXB0aW9uPEMgZXh0ZW5kcyBTdWJzY3JpcHRpb25Db250ZXh0VmFsdWU+KHtcbiAgY29udGV4dCxcbiAgbG9hZCxcbiAgb25WYWx1ZSxcbn06IFVzZVN1YnNjcmlwdGlvbkFyZ3M8Qz4pIHtcbiAgY29uc3QgeyBzdWJzY3JpYmUsIGN1cnJlbnRWYWx1ZSB9ID0gdXNlQ29udGV4dChjb250ZXh0KTtcbiAgdXNlTWVtbygoKSA9PiB7XG4gICAgbGV0IHVuc3Vic2NyaWJlOiAoKCkgPT4gdm9pZCkgfCBudWxsID0gbnVsbDtcbiAgICBjb25zdCBjaGVjayA9ICgpID0+IHtcbiAgICAgIGNvbnN0IGRvbmUgPSBvblZhbHVlKGN1cnJlbnRWYWx1ZSgpKTtcbiAgICAgIGlmIChkb25lKSBsb2FkKCk7XG4gICAgICBpZiAoZG9uZSAmJiB1bnN1YnNjcmliZSkgdW5zdWJzY3JpYmUoKTtcblxuICAgICAgcmV0dXJuIGRvbmU7XG4gICAgfTtcblxuICAgIHVuc3Vic2NyaWJlID0gIWNoZWNrKCkgPyBzdWJzY3JpYmUoY2hlY2spIDogbnVsbDtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QtaG9va3MvZXhoYXVzdGl2ZS1kZXBzXG4gIH0sIFtdKTtcbn1cbiJdfQ==
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.RETRY_FACTOR = exports.RETRY_DELAY = exports.PRIORITY = void 0;
7
+ const PRIORITY = {
8
+ HIGH: 0,
9
+ LOW: 2
10
+ };
11
+ exports.PRIORITY = PRIORITY;
12
+ const RETRY_DELAY = 300;
13
+ exports.RETRY_DELAY = RETRY_DELAY;
14
+ const RETRY_FACTOR = 1;
15
+ exports.RETRY_FACTOR = RETRY_FACTOR;
16
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9sYXp5L2NvbnN0YW50cy50cyJdLCJuYW1lcyI6WyJQUklPUklUWSIsIkhJR0giLCJMT1ciLCJSRVRSWV9ERUxBWSIsIlJFVFJZX0ZBQ1RPUiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQU8sTUFBTUEsUUFBUSxHQUFHO0FBQ3RCQyxFQUFBQSxJQUFJLEVBQUUsQ0FEZ0I7QUFFdEJDLEVBQUFBLEdBQUcsRUFBRTtBQUZpQixDQUFqQjs7QUFLQSxNQUFNQyxXQUFXLEdBQUcsR0FBcEI7O0FBQ0EsTUFBTUMsWUFBWSxHQUFHLENBQXJCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IFBSSU9SSVRZID0ge1xuICBISUdIOiAwLFxuICBMT1c6IDIsXG59O1xuXG5leHBvcnQgY29uc3QgUkVUUllfREVMQVkgPSAzMDA7XG5leHBvcnQgY29uc3QgUkVUUllfRkFDVE9SID0gMTtcbiJdfQ==