@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,20 @@
1
+ import { isEvaluable } from "@next-core/cook";
2
+ import { track } from "@next-core/utils/storyboard";
3
+ import { getPreEvaluatedRaw, isPreEvaluated } from "./evaluate.js";
4
+ export function getTracks(value) {
5
+ var contextNames = false;
6
+ var stateNames = false;
7
+ var formStateNames = false;
8
+ if (typeof value === "string" ? isEvaluable(value) : isPreEvaluated(value)) {
9
+ var raw = typeof value === "string" ? value : getPreEvaluatedRaw(value);
10
+ contextNames = track(raw, "track context", "CTX");
11
+ stateNames = track(raw, "track state", "STATE");
12
+ formStateNames = track(raw, "track formstate", "FORM_STATE");
13
+ }
14
+ return {
15
+ contextNames,
16
+ stateNames,
17
+ formStateNames
18
+ };
19
+ }
20
+ //# sourceMappingURL=getTracks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getTracks.js","names":["isEvaluable","track","getPreEvaluatedRaw","isPreEvaluated","getTracks","value","contextNames","stateNames","formStateNames","raw"],"sources":["../../../../src/internal/compute/getTracks.ts"],"sourcesContent":["import { isEvaluable } from \"@next-core/cook\";\nimport { track } from \"@next-core/utils/storyboard\";\nimport {\n PreEvaluated,\n getPreEvaluatedRaw,\n isPreEvaluated,\n} from \"./evaluate.js\";\n\nexport function getTracks(value: unknown) {\n let contextNames: string[] | Set<string> | false = false;\n let stateNames: string[] | Set<string> | false = false;\n let formStateNames: string[] | Set<string> | false = false;\n if (typeof value === \"string\" ? isEvaluable(value) : isPreEvaluated(value)) {\n const raw =\n typeof value === \"string\"\n ? value\n : getPreEvaluatedRaw(value as PreEvaluated);\n contextNames = track(raw, \"track context\", \"CTX\");\n stateNames = track(raw, \"track state\", \"STATE\");\n formStateNames = track(raw, \"track formstate\", \"FORM_STATE\");\n }\n\n return { contextNames, stateNames, formStateNames };\n}\n"],"mappings":"AAAA,SAASA,WAAW,QAAQ,iBAAiB;AAC7C,SAASC,KAAK,QAAQ,6BAA6B;AACnD,SAEEC,kBAAkB,EAClBC,cAAc,QACT,eAAe;AAEtB,OAAO,SAASC,SAASA,CAACC,KAAc,EAAE;EACxC,IAAIC,YAA4C,GAAG,KAAK;EACxD,IAAIC,UAA0C,GAAG,KAAK;EACtD,IAAIC,cAA8C,GAAG,KAAK;EAC1D,IAAI,OAAOH,KAAK,KAAK,QAAQ,GAAGL,WAAW,CAACK,KAAK,CAAC,GAAGF,cAAc,CAACE,KAAK,CAAC,EAAE;IAC1E,IAAMI,GAAG,GACP,OAAOJ,KAAK,KAAK,QAAQ,GACrBA,KAAK,GACLH,kBAAkB,CAACG,KAAK,CAAiB;IAC/CC,YAAY,GAAGL,KAAK,CAACQ,GAAG,EAAE,eAAe,EAAE,KAAK,CAAC;IACjDF,UAAU,GAAGN,KAAK,CAACQ,GAAG,EAAE,aAAa,EAAE,OAAO,CAAC;IAC/CD,cAAc,GAAGP,KAAK,CAACQ,GAAG,EAAE,iBAAiB,EAAE,YAAY,CAAC;EAC9D;EAEA,OAAO;IAAEH,YAAY;IAAEC,UAAU;IAAEC;EAAe,CAAC;AACrD"}
@@ -0,0 +1,16 @@
1
+ export function imagesFactory(appId, isBuildPush) {
2
+ return {
3
+ get(name) {
4
+ return isBuildPush ? "api/gateway/object_store.object_store.GetObject/api/v1/objectStore/bucket/next-builder/object/".concat(name) : "".concat(window.APP_ROOT ? "".concat(window.APP_ROOT, "-/") : "", "micro-apps/").concat(appId, "/images/").concat(name);
5
+ }
6
+ };
7
+ }
8
+ export function widgetImagesFactory(widgetId, widgetVersion) {
9
+ return {
10
+ get(name) {
11
+ var _window$PUBLIC_ROOT;
12
+ return "".concat((_window$PUBLIC_ROOT = window.PUBLIC_ROOT) !== null && _window$PUBLIC_ROOT !== void 0 ? _window$PUBLIC_ROOT : "", "bricks/").concat(widgetId, "/").concat(window.PUBLIC_ROOT_WITH_VERSION && widgetVersion ? "".concat(widgetVersion, "/") : "", "dist/assets/").concat(name);
13
+ }
14
+ };
15
+ }
16
+ //# sourceMappingURL=images.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"images.js","names":["imagesFactory","appId","isBuildPush","get","name","concat","window","APP_ROOT","widgetImagesFactory","widgetId","widgetVersion","_window$PUBLIC_ROOT","PUBLIC_ROOT","PUBLIC_ROOT_WITH_VERSION"],"sources":["../../../../src/internal/compute/images.ts"],"sourcesContent":["export interface ImagesFactory {\n get(name: string): string;\n}\n\nexport function imagesFactory(\n appId: string,\n isBuildPush?: boolean\n): ImagesFactory {\n return {\n get(name) {\n return isBuildPush\n ? `api/gateway/object_store.object_store.GetObject/api/v1/objectStore/bucket/next-builder/object/${name}`\n : `${\n window.APP_ROOT ? `${window.APP_ROOT}-/` : \"\"\n }micro-apps/${appId}/images/${name}`;\n },\n };\n}\n\nexport function widgetImagesFactory(\n widgetId: string,\n widgetVersion?: string\n): ImagesFactory {\n return {\n get(name) {\n return `${window.PUBLIC_ROOT ?? \"\"}bricks/${widgetId}/${\n window.PUBLIC_ROOT_WITH_VERSION && widgetVersion\n ? `${widgetVersion}/`\n : \"\"\n }dist/assets/${name}`;\n },\n };\n}\n"],"mappings":"AAIA,OAAO,SAASA,aAAaA,CAC3BC,KAAa,EACbC,WAAqB,EACN;EACf,OAAO;IACLC,GAAGA,CAACC,IAAI,EAAE;MACR,OAAOF,WAAW,oGAAAG,MAAA,CACmFD,IAAI,OAAAC,MAAA,CAEnGC,MAAM,CAACC,QAAQ,MAAAF,MAAA,CAAMC,MAAM,CAACC,QAAQ,UAAO,EAAE,iBAAAF,MAAA,CACjCJ,KAAK,cAAAI,MAAA,CAAWD,IAAI,CAAE;IAC1C;EACF,CAAC;AACH;AAEA,OAAO,SAASI,mBAAmBA,CACjCC,QAAgB,EAChBC,aAAsB,EACP;EACf,OAAO;IACLP,GAAGA,CAACC,IAAI,EAAE;MAAA,IAAAO,mBAAA;MACR,UAAAN,MAAA,EAAAM,mBAAA,GAAUL,MAAM,CAACM,WAAW,cAAAD,mBAAA,cAAAA,mBAAA,GAAI,EAAE,aAAAN,MAAA,CAAUI,QAAQ,OAAAJ,MAAA,CAClDC,MAAM,CAACO,wBAAwB,IAAIH,aAAa,MAAAL,MAAA,CACzCK,aAAa,SAChB,EAAE,kBAAAL,MAAA,CACOD,IAAI;IACrB;EACF,CAAC;AACH"}
@@ -0,0 +1,37 @@
1
+ import { setProperties } from "./setProperties.js";
2
+ import { getTplStateStore } from "../CustomTemplates/utils.js";
3
+ export function listenOnTrackingContext(brick, trackingContextList) {
4
+ var _loop = function (track) {
5
+ var listener = () => {
6
+ if (brick.element) {
7
+ setProperties(brick.element, {
8
+ [track.propName]: track.propValue
9
+ }, brick.runtimeContext);
10
+ }
11
+ };
12
+ if (track.contextNames) {
13
+ for (var contextName of track.contextNames) {
14
+ brick.runtimeContext.ctxStore.onChange(contextName, listener);
15
+ }
16
+ }
17
+ if (track.stateNames) {
18
+ var tplStateStore = getTplStateStore(brick.runtimeContext, "STATE", ": \"".concat(track.propValue, "\""));
19
+ for (var stateName of track.stateNames) {
20
+ tplStateStore.onChange(stateName, listener);
21
+ }
22
+ }
23
+ // if (track.formStateNames) {
24
+ // const formContext = getCustomFormContext(context.formContextId);
25
+ // for (const stateName of track.formStateNames) {
26
+ // const ctx = formContext.formState.get().get(stateName);
27
+ // (
28
+ // ctx as StoryboardContextItemFreeVariable
29
+ // )?.eventTarget?.addEventListener("formstate.change", listener);
30
+ // }
31
+ // }
32
+ };
33
+ for (var track of trackingContextList) {
34
+ _loop(track);
35
+ }
36
+ }
37
+ //# sourceMappingURL=listenOnTrackingContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listenOnTrackingContext.js","names":["setProperties","getTplStateStore","listenOnTrackingContext","brick","trackingContextList","_loop","track","listener","element","propName","propValue","runtimeContext","contextNames","contextName","ctxStore","onChange","stateNames","tplStateStore","concat","stateName"],"sources":["../../../../src/internal/compute/listenOnTrackingContext.ts"],"sourcesContent":["import { setProperties } from \"./setProperties.js\";\nimport type { RuntimeBrick } from \"../interfaces.js\";\nimport { getTplStateStore } from \"../CustomTemplates/utils.js\";\n\nexport interface TrackingContextItem {\n contextNames: string[] | Set<string> | false;\n stateNames: string[] | Set<string> | false;\n formStateNames: string[] | Set<string> | false;\n propName: string;\n propValue: unknown;\n}\n\nexport function listenOnTrackingContext(\n brick: RuntimeBrick,\n trackingContextList: TrackingContextItem[]\n): void {\n for (const track of trackingContextList) {\n const listener = (): void => {\n if (brick.element) {\n setProperties(\n brick.element,\n { [track.propName]: track.propValue },\n brick.runtimeContext\n );\n }\n };\n if (track.contextNames) {\n for (const contextName of track.contextNames) {\n brick.runtimeContext.ctxStore.onChange(contextName, listener);\n }\n }\n if (track.stateNames) {\n const tplStateStore = getTplStateStore(\n brick.runtimeContext,\n \"STATE\",\n `: \"${track.propValue}\"`\n );\n for (const stateName of track.stateNames) {\n tplStateStore.onChange(stateName, listener);\n }\n }\n // if (track.formStateNames) {\n // const formContext = getCustomFormContext(context.formContextId);\n // for (const stateName of track.formStateNames) {\n // const ctx = formContext.formState.get().get(stateName);\n // (\n // ctx as StoryboardContextItemFreeVariable\n // )?.eventTarget?.addEventListener(\"formstate.change\", listener);\n // }\n // }\n }\n}\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,oBAAoB;AAElD,SAASC,gBAAgB,QAAQ,6BAA6B;AAU9D,OAAO,SAASC,uBAAuBA,CACrCC,KAAmB,EACnBC,mBAA0C,EACpC;EAAA,IAAAC,KAAA,YAAAA,CACKC,KAAK;IACd,IAAMC,QAAQ,GAAGA,CAAA,KAAY;MAC3B,IAAIJ,KAAK,CAACK,OAAO,EAAE;QACjBR,aAAa,CACXG,KAAK,CAACK,OAAO,EACb;UAAE,CAACF,KAAK,CAACG,QAAQ,GAAGH,KAAK,CAACI;QAAU,CAAC,EACrCP,KAAK,CAACQ,cAAc,CACrB;MACH;IACF,CAAC;IACD,IAAIL,KAAK,CAACM,YAAY,EAAE;MACtB,KAAK,IAAMC,WAAW,IAAIP,KAAK,CAACM,YAAY,EAAE;QAC5CT,KAAK,CAACQ,cAAc,CAACG,QAAQ,CAACC,QAAQ,CAACF,WAAW,EAAEN,QAAQ,CAAC;MAC/D;IACF;IACA,IAAID,KAAK,CAACU,UAAU,EAAE;MACpB,IAAMC,aAAa,GAAGhB,gBAAgB,CACpCE,KAAK,CAACQ,cAAc,EACpB,OAAO,SAAAO,MAAA,CACDZ,KAAK,CAACI,SAAS,QACtB;MACD,KAAK,IAAMS,SAAS,IAAIb,KAAK,CAACU,UAAU,EAAE;QACxCC,aAAa,CAACF,QAAQ,CAACI,SAAS,EAAEZ,QAAQ,CAAC;MAC7C;IACF;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;EAAA;EAjCF,KAAK,IAAMD,KAAK,IAAIF,mBAAmB,EAAE;IAAAC,KAAA,CAA9BC,KAAK;EAkChB;AACF"}
@@ -0,0 +1,28 @@
1
+ import { isObject } from "@next-core/utils/general";
2
+ var computed = new WeakSet();
3
+
4
+ // The computed (or transformed) result should never be *computed* again.
5
+ // So does the fetched data from a remote api.
6
+ export function markAsComputed(value) {
7
+ if (isObject(value)) {
8
+ if (!hasBeenComputed(value)) {
9
+ computed.add(value);
10
+ if (Array.isArray(value)) {
11
+ value.forEach(markAsComputed);
12
+ } else {
13
+ // Only mark pure objects.
14
+ var proto = Object.getPrototypeOf(value);
15
+ if (!proto || proto.constructor === Object) {
16
+ Object.values(value).forEach(markAsComputed);
17
+ }
18
+ }
19
+ }
20
+ }
21
+ }
22
+ export function hasBeenComputed(object) {
23
+ return computed.has(object);
24
+ }
25
+ export function resetAllComputedMarks() {
26
+ computed = new WeakSet();
27
+ }
28
+ //# sourceMappingURL=markAsComputed.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markAsComputed.js","names":["isObject","computed","WeakSet","markAsComputed","value","hasBeenComputed","add","Array","isArray","forEach","proto","Object","getPrototypeOf","constructor","values","object","has","resetAllComputedMarks"],"sources":["../../../../src/internal/compute/markAsComputed.ts"],"sourcesContent":["import { isObject } from \"@next-core/utils/general\";\n\nlet computed = new WeakSet();\n\n// The computed (or transformed) result should never be *computed* again.\n// So does the fetched data from a remote api.\nexport function markAsComputed(value: unknown): void {\n if (isObject(value)) {\n if (!hasBeenComputed(value)) {\n computed.add(value);\n if (Array.isArray(value)) {\n value.forEach(markAsComputed);\n } else {\n // Only mark pure objects.\n const proto = Object.getPrototypeOf(value);\n if (!proto || proto.constructor === Object) {\n Object.values(value).forEach(markAsComputed);\n }\n }\n }\n }\n}\n\nexport function hasBeenComputed(object: unknown): boolean {\n return computed.has(object as object);\n}\n\nexport function resetAllComputedMarks(): void {\n computed = new WeakSet();\n}\n"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,0BAA0B;AAEnD,IAAIC,QAAQ,GAAG,IAAIC,OAAO,EAAE;;AAE5B;AACA;AACA,OAAO,SAASC,cAAcA,CAACC,KAAc,EAAQ;EACnD,IAAIJ,QAAQ,CAACI,KAAK,CAAC,EAAE;IACnB,IAAI,CAACC,eAAe,CAACD,KAAK,CAAC,EAAE;MAC3BH,QAAQ,CAACK,GAAG,CAACF,KAAK,CAAC;MACnB,IAAIG,KAAK,CAACC,OAAO,CAACJ,KAAK,CAAC,EAAE;QACxBA,KAAK,CAACK,OAAO,CAACN,cAAc,CAAC;MAC/B,CAAC,MAAM;QACL;QACA,IAAMO,KAAK,GAAGC,MAAM,CAACC,cAAc,CAACR,KAAK,CAAC;QAC1C,IAAI,CAACM,KAAK,IAAIA,KAAK,CAACG,WAAW,KAAKF,MAAM,EAAE;UAC1CA,MAAM,CAACG,MAAM,CAACV,KAAK,CAAC,CAACK,OAAO,CAACN,cAAc,CAAC;QAC9C;MACF;IACF;EACF;AACF;AAEA,OAAO,SAASE,eAAeA,CAACU,MAAe,EAAW;EACxD,OAAOd,QAAQ,CAACe,GAAG,CAACD,MAAM,CAAW;AACvC;AAEA,OAAO,SAASE,qBAAqBA,CAAA,EAAS;EAC5ChB,QAAQ,GAAG,IAAIC,OAAO,EAAE;AAC1B"}
@@ -0,0 +1,12 @@
1
+ import { computeRealProperties } from "./computeRealProperties.js";
2
+ import { setRealProperties } from "./setRealProperties.js";
3
+ export function setProperties(bricks, properties, runtimeContext) {
4
+ var realProps = computeRealProperties(properties, runtimeContext);
5
+ if (!Array.isArray(bricks)) {
6
+ bricks = [bricks];
7
+ }
8
+ bricks.forEach(brick => {
9
+ setRealProperties(brick, realProps);
10
+ });
11
+ }
12
+ //# sourceMappingURL=setProperties.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setProperties.js","names":["computeRealProperties","setRealProperties","setProperties","bricks","properties","runtimeContext","realProps","Array","isArray","forEach","brick"],"sources":["../../../../src/internal/compute/setProperties.ts"],"sourcesContent":["import { computeRealProperties } from \"./computeRealProperties.js\";\nimport { setRealProperties } from \"./setRealProperties.js\";\nimport type { RuntimeContext } from \"../interfaces.js\";\n\nexport function setProperties(\n bricks: HTMLElement | HTMLElement[],\n properties: Record<string, unknown>,\n runtimeContext: RuntimeContext\n): void {\n const realProps = computeRealProperties(properties, runtimeContext);\n if (!Array.isArray(bricks)) {\n bricks = [bricks];\n }\n bricks.forEach((brick) => {\n setRealProperties(brick, realProps);\n });\n}\n"],"mappings":"AAAA,SAASA,qBAAqB,QAAQ,4BAA4B;AAClE,SAASC,iBAAiB,QAAQ,wBAAwB;AAG1D,OAAO,SAASC,aAAaA,CAC3BC,MAAmC,EACnCC,UAAmC,EACnCC,cAA8B,EACxB;EACN,IAAMC,SAAS,GAAGN,qBAAqB,CAACI,UAAU,EAAEC,cAAc,CAAC;EACnE,IAAI,CAACE,KAAK,CAACC,OAAO,CAACL,MAAM,CAAC,EAAE;IAC1BA,MAAM,GAAG,CAACA,MAAM,CAAC;EACnB;EACAA,MAAM,CAACM,OAAO,CAAEC,KAAK,IAAK;IACxBT,iBAAiB,CAACS,KAAK,EAAEJ,SAAS,CAAC;EACrC,CAAC,CAAC;AACJ"}
@@ -0,0 +1,23 @@
1
+ export function setRealProperties(brick, realProps) {
2
+ if (!realProps) {
3
+ return;
4
+ }
5
+ for (var [propName, propValue] of Object.entries(realProps)) {
6
+ switch (propName) {
7
+ case "style":
8
+ case "dataset":
9
+ for (var [k, v] of Object.entries(propValue)) {
10
+ brick[propName][k] = v;
11
+ }
12
+ break;
13
+ case "constructor":
14
+ case "__proto__":
15
+ case "innerHTML":
16
+ // `innerHTML` is dangerous, use `textContent` instead.
17
+ throw new Error("set `".concat(propName, "` is prohibited"));
18
+ default:
19
+ brick[propName] = propValue;
20
+ }
21
+ }
22
+ }
23
+ //# sourceMappingURL=setRealProperties.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setRealProperties.js","names":["setRealProperties","brick","realProps","propName","propValue","Object","entries","k","v","Error","concat"],"sources":["../../../../src/internal/compute/setRealProperties.ts"],"sourcesContent":["export function setRealProperties(\n brick: HTMLElement,\n realProps: Record<string, unknown> | undefined\n): void {\n if (!realProps) {\n return;\n }\n for (const [propName, propValue] of Object.entries(realProps)) {\n switch (propName) {\n case \"style\":\n case \"dataset\":\n for (const [k, v] of Object.entries(\n propValue as Record<string, unknown>\n )) {\n (brick[propName] as unknown as Record<string, unknown>)[k] = v;\n }\n break;\n case \"constructor\":\n case \"__proto__\":\n case \"innerHTML\":\n // `innerHTML` is dangerous, use `textContent` instead.\n throw new Error(`set \\`${propName}\\` is prohibited`);\n default:\n (brick as unknown as Record<string, unknown>)[propName] = propValue;\n }\n }\n}\n"],"mappings":"AAAA,OAAO,SAASA,iBAAiBA,CAC/BC,KAAkB,EAClBC,SAA8C,EACxC;EACN,IAAI,CAACA,SAAS,EAAE;IACd;EACF;EACA,KAAK,IAAM,CAACC,QAAQ,EAAEC,SAAS,CAAC,IAAIC,MAAM,CAACC,OAAO,CAACJ,SAAS,CAAC,EAAE;IAC7D,QAAQC,QAAQ;MACd,KAAK,OAAO;MACZ,KAAK,SAAS;QACZ,KAAK,IAAM,CAACI,CAAC,EAAEC,CAAC,CAAC,IAAIH,MAAM,CAACC,OAAO,CACjCF,SAAS,CACV,EAAE;UACAH,KAAK,CAACE,QAAQ,CAAC,CAAwCI,CAAC,CAAC,GAAGC,CAAC;QAChE;QACA;MACF,KAAK,aAAa;MAClB,KAAK,WAAW;MAChB,KAAK,WAAW;QACd;QACA,MAAM,IAAIC,KAAK,SAAAC,MAAA,CAAUP,QAAQ,qBAAmB;MACtD;QACGF,KAAK,CAAwCE,QAAQ,CAAC,GAAGC,SAAS;IAAC;EAE1E;AACF"}
@@ -0,0 +1,20 @@
1
+ var contractsMap = new Map();
2
+ var widgetContractMap = new Map();
3
+ var addContract = (contracts, map) => {
4
+ contracts === null || contracts === void 0 ? void 0 : contracts.forEach(contract => {
5
+ map.set("".concat(contract.namespaceId, ".").concat(contract.name), contract);
6
+ });
7
+ };
8
+ export function collectContract(contracts) {
9
+ addContract(contracts, contractsMap);
10
+ }
11
+ export function collectWidgetContract(contracts) {
12
+ addContract(contracts, widgetContractMap);
13
+ }
14
+ export function clearCollectWidgetContract() {
15
+ widgetContractMap.clear();
16
+ }
17
+ export function getContract(name) {
18
+ return contractsMap.get(name) || widgetContractMap.get(name);
19
+ }
20
+ //# sourceMappingURL=CollectContracts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CollectContracts.js","names":["contractsMap","Map","widgetContractMap","addContract","contracts","map","forEach","contract","set","concat","namespaceId","name","collectContract","collectWidgetContract","clearCollectWidgetContract","clear","getContract","get"],"sources":["../../../../src/internal/data/CollectContracts.ts"],"sourcesContent":["import { Contract } from \"@next-core/types\";\n\nconst contractsMap: Map<string, Contract> = new Map();\nconst widgetContractMap: Map<string, Contract> = new Map();\n\nconst addContract = (\n contracts: Contract[] | undefined,\n map: Map<string, Contract>\n): void => {\n contracts?.forEach((contract) => {\n map.set(`${contract.namespaceId}.${contract.name}`, contract);\n });\n};\n\nexport function collectContract(contracts: Contract[] | undefined): void {\n addContract(contracts, contractsMap);\n}\n\nexport function collectWidgetContract(contracts: Contract[] | undefined): void {\n addContract(contracts, widgetContractMap);\n}\n\nexport function clearCollectWidgetContract(): void {\n widgetContractMap.clear();\n}\n\nexport function getContract(name: string): Contract | undefined {\n return contractsMap.get(name) || widgetContractMap.get(name);\n}\n"],"mappings":"AAEA,IAAMA,YAAmC,GAAG,IAAIC,GAAG,EAAE;AACrD,IAAMC,iBAAwC,GAAG,IAAID,GAAG,EAAE;AAE1D,IAAME,WAAW,GAAGA,CAClBC,SAAiC,EACjCC,GAA0B,KACjB;EACTD,SAAS,aAATA,SAAS,uBAATA,SAAS,CAAEE,OAAO,CAAEC,QAAQ,IAAK;IAC/BF,GAAG,CAACG,GAAG,IAAAC,MAAA,CAAIF,QAAQ,CAACG,WAAW,OAAAD,MAAA,CAAIF,QAAQ,CAACI,IAAI,GAAIJ,QAAQ,CAAC;EAC/D,CAAC,CAAC;AACJ,CAAC;AAED,OAAO,SAASK,eAAeA,CAACR,SAAiC,EAAQ;EACvED,WAAW,CAACC,SAAS,EAAEJ,YAAY,CAAC;AACtC;AAEA,OAAO,SAASa,qBAAqBA,CAACT,SAAiC,EAAQ;EAC7ED,WAAW,CAACC,SAAS,EAAEF,iBAAiB,CAAC;AAC3C;AAEA,OAAO,SAASY,0BAA0BA,CAAA,EAAS;EACjDZ,iBAAiB,CAACa,KAAK,EAAE;AAC3B;AAEA,OAAO,SAASC,WAAWA,CAACL,IAAY,EAAwB;EAC9D,OAAOX,YAAY,CAACiB,GAAG,CAACN,IAAI,CAAC,IAAIT,iBAAiB,CAACe,GAAG,CAACN,IAAI,CAAC;AAC9D"}
@@ -0,0 +1,203 @@
1
+ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
2
+ import _objectSpread from "@babel/runtime/helpers/objectSpread2";
3
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
4
+ import { hasOwnProperty, isObject } from "@next-core/utils/general";
5
+ import { strictCollectMemberUsage } from "@next-core/utils/storyboard";
6
+ import { eventCallbackFactory, listenerFactory } from "../bindListeners.js";
7
+ import { asyncCheckIf } from "../compute/checkIf.js";
8
+ import { asyncComputeRealValue, computeRealValue } from "../compute/computeRealValue.js";
9
+ import { resolveData } from "./resolveData.js";
10
+ import { resolveDataStore } from "./resolveDataStore.js";
11
+ import { handleHttpError } from "../../handleHttpError.js";
12
+ export class DataStore {
13
+ constructor(type, hostBrick) {
14
+ _defineProperty(this, "type", void 0);
15
+ _defineProperty(this, "data", new Map());
16
+ _defineProperty(this, "changeEventType", void 0);
17
+ _defineProperty(this, "pendingStack", []);
18
+ _defineProperty(this, "hostBrick", void 0);
19
+ this.type = type;
20
+ this.changeEventType = this.type === "FORM_STATE" ? "formstate.change" : this.type === "STATE" ? "state.change" : "context.change";
21
+ this.hostBrick = hostBrick;
22
+ }
23
+ getValue(name) {
24
+ var _this$data$get;
25
+ return (_this$data$get = this.data.get(name)) === null || _this$data$get === void 0 ? void 0 : _this$data$get.value;
26
+ }
27
+ updateValue(name, value, method, callback, callbackRuntimeContext) {
28
+ var item = this.data.get(name);
29
+ if (!item) {
30
+ throw new Error("".concat(this.type, " '").concat(name, "' is not defined"));
31
+ }
32
+ if (method === "refresh" || method === "load") {
33
+ if (!item.load) {
34
+ throw new Error("You can not ".concat(method, " \"").concat(this.type, ".").concat(name, "\" which has no resolve"));
35
+ }
36
+ var promise;
37
+ if (method === "load") {
38
+ // Try to reuse previous request when calling `load`.
39
+ if (item.loaded) {
40
+ promise = Promise.resolve(item.value);
41
+ } else if (item.loading) {
42
+ promise = item.loading;
43
+ }
44
+ }
45
+ if (!promise) {
46
+ promise = item.loading = item.load(_objectSpread({
47
+ cache: method === "load" ? "default" : "reload"
48
+ }, value));
49
+ // Do not use the chained promise, since the callbacks need the original promise.
50
+ promise.then(val => {
51
+ item.loaded = true;
52
+ item.value = val;
53
+ item.eventTarget.dispatchEvent(new CustomEvent(this.changeEventType, {
54
+ detail: item.value
55
+ }));
56
+ }, err => {
57
+ // Let users override error handling.
58
+ if (!(callback !== null && callback !== void 0 && callback.error)) {
59
+ handleHttpError(err);
60
+ }
61
+ });
62
+ }
63
+ if (callback) {
64
+ var callbackFactory = eventCallbackFactory(callback, callbackRuntimeContext);
65
+ promise.then(val => {
66
+ callbackFactory("success")({
67
+ value: val
68
+ });
69
+ callbackFactory("finally")();
70
+ }, err => {
71
+ callbackFactory("error")(err);
72
+ callbackFactory("finally")();
73
+ });
74
+ }
75
+ return;
76
+ }
77
+ if (method === "replace") {
78
+ item.value = value;
79
+ } else {
80
+ if (isObject(item.value)) {
81
+ Object.assign(item.value, value);
82
+ } else {
83
+ // eslint-disable-next-line no-console
84
+ console.warn("Non-object current value of \"".concat(this.type, ".").concat(name, "\" for \"context.assign\", try \"context.replace\" instead."));
85
+ item.value = value;
86
+ }
87
+ }
88
+ item.eventTarget.dispatchEvent(new CustomEvent(this.changeEventType, {
89
+ detail: item.value
90
+ }));
91
+ }
92
+ define(dataConfs, runtimeContext, asyncHostProperties) {
93
+ if (Array.isArray(dataConfs) && dataConfs.length > 0) {
94
+ var pending = resolveDataStore(dataConfs, dataConf => this.resolve(dataConf, runtimeContext, asyncHostProperties), this.type);
95
+ this.pendingStack.push(pending);
96
+ }
97
+ }
98
+ onChange(dataName, listener) {
99
+ var _this$data$get2;
100
+ (_this$data$get2 = this.data.get(dataName)) === null || _this$data$get2 === void 0 ? void 0 : _this$data$get2.eventTarget.addEventListener(this.changeEventType, listener);
101
+ }
102
+ waitFor(dataNames) {
103
+ var _this = this;
104
+ return _asyncToGenerator(function* () {
105
+ var _loop = function* (pendingContexts) {
106
+ yield Promise.all([...dataNames].map(ctx => {
107
+ var p = pendingContexts.get(ctx);
108
+ return p;
109
+ }));
110
+ };
111
+ for (var {
112
+ pendingContexts
113
+ } of _this.pendingStack) {
114
+ yield* _loop(pendingContexts);
115
+ }
116
+ })();
117
+ }
118
+ waitForAll() {
119
+ var _this2 = this;
120
+ return _asyncToGenerator(function* () {
121
+ for (var {
122
+ pendingResult
123
+ } of _this2.pendingStack) {
124
+ yield pendingResult;
125
+ }
126
+ })();
127
+ }
128
+ resolve(dataConf, runtimeContext, asyncHostProperties) {
129
+ var _this3 = this;
130
+ return _asyncToGenerator(function* () {
131
+ if (!(yield asyncCheckIf(dataConf, runtimeContext))) {
132
+ return false;
133
+ }
134
+ var value;
135
+ if (_this3.type === "STATE" && asyncHostProperties && dataConf.expose) {
136
+ var hostProps = yield asyncHostProperties;
137
+ if (hasOwnProperty(hostProps, dataConf.name)) {
138
+ value = hostProps[dataConf.name];
139
+ }
140
+ }
141
+ var load;
142
+ var isLazyResolve = false;
143
+ if (value === undefined) {
144
+ if (dataConf.resolve) {
145
+ var resolveConf = _objectSpread({
146
+ transform: "value"
147
+ }, dataConf.resolve);
148
+ if (yield asyncCheckIf(dataConf.resolve, runtimeContext)) {
149
+ load = /*#__PURE__*/function () {
150
+ var _ref = _asyncToGenerator(function* (options) {
151
+ return (yield resolveData(resolveConf, runtimeContext, options)).value;
152
+ });
153
+ return function load(_x) {
154
+ return _ref.apply(this, arguments);
155
+ };
156
+ }();
157
+ isLazyResolve = dataConf.resolve.lazy;
158
+ if (!isLazyResolve) {
159
+ value = yield load();
160
+ }
161
+ } else if (!hasOwnProperty(dataConf, "value")) {
162
+ return false;
163
+ }
164
+ }
165
+ if ((!load || isLazyResolve) && dataConf.value !== undefined) {
166
+ // If the context has no resolve, just use its `value`.
167
+ // Or if the resolve is ignored or lazy, use its `value` as a fallback.
168
+ value = yield asyncComputeRealValue(dataConf.value, runtimeContext);
169
+ }
170
+ }
171
+ var newData = {
172
+ value,
173
+ // This is required for tracking context, even if no `onChange` is specified.
174
+ eventTarget: new EventTarget(),
175
+ load,
176
+ loaded: !isLazyResolve
177
+ };
178
+ if (dataConf.onChange) {
179
+ newData.eventTarget.addEventListener(_this3.changeEventType, listenerFactory(dataConf.onChange, runtimeContext));
180
+ }
181
+ if (dataConf.track && _this3.type !== "FORM_STATE") {
182
+ var deps = strictCollectMemberUsage(load ? dataConf.resolve : dataConf.value, _this3.type);
183
+ for (var dep of deps) {
184
+ _this3.onChange(dep, () => {
185
+ if (load) {
186
+ _this3.updateValue(dataConf.name, {
187
+ cache: "default"
188
+ }, "refresh");
189
+ } else {
190
+ _this3.updateValue(dataConf.name, computeRealValue(dataConf.value, runtimeContext), "replace");
191
+ }
192
+ });
193
+ }
194
+ }
195
+ if (_this3.data.has(dataConf.name)) {
196
+ throw new Error("".concat(_this3.type, " '").concat(dataConf.name, "' has already been declared"));
197
+ }
198
+ _this3.data.set(dataConf.name, newData);
199
+ return true;
200
+ })();
201
+ }
202
+ }
203
+ //# sourceMappingURL=DataStore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataStore.js","names":["hasOwnProperty","isObject","strictCollectMemberUsage","eventCallbackFactory","listenerFactory","asyncCheckIf","asyncComputeRealValue","computeRealValue","resolveData","resolveDataStore","handleHttpError","DataStore","constructor","type","hostBrick","_defineProperty","Map","changeEventType","getValue","name","_this$data$get","data","get","value","updateValue","method","callback","callbackRuntimeContext","item","Error","concat","load","promise","loaded","Promise","resolve","loading","_objectSpread","cache","then","val","eventTarget","dispatchEvent","CustomEvent","detail","err","error","callbackFactory","Object","assign","console","warn","define","dataConfs","runtimeContext","asyncHostProperties","Array","isArray","length","pending","dataConf","pendingStack","push","onChange","dataName","listener","_this$data$get2","addEventListener","waitFor","dataNames","_this","_asyncToGenerator","_loop","pendingContexts","all","map","ctx","p","waitForAll","_this2","pendingResult","_this3","expose","hostProps","isLazyResolve","undefined","resolveConf","transform","_ref","options","_x","apply","arguments","lazy","newData","EventTarget","track","deps","dep","has","set"],"sources":["../../../../src/internal/data/DataStore.ts"],"sourcesContent":["import type { BrickEventHandlerCallback, ContextConf } from \"@next-core/types\";\nimport { hasOwnProperty, isObject } from \"@next-core/utils/general\";\nimport { strictCollectMemberUsage } from \"@next-core/utils/storyboard\";\nimport { eventCallbackFactory, listenerFactory } from \"../bindListeners.js\";\nimport { asyncCheckIf } from \"../compute/checkIf.js\";\nimport {\n asyncComputeRealValue,\n computeRealValue,\n} from \"../compute/computeRealValue.js\";\nimport { ResolveOptions, resolveData } from \"./resolveData.js\";\nimport { resolveDataStore } from \"./resolveDataStore.js\";\nimport type {\n AsyncProperties,\n RuntimeBrick,\n RuntimeContext,\n} from \"../interfaces.js\";\nimport { handleHttpError } from \"../../handleHttpError.js\";\n\nexport type DataStoreType = \"CTX\" | \"STATE\" | \"FORM_STATE\";\n\nexport interface DataStoreItem {\n value: unknown;\n eventTarget: EventTarget;\n loaded?: boolean;\n loading?: Promise<unknown>;\n load?: (options?: ResolveOptions) => Promise<unknown>;\n}\n\nexport class DataStore<T extends DataStoreType = \"CTX\"> {\n private readonly type: T;\n private readonly data = new Map<string, DataStoreItem>();\n private readonly changeEventType: string;\n private readonly pendingStack: Array<ReturnType<typeof resolveDataStore>> =\n [];\n public readonly hostBrick?: RuntimeBrick;\n\n constructor(type: T, hostBrick?: RuntimeBrick) {\n this.type = type;\n this.changeEventType =\n this.type === \"FORM_STATE\"\n ? \"formstate.change\"\n : this.type === \"STATE\"\n ? \"state.change\"\n : \"context.change\";\n this.hostBrick = hostBrick;\n }\n\n getValue(name: string): unknown {\n return this.data.get(name)?.value;\n }\n\n updateValue(\n name: string,\n value: unknown,\n method: \"assign\" | \"replace\" | \"refresh\" | \"load\",\n callback?: BrickEventHandlerCallback,\n callbackRuntimeContext?: RuntimeContext\n ): void {\n const item = this.data.get(name);\n if (!item) {\n throw new Error(`${this.type} '${name}' is not defined`);\n }\n\n if (method === \"refresh\" || method === \"load\") {\n if (!item.load) {\n throw new Error(\n `You can not ${method} \"${this.type}.${name}\" which has no resolve`\n );\n }\n\n let promise: Promise<unknown> | undefined;\n if (method === \"load\") {\n // Try to reuse previous request when calling `load`.\n if (item.loaded) {\n promise = Promise.resolve(item.value);\n } else if (item.loading) {\n promise = item.loading;\n }\n }\n\n if (!promise) {\n promise = item.loading = item.load({\n cache: method === \"load\" ? \"default\" : \"reload\",\n ...(value as ResolveOptions),\n });\n // Do not use the chained promise, since the callbacks need the original promise.\n promise.then(\n (val) => {\n item.loaded = true;\n item.value = val;\n item.eventTarget.dispatchEvent(\n new CustomEvent(this.changeEventType, {\n detail: item.value,\n })\n );\n },\n (err) => {\n // Let users override error handling.\n if (!callback?.error) {\n handleHttpError(err);\n }\n }\n );\n }\n\n if (callback) {\n const callbackFactory = eventCallbackFactory(\n callback,\n callbackRuntimeContext!\n );\n\n promise.then(\n (val) => {\n callbackFactory(\"success\")({ value: val });\n callbackFactory(\"finally\")();\n },\n (err) => {\n callbackFactory(\"error\")(err);\n callbackFactory(\"finally\")();\n }\n );\n }\n\n return;\n }\n\n if (method === \"replace\") {\n item.value = value;\n } else {\n if (isObject(item.value)) {\n Object.assign(item.value, value);\n } else {\n // eslint-disable-next-line no-console\n console.warn(\n `Non-object current value of \"${this.type}.${name}\" for \"context.assign\", try \"context.replace\" instead.`\n );\n item.value = value;\n }\n }\n\n item.eventTarget.dispatchEvent(\n new CustomEvent(this.changeEventType, {\n detail: item.value,\n })\n );\n }\n\n define(\n dataConfs: ContextConf[] | undefined,\n runtimeContext: RuntimeContext,\n asyncHostProperties?: AsyncProperties\n ): void {\n if (Array.isArray(dataConfs) && dataConfs.length > 0) {\n const pending = resolveDataStore(\n dataConfs,\n (dataConf: ContextConf) =>\n this.resolve(dataConf, runtimeContext, asyncHostProperties),\n this.type\n );\n this.pendingStack.push(pending);\n }\n }\n\n onChange(dataName: string, listener: EventListener): void {\n this.data\n .get(dataName)\n ?.eventTarget.addEventListener(this.changeEventType, listener);\n }\n\n async waitFor(dataNames: string[] | Set<string>): Promise<void> {\n for (const { pendingContexts } of this.pendingStack) {\n await Promise.all(\n [...dataNames].map((ctx) => {\n const p = pendingContexts.get(ctx);\n return p;\n })\n );\n }\n }\n\n async waitForAll(): Promise<void> {\n for (const { pendingResult } of this.pendingStack) {\n await pendingResult;\n }\n }\n\n private async resolve(\n dataConf: ContextConf,\n runtimeContext: RuntimeContext,\n asyncHostProperties?: AsyncProperties\n ): Promise<boolean> {\n if (!(await asyncCheckIf(dataConf, runtimeContext))) {\n return false;\n }\n let value: unknown;\n if (this.type === \"STATE\" && asyncHostProperties && dataConf.expose) {\n const hostProps = await asyncHostProperties;\n if (hasOwnProperty(hostProps, dataConf.name)) {\n value = hostProps[dataConf.name];\n }\n }\n let load: DataStoreItem[\"load\"];\n let isLazyResolve: boolean | undefined = false;\n if (value === undefined) {\n if (dataConf.resolve) {\n const resolveConf = {\n transform: \"value\",\n ...dataConf.resolve,\n };\n if (await asyncCheckIf(dataConf.resolve, runtimeContext)) {\n load = async (options) =>\n (\n (await resolveData(resolveConf, runtimeContext, options)) as {\n value: unknown;\n }\n ).value;\n isLazyResolve = dataConf.resolve.lazy;\n if (!isLazyResolve) {\n value = await load();\n }\n } else if (!hasOwnProperty(dataConf, \"value\")) {\n return false;\n }\n }\n if ((!load || isLazyResolve) && dataConf.value !== undefined) {\n // If the context has no resolve, just use its `value`.\n // Or if the resolve is ignored or lazy, use its `value` as a fallback.\n value = await asyncComputeRealValue(dataConf.value, runtimeContext);\n }\n }\n\n const newData: DataStoreItem = {\n value,\n // This is required for tracking context, even if no `onChange` is specified.\n eventTarget: new EventTarget(),\n load,\n loaded: !isLazyResolve,\n };\n\n if (dataConf.onChange) {\n newData.eventTarget.addEventListener(\n this.changeEventType,\n listenerFactory(dataConf.onChange, runtimeContext)\n );\n }\n\n if (dataConf.track && this.type !== \"FORM_STATE\") {\n const deps = strictCollectMemberUsage(\n load ? dataConf.resolve : dataConf.value,\n this.type\n );\n for (const dep of deps) {\n this.onChange(dep, () => {\n if (load) {\n this.updateValue(dataConf.name, { cache: \"default\" }, \"refresh\");\n } else {\n this.updateValue(\n dataConf.name,\n computeRealValue(dataConf.value, runtimeContext),\n \"replace\"\n );\n }\n });\n }\n }\n\n if (this.data.has(dataConf.name)) {\n throw new Error(\n `${this.type} '${dataConf.name}' has already been declared`\n );\n }\n this.data.set(dataConf.name, newData);\n\n return true;\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1,156 @@
1
+ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
2
+ import yaml from "js-yaml";
3
+ import { ContractApi_searchSingleContract } from "@next-api-sdk/api-gateway-sdk";
4
+ import { getContract } from "./CollectContracts.js";
5
+ var flowApiDefinitionPromiseMap = new Map();
6
+
7
+ // Legacy Custom API: `${namespace}@${name}`
8
+ // Flow API: `${namespace}@${name}:${version}`
9
+ export function isFlowApiProvider(provider) {
10
+ return provider.includes("@");
11
+ }
12
+ export function getArgsOfFlowApi(_x, _x2, _x3) {
13
+ return _getArgsOfFlowApi.apply(this, arguments);
14
+ }
15
+ function _getArgsOfFlowApi() {
16
+ _getArgsOfFlowApi = _asyncToGenerator(function* (provider, originalArgs, method) {
17
+ if (!isFlowApiProvider(provider)) {
18
+ return originalArgs;
19
+ }
20
+ if (!provider.includes(":")) {
21
+ throw new Error("You're using legacy Custom API \"".concat(provider, "\" which is not supported in v3, please use Flow API instead"));
22
+ }
23
+ var apiDefinition = yield fetchFlowApiDefinition(provider);
24
+ if (!apiDefinition) {
25
+ throw new Error("Flow API not found: \"".concat(provider, "\""));
26
+ }
27
+ var apiProfile = getApiProfileFromApiDefinition(provider, apiDefinition);
28
+ return getApiArgsFromApiProfile(apiProfile, originalArgs, method);
29
+ });
30
+ return _getArgsOfFlowApi.apply(this, arguments);
31
+ }
32
+ function getApiArgsFromApiProfile(_ref, originalArgs, method) {
33
+ var {
34
+ uri,
35
+ method: apiMethod,
36
+ ext_fields,
37
+ name,
38
+ namespace,
39
+ serviceName,
40
+ responseWrapper,
41
+ version,
42
+ isFileType,
43
+ request
44
+ } = _ref;
45
+ var isDownload = isFileType && method === "saveAs";
46
+ var fileName;
47
+ if (isDownload) {
48
+ fileName = originalArgs.shift();
49
+ }
50
+ var {
51
+ url,
52
+ args
53
+ } = getTransformedUriAndRestArgs(uri, originalArgs, name, namespace, serviceName, version);
54
+ return [...(isDownload ? [fileName] : []), {
55
+ url,
56
+ originalUri: uri,
57
+ method: apiMethod,
58
+ ext_fields,
59
+ responseWrapper,
60
+ request,
61
+ isFileType
62
+ }, ...args];
63
+ }
64
+ function getTransformedUriAndRestArgs(uri, originalArgs, name, namespace, serviceName, version) {
65
+ var prefix = version ? serviceName ? "api/gateway/".concat(serviceName) : "api/gateway/".concat(namespace, ".").concat(name, "@").concat(version) : "api/gateway/api_service.".concat(namespace, ".").concat(name);
66
+ var restArgs = originalArgs.slice();
67
+ var transformedUri = uri.replace(/:([^/]+)/g, () => restArgs.shift());
68
+ return {
69
+ url: prefix + transformedUri,
70
+ args: restArgs
71
+ };
72
+ }
73
+ function getApiProfileFromApiDefinition(provider, api) {
74
+ var _contract$endpoint, _contract$response;
75
+ var contract = typeof api.contract === "string" ? yaml.safeLoad(api.contract, {
76
+ schema: yaml.JSON_SCHEMA,
77
+ json: true
78
+ }) : api.contract;
79
+ var {
80
+ uri,
81
+ method = "GET",
82
+ ext_fields
83
+ } = (_contract$endpoint = contract === null || contract === void 0 ? void 0 : contract.endpoint) !== null && _contract$endpoint !== void 0 ? _contract$endpoint : {};
84
+ var responseWrapper = contract !== null && contract !== void 0 && contract.response ? contract.response.wrapper !== false : false;
85
+ if (!uri) {
86
+ throw new Error("Missing endpoint.uri in contract of provider \"".concat(provider, "\""));
87
+ }
88
+ return {
89
+ uri,
90
+ method: method.toLowerCase() === "list" ? "get" : method,
91
+ ext_fields,
92
+ name: api.name,
93
+ namespace: api.namespace,
94
+ serviceName: api.serviceName,
95
+ version: api.version,
96
+ isFileType: (contract === null || contract === void 0 ? void 0 : (_contract$response = contract.response) === null || _contract$response === void 0 ? void 0 : _contract$response.type) === "file",
97
+ responseWrapper,
98
+ request: contract === null || contract === void 0 ? void 0 : contract.request
99
+ };
100
+ }
101
+ function fetchFlowApiDefinition(provider) {
102
+ var promise = flowApiDefinitionPromiseMap.get(provider);
103
+ if (!promise) {
104
+ promise = _fetchFlowApiDefinition(provider);
105
+ flowApiDefinitionPromiseMap.set(provider, promise);
106
+ }
107
+ return promise;
108
+ }
109
+ function _fetchFlowApiDefinition(_x4) {
110
+ return _fetchFlowApiDefinition2.apply(this, arguments);
111
+ }
112
+ function _fetchFlowApiDefinition2() {
113
+ _fetchFlowApiDefinition2 = _asyncToGenerator(function* (provider) {
114
+ var [namespaceName, nameWithVersion] = provider.split("@");
115
+ var [name, version] = nameWithVersion.split(":");
116
+ var contract = getContract("".concat(namespaceName, ".").concat(name));
117
+ if (contract) {
118
+ return {
119
+ name: contract.name,
120
+ namespace: contract.namespaceId,
121
+ serviceName: contract.serviceName,
122
+ version: contract.version,
123
+ contract: {
124
+ endpoint: contract.endpoint,
125
+ response: contract.response,
126
+ request: contract.request
127
+ }
128
+ };
129
+ } else {
130
+ var {
131
+ contractData
132
+ } = yield ContractApi_searchSingleContract({
133
+ contractName: "".concat(namespaceName, ".").concat(name),
134
+ version
135
+ });
136
+
137
+ // return undefined if don't found contract
138
+ if (contractData) {
139
+ var _contractData$namespa, _contractData$namespa2;
140
+ return {
141
+ name: contractData.name,
142
+ namespace: (_contractData$namespa = contractData.namespace) === null || _contractData$namespa === void 0 ? void 0 : (_contractData$namespa2 = _contractData$namespa[0]) === null || _contractData$namespa2 === void 0 ? void 0 : _contractData$namespa2.name,
143
+ serviceName: contractData.serviceName,
144
+ version: contractData.version,
145
+ contract: {
146
+ endpoint: contractData.endpoint,
147
+ response: contractData.response,
148
+ request: contractData.request
149
+ }
150
+ };
151
+ }
152
+ }
153
+ });
154
+ return _fetchFlowApiDefinition2.apply(this, arguments);
155
+ }
156
+ //# sourceMappingURL=FlowApi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FlowApi.js","names":["yaml","ContractApi_searchSingleContract","getContract","flowApiDefinitionPromiseMap","Map","isFlowApiProvider","provider","includes","getArgsOfFlowApi","_x","_x2","_x3","_getArgsOfFlowApi","apply","arguments","_asyncToGenerator","originalArgs","method","Error","concat","apiDefinition","fetchFlowApiDefinition","apiProfile","getApiProfileFromApiDefinition","getApiArgsFromApiProfile","_ref","uri","apiMethod","ext_fields","name","namespace","serviceName","responseWrapper","version","isFileType","request","isDownload","fileName","shift","url","args","getTransformedUriAndRestArgs","originalUri","prefix","restArgs","slice","transformedUri","replace","api","_contract$endpoint","_contract$response","contract","safeLoad","schema","JSON_SCHEMA","json","endpoint","response","wrapper","toLowerCase","type","promise","get","_fetchFlowApiDefinition","set","_x4","_fetchFlowApiDefinition2","namespaceName","nameWithVersion","split","namespaceId","contractData","contractName","_contractData$namespa","_contractData$namespa2"],"sources":["../../../../src/internal/data/FlowApi.ts"],"sourcesContent":["import yaml from \"js-yaml\";\nimport { ContractApi_searchSingleContract } from \"@next-api-sdk/api-gateway-sdk\";\nimport { ContractRequest, ContractResponse, ExtField } from \"@next-core/types\";\nimport { getContract } from \"./CollectContracts.js\";\n\nconst flowApiDefinitionPromiseMap = new Map<\n string,\n Promise<CustomApiDefinition | undefined>\n>();\n\n// Legacy Custom API: `${namespace}@${name}`\n// Flow API: `${namespace}@${name}:${version}`\nexport function isFlowApiProvider(provider: string): boolean {\n return provider.includes(\"@\");\n}\n\nexport async function getArgsOfFlowApi(\n provider: string,\n originalArgs: unknown[],\n method?: string\n): Promise<unknown[]> {\n if (!isFlowApiProvider(provider)) {\n return originalArgs;\n }\n\n if (!provider.includes(\":\")) {\n throw new Error(\n `You're using legacy Custom API \"${provider}\" which is not supported in v3, please use Flow API instead`\n );\n }\n\n const apiDefinition = await fetchFlowApiDefinition(provider);\n\n if (!apiDefinition) {\n throw new Error(`Flow API not found: \"${provider}\"`);\n }\n\n const apiProfile = getApiProfileFromApiDefinition(provider, apiDefinition);\n\n return getApiArgsFromApiProfile(apiProfile, originalArgs, method);\n}\n\nfunction getApiArgsFromApiProfile(\n {\n uri,\n method: apiMethod,\n ext_fields,\n name,\n namespace,\n serviceName,\n responseWrapper,\n version,\n isFileType,\n request,\n }: CustomApiProfile,\n originalArgs: unknown[],\n method?: string\n): unknown[] {\n const isDownload = isFileType && method === \"saveAs\";\n let fileName: string | undefined;\n if (isDownload) {\n fileName = originalArgs.shift() as string;\n }\n\n const { url, args } = getTransformedUriAndRestArgs(\n uri,\n originalArgs,\n name,\n namespace,\n serviceName,\n version\n );\n\n return [\n ...(isDownload ? [fileName] : []),\n {\n url,\n originalUri: uri,\n method: apiMethod,\n ext_fields,\n responseWrapper,\n request,\n isFileType,\n },\n ...args,\n ];\n}\n\nfunction getTransformedUriAndRestArgs(\n uri: string,\n originalArgs: unknown[],\n name: string,\n namespace: string,\n serviceName: string | undefined,\n version?: string\n): { url: string; args: unknown[] } {\n const prefix = version\n ? serviceName\n ? `api/gateway/${serviceName}`\n : `api/gateway/${namespace}.${name}@${version}`\n : `api/gateway/api_service.${namespace}.${name}`;\n const restArgs = originalArgs.slice();\n const transformedUri = uri.replace(\n /:([^/]+)/g,\n () => restArgs.shift() as string\n );\n return {\n url: prefix + transformedUri,\n args: restArgs,\n };\n}\n\nfunction getApiProfileFromApiDefinition(\n provider: string,\n api: CustomApiDefinition\n): CustomApiProfile {\n const contract: CustomApiDefinition[\"contract\"] =\n typeof api.contract === \"string\"\n ? (yaml.safeLoad(api.contract, {\n schema: yaml.JSON_SCHEMA,\n json: true,\n }) as CustomApiDefinition[\"contract\"])\n : api.contract;\n const { uri, method = \"GET\", ext_fields } = contract?.endpoint ?? {};\n const responseWrapper = contract?.response\n ? contract.response.wrapper !== false\n : false;\n if (!uri) {\n throw new Error(\n `Missing endpoint.uri in contract of provider \"${provider}\"`\n );\n }\n return {\n uri,\n method: method.toLowerCase() === \"list\" ? \"get\" : method,\n ext_fields,\n name: api.name,\n namespace: api.namespace,\n serviceName: api.serviceName,\n version: api.version,\n isFileType: contract?.response?.type === \"file\",\n responseWrapper,\n request: contract?.request,\n };\n}\n\nfunction fetchFlowApiDefinition(\n provider: string\n): Promise<CustomApiDefinition | undefined> {\n let promise = flowApiDefinitionPromiseMap.get(provider);\n if (!promise) {\n promise = _fetchFlowApiDefinition(provider);\n flowApiDefinitionPromiseMap.set(provider, promise);\n }\n return promise;\n}\n\nasync function _fetchFlowApiDefinition(\n provider: string\n): Promise<CustomApiDefinition | undefined> {\n const [namespaceName, nameWithVersion] = provider.split(\"@\");\n const [name, version] = nameWithVersion.split(\":\");\n\n const contract = getContract(`${namespaceName}.${name}`);\n if (contract) {\n return {\n name: contract.name,\n namespace: contract.namespaceId,\n serviceName: contract.serviceName,\n version: contract.version,\n contract: {\n endpoint: contract.endpoint,\n response: contract.response,\n request: contract.request,\n },\n };\n } else {\n const { contractData } = await ContractApi_searchSingleContract({\n contractName: `${namespaceName}.${name}`,\n version,\n });\n\n // return undefined if don't found contract\n if (contractData) {\n return {\n name: contractData.name,\n namespace: contractData.namespace?.[0]?.name,\n serviceName: contractData.serviceName,\n version: contractData.version,\n contract: {\n endpoint: contractData.endpoint,\n response: contractData.response,\n request: contractData.request,\n },\n };\n }\n }\n}\n\nexport interface CustomApiDefinition {\n name: string;\n namespace: string;\n version?: string;\n serviceName?: string;\n contract?: {\n endpoint: {\n ext_fields?: ExtField[];\n uri: string;\n method:\n | \"POST\"\n | \"post\"\n | \"PUT\"\n | \"put\"\n | \"GET\"\n | \"get\"\n | \"DELETE\"\n | \"delete\"\n | \"LIST\"\n | \"list\"\n | \"PATCH\"\n | \"patch\"\n | \"HEAD\"\n | \"head\";\n };\n request?: ContractRequest;\n response?: ContractResponse;\n };\n}\n\nexport interface CustomApiProfile {\n uri: string;\n method: string;\n name: string;\n namespace: string;\n serviceName?: string;\n responseWrapper: boolean;\n version?: string;\n isFileType?: boolean;\n ext_fields?: ExtField[];\n request?: ContractRequest;\n}\n"],"mappings":";AAAA,OAAOA,IAAI,MAAM,SAAS;AAC1B,SAASC,gCAAgC,QAAQ,+BAA+B;AAEhF,SAASC,WAAW,QAAQ,uBAAuB;AAEnD,IAAMC,2BAA2B,GAAG,IAAIC,GAAG,EAGxC;;AAEH;AACA;AACA,OAAO,SAASC,iBAAiBA,CAACC,QAAgB,EAAW;EAC3D,OAAOA,QAAQ,CAACC,QAAQ,CAAC,GAAG,CAAC;AAC/B;AAEA,gBAAsBC,gBAAgBA,CAAAC,EAAA,EAAAC,GAAA,EAAAC,GAAA;EAAA,OAAAC,iBAAA,CAAAC,KAAA,OAAAC,SAAA;AAAA;AAwBrC,SAAAF,kBAAA;EAAAA,iBAAA,GAAAG,iBAAA,CAxBM,WACLT,QAAgB,EAChBU,YAAuB,EACvBC,MAAe,EACK;IACpB,IAAI,CAACZ,iBAAiB,CAACC,QAAQ,CAAC,EAAE;MAChC,OAAOU,YAAY;IACrB;IAEA,IAAI,CAACV,QAAQ,CAACC,QAAQ,CAAC,GAAG,CAAC,EAAE;MAC3B,MAAM,IAAIW,KAAK,qCAAAC,MAAA,CACsBb,QAAQ,kEAC5C;IACH;IAEA,IAAMc,aAAa,SAASC,sBAAsB,CAACf,QAAQ,CAAC;IAE5D,IAAI,CAACc,aAAa,EAAE;MAClB,MAAM,IAAIF,KAAK,0BAAAC,MAAA,CAAyBb,QAAQ,QAAI;IACtD;IAEA,IAAMgB,UAAU,GAAGC,8BAA8B,CAACjB,QAAQ,EAAEc,aAAa,CAAC;IAE1E,OAAOI,wBAAwB,CAACF,UAAU,EAAEN,YAAY,EAAEC,MAAM,CAAC;EACnE,CAAC;EAAA,OAAAL,iBAAA,CAAAC,KAAA,OAAAC,SAAA;AAAA;AAED,SAASU,wBAAwBA,CAAAC,IAAA,EAa/BT,YAAuB,EACvBC,MAAe,EACJ;EAAA,IAdX;IACES,GAAG;IACHT,MAAM,EAAEU,SAAS;IACjBC,UAAU;IACVC,IAAI;IACJC,SAAS;IACTC,WAAW;IACXC,eAAe;IACfC,OAAO;IACPC,UAAU;IACVC;EACgB,CAAC,GAAAV,IAAA;EAInB,IAAMW,UAAU,GAAGF,UAAU,IAAIjB,MAAM,KAAK,QAAQ;EACpD,IAAIoB,QAA4B;EAChC,IAAID,UAAU,EAAE;IACdC,QAAQ,GAAGrB,YAAY,CAACsB,KAAK,EAAY;EAC3C;EAEA,IAAM;IAAEC,GAAG;IAAEC;EAAK,CAAC,GAAGC,4BAA4B,CAChDf,GAAG,EACHV,YAAY,EACZa,IAAI,EACJC,SAAS,EACTC,WAAW,EACXE,OAAO,CACR;EAED,OAAO,CACL,IAAIG,UAAU,GAAG,CAACC,QAAQ,CAAC,GAAG,EAAE,CAAC,EACjC;IACEE,GAAG;IACHG,WAAW,EAAEhB,GAAG;IAChBT,MAAM,EAAEU,SAAS;IACjBC,UAAU;IACVI,eAAe;IACfG,OAAO;IACPD;EACF,CAAC,EACD,GAAGM,IAAI,CACR;AACH;AAEA,SAASC,4BAA4BA,CACnCf,GAAW,EACXV,YAAuB,EACvBa,IAAY,EACZC,SAAiB,EACjBC,WAA+B,EAC/BE,OAAgB,EACkB;EAClC,IAAMU,MAAM,GAAGV,OAAO,GAClBF,WAAW,kBAAAZ,MAAA,CACMY,WAAW,mBAAAZ,MAAA,CACXW,SAAS,OAAAX,MAAA,CAAIU,IAAI,OAAAV,MAAA,CAAIc,OAAO,CAAE,8BAAAd,MAAA,CACpBW,SAAS,OAAAX,MAAA,CAAIU,IAAI,CAAE;EAClD,IAAMe,QAAQ,GAAG5B,YAAY,CAAC6B,KAAK,EAAE;EACrC,IAAMC,cAAc,GAAGpB,GAAG,CAACqB,OAAO,CAChC,WAAW,EACX,MAAMH,QAAQ,CAACN,KAAK,EAAY,CACjC;EACD,OAAO;IACLC,GAAG,EAAEI,MAAM,GAAGG,cAAc;IAC5BN,IAAI,EAAEI;EACR,CAAC;AACH;AAEA,SAASrB,8BAA8BA,CACrCjB,QAAgB,EAChB0C,GAAwB,EACN;EAAA,IAAAC,kBAAA,EAAAC,kBAAA;EAClB,IAAMC,QAAyC,GAC7C,OAAOH,GAAG,CAACG,QAAQ,KAAK,QAAQ,GAC3BnD,IAAI,CAACoD,QAAQ,CAACJ,GAAG,CAACG,QAAQ,EAAE;IAC3BE,MAAM,EAAErD,IAAI,CAACsD,WAAW;IACxBC,IAAI,EAAE;EACR,CAAC,CAAC,GACFP,GAAG,CAACG,QAAQ;EAClB,IAAM;IAAEzB,GAAG;IAAET,MAAM,GAAG,KAAK;IAAEW;EAAW,CAAC,IAAAqB,kBAAA,GAAGE,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAEK,QAAQ,cAAAP,kBAAA,cAAAA,kBAAA,GAAI,CAAC,CAAC;EACpE,IAAMjB,eAAe,GAAGmB,QAAQ,aAARA,QAAQ,eAARA,QAAQ,CAAEM,QAAQ,GACtCN,QAAQ,CAACM,QAAQ,CAACC,OAAO,KAAK,KAAK,GACnC,KAAK;EACT,IAAI,CAAChC,GAAG,EAAE;IACR,MAAM,IAAIR,KAAK,mDAAAC,MAAA,CACoCb,QAAQ,QAC1D;EACH;EACA,OAAO;IACLoB,GAAG;IACHT,MAAM,EAAEA,MAAM,CAAC0C,WAAW,EAAE,KAAK,MAAM,GAAG,KAAK,GAAG1C,MAAM;IACxDW,UAAU;IACVC,IAAI,EAAEmB,GAAG,CAACnB,IAAI;IACdC,SAAS,EAAEkB,GAAG,CAAClB,SAAS;IACxBC,WAAW,EAAEiB,GAAG,CAACjB,WAAW;IAC5BE,OAAO,EAAEe,GAAG,CAACf,OAAO;IACpBC,UAAU,EAAE,CAAAiB,QAAQ,aAARA,QAAQ,wBAAAD,kBAAA,GAARC,QAAQ,CAAEM,QAAQ,cAAAP,kBAAA,uBAAlBA,kBAAA,CAAoBU,IAAI,MAAK,MAAM;IAC/C5B,eAAe;IACfG,OAAO,EAAEgB,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAEhB;EACrB,CAAC;AACH;AAEA,SAASd,sBAAsBA,CAC7Bf,QAAgB,EAC0B;EAC1C,IAAIuD,OAAO,GAAG1D,2BAA2B,CAAC2D,GAAG,CAACxD,QAAQ,CAAC;EACvD,IAAI,CAACuD,OAAO,EAAE;IACZA,OAAO,GAAGE,uBAAuB,CAACzD,QAAQ,CAAC;IAC3CH,2BAA2B,CAAC6D,GAAG,CAAC1D,QAAQ,EAAEuD,OAAO,CAAC;EACpD;EACA,OAAOA,OAAO;AAChB;AAAC,SAEcE,uBAAuBA,CAAAE,GAAA;EAAA,OAAAC,wBAAA,CAAArD,KAAA,OAAAC,SAAA;AAAA;AAAA,SAAAoD,yBAAA;EAAAA,wBAAA,GAAAnD,iBAAA,CAAtC,WACET,QAAgB,EAC0B;IAC1C,IAAM,CAAC6D,aAAa,EAAEC,eAAe,CAAC,GAAG9D,QAAQ,CAAC+D,KAAK,CAAC,GAAG,CAAC;IAC5D,IAAM,CAACxC,IAAI,EAAEI,OAAO,CAAC,GAAGmC,eAAe,CAACC,KAAK,CAAC,GAAG,CAAC;IAElD,IAAMlB,QAAQ,GAAGjD,WAAW,IAAAiB,MAAA,CAAIgD,aAAa,OAAAhD,MAAA,CAAIU,IAAI,EAAG;IACxD,IAAIsB,QAAQ,EAAE;MACZ,OAAO;QACLtB,IAAI,EAAEsB,QAAQ,CAACtB,IAAI;QACnBC,SAAS,EAAEqB,QAAQ,CAACmB,WAAW;QAC/BvC,WAAW,EAAEoB,QAAQ,CAACpB,WAAW;QACjCE,OAAO,EAAEkB,QAAQ,CAAClB,OAAO;QACzBkB,QAAQ,EAAE;UACRK,QAAQ,EAAEL,QAAQ,CAACK,QAAQ;UAC3BC,QAAQ,EAAEN,QAAQ,CAACM,QAAQ;UAC3BtB,OAAO,EAAEgB,QAAQ,CAAChB;QACpB;MACF,CAAC;IACH,CAAC,MAAM;MACL,IAAM;QAAEoC;MAAa,CAAC,SAAStE,gCAAgC,CAAC;QAC9DuE,YAAY,KAAArD,MAAA,CAAKgD,aAAa,OAAAhD,MAAA,CAAIU,IAAI,CAAE;QACxCI;MACF,CAAC,CAAC;;MAEF;MACA,IAAIsC,YAAY,EAAE;QAAA,IAAAE,qBAAA,EAAAC,sBAAA;QAChB,OAAO;UACL7C,IAAI,EAAE0C,YAAY,CAAC1C,IAAI;UACvBC,SAAS,GAAA2C,qBAAA,GAAEF,YAAY,CAACzC,SAAS,cAAA2C,qBAAA,wBAAAC,sBAAA,GAAtBD,qBAAA,CAAyB,CAAC,CAAC,cAAAC,sBAAA,uBAA3BA,sBAAA,CAA6B7C,IAAI;UAC5CE,WAAW,EAAEwC,YAAY,CAACxC,WAAW;UACrCE,OAAO,EAAEsC,YAAY,CAACtC,OAAO;UAC7BkB,QAAQ,EAAE;YACRK,QAAQ,EAAEe,YAAY,CAACf,QAAQ;YAC/BC,QAAQ,EAAEc,YAAY,CAACd,QAAQ;YAC/BtB,OAAO,EAAEoC,YAAY,CAACpC;UACxB;QACF,CAAC;MACH;IACF;EACF,CAAC;EAAA,OAAA+B,wBAAA,CAAArD,KAAA,OAAAC,SAAA;AAAA"}