jopijs 0.0.1

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 (455) hide show
  1. package/README.md +134 -0
  2. package/bin/jopib.js +4 -0
  3. package/bin/jopin.js +4 -0
  4. package/dist/@bundler/_logs.d.ts +2 -0
  5. package/dist/@bundler/_logs.js +4 -0
  6. package/dist/@bundler/_logs.js.map +1 -0
  7. package/dist/@bundler/core.d.ts +1 -0
  8. package/dist/@bundler/core.js +34 -0
  9. package/dist/@bundler/core.js.map +1 -0
  10. package/dist/@bundler/esbuild.d.ts +6 -0
  11. package/dist/@bundler/esbuild.js +111 -0
  12. package/dist/@bundler/esbuild.js.map +1 -0
  13. package/dist/@bundler/index.d.ts +2 -0
  14. package/dist/@bundler/index.js +3 -0
  15. package/dist/@bundler/index.js.map +1 -0
  16. package/dist/@bundler/plugins.d.ts +13 -0
  17. package/dist/@bundler/plugins.js +145 -0
  18. package/dist/@bundler/plugins.js.map +1 -0
  19. package/dist/@bundler/tailwind.d.ts +3 -0
  20. package/dist/@bundler/tailwind.js +119 -0
  21. package/dist/@bundler/tailwind.js.map +1 -0
  22. package/dist/@core/PageComponent.d.ts +6 -0
  23. package/dist/@core/PageComponent.js +10 -0
  24. package/dist/@core/PageComponent.js.map +1 -0
  25. package/dist/@core/_logs.d.ts +7 -0
  26. package/dist/@core/_logs.js +9 -0
  27. package/dist/@core/_logs.js.map +1 -0
  28. package/dist/@core/automaticStartStop.d.ts +25 -0
  29. package/dist/@core/automaticStartStop.js +106 -0
  30. package/dist/@core/automaticStartStop.js.map +1 -0
  31. package/dist/@core/browserCacheControl.d.ts +21 -0
  32. package/dist/@core/browserCacheControl.js +17 -0
  33. package/dist/@core/browserCacheControl.js.map +1 -0
  34. package/dist/@core/bundler/bundler.d.ts +22 -0
  35. package/dist/@core/bundler/bundler.js +90 -0
  36. package/dist/@core/bundler/bundler.js.map +1 -0
  37. package/dist/@core/bundler/common.d.ts +2 -0
  38. package/dist/@core/bundler/common.js +17 -0
  39. package/dist/@core/bundler/common.js.map +1 -0
  40. package/dist/@core/bundler/config.d.ts +20 -0
  41. package/dist/@core/bundler/config.js +11 -0
  42. package/dist/@core/bundler/config.js.map +1 -0
  43. package/dist/@core/bundler/extraContent.d.ts +6 -0
  44. package/dist/@core/bundler/extraContent.js +27 -0
  45. package/dist/@core/bundler/extraContent.js.map +1 -0
  46. package/dist/@core/bundler/pagesGenerator.d.ts +1 -0
  47. package/dist/@core/bundler/pagesGenerator.js +173 -0
  48. package/dist/@core/bundler/pagesGenerator.js.map +1 -0
  49. package/dist/@core/bundler/server.d.ts +8 -0
  50. package/dist/@core/bundler/server.js +35 -0
  51. package/dist/@core/bundler/server.js.map +1 -0
  52. package/dist/@core/caches/InMemoryCache.d.ts +35 -0
  53. package/dist/@core/caches/InMemoryCache.js +353 -0
  54. package/dist/@core/caches/InMemoryCache.js.map +1 -0
  55. package/dist/@core/caches/SimpleFileCache.d.ts +18 -0
  56. package/dist/@core/caches/SimpleFileCache.js +171 -0
  57. package/dist/@core/caches/SimpleFileCache.js.map +1 -0
  58. package/dist/@core/caches/cache.d.ts +36 -0
  59. package/dist/@core/caches/cache.js +33 -0
  60. package/dist/@core/caches/cache.js.map +1 -0
  61. package/dist/@core/caches/webSiteMirrorCache.d.ts +16 -0
  62. package/dist/@core/caches/webSiteMirrorCache.js +81 -0
  63. package/dist/@core/caches/webSiteMirrorCache.js.map +1 -0
  64. package/dist/@core/gzip.d.ts +4 -0
  65. package/dist/@core/gzip.js +31 -0
  66. package/dist/@core/gzip.js.map +1 -0
  67. package/dist/@core/index.d.ts +18 -0
  68. package/dist/@core/index.js +19 -0
  69. package/dist/@core/index.js.map +1 -0
  70. package/dist/@core/internalTools.d.ts +14 -0
  71. package/dist/@core/internalTools.js +79 -0
  72. package/dist/@core/internalTools.js.map +1 -0
  73. package/dist/@core/jQuery.d.ts +5 -0
  74. package/dist/@core/jQuery.js +18 -0
  75. package/dist/@core/jQuery.js.map +1 -0
  76. package/dist/@core/jopiEasy.d.ts +287 -0
  77. package/dist/@core/jopiEasy.js +983 -0
  78. package/dist/@core/jopiEasy.js.map +1 -0
  79. package/dist/@core/jopiRequest.d.ts +269 -0
  80. package/dist/@core/jopiRequest.js +1060 -0
  81. package/dist/@core/jopiRequest.js.map +1 -0
  82. package/dist/@core/jopiServer.d.ts +77 -0
  83. package/dist/@core/jopiServer.js +100 -0
  84. package/dist/@core/jopiServer.js.map +1 -0
  85. package/dist/@core/jopiWebSite.d.ts +319 -0
  86. package/dist/@core/jopiWebSite.js +653 -0
  87. package/dist/@core/jopiWebSite.js.map +1 -0
  88. package/dist/@core/letsEncrypt.d.ts +25 -0
  89. package/dist/@core/letsEncrypt.js +189 -0
  90. package/dist/@core/letsEncrypt.js.map +1 -0
  91. package/dist/@core/linker.d.ts +4 -0
  92. package/dist/@core/linker.js +37 -0
  93. package/dist/@core/linker.js.map +1 -0
  94. package/dist/@core/loadBalancing.d.ts +18 -0
  95. package/dist/@core/loadBalancing.js +126 -0
  96. package/dist/@core/loadBalancing.js.map +1 -0
  97. package/dist/@core/middlewares/CorsMiddleware.d.ts +5 -0
  98. package/dist/@core/middlewares/CorsMiddleware.js +15 -0
  99. package/dist/@core/middlewares/CorsMiddleware.js.map +1 -0
  100. package/dist/@core/middlewares/DdosProtection.d.ts +42 -0
  101. package/dist/@core/middlewares/DdosProtection.js +62 -0
  102. package/dist/@core/middlewares/DdosProtection.js.map +1 -0
  103. package/dist/@core/middlewares/index.d.ts +10 -0
  104. package/dist/@core/middlewares/index.js +14 -0
  105. package/dist/@core/middlewares/index.js.map +1 -0
  106. package/dist/@core/publicTools.d.ts +8 -0
  107. package/dist/@core/publicTools.js +11 -0
  108. package/dist/@core/publicTools.js.map +1 -0
  109. package/dist/@core/routeConfig.d.ts +48 -0
  110. package/dist/@core/routeConfig.js +102 -0
  111. package/dist/@core/routeConfig.js.map +1 -0
  112. package/dist/@core/searchParamFilter.d.ts +70 -0
  113. package/dist/@core/searchParamFilter.js +212 -0
  114. package/dist/@core/searchParamFilter.js.map +1 -0
  115. package/dist/@core/serverFetch.d.ts +122 -0
  116. package/dist/@core/serverFetch.js +312 -0
  117. package/dist/@core/serverFetch.js.map +1 -0
  118. package/dist/@core/serverImpl/server_bunjs.d.ts +29 -0
  119. package/dist/@core/serverImpl/server_bunjs.js +180 -0
  120. package/dist/@core/serverImpl/server_bunjs.js.map +1 -0
  121. package/dist/@core/serverImpl/server_nodejs.d.ts +22 -0
  122. package/dist/@core/serverImpl/server_nodejs.js +235 -0
  123. package/dist/@core/serverImpl/server_nodejs.js.map +1 -0
  124. package/dist/@core/serverInstanceBuilder.d.ts +17 -0
  125. package/dist/@core/serverInstanceBuilder.js +14 -0
  126. package/dist/@core/serverInstanceBuilder.js.map +1 -0
  127. package/dist/@core/userStores.d.ts +13 -0
  128. package/dist/@core/userStores.js +20 -0
  129. package/dist/@core/userStores.js.map +1 -0
  130. package/dist/@crawler/common.d.ts +203 -0
  131. package/dist/@crawler/common.js +68 -0
  132. package/dist/@crawler/common.js.map +1 -0
  133. package/dist/@crawler/core.d.ts +87 -0
  134. package/dist/@crawler/core.js +586 -0
  135. package/dist/@crawler/core.js.map +1 -0
  136. package/dist/@crawler/directFileCache.d.ts +10 -0
  137. package/dist/@crawler/directFileCache.js +60 -0
  138. package/dist/@crawler/directFileCache.js.map +1 -0
  139. package/dist/@crawler/index.d.ts +4 -0
  140. package/dist/@crawler/index.js +5 -0
  141. package/dist/@crawler/index.js.map +1 -0
  142. package/dist/@crawler/urlMapping.d.ts +21 -0
  143. package/dist/@crawler/urlMapping.js +52 -0
  144. package/dist/@crawler/urlMapping.js.map +1 -0
  145. package/dist/@crawler/utils.d.ts +6 -0
  146. package/dist/@crawler/utils.js +13 -0
  147. package/dist/@crawler/utils.js.map +1 -0
  148. package/dist/@generated/index.d.ts +29 -0
  149. package/dist/@generated/index.js +93 -0
  150. package/dist/@generated/index.js.map +1 -0
  151. package/dist/@linker/arobaseTypes.d.ts +50 -0
  152. package/dist/@linker/arobaseTypes.js +235 -0
  153. package/dist/@linker/arobaseTypes.js.map +1 -0
  154. package/dist/@linker/changeProof.d.ts +5 -0
  155. package/dist/@linker/changeProof.js +50 -0
  156. package/dist/@linker/changeProof.js.map +1 -0
  157. package/dist/@linker/config.d.ts +2 -0
  158. package/dist/@linker/config.js +40 -0
  159. package/dist/@linker/config.js.map +1 -0
  160. package/dist/@linker/engine.d.ts +156 -0
  161. package/dist/@linker/engine.js +665 -0
  162. package/dist/@linker/engine.js.map +1 -0
  163. package/dist/@linker/index.d.ts +3 -0
  164. package/dist/@linker/index.js +4 -0
  165. package/dist/@linker/index.js.map +1 -0
  166. package/dist/@linker/install.d.ts +4 -0
  167. package/dist/@linker/install.js +42 -0
  168. package/dist/@linker/install.js.map +1 -0
  169. package/dist/@linker/modInstaller.d.ts +10 -0
  170. package/dist/@linker/modInstaller.js +38 -0
  171. package/dist/@linker/modInstaller.js.map +1 -0
  172. package/dist/@linker/typeEvents.d.ts +9 -0
  173. package/dist/@linker/typeEvents.js +48 -0
  174. package/dist/@linker/typeEvents.js.map +1 -0
  175. package/dist/@linker/typeRoutes.d.ts +23 -0
  176. package/dist/@linker/typeRoutes.js +197 -0
  177. package/dist/@linker/typeRoutes.js.map +1 -0
  178. package/dist/@linker/typeUiComposite.d.ts +6 -0
  179. package/dist/@linker/typeUiComposite.js +16 -0
  180. package/dist/@linker/typeUiComposite.js.map +1 -0
  181. package/dist/@loader/index.d.ts +1 -0
  182. package/dist/@loader/index.js +17 -0
  183. package/dist/@loader/index.js.map +1 -0
  184. package/dist/@loader/nodeJsLoader.d.ts +2 -0
  185. package/dist/@loader/nodeJsLoader.js +19 -0
  186. package/dist/@loader/nodeJsLoader.js.map +1 -0
  187. package/dist/@loader-client/index.d.ts +33 -0
  188. package/dist/@loader-client/index.js +98 -0
  189. package/dist/@loader-client/index.js.map +1 -0
  190. package/dist/@loader-tools/bunJsLoader.d.ts +1 -0
  191. package/dist/@loader-tools/bunJsLoader.js +28 -0
  192. package/dist/@loader-tools/bunJsLoader.js.map +1 -0
  193. package/dist/@loader-tools/config.d.ts +49 -0
  194. package/dist/@loader-tools/config.js +79 -0
  195. package/dist/@loader-tools/config.js.map +1 -0
  196. package/dist/@loader-tools/cssModuleCompiler.d.ts +5 -0
  197. package/dist/@loader-tools/cssModuleCompiler.js +65 -0
  198. package/dist/@loader-tools/cssModuleCompiler.js.map +1 -0
  199. package/dist/@loader-tools/esBuildPlugin.d.ts +5 -0
  200. package/dist/@loader-tools/esBuildPlugin.js +113 -0
  201. package/dist/@loader-tools/esBuildPlugin.js.map +1 -0
  202. package/dist/@loader-tools/index.d.ts +9 -0
  203. package/dist/@loader-tools/index.js +10 -0
  204. package/dist/@loader-tools/index.js.map +1 -0
  205. package/dist/@loader-tools/jopin.d.ts +10 -0
  206. package/dist/@loader-tools/jopin.js +331 -0
  207. package/dist/@loader-tools/jopin.js.map +1 -0
  208. package/dist/@loader-tools/nodeJsLoader.d.ts +13 -0
  209. package/dist/@loader-tools/nodeJsLoader.js +101 -0
  210. package/dist/@loader-tools/nodeJsLoader.js.map +1 -0
  211. package/dist/@loader-tools/nodeJsResolver.d.ts +2 -0
  212. package/dist/@loader-tools/nodeJsResolver.js +117 -0
  213. package/dist/@loader-tools/nodeJsResolver.js.map +1 -0
  214. package/dist/@loader-tools/rules.d.ts +3 -0
  215. package/dist/@loader-tools/rules.js +33 -0
  216. package/dist/@loader-tools/rules.js.map +1 -0
  217. package/dist/@loader-tools/sourceChangesWatcher.d.ts +39 -0
  218. package/dist/@loader-tools/sourceChangesWatcher.js +182 -0
  219. package/dist/@loader-tools/sourceChangesWatcher.js.map +1 -0
  220. package/dist/@loader-tools/tools.d.ts +21 -0
  221. package/dist/@loader-tools/tools.js +113 -0
  222. package/dist/@loader-tools/tools.js.map +1 -0
  223. package/dist/@loader-tools/transform.d.ts +5 -0
  224. package/dist/@loader-tools/transform.js +114 -0
  225. package/dist/@loader-tools/transform.js.map +1 -0
  226. package/dist/@loader-tools/virtualUrl.d.ts +9 -0
  227. package/dist/@loader-tools/virtualUrl.js +40 -0
  228. package/dist/@loader-tools/virtualUrl.js.map +1 -0
  229. package/dist/@tool-jopinb/index.d.ts +1 -0
  230. package/dist/@tool-jopinb/index.js +9 -0
  231. package/dist/@tool-jopinb/index.js.map +1 -0
  232. package/dist/@ui/components.d.ts +27 -0
  233. package/dist/@ui/components.js +42 -0
  234. package/dist/@ui/components.js.map +1 -0
  235. package/dist/@ui/cssModules.d.ts +11 -0
  236. package/dist/@ui/cssModules.js +17 -0
  237. package/dist/@ui/cssModules.js.map +1 -0
  238. package/dist/@ui/hooks.d.ts +31 -0
  239. package/dist/@ui/hooks.js +71 -0
  240. package/dist/@ui/hooks.js.map +1 -0
  241. package/dist/@ui/index.d.ts +9 -0
  242. package/dist/@ui/index.js +11 -0
  243. package/dist/@ui/index.js.map +1 -0
  244. package/dist/@ui/internal.d.ts +4 -0
  245. package/dist/@ui/internal.js +10 -0
  246. package/dist/@ui/internal.js.map +1 -0
  247. package/dist/@ui/modules.d.ts +41 -0
  248. package/dist/@ui/modules.js +74 -0
  249. package/dist/@ui/modules.js.map +1 -0
  250. package/dist/@ui/objectRegistry.d.ts +12 -0
  251. package/dist/@ui/objectRegistry.js +35 -0
  252. package/dist/@ui/objectRegistry.js.map +1 -0
  253. package/dist/@ui/pageController.d.ts +61 -0
  254. package/dist/@ui/pageController.js +166 -0
  255. package/dist/@ui/pageController.js.map +1 -0
  256. package/dist/@ui/tools.d.ts +24 -0
  257. package/dist/@ui/tools.js +78 -0
  258. package/dist/@ui/tools.js.map +1 -0
  259. package/dist/@uikit/core/UiKitModule.d.ts +6 -0
  260. package/dist/@uikit/core/UiKitModule.js +18 -0
  261. package/dist/@uikit/core/UiKitModule.js.map +1 -0
  262. package/dist/@uikit/core/index.d.ts +1 -0
  263. package/dist/@uikit/core/index.js +4 -0
  264. package/dist/@uikit/core/index.js.map +1 -0
  265. package/dist/@uikit/core/jBundler_ifBrowser.d.ts +1 -0
  266. package/dist/@uikit/core/jBundler_ifBrowser.js +5 -0
  267. package/dist/@uikit/core/jBundler_ifBrowser.js.map +1 -0
  268. package/dist/@uikit/core/jBundler_ifServer.d.ts +6 -0
  269. package/dist/@uikit/core/jBundler_ifServer.js +17 -0
  270. package/dist/@uikit/core/jBundler_ifServer.js.map +1 -0
  271. package/dist/@uikit/forms/components.d.ts +18 -0
  272. package/dist/@uikit/forms/components.js +69 -0
  273. package/dist/@uikit/forms/components.js.map +1 -0
  274. package/dist/@uikit/forms/hooks.d.ts +4 -0
  275. package/dist/@uikit/forms/hooks.js +31 -0
  276. package/dist/@uikit/forms/hooks.js.map +1 -0
  277. package/dist/@uikit/forms/index.d.ts +3 -0
  278. package/dist/@uikit/forms/index.js +4 -0
  279. package/dist/@uikit/forms/index.js.map +1 -0
  280. package/dist/@uikit/forms/interfaces.d.ts +101 -0
  281. package/dist/@uikit/forms/interfaces.js +4 -0
  282. package/dist/@uikit/forms/interfaces.js.map +1 -0
  283. package/dist/@uikit/forms/private.d.ts +40 -0
  284. package/dist/@uikit/forms/private.js +307 -0
  285. package/dist/@uikit/forms/private.js.map +1 -0
  286. package/dist/@uikit/helpers/hooks.d.ts +33 -0
  287. package/dist/@uikit/helpers/hooks.js +107 -0
  288. package/dist/@uikit/helpers/hooks.js.map +1 -0
  289. package/dist/@uikit/helpers/index.d.ts +2 -0
  290. package/dist/@uikit/helpers/index.js +3 -0
  291. package/dist/@uikit/helpers/index.js.map +1 -0
  292. package/dist/@uikit/helpers/tools.d.ts +8 -0
  293. package/dist/@uikit/helpers/tools.js +35 -0
  294. package/dist/@uikit/helpers/tools.js.map +1 -0
  295. package/dist/@uikit/index.d.ts +10 -0
  296. package/dist/@uikit/index.js +13 -0
  297. package/dist/@uikit/index.js.map +1 -0
  298. package/dist/@uikit/menu/core.d.ts +21 -0
  299. package/dist/@uikit/menu/core.js +191 -0
  300. package/dist/@uikit/menu/core.js.map +1 -0
  301. package/dist/@uikit/menu/hooks.d.ts +5 -0
  302. package/dist/@uikit/menu/hooks.js +24 -0
  303. package/dist/@uikit/menu/hooks.js.map +1 -0
  304. package/dist/@uikit/menu/index.d.ts +3 -0
  305. package/dist/@uikit/menu/index.js +4 -0
  306. package/dist/@uikit/menu/index.js.map +1 -0
  307. package/dist/@uikit/menu/interfaces.d.ts +20 -0
  308. package/dist/@uikit/menu/interfaces.js +8 -0
  309. package/dist/@uikit/menu/interfaces.js.map +1 -0
  310. package/dist/@uikit/menu/internal.d.ts +40 -0
  311. package/dist/@uikit/menu/internal.js +191 -0
  312. package/dist/@uikit/menu/internal.js.map +1 -0
  313. package/dist/@uikit/reactRouter/hooks/jBundler_ifBrowser.d.ts +18 -0
  314. package/dist/@uikit/reactRouter/hooks/jBundler_ifBrowser.js +40 -0
  315. package/dist/@uikit/reactRouter/hooks/jBundler_ifBrowser.js.map +1 -0
  316. package/dist/@uikit/reactRouter/hooks/jBundler_ifServer.d.ts +28 -0
  317. package/dist/@uikit/reactRouter/hooks/jBundler_ifServer.js +35 -0
  318. package/dist/@uikit/reactRouter/hooks/jBundler_ifServer.js.map +1 -0
  319. package/dist/@uikit/reactRouter/index.d.ts +1 -0
  320. package/dist/@uikit/reactRouter/index.js +2 -0
  321. package/dist/@uikit/reactRouter/index.js.map +1 -0
  322. package/dist/@uikit/users/hooks.d.ts +10 -0
  323. package/dist/@uikit/users/hooks.js +39 -0
  324. package/dist/@uikit/users/hooks.js.map +1 -0
  325. package/dist/@uikit/users/index.d.ts +1 -0
  326. package/dist/@uikit/users/index.js +2 -0
  327. package/dist/@uikit/users/index.js.map +1 -0
  328. package/dist/@uikit/variants/index.d.ts +7 -0
  329. package/dist/@uikit/variants/index.js +16 -0
  330. package/dist/@uikit/variants/index.js.map +1 -0
  331. package/package.json +115 -0
  332. package/src/@bundler/README.md +1 -0
  333. package/src/@bundler/_logs.ts +4 -0
  334. package/src/@bundler/core.ts +41 -0
  335. package/src/@bundler/esbuild.ts +141 -0
  336. package/src/@bundler/index.ts +3 -0
  337. package/src/@bundler/plugins.ts +163 -0
  338. package/src/@bundler/tailwind.ts +139 -0
  339. package/src/@core/PageComponent.tsx +25 -0
  340. package/src/@core/README.md +1 -0
  341. package/src/@core/_logs.ts +11 -0
  342. package/src/@core/automaticStartStop.ts +132 -0
  343. package/src/@core/browserCacheControl.ts +40 -0
  344. package/src/@core/bundler/bundler.ts +128 -0
  345. package/src/@core/bundler/common.ts +18 -0
  346. package/src/@core/bundler/config.ts +37 -0
  347. package/src/@core/bundler/extraContent.ts +30 -0
  348. package/src/@core/bundler/pagesGenerator.ts +194 -0
  349. package/src/@core/bundler/server.ts +41 -0
  350. package/src/@core/caches/InMemoryCache.ts +483 -0
  351. package/src/@core/caches/SimpleFileCache.ts +205 -0
  352. package/src/@core/caches/cache.ts +77 -0
  353. package/src/@core/caches/webSiteMirrorCache.ts +90 -0
  354. package/src/@core/cheerio.d.ts +332 -0
  355. package/src/@core/gzip.ts +33 -0
  356. package/src/@core/index.ts +23 -0
  357. package/src/@core/internalTools.ts +95 -0
  358. package/src/@core/jQuery.ts +22 -0
  359. package/src/@core/jopiEasy.ts +1285 -0
  360. package/src/@core/jopiRequest.tsx +1279 -0
  361. package/src/@core/jopiServer.ts +188 -0
  362. package/src/@core/jopiWebSite.tsx +1027 -0
  363. package/src/@core/letsEncrypt.ts +243 -0
  364. package/src/@core/linker.ts +42 -0
  365. package/src/@core/loadBalancing.ts +152 -0
  366. package/src/@core/middlewares/CorsMiddleware.ts +23 -0
  367. package/src/@core/middlewares/DdosProtection.ts +120 -0
  368. package/src/@core/middlewares/index.ts +16 -0
  369. package/src/@core/publicTools.ts +14 -0
  370. package/src/@core/routeConfig.ts +104 -0
  371. package/src/@core/searchParamFilter.ts +315 -0
  372. package/src/@core/serverFetch.ts +454 -0
  373. package/src/@core/serverImpl/server_bunjs.tsx +230 -0
  374. package/src/@core/serverImpl/server_nodejs.ts +312 -0
  375. package/src/@core/serverInstanceBuilder.ts +36 -0
  376. package/src/@core/userStores.ts +34 -0
  377. package/src/@crawler/README.md +1 -0
  378. package/src/@crawler/common.ts +275 -0
  379. package/src/@crawler/core.ts +678 -0
  380. package/src/@crawler/directFileCache.ts +69 -0
  381. package/src/@crawler/index.ts +4 -0
  382. package/src/@crawler/urlMapping.ts +67 -0
  383. package/src/@crawler/utils.ts +13 -0
  384. package/src/@generated/index.ts +134 -0
  385. package/src/@linker/arobaseTypes.ts +325 -0
  386. package/src/@linker/changeProof.ts +53 -0
  387. package/src/@linker/config.ts +46 -0
  388. package/src/@linker/engine.ts +865 -0
  389. package/src/@linker/index.ts +3 -0
  390. package/src/@linker/install.ts +39 -0
  391. package/src/@linker/modInstaller.ts +50 -0
  392. package/src/@linker/typeEvents.ts +58 -0
  393. package/src/@linker/typeRoutes.ts +255 -0
  394. package/src/@linker/typeUiComposite.ts +19 -0
  395. package/src/@loader/README.md +4 -0
  396. package/src/@loader/bunHtmlCompiler.mjs +27 -0
  397. package/src/@loader/index.ts +19 -0
  398. package/src/@loader/loader.mjs +7 -0
  399. package/src/@loader/nodeJsLoader.ts +21 -0
  400. package/src/@loader-client/README.md +2 -0
  401. package/src/@loader-client/index.ts +108 -0
  402. package/src/@loader-tools/README.md +6 -0
  403. package/src/@loader-tools/bunJsLoader.ts +33 -0
  404. package/src/@loader-tools/config.ts +142 -0
  405. package/src/@loader-tools/cssModuleCompiler.ts +76 -0
  406. package/src/@loader-tools/esBuildPlugin.ts +142 -0
  407. package/src/@loader-tools/index.ts +11 -0
  408. package/src/@loader-tools/jopin.ts +403 -0
  409. package/src/@loader-tools/nodeJsLoader.ts +119 -0
  410. package/src/@loader-tools/nodeJsResolver.ts +140 -0
  411. package/src/@loader-tools/rules.ts +45 -0
  412. package/src/@loader-tools/sourceChangesWatcher.ts +225 -0
  413. package/src/@loader-tools/tools.ts +139 -0
  414. package/src/@loader-tools/transform.ts +138 -0
  415. package/src/@loader-tools/virtualUrl.ts +57 -0
  416. package/src/@loader-types/README.md +15 -0
  417. package/src/@loader-types/extensions.d.ts +65 -0
  418. package/src/@tool-jopinb/README.md +1 -0
  419. package/src/@tool-jopinb/index.ts +11 -0
  420. package/src/@ui/README.md +3 -0
  421. package/src/@ui/components.tsx +49 -0
  422. package/src/@ui/cssModules.tsx +27 -0
  423. package/src/@ui/hooks.tsx +95 -0
  424. package/src/@ui/index.ts +13 -0
  425. package/src/@ui/internal.ts +12 -0
  426. package/src/@ui/modules.ts +100 -0
  427. package/src/@ui/objectRegistry.ts +50 -0
  428. package/src/@ui/pageController.ts +203 -0
  429. package/src/@ui/tools.ts +116 -0
  430. package/src/@uikit/README.md +1 -0
  431. package/src/@uikit/core/UiKitModule.ts +20 -0
  432. package/src/@uikit/core/index.ts +4 -0
  433. package/src/@uikit/core/jBundler_ifBrowser.ts +4 -0
  434. package/src/@uikit/core/jBundler_ifServer.ts +18 -0
  435. package/src/@uikit/forms/components.tsx +97 -0
  436. package/src/@uikit/forms/hooks.ts +38 -0
  437. package/src/@uikit/forms/index.ts +3 -0
  438. package/src/@uikit/forms/interfaces.ts +159 -0
  439. package/src/@uikit/forms/private.ts +365 -0
  440. package/src/@uikit/helpers/hooks.ts +133 -0
  441. package/src/@uikit/helpers/index.ts +2 -0
  442. package/src/@uikit/helpers/tools.ts +39 -0
  443. package/src/@uikit/index.ts +15 -0
  444. package/src/@uikit/menu/core.ts +227 -0
  445. package/src/@uikit/menu/hooks.ts +28 -0
  446. package/src/@uikit/menu/index.ts +3 -0
  447. package/src/@uikit/menu/interfaces.ts +26 -0
  448. package/src/@uikit/menu/internal.ts +218 -0
  449. package/src/@uikit/package.json +15 -0
  450. package/src/@uikit/reactRouter/hooks/jBundler_ifBrowser.tsx +59 -0
  451. package/src/@uikit/reactRouter/hooks/jBundler_ifServer.tsx +51 -0
  452. package/src/@uikit/reactRouter/index.ts +1 -0
  453. package/src/@uikit/users/hooks.ts +50 -0
  454. package/src/@uikit/users/index.ts +1 -0
  455. package/src/@uikit/variants/index.tsx +20 -0
@@ -0,0 +1,11 @@
1
+ import React from "react";
2
+ export type HandlerBundleExternalCss = (importMeta: any, cssFilePath: string) => void;
3
+ export declare function setHandler_bundleExternalCss(listener: HandlerBundleExternalCss): void;
4
+ export declare const CssModule: React.FC<{
5
+ module: any;
6
+ }>;
7
+ export interface UseCssModuleContextProps {
8
+ jopiUseCssModule?: Record<string, any>;
9
+ }
10
+ export declare function getCssModuleStyle(cssModule: undefined | Record<string, string>): string;
11
+ export declare function mustBundleExternalCss(importMeta: any, cssFilePath: string): void;
@@ -0,0 +1,17 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ // noinspection JSUnusedGlobalSymbols
3
+ import React from "react";
4
+ export function setHandler_bundleExternalCss(listener) {
5
+ gHandler_bundleExternalCss = listener;
6
+ }
7
+ export const CssModule = ({ module }) => {
8
+ return _jsx("style", { children: module.__CSS__ });
9
+ };
10
+ export function getCssModuleStyle(cssModule) {
11
+ return cssModule ? cssModule.__CSS__ : "";
12
+ }
13
+ export function mustBundleExternalCss(importMeta, cssFilePath) {
14
+ gHandler_bundleExternalCss(importMeta, cssFilePath);
15
+ }
16
+ let gHandler_bundleExternalCss = () => { };
17
+ //# sourceMappingURL=cssModules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cssModules.js","sourceRoot":"","sources":["../../src/@ui/cssModules.tsx"],"names":[],"mappings":";AAAA,qCAAqC;AAErC,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,MAAM,UAAU,4BAA4B,CAAC,QAAkC;IAC3E,0BAA0B,GAAG,QAAQ,CAAC;AAC1C,CAAC;AAED,MAAM,CAAC,MAAM,SAAS,GAA4B,CAAC,EAAC,MAAM,EAAC,EAAE,EAAE;IAC3D,OAAO,0BAAQ,MAAM,CAAC,OAAO,GAAS,CAAC;AAC3C,CAAC,CAAC;AAMF,MAAM,UAAU,iBAAiB,CAAC,SAA6C;IAC3E,OAAO,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,UAAe,EAAE,WAAmB;IACtE,0BAA0B,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;AACxD,CAAC;AAED,IAAI,0BAA0B,GAA6B,GAAG,EAAE,GAAE,CAAC,CAAC"}
@@ -0,0 +1,31 @@
1
+ import { PageController } from "./pageController.ts";
2
+ /**
3
+ * Allow getting a reference to the PageController.
4
+ * **USING IT MUST BE AVOIDED** since it's a technical item.
5
+ * It's the reason of the underscore.
6
+ */
7
+ export declare function _usePage<T = any>(): PageController<T>;
8
+ /**
9
+ * Allows setting the page title.
10
+ * @param title
11
+ */
12
+ export declare function usePageTitle(title: string): void;
13
+ export declare function useCssModule(cssModule: undefined | Record<string, string>): void;
14
+ /**
15
+ * Is a subset of JopiRequest, with only browser-side compatible items.
16
+ */
17
+ export interface ServerRequestInstance {
18
+ urlParts?: Record<string, any>;
19
+ urlInfos: URL;
20
+ customData: any;
21
+ user_getJwtToken(): string | undefined;
22
+ headers: Headers;
23
+ cookie_reqHasCookie(name: string, value?: string): boolean;
24
+ cookie_getReqCookie(name: string): string | undefined;
25
+ }
26
+ export declare function useServerRequest(): ServerRequestInstance;
27
+ /**
28
+ * Allows listening to an event, and automatically
29
+ * unregister when the component unmount.
30
+ */
31
+ export declare function useEvent(evenName: string | string[], listener: (data: any) => void): void;
@@ -0,0 +1,71 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ // noinspection JSUnusedGlobalSymbols
3
+ import React, { useEffect } from "react";
4
+ import { PageContext, PageController, PageController_ExposePrivate } from "./pageController.js";
5
+ import { CssModule } from "./cssModules.js";
6
+ import * as jk_events from "jopi-toolkit/jk_events";
7
+ /**
8
+ * Allow getting a reference to the PageController.
9
+ * **USING IT MUST BE AVOIDED** since it's a technical item.
10
+ * It's the reason of the underscore.
11
+ */
12
+ export function _usePage() {
13
+ let res = React.useContext(PageContext);
14
+ // Not wrapped inside a PageContext?
15
+ if (!res) {
16
+ res = new PageController(true);
17
+ }
18
+ return res;
19
+ }
20
+ /**
21
+ * Allows setting the page title.
22
+ * @param title
23
+ */
24
+ export function usePageTitle(title) {
25
+ const page = React.useContext(PageContext);
26
+ if (page)
27
+ page.setPageTitle(title);
28
+ }
29
+ export function useCssModule(cssModule) {
30
+ if (!cssModule)
31
+ return;
32
+ // Not a real CSS Module?
33
+ const fileHash = cssModule.__FILE_HASH__;
34
+ if (!fileHash)
35
+ return;
36
+ const ctx = _usePage();
37
+ // Will allow knowing if the module is already inserted for this page.
38
+ if (!ctx.data.jopiUseCssModule)
39
+ ctx.data.jopiUseCssModule = {};
40
+ // Not already added? Then add it.
41
+ if (fileHash && !ctx.data.jopiUseCssModule[fileHash]) {
42
+ ctx.data.jopiUseCssModule[fileHash] = true;
43
+ // Will allow inlining the style inside the page.
44
+ ctx.addToBodyBegin(fileHash, _jsx(CssModule, { module: cssModule }, fileHash));
45
+ }
46
+ }
47
+ export function useServerRequest() {
48
+ let page = _usePage();
49
+ return page.getServerRequest();
50
+ }
51
+ /**
52
+ * Allows listening to an event, and automatically
53
+ * unregister when the component unmount.
54
+ */
55
+ export function useEvent(evenName, listener) {
56
+ useEffect(() => {
57
+ if (evenName instanceof Array) {
58
+ evenName.forEach(e => {
59
+ jk_events.addListener(e, listener);
60
+ });
61
+ return () => {
62
+ evenName.forEach(e => {
63
+ jk_events.removeListener(e, listener);
64
+ });
65
+ };
66
+ }
67
+ jk_events.addListener(evenName, listener);
68
+ return () => { jk_events.removeListener(evenName, listener); };
69
+ }, [evenName, listener]);
70
+ }
71
+ //# sourceMappingURL=hooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../src/@ui/hooks.tsx"],"names":[],"mappings":";AAAA,qCAAqC;AAErC,OAAO,KAAK,EAAE,EAAC,SAAS,EAAC,MAAM,OAAO,CAAC;AACvC,OAAO,EAAC,WAAW,EAAE,cAAc,EAAE,4BAA4B,EAAC,MAAM,qBAAqB,CAAC;AAC9F,OAAO,EAAC,SAAS,EAAgC,MAAM,iBAAkB,CAAC;AAC1E,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAC;AAEpD;;;;GAIG;AACH,MAAM,UAAU,QAAQ;IACpB,IAAI,GAAG,GAAG,KAAK,CAAC,UAAU,CAAC,WAAW,CAAsB,CAAC;IAE7D,oCAAoC;IACpC,IAAI,CAAC,GAAG,EAAE,CAAC;QACP,GAAG,GAAG,IAAI,cAAc,CAAI,IAAI,CAAC,CAAC;IACtC,CAAC;IAED,OAAO,GAAG,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,KAAa;IACtC,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAAC,WAAW,CAAmB,CAAC;IAC7D,IAAI,IAAI;QAAE,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;AACvC,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,SAA6C;IACtE,IAAI,CAAC,SAAS;QAAE,OAAO;IAEvB,yBAAyB;IACzB,MAAM,QAAQ,GAAG,SAAS,CAAC,aAAa,CAAC;IACzC,IAAI,CAAC,QAAQ;QAAE,OAAO;IAEtB,MAAM,GAAG,GAAG,QAAQ,EAA4B,CAAC;IAEjD,sEAAsE;IACtE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB;QAAE,GAAG,CAAC,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC;IAE/D,kCAAkC;IAClC,IAAI,QAAQ,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnD,GAAG,CAAC,IAAI,CAAC,gBAAiB,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;QAE5C,iDAAiD;QACjD,GAAG,CAAC,cAAc,CAAC,QAAQ,EAAE,KAAC,SAAS,IAAgB,MAAM,EAAE,SAAS,IAA3B,QAAQ,CAAsB,CAAC,CAAC;IACjF,CAAC;AACL,CAAC;AAiBD,MAAM,UAAU,gBAAgB;IAC5B,IAAI,IAAI,GAAG,QAAQ,EAAE,CAAC;IACtB,OAAQ,IAAqC,CAAC,gBAAgB,EAAE,CAAC;AACrE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,QAAQ,CAAC,QAAyB,EAAE,QAA6B;IAC7E,SAAS,CAAC,GAAG,EAAE;QACX,IAAI,QAAQ,YAAY,KAAK,EAAE,CAAC;YAC5B,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;gBACjB,SAAS,CAAC,WAAW,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;YACvC,CAAC,CAAC,CAAC;YAEH,OAAO,GAAG,EAAE;gBACR,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;oBACjB,SAAS,CAAC,cAAc,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;gBAC1C,CAAC,CAAC,CAAC;YACP,CAAC,CAAA;QACL,CAAC;QAED,SAAS,CAAC,WAAW,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC1C,OAAO,GAAG,EAAE,GAAG,SAAS,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA,CAAC,CAAC,CAAC;IAClE,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;AAC7B,CAAC"}
@@ -0,0 +1,9 @@
1
+ export * from "./tools.ts";
2
+ export * from "./pageController.ts";
3
+ export * from "./cssModules.tsx";
4
+ export * from "./components.tsx";
5
+ export * from "./hooks.tsx";
6
+ export * from "./modules.ts";
7
+ export * from "./objectRegistry.ts";
8
+ export declare const isBrowserSide = false;
9
+ export declare const isServerSide = true;
@@ -0,0 +1,11 @@
1
+ import { isBrowser } from "jopi-toolkit/jk_what";
2
+ export * from "./tools.js";
3
+ export * from "./pageController.js";
4
+ export * from "./cssModules.js";
5
+ export * from "./components.js";
6
+ export * from "./hooks.js";
7
+ export * from "./modules.js";
8
+ export * from "./objectRegistry.js";
9
+ export const isBrowserSide = isBrowser;
10
+ export const isServerSide = !isBrowser;
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/@ui/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,sBAAsB,CAAC;AAE/C,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAkB,CAAC;AAEjC,cAAc,iBAAkB,CAAC;AACjC,cAAc,YAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AAEpC,MAAM,CAAC,MAAM,aAAa,GAAG,SAAS,CAAC;AACvC,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,SAAS,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { ComponentAliasDef } from "./modules.ts";
2
+ import { PageController } from "./pageController.ts";
3
+ export declare const gComponentAlias: Record<string, ComponentAliasDef>;
4
+ export declare function getDefaultPageController(): PageController;
@@ -0,0 +1,10 @@
1
+ import { PageContext, PageController } from "./pageController.js";
2
+ import React from "react";
3
+ export const gComponentAlias = {};
4
+ export function getDefaultPageController() {
5
+ if (!gDefaultPageController)
6
+ gDefaultPageController = new PageController();
7
+ return gDefaultPageController;
8
+ }
9
+ let gDefaultPageController;
10
+ //# sourceMappingURL=internal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"internal.js","sourceRoot":"","sources":["../../src/@ui/internal.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,WAAW,EAAE,cAAc,EAAC,MAAM,qBAAqB,CAAC;AAChE,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,CAAC,MAAM,eAAe,GAAsC,EAAE,CAAC;AAErE,MAAM,UAAU,wBAAwB;IACpC,IAAI,CAAC,sBAAsB;QAAE,sBAAsB,GAAG,IAAI,cAAc,EAAE,CAAC;IAC3E,OAAO,sBAAuB,CAAC;AACnC,CAAC;AAED,IAAI,sBAAgD,CAAC"}
@@ -0,0 +1,41 @@
1
+ import * as jk_events from "jopi-toolkit/jk_events";
2
+ import { type UiUserInfos } from "./tools.ts";
3
+ import React from "react";
4
+ import { type IsObjectRegistry } from "./objectRegistry.ts";
5
+ export interface ModuleInitContext_Host {
6
+ objectRegistry: IsObjectRegistry;
7
+ getCurrentURL(): URL;
8
+ getUserInfos(): UiUserInfos | undefined;
9
+ mustRemoveTrailingSlashs: boolean;
10
+ events: jk_events.EventGroup;
11
+ }
12
+ export interface ComponentAliasDef {
13
+ alias: string;
14
+ component: React.ComponentType<any>;
15
+ }
16
+ type UiInitializer = () => void;
17
+ /**
18
+ * This class is what is sent as the default export function
19
+ * of your module `uiInit.tsx`. It allows configuring things
20
+ * allowing your plugin to initialize your UI.
21
+ *
22
+ * * On the server side, it's executed for each page.
23
+ * * On the browser side, it's executed for each browser refresh.
24
+ */
25
+ export declare class ModuleInitContext {
26
+ readonly objectRegistry: IsObjectRegistry;
27
+ readonly events: jk_events.EventGroup;
28
+ readonly isBrowserSide: boolean;
29
+ protected readonly host: ModuleInitContext_Host;
30
+ constructor(host?: ModuleInitContext_Host);
31
+ protected initialize(): void;
32
+ getCurrentURL(): URL;
33
+ addUiInitializer(priority: UiInitializer | jk_events.EventPriority, initializer?: UiInitializer | undefined): void;
34
+ getUserInfos(): UiUserInfos | undefined;
35
+ getUserRoles(): string[];
36
+ userHasRoles(roles: string[]): boolean;
37
+ ifUserHasRoles(roles: string[], f: (userInfos: UiUserInfos) => void): void;
38
+ ifUserLoggedIn(f: (userInfos: UiUserInfos) => void): void;
39
+ ifNotUserLoggedIn(f: () => Promise<void>): void;
40
+ }
41
+ export {};
@@ -0,0 +1,74 @@
1
+ // noinspection JSUnusedGlobalSymbols
2
+ import * as jk_events from "jopi-toolkit/jk_events";
3
+ import {} from "./tools.js";
4
+ import React from "react";
5
+ import { isServerSide } from "jopi-toolkit/jk_what";
6
+ import {} from "./objectRegistry.js";
7
+ import { getDefaultPageController } from "./internal.js";
8
+ /**
9
+ * This class is what is sent as the default export function
10
+ * of your module `uiInit.tsx`. It allows configuring things
11
+ * allowing your plugin to initialize your UI.
12
+ *
13
+ * * On the server side, it's executed for each page.
14
+ * * On the browser side, it's executed for each browser refresh.
15
+ */
16
+ export class ModuleInitContext {
17
+ objectRegistry;
18
+ events;
19
+ isBrowserSide = !isServerSide;
20
+ host;
21
+ constructor(host) {
22
+ if (!host)
23
+ host = getDefaultPageController();
24
+ this.host = host;
25
+ this.objectRegistry = host.objectRegistry;
26
+ this.events = host.events;
27
+ this.initialize();
28
+ }
29
+ initialize() {
30
+ // Will be overridden.
31
+ }
32
+ getCurrentURL() {
33
+ return this.host.getCurrentURL();
34
+ }
35
+ addUiInitializer(priority, initializer) {
36
+ this.events.addListener("app.init.ui", priority, initializer);
37
+ }
38
+ getUserInfos() {
39
+ return this.host.getUserInfos();
40
+ }
41
+ getUserRoles() {
42
+ let userInfos = this.getUserInfos();
43
+ if (!userInfos)
44
+ return [];
45
+ return userInfos.roles || [];
46
+ }
47
+ userHasRoles(roles) {
48
+ if (roles.length === 0)
49
+ return true;
50
+ let userInfos = this.getUserInfos();
51
+ if (!userInfos)
52
+ return false;
53
+ let userRoles = userInfos.roles;
54
+ if (!userRoles)
55
+ return false;
56
+ return !!roles.every(role => userRoles.includes(role));
57
+ }
58
+ ifUserHasRoles(roles, f) {
59
+ if (this.userHasRoles(roles)) {
60
+ f(this.getUserInfos());
61
+ }
62
+ }
63
+ ifUserLoggedIn(f) {
64
+ let userInfos = this.getUserInfos();
65
+ if (!userInfos)
66
+ return;
67
+ return f(userInfos);
68
+ }
69
+ ifNotUserLoggedIn(f) {
70
+ if (!this.getUserInfos())
71
+ f();
72
+ }
73
+ }
74
+ //# sourceMappingURL=modules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modules.js","sourceRoot":"","sources":["../../src/@ui/modules.ts"],"names":[],"mappings":"AAAA,qCAAqC;AAErC,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAkB,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAuB,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAC,wBAAwB,EAAC,MAAM,eAAe,CAAC;AAmBvD;;;;;;;GAOG;AACH,MAAM,OAAO,iBAAiB;IACV,cAAc,CAAmB;IACjC,MAAM,CAAuB;IAC7B,aAAa,GAAY,CAAC,YAAY,CAAC;IACpC,IAAI,CAAyB;IAEhD,YAAY,IAA6B;QACrC,IAAI,CAAC,IAAI;YAAE,IAAI,GAAG,wBAAwB,EAAE,CAAC;QAC7C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QAEjB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QAC1C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAE1B,IAAI,CAAC,UAAU,EAAE,CAAC;IACtB,CAAC;IAES,UAAU;QAChB,sBAAsB;IAC1B,CAAC;IAED,aAAa;QACT,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;IACrC,CAAC;IAED,gBAAgB,CAAC,QAA+C,EAAE,WAAqC;QACnG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,aAAa,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;IAClE,CAAC;IAED,YAAY;QACR,OAAO,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;IACpC,CAAC;IAED,YAAY;QACR,IAAI,SAAS,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACpC,IAAI,CAAC,SAAS;YAAE,OAAO,EAAE,CAAC;QAC1B,OAAO,SAAS,CAAC,KAAK,IAAI,EAAE,CAAC;IACjC,CAAC;IAED,YAAY,CAAC,KAAe;QACxB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAEpC,IAAI,SAAS,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACpC,IAAI,CAAC,SAAS;YAAE,OAAO,KAAK,CAAC;QAE7B,IAAI,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC;QAChC,IAAI,CAAC,SAAS;YAAE,OAAO,KAAK,CAAC;QAE7B,OAAO,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3D,CAAC;IAED,cAAc,CAAC,KAAe,EAAE,CAAmC;QAC/D,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3B,CAAC,CAAC,IAAI,CAAC,YAAY,EAAG,CAAC,CAAC;QAC5B,CAAC;IACL,CAAC;IAED,cAAc,CAAC,CAAmC;QAC9C,IAAI,SAAS,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACpC,IAAI,CAAC,SAAS;YAAE,OAAO;QACvB,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC;IACxB,CAAC;IAED,iBAAiB,CAAC,CAAsB;QACpC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YAAE,CAAC,EAAE,CAAC;IAClC,CAAC;CACJ"}
@@ -0,0 +1,12 @@
1
+ export interface IsObjectRegistry {
2
+ getObject<T>(name: string): T | undefined;
3
+ registerObject(name: string, instance: any): void;
4
+ addObjectBuilder<T>(name: string, builder: () => T): void;
5
+ }
6
+ export declare class ObjectRegistry implements IsObjectRegistry {
7
+ private readonly r;
8
+ getObject<T>(name: string): T | undefined;
9
+ registerObject(name: string, instance: any): void;
10
+ addObjectBuilder<T>(name: string, builder: () => T): void;
11
+ }
12
+ export declare function getDefaultObjectRegistry(): IsObjectRegistry;
@@ -0,0 +1,35 @@
1
+ export class ObjectRegistry {
2
+ r = {};
3
+ getObject(name) {
4
+ let entry = this.r[name];
5
+ if (!entry)
6
+ return undefined;
7
+ if (entry.instance !== undefined)
8
+ return entry.instance;
9
+ if (entry.builder) {
10
+ entry.instance = entry.builder();
11
+ return entry.instance;
12
+ }
13
+ return undefined;
14
+ }
15
+ registerObject(name, instance) {
16
+ let entry = this.r[name];
17
+ if (!entry)
18
+ this.r[name] = entry = {};
19
+ entry.instance = instance;
20
+ }
21
+ addObjectBuilder(name, builder) {
22
+ let entry = this.r[name];
23
+ if (!entry)
24
+ this.r[name] = entry = {};
25
+ entry.builder = builder;
26
+ }
27
+ }
28
+ export function getDefaultObjectRegistry() {
29
+ if (!gObjectRegistry) {
30
+ return gObjectRegistry = new ObjectRegistry();
31
+ }
32
+ return gObjectRegistry;
33
+ }
34
+ let gObjectRegistry;
35
+ //# sourceMappingURL=objectRegistry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"objectRegistry.js","sourceRoot":"","sources":["../../src/@ui/objectRegistry.ts"],"names":[],"mappings":"AAWA,MAAM,OAAO,cAAc;IACN,CAAC,GAAwC,EAAE,CAAC;IAE7D,SAAS,CAAI,IAAY;QACrB,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACzB,IAAI,CAAC,KAAK;YAAE,OAAO,SAAS,CAAC;QAE7B,IAAI,KAAK,CAAC,QAAQ,KAAG,SAAS;YAAE,OAAO,KAAK,CAAC,QAAa,CAAC;QAE3D,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YAChB,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC;YACjC,OAAO,KAAK,CAAC,QAAa,CAAC;QAC/B,CAAC;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,cAAc,CAAC,IAAY,EAAE,QAAa;QACtC,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACzB,IAAI,CAAC,KAAK;YAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;QACtC,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC9B,CAAC;IAED,gBAAgB,CAAI,IAAY,EAAE,OAAgB;QAC9C,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACzB,IAAI,CAAC,KAAK;YAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;QACtC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;IAC5B,CAAC;CACJ;AAED,MAAM,UAAU,wBAAwB;IACpC,IAAI,CAAC,eAAe,EAAE,CAAC;QACnB,OAAO,eAAe,GAAG,IAAI,cAAc,EAAE,CAAC;IAClD,CAAC;IAED,OAAO,eAAe,CAAC;AAC3B,CAAC;AAED,IAAI,eAAyC,CAAC"}
@@ -0,0 +1,61 @@
1
+ import React from "react";
2
+ import { type ServerRequestInstance } from "./hooks.tsx";
3
+ import { type UiUserInfos } from "./tools.ts";
4
+ import * as jk_events from "jopi-toolkit/jk_events";
5
+ import type { ModuleInitContext_Host } from "./modules.ts";
6
+ import { type IsObjectRegistry } from "./objectRegistry.ts";
7
+ export interface PageOptions {
8
+ pageTitle?: string;
9
+ head?: React.ReactNode[];
10
+ bodyBegin?: React.ReactNode[];
11
+ bodyEnd?: React.ReactNode[];
12
+ htmlProps?: Record<string, any>;
13
+ bodyProps?: Record<string, any>;
14
+ headProps?: Record<string, any>;
15
+ }
16
+ /**
17
+ * Page controller is an object that can be accessed
18
+ * from any React component from the `_usePage`hook.
19
+ */
20
+ export declare class PageController<T = any> implements ModuleInitContext_Host {
21
+ readonly isDetached: boolean;
22
+ readonly mustRemoveTrailingSlashs: boolean;
23
+ private readonly isServerSide;
24
+ private readonly usedKeys;
25
+ protected state: PageOptions;
26
+ protected serverRequest?: ServerRequestInstance;
27
+ protected userInfos?: UiUserInfos;
28
+ readonly events: jk_events.EventGroup;
29
+ readonly objectRegistry: IsObjectRegistry;
30
+ constructor(isDetached?: boolean, mustRemoveTrailingSlashs?: boolean, options?: PageOptions);
31
+ /**
32
+ * Allow storing custom data inside the page context.
33
+ */
34
+ data: T;
35
+ /**
36
+ * Return the current page url.
37
+ * For server-side: correspond to the url of the request.
38
+ * For browser-side: is the navigateur url.
39
+ */
40
+ getCurrentURL(): URL;
41
+ getUserInfos(): UiUserInfos | undefined;
42
+ addToHeader(key: string, entry: React.ReactNode): this;
43
+ addToBodyBegin(key: string, entry: React.ReactNode): this;
44
+ addToBodyEnd(key: string, entry: React.ReactNode): this;
45
+ setHeadTagProps(key: string, value: any): this;
46
+ setHtmlTagProps(key: string, value: any): this;
47
+ setBodyTagProps(key: string, value: any): this;
48
+ setPageTitle(title: string): this;
49
+ private checkKey;
50
+ refreshUserInfos(): void;
51
+ logOutUser(): void;
52
+ onStateUpdated(_state: PageOptions): void;
53
+ onRequireRefresh(): void;
54
+ }
55
+ export declare class PageController_ExposePrivate<T = any> extends PageController<T> {
56
+ getOptions(): PageOptions;
57
+ setServerRequest(serverRequest: ServerRequestInstance): void;
58
+ getServerRequest(): ServerRequestInstance;
59
+ }
60
+ export type PageHook = (controller: PageController_ExposePrivate<unknown>) => void;
61
+ export declare const PageContext: React.Context<PageController<unknown> | undefined>;
@@ -0,0 +1,166 @@
1
+ // noinspection JSUnusedGlobalSymbols
2
+ import React from "react";
3
+ import {} from "./hooks.js";
4
+ import { decodeJwtToken, decodeUserInfosFromCookie, isUserInfoCookieUpdated, deleteCookie } from "./tools.js";
5
+ import * as jk_events from "jopi-toolkit/jk_events";
6
+ import { isServerSide } from "jopi-toolkit/jk_what";
7
+ import { getDefaultObjectRegistry, ObjectRegistry } from "./objectRegistry.js";
8
+ /**
9
+ * Page controller is an object that can be accessed
10
+ * from any React component from the `_usePage`hook.
11
+ */
12
+ export class PageController {
13
+ isDetached;
14
+ mustRemoveTrailingSlashs;
15
+ isServerSide = isServerSide;
16
+ usedKeys = new Set();
17
+ state;
18
+ serverRequest;
19
+ userInfos;
20
+ events = isServerSide ? jk_events.newEventGroup() : jk_events.defaultEventGroup;
21
+ objectRegistry = isServerSide ? new ObjectRegistry() : getDefaultObjectRegistry();
22
+ constructor(isDetached = false, mustRemoveTrailingSlashs = false, options) {
23
+ this.isDetached = isDetached;
24
+ this.mustRemoveTrailingSlashs = mustRemoveTrailingSlashs;
25
+ options = options || {};
26
+ this.state = { ...options };
27
+ }
28
+ /**
29
+ * Allow storing custom data inside the page context.
30
+ */
31
+ data = {};
32
+ //region ModuleInitContext_Host
33
+ /**
34
+ * Return the current page url.
35
+ * For server-side: correspond to the url of the request.
36
+ * For browser-side: is the navigateur url.
37
+ */
38
+ getCurrentURL() {
39
+ if (this.serverRequest) {
40
+ return this.serverRequest.urlInfos;
41
+ }
42
+ return new URL(window.location.href);
43
+ }
44
+ getUserInfos() {
45
+ if (isServerSide)
46
+ return this.userInfos;
47
+ if (!this.userInfos) {
48
+ this.userInfos = decodeUserInfosFromCookie();
49
+ }
50
+ return this.userInfos;
51
+ }
52
+ //endregion
53
+ //region Page options (header/props/...)
54
+ addToHeader(key, entry) {
55
+ if (this.isServerSide) {
56
+ if (!this.checkKey("h" + key))
57
+ return this;
58
+ if (!this.state.head)
59
+ this.state.head = [entry];
60
+ else
61
+ this.state.head.push(entry);
62
+ }
63
+ else {
64
+ // No browser-side support.
65
+ // Why? Because React router only replaces the body.
66
+ }
67
+ return this;
68
+ }
69
+ addToBodyBegin(key, entry) {
70
+ if (!this.checkKey("b" + key))
71
+ return this;
72
+ if (!this.state.bodyBegin)
73
+ this.state.bodyBegin = [entry];
74
+ else
75
+ this.state.bodyBegin.push(entry);
76
+ // Required to trigger a browser-side refresh of the body.
77
+ this.onStateUpdated(this.state);
78
+ return this;
79
+ }
80
+ addToBodyEnd(key, entry) {
81
+ if (!this.checkKey("e" + key))
82
+ return this;
83
+ if (!this.state.bodyEnd)
84
+ this.state.bodyEnd = [entry];
85
+ else
86
+ this.state.bodyEnd.push(entry);
87
+ // Required to trigger a browser-side refresh of the body.
88
+ this.onStateUpdated(this.state);
89
+ return this;
90
+ }
91
+ setHeadTagProps(key, value) {
92
+ if (this.isServerSide) {
93
+ if (!this.state.headProps)
94
+ this.state.headProps = {};
95
+ this.state.headProps[key] = value;
96
+ }
97
+ return this;
98
+ }
99
+ setHtmlTagProps(key, value) {
100
+ if (this.isServerSide) {
101
+ if (!this.state.htmlProps)
102
+ this.state.htmlProps = {};
103
+ this.state.htmlProps[key] = value;
104
+ }
105
+ return this;
106
+ }
107
+ setBodyTagProps(key, value) {
108
+ if (this.isServerSide) {
109
+ if (!this.state.bodyProps)
110
+ this.state.bodyProps = {};
111
+ this.state.bodyProps[key] = value;
112
+ }
113
+ return this;
114
+ }
115
+ setPageTitle(title) {
116
+ if (this.isServerSide) {
117
+ this.state.pageTitle = title;
118
+ }
119
+ else {
120
+ document.title = title;
121
+ }
122
+ return this;
123
+ }
124
+ checkKey(key) {
125
+ if (this.usedKeys.has(key)) {
126
+ return false;
127
+ }
128
+ this.usedKeys.add(key);
129
+ return true;
130
+ }
131
+ //endregion
132
+ refreshUserInfos() {
133
+ if (!isServerSide && isUserInfoCookieUpdated()) {
134
+ this.userInfos = decodeUserInfosFromCookie();
135
+ jk_events.sendEvent("user.infosUpdated");
136
+ }
137
+ }
138
+ logOutUser() {
139
+ if (!isServerSide) {
140
+ deleteCookie("authorization");
141
+ }
142
+ this.refreshUserInfos();
143
+ }
144
+ onStateUpdated(_state) {
145
+ // Will be dynamically replaced.
146
+ }
147
+ onRequireRefresh() {
148
+ // Will be dynamically replaced.
149
+ }
150
+ }
151
+ export class PageController_ExposePrivate extends PageController {
152
+ getOptions() {
153
+ return this.state;
154
+ }
155
+ setServerRequest(serverRequest) {
156
+ this.objectRegistry.registerObject("jopi.serverRequest", serverRequest);
157
+ this.serverRequest = serverRequest;
158
+ this.userInfos = decodeJwtToken(serverRequest.user_getJwtToken());
159
+ }
160
+ getServerRequest() {
161
+ return this.serverRequest;
162
+ }
163
+ }
164
+ // Use undefined, otherwise the value is common for all requests when doing SSR.
165
+ export const PageContext = React.createContext(undefined);
166
+ //# sourceMappingURL=pageController.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pageController.js","sourceRoot":"","sources":["../../src/@ui/pageController.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ export interface UiUserInfos {
2
+ id: string;
3
+ roles?: string[];
4
+ email?: string;
5
+ fullName?: string;
6
+ nickName?: string;
7
+ firstName?: string;
8
+ lastName?: string;
9
+ avatarUrl?: string;
10
+ [key: string]: any;
11
+ }
12
+ export declare function decodeJwtToken(jwtToken: string | undefined): UiUserInfos | undefined;
13
+ export declare function isUserInfoCookieUpdated(): boolean;
14
+ export declare function decodeUserInfosFromCookie(): UiUserInfos | undefined;
15
+ export declare function setCookie(name: string, value: string, maxAge?: number): void;
16
+ export declare function deleteCookie(name: string): void;
17
+ /**
18
+ * Returns the value of the cookie.
19
+ * Works browser side and server side.
20
+ *
21
+ * @param name
22
+ * The name of the cookie we want.
23
+ */
24
+ export declare function decodeNavigatorCookie(name: string): string;