@next-core/runtime 1.0.2

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 (371) hide show
  1. package/dist/cjs/CustomProcessors.js +29 -0
  2. package/dist/cjs/CustomProcessors.js.map +1 -0
  3. package/dist/cjs/CustomTemplates.js +179 -0
  4. package/dist/cjs/CustomTemplates.js.map +1 -0
  5. package/dist/cjs/StoryboardFunctionRegistry.js +118 -0
  6. package/dist/cjs/StoryboardFunctionRegistry.js.map +1 -0
  7. package/dist/cjs/auth.js +67 -0
  8. package/dist/cjs/auth.js.map +1 -0
  9. package/dist/cjs/fetchByProvider.js +13 -0
  10. package/dist/cjs/fetchByProvider.js.map +1 -0
  11. package/dist/cjs/getBasePath.js +15 -0
  12. package/dist/cjs/getBasePath.js.map +1 -0
  13. package/dist/cjs/getPageInfo.js +45 -0
  14. package/dist/cjs/getPageInfo.js.map +1 -0
  15. package/dist/cjs/handleHttpError.js +97 -0
  16. package/dist/cjs/handleHttpError.js.map +1 -0
  17. package/dist/cjs/history.js +27 -0
  18. package/dist/cjs/history.js.map +1 -0
  19. package/dist/cjs/index.js +199 -0
  20. package/dist/cjs/index.js.map +1 -0
  21. package/dist/cjs/internal/CustomTemplates/bindTemplateProxy.js +72 -0
  22. package/dist/cjs/internal/CustomTemplates/bindTemplateProxy.js.map +1 -0
  23. package/dist/cjs/internal/CustomTemplates/constants.js +13 -0
  24. package/dist/cjs/internal/CustomTemplates/constants.js.map +1 -0
  25. package/dist/cjs/internal/CustomTemplates/expandCustomTemplate.js +122 -0
  26. package/dist/cjs/internal/CustomTemplates/expandCustomTemplate.js.map +1 -0
  27. package/dist/cjs/internal/CustomTemplates/setupTemplateProxy.js +113 -0
  28. package/dist/cjs/internal/CustomTemplates/setupTemplateProxy.js.map +1 -0
  29. package/dist/cjs/internal/CustomTemplates/setupUseBrickInTemplate.js +44 -0
  30. package/dist/cjs/internal/CustomTemplates/setupUseBrickInTemplate.js.map +1 -0
  31. package/dist/cjs/internal/CustomTemplates/utils.js +44 -0
  32. package/dist/cjs/internal/CustomTemplates/utils.js.map +1 -0
  33. package/dist/cjs/internal/Renderer.js +392 -0
  34. package/dist/cjs/internal/Renderer.js.map +1 -0
  35. package/dist/cjs/internal/RendererContext.js +433 -0
  36. package/dist/cjs/internal/RendererContext.js.map +1 -0
  37. package/dist/cjs/internal/Router.js +448 -0
  38. package/dist/cjs/internal/Router.js.map +1 -0
  39. package/dist/cjs/internal/Runtime.js +140 -0
  40. package/dist/cjs/internal/Runtime.js.map +1 -0
  41. package/dist/cjs/internal/abortController.js +32 -0
  42. package/dist/cjs/internal/abortController.js.map +1 -0
  43. package/dist/cjs/internal/bindListeners.js +433 -0
  44. package/dist/cjs/internal/bindListeners.js.map +1 -0
  45. package/dist/cjs/internal/checkInstalledApps.js +105 -0
  46. package/dist/cjs/internal/checkInstalledApps.js.map +1 -0
  47. package/dist/cjs/internal/checkPermissions.js +102 -0
  48. package/dist/cjs/internal/checkPermissions.js.map +1 -0
  49. package/dist/cjs/internal/compute/StoryboardFunctions.js +16 -0
  50. package/dist/cjs/internal/compute/StoryboardFunctions.js.map +1 -0
  51. package/dist/cjs/internal/compute/WidgetFunctions.js +31 -0
  52. package/dist/cjs/internal/compute/WidgetFunctions.js.map +1 -0
  53. package/dist/cjs/internal/compute/WidgetI18n.js +21 -0
  54. package/dist/cjs/internal/compute/WidgetI18n.js.map +1 -0
  55. package/dist/cjs/internal/compute/checkIf.js +36 -0
  56. package/dist/cjs/internal/compute/checkIf.js.map +1 -0
  57. package/dist/cjs/internal/compute/collectMemberCallUsage.js +30 -0
  58. package/dist/cjs/internal/compute/collectMemberCallUsage.js.map +1 -0
  59. package/dist/cjs/internal/compute/computeRealProperties.js +80 -0
  60. package/dist/cjs/internal/compute/computeRealProperties.js.map +1 -0
  61. package/dist/cjs/internal/compute/computeRealValue.js +78 -0
  62. package/dist/cjs/internal/compute/computeRealValue.js.map +1 -0
  63. package/dist/cjs/internal/compute/evaluate.js +390 -0
  64. package/dist/cjs/internal/compute/evaluate.js.map +1 -0
  65. package/dist/cjs/internal/compute/getGeneralGlobals.js +87 -0
  66. package/dist/cjs/internal/compute/getGeneralGlobals.js.map +1 -0
  67. package/dist/cjs/internal/compute/getNextStateOfUseBrick.js +87 -0
  68. package/dist/cjs/internal/compute/getNextStateOfUseBrick.js.map +1 -0
  69. package/dist/cjs/internal/compute/getStorageItem.js +14 -0
  70. package/dist/cjs/internal/compute/getStorageItem.js.map +1 -0
  71. package/dist/cjs/internal/compute/getTracks.js +26 -0
  72. package/dist/cjs/internal/compute/getTracks.js.map +1 -0
  73. package/dist/cjs/internal/compute/images.js +23 -0
  74. package/dist/cjs/internal/compute/images.js.map +1 -0
  75. package/dist/cjs/internal/compute/listenOnTrackingContext.js +40 -0
  76. package/dist/cjs/internal/compute/listenOnTrackingContext.js.map +1 -0
  77. package/dist/cjs/internal/compute/markAsComputed.js +36 -0
  78. package/dist/cjs/internal/compute/markAsComputed.js.map +1 -0
  79. package/dist/cjs/internal/compute/setProperties.js +18 -0
  80. package/dist/cjs/internal/compute/setProperties.js.map +1 -0
  81. package/dist/cjs/internal/compute/setRealProperties.js +29 -0
  82. package/dist/cjs/internal/compute/setRealProperties.js.map +1 -0
  83. package/dist/cjs/internal/data/CollectContracts.js +29 -0
  84. package/dist/cjs/internal/data/CollectContracts.js.map +1 -0
  85. package/dist/cjs/internal/data/DataStore.js +190 -0
  86. package/dist/cjs/internal/data/DataStore.js.map +1 -0
  87. package/dist/cjs/internal/data/FlowApi.js +150 -0
  88. package/dist/cjs/internal/data/FlowApi.js.map +1 -0
  89. package/dist/cjs/internal/data/FlowApiProvider.js +122 -0
  90. package/dist/cjs/internal/data/FlowApiProvider.js.map +1 -0
  91. package/dist/cjs/internal/data/getProviderBrick.js +32 -0
  92. package/dist/cjs/internal/data/getProviderBrick.js.map +1 -0
  93. package/dist/cjs/internal/data/resolveData.js +96 -0
  94. package/dist/cjs/internal/data/resolveData.js.map +1 -0
  95. package/dist/cjs/internal/data/resolveDataStore.js +127 -0
  96. package/dist/cjs/internal/data/resolveDataStore.js.map +1 -0
  97. package/dist/cjs/internal/devtools.js +10 -0
  98. package/dist/cjs/internal/devtools.js.map +1 -0
  99. package/dist/cjs/internal/enums.js +13 -0
  100. package/dist/cjs/internal/enums.js.map +1 -0
  101. package/dist/cjs/internal/historyExtended.js +140 -0
  102. package/dist/cjs/internal/historyExtended.js.map +1 -0
  103. package/dist/cjs/internal/interfaces.js +6 -0
  104. package/dist/cjs/internal/interfaces.js.map +1 -0
  105. package/dist/cjs/internal/loadBootstrapData.js +227 -0
  106. package/dist/cjs/internal/loadBootstrapData.js.map +1 -0
  107. package/dist/cjs/internal/loadCheckLogin.js +17 -0
  108. package/dist/cjs/internal/loadCheckLogin.js.map +1 -0
  109. package/dist/cjs/internal/matchPath.js +88 -0
  110. package/dist/cjs/internal/matchPath.js.map +1 -0
  111. package/dist/cjs/internal/matchRoutes.js +34 -0
  112. package/dist/cjs/internal/matchRoutes.js.map +1 -0
  113. package/dist/cjs/internal/matchStoryboard.js +40 -0
  114. package/dist/cjs/internal/matchStoryboard.js.map +1 -0
  115. package/dist/cjs/internal/mediaQuery.js +55 -0
  116. package/dist/cjs/internal/mediaQuery.js.map +1 -0
  117. package/dist/cjs/internal/menu/computeMenuData.js +37 -0
  118. package/dist/cjs/internal/menu/computeMenuData.js.map +1 -0
  119. package/dist/cjs/internal/menu/constants.js +13 -0
  120. package/dist/cjs/internal/menu/constants.js.map +1 -0
  121. package/dist/cjs/internal/menu/fetchMenuById.js +102 -0
  122. package/dist/cjs/internal/menu/fetchMenuById.js.map +1 -0
  123. package/dist/cjs/internal/menu/fetchMenuTitle.js +37 -0
  124. package/dist/cjs/internal/menu/fetchMenuTitle.js.map +1 -0
  125. package/dist/cjs/internal/menu/getMenusOfStandaloneApp.js +27 -0
  126. package/dist/cjs/internal/menu/getMenusOfStandaloneApp.js.map +1 -0
  127. package/dist/cjs/internal/menu/interfaces.js +4 -0
  128. package/dist/cjs/internal/menu/interfaces.js.map +1 -0
  129. package/dist/cjs/internal/menu/loadDynamicMenuItems.js +28 -0
  130. package/dist/cjs/internal/menu/loadDynamicMenuItems.js.map +1 -0
  131. package/dist/cjs/internal/menu/mergeMenu.js +74 -0
  132. package/dist/cjs/internal/menu/mergeMenu.js.map +1 -0
  133. package/dist/cjs/internal/menu/reorderMenuItems.js +20 -0
  134. package/dist/cjs/internal/menu/reorderMenuItems.js.map +1 -0
  135. package/dist/cjs/internal/mount.js +90 -0
  136. package/dist/cjs/internal/mount.js.map +1 -0
  137. package/dist/cjs/internal/poll.js +83 -0
  138. package/dist/cjs/internal/poll.js.map +1 -0
  139. package/dist/cjs/internal/proxyFactories.js +39 -0
  140. package/dist/cjs/internal/proxyFactories.js.map +1 -0
  141. package/dist/cjs/internal/registerAppI18n.js +25 -0
  142. package/dist/cjs/internal/registerAppI18n.js.map +1 -0
  143. package/dist/cjs/internal/registerCustomTemplates.js +22 -0
  144. package/dist/cjs/internal/registerCustomTemplates.js.map +1 -0
  145. package/dist/cjs/internal/secret_internals.js +140 -0
  146. package/dist/cjs/internal/secret_internals.js.map +1 -0
  147. package/dist/cjs/themeAndMode.js +97 -0
  148. package/dist/cjs/themeAndMode.js.map +1 -0
  149. package/dist/esm/CustomProcessors.js +30 -0
  150. package/dist/esm/CustomProcessors.js.map +1 -0
  151. package/dist/esm/CustomTemplates.js +187 -0
  152. package/dist/esm/CustomTemplates.js.map +1 -0
  153. package/dist/esm/StoryboardFunctionRegistry.js +116 -0
  154. package/dist/esm/StoryboardFunctionRegistry.js.map +1 -0
  155. package/dist/esm/auth.js +57 -0
  156. package/dist/esm/auth.js.map +1 -0
  157. package/dist/esm/fetchByProvider.js +14 -0
  158. package/dist/esm/fetchByProvider.js.map +1 -0
  159. package/dist/esm/getBasePath.js +9 -0
  160. package/dist/esm/getBasePath.js.map +1 -0
  161. package/dist/esm/getPageInfo.js +39 -0
  162. package/dist/esm/getPageInfo.js.map +1 -0
  163. package/dist/esm/handleHttpError.js +90 -0
  164. package/dist/esm/handleHttpError.js.map +1 -0
  165. package/dist/esm/history.js +20 -0
  166. package/dist/esm/history.js.map +1 -0
  167. package/dist/esm/index.js +17 -0
  168. package/dist/esm/index.js.map +1 -0
  169. package/dist/esm/internal/CustomTemplates/bindTemplateProxy.js +68 -0
  170. package/dist/esm/internal/CustomTemplates/bindTemplateProxy.js.map +1 -0
  171. package/dist/esm/internal/CustomTemplates/constants.js +4 -0
  172. package/dist/esm/internal/CustomTemplates/constants.js.map +1 -0
  173. package/dist/esm/internal/CustomTemplates/expandCustomTemplate.js +117 -0
  174. package/dist/esm/internal/CustomTemplates/expandCustomTemplate.js.map +1 -0
  175. package/dist/esm/internal/CustomTemplates/setupTemplateProxy.js +110 -0
  176. package/dist/esm/internal/CustomTemplates/setupTemplateProxy.js.map +1 -0
  177. package/dist/esm/internal/CustomTemplates/setupUseBrickInTemplate.js +43 -0
  178. package/dist/esm/internal/CustomTemplates/setupUseBrickInTemplate.js.map +1 -0
  179. package/dist/esm/internal/CustomTemplates/utils.js +37 -0
  180. package/dist/esm/internal/CustomTemplates/utils.js.map +1 -0
  181. package/dist/esm/internal/Renderer.js +427 -0
  182. package/dist/esm/internal/Renderer.js.map +1 -0
  183. package/dist/esm/internal/RendererContext.js +425 -0
  184. package/dist/esm/internal/RendererContext.js.map +1 -0
  185. package/dist/esm/internal/Router.js +445 -0
  186. package/dist/esm/internal/Router.js.map +1 -0
  187. package/dist/esm/internal/Runtime.js +116 -0
  188. package/dist/esm/internal/Runtime.js.map +1 -0
  189. package/dist/esm/internal/abortController.js +24 -0
  190. package/dist/esm/internal/abortController.js.map +1 -0
  191. package/dist/esm/internal/bindListeners.js +434 -0
  192. package/dist/esm/internal/bindListeners.js.map +1 -0
  193. package/dist/esm/internal/checkInstalledApps.js +100 -0
  194. package/dist/esm/internal/checkInstalledApps.js.map +1 -0
  195. package/dist/esm/internal/checkPermissions.js +107 -0
  196. package/dist/esm/internal/checkPermissions.js.map +1 -0
  197. package/dist/esm/internal/compute/StoryboardFunctions.js +7 -0
  198. package/dist/esm/internal/compute/StoryboardFunctions.js.map +1 -0
  199. package/dist/esm/internal/compute/WidgetFunctions.js +23 -0
  200. package/dist/esm/internal/compute/WidgetFunctions.js.map +1 -0
  201. package/dist/esm/internal/compute/WidgetI18n.js +14 -0
  202. package/dist/esm/internal/compute/WidgetI18n.js.map +1 -0
  203. package/dist/esm/internal/compute/checkIf.js +39 -0
  204. package/dist/esm/internal/compute/checkIf.js.map +1 -0
  205. package/dist/esm/internal/compute/collectMemberCallUsage.js +22 -0
  206. package/dist/esm/internal/compute/collectMemberCallUsage.js.map +1 -0
  207. package/dist/esm/internal/compute/computeRealProperties.js +87 -0
  208. package/dist/esm/internal/compute/computeRealProperties.js.map +1 -0
  209. package/dist/esm/internal/compute/computeRealValue.js +86 -0
  210. package/dist/esm/internal/compute/computeRealValue.js.map +1 -0
  211. package/dist/esm/internal/compute/evaluate.js +387 -0
  212. package/dist/esm/internal/compute/evaluate.js.map +1 -0
  213. package/dist/esm/internal/compute/getGeneralGlobals.js +82 -0
  214. package/dist/esm/internal/compute/getGeneralGlobals.js.map +1 -0
  215. package/dist/esm/internal/compute/getNextStateOfUseBrick.js +78 -0
  216. package/dist/esm/internal/compute/getNextStateOfUseBrick.js.map +1 -0
  217. package/dist/esm/internal/compute/getStorageItem.js +8 -0
  218. package/dist/esm/internal/compute/getStorageItem.js.map +1 -0
  219. package/dist/esm/internal/compute/getTracks.js +20 -0
  220. package/dist/esm/internal/compute/getTracks.js.map +1 -0
  221. package/dist/esm/internal/compute/images.js +16 -0
  222. package/dist/esm/internal/compute/images.js.map +1 -0
  223. package/dist/esm/internal/compute/listenOnTrackingContext.js +37 -0
  224. package/dist/esm/internal/compute/listenOnTrackingContext.js.map +1 -0
  225. package/dist/esm/internal/compute/markAsComputed.js +28 -0
  226. package/dist/esm/internal/compute/markAsComputed.js.map +1 -0
  227. package/dist/esm/internal/compute/setProperties.js +12 -0
  228. package/dist/esm/internal/compute/setProperties.js.map +1 -0
  229. package/dist/esm/internal/compute/setRealProperties.js +23 -0
  230. package/dist/esm/internal/compute/setRealProperties.js.map +1 -0
  231. package/dist/esm/internal/data/CollectContracts.js +20 -0
  232. package/dist/esm/internal/data/CollectContracts.js.map +1 -0
  233. package/dist/esm/internal/data/DataStore.js +203 -0
  234. package/dist/esm/internal/data/DataStore.js.map +1 -0
  235. package/dist/esm/internal/data/FlowApi.js +156 -0
  236. package/dist/esm/internal/data/FlowApi.js.map +1 -0
  237. package/dist/esm/internal/data/FlowApiProvider.js +122 -0
  238. package/dist/esm/internal/data/FlowApiProvider.js.map +1 -0
  239. package/dist/esm/internal/data/getProviderBrick.js +33 -0
  240. package/dist/esm/internal/data/getProviderBrick.js.map +1 -0
  241. package/dist/esm/internal/data/resolveData.js +101 -0
  242. package/dist/esm/internal/data/resolveData.js.map +1 -0
  243. package/dist/esm/internal/data/resolveDataStore.js +134 -0
  244. package/dist/esm/internal/data/resolveDataStore.js.map +1 -0
  245. package/dist/esm/internal/devtools.js +4 -0
  246. package/dist/esm/internal/devtools.js.map +1 -0
  247. package/dist/esm/internal/enums.js +6 -0
  248. package/dist/esm/internal/enums.js.map +1 -0
  249. package/dist/esm/internal/historyExtended.js +132 -0
  250. package/dist/esm/internal/historyExtended.js.map +1 -0
  251. package/dist/esm/internal/interfaces.js +2 -0
  252. package/dist/esm/internal/interfaces.js.map +1 -0
  253. package/dist/esm/internal/loadBootstrapData.js +243 -0
  254. package/dist/esm/internal/loadBootstrapData.js.map +1 -0
  255. package/dist/esm/internal/loadCheckLogin.js +18 -0
  256. package/dist/esm/internal/loadCheckLogin.js.map +1 -0
  257. package/dist/esm/internal/matchPath.js +81 -0
  258. package/dist/esm/internal/matchPath.js.map +1 -0
  259. package/dist/esm/internal/matchRoutes.js +35 -0
  260. package/dist/esm/internal/matchRoutes.js.map +1 -0
  261. package/dist/esm/internal/matchStoryboard.js +33 -0
  262. package/dist/esm/internal/matchStoryboard.js.map +1 -0
  263. package/dist/esm/internal/mediaQuery.js +44 -0
  264. package/dist/esm/internal/mediaQuery.js.map +1 -0
  265. package/dist/esm/internal/menu/computeMenuData.js +38 -0
  266. package/dist/esm/internal/menu/computeMenuData.js.map +1 -0
  267. package/dist/esm/internal/menu/constants.js +4 -0
  268. package/dist/esm/internal/menu/constants.js.map +1 -0
  269. package/dist/esm/internal/menu/fetchMenuById.js +104 -0
  270. package/dist/esm/internal/menu/fetchMenuById.js.map +1 -0
  271. package/dist/esm/internal/menu/fetchMenuTitle.js +38 -0
  272. package/dist/esm/internal/menu/fetchMenuTitle.js.map +1 -0
  273. package/dist/esm/internal/menu/getMenusOfStandaloneApp.js +19 -0
  274. package/dist/esm/internal/menu/getMenusOfStandaloneApp.js.map +1 -0
  275. package/dist/esm/internal/menu/interfaces.js +4 -0
  276. package/dist/esm/internal/menu/interfaces.js.map +1 -0
  277. package/dist/esm/internal/menu/loadDynamicMenuItems.js +28 -0
  278. package/dist/esm/internal/menu/loadDynamicMenuItems.js.map +1 -0
  279. package/dist/esm/internal/menu/mergeMenu.js +77 -0
  280. package/dist/esm/internal/menu/mergeMenu.js.map +1 -0
  281. package/dist/esm/internal/menu/reorderMenuItems.js +14 -0
  282. package/dist/esm/internal/menu/reorderMenuItems.js.map +1 -0
  283. package/dist/esm/internal/mount.js +83 -0
  284. package/dist/esm/internal/mount.js.map +1 -0
  285. package/dist/esm/internal/poll.js +85 -0
  286. package/dist/esm/internal/poll.js.map +1 -0
  287. package/dist/esm/internal/proxyFactories.js +34 -0
  288. package/dist/esm/internal/proxyFactories.js.map +1 -0
  289. package/dist/esm/internal/registerAppI18n.js +20 -0
  290. package/dist/esm/internal/registerAppI18n.js.map +1 -0
  291. package/dist/esm/internal/registerCustomTemplates.js +16 -0
  292. package/dist/esm/internal/registerCustomTemplates.js.map +1 -0
  293. package/dist/esm/internal/secret_internals.js +145 -0
  294. package/dist/esm/internal/secret_internals.js.map +1 -0
  295. package/dist/esm/themeAndMode.js +80 -0
  296. package/dist/esm/themeAndMode.js.map +1 -0
  297. package/dist/types/CustomProcessors.d.ts +7 -0
  298. package/dist/types/CustomTemplates.d.ts +8 -0
  299. package/dist/types/StoryboardFunctionRegistry.d.ts +44 -0
  300. package/dist/types/auth.d.ts +19 -0
  301. package/dist/types/fetchByProvider.d.ts +2 -0
  302. package/dist/types/getBasePath.d.ts +4 -0
  303. package/dist/types/getPageInfo.d.ts +14 -0
  304. package/dist/types/handleHttpError.d.ts +19 -0
  305. package/dist/types/history.d.ts +7 -0
  306. package/dist/types/index.d.ts +15 -0
  307. package/dist/types/internal/CustomTemplates/bindTemplateProxy.d.ts +3 -0
  308. package/dist/types/internal/CustomTemplates/constants.d.ts +11 -0
  309. package/dist/types/internal/CustomTemplates/expandCustomTemplate.d.ts +3 -0
  310. package/dist/types/internal/CustomTemplates/setupTemplateProxy.d.ts +7 -0
  311. package/dist/types/internal/CustomTemplates/setupUseBrickInTemplate.d.ts +2 -0
  312. package/dist/types/internal/CustomTemplates/utils.d.ts +7 -0
  313. package/dist/types/internal/Renderer.d.ts +21 -0
  314. package/dist/types/internal/RendererContext.d.ts +25 -0
  315. package/dist/types/internal/Router.d.ts +16 -0
  316. package/dist/types/internal/Runtime.d.ts +35 -0
  317. package/dist/types/internal/abortController.d.ts +2 -0
  318. package/dist/types/internal/bindListeners.d.ts +11 -0
  319. package/dist/types/internal/checkInstalledApps.d.ts +6 -0
  320. package/dist/types/internal/checkPermissions.d.ts +17 -0
  321. package/dist/types/internal/compute/StoryboardFunctions.d.ts +1 -0
  322. package/dist/types/internal/compute/WidgetFunctions.d.ts +3 -0
  323. package/dist/types/internal/compute/WidgetI18n.d.ts +3 -0
  324. package/dist/types/internal/compute/checkIf.d.ts +23 -0
  325. package/dist/types/internal/compute/collectMemberCallUsage.d.ts +8 -0
  326. package/dist/types/internal/compute/computeRealProperties.d.ts +4 -0
  327. package/dist/types/internal/compute/computeRealValue.d.ts +9 -0
  328. package/dist/types/internal/compute/evaluate.d.ts +21 -0
  329. package/dist/types/internal/compute/getGeneralGlobals.d.ts +12 -0
  330. package/dist/types/internal/compute/getNextStateOfUseBrick.d.ts +16 -0
  331. package/dist/types/internal/compute/getStorageItem.d.ts +1 -0
  332. package/dist/types/internal/compute/getTracks.d.ts +5 -0
  333. package/dist/types/internal/compute/images.d.ts +5 -0
  334. package/dist/types/internal/compute/listenOnTrackingContext.d.ts +9 -0
  335. package/dist/types/internal/compute/markAsComputed.d.ts +3 -0
  336. package/dist/types/internal/compute/setProperties.d.ts +2 -0
  337. package/dist/types/internal/compute/setRealProperties.d.ts +1 -0
  338. package/dist/types/internal/data/CollectContracts.d.ts +5 -0
  339. package/dist/types/internal/data/DataStore.d.ts +26 -0
  340. package/dist/types/internal/data/FlowApi.d.ts +30 -0
  341. package/dist/types/internal/data/FlowApiProvider.d.ts +20 -0
  342. package/dist/types/internal/data/getProviderBrick.d.ts +1 -0
  343. package/dist/types/internal/data/resolveData.d.ts +16 -0
  344. package/dist/types/internal/data/resolveDataStore.d.ts +11 -0
  345. package/dist/types/internal/devtools.d.ts +6 -0
  346. package/dist/types/internal/enums.d.ts +4 -0
  347. package/dist/types/internal/historyExtended.d.ts +58 -0
  348. package/dist/types/internal/interfaces.d.ts +92 -0
  349. package/dist/types/internal/loadBootstrapData.d.ts +10 -0
  350. package/dist/types/internal/loadCheckLogin.d.ts +1 -0
  351. package/dist/types/internal/matchPath.d.ts +18 -0
  352. package/dist/types/internal/matchRoutes.d.ts +9 -0
  353. package/dist/types/internal/matchStoryboard.d.ts +10 -0
  354. package/dist/types/internal/mediaQuery.d.ts +14 -0
  355. package/dist/types/internal/menu/computeMenuData.d.ts +7 -0
  356. package/dist/types/internal/menu/constants.d.ts +3 -0
  357. package/dist/types/internal/menu/fetchMenuById.d.ts +3 -0
  358. package/dist/types/internal/menu/fetchMenuTitle.d.ts +2 -0
  359. package/dist/types/internal/menu/getMenusOfStandaloneApp.d.ts +2 -0
  360. package/dist/types/internal/menu/interfaces.d.ts +74 -0
  361. package/dist/types/internal/menu/loadDynamicMenuItems.d.ts +3 -0
  362. package/dist/types/internal/menu/mergeMenu.d.ts +3 -0
  363. package/dist/types/internal/menu/reorderMenuItems.d.ts +2 -0
  364. package/dist/types/internal/mount.d.ts +3 -0
  365. package/dist/types/internal/poll.d.ts +10 -0
  366. package/dist/types/internal/proxyFactories.d.ts +2 -0
  367. package/dist/types/internal/registerAppI18n.d.ts +3 -0
  368. package/dist/types/internal/registerCustomTemplates.d.ts +2 -0
  369. package/dist/types/internal/secret_internals.d.ts +21 -0
  370. package/dist/types/themeAndMode.d.ts +16 -0
  371. package/package.json +67 -0
@@ -0,0 +1,117 @@
1
+ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
2
+ import _objectSpread from "@babel/runtime/helpers/objectSpread2";
3
+ var _excluded = ["slots", "children"],
4
+ _excluded2 = ["properties", "slots", "children"];
5
+ import { uniqueId } from "lodash";
6
+ import { customTemplates } from "../../CustomTemplates.js";
7
+ import { DataStore } from "../data/DataStore.js";
8
+ import { setupTemplateProxy } from "./setupTemplateProxy.js";
9
+ import { setupUseBrickInTemplate } from "./setupUseBrickInTemplate.js";
10
+ import { childrenToSlots } from "../Renderer.js";
11
+ import { collectWidgetContract } from "../data/CollectContracts.js";
12
+ export function expandCustomTemplate(tplTagName, brickConf, hostBrick, asyncHostProperties) {
13
+ var tplStateStoreId = uniqueId("tpl-state-");
14
+ var runtimeContext = _objectSpread(_objectSpread({}, hostBrick.runtimeContext), {}, {
15
+ tplStateStoreId
16
+ });
17
+
18
+ // There is a boundary for `forEachItem` between template internals and externals.
19
+ delete runtimeContext.forEachItem;
20
+ var tplStateStore = new DataStore("STATE", hostBrick);
21
+ runtimeContext.tplStateStoreMap.set(tplStateStoreId, tplStateStore);
22
+ var {
23
+ bricks,
24
+ proxy,
25
+ state,
26
+ contracts
27
+ } = customTemplates.get(tplTagName);
28
+ collectWidgetContract(contracts);
29
+ tplStateStore.define(state, runtimeContext, asyncHostProperties);
30
+ var {
31
+ slots: originalExternalSlots,
32
+ children: externalChildren
33
+ } = brickConf,
34
+ restBrickConf = _objectWithoutProperties(brickConf, _excluded);
35
+ var newBrickConf = _objectSpread(_objectSpread({}, restBrickConf), {}, {
36
+ brick: tplTagName
37
+ });
38
+ hostBrick.tplHostMetadata = {
39
+ internalBricksByRef: new Map(),
40
+ tplStateStoreId,
41
+ proxy
42
+ };
43
+
44
+ // Reversed proxies are used for expand storyboard before rendering page.
45
+ var reversedProxies = {
46
+ properties: new Map(),
47
+ slots: new Map()
48
+ // mergeBases: new Map(),
49
+ };
50
+
51
+ if (proxy !== null && proxy !== void 0 && proxy.properties) {
52
+ for (var [from, to] of Object.entries(proxy.properties)) {
53
+ var proxies = reversedProxies.properties.get(to.ref);
54
+ if (!proxies) {
55
+ proxies = [];
56
+ reversedProxies.properties.set(to.ref, proxies);
57
+ }
58
+ proxies.push({
59
+ from,
60
+ to
61
+ });
62
+ }
63
+ }
64
+ if (proxy !== null && proxy !== void 0 && proxy.slots) {
65
+ for (var [_from, _to] of Object.entries(proxy.slots)) {
66
+ var _proxies = reversedProxies.slots.get(_to.ref);
67
+ if (!_proxies) {
68
+ _proxies = [];
69
+ reversedProxies.slots.set(_to.ref, _proxies);
70
+ }
71
+ _proxies.push({
72
+ from: _from,
73
+ to: _to
74
+ });
75
+ }
76
+ }
77
+ var hostContext = {
78
+ reversedProxies,
79
+ asyncHostProperties,
80
+ externalSlots: childrenToSlots(externalChildren, originalExternalSlots),
81
+ tplStateStoreId,
82
+ hostBrick: hostBrick
83
+ };
84
+ newBrickConf.slots = {
85
+ "": {
86
+ type: "bricks",
87
+ bricks: bricks.map(item => expandBrickInTemplate(item, hostContext))
88
+ }
89
+ };
90
+ return newBrickConf;
91
+ }
92
+ function expandBrickInTemplate(brickConfInTemplate, hostContext) {
93
+ // Ignore `if: null` to make `looseCheckIf` working.
94
+ if (brickConfInTemplate.if === null) {
95
+ delete brickConfInTemplate.if;
96
+ }
97
+ var {
98
+ properties,
99
+ slots: slotsInTemplate,
100
+ children: childrenInTemplate
101
+ } = brickConfInTemplate,
102
+ restBrickConfInTemplate = _objectWithoutProperties(brickConfInTemplate, _excluded2);
103
+ var transpiledSlots = childrenToSlots(childrenInTemplate, slotsInTemplate);
104
+ var slots = Object.fromEntries(Object.entries(transpiledSlots !== null && transpiledSlots !== void 0 ? transpiledSlots : {}).map(_ref => {
105
+ var _slotConf$bricks;
106
+ var [slotName, slotConf] = _ref;
107
+ return [slotName, {
108
+ type: "bricks",
109
+ bricks: ((_slotConf$bricks = slotConf.bricks) !== null && _slotConf$bricks !== void 0 ? _slotConf$bricks : []).map(item => expandBrickInTemplate(item, hostContext))
110
+ }];
111
+ }));
112
+ return _objectSpread(_objectSpread({}, restBrickConfInTemplate), {}, {
113
+ properties: setupUseBrickInTemplate(properties, hostContext),
114
+ slots
115
+ }, setupTemplateProxy(hostContext, restBrickConfInTemplate.ref, slots));
116
+ }
117
+ //# sourceMappingURL=expandCustomTemplate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"expandCustomTemplate.js","names":["uniqueId","customTemplates","DataStore","setupTemplateProxy","setupUseBrickInTemplate","childrenToSlots","collectWidgetContract","expandCustomTemplate","tplTagName","brickConf","hostBrick","asyncHostProperties","tplStateStoreId","runtimeContext","_objectSpread","forEachItem","tplStateStore","tplStateStoreMap","set","bricks","proxy","state","contracts","get","define","slots","originalExternalSlots","children","externalChildren","restBrickConf","_objectWithoutProperties","_excluded","newBrickConf","brick","tplHostMetadata","internalBricksByRef","Map","reversedProxies","properties","from","to","Object","entries","proxies","ref","push","hostContext","externalSlots","type","map","item","expandBrickInTemplate","brickConfInTemplate","if","slotsInTemplate","childrenInTemplate","restBrickConfInTemplate","_excluded2","transpiledSlots","fromEntries","_ref","_slotConf$bricks","slotName","slotConf"],"sources":["../../../../src/internal/CustomTemplates/expandCustomTemplate.ts"],"sourcesContent":["import type {\n BrickConf,\n BrickConfInTemplate,\n SlotsConfInTemplate,\n SlotsConfOfBricks,\n UseSingleBrickConf,\n} from \"@next-core/types\";\nimport { uniqueId } from \"lodash\";\nimport { customTemplates } from \"../../CustomTemplates.js\";\nimport { DataStore } from \"../data/DataStore.js\";\nimport { RuntimeBrickConfWithTplSymbols } from \"./constants.js\";\nimport { setupTemplateProxy } from \"./setupTemplateProxy.js\";\nimport type {\n AsyncProperties,\n RuntimeBrick,\n TemplateHostBrick,\n TemplateHostContext,\n} from \"../interfaces.js\";\nimport { setupUseBrickInTemplate } from \"./setupUseBrickInTemplate.js\";\nimport { childrenToSlots } from \"../Renderer.js\";\nimport { collectWidgetContract } from \"../data/CollectContracts.js\";\n\nexport function expandCustomTemplate<T extends BrickConf | UseSingleBrickConf>(\n tplTagName: string,\n brickConf: T,\n hostBrick: RuntimeBrick,\n asyncHostProperties: AsyncProperties | undefined\n): T {\n const tplStateStoreId = uniqueId(\"tpl-state-\");\n const runtimeContext = {\n ...hostBrick.runtimeContext,\n tplStateStoreId,\n };\n\n // There is a boundary for `forEachItem` between template internals and externals.\n delete runtimeContext.forEachItem;\n\n const tplStateStore = new DataStore(\"STATE\", hostBrick);\n runtimeContext.tplStateStoreMap.set(tplStateStoreId, tplStateStore);\n\n const { bricks, proxy, state, contracts } = customTemplates.get(tplTagName)!;\n collectWidgetContract(contracts);\n tplStateStore.define(state, runtimeContext, asyncHostProperties);\n\n const {\n slots: originalExternalSlots,\n children: externalChildren,\n ...restBrickConf\n } = brickConf;\n\n const newBrickConf = {\n ...restBrickConf,\n brick: tplTagName,\n } as T;\n\n hostBrick.tplHostMetadata = {\n internalBricksByRef: new Map(),\n tplStateStoreId,\n proxy,\n };\n\n // Reversed proxies are used for expand storyboard before rendering page.\n const reversedProxies: TemplateHostContext[\"reversedProxies\"] = {\n properties: new Map(),\n slots: new Map(),\n // mergeBases: new Map(),\n };\n\n if (proxy?.properties) {\n for (const [from, to] of Object.entries(proxy.properties)) {\n let proxies = reversedProxies.properties.get(to.ref);\n if (!proxies) {\n proxies = [];\n reversedProxies.properties.set(to.ref, proxies);\n }\n proxies.push({\n from,\n to,\n });\n }\n }\n\n if (proxy?.slots) {\n for (const [from, to] of Object.entries(proxy.slots)) {\n let proxies = reversedProxies.slots.get(to.ref);\n if (!proxies) {\n proxies = [];\n reversedProxies.slots.set(to.ref, proxies);\n }\n proxies.push({\n from,\n to,\n });\n }\n }\n\n const hostContext: TemplateHostContext = {\n reversedProxies,\n asyncHostProperties,\n externalSlots: childrenToSlots(externalChildren, originalExternalSlots) as\n | SlotsConfOfBricks\n | undefined,\n tplStateStoreId,\n hostBrick: hostBrick as TemplateHostBrick,\n };\n\n newBrickConf.slots = {\n \"\": {\n type: \"bricks\",\n bricks: bricks.map((item) => expandBrickInTemplate(item, hostContext)),\n },\n };\n\n return newBrickConf;\n}\n\nfunction expandBrickInTemplate(\n brickConfInTemplate: BrickConfInTemplate,\n hostContext: TemplateHostContext\n): RuntimeBrickConfWithTplSymbols {\n // Ignore `if: null` to make `looseCheckIf` working.\n if (brickConfInTemplate.if === null) {\n delete brickConfInTemplate.if;\n }\n const {\n properties,\n slots: slotsInTemplate,\n children: childrenInTemplate,\n ...restBrickConfInTemplate\n } = brickConfInTemplate;\n\n const transpiledSlots = childrenToSlots(\n childrenInTemplate,\n slotsInTemplate\n ) as SlotsConfInTemplate | undefined;\n\n const slots: SlotsConfOfBricks = Object.fromEntries(\n Object.entries(transpiledSlots ?? {}).map(([slotName, slotConf]) => [\n slotName,\n {\n type: \"bricks\",\n bricks: (slotConf.bricks ?? []).map((item) =>\n expandBrickInTemplate(item, hostContext)\n ),\n },\n ])\n );\n\n return {\n ...restBrickConfInTemplate,\n properties: setupUseBrickInTemplate(properties, hostContext),\n slots,\n ...setupTemplateProxy(hostContext, restBrickConfInTemplate.ref, slots),\n };\n}\n"],"mappings":";;;;AAOA,SAASA,QAAQ,QAAQ,QAAQ;AACjC,SAASC,eAAe,QAAQ,0BAA0B;AAC1D,SAASC,SAAS,QAAQ,sBAAsB;AAEhD,SAASC,kBAAkB,QAAQ,yBAAyB;AAO5D,SAASC,uBAAuB,QAAQ,8BAA8B;AACtE,SAASC,eAAe,QAAQ,gBAAgB;AAChD,SAASC,qBAAqB,QAAQ,6BAA6B;AAEnE,OAAO,SAASC,oBAAoBA,CAClCC,UAAkB,EAClBC,SAAY,EACZC,SAAuB,EACvBC,mBAAgD,EAC7C;EACH,IAAMC,eAAe,GAAGZ,QAAQ,CAAC,YAAY,CAAC;EAC9C,IAAMa,cAAc,GAAAC,aAAA,CAAAA,aAAA,KACfJ,SAAS,CAACG,cAAc;IAC3BD;EAAe,EAChB;;EAED;EACA,OAAOC,cAAc,CAACE,WAAW;EAEjC,IAAMC,aAAa,GAAG,IAAId,SAAS,CAAC,OAAO,EAAEQ,SAAS,CAAC;EACvDG,cAAc,CAACI,gBAAgB,CAACC,GAAG,CAACN,eAAe,EAAEI,aAAa,CAAC;EAEnE,IAAM;IAAEG,MAAM;IAAEC,KAAK;IAAEC,KAAK;IAAEC;EAAU,CAAC,GAAGrB,eAAe,CAACsB,GAAG,CAACf,UAAU,CAAE;EAC5EF,qBAAqB,CAACgB,SAAS,CAAC;EAChCN,aAAa,CAACQ,MAAM,CAACH,KAAK,EAAER,cAAc,EAAEF,mBAAmB,CAAC;EAEhE,IAAM;MACJc,KAAK,EAAEC,qBAAqB;MAC5BC,QAAQ,EAAEC;IAEZ,CAAC,GAAGnB,SAAS;IADRoB,aAAa,GAAAC,wBAAA,CACdrB,SAAS,EAAAsB,SAAA;EAEb,IAAMC,YAAY,GAAAlB,aAAA,CAAAA,aAAA,KACbe,aAAa;IAChBI,KAAK,EAAEzB;EAAU,EACb;EAENE,SAAS,CAACwB,eAAe,GAAG;IAC1BC,mBAAmB,EAAE,IAAIC,GAAG,EAAE;IAC9BxB,eAAe;IACfQ;EACF,CAAC;;EAED;EACA,IAAMiB,eAAuD,GAAG;IAC9DC,UAAU,EAAE,IAAIF,GAAG,EAAE;IACrBX,KAAK,EAAE,IAAIW,GAAG;IACd;EACF,CAAC;;EAED,IAAIhB,KAAK,aAALA,KAAK,eAALA,KAAK,CAAEkB,UAAU,EAAE;IACrB,KAAK,IAAM,CAACC,IAAI,EAAEC,EAAE,CAAC,IAAIC,MAAM,CAACC,OAAO,CAACtB,KAAK,CAACkB,UAAU,CAAC,EAAE;MACzD,IAAIK,OAAO,GAAGN,eAAe,CAACC,UAAU,CAACf,GAAG,CAACiB,EAAE,CAACI,GAAG,CAAC;MACpD,IAAI,CAACD,OAAO,EAAE;QACZA,OAAO,GAAG,EAAE;QACZN,eAAe,CAACC,UAAU,CAACpB,GAAG,CAACsB,EAAE,CAACI,GAAG,EAAED,OAAO,CAAC;MACjD;MACAA,OAAO,CAACE,IAAI,CAAC;QACXN,IAAI;QACJC;MACF,CAAC,CAAC;IACJ;EACF;EAEA,IAAIpB,KAAK,aAALA,KAAK,eAALA,KAAK,CAAEK,KAAK,EAAE;IAChB,KAAK,IAAM,CAACc,KAAI,EAAEC,GAAE,CAAC,IAAIC,MAAM,CAACC,OAAO,CAACtB,KAAK,CAACK,KAAK,CAAC,EAAE;MACpD,IAAIkB,QAAO,GAAGN,eAAe,CAACZ,KAAK,CAACF,GAAG,CAACiB,GAAE,CAACI,GAAG,CAAC;MAC/C,IAAI,CAACD,QAAO,EAAE;QACZA,QAAO,GAAG,EAAE;QACZN,eAAe,CAACZ,KAAK,CAACP,GAAG,CAACsB,GAAE,CAACI,GAAG,EAAED,QAAO,CAAC;MAC5C;MACAA,QAAO,CAACE,IAAI,CAAC;QACXN,IAAI,EAAJA,KAAI;QACJC,EAAE,EAAFA;MACF,CAAC,CAAC;IACJ;EACF;EAEA,IAAMM,WAAgC,GAAG;IACvCT,eAAe;IACf1B,mBAAmB;IACnBoC,aAAa,EAAE1C,eAAe,CAACuB,gBAAgB,EAAEF,qBAAqB,CAEzD;IACbd,eAAe;IACfF,SAAS,EAAEA;EACb,CAAC;EAEDsB,YAAY,CAACP,KAAK,GAAG;IACnB,EAAE,EAAE;MACFuB,IAAI,EAAE,QAAQ;MACd7B,MAAM,EAAEA,MAAM,CAAC8B,GAAG,CAAEC,IAAI,IAAKC,qBAAqB,CAACD,IAAI,EAAEJ,WAAW,CAAC;IACvE;EACF,CAAC;EAED,OAAOd,YAAY;AACrB;AAEA,SAASmB,qBAAqBA,CAC5BC,mBAAwC,EACxCN,WAAgC,EACA;EAChC;EACA,IAAIM,mBAAmB,CAACC,EAAE,KAAK,IAAI,EAAE;IACnC,OAAOD,mBAAmB,CAACC,EAAE;EAC/B;EACA,IAAM;MACJf,UAAU;MACVb,KAAK,EAAE6B,eAAe;MACtB3B,QAAQ,EAAE4B;IAEZ,CAAC,GAAGH,mBAAmB;IADlBI,uBAAuB,GAAA1B,wBAAA,CACxBsB,mBAAmB,EAAAK,UAAA;EAEvB,IAAMC,eAAe,GAAGrD,eAAe,CACrCkD,kBAAkB,EAClBD,eAAe,CACmB;EAEpC,IAAM7B,KAAwB,GAAGgB,MAAM,CAACkB,WAAW,CACjDlB,MAAM,CAACC,OAAO,CAACgB,eAAe,aAAfA,eAAe,cAAfA,eAAe,GAAI,CAAC,CAAC,CAAC,CAACT,GAAG,CAACW,IAAA;IAAA,IAAAC,gBAAA;IAAA,IAAC,CAACC,QAAQ,EAAEC,QAAQ,CAAC,GAAAH,IAAA;IAAA,OAAK,CAClEE,QAAQ,EACR;MACEd,IAAI,EAAE,QAAQ;MACd7B,MAAM,EAAE,EAAA0C,gBAAA,GAACE,QAAQ,CAAC5C,MAAM,cAAA0C,gBAAA,cAAAA,gBAAA,GAAI,EAAE,EAAEZ,GAAG,CAAEC,IAAI,IACvCC,qBAAqB,CAACD,IAAI,EAAEJ,WAAW,CAAC;IAE5C,CAAC,CACF;EAAA,EAAC,CACH;EAED,OAAAhC,aAAA,CAAAA,aAAA,KACK0C,uBAAuB;IAC1BlB,UAAU,EAAElC,uBAAuB,CAACkC,UAAU,EAAEQ,WAAW,CAAC;IAC5DrB;EAAK,GACFtB,kBAAkB,CAAC2C,WAAW,EAAEU,uBAAuB,CAACZ,GAAG,EAAEnB,KAAK,CAAC;AAE1E"}
@@ -0,0 +1,110 @@
1
+ import _objectSpread from "@babel/runtime/helpers/objectSpread2";
2
+ import { hasOwnProperty } from "@next-core/utils/general";
3
+ import { clamp } from "lodash";
4
+ import { symbolForAsyncComputedPropsFromHost, symbolForTPlExternalForEachItem, symbolForTplStateStoreId } from "./constants.js";
5
+ export function setupTemplateProxy(hostContext, ref, slots) {
6
+ var {
7
+ reversedProxies,
8
+ asyncHostProperties,
9
+ externalSlots,
10
+ tplStateStoreId,
11
+ hostBrick
12
+ } = hostContext;
13
+ var asyncComputedProps;
14
+ if (ref && reversedProxies) {
15
+ var propertyProxies = reversedProxies.properties.get(ref);
16
+ if (propertyProxies) {
17
+ var getComputedProps = hostProps => {
18
+ var props = {};
19
+ for (var {
20
+ from,
21
+ to
22
+ } of propertyProxies) {
23
+ var propValue = hostProps[from];
24
+ if (propValue !== undefined && to.refProperty) {
25
+ props[to.refProperty] = propValue;
26
+ }
27
+ }
28
+ return props;
29
+ };
30
+ asyncComputedProps = asyncHostProperties.then(getComputedProps);
31
+ }
32
+ var slotProxies = reversedProxies.slots.get(ref);
33
+ if (slotProxies && externalSlots) {
34
+ // Use an approach like template-literal's quasis:
35
+ // `quasi0${0}quais1${1}quasi2...`
36
+ // Every quasi (indexed by `refPosition`) can be slotted with multiple bricks.
37
+ var quasisMap = new Map();
38
+ for (var {
39
+ from,
40
+ to
41
+ } of slotProxies) {
42
+ var _externalSlots$from$b, _externalSlots$from, _to$refSlot, _to$refPosition;
43
+ var insertBricks = (_externalSlots$from$b = (_externalSlots$from = externalSlots[from]) === null || _externalSlots$from === void 0 ? void 0 : _externalSlots$from.bricks) !== null && _externalSlots$from$b !== void 0 ? _externalSlots$from$b : [];
44
+ if (!insertBricks.length) {
45
+ continue;
46
+ }
47
+ var refToSlot = (_to$refSlot = to.refSlot) !== null && _to$refSlot !== void 0 ? _to$refSlot : from;
48
+ var expandableSlot = quasisMap.get(refToSlot);
49
+ if (!expandableSlot) {
50
+ expandableSlot = [];
51
+ // The size of quasis should be the existed slotted bricks' size plus one.
52
+ var size = hasOwnProperty(slots, refToSlot) ? slots[refToSlot].bricks.length + 1 : 1;
53
+ for (var i = 0; i < size; i += 1) {
54
+ expandableSlot.push([]);
55
+ }
56
+ quasisMap.set(refToSlot, expandableSlot);
57
+ }
58
+ var refPosition = (_to$refPosition = to.refPosition) !== null && _to$refPosition !== void 0 ? _to$refPosition : -1;
59
+ expandableSlot[clamp(refPosition < 0 ? expandableSlot.length + refPosition : refPosition, 0, expandableSlot.length - 1)].push(...(hasOwnProperty(hostBrick.runtimeContext, "forEachItem") ? setupTemplateExternalBricks(insertBricks, hostBrick.runtimeContext.forEachItem) : insertBricks));
60
+ }
61
+ var _loop = function (slotName, quasis) {
62
+ if (!hasOwnProperty(slots, slotName)) {
63
+ slots[slotName] = {
64
+ type: "bricks",
65
+ bricks: []
66
+ };
67
+ }
68
+ var slotConf = slots[slotName];
69
+ slotConf.bricks = quasis.flatMap((bricks, index) => index < slotConf.bricks.length ? bricks.concat(slotConf.bricks[index]) : bricks);
70
+ if (slotConf.bricks.length === 0) {
71
+ delete slots[slotName];
72
+ }
73
+ };
74
+ for (var [slotName, quasis] of quasisMap.entries()) {
75
+ _loop(slotName, quasis);
76
+ }
77
+ }
78
+ }
79
+ return {
80
+ [symbolForAsyncComputedPropsFromHost]: asyncComputedProps,
81
+ [symbolForTplStateStoreId]: tplStateStoreId
82
+ };
83
+ }
84
+
85
+ // External bricks of a template, have the same forEachItem context as their host.
86
+ function setupTemplateExternalBricks(bricks, forEachItem) {
87
+ return bricks.map(brick => {
88
+ var _brick$slots;
89
+ return _objectSpread(_objectSpread({}, brick), {}, {
90
+ [symbolForTPlExternalForEachItem]: forEachItem,
91
+ slots: Object.fromEntries(Object.entries((_brick$slots = brick.slots) !== null && _brick$slots !== void 0 ? _brick$slots : {}).map(_ref => {
92
+ var _slotConf$bricks;
93
+ var [slotName, slotConf] = _ref;
94
+ return [slotName, slotConf.type === "routes" ? {
95
+ type: "routes",
96
+ routes: setupTemplateExternalRoutes(slotConf.routes, forEachItem)
97
+ } : {
98
+ type: "bricks",
99
+ bricks: setupTemplateExternalBricks((_slotConf$bricks = slotConf.bricks) !== null && _slotConf$bricks !== void 0 ? _slotConf$bricks : [], forEachItem)
100
+ }];
101
+ }))
102
+ });
103
+ });
104
+ }
105
+ function setupTemplateExternalRoutes(routes, forEachItem) {
106
+ return routes.map(route => route.type && route.type !== "bricks" ? route : _objectSpread(_objectSpread({}, route), {}, {
107
+ bricks: setupTemplateExternalBricks(route.bricks, forEachItem)
108
+ }));
109
+ }
110
+ //# sourceMappingURL=setupTemplateProxy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setupTemplateProxy.js","names":["hasOwnProperty","clamp","symbolForAsyncComputedPropsFromHost","symbolForTPlExternalForEachItem","symbolForTplStateStoreId","setupTemplateProxy","hostContext","ref","slots","reversedProxies","asyncHostProperties","externalSlots","tplStateStoreId","hostBrick","asyncComputedProps","propertyProxies","properties","get","getComputedProps","hostProps","props","from","to","propValue","undefined","refProperty","then","slotProxies","quasisMap","Map","_externalSlots$from$b","_externalSlots$from","_to$refSlot","_to$refPosition","insertBricks","bricks","length","refToSlot","refSlot","expandableSlot","size","i","push","set","refPosition","runtimeContext","setupTemplateExternalBricks","forEachItem","_loop","slotName","quasis","type","slotConf","flatMap","index","concat","entries","map","brick","_brick$slots","_objectSpread","Object","fromEntries","_ref","_slotConf$bricks","routes","setupTemplateExternalRoutes","route"],"sources":["../../../../src/internal/CustomTemplates/setupTemplateProxy.ts"],"sourcesContent":["import type { BrickConf, RouteConf, SlotsConfOfBricks } from \"@next-core/types\";\nimport { hasOwnProperty } from \"@next-core/utils/general\";\nimport { clamp } from \"lodash\";\nimport {\n symbolForAsyncComputedPropsFromHost,\n symbolForTPlExternalForEachItem,\n symbolForTplStateStoreId,\n} from \"./constants.js\";\nimport type { AsyncProperties, TemplateHostContext } from \"../interfaces.js\";\n\nexport function setupTemplateProxy(\n hostContext: TemplateHostContext,\n ref: string | undefined,\n slots: SlotsConfOfBricks\n) {\n const {\n reversedProxies,\n asyncHostProperties,\n externalSlots,\n tplStateStoreId,\n hostBrick,\n } = hostContext;\n\n let asyncComputedProps: AsyncProperties | undefined;\n\n if (ref && reversedProxies) {\n const propertyProxies = reversedProxies.properties.get(ref);\n if (propertyProxies) {\n const getComputedProps = (hostProps: Record<string, unknown>) => {\n const props: Record<string, unknown> = {};\n for (const { from, to } of propertyProxies) {\n const propValue = hostProps[from];\n if (propValue !== undefined && to.refProperty) {\n props[to.refProperty] = propValue;\n }\n }\n return props;\n };\n\n asyncComputedProps = (asyncHostProperties as AsyncProperties).then(\n getComputedProps\n );\n }\n\n const slotProxies = reversedProxies.slots.get(ref);\n if (slotProxies && externalSlots) {\n // Use an approach like template-literal's quasis:\n // `quasi0${0}quais1${1}quasi2...`\n // Every quasi (indexed by `refPosition`) can be slotted with multiple bricks.\n const quasisMap = new Map<string, BrickConf[][]>();\n\n for (const { from, to } of slotProxies) {\n const insertBricks = externalSlots[from]?.bricks ?? [];\n if (!insertBricks.length) {\n continue;\n }\n const refToSlot = to.refSlot ?? from;\n let expandableSlot = quasisMap.get(refToSlot);\n if (!expandableSlot) {\n expandableSlot = [];\n // The size of quasis should be the existed slotted bricks' size plus one.\n const size = hasOwnProperty(slots, refToSlot)\n ? slots[refToSlot].bricks.length + 1\n : 1;\n for (let i = 0; i < size; i += 1) {\n expandableSlot.push([]);\n }\n quasisMap.set(refToSlot, expandableSlot);\n }\n const refPosition = to.refPosition ?? -1;\n expandableSlot[\n clamp(\n refPosition < 0 ? expandableSlot.length + refPosition : refPosition,\n 0,\n expandableSlot.length - 1\n )\n ].push(\n ...(hasOwnProperty(hostBrick.runtimeContext, \"forEachItem\")\n ? setupTemplateExternalBricks(\n insertBricks,\n hostBrick.runtimeContext.forEachItem\n )\n : insertBricks)\n );\n }\n\n for (const [slotName, quasis] of quasisMap.entries()) {\n if (!hasOwnProperty(slots, slotName)) {\n slots[slotName] = {\n type: \"bricks\",\n bricks: [],\n };\n }\n const slotConf = slots[slotName];\n slotConf.bricks = quasis.flatMap((bricks, index) =>\n index < slotConf.bricks.length\n ? bricks.concat(slotConf.bricks[index])\n : bricks\n );\n\n if (slotConf.bricks.length === 0) {\n delete slots[slotName];\n }\n }\n }\n }\n\n return {\n [symbolForAsyncComputedPropsFromHost]: asyncComputedProps,\n [symbolForTplStateStoreId]: tplStateStoreId,\n };\n}\n\n// External bricks of a template, have the same forEachItem context as their host.\nfunction setupTemplateExternalBricks(\n bricks: BrickConf[],\n forEachItem: unknown\n): BrickConf[] {\n return bricks.map((brick) => ({\n ...brick,\n [symbolForTPlExternalForEachItem]: forEachItem,\n slots: Object.fromEntries(\n Object.entries(brick.slots ?? {}).map(([slotName, slotConf]) => [\n slotName,\n slotConf.type === \"routes\"\n ? {\n type: \"routes\",\n routes: setupTemplateExternalRoutes(slotConf.routes, forEachItem),\n }\n : {\n type: \"bricks\",\n bricks: setupTemplateExternalBricks(\n slotConf.bricks ?? [],\n forEachItem\n ),\n },\n ])\n ),\n }));\n}\n\nfunction setupTemplateExternalRoutes(\n routes: RouteConf[],\n forEachItem: unknown\n): RouteConf[] {\n return routes.map((route) =>\n route.type && route.type !== \"bricks\"\n ? route\n : {\n ...route,\n bricks: setupTemplateExternalBricks(route.bricks, forEachItem),\n }\n );\n}\n"],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ import _objectSpread from "@babel/runtime/helpers/objectSpread2";
2
+ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
+ var _excluded = ["properties", "slots", "children"];
4
+ import { isObject } from "@next-core/utils/general";
5
+ import { setupTemplateProxy } from "./setupTemplateProxy.js";
6
+ import { childrenToSlots } from "../Renderer.js";
7
+ export function setupUseBrickInTemplate(props, hostContext) {
8
+ function walk(props) {
9
+ if (!isObject(props)) {
10
+ return props;
11
+ }
12
+ if (Array.isArray(props)) {
13
+ return props.map(walk);
14
+ }
15
+ return Object.fromEntries(Object.entries(props).map(_ref => {
16
+ var [key, value] = _ref;
17
+ return isObject(value) && key === "useBrick" ? Array.isArray(value) ? [key, value.map(setup)] : [key, setup(value)] : [key, walk(value)];
18
+ }).concat(Object.getOwnPropertySymbols(props).map(k => [k, props[k]])));
19
+ }
20
+ function setup(item) {
21
+ var {
22
+ properties,
23
+ slots: originalSlots,
24
+ children
25
+ } = item,
26
+ restConf = _objectWithoutProperties(item, _excluded);
27
+ var transpiledSlots = childrenToSlots(children, originalSlots);
28
+ var slots = Object.fromEntries(Object.entries(transpiledSlots !== null && transpiledSlots !== void 0 ? transpiledSlots : {}).map(_ref2 => {
29
+ var _slotConf$bricks;
30
+ var [slotName, slotConf] = _ref2;
31
+ return [slotName, {
32
+ type: "bricks",
33
+ bricks: ((_slotConf$bricks = slotConf.bricks) !== null && _slotConf$bricks !== void 0 ? _slotConf$bricks : []).map(setup)
34
+ }];
35
+ }));
36
+ return _objectSpread(_objectSpread({}, restConf), {}, {
37
+ properties: walk(properties),
38
+ slots
39
+ }, setupTemplateProxy(hostContext, restConf.ref, slots));
40
+ }
41
+ return walk(props);
42
+ }
43
+ //# sourceMappingURL=setupUseBrickInTemplate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setupUseBrickInTemplate.js","names":["isObject","setupTemplateProxy","childrenToSlots","setupUseBrickInTemplate","props","hostContext","walk","Array","isArray","map","Object","fromEntries","entries","_ref","key","value","setup","concat","getOwnPropertySymbols","k","item","properties","slots","originalSlots","children","restConf","_objectWithoutProperties","_excluded","transpiledSlots","_ref2","_slotConf$bricks","slotName","slotConf","type","bricks","_objectSpread","ref"],"sources":["../../../../src/internal/CustomTemplates/setupUseBrickInTemplate.ts"],"sourcesContent":["import type { UseBrickSlotsConf, UseSingleBrickConf } from \"@next-core/types\";\nimport { isObject } from \"@next-core/utils/general\";\nimport type { TemplateHostContext } from \"../interfaces.js\";\nimport { setupTemplateProxy } from \"./setupTemplateProxy.js\";\nimport { childrenToSlots } from \"../Renderer.js\";\n\nexport function setupUseBrickInTemplate<T>(\n props: T,\n hostContext: TemplateHostContext\n): T {\n function walk<P>(props: P): P {\n if (!isObject(props)) {\n return props;\n }\n\n if (Array.isArray(props)) {\n return props.map(walk) as P;\n }\n\n return Object.fromEntries(\n Object.entries(props)\n .map(([key, value]) =>\n isObject(value) && key === \"useBrick\"\n ? Array.isArray(value)\n ? [key, value.map(setup)]\n : [key, setup(value as UseSingleBrickConf)]\n : [key, walk(value)]\n )\n .concat(\n Object.getOwnPropertySymbols(props).map((k) => [\n k,\n (props as Record<string | symbol, unknown>)[k],\n ])\n )\n ) as P;\n }\n\n function setup(item: UseSingleBrickConf): UseSingleBrickConf {\n const { properties, slots: originalSlots, children, ...restConf } = item;\n\n const transpiledSlots = childrenToSlots(children, originalSlots) as\n | UseBrickSlotsConf\n | undefined;\n\n const slots = Object.fromEntries(\n Object.entries(transpiledSlots ?? {}).map(([slotName, slotConf]) => [\n slotName,\n {\n type: \"bricks\",\n bricks: (slotConf.bricks ?? []).map(setup),\n },\n ])\n ) as UseBrickSlotsConf;\n\n return {\n ...restConf,\n properties: walk(properties),\n slots,\n ...setupTemplateProxy(hostContext, restConf.ref, slots),\n };\n }\n\n return walk(props);\n}\n"],"mappings":";;;AACA,SAASA,QAAQ,QAAQ,0BAA0B;AAEnD,SAASC,kBAAkB,QAAQ,yBAAyB;AAC5D,SAASC,eAAe,QAAQ,gBAAgB;AAEhD,OAAO,SAASC,uBAAuBA,CACrCC,KAAQ,EACRC,WAAgC,EAC7B;EACH,SAASC,IAAIA,CAAIF,KAAQ,EAAK;IAC5B,IAAI,CAACJ,QAAQ,CAACI,KAAK,CAAC,EAAE;MACpB,OAAOA,KAAK;IACd;IAEA,IAAIG,KAAK,CAACC,OAAO,CAACJ,KAAK,CAAC,EAAE;MACxB,OAAOA,KAAK,CAACK,GAAG,CAACH,IAAI,CAAC;IACxB;IAEA,OAAOI,MAAM,CAACC,WAAW,CACvBD,MAAM,CAACE,OAAO,CAACR,KAAK,CAAC,CAClBK,GAAG,CAACI,IAAA;MAAA,IAAC,CAACC,GAAG,EAAEC,KAAK,CAAC,GAAAF,IAAA;MAAA,OAChBb,QAAQ,CAACe,KAAK,CAAC,IAAID,GAAG,KAAK,UAAU,GACjCP,KAAK,CAACC,OAAO,CAACO,KAAK,CAAC,GAClB,CAACD,GAAG,EAAEC,KAAK,CAACN,GAAG,CAACO,KAAK,CAAC,CAAC,GACvB,CAACF,GAAG,EAAEE,KAAK,CAACD,KAAK,CAAuB,CAAC,GAC3C,CAACD,GAAG,EAAER,IAAI,CAACS,KAAK,CAAC,CAAC;IAAA,EACvB,CACAE,MAAM,CACLP,MAAM,CAACQ,qBAAqB,CAACd,KAAK,CAAC,CAACK,GAAG,CAAEU,CAAC,IAAK,CAC7CA,CAAC,EACAf,KAAK,CAAsCe,CAAC,CAAC,CAC/C,CAAC,CACH,CACJ;EACH;EAEA,SAASH,KAAKA,CAACI,IAAwB,EAAsB;IAC3D,IAAM;QAAEC,UAAU;QAAEC,KAAK,EAAEC,aAAa;QAAEC;MAAsB,CAAC,GAAGJ,IAAI;MAAjBK,QAAQ,GAAAC,wBAAA,CAAKN,IAAI,EAAAO,SAAA;IAExE,IAAMC,eAAe,GAAG1B,eAAe,CAACsB,QAAQ,EAAED,aAAa,CAElD;IAEb,IAAMD,KAAK,GAAGZ,MAAM,CAACC,WAAW,CAC9BD,MAAM,CAACE,OAAO,CAACgB,eAAe,aAAfA,eAAe,cAAfA,eAAe,GAAI,CAAC,CAAC,CAAC,CAACnB,GAAG,CAACoB,KAAA;MAAA,IAAAC,gBAAA;MAAA,IAAC,CAACC,QAAQ,EAAEC,QAAQ,CAAC,GAAAH,KAAA;MAAA,OAAK,CAClEE,QAAQ,EACR;QACEE,IAAI,EAAE,QAAQ;QACdC,MAAM,EAAE,EAAAJ,gBAAA,GAACE,QAAQ,CAACE,MAAM,cAAAJ,gBAAA,cAAAA,gBAAA,GAAI,EAAE,EAAErB,GAAG,CAACO,KAAK;MAC3C,CAAC,CACF;IAAA,EAAC,CACkB;IAEtB,OAAAmB,aAAA,CAAAA,aAAA,KACKV,QAAQ;MACXJ,UAAU,EAAEf,IAAI,CAACe,UAAU,CAAC;MAC5BC;IAAK,GACFrB,kBAAkB,CAACI,WAAW,EAAEoB,QAAQ,CAACW,GAAG,EAAEd,KAAK,CAAC;EAE3D;EAEA,OAAOhB,IAAI,CAACF,KAAK,CAAC;AACpB"}
@@ -0,0 +1,37 @@
1
+ import { customTemplates } from "../../CustomTemplates.js";
2
+ export function getTplStateStore(_ref, using, extraInfo) {
3
+ var {
4
+ tplStateStoreId,
5
+ tplStateStoreMap
6
+ } = _ref;
7
+ if (!tplStateStoreId) {
8
+ throw new Error("Using \"".concat(using, "\" outside of a custom template").concat(extraInfo !== null && extraInfo !== void 0 ? extraInfo : ""));
9
+ }
10
+ var store = tplStateStoreMap.get(tplStateStoreId);
11
+ if (!store) {
12
+ throw new Error("Template state store is not found when using \"".concat(using, "\"").concat(extraInfo !== null && extraInfo !== void 0 ? extraInfo : "", ".\nThis is a bug of Brick Next, please report it."));
13
+ }
14
+ return store;
15
+ }
16
+ export function getTplHostElement(runtimeContext, using, extraInfo) {
17
+ var store = getTplStateStore(runtimeContext, using, extraInfo);
18
+ var hostElement = store.hostBrick.element;
19
+ if (!hostElement) {
20
+ throw new Error("Template host element is gone when using \"".concat(using, "\"").concat(extraInfo !== null && extraInfo !== void 0 ? extraInfo : "", ".\nThis is a bug of Brick Next, please report it."));
21
+ }
22
+ return hostElement;
23
+ }
24
+ export function getTagNameOfCustomTemplate(brick, appId) {
25
+ // When a template is registered by an app, it's namespace maybe missed.
26
+ if (!brick.includes(".") && appId) {
27
+ var tagName = "".concat(appId, ".").concat(brick);
28
+ if (customTemplates.get(tagName)) {
29
+ return tagName;
30
+ }
31
+ }
32
+ if (customTemplates.get(brick)) {
33
+ return brick;
34
+ }
35
+ return false;
36
+ }
37
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","names":["customTemplates","getTplStateStore","_ref","using","extraInfo","tplStateStoreId","tplStateStoreMap","Error","concat","store","get","getTplHostElement","runtimeContext","hostElement","hostBrick","element","getTagNameOfCustomTemplate","brick","appId","includes","tagName"],"sources":["../../../../src/internal/CustomTemplates/utils.ts"],"sourcesContent":["import type { DataStore } from \"../data/DataStore.js\";\nimport type { RuntimeBrickElement, RuntimeContext } from \"../interfaces.js\";\nimport { customTemplates } from \"../../CustomTemplates.js\";\n\ntype MinimalTplStateStoreContext = Pick<\n RuntimeContext,\n \"tplStateStoreId\" | \"tplStateStoreMap\"\n>;\n\nexport function getTplStateStore(\n { tplStateStoreId, tplStateStoreMap }: MinimalTplStateStoreContext,\n using: string,\n extraInfo?: string\n): DataStore<\"STATE\"> {\n if (!tplStateStoreId) {\n throw new Error(\n `Using \"${using}\" outside of a custom template${extraInfo ?? \"\"}`\n );\n }\n const store = tplStateStoreMap.get(tplStateStoreId);\n if (!store) {\n throw new Error(\n `Template state store is not found when using \"${using}\"${\n extraInfo ?? \"\"\n }.\\nThis is a bug of Brick Next, please report it.`\n );\n }\n return store!;\n}\n\nexport function getTplHostElement(\n runtimeContext: MinimalTplStateStoreContext,\n using: string,\n extraInfo?: string\n): RuntimeBrickElement {\n const store = getTplStateStore(runtimeContext, using, extraInfo);\n const hostElement = store.hostBrick!.element;\n if (!hostElement) {\n throw new Error(\n `Template host element is gone when using \"${using}\"${\n extraInfo ?? \"\"\n }.\\nThis is a bug of Brick Next, please report it.`\n );\n }\n return hostElement!;\n}\n\nexport function getTagNameOfCustomTemplate(\n brick: string,\n appId?: string\n): false | string {\n // When a template is registered by an app, it's namespace maybe missed.\n if (!brick.includes(\".\") && appId) {\n const tagName = `${appId}.${brick}`;\n if (customTemplates.get(tagName)) {\n return tagName;\n }\n }\n if (customTemplates.get(brick)) {\n return brick;\n }\n return false;\n}\n"],"mappings":"AAEA,SAASA,eAAe,QAAQ,0BAA0B;AAO1D,OAAO,SAASC,gBAAgBA,CAAAC,IAAA,EAE9BC,KAAa,EACbC,SAAkB,EACE;EAAA,IAHpB;IAAEC,eAAe;IAAEC;EAA8C,CAAC,GAAAJ,IAAA;EAIlE,IAAI,CAACG,eAAe,EAAE;IACpB,MAAM,IAAIE,KAAK,YAAAC,MAAA,CACHL,KAAK,qCAAAK,MAAA,CAAiCJ,SAAS,aAATA,SAAS,cAATA,SAAS,GAAI,EAAE,EAChE;EACH;EACA,IAAMK,KAAK,GAAGH,gBAAgB,CAACI,GAAG,CAACL,eAAe,CAAC;EACnD,IAAI,CAACI,KAAK,EAAE;IACV,MAAM,IAAIF,KAAK,mDAAAC,MAAA,CACoCL,KAAK,QAAAK,MAAA,CACpDJ,SAAS,aAATA,SAAS,cAATA,SAAS,GAAI,EAAE,uDAElB;EACH;EACA,OAAOK,KAAK;AACd;AAEA,OAAO,SAASE,iBAAiBA,CAC/BC,cAA2C,EAC3CT,KAAa,EACbC,SAAkB,EACG;EACrB,IAAMK,KAAK,GAAGR,gBAAgB,CAACW,cAAc,EAAET,KAAK,EAAEC,SAAS,CAAC;EAChE,IAAMS,WAAW,GAAGJ,KAAK,CAACK,SAAS,CAAEC,OAAO;EAC5C,IAAI,CAACF,WAAW,EAAE;IAChB,MAAM,IAAIN,KAAK,+CAAAC,MAAA,CACgCL,KAAK,QAAAK,MAAA,CAChDJ,SAAS,aAATA,SAAS,cAATA,SAAS,GAAI,EAAE,uDAElB;EACH;EACA,OAAOS,WAAW;AACpB;AAEA,OAAO,SAASG,0BAA0BA,CACxCC,KAAa,EACbC,KAAc,EACE;EAChB;EACA,IAAI,CAACD,KAAK,CAACE,QAAQ,CAAC,GAAG,CAAC,IAAID,KAAK,EAAE;IACjC,IAAME,OAAO,MAAAZ,MAAA,CAAMU,KAAK,OAAAV,MAAA,CAAIS,KAAK,CAAE;IACnC,IAAIjB,eAAe,CAACU,GAAG,CAACU,OAAO,CAAC,EAAE;MAChC,OAAOA,OAAO;IAChB;EACF;EACA,IAAIpB,eAAe,CAACU,GAAG,CAACO,KAAK,CAAC,EAAE;IAC9B,OAAOA,KAAK;EACd;EACA,OAAO,KAAK;AACd"}