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.
- package/README.md +134 -0
- package/bin/jopib.js +4 -0
- package/bin/jopin.js +4 -0
- package/dist/@bundler/_logs.d.ts +2 -0
- package/dist/@bundler/_logs.js +4 -0
- package/dist/@bundler/_logs.js.map +1 -0
- package/dist/@bundler/core.d.ts +1 -0
- package/dist/@bundler/core.js +34 -0
- package/dist/@bundler/core.js.map +1 -0
- package/dist/@bundler/esbuild.d.ts +6 -0
- package/dist/@bundler/esbuild.js +111 -0
- package/dist/@bundler/esbuild.js.map +1 -0
- package/dist/@bundler/index.d.ts +2 -0
- package/dist/@bundler/index.js +3 -0
- package/dist/@bundler/index.js.map +1 -0
- package/dist/@bundler/plugins.d.ts +13 -0
- package/dist/@bundler/plugins.js +145 -0
- package/dist/@bundler/plugins.js.map +1 -0
- package/dist/@bundler/tailwind.d.ts +3 -0
- package/dist/@bundler/tailwind.js +119 -0
- package/dist/@bundler/tailwind.js.map +1 -0
- package/dist/@core/PageComponent.d.ts +6 -0
- package/dist/@core/PageComponent.js +10 -0
- package/dist/@core/PageComponent.js.map +1 -0
- package/dist/@core/_logs.d.ts +7 -0
- package/dist/@core/_logs.js +9 -0
- package/dist/@core/_logs.js.map +1 -0
- package/dist/@core/automaticStartStop.d.ts +25 -0
- package/dist/@core/automaticStartStop.js +106 -0
- package/dist/@core/automaticStartStop.js.map +1 -0
- package/dist/@core/browserCacheControl.d.ts +21 -0
- package/dist/@core/browserCacheControl.js +17 -0
- package/dist/@core/browserCacheControl.js.map +1 -0
- package/dist/@core/bundler/bundler.d.ts +22 -0
- package/dist/@core/bundler/bundler.js +90 -0
- package/dist/@core/bundler/bundler.js.map +1 -0
- package/dist/@core/bundler/common.d.ts +2 -0
- package/dist/@core/bundler/common.js +17 -0
- package/dist/@core/bundler/common.js.map +1 -0
- package/dist/@core/bundler/config.d.ts +20 -0
- package/dist/@core/bundler/config.js +11 -0
- package/dist/@core/bundler/config.js.map +1 -0
- package/dist/@core/bundler/extraContent.d.ts +6 -0
- package/dist/@core/bundler/extraContent.js +27 -0
- package/dist/@core/bundler/extraContent.js.map +1 -0
- package/dist/@core/bundler/pagesGenerator.d.ts +1 -0
- package/dist/@core/bundler/pagesGenerator.js +173 -0
- package/dist/@core/bundler/pagesGenerator.js.map +1 -0
- package/dist/@core/bundler/server.d.ts +8 -0
- package/dist/@core/bundler/server.js +35 -0
- package/dist/@core/bundler/server.js.map +1 -0
- package/dist/@core/caches/InMemoryCache.d.ts +35 -0
- package/dist/@core/caches/InMemoryCache.js +353 -0
- package/dist/@core/caches/InMemoryCache.js.map +1 -0
- package/dist/@core/caches/SimpleFileCache.d.ts +18 -0
- package/dist/@core/caches/SimpleFileCache.js +171 -0
- package/dist/@core/caches/SimpleFileCache.js.map +1 -0
- package/dist/@core/caches/cache.d.ts +36 -0
- package/dist/@core/caches/cache.js +33 -0
- package/dist/@core/caches/cache.js.map +1 -0
- package/dist/@core/caches/webSiteMirrorCache.d.ts +16 -0
- package/dist/@core/caches/webSiteMirrorCache.js +81 -0
- package/dist/@core/caches/webSiteMirrorCache.js.map +1 -0
- package/dist/@core/gzip.d.ts +4 -0
- package/dist/@core/gzip.js +31 -0
- package/dist/@core/gzip.js.map +1 -0
- package/dist/@core/index.d.ts +18 -0
- package/dist/@core/index.js +19 -0
- package/dist/@core/index.js.map +1 -0
- package/dist/@core/internalTools.d.ts +14 -0
- package/dist/@core/internalTools.js +79 -0
- package/dist/@core/internalTools.js.map +1 -0
- package/dist/@core/jQuery.d.ts +5 -0
- package/dist/@core/jQuery.js +18 -0
- package/dist/@core/jQuery.js.map +1 -0
- package/dist/@core/jopiEasy.d.ts +287 -0
- package/dist/@core/jopiEasy.js +983 -0
- package/dist/@core/jopiEasy.js.map +1 -0
- package/dist/@core/jopiRequest.d.ts +269 -0
- package/dist/@core/jopiRequest.js +1060 -0
- package/dist/@core/jopiRequest.js.map +1 -0
- package/dist/@core/jopiServer.d.ts +77 -0
- package/dist/@core/jopiServer.js +100 -0
- package/dist/@core/jopiServer.js.map +1 -0
- package/dist/@core/jopiWebSite.d.ts +319 -0
- package/dist/@core/jopiWebSite.js +653 -0
- package/dist/@core/jopiWebSite.js.map +1 -0
- package/dist/@core/letsEncrypt.d.ts +25 -0
- package/dist/@core/letsEncrypt.js +189 -0
- package/dist/@core/letsEncrypt.js.map +1 -0
- package/dist/@core/linker.d.ts +4 -0
- package/dist/@core/linker.js +37 -0
- package/dist/@core/linker.js.map +1 -0
- package/dist/@core/loadBalancing.d.ts +18 -0
- package/dist/@core/loadBalancing.js +126 -0
- package/dist/@core/loadBalancing.js.map +1 -0
- package/dist/@core/middlewares/CorsMiddleware.d.ts +5 -0
- package/dist/@core/middlewares/CorsMiddleware.js +15 -0
- package/dist/@core/middlewares/CorsMiddleware.js.map +1 -0
- package/dist/@core/middlewares/DdosProtection.d.ts +42 -0
- package/dist/@core/middlewares/DdosProtection.js +62 -0
- package/dist/@core/middlewares/DdosProtection.js.map +1 -0
- package/dist/@core/middlewares/index.d.ts +10 -0
- package/dist/@core/middlewares/index.js +14 -0
- package/dist/@core/middlewares/index.js.map +1 -0
- package/dist/@core/publicTools.d.ts +8 -0
- package/dist/@core/publicTools.js +11 -0
- package/dist/@core/publicTools.js.map +1 -0
- package/dist/@core/routeConfig.d.ts +48 -0
- package/dist/@core/routeConfig.js +102 -0
- package/dist/@core/routeConfig.js.map +1 -0
- package/dist/@core/searchParamFilter.d.ts +70 -0
- package/dist/@core/searchParamFilter.js +212 -0
- package/dist/@core/searchParamFilter.js.map +1 -0
- package/dist/@core/serverFetch.d.ts +122 -0
- package/dist/@core/serverFetch.js +312 -0
- package/dist/@core/serverFetch.js.map +1 -0
- package/dist/@core/serverImpl/server_bunjs.d.ts +29 -0
- package/dist/@core/serverImpl/server_bunjs.js +180 -0
- package/dist/@core/serverImpl/server_bunjs.js.map +1 -0
- package/dist/@core/serverImpl/server_nodejs.d.ts +22 -0
- package/dist/@core/serverImpl/server_nodejs.js +235 -0
- package/dist/@core/serverImpl/server_nodejs.js.map +1 -0
- package/dist/@core/serverInstanceBuilder.d.ts +17 -0
- package/dist/@core/serverInstanceBuilder.js +14 -0
- package/dist/@core/serverInstanceBuilder.js.map +1 -0
- package/dist/@core/userStores.d.ts +13 -0
- package/dist/@core/userStores.js +20 -0
- package/dist/@core/userStores.js.map +1 -0
- package/dist/@crawler/common.d.ts +203 -0
- package/dist/@crawler/common.js +68 -0
- package/dist/@crawler/common.js.map +1 -0
- package/dist/@crawler/core.d.ts +87 -0
- package/dist/@crawler/core.js +586 -0
- package/dist/@crawler/core.js.map +1 -0
- package/dist/@crawler/directFileCache.d.ts +10 -0
- package/dist/@crawler/directFileCache.js +60 -0
- package/dist/@crawler/directFileCache.js.map +1 -0
- package/dist/@crawler/index.d.ts +4 -0
- package/dist/@crawler/index.js +5 -0
- package/dist/@crawler/index.js.map +1 -0
- package/dist/@crawler/urlMapping.d.ts +21 -0
- package/dist/@crawler/urlMapping.js +52 -0
- package/dist/@crawler/urlMapping.js.map +1 -0
- package/dist/@crawler/utils.d.ts +6 -0
- package/dist/@crawler/utils.js +13 -0
- package/dist/@crawler/utils.js.map +1 -0
- package/dist/@generated/index.d.ts +29 -0
- package/dist/@generated/index.js +93 -0
- package/dist/@generated/index.js.map +1 -0
- package/dist/@linker/arobaseTypes.d.ts +50 -0
- package/dist/@linker/arobaseTypes.js +235 -0
- package/dist/@linker/arobaseTypes.js.map +1 -0
- package/dist/@linker/changeProof.d.ts +5 -0
- package/dist/@linker/changeProof.js +50 -0
- package/dist/@linker/changeProof.js.map +1 -0
- package/dist/@linker/config.d.ts +2 -0
- package/dist/@linker/config.js +40 -0
- package/dist/@linker/config.js.map +1 -0
- package/dist/@linker/engine.d.ts +156 -0
- package/dist/@linker/engine.js +665 -0
- package/dist/@linker/engine.js.map +1 -0
- package/dist/@linker/index.d.ts +3 -0
- package/dist/@linker/index.js +4 -0
- package/dist/@linker/index.js.map +1 -0
- package/dist/@linker/install.d.ts +4 -0
- package/dist/@linker/install.js +42 -0
- package/dist/@linker/install.js.map +1 -0
- package/dist/@linker/modInstaller.d.ts +10 -0
- package/dist/@linker/modInstaller.js +38 -0
- package/dist/@linker/modInstaller.js.map +1 -0
- package/dist/@linker/typeEvents.d.ts +9 -0
- package/dist/@linker/typeEvents.js +48 -0
- package/dist/@linker/typeEvents.js.map +1 -0
- package/dist/@linker/typeRoutes.d.ts +23 -0
- package/dist/@linker/typeRoutes.js +197 -0
- package/dist/@linker/typeRoutes.js.map +1 -0
- package/dist/@linker/typeUiComposite.d.ts +6 -0
- package/dist/@linker/typeUiComposite.js +16 -0
- package/dist/@linker/typeUiComposite.js.map +1 -0
- package/dist/@loader/index.d.ts +1 -0
- package/dist/@loader/index.js +17 -0
- package/dist/@loader/index.js.map +1 -0
- package/dist/@loader/nodeJsLoader.d.ts +2 -0
- package/dist/@loader/nodeJsLoader.js +19 -0
- package/dist/@loader/nodeJsLoader.js.map +1 -0
- package/dist/@loader-client/index.d.ts +33 -0
- package/dist/@loader-client/index.js +98 -0
- package/dist/@loader-client/index.js.map +1 -0
- package/dist/@loader-tools/bunJsLoader.d.ts +1 -0
- package/dist/@loader-tools/bunJsLoader.js +28 -0
- package/dist/@loader-tools/bunJsLoader.js.map +1 -0
- package/dist/@loader-tools/config.d.ts +49 -0
- package/dist/@loader-tools/config.js +79 -0
- package/dist/@loader-tools/config.js.map +1 -0
- package/dist/@loader-tools/cssModuleCompiler.d.ts +5 -0
- package/dist/@loader-tools/cssModuleCompiler.js +65 -0
- package/dist/@loader-tools/cssModuleCompiler.js.map +1 -0
- package/dist/@loader-tools/esBuildPlugin.d.ts +5 -0
- package/dist/@loader-tools/esBuildPlugin.js +113 -0
- package/dist/@loader-tools/esBuildPlugin.js.map +1 -0
- package/dist/@loader-tools/index.d.ts +9 -0
- package/dist/@loader-tools/index.js +10 -0
- package/dist/@loader-tools/index.js.map +1 -0
- package/dist/@loader-tools/jopin.d.ts +10 -0
- package/dist/@loader-tools/jopin.js +331 -0
- package/dist/@loader-tools/jopin.js.map +1 -0
- package/dist/@loader-tools/nodeJsLoader.d.ts +13 -0
- package/dist/@loader-tools/nodeJsLoader.js +101 -0
- package/dist/@loader-tools/nodeJsLoader.js.map +1 -0
- package/dist/@loader-tools/nodeJsResolver.d.ts +2 -0
- package/dist/@loader-tools/nodeJsResolver.js +117 -0
- package/dist/@loader-tools/nodeJsResolver.js.map +1 -0
- package/dist/@loader-tools/rules.d.ts +3 -0
- package/dist/@loader-tools/rules.js +33 -0
- package/dist/@loader-tools/rules.js.map +1 -0
- package/dist/@loader-tools/sourceChangesWatcher.d.ts +39 -0
- package/dist/@loader-tools/sourceChangesWatcher.js +182 -0
- package/dist/@loader-tools/sourceChangesWatcher.js.map +1 -0
- package/dist/@loader-tools/tools.d.ts +21 -0
- package/dist/@loader-tools/tools.js +113 -0
- package/dist/@loader-tools/tools.js.map +1 -0
- package/dist/@loader-tools/transform.d.ts +5 -0
- package/dist/@loader-tools/transform.js +114 -0
- package/dist/@loader-tools/transform.js.map +1 -0
- package/dist/@loader-tools/virtualUrl.d.ts +9 -0
- package/dist/@loader-tools/virtualUrl.js +40 -0
- package/dist/@loader-tools/virtualUrl.js.map +1 -0
- package/dist/@tool-jopinb/index.d.ts +1 -0
- package/dist/@tool-jopinb/index.js +9 -0
- package/dist/@tool-jopinb/index.js.map +1 -0
- package/dist/@ui/components.d.ts +27 -0
- package/dist/@ui/components.js +42 -0
- package/dist/@ui/components.js.map +1 -0
- package/dist/@ui/cssModules.d.ts +11 -0
- package/dist/@ui/cssModules.js +17 -0
- package/dist/@ui/cssModules.js.map +1 -0
- package/dist/@ui/hooks.d.ts +31 -0
- package/dist/@ui/hooks.js +71 -0
- package/dist/@ui/hooks.js.map +1 -0
- package/dist/@ui/index.d.ts +9 -0
- package/dist/@ui/index.js +11 -0
- package/dist/@ui/index.js.map +1 -0
- package/dist/@ui/internal.d.ts +4 -0
- package/dist/@ui/internal.js +10 -0
- package/dist/@ui/internal.js.map +1 -0
- package/dist/@ui/modules.d.ts +41 -0
- package/dist/@ui/modules.js +74 -0
- package/dist/@ui/modules.js.map +1 -0
- package/dist/@ui/objectRegistry.d.ts +12 -0
- package/dist/@ui/objectRegistry.js +35 -0
- package/dist/@ui/objectRegistry.js.map +1 -0
- package/dist/@ui/pageController.d.ts +61 -0
- package/dist/@ui/pageController.js +166 -0
- package/dist/@ui/pageController.js.map +1 -0
- package/dist/@ui/tools.d.ts +24 -0
- package/dist/@ui/tools.js +78 -0
- package/dist/@ui/tools.js.map +1 -0
- package/dist/@uikit/core/UiKitModule.d.ts +6 -0
- package/dist/@uikit/core/UiKitModule.js +18 -0
- package/dist/@uikit/core/UiKitModule.js.map +1 -0
- package/dist/@uikit/core/index.d.ts +1 -0
- package/dist/@uikit/core/index.js +4 -0
- package/dist/@uikit/core/index.js.map +1 -0
- package/dist/@uikit/core/jBundler_ifBrowser.d.ts +1 -0
- package/dist/@uikit/core/jBundler_ifBrowser.js +5 -0
- package/dist/@uikit/core/jBundler_ifBrowser.js.map +1 -0
- package/dist/@uikit/core/jBundler_ifServer.d.ts +6 -0
- package/dist/@uikit/core/jBundler_ifServer.js +17 -0
- package/dist/@uikit/core/jBundler_ifServer.js.map +1 -0
- package/dist/@uikit/forms/components.d.ts +18 -0
- package/dist/@uikit/forms/components.js +69 -0
- package/dist/@uikit/forms/components.js.map +1 -0
- package/dist/@uikit/forms/hooks.d.ts +4 -0
- package/dist/@uikit/forms/hooks.js +31 -0
- package/dist/@uikit/forms/hooks.js.map +1 -0
- package/dist/@uikit/forms/index.d.ts +3 -0
- package/dist/@uikit/forms/index.js +4 -0
- package/dist/@uikit/forms/index.js.map +1 -0
- package/dist/@uikit/forms/interfaces.d.ts +101 -0
- package/dist/@uikit/forms/interfaces.js +4 -0
- package/dist/@uikit/forms/interfaces.js.map +1 -0
- package/dist/@uikit/forms/private.d.ts +40 -0
- package/dist/@uikit/forms/private.js +307 -0
- package/dist/@uikit/forms/private.js.map +1 -0
- package/dist/@uikit/helpers/hooks.d.ts +33 -0
- package/dist/@uikit/helpers/hooks.js +107 -0
- package/dist/@uikit/helpers/hooks.js.map +1 -0
- package/dist/@uikit/helpers/index.d.ts +2 -0
- package/dist/@uikit/helpers/index.js +3 -0
- package/dist/@uikit/helpers/index.js.map +1 -0
- package/dist/@uikit/helpers/tools.d.ts +8 -0
- package/dist/@uikit/helpers/tools.js +35 -0
- package/dist/@uikit/helpers/tools.js.map +1 -0
- package/dist/@uikit/index.d.ts +10 -0
- package/dist/@uikit/index.js +13 -0
- package/dist/@uikit/index.js.map +1 -0
- package/dist/@uikit/menu/core.d.ts +21 -0
- package/dist/@uikit/menu/core.js +191 -0
- package/dist/@uikit/menu/core.js.map +1 -0
- package/dist/@uikit/menu/hooks.d.ts +5 -0
- package/dist/@uikit/menu/hooks.js +24 -0
- package/dist/@uikit/menu/hooks.js.map +1 -0
- package/dist/@uikit/menu/index.d.ts +3 -0
- package/dist/@uikit/menu/index.js +4 -0
- package/dist/@uikit/menu/index.js.map +1 -0
- package/dist/@uikit/menu/interfaces.d.ts +20 -0
- package/dist/@uikit/menu/interfaces.js +8 -0
- package/dist/@uikit/menu/interfaces.js.map +1 -0
- package/dist/@uikit/menu/internal.d.ts +40 -0
- package/dist/@uikit/menu/internal.js +191 -0
- package/dist/@uikit/menu/internal.js.map +1 -0
- package/dist/@uikit/reactRouter/hooks/jBundler_ifBrowser.d.ts +18 -0
- package/dist/@uikit/reactRouter/hooks/jBundler_ifBrowser.js +40 -0
- package/dist/@uikit/reactRouter/hooks/jBundler_ifBrowser.js.map +1 -0
- package/dist/@uikit/reactRouter/hooks/jBundler_ifServer.d.ts +28 -0
- package/dist/@uikit/reactRouter/hooks/jBundler_ifServer.js +35 -0
- package/dist/@uikit/reactRouter/hooks/jBundler_ifServer.js.map +1 -0
- package/dist/@uikit/reactRouter/index.d.ts +1 -0
- package/dist/@uikit/reactRouter/index.js +2 -0
- package/dist/@uikit/reactRouter/index.js.map +1 -0
- package/dist/@uikit/users/hooks.d.ts +10 -0
- package/dist/@uikit/users/hooks.js +39 -0
- package/dist/@uikit/users/hooks.js.map +1 -0
- package/dist/@uikit/users/index.d.ts +1 -0
- package/dist/@uikit/users/index.js +2 -0
- package/dist/@uikit/users/index.js.map +1 -0
- package/dist/@uikit/variants/index.d.ts +7 -0
- package/dist/@uikit/variants/index.js +16 -0
- package/dist/@uikit/variants/index.js.map +1 -0
- package/package.json +115 -0
- package/src/@bundler/README.md +1 -0
- package/src/@bundler/_logs.ts +4 -0
- package/src/@bundler/core.ts +41 -0
- package/src/@bundler/esbuild.ts +141 -0
- package/src/@bundler/index.ts +3 -0
- package/src/@bundler/plugins.ts +163 -0
- package/src/@bundler/tailwind.ts +139 -0
- package/src/@core/PageComponent.tsx +25 -0
- package/src/@core/README.md +1 -0
- package/src/@core/_logs.ts +11 -0
- package/src/@core/automaticStartStop.ts +132 -0
- package/src/@core/browserCacheControl.ts +40 -0
- package/src/@core/bundler/bundler.ts +128 -0
- package/src/@core/bundler/common.ts +18 -0
- package/src/@core/bundler/config.ts +37 -0
- package/src/@core/bundler/extraContent.ts +30 -0
- package/src/@core/bundler/pagesGenerator.ts +194 -0
- package/src/@core/bundler/server.ts +41 -0
- package/src/@core/caches/InMemoryCache.ts +483 -0
- package/src/@core/caches/SimpleFileCache.ts +205 -0
- package/src/@core/caches/cache.ts +77 -0
- package/src/@core/caches/webSiteMirrorCache.ts +90 -0
- package/src/@core/cheerio.d.ts +332 -0
- package/src/@core/gzip.ts +33 -0
- package/src/@core/index.ts +23 -0
- package/src/@core/internalTools.ts +95 -0
- package/src/@core/jQuery.ts +22 -0
- package/src/@core/jopiEasy.ts +1285 -0
- package/src/@core/jopiRequest.tsx +1279 -0
- package/src/@core/jopiServer.ts +188 -0
- package/src/@core/jopiWebSite.tsx +1027 -0
- package/src/@core/letsEncrypt.ts +243 -0
- package/src/@core/linker.ts +42 -0
- package/src/@core/loadBalancing.ts +152 -0
- package/src/@core/middlewares/CorsMiddleware.ts +23 -0
- package/src/@core/middlewares/DdosProtection.ts +120 -0
- package/src/@core/middlewares/index.ts +16 -0
- package/src/@core/publicTools.ts +14 -0
- package/src/@core/routeConfig.ts +104 -0
- package/src/@core/searchParamFilter.ts +315 -0
- package/src/@core/serverFetch.ts +454 -0
- package/src/@core/serverImpl/server_bunjs.tsx +230 -0
- package/src/@core/serverImpl/server_nodejs.ts +312 -0
- package/src/@core/serverInstanceBuilder.ts +36 -0
- package/src/@core/userStores.ts +34 -0
- package/src/@crawler/README.md +1 -0
- package/src/@crawler/common.ts +275 -0
- package/src/@crawler/core.ts +678 -0
- package/src/@crawler/directFileCache.ts +69 -0
- package/src/@crawler/index.ts +4 -0
- package/src/@crawler/urlMapping.ts +67 -0
- package/src/@crawler/utils.ts +13 -0
- package/src/@generated/index.ts +134 -0
- package/src/@linker/arobaseTypes.ts +325 -0
- package/src/@linker/changeProof.ts +53 -0
- package/src/@linker/config.ts +46 -0
- package/src/@linker/engine.ts +865 -0
- package/src/@linker/index.ts +3 -0
- package/src/@linker/install.ts +39 -0
- package/src/@linker/modInstaller.ts +50 -0
- package/src/@linker/typeEvents.ts +58 -0
- package/src/@linker/typeRoutes.ts +255 -0
- package/src/@linker/typeUiComposite.ts +19 -0
- package/src/@loader/README.md +4 -0
- package/src/@loader/bunHtmlCompiler.mjs +27 -0
- package/src/@loader/index.ts +19 -0
- package/src/@loader/loader.mjs +7 -0
- package/src/@loader/nodeJsLoader.ts +21 -0
- package/src/@loader-client/README.md +2 -0
- package/src/@loader-client/index.ts +108 -0
- package/src/@loader-tools/README.md +6 -0
- package/src/@loader-tools/bunJsLoader.ts +33 -0
- package/src/@loader-tools/config.ts +142 -0
- package/src/@loader-tools/cssModuleCompiler.ts +76 -0
- package/src/@loader-tools/esBuildPlugin.ts +142 -0
- package/src/@loader-tools/index.ts +11 -0
- package/src/@loader-tools/jopin.ts +403 -0
- package/src/@loader-tools/nodeJsLoader.ts +119 -0
- package/src/@loader-tools/nodeJsResolver.ts +140 -0
- package/src/@loader-tools/rules.ts +45 -0
- package/src/@loader-tools/sourceChangesWatcher.ts +225 -0
- package/src/@loader-tools/tools.ts +139 -0
- package/src/@loader-tools/transform.ts +138 -0
- package/src/@loader-tools/virtualUrl.ts +57 -0
- package/src/@loader-types/README.md +15 -0
- package/src/@loader-types/extensions.d.ts +65 -0
- package/src/@tool-jopinb/README.md +1 -0
- package/src/@tool-jopinb/index.ts +11 -0
- package/src/@ui/README.md +3 -0
- package/src/@ui/components.tsx +49 -0
- package/src/@ui/cssModules.tsx +27 -0
- package/src/@ui/hooks.tsx +95 -0
- package/src/@ui/index.ts +13 -0
- package/src/@ui/internal.ts +12 -0
- package/src/@ui/modules.ts +100 -0
- package/src/@ui/objectRegistry.ts +50 -0
- package/src/@ui/pageController.ts +203 -0
- package/src/@ui/tools.ts +116 -0
- package/src/@uikit/README.md +1 -0
- package/src/@uikit/core/UiKitModule.ts +20 -0
- package/src/@uikit/core/index.ts +4 -0
- package/src/@uikit/core/jBundler_ifBrowser.ts +4 -0
- package/src/@uikit/core/jBundler_ifServer.ts +18 -0
- package/src/@uikit/forms/components.tsx +97 -0
- package/src/@uikit/forms/hooks.ts +38 -0
- package/src/@uikit/forms/index.ts +3 -0
- package/src/@uikit/forms/interfaces.ts +159 -0
- package/src/@uikit/forms/private.ts +365 -0
- package/src/@uikit/helpers/hooks.ts +133 -0
- package/src/@uikit/helpers/index.ts +2 -0
- package/src/@uikit/helpers/tools.ts +39 -0
- package/src/@uikit/index.ts +15 -0
- package/src/@uikit/menu/core.ts +227 -0
- package/src/@uikit/menu/hooks.ts +28 -0
- package/src/@uikit/menu/index.ts +3 -0
- package/src/@uikit/menu/interfaces.ts +26 -0
- package/src/@uikit/menu/internal.ts +218 -0
- package/src/@uikit/package.json +15 -0
- package/src/@uikit/reactRouter/hooks/jBundler_ifBrowser.tsx +59 -0
- package/src/@uikit/reactRouter/hooks/jBundler_ifServer.tsx +51 -0
- package/src/@uikit/reactRouter/index.ts +1 -0
- package/src/@uikit/users/hooks.ts +50 -0
- package/src/@uikit/users/index.ts +1 -0
- package/src/@uikit/variants/index.tsx +20 -0
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { isServerSide } from "jopi-toolkit/jk_what";
|
|
2
|
+
export function decodeJwtToken(jwtToken) {
|
|
3
|
+
if (!jwtToken)
|
|
4
|
+
return undefined;
|
|
5
|
+
const parts = jwtToken.split('.');
|
|
6
|
+
if (parts.length !== 3)
|
|
7
|
+
return undefined;
|
|
8
|
+
const payload = parts[1];
|
|
9
|
+
const decodedPayload = atob(payload.replace(/-/g, '+').replace(/_/g, '/'));
|
|
10
|
+
return JSON.parse(decodedPayload);
|
|
11
|
+
}
|
|
12
|
+
export function isUserInfoCookieUpdated() {
|
|
13
|
+
const jwtToken = decodeNavigatorCookie("authorization");
|
|
14
|
+
return jwtToken !== gAuthorizationCookiePreviousValue;
|
|
15
|
+
}
|
|
16
|
+
export function decodeUserInfosFromCookie() {
|
|
17
|
+
if (isServerSide) {
|
|
18
|
+
return undefined;
|
|
19
|
+
}
|
|
20
|
+
let jwtToken = decodeNavigatorCookie("authorization");
|
|
21
|
+
gAuthorizationCookiePreviousValue = jwtToken;
|
|
22
|
+
return decodeJwtToken(jwtToken);
|
|
23
|
+
}
|
|
24
|
+
let gAuthorizationCookiePreviousValue = "";
|
|
25
|
+
//endregion
|
|
26
|
+
//region Cookies
|
|
27
|
+
export function setCookie(name, value, maxAge) {
|
|
28
|
+
if (isServerSide)
|
|
29
|
+
return;
|
|
30
|
+
let cookieStr = `${name}=${value}; path=/`;
|
|
31
|
+
if (maxAge !== undefined) {
|
|
32
|
+
cookieStr += `; max-age=${maxAge}`;
|
|
33
|
+
}
|
|
34
|
+
document.cookie = cookieStr;
|
|
35
|
+
}
|
|
36
|
+
export function deleteCookie(name) {
|
|
37
|
+
if (isServerSide)
|
|
38
|
+
return;
|
|
39
|
+
let current = decodeNavigatorCookie(name);
|
|
40
|
+
if (current === undefined)
|
|
41
|
+
return;
|
|
42
|
+
document.cookie = `${name}=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;`;
|
|
43
|
+
// Allow to be ok until document.cookie is refreshed.
|
|
44
|
+
delete gCookies[name];
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Returns the value of the cookie.
|
|
48
|
+
* Works browser side and server side.
|
|
49
|
+
*
|
|
50
|
+
* @param name
|
|
51
|
+
* The name of the cookie we want.
|
|
52
|
+
*/
|
|
53
|
+
export function decodeNavigatorCookie(name) {
|
|
54
|
+
if (isServerSide) {
|
|
55
|
+
return "";
|
|
56
|
+
}
|
|
57
|
+
let currentCookies = document.cookie;
|
|
58
|
+
if (gCookies) {
|
|
59
|
+
if (gCookieString !== currentCookies) {
|
|
60
|
+
gCookieString = currentCookies;
|
|
61
|
+
gCookies = undefined;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
if (!gCookies) {
|
|
65
|
+
gCookies = {};
|
|
66
|
+
currentCookies.split(';').forEach(c => {
|
|
67
|
+
c = c.trim();
|
|
68
|
+
let idx = c.indexOf("=");
|
|
69
|
+
gCookies[c.substring(0, idx)] = c.substring(idx + 1);
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
return gCookies[name];
|
|
73
|
+
}
|
|
74
|
+
//
|
|
75
|
+
let gCookies;
|
|
76
|
+
let gCookieString = "";
|
|
77
|
+
//endregion
|
|
78
|
+
//# sourceMappingURL=tools.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/@ui/tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { ModuleInitContext } from "jopijs/ui";
|
|
2
|
+
import { MenuManager } from "../menu/index.js";
|
|
3
|
+
import { getDefaultMenuManager } from "../menu/internal.js";
|
|
4
|
+
export class UiKitModule extends ModuleInitContext {
|
|
5
|
+
initialize() {
|
|
6
|
+
this.objectRegistry.addObjectBuilder("uikit.menuManager", () => {
|
|
7
|
+
if (this.isBrowserSide) {
|
|
8
|
+
return getDefaultMenuManager();
|
|
9
|
+
}
|
|
10
|
+
const mustRemoveTrailingSlashs = this.host.mustRemoveTrailingSlashs;
|
|
11
|
+
return new MenuManager(mustRemoveTrailingSlashs, this.getCurrentURL());
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
getMenuManager() {
|
|
15
|
+
return this.objectRegistry.getObject("uikit.menuManager");
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=UiKitModule.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UiKitModule.js","sourceRoot":"","sources":["../../../src/@uikit/core/UiKitModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,iBAAiB,EAAC,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAC,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAC,qBAAqB,EAAC,MAAM,qBAAqB,CAAC;AAE1D,MAAM,OAAO,WAAY,SAAQ,iBAAiB;IAC3B,UAAU;QACzB,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,mBAAmB,EAAE,GAAG,EAAE;YAC3D,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBACrB,OAAO,qBAAqB,EAAE,CAAC;YACnC,CAAC;YAED,MAAM,wBAAwB,GAAG,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC;YACpE,OAAO,IAAI,WAAW,CAAC,wBAAwB,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAC3E,CAAC,CAAC,CAAC;IACP,CAAC;IAED,cAAc;QACV,OAAO,IAAI,CAAC,cAAc,CAAC,SAAS,CAAc,mBAAmB,CAAE,CAAC;IAC5E,CAAC;CACJ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./UiKitModule.ts";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/@uikit/core/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAC,aAAa,EAAC,MAAM,wBAAwB,CAAC;AAErD,aAAa,EAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function registerUiKit(): void;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jBundler_ifBrowser.js","sourceRoot":"","sources":["../../../src/@uikit/core/jBundler_ifBrowser.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,aAAa;IACzB,oDAAoD;IACpD,sEAAsE;AAC1E,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import * as jk_event from "jopi-toolkit/jk_events";
|
|
2
|
+
import { UiKitModule } from "./UiKitModule.js";
|
|
3
|
+
/**
|
|
4
|
+
* Must be called manually from the server-side init to enable UiKit.
|
|
5
|
+
* This will allow replacing the instance of ModuleInitContext
|
|
6
|
+
* by an instance of UiKitModule.
|
|
7
|
+
*/
|
|
8
|
+
export function registerUiKit() {
|
|
9
|
+
// We want to replace the creation of the object ModuleInitContext
|
|
10
|
+
// with our own implementation, which extend the core functionalities.
|
|
11
|
+
//
|
|
12
|
+
jk_event.addListener("jopi.server.install.done", (webSite) => {
|
|
13
|
+
// @ts-ignore It doesn't correctly cast references.
|
|
14
|
+
webSite.setModuleInitClassInstancier(host => new UiKitModule(host));
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=jBundler_ifServer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jBundler_ifServer.js","sourceRoot":"","sources":["../../../src/@uikit/core/jBundler_ifServer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,wBAAwB,CAAC;AAEnD,OAAO,EAAC,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAE7C;;;;GAIG;AACH,MAAM,UAAU,aAAa;IACzB,kEAAkE;IAClE,sEAAsE;IACtE,EAAE;IACF,QAAQ,CAAC,WAAW,CAAU,0BAA0B,EAAE,CAAC,OAAO,EAAE,EAAE;QAClE,mDAAmD;QAClD,OAAuB,CAAC,4BAA4B,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;IACzF,CAAC,CAAC,CAAC;AACP,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { type JAutoFormFieldProps, type JCheckboxFormFieldProps, type JFormMessageProps, type JInputFormFieldProps, type JFormComponentProps, type JFormController, type JNumberFormFieldProps, type JFileSelectFieldProps } from "./interfaces.ts";
|
|
3
|
+
export declare function JForm({ children, className, variants, ...p }: JFormComponentProps & {
|
|
4
|
+
children: React.ReactNode;
|
|
5
|
+
className?: string;
|
|
6
|
+
variants?: any;
|
|
7
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export declare function JFormStateListener({ custom, ifSubmitted, ifNotSubmitted }: {
|
|
9
|
+
ifSubmitted?: React.ReactNode;
|
|
10
|
+
ifNotSubmitted?: React.ReactNode;
|
|
11
|
+
custom?: (form: JFormController) => React.ReactNode;
|
|
12
|
+
}): React.ReactNode;
|
|
13
|
+
export declare function JAutoFormField({ variant, ...p }: JAutoFormFieldProps): import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
export declare function JFormMessage(p: JFormMessageProps): import("react/jsx-runtime").JSX.Element | null;
|
|
15
|
+
export declare function JTextFormField({ variant, ...p }: JInputFormFieldProps): import("react/jsx-runtime").JSX.Element;
|
|
16
|
+
export declare function JNumberFormField({ variant, ...p }: JNumberFormFieldProps): import("react/jsx-runtime").JSX.Element;
|
|
17
|
+
export declare function JCheckboxFormField({ variant, ...p }: JCheckboxFormFieldProps): import("react/jsx-runtime").JSX.Element;
|
|
18
|
+
export declare function JFileSelectField({ variant, ...p }: JFileSelectFieldProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
// noinspection JSUnusedGlobalSymbols
|
|
3
|
+
import React, { useRef } from "react";
|
|
4
|
+
import { useVariant, VariantContext } from "../variants/index.js";
|
|
5
|
+
import {} from "./interfaces.js";
|
|
6
|
+
import { FormContext, JFormControllerImpl } from "./private.js";
|
|
7
|
+
import { useJForm, useJFormField, UseJFormMessage } from "./hooks.js";
|
|
8
|
+
export function JForm({ children, className, variants, ...p }) {
|
|
9
|
+
const formRef = useRef(null);
|
|
10
|
+
const ref = useRef(new JFormControllerImpl(p, formRef));
|
|
11
|
+
const onSubmit = async (e) => {
|
|
12
|
+
e.preventDefault();
|
|
13
|
+
await ref.current.submit();
|
|
14
|
+
};
|
|
15
|
+
return _jsx(FormContext.Provider, { value: ref.current, children: _jsx(VariantContext.Provider, { value: variants, children: _jsx("form", { ref: formRef, className: className, onSubmit: onSubmit, children: children }) }) });
|
|
16
|
+
}
|
|
17
|
+
export function JFormStateListener({ custom, ifSubmitted, ifNotSubmitted }) {
|
|
18
|
+
const form = useJForm();
|
|
19
|
+
if (form.submitted || form.submitting) {
|
|
20
|
+
if (ifSubmitted)
|
|
21
|
+
return ifSubmitted;
|
|
22
|
+
}
|
|
23
|
+
else {
|
|
24
|
+
if (ifNotSubmitted)
|
|
25
|
+
return ifNotSubmitted;
|
|
26
|
+
}
|
|
27
|
+
return custom?.(form);
|
|
28
|
+
}
|
|
29
|
+
function renderField(variantName, p) {
|
|
30
|
+
const field = useJFormField(p.name);
|
|
31
|
+
if (!field)
|
|
32
|
+
return _jsx("div", { style: { color: "red" }, children: _jsxs("strong", { children: ["Form error: the field '", p.name, "' doesn't exist."] }) });
|
|
33
|
+
p = { ...p };
|
|
34
|
+
if (p.title === undefined)
|
|
35
|
+
p.title = field.title;
|
|
36
|
+
if (p.description === undefined)
|
|
37
|
+
p.description = field.description;
|
|
38
|
+
if (p.placeholder === undefined)
|
|
39
|
+
p.placeholder = field.placeholder;
|
|
40
|
+
if (!variantName) {
|
|
41
|
+
variantName = field.variantName;
|
|
42
|
+
}
|
|
43
|
+
const V = useVariant(variantName, p.variant);
|
|
44
|
+
return _jsx(V, { ...p, field: field });
|
|
45
|
+
}
|
|
46
|
+
export function JAutoFormField({ variant, ...p }) {
|
|
47
|
+
return renderField(undefined, p);
|
|
48
|
+
}
|
|
49
|
+
//region Form Types
|
|
50
|
+
export function JFormMessage(p) {
|
|
51
|
+
const message = UseJFormMessage();
|
|
52
|
+
if (!message)
|
|
53
|
+
return null;
|
|
54
|
+
const V = useVariant("FormMessage", p.variant);
|
|
55
|
+
return _jsx(V, { ...p, message: message });
|
|
56
|
+
}
|
|
57
|
+
export function JTextFormField({ variant, ...p }) {
|
|
58
|
+
return renderField("TextFormField", p);
|
|
59
|
+
}
|
|
60
|
+
export function JNumberFormField({ variant, ...p }) {
|
|
61
|
+
return renderField("NumberFormField", p);
|
|
62
|
+
}
|
|
63
|
+
export function JCheckboxFormField({ variant, ...p }) {
|
|
64
|
+
return renderField("CheckboxFormField", p);
|
|
65
|
+
}
|
|
66
|
+
export function JFileSelectField({ variant, ...p }) {
|
|
67
|
+
return renderField("FileSelectField", p);
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=components.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components.js","sourceRoot":"","sources":["../../../src/@uikit/forms/components.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { JMessage, JFieldController, JFormController } from "./interfaces.ts";
|
|
2
|
+
export declare function useJForm(): JFormController;
|
|
3
|
+
export declare function UseJFormMessage(): JMessage | undefined;
|
|
4
|
+
export declare function useJFormField(name: string): JFieldController;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import React, { useContext, useEffect } from "react";
|
|
2
|
+
import { FormContext, JFormControllerImpl } from "./private.js";
|
|
3
|
+
export function useJForm() {
|
|
4
|
+
const theForm = useContext(FormContext);
|
|
5
|
+
if (!theForm)
|
|
6
|
+
throw new Error("useJForm must be used within a JForm component.");
|
|
7
|
+
const [_, setCounter] = React.useState(0);
|
|
8
|
+
useEffect(() => {
|
|
9
|
+
function eventHandler() {
|
|
10
|
+
// Here use prevCount to always have the update counter value.
|
|
11
|
+
setCounter(prevCount => prevCount + 1);
|
|
12
|
+
}
|
|
13
|
+
theForm.addStateChangeListener(eventHandler);
|
|
14
|
+
return () => { theForm.removeStateChangeListener(eventHandler); };
|
|
15
|
+
}, []);
|
|
16
|
+
return theForm;
|
|
17
|
+
}
|
|
18
|
+
export function UseJFormMessage() {
|
|
19
|
+
let form = useJForm();
|
|
20
|
+
return form.formMessage;
|
|
21
|
+
}
|
|
22
|
+
export function useJFormField(name) {
|
|
23
|
+
const [_, setCounter] = React.useState(0);
|
|
24
|
+
const form = useJForm();
|
|
25
|
+
let thisField = form.getField(name);
|
|
26
|
+
if (!thisField)
|
|
27
|
+
return undefined;
|
|
28
|
+
thisField.onStateChange = () => { setCounter(prev => prev + 1); };
|
|
29
|
+
return thisField;
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=hooks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../src/@uikit/forms/hooks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAC,UAAU,EAAE,SAAS,EAAC,MAAM,OAAO,CAAC;AAEnD,OAAO,EAAC,WAAW,EAAE,mBAAmB,EAAC,MAAM,cAAc,CAAC;AAE9D,MAAM,UAAU,QAAQ;IACpB,MAAM,OAAO,GAAG,UAAU,CAAC,WAAW,CAAwB,CAAC;IAC/D,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IAEjF,MAAM,CAAC,CAAC,EAAE,UAAU,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAE1C,SAAS,CAAC,GAAG,EAAE;QACX,SAAS,YAAY;YACjB,8DAA8D;YAC9D,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,GAAC,CAAC,CAAC,CAAC;QACzC,CAAC;QAED,OAAO,CAAC,sBAAsB,CAAC,YAAY,CAAC,CAAC;QAC7C,OAAO,GAAG,EAAE,GAAG,OAAO,CAAC,yBAAyB,CAAC,YAAY,CAAC,CAAA,CAAC,CAAC,CAAC;IACrE,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,OAAO,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,eAAe;IAC3B,IAAI,IAAI,GAAG,QAAQ,EAAE,CAAC;IACtB,OAAO,IAAI,CAAC,WAAW,CAAA;AAC3B,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,IAAY;IACtC,MAAM,CAAC,CAAC,EAAE,UAAU,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC1C,MAAM,IAAI,GAAG,QAAQ,EAAyB,CAAC;IAE/C,IAAI,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACpC,IAAI,CAAC,SAAS;QAAE,OAAO,SAAwC,CAAC;IAEhE,SAAS,CAAC,aAAa,GAAG,GAAG,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,CAAA,CAAC,CAAC,CAAC;IACjE,OAAO,SAAS,CAAC;AACrB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/@uikit/forms/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import type { UiText } from "../helpers/tools";
|
|
2
|
+
import { type Schema, type ValidationErrors } from "jopi-toolkit/jk_schema";
|
|
3
|
+
import React from "react";
|
|
4
|
+
export type SubmitFunction = (params: {
|
|
5
|
+
data: any;
|
|
6
|
+
form: JFormController;
|
|
7
|
+
hasFiles: boolean;
|
|
8
|
+
}) => Promise<JMessage | undefined | void> | JMessage | undefined | void;
|
|
9
|
+
export interface JFormComponentProps {
|
|
10
|
+
schema: Schema;
|
|
11
|
+
action?: string;
|
|
12
|
+
submit?: SubmitFunction;
|
|
13
|
+
}
|
|
14
|
+
export interface JFieldController {
|
|
15
|
+
form: JFormController;
|
|
16
|
+
variantName: string;
|
|
17
|
+
name: string;
|
|
18
|
+
type: string;
|
|
19
|
+
error: boolean;
|
|
20
|
+
errorMessage?: string;
|
|
21
|
+
title?: string;
|
|
22
|
+
description?: string;
|
|
23
|
+
placeholder?: string;
|
|
24
|
+
value: any;
|
|
25
|
+
oldValue: any;
|
|
26
|
+
onChange: (value: any) => void;
|
|
27
|
+
valueConverter: (value: any, isTyping: boolean) => any;
|
|
28
|
+
minLength?: number;
|
|
29
|
+
errorMessage_minLength?: string;
|
|
30
|
+
maxLength?: number;
|
|
31
|
+
errorMessage_maxLength?: string;
|
|
32
|
+
minValue?: number;
|
|
33
|
+
errorMessage_minValue?: string;
|
|
34
|
+
maxValue?: number;
|
|
35
|
+
errorMessage_maxValue?: string;
|
|
36
|
+
allowDecimal?: boolean;
|
|
37
|
+
roundMethod?: "round" | "floor" | "ceil";
|
|
38
|
+
errorMessage_dontAllowDecimal?: string;
|
|
39
|
+
incrStep?: number;
|
|
40
|
+
maxFileCount?: number;
|
|
41
|
+
errorMessage_maxFileCount?: string;
|
|
42
|
+
acceptFileType?: string;
|
|
43
|
+
errorMessage_invalidFileType?: string;
|
|
44
|
+
maxFileSize?: number;
|
|
45
|
+
errorMessage_maxFileSize?: string;
|
|
46
|
+
requireTrue?: boolean;
|
|
47
|
+
errorMessage_requireTrue?: string;
|
|
48
|
+
requireFalse?: boolean;
|
|
49
|
+
errorMessage_requireFalse?: string;
|
|
50
|
+
}
|
|
51
|
+
export interface JFormController {
|
|
52
|
+
error: boolean;
|
|
53
|
+
submitting: boolean;
|
|
54
|
+
submitted: boolean;
|
|
55
|
+
formMessage?: JMessage;
|
|
56
|
+
getData<T = any>(): T;
|
|
57
|
+
getFormData(): FormData;
|
|
58
|
+
getSubmitUrl(): string;
|
|
59
|
+
sendFormData(url?: string): Promise<JMessage>;
|
|
60
|
+
sendJsonData(url?: string): Promise<JMessage>;
|
|
61
|
+
}
|
|
62
|
+
export interface JMessage {
|
|
63
|
+
isOk: boolean;
|
|
64
|
+
isSubmitted: boolean;
|
|
65
|
+
message?: string;
|
|
66
|
+
code?: string;
|
|
67
|
+
fieldErrors?: ValidationErrors;
|
|
68
|
+
}
|
|
69
|
+
export interface JFieldProps {
|
|
70
|
+
name: string;
|
|
71
|
+
title?: UiText;
|
|
72
|
+
description?: UiText;
|
|
73
|
+
placeholder?: string;
|
|
74
|
+
variant?: React.FC<unknown>;
|
|
75
|
+
id?: string;
|
|
76
|
+
className?: string;
|
|
77
|
+
}
|
|
78
|
+
export interface JFormMessageProps {
|
|
79
|
+
id?: string;
|
|
80
|
+
className?: string;
|
|
81
|
+
variant?: React.FC<unknown>;
|
|
82
|
+
isBefore?: boolean;
|
|
83
|
+
message?: JMessage;
|
|
84
|
+
errorMessage?: UiText;
|
|
85
|
+
submittedMessage?: UiText | false;
|
|
86
|
+
fieldErrorMessage?: UiText | false;
|
|
87
|
+
}
|
|
88
|
+
export interface JInputFormFieldProps extends JFieldProps {
|
|
89
|
+
}
|
|
90
|
+
export interface JCheckboxFormFieldProps extends JFieldProps {
|
|
91
|
+
defaultChecked?: boolean;
|
|
92
|
+
}
|
|
93
|
+
export interface JFileSelectFieldProps extends JFieldProps {
|
|
94
|
+
}
|
|
95
|
+
export interface JNumberFormFieldProps extends JFieldProps {
|
|
96
|
+
minValue?: number;
|
|
97
|
+
maxValue?: number;
|
|
98
|
+
incrStep?: number;
|
|
99
|
+
}
|
|
100
|
+
export interface JAutoFormFieldProps extends JInputFormFieldProps, JCheckboxFormFieldProps, JNumberFormFieldProps {
|
|
101
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../src/@uikit/forms/interfaces.ts"],"names":[],"mappings":"AACA,OAAO,EAAoC,MAAM,wBAAwB,CAAC;AAC1E,OAAO,KAAK,MAAM,OAAO,CAAC;AA4J1B,WAAW"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import type { JMessage, JFieldController, JFormComponentProps, JFormController } from "./interfaces.ts";
|
|
3
|
+
import type { ValidationErrors } from "jopi-toolkit/jk_schema";
|
|
4
|
+
export declare const FormContext: React.Context<JFormController>;
|
|
5
|
+
interface JFieldController_Private extends JFieldController {
|
|
6
|
+
onStateChange?: () => void;
|
|
7
|
+
}
|
|
8
|
+
export declare class JFormControllerImpl implements JFormController {
|
|
9
|
+
private props;
|
|
10
|
+
private readonly formRef;
|
|
11
|
+
private readonly fields;
|
|
12
|
+
private readonly jsonSchema;
|
|
13
|
+
private readonly onStateChange;
|
|
14
|
+
private readonly submitHandler?;
|
|
15
|
+
private autoRevalidate;
|
|
16
|
+
private hasFiles;
|
|
17
|
+
error: boolean;
|
|
18
|
+
submitting: boolean;
|
|
19
|
+
submitted: boolean;
|
|
20
|
+
formMessage?: JMessage;
|
|
21
|
+
constructor(props: JFormComponentProps, formRef: React.RefObject<HTMLFormElement | null>);
|
|
22
|
+
getData<T = any>(): T;
|
|
23
|
+
getFormData(): FormData;
|
|
24
|
+
getSubmitUrl(): string;
|
|
25
|
+
sendJsonData(url?: string): Promise<JMessage>;
|
|
26
|
+
sendFormData(url?: string): Promise<JMessage>;
|
|
27
|
+
private processSendToServerResponse;
|
|
28
|
+
private setFormMessage;
|
|
29
|
+
submit(): Promise<JMessage | undefined>;
|
|
30
|
+
validate(): ValidationErrors | undefined;
|
|
31
|
+
private validateAux;
|
|
32
|
+
getField(name: string): JFieldController_Private | undefined;
|
|
33
|
+
private declareState_Submitting;
|
|
34
|
+
private declareState_Submitted;
|
|
35
|
+
private declareState_Error;
|
|
36
|
+
private declareState_Reset;
|
|
37
|
+
addStateChangeListener(l: () => void): void;
|
|
38
|
+
removeStateChangeListener(l: () => void): void;
|
|
39
|
+
}
|
|
40
|
+
export {};
|