libmodulor 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +10 -2
- package/LICENSE +165 -0
- package/MAINTAINERS.md +1 -0
- package/README.md +71 -1339
- package/dist/esm/app/i18n.d.ts +2 -0
- package/dist/esm/app/i18n.js +1 -0
- package/dist/esm/app/index.d.ts +8 -0
- package/dist/esm/app/index.js +5 -0
- package/dist/esm/app/installer.d.ts +4 -0
- package/dist/esm/app/installer.js +1 -0
- package/dist/esm/app/manifest.d.ts +14 -0
- package/dist/esm/app/manifest.js +1 -0
- package/dist/esm/app/workers/AppManifestLoader.d.ts +15 -0
- package/dist/esm/app/workers/AppManifestLoader.js +56 -0
- package/dist/esm/app/workers/AppSrcBrowser.d.ts +19 -0
- package/dist/esm/app/workers/AppSrcBrowser.js +59 -0
- package/dist/esm/app/workers/AppSrcFilePathBuilder.d.ts +19 -0
- package/dist/esm/app/workers/AppSrcFilePathBuilder.js +48 -0
- package/dist/esm/app/workers/AppUCsLoader.d.ts +22 -0
- package/dist/esm/app/workers/AppUCsLoader.js +65 -0
- package/dist/esm/app/workers/UCDefLoader.d.ts +15 -0
- package/dist/esm/app/workers/UCDefLoader.js +57 -0
- package/dist/esm/apps/Helper/index.d.ts +2 -0
- package/dist/esm/apps/Helper/index.js +2 -0
- package/dist/esm/apps/Helper/src/i18n.d.ts +2 -0
- package/dist/esm/apps/Helper/src/i18n.js +18 -0
- package/dist/esm/apps/Helper/src/lib/app.d.ts +6 -0
- package/dist/esm/apps/Helper/src/lib/app.js +12 -0
- package/dist/esm/apps/Helper/src/manifest.d.ts +22 -0
- package/dist/esm/apps/Helper/src/manifest.js +22 -0
- package/dist/esm/apps/Helper/src/ucds/DeleteGeneratedAppsTestsUCD.d.ts +5 -0
- package/dist/esm/apps/Helper/src/ucds/DeleteGeneratedAppsTestsUCD.js +70 -0
- package/dist/esm/apps/Helper/src/ucds/GenerateAppsTestsUCD.d.ts +12 -0
- package/dist/esm/apps/Helper/src/ucds/GenerateAppsTestsUCD.js +106 -0
- package/dist/esm/apps/Helper/src/ucds/TestAppUCD.d.ts +9 -0
- package/dist/esm/apps/Helper/src/ucds/TestAppUCD.js +103 -0
- package/dist/esm/bundlers/vite/StripUCDLifecycleServerPlugin.d.ts +2 -0
- package/dist/esm/bundlers/vite/StripUCDLifecycleServerPlugin.js +15 -0
- package/dist/esm/convention.d.ts +42 -0
- package/dist/esm/convention.js +40 -0
- package/dist/esm/dt/DataType.d.ts +68 -0
- package/dist/esm/dt/DataType.js +1 -0
- package/dist/esm/dt/DataTypes.d.ts +2 -0
- package/dist/esm/dt/DataTypes.js +68 -0
- package/dist/esm/dt/Validation.d.ts +25 -0
- package/dist/esm/dt/Validation.js +42 -0
- package/dist/esm/dt/base/TBase.d.ts +66 -0
- package/dist/esm/dt/base/TBase.js +120 -0
- package/dist/esm/dt/base/TBoolean.d.ts +10 -0
- package/dist/esm/dt/base/TBoolean.js +38 -0
- package/dist/esm/dt/base/TInt.d.ts +20 -0
- package/dist/esm/dt/base/TInt.js +53 -0
- package/dist/esm/dt/base/TNumber.d.ts +31 -0
- package/dist/esm/dt/base/TNumber.js +83 -0
- package/dist/esm/dt/base/TObject.d.ts +18 -0
- package/dist/esm/dt/base/TObject.js +66 -0
- package/dist/esm/dt/base/TString.d.ts +22 -0
- package/dist/esm/dt/base/TString.js +62 -0
- package/dist/esm/dt/base/TUInt.d.ts +12 -0
- package/dist/esm/dt/base/TUInt.js +18 -0
- package/dist/esm/dt/final/TAddress.d.ts +7 -0
- package/dist/esm/dt/final/TAddress.js +9 -0
- package/dist/esm/dt/final/TAmount.d.ts +13 -0
- package/dist/esm/dt/final/TAmount.js +27 -0
- package/dist/esm/dt/final/TApiKey.d.ts +10 -0
- package/dist/esm/dt/final/TApiKey.js +15 -0
- package/dist/esm/dt/final/TBarCode.d.ts +7 -0
- package/dist/esm/dt/final/TBarCode.js +9 -0
- package/dist/esm/dt/final/TCSS.d.ts +8 -0
- package/dist/esm/dt/final/TCSS.js +12 -0
- package/dist/esm/dt/final/TColor.d.ts +9 -0
- package/dist/esm/dt/final/TColor.js +12 -0
- package/dist/esm/dt/final/TColorRGBA.d.ts +11 -0
- package/dist/esm/dt/final/TColorRGBA.js +19 -0
- package/dist/esm/dt/final/TCompanyName.d.ts +7 -0
- package/dist/esm/dt/final/TCompanyName.js +9 -0
- package/dist/esm/dt/final/TCountryISO3166Alpha2.d.ts +10 -0
- package/dist/esm/dt/final/TCountryISO3166Alpha2.js +270 -0
- package/dist/esm/dt/final/TCurrencyISO4217.d.ts +15 -0
- package/dist/esm/dt/final/TCurrencyISO4217.js +24 -0
- package/dist/esm/dt/final/TDateISO8601.d.ts +12 -0
- package/dist/esm/dt/final/TDateISO8601.js +29 -0
- package/dist/esm/dt/final/TDateTimeFormat.d.ts +7 -0
- package/dist/esm/dt/final/TDateTimeFormat.js +9 -0
- package/dist/esm/dt/final/TDirPath.d.ts +9 -0
- package/dist/esm/dt/final/TDirPath.js +16 -0
- package/dist/esm/dt/final/TDomainName.d.ts +13 -0
- package/dist/esm/dt/final/TDomainName.js +22 -0
- package/dist/esm/dt/final/TEmail.d.ts +13 -0
- package/dist/esm/dt/final/TEmail.js +22 -0
- package/dist/esm/dt/final/TEmbeddedObject.d.ts +6 -0
- package/dist/esm/dt/final/TEmbeddedObject.js +10 -0
- package/dist/esm/dt/final/TEmoji.d.ts +7 -0
- package/dist/esm/dt/final/TEmoji.js +9 -0
- package/dist/esm/dt/final/TEncryptionKey.d.ts +10 -0
- package/dist/esm/dt/final/TEncryptionKey.js +15 -0
- package/dist/esm/dt/final/TErrorMessage.d.ts +7 -0
- package/dist/esm/dt/final/TErrorMessage.js +9 -0
- package/dist/esm/dt/final/TExternalServiceId.d.ts +7 -0
- package/dist/esm/dt/final/TExternalServiceId.js +9 -0
- package/dist/esm/dt/final/TFile.d.ts +23 -0
- package/dist/esm/dt/final/TFile.js +41 -0
- package/dist/esm/dt/final/TFileExtension.d.ts +15 -0
- package/dist/esm/dt/final/TFileExtension.js +15 -0
- package/dist/esm/dt/final/TFileMimeType.d.ts +11 -0
- package/dist/esm/dt/final/TFileMimeType.js +15 -0
- package/dist/esm/dt/final/TFileName.d.ts +7 -0
- package/dist/esm/dt/final/TFileName.js +9 -0
- package/dist/esm/dt/final/TFilePath.d.ts +9 -0
- package/dist/esm/dt/final/TFilePath.js +16 -0
- package/dist/esm/dt/final/TFreeTextLong.d.ts +8 -0
- package/dist/esm/dt/final/TFreeTextLong.js +12 -0
- package/dist/esm/dt/final/TFreeTextShort.d.ts +7 -0
- package/dist/esm/dt/final/TFreeTextShort.js +9 -0
- package/dist/esm/dt/final/TGeolocation.d.ts +12 -0
- package/dist/esm/dt/final/TGeolocation.js +20 -0
- package/dist/esm/dt/final/TGitSSHURL.d.ts +11 -0
- package/dist/esm/dt/final/TGitSSHURL.js +17 -0
- package/dist/esm/dt/final/THTML.d.ts +8 -0
- package/dist/esm/dt/final/THTML.js +12 -0
- package/dist/esm/dt/final/THTTPContentType.d.ts +9 -0
- package/dist/esm/dt/final/THTTPContentType.js +20 -0
- package/dist/esm/dt/final/THTTPMethod.d.ts +9 -0
- package/dist/esm/dt/final/THTTPMethod.js +24 -0
- package/dist/esm/dt/final/THTTPStatusNumber.d.ts +10 -0
- package/dist/esm/dt/final/THTTPStatusNumber.js +27 -0
- package/dist/esm/dt/final/THostAddress.d.ts +7 -0
- package/dist/esm/dt/final/THostAddress.js +9 -0
- package/dist/esm/dt/final/THostPort.d.ts +8 -0
- package/dist/esm/dt/final/THostPort.js +15 -0
- package/dist/esm/dt/final/TIPv4.d.ts +9 -0
- package/dist/esm/dt/final/TIPv4.js +16 -0
- package/dist/esm/dt/final/TIPv6.d.ts +9 -0
- package/dist/esm/dt/final/TIPv6.js +16 -0
- package/dist/esm/dt/final/TJSONString.d.ts +10 -0
- package/dist/esm/dt/final/TJSONString.js +25 -0
- package/dist/esm/dt/final/TJWT.d.ts +12 -0
- package/dist/esm/dt/final/TJWT.js +41 -0
- package/dist/esm/dt/final/TJavaScript.d.ts +8 -0
- package/dist/esm/dt/final/TJavaScript.js +12 -0
- package/dist/esm/dt/final/TJobTitle.d.ts +7 -0
- package/dist/esm/dt/final/TJobTitle.js +9 -0
- package/dist/esm/dt/final/TMarkdown.d.ts +8 -0
- package/dist/esm/dt/final/TMarkdown.js +12 -0
- package/dist/esm/dt/final/TNumIndex.d.ts +7 -0
- package/dist/esm/dt/final/TNumIndex.js +9 -0
- package/dist/esm/dt/final/TPassword.d.ts +10 -0
- package/dist/esm/dt/final/TPassword.js +15 -0
- package/dist/esm/dt/final/TPercentage.d.ts +10 -0
- package/dist/esm/dt/final/TPercentage.js +21 -0
- package/dist/esm/dt/final/TPersonFirstname.d.ts +9 -0
- package/dist/esm/dt/final/TPersonFirstname.js +19 -0
- package/dist/esm/dt/final/TPersonFullname.d.ts +11 -0
- package/dist/esm/dt/final/TPersonFullname.js +19 -0
- package/dist/esm/dt/final/TPersonInitials.d.ts +9 -0
- package/dist/esm/dt/final/TPersonInitials.js +19 -0
- package/dist/esm/dt/final/TPersonLastname.d.ts +9 -0
- package/dist/esm/dt/final/TPersonLastname.js +19 -0
- package/dist/esm/dt/final/TQRCode.d.ts +9 -0
- package/dist/esm/dt/final/TQRCode.js +19 -0
- package/dist/esm/dt/final/TSQLQuery.d.ts +8 -0
- package/dist/esm/dt/final/TSQLQuery.js +12 -0
- package/dist/esm/dt/final/TSSHPrivateKey.d.ts +16 -0
- package/dist/esm/dt/final/TSSHPrivateKey.js +26 -0
- package/dist/esm/dt/final/TSSHPublicKey.d.ts +13 -0
- package/dist/esm/dt/final/TSSHPublicKey.js +27 -0
- package/dist/esm/dt/final/TSearchQuery.d.ts +19 -0
- package/dist/esm/dt/final/TSearchQuery.js +23 -0
- package/dist/esm/dt/final/TSemVerVersion.d.ts +9 -0
- package/dist/esm/dt/final/TSemVerVersion.js +19 -0
- package/dist/esm/dt/final/TShellCommand.d.ts +8 -0
- package/dist/esm/dt/final/TShellCommand.js +12 -0
- package/dist/esm/dt/final/TSlug.d.ts +9 -0
- package/dist/esm/dt/final/TSlug.js +16 -0
- package/dist/esm/dt/final/TTime.d.ts +13 -0
- package/dist/esm/dt/final/TTime.js +22 -0
- package/dist/esm/dt/final/TTimestamp.d.ts +7 -0
- package/dist/esm/dt/final/TTimestamp.js +9 -0
- package/dist/esm/dt/final/TUIntDuration.d.ts +7 -0
- package/dist/esm/dt/final/TUIntDuration.js +9 -0
- package/dist/esm/dt/final/TUIntQuantity.d.ts +7 -0
- package/dist/esm/dt/final/TUIntQuantity.js +9 -0
- package/dist/esm/dt/final/TURL.d.ts +16 -0
- package/dist/esm/dt/final/TURL.js +32 -0
- package/dist/esm/dt/final/TURLPath.d.ts +7 -0
- package/dist/esm/dt/final/TURLPath.js +9 -0
- package/dist/esm/dt/final/TUUID.d.ts +9 -0
- package/dist/esm/dt/final/TUUID.js +16 -0
- package/dist/esm/dt/final/TUsername.d.ts +7 -0
- package/dist/esm/dt/final/TUsername.js +9 -0
- package/dist/esm/dt/final/TYesNo.d.ts +9 -0
- package/dist/esm/dt/final/TYesNo.js +20 -0
- package/dist/esm/dt/index.d.ts +78 -0
- package/dist/esm/dt/index.js +75 -0
- package/dist/esm/dt/targets/rn.d.ts +1 -0
- package/dist/esm/dt/targets/rn.js +1 -0
- package/dist/esm/dt/targets/web.d.ts +1 -0
- package/dist/esm/dt/targets/web.js +1 -0
- package/dist/esm/error/CustomError.d.ts +10 -0
- package/dist/esm/error/CustomError.js +13 -0
- package/dist/esm/error/ForbiddenAsNotFoundError.d.ts +6 -0
- package/dist/esm/error/ForbiddenAsNotFoundError.js +9 -0
- package/dist/esm/error/ForbiddenError.d.ts +6 -0
- package/dist/esm/error/ForbiddenError.js +9 -0
- package/dist/esm/error/IllegalArgumentError.d.ts +6 -0
- package/dist/esm/error/IllegalArgumentError.js +9 -0
- package/dist/esm/error/InternalServerError.d.ts +6 -0
- package/dist/esm/error/InternalServerError.js +9 -0
- package/dist/esm/error/NotFoundError.d.ts +6 -0
- package/dist/esm/error/NotFoundError.js +9 -0
- package/dist/esm/error/UnauthorizedError.d.ts +6 -0
- package/dist/esm/error/UnauthorizedError.js +9 -0
- package/dist/esm/error/index.d.ts +7 -0
- package/dist/esm/error/index.js +7 -0
- package/dist/esm/i18n/WordingManager.d.ts +20 -0
- package/dist/esm/i18n/WordingManager.js +109 -0
- package/dist/esm/i18n/consts.d.ts +2 -0
- package/dist/esm/i18n/consts.js +1 -0
- package/dist/esm/i18n/index.d.ts +3 -0
- package/dist/esm/i18n/index.js +2 -0
- package/dist/esm/i18n/locales/en.d.ts +2 -0
- package/dist/esm/i18n/locales/en.js +54 -0
- package/dist/esm/i18n/locales/fr.d.ts +2 -0
- package/dist/esm/i18n/locales/fr.js +54 -0
- package/dist/esm/i18n/types.d.ts +14 -0
- package/dist/esm/i18n/types.js +1 -0
- package/dist/esm/icon/Icon.d.ts +1 -0
- package/dist/esm/icon/Icon.js +1 -0
- package/dist/esm/icon/index.d.ts +1 -0
- package/dist/esm/icon/index.js +1 -0
- package/dist/esm/index.d.ts +42 -0
- package/dist/esm/index.js +42 -1
- package/dist/esm/index.node-mcp.d.ts +2 -0
- package/dist/esm/index.node-mcp.js +2 -0
- package/dist/esm/index.node-test.d.ts +3 -0
- package/dist/esm/index.node-test.js +2 -0
- package/dist/esm/index.node.d.ts +13 -0
- package/dist/esm/index.node.js +13 -0
- package/dist/esm/index.react-web-pure.d.ts +10 -0
- package/dist/esm/index.react-web-pure.js +10 -0
- package/dist/esm/index.react.d.ts +9 -0
- package/dist/esm/index.react.js +6 -0
- package/dist/esm/index.rn.d.ts +2 -0
- package/dist/esm/index.rn.js +2 -0
- package/dist/esm/index.std-jwt-manager-jose.d.ts +1 -0
- package/dist/esm/index.std-jwt-manager-jose.js +1 -0
- package/dist/esm/index.uc-data-store-knex.d.ts +1 -0
- package/dist/esm/index.uc-data-store-knex.js +1 -0
- package/dist/esm/index.vite.d.ts +1 -0
- package/dist/esm/index.vite.js +1 -0
- package/dist/esm/index.web.d.ts +5 -0
- package/dist/esm/index.web.js +5 -0
- package/dist/esm/product/i18n.d.ts +2 -0
- package/dist/esm/product/i18n.js +1 -0
- package/dist/esm/product/index.d.ts +3 -0
- package/dist/esm/product/index.js +1 -0
- package/dist/esm/product/manifest.d.ts +17 -0
- package/dist/esm/product/manifest.js +1 -0
- package/dist/esm/product/workers/ProductUCsLoader.d.ts +12 -0
- package/dist/esm/product/workers/ProductUCsLoader.js +41 -0
- package/dist/esm/products/Helper/container.d.ts +3 -0
- package/dist/esm/products/Helper/container.js +22 -0
- package/dist/esm/products/Helper/i18n.d.ts +2 -0
- package/dist/esm/products/Helper/i18n.js +10 -0
- package/dist/esm/products/Helper/index.d.ts +1 -0
- package/dist/esm/products/Helper/index.js +11 -0
- package/dist/esm/products/Helper/manifest.d.ts +1 -0
- package/dist/esm/products/Helper/manifest.js +4 -0
- package/dist/esm/std/BufferManager.d.ts +9 -0
- package/dist/esm/std/BufferManager.js +1 -0
- package/dist/esm/std/ClockManager.d.ts +7 -0
- package/dist/esm/std/ClockManager.js +1 -0
- package/dist/esm/std/CryptoManager.d.ts +20 -0
- package/dist/esm/std/CryptoManager.js +1 -0
- package/dist/esm/std/EmailManager.d.ts +25 -0
- package/dist/esm/std/EmailManager.js +1 -0
- package/dist/esm/std/EnvironmentManager.d.ts +14 -0
- package/dist/esm/std/EnvironmentManager.js +1 -0
- package/dist/esm/std/ExternalResourceInstaller.d.ts +17 -0
- package/dist/esm/std/ExternalResourceInstaller.js +37 -0
- package/dist/esm/std/ExternalResourceManager.d.ts +6 -0
- package/dist/esm/std/ExternalResourceManager.js +1 -0
- package/dist/esm/std/FSManager.d.ts +55 -0
- package/dist/esm/std/FSManager.js +6 -0
- package/dist/esm/std/FormDataBuilder.d.ts +9 -0
- package/dist/esm/std/FormDataBuilder.js +1 -0
- package/dist/esm/std/HTTPAPICallExecutor.d.ts +40 -0
- package/dist/esm/std/HTTPAPICallExecutor.js +1 -0
- package/dist/esm/std/HTTPAPICaller.d.ts +39 -0
- package/dist/esm/std/HTTPAPICaller.js +1 -0
- package/dist/esm/std/I18nManager.d.ts +14 -0
- package/dist/esm/std/I18nManager.js +1 -0
- package/dist/esm/std/JWTManager.d.ts +34 -0
- package/dist/esm/std/JWTManager.js +1 -0
- package/dist/esm/std/JobManager.d.ts +17 -0
- package/dist/esm/std/JobManager.js +1 -0
- package/dist/esm/std/Logger.d.ts +13 -0
- package/dist/esm/std/Logger.js +1 -0
- package/dist/esm/std/PromptManager.d.ts +6 -0
- package/dist/esm/std/PromptManager.js +1 -0
- package/dist/esm/std/SettingsManager.d.ts +14 -0
- package/dist/esm/std/SettingsManager.js +7 -0
- package/dist/esm/std/Worker.d.ts +3 -0
- package/dist/esm/std/Worker.js +1 -0
- package/dist/esm/std/XMLManager.d.ts +9 -0
- package/dist/esm/std/XMLManager.js +1 -0
- package/dist/esm/std/consts.d.ts +8 -0
- package/dist/esm/std/consts.js +22 -0
- package/dist/esm/std/impl/BufferLibBufferManager.d.ts +10 -0
- package/dist/esm/std/impl/BufferLibBufferManager.js +32 -0
- package/dist/esm/std/impl/ConsoleLogger.d.ts +17 -0
- package/dist/esm/std/impl/ConsoleLogger.js +77 -0
- package/dist/esm/std/impl/EnvSettingsManager.d.ts +10 -0
- package/dist/esm/std/impl/EnvSettingsManager.js +108 -0
- package/dist/esm/std/impl/FakeEmailManager.d.ts +13 -0
- package/dist/esm/std/impl/FakeEmailManager.js +29 -0
- package/dist/esm/std/impl/FakeFSManager.d.ts +23 -0
- package/dist/esm/std/impl/FakeFSManager.js +104 -0
- package/dist/esm/std/impl/FakeHTTPAPICallExecutor.d.ts +9 -0
- package/dist/esm/std/impl/FakeHTTPAPICallExecutor.js +74 -0
- package/dist/esm/std/impl/FakeJobManager.d.ts +12 -0
- package/dist/esm/std/impl/FakeJobManager.js +29 -0
- package/dist/esm/std/impl/FetchHTTPAPICallExecutor.d.ts +4 -0
- package/dist/esm/std/impl/FetchHTTPAPICallExecutor.js +16 -0
- package/dist/esm/std/impl/JoseJWTManager.d.ts +14 -0
- package/dist/esm/std/impl/JoseJWTManager.js +110 -0
- package/dist/esm/std/impl/NodeBufferManager.d.ts +9 -0
- package/dist/esm/std/impl/NodeBufferManager.js +31 -0
- package/dist/esm/std/impl/NodeCryptoManager.d.ts +13 -0
- package/dist/esm/std/impl/NodeCryptoManager.js +60 -0
- package/dist/esm/std/impl/NodeDeterministicCryptoManager.d.ts +10 -0
- package/dist/esm/std/impl/NodeDeterministicCryptoManager.js +59 -0
- package/dist/esm/std/impl/NodeEnvironmentManager.d.ts +9 -0
- package/dist/esm/std/impl/NodeEnvironmentManager.js +29 -0
- package/dist/esm/std/impl/NodeFSManager.d.ts +19 -0
- package/dist/esm/std/impl/NodeFSManager.js +126 -0
- package/dist/esm/std/impl/NodeFormDataBuilder.d.ts +4 -0
- package/dist/esm/std/impl/NodeFormDataBuilder.js +37 -0
- package/dist/esm/std/impl/NodeHTTPAPICallExecutorAgentBuilder.d.ts +7 -0
- package/dist/esm/std/impl/NodeHTTPAPICallExecutorAgentBuilder.js +35 -0
- package/dist/esm/std/impl/NodePromptManager.d.ts +4 -0
- package/dist/esm/std/impl/NodePromptManager.js +34 -0
- package/dist/esm/std/impl/NoopHTTPAPICallExecutorAgentBuilder.d.ts +4 -0
- package/dist/esm/std/impl/NoopHTTPAPICallExecutorAgentBuilder.js +16 -0
- package/dist/esm/std/impl/NoopXMLManager.d.ts +4 -0
- package/dist/esm/std/impl/NoopXMLManager.js +16 -0
- package/dist/esm/std/impl/SettingsServerClientManager.d.ts +16 -0
- package/dist/esm/std/impl/SettingsServerClientManager.js +59 -0
- package/dist/esm/std/impl/SimpleFormDataBuilder.d.ts +4 -0
- package/dist/esm/std/impl/SimpleFormDataBuilder.js +16 -0
- package/dist/esm/std/impl/SimpleHTTPAPICaller.d.ts +19 -0
- package/dist/esm/std/impl/SimpleHTTPAPICaller.js +196 -0
- package/dist/esm/std/impl/SimpleMapI18nManager.d.ts +16 -0
- package/dist/esm/std/impl/SimpleMapI18nManager.js +74 -0
- package/dist/esm/std/impl/StaticSettingsManager.d.ts +6 -0
- package/dist/esm/std/impl/StaticSettingsManager.js +28 -0
- package/dist/esm/std/impl/StdDateClockManager.d.ts +7 -0
- package/dist/esm/std/impl/StdDateClockManager.js +25 -0
- package/dist/esm/std/impl/UCDataStoreExternalResourceManager.d.ts +10 -0
- package/dist/esm/std/impl/UCDataStoreExternalResourceManager.js +37 -0
- package/dist/esm/std/impl/WebCryptoManager.d.ts +13 -0
- package/dist/esm/std/impl/WebCryptoManager.js +60 -0
- package/dist/esm/std/impl/WebFSManager.d.ts +18 -0
- package/dist/esm/std/impl/WebFSManager.js +55 -0
- package/dist/esm/std/index.d.ts +20 -0
- package/dist/esm/std/index.js +20 -0
- package/dist/esm/target/lib/cli/CLIManager.d.ts +6 -0
- package/dist/esm/target/lib/cli/CLIManager.js +1 -0
- package/dist/esm/target/lib/cli/CommandExecutor.d.ts +24 -0
- package/dist/esm/target/lib/cli/CommandExecutor.js +118 -0
- package/dist/esm/target/lib/cli/renderer.d.ts +2 -0
- package/dist/esm/target/lib/cli/renderer.js +17 -0
- package/dist/esm/target/lib/client/ServerClientManager.d.ts +27 -0
- package/dist/esm/target/lib/client/ServerClientManager.js +1 -0
- package/dist/esm/target/lib/client/consts.d.ts +2 -0
- package/dist/esm/target/lib/client/consts.js +5 -0
- package/dist/esm/target/lib/mcp-server/MCPServerBooter.d.ts +15 -0
- package/dist/esm/target/lib/mcp-server/MCPServerBooter.js +55 -0
- package/dist/esm/target/lib/react/DIContextProvider.d.ts +16 -0
- package/dist/esm/target/lib/react/DIContextProvider.js +19 -0
- package/dist/esm/target/lib/react/UCContainer.d.ts +6 -0
- package/dist/esm/target/lib/react/UCContainer.js +24 -0
- package/dist/esm/target/lib/react/UCEntrypoint.d.ts +9 -0
- package/dist/esm/target/lib/react/UCEntrypoint.js +8 -0
- package/dist/esm/target/lib/react/UCPanel.d.ts +20 -0
- package/dist/esm/target/lib/react/UCPanel.js +86 -0
- package/dist/esm/target/lib/react/entrypoint.d.ts +6 -0
- package/dist/esm/target/lib/react/entrypoint.js +1 -0
- package/dist/esm/target/lib/react/form.d.ts +10 -0
- package/dist/esm/target/lib/react/form.js +1 -0
- package/dist/esm/target/lib/react/loader.d.ts +2 -0
- package/dist/esm/target/lib/react/loader.js +1 -0
- package/dist/esm/target/lib/react/panel.d.ts +14 -0
- package/dist/esm/target/lib/react/panel.js +1 -0
- package/dist/esm/target/lib/react/touchable.d.ts +12 -0
- package/dist/esm/target/lib/react/touchable.js +1 -0
- package/dist/esm/target/lib/react/useUC.d.ts +15 -0
- package/dist/esm/target/lib/react/useUC.js +22 -0
- package/dist/esm/target/lib/react/useUCOR.d.ts +17 -0
- package/dist/esm/target/lib/react/useUCOR.js +80 -0
- package/dist/esm/target/lib/server/AuthenticationChecker.d.ts +30 -0
- package/dist/esm/target/lib/server/AuthenticationChecker.js +108 -0
- package/dist/esm/target/lib/server/BasicAuthenticationChecker.d.ts +17 -0
- package/dist/esm/target/lib/server/BasicAuthenticationChecker.js +69 -0
- package/dist/esm/target/lib/server/CSPDirectivesBuilder.d.ts +22 -0
- package/dist/esm/target/lib/server/CSPDirectivesBuilder.js +63 -0
- package/dist/esm/target/lib/server/CustomerFacingErrorBuilder.d.ts +15 -0
- package/dist/esm/target/lib/server/CustomerFacingErrorBuilder.js +42 -0
- package/dist/esm/target/lib/server/EntrypointsBuilder.d.ts +15 -0
- package/dist/esm/target/lib/server/EntrypointsBuilder.js +46 -0
- package/dist/esm/target/lib/server/JWTAuthenticationChecker.d.ts +17 -0
- package/dist/esm/target/lib/server/JWTAuthenticationChecker.js +78 -0
- package/dist/esm/target/lib/server/PrivateApiKeyAuthenticationChecker.d.ts +15 -0
- package/dist/esm/target/lib/server/PrivateApiKeyAuthenticationChecker.js +52 -0
- package/dist/esm/target/lib/server/PublicApiKeyChecker.d.ts +16 -0
- package/dist/esm/target/lib/server/PublicApiKeyChecker.js +55 -0
- package/dist/esm/target/lib/server/RequestChecker.d.ts +18 -0
- package/dist/esm/target/lib/server/RequestChecker.js +53 -0
- package/dist/esm/target/lib/server/RequestHandler.d.ts +9 -0
- package/dist/esm/target/lib/server/RequestHandler.js +1 -0
- package/dist/esm/target/lib/server/RequestLogger.d.ts +14 -0
- package/dist/esm/target/lib/server/RequestLogger.js +36 -0
- package/dist/esm/target/lib/server/ServerBooter.d.ts +24 -0
- package/dist/esm/target/lib/server/ServerBooter.js +111 -0
- package/dist/esm/target/lib/server/ServerInstaller.d.ts +10 -0
- package/dist/esm/target/lib/server/ServerInstaller.js +44 -0
- package/dist/esm/target/lib/server/ServerManager.d.ts +39 -0
- package/dist/esm/target/lib/server/ServerManager.js +1 -0
- package/dist/esm/target/lib/server/consts.d.ts +2 -0
- package/dist/esm/target/lib/server/consts.js +20 -0
- package/dist/esm/target/lib/shared.d.ts +2 -0
- package/dist/esm/target/lib/shared.js +1 -0
- package/dist/esm/target/lib/web/input.d.ts +24 -0
- package/dist/esm/target/lib/web/input.js +41 -0
- package/dist/esm/target/node-core-cli/NodeCoreCLIManager.d.ts +12 -0
- package/dist/esm/target/node-core-cli/NodeCoreCLIManager.js +93 -0
- package/dist/esm/target/node-core-cli/commands.d.ts +3 -0
- package/dist/esm/target/node-core-cli/commands.js +55 -0
- package/dist/esm/target/node-express-server/NodeExpressServerManager.d.ts +44 -0
- package/dist/esm/target/node-express-server/NodeExpressServerManager.js +181 -0
- package/dist/esm/target/node-express-server/lib/AuthCookieCreator.d.ts +21 -0
- package/dist/esm/target/node-express-server/lib/AuthCookieCreator.js +50 -0
- package/dist/esm/target/node-express-server/middlewares/AuthenticationCheckerMiddlewareBuilder.d.ts +21 -0
- package/dist/esm/target/node-express-server/middlewares/AuthenticationCheckerMiddlewareBuilder.js +66 -0
- package/dist/esm/target/node-express-server/middlewares/ErrorMiddlewareBuilder.d.ts +12 -0
- package/dist/esm/target/node-express-server/middlewares/ErrorMiddlewareBuilder.js +35 -0
- package/dist/esm/target/node-express-server/middlewares/HelmetMiddlewareBuilder.d.ts +12 -0
- package/dist/esm/target/node-express-server/middlewares/HelmetMiddlewareBuilder.js +39 -0
- package/dist/esm/target/node-express-server/middlewares/PublicApiKeyCheckerMiddlewareBuilder.d.ts +18 -0
- package/dist/esm/target/node-express-server/middlewares/PublicApiKeyCheckerMiddlewareBuilder.js +49 -0
- package/dist/esm/target/node-express-server/middlewares/RequestCheckerMiddlewareBuilder.d.ts +12 -0
- package/dist/esm/target/node-express-server/middlewares/RequestCheckerMiddlewareBuilder.js +41 -0
- package/dist/esm/target/node-express-server/middlewares/RequestHandlerMiddlewareBuilder.d.ts +23 -0
- package/dist/esm/target/node-express-server/middlewares/RequestHandlerMiddlewareBuilder.js +151 -0
- package/dist/esm/target/node-express-server/middlewares/RequestLoggerMiddlewareBuilder.d.ts +13 -0
- package/dist/esm/target/node-express-server/middlewares/RequestLoggerMiddlewareBuilder.js +45 -0
- package/dist/esm/target/node-mcp-server/NodeLocalStdioMCPServerManager.d.ts +32 -0
- package/dist/esm/target/node-mcp-server/NodeLocalStdioMCPServerManager.js +155 -0
- package/dist/esm/target/node-mcp-server/funcs.d.ts +7 -0
- package/dist/esm/target/node-mcp-server/funcs.js +45 -0
- package/dist/esm/target/node-mcp-server/types.d.ts +19 -0
- package/dist/esm/target/node-mcp-server/types.js +1 -0
- package/dist/esm/target/react-web-pure/UCAutoExecLoader.d.ts +2 -0
- package/dist/esm/target/react-web-pure/UCAutoExecLoader.js +4 -0
- package/dist/esm/target/react-web-pure/UCEntrypointTouchable.d.ts +4 -0
- package/dist/esm/target/react-web-pure/UCEntrypointTouchable.js +4 -0
- package/dist/esm/target/react-web-pure/UCExecTouchable.d.ts +4 -0
- package/dist/esm/target/react-web-pure/UCExecTouchable.js +7 -0
- package/dist/esm/target/react-web-pure/UCForm.d.ts +4 -0
- package/dist/esm/target/react-web-pure/UCForm.js +17 -0
- package/dist/esm/target/react-web-pure/UCFormField.d.ts +11 -0
- package/dist/esm/target/react-web-pure/UCFormField.js +32 -0
- package/dist/esm/target/react-web-pure/UCFormFieldControl.d.ts +11 -0
- package/dist/esm/target/react-web-pure/UCFormFieldControl.js +34 -0
- package/dist/esm/target/react-web-pure/UCFormFieldDesc.d.ts +7 -0
- package/dist/esm/target/react-web-pure/UCFormFieldDesc.js +10 -0
- package/dist/esm/target/react-web-pure/UCFormFieldErr.d.ts +7 -0
- package/dist/esm/target/react-web-pure/UCFormFieldErr.js +4 -0
- package/dist/esm/target/react-web-pure/UCFormFieldLabel.d.ts +7 -0
- package/dist/esm/target/react-web-pure/UCFormFieldLabel.js +8 -0
- package/dist/esm/target/react-web-pure/UCFormSubmitControl.d.ts +6 -0
- package/dist/esm/target/react-web-pure/UCFormSubmitControl.js +6 -0
- package/dist/esm/testing/AppTester.d.ts +67 -0
- package/dist/esm/testing/AppTester.js +343 -0
- package/dist/esm/testing/AppTesterConfigurator.d.ts +26 -0
- package/dist/esm/testing/AppTesterConfigurator.js +1 -0
- package/dist/esm/testing/UCDataStoreTester.d.ts +25 -0
- package/dist/esm/testing/UCDataStoreTester.js +192 -0
- package/dist/esm/testing/UCDefASTParser.d.ts +43 -0
- package/dist/esm/testing/UCDefASTParser.js +44 -0
- package/dist/esm/testing/ctx.d.ts +18 -0
- package/dist/esm/testing/ctx.js +1 -0
- package/dist/esm/testing/flow.d.ts +13 -0
- package/dist/esm/testing/flow.js +1 -0
- package/dist/esm/testing/impl/SimpleAppDocsEmitter.d.ts +7 -0
- package/dist/esm/testing/impl/SimpleAppDocsEmitter.js +161 -0
- package/dist/esm/testing/impl/SimpleAppTesterConfigurator.d.ts +14 -0
- package/dist/esm/testing/impl/SimpleAppTesterConfigurator.js +34 -0
- package/dist/esm/testing/impl/SimpleHTMLAppTestReportEmitter.d.ts +10 -0
- package/dist/esm/testing/impl/SimpleHTMLAppTestReportEmitter.js +186 -0
- package/dist/esm/testing/impl/TypeScriptLibUCDefASTParser.d.ts +24 -0
- package/dist/esm/testing/impl/TypeScriptLibUCDefASTParser.js +246 -0
- package/dist/esm/testing/impl/VitestAppTestSuiteEmitter.d.ts +7 -0
- package/dist/esm/testing/impl/VitestAppTestSuiteEmitter.js +231 -0
- package/dist/esm/testing/impl/VitestAppTestSuiteRunner.d.ts +10 -0
- package/dist/esm/testing/impl/VitestAppTestSuiteRunner.js +51 -0
- package/dist/esm/testing/impl/newNodeAppTester.d.ts +3 -0
- package/dist/esm/testing/impl/newNodeAppTester.js +67 -0
- package/dist/esm/testing/index.d.ts +13 -0
- package/dist/esm/testing/index.js +5 -0
- package/dist/esm/testing/opts.d.ts +34 -0
- package/dist/esm/testing/opts.js +50 -0
- package/dist/esm/testing/uc-auth.d.ts +7 -0
- package/dist/esm/testing/uc-auth.js +13 -0
- package/dist/esm/testing/uc-input.d.ts +11 -0
- package/dist/esm/testing/uc-input.js +52 -0
- package/dist/esm/testing/utils.d.ts +6 -0
- package/dist/esm/testing/utils.js +8 -0
- package/dist/esm/testing/workers/AppDocsEmitter.d.ts +12 -0
- package/dist/esm/testing/workers/AppDocsEmitter.js +1 -0
- package/dist/esm/testing/workers/AppTestReportEmitter.d.ts +14 -0
- package/dist/esm/testing/workers/AppTestReportEmitter.js +1 -0
- package/dist/esm/testing/workers/AppTestSuiteEmitter.d.ts +32 -0
- package/dist/esm/testing/workers/AppTestSuiteEmitter.js +1 -0
- package/dist/esm/testing/workers/AppTestSuiteRunner.d.ts +10 -0
- package/dist/esm/testing/workers/AppTestSuiteRunner.js +1 -0
- package/dist/esm/testing/workers/AppTesterCtxInitializer.d.ts +17 -0
- package/dist/esm/testing/workers/AppTesterCtxInitializer.js +57 -0
- package/dist/esm/testing/workers/UCExecutor.d.ts +45 -0
- package/dist/esm/testing/workers/UCExecutor.js +94 -0
- package/dist/esm/testing/workers/checkers/AppI18nChecker.d.ts +19 -0
- package/dist/esm/testing/workers/checkers/AppI18nChecker.js +52 -0
- package/dist/esm/testing/workers/checkers/AppIndexChecker.d.ts +16 -0
- package/dist/esm/testing/workers/checkers/AppIndexChecker.js +41 -0
- package/dist/esm/testing/workers/checkers/AppManifestChecker.d.ts +17 -0
- package/dist/esm/testing/workers/checkers/AppManifestChecker.js +34 -0
- package/dist/esm/testing/workers/checkers/UCDefChecker.d.ts +14 -0
- package/dist/esm/testing/workers/checkers/UCDefChecker.js +45 -0
- package/dist/esm/testing/workers/checkers/UCDefSourcesChecker.d.ts +27 -0
- package/dist/esm/testing/workers/checkers/UCDefSourcesChecker.js +249 -0
- package/dist/esm/uc/UC.d.ts +39 -0
- package/dist/esm/uc/UC.js +157 -0
- package/dist/esm/uc/UCInputField.d.ts +23 -0
- package/dist/esm/uc/UCInputField.js +162 -0
- package/dist/esm/uc/UCOutputField.d.ts +9 -0
- package/dist/esm/uc/UCOutputField.js +8 -0
- package/dist/esm/uc/auth/consts.d.ts +3 -0
- package/dist/esm/uc/auth/consts.js +16 -0
- package/dist/esm/uc/auth.d.ts +13 -0
- package/dist/esm/uc/auth.js +1 -0
- package/dist/esm/uc/client.d.ts +19 -0
- package/dist/esm/uc/client.js +1 -0
- package/dist/esm/uc/data-store.d.ts +71 -0
- package/dist/esm/uc/data-store.js +1 -0
- package/dist/esm/uc/data.d.ts +2 -0
- package/dist/esm/uc/data.js +1 -0
- package/dist/esm/uc/def.d.ts +33 -0
- package/dist/esm/uc/def.js +1 -0
- package/dist/esm/uc/exec.d.ts +7 -0
- package/dist/esm/uc/exec.js +11 -0
- package/dist/esm/uc/ext.d.ts +14 -0
- package/dist/esm/uc/ext.js +1 -0
- package/dist/esm/uc/file.d.ts +3 -0
- package/dist/esm/uc/file.js +1 -0
- package/dist/esm/uc/helpers/UCOutputBuilder.d.ts +18 -0
- package/dist/esm/uc/helpers/UCOutputBuilder.js +71 -0
- package/dist/esm/uc/helpers/UCOutputReader.d.ts +43 -0
- package/dist/esm/uc/helpers/UCOutputReader.js +117 -0
- package/dist/esm/uc/impl/HTTPUCTransporter.d.ts +17 -0
- package/dist/esm/uc/impl/HTTPUCTransporter.js +118 -0
- package/dist/esm/uc/impl/InMemoryUCDataStore.d.ts +22 -0
- package/dist/esm/uc/impl/InMemoryUCDataStore.js +97 -0
- package/dist/esm/uc/impl/KnexUCDataStore.d.ts +43 -0
- package/dist/esm/uc/impl/KnexUCDataStore.js +237 -0
- package/dist/esm/uc/impl/PromptUCClientConfirmManager.d.ts +16 -0
- package/dist/esm/uc/impl/PromptUCClientConfirmManager.js +51 -0
- package/dist/esm/uc/impl/SimpleUCManager.d.ts +39 -0
- package/dist/esm/uc/impl/SimpleUCManager.js +163 -0
- package/dist/esm/uc/impl/StaticUCClientConfirmManager.d.ts +12 -0
- package/dist/esm/uc/impl/StaticUCClientConfirmManager.js +34 -0
- package/dist/esm/uc/impl/WebUCClientConfirmManager.d.ts +10 -0
- package/dist/esm/uc/impl/WebUCClientConfirmManager.js +34 -0
- package/dist/esm/uc/index.d.ts +62 -0
- package/dist/esm/uc/index.js +62 -0
- package/dist/esm/uc/init.d.ts +3 -0
- package/dist/esm/uc/init.js +1 -0
- package/dist/esm/uc/input-field.d.ts +35 -0
- package/dist/esm/uc/input-field.js +73 -0
- package/dist/esm/uc/input.d.ts +12 -0
- package/dist/esm/uc/input.js +1 -0
- package/dist/esm/uc/io/input/AggregateInput.d.ts +7 -0
- package/dist/esm/uc/io/input/AggregateInput.js +11 -0
- package/dist/esm/uc/io/input/ListInput.d.ts +10 -0
- package/dist/esm/uc/io/input/ListInput.js +29 -0
- package/dist/esm/uc/io/output/AggregateOutput.d.ts +5 -0
- package/dist/esm/uc/io/output/AggregateOutput.js +13 -0
- package/dist/esm/uc/lifecycle/client/IdleClientMain.d.ts +6 -0
- package/dist/esm/uc/lifecycle/client/IdleClientMain.js +15 -0
- package/dist/esm/uc/lifecycle/client/SendClientMain.d.ts +10 -0
- package/dist/esm/uc/lifecycle/client/SendClientMain.js +28 -0
- package/dist/esm/uc/lifecycle/server/IdleServerMain.d.ts +6 -0
- package/dist/esm/uc/lifecycle/server/IdleServerMain.js +15 -0
- package/dist/esm/uc/main.d.ts +10 -0
- package/dist/esm/uc/main.js +1 -0
- package/dist/esm/uc/manager.d.ts +25 -0
- package/dist/esm/uc/manager.js +1 -0
- package/dist/esm/uc/metadata.d.ts +17 -0
- package/dist/esm/uc/metadata.js +20 -0
- package/dist/esm/uc/opi-layout.d.ts +13 -0
- package/dist/esm/uc/opi-layout.js +1 -0
- package/dist/esm/uc/opi.d.ts +6 -0
- package/dist/esm/uc/opi.js +1 -0
- package/dist/esm/uc/output-field.d.ts +8 -0
- package/dist/esm/uc/output-field.js +1 -0
- package/dist/esm/uc/output-part.d.ts +25 -0
- package/dist/esm/uc/output-part.js +1 -0
- package/dist/esm/uc/output.d.ts +19 -0
- package/dist/esm/uc/output.js +1 -0
- package/dist/esm/uc/policies/AnonymousUCPolicy.d.ts +7 -0
- package/dist/esm/uc/policies/AnonymousUCPolicy.js +22 -0
- package/dist/esm/uc/policies/AuthenticatedUCPolicy.d.ts +7 -0
- package/dist/esm/uc/policies/AuthenticatedUCPolicy.js +22 -0
- package/dist/esm/uc/policies/EverybodyUCPolicy.d.ts +7 -0
- package/dist/esm/uc/policies/EverybodyUCPolicy.js +22 -0
- package/dist/esm/uc/policies/NobodyUCPolicy.d.ts +7 -0
- package/dist/esm/uc/policies/NobodyUCPolicy.js +22 -0
- package/dist/esm/uc/policies/RoleAdminUCPolicy.d.ts +7 -0
- package/dist/esm/uc/policies/RoleAdminUCPolicy.js +22 -0
- package/dist/esm/uc/policies/RoleRegularUCPolicy.d.ts +7 -0
- package/dist/esm/uc/policies/RoleRegularUCPolicy.js +22 -0
- package/dist/esm/uc/policies/funcs.d.ts +2 -0
- package/dist/esm/uc/policies/funcs.js +6 -0
- package/dist/esm/uc/policy.d.ts +13 -0
- package/dist/esm/uc/policy.js +1 -0
- package/dist/esm/uc/sec/consts.d.ts +3 -0
- package/dist/esm/uc/sec/consts.js +2 -0
- package/dist/esm/uc/sec.d.ts +6 -0
- package/dist/esm/uc/sec.js +1 -0
- package/dist/esm/uc/server.d.ts +13 -0
- package/dist/esm/uc/server.js +1 -0
- package/dist/esm/uc/settings/consts.d.ts +2 -0
- package/dist/esm/uc/settings/consts.js +6 -0
- package/dist/esm/uc/settings.d.ts +11 -0
- package/dist/esm/uc/settings.js +1 -0
- package/dist/esm/uc/side-effect.d.ts +12 -0
- package/dist/esm/uc/side-effect.js +6 -0
- package/dist/esm/uc/transporter.d.ts +7 -0
- package/dist/esm/uc/transporter.js +1 -0
- package/dist/esm/uc/utils/appendUCInputToURL.d.ts +4 -0
- package/dist/esm/uc/utils/appendUCInputToURL.js +12 -0
- package/dist/esm/uc/utils/fmtVal.d.ts +7 -0
- package/dist/esm/uc/utils/fmtVal.js +20 -0
- package/dist/esm/uc/utils/rInput.d.ts +11 -0
- package/dist/esm/uc/utils/rInput.js +39 -0
- package/dist/esm/uc/utils/rVal.d.ts +5 -0
- package/dist/esm/uc/utils/rVal.js +20 -0
- package/dist/esm/uc/utils/recIs.d.ts +5 -0
- package/dist/esm/uc/utils/recIs.js +1 -0
- package/dist/esm/uc/utils/stripUCDLifecycleServer.d.ts +2 -0
- package/dist/esm/uc/utils/stripUCDLifecycleServer.js +60 -0
- package/dist/esm/uc/utils/ucHTTPContract.d.ts +14 -0
- package/dist/esm/uc/utils/ucHTTPContract.js +34 -0
- package/dist/esm/uc/utils/ucMountingPoint.d.ts +7 -0
- package/dist/esm/uc/utils/ucMountingPoint.js +7 -0
- package/dist/esm/uc/utils/ucifcoIsForArray.d.ts +2 -0
- package/dist/esm/uc/utils/ucifcoIsForArray.js +7 -0
- package/dist/esm/uc/value.d.ts +2 -0
- package/dist/esm/uc/value.js +1 -0
- package/dist/esm/uc/workers/SimpleAggregateFinder.d.ts +20 -0
- package/dist/esm/uc/workers/SimpleAggregateFinder.js +45 -0
- package/dist/esm/uc/workers/SimpleAggregateOwnershipChecker.d.ts +17 -0
- package/dist/esm/uc/workers/SimpleAggregateOwnershipChecker.js +35 -0
- package/dist/esm/uc/workers/UCBuilder.d.ts +10 -0
- package/dist/esm/uc/workers/UCBuilder.js +17 -0
- package/dist/esm/uc/workers/UCExecChecker.d.ts +24 -0
- package/dist/esm/uc/workers/UCExecChecker.js +72 -0
- package/dist/esm/uc/workers/UCInputFilesProcessor.d.ts +20 -0
- package/dist/esm/uc/workers/UCInputFilesProcessor.js +75 -0
- package/dist/esm/uc/workers/UCInputValidator.d.ts +15 -0
- package/dist/esm/uc/workers/UCInputValidator.js +48 -0
- package/dist/esm/uc/workers/UCOutputFilesProcessor.d.ts +20 -0
- package/dist/esm/uc/workers/UCOutputFilesProcessor.js +60 -0
- package/dist/esm/utils/async/sleep.d.ts +2 -0
- package/dist/esm/utils/async/sleep.js +7 -0
- package/dist/esm/utils/concerns/Clearable.d.ts +3 -0
- package/dist/esm/utils/concerns/Clearable.js +1 -0
- package/dist/esm/utils/concerns/Initializable.d.ts +3 -0
- package/dist/esm/utils/concerns/Initializable.js +1 -0
- package/dist/esm/utils/esm/srcImporter.d.ts +2 -0
- package/dist/esm/utils/esm/srcImporter.js +1 -0
- package/dist/esm/utils/http/HTTPRequestBuilder.d.ts +17 -0
- package/dist/esm/utils/http/HTTPRequestBuilder.js +55 -0
- package/dist/esm/utils/http/appendData.d.ts +2 -0
- package/dist/esm/utils/http/appendData.js +14 -0
- package/dist/esm/utils/http/toFormData.d.ts +3 -0
- package/dist/esm/utils/http/toFormData.js +4 -0
- package/dist/esm/utils/http/toJSON.d.ts +3 -0
- package/dist/esm/utils/http/toJSON.js +3 -0
- package/dist/esm/utils/http/toQueryParams.d.ts +2 -0
- package/dist/esm/utils/http/toQueryParams.js +4 -0
- package/dist/esm/utils/http/types.d.ts +2 -0
- package/dist/esm/utils/http/types.js +1 -0
- package/dist/esm/utils/index.d.ts +18 -0
- package/dist/esm/utils/index.js +12 -0
- package/dist/esm/utils/ioc/ContainerPrinter.d.ts +12 -0
- package/dist/esm/utils/ioc/ContainerPrinter.js +53 -0
- package/dist/esm/utils/ioc/bindCommon.d.ts +6 -0
- package/dist/esm/utils/ioc/bindCommon.js +71 -0
- package/dist/esm/utils/ioc/bindNodeCLI.d.ts +2 -0
- package/dist/esm/utils/ioc/bindNodeCLI.js +8 -0
- package/dist/esm/utils/ioc/bindNodeCore.d.ts +2 -0
- package/dist/esm/utils/ioc/bindNodeCore.js +16 -0
- package/dist/esm/utils/ioc/bindProduct.d.ts +4 -0
- package/dist/esm/utils/ioc/bindProduct.js +6 -0
- package/dist/esm/utils/ioc/bindProvider.d.ts +2 -0
- package/dist/esm/utils/ioc/bindProvider.js +9 -0
- package/dist/esm/utils/ioc/bindRN.d.ts +2 -0
- package/dist/esm/utils/ioc/bindRN.js +4 -0
- package/dist/esm/utils/ioc/bindServer.d.ts +2 -0
- package/dist/esm/utils/ioc/bindServer.js +8 -0
- package/dist/esm/utils/ioc/bindWeb.d.ts +2 -0
- package/dist/esm/utils/ioc/bindWeb.js +12 -0
- package/dist/esm/utils/ioc/container.d.ts +2 -0
- package/dist/esm/utils/ioc/container.js +3 -0
- package/dist/esm/utils/ioc/types.d.ts +2 -0
- package/dist/esm/utils/ioc/types.js +1 -0
- package/dist/esm/utils/numbers/fmt.d.ts +3 -0
- package/dist/esm/utils/numbers/fmt.js +24 -0
- package/dist/esm/utils/numbers/units.d.ts +9 -0
- package/dist/esm/utils/numbers/units.js +53 -0
- package/dist/esm/utils/strings/capitalize.d.ts +2 -0
- package/dist/esm/utils/strings/capitalize.js +14 -0
- package/dist/esm/utils/strings/humanize.d.ts +1 -0
- package/dist/esm/utils/strings/humanize.js +5 -0
- package/dist/esm/utils/strings/truncate.d.ts +2 -0
- package/dist/esm/utils/strings/truncate.js +3 -0
- package/dist/esm/utils/terminal/fmt.d.ts +4 -0
- package/dist/esm/utils/terminal/fmt.js +13 -0
- package/dist/esm/utils/types/funcs.d.ts +6 -0
- package/dist/esm/utils/types/funcs.js +32 -0
- package/dist/esm/utils/types/utility-types.d.ts +5 -0
- package/dist/esm/utils/types/utility-types.js +1 -0
- package/docs/getting-started/001_Create_the_project.md +168 -0
- package/docs/getting-started/002_Create_the_App.md +49 -0
- package/docs/getting-started/003_Create_the_UseCase.md +205 -0
- package/docs/getting-started/004_Test_the_App.md +114 -0
- package/docs/getting-started/005_Create_the_Product.md +46 -0
- package/docs/getting-started/006_Create_the_server_Target.md +130 -0
- package/docs/getting-started/007_Create_the_web_Target.md +262 -0
- package/docs/getting-started/008_Switch_to_a_persistent_data_storage.md +52 -0
- package/docs/getting-started/009_Define_wording_for_humans.md +42 -0
- package/docs/getting-started/010_Create_the_cli_Target.md +102 -0
- package/docs/getting-started/011_Create_the_mcp_server_Target.md +157 -0
- package/docs/getting-started/012_Summary.md +29 -0
- package/package.json +7 -4
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import React, { useRef } from 'react';
|
|
2
|
+
import { UCFormField } from './UCFormField.js';
|
|
3
|
+
import { UCFormSubmitControl } from './UCFormSubmitControl.js';
|
|
4
|
+
export function UCForm({ clearAfterExec, disabled, execState, onChange, onSubmit: onSubmitBase, uc, }) {
|
|
5
|
+
const formRef = useRef(null);
|
|
6
|
+
const onSubmit = async (e) => {
|
|
7
|
+
e.preventDefault();
|
|
8
|
+
const succeeded = await onSubmitBase();
|
|
9
|
+
if (succeeded && clearAfterExec) {
|
|
10
|
+
formRef.current?.reset();
|
|
11
|
+
}
|
|
12
|
+
};
|
|
13
|
+
return (React.createElement("form", { onSubmit: onSubmit, ref: formRef },
|
|
14
|
+
uc.inputFieldsForForm().map((f) => (React.createElement("div", { key: f.key },
|
|
15
|
+
React.createElement(UCFormField, { disabled: disabled, execState: execState, field: f, onChange: onChange })))),
|
|
16
|
+
React.createElement(UCFormSubmitControl, { execState: execState, disabled: disabled, uc: uc })));
|
|
17
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { type ReactElement } from 'react';
|
|
2
|
+
import type { DataType } from '../../dt/index.js';
|
|
3
|
+
import { type Props as FormFieldControlProps } from './UCFormFieldControl.js';
|
|
4
|
+
import { type Props as FormFieldLabelProps } from './UCFormFieldLabel.js';
|
|
5
|
+
declare const ELEMENTS: readonly ["control", "desc", "err", "label"];
|
|
6
|
+
type Element = (typeof ELEMENTS)[number];
|
|
7
|
+
type Props<T extends DataType> = FormFieldControlProps<T> & FormFieldLabelProps<T> & {
|
|
8
|
+
only?: Element[];
|
|
9
|
+
};
|
|
10
|
+
export declare function UCFormField<T extends DataType>({ disabled, execState, field, onChange: onChangeBase, only, }: Props<T>): ReactElement;
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import React, { useState } from 'react';
|
|
2
|
+
import { useDIContext } from '../lib/react/DIContextProvider.js';
|
|
3
|
+
import { UCFormFieldControl, } from './UCFormFieldControl.js';
|
|
4
|
+
import { UCFormFieldDesc } from './UCFormFieldDesc.js';
|
|
5
|
+
import { UCFormFieldErr } from './UCFormFieldErr.js';
|
|
6
|
+
import { UCFormFieldLabel, } from './UCFormFieldLabel.js';
|
|
7
|
+
const ELEMENTS = ['control', 'desc', 'err', 'label'];
|
|
8
|
+
export function UCFormField({ disabled, execState, field, onChange: onChangeBase, only, }) {
|
|
9
|
+
const { i18nManager } = useDIContext();
|
|
10
|
+
const { type } = field.def;
|
|
11
|
+
const [errMsg, setErrMsg] = useState(null);
|
|
12
|
+
const elements = only ?? ELEMENTS;
|
|
13
|
+
const onChange = (f, op, v) => {
|
|
14
|
+
setErrMsg(null);
|
|
15
|
+
const vArr = Array.isArray(v) ? v : [v];
|
|
16
|
+
for (const vv of vArr) {
|
|
17
|
+
const validation = type.assign(vv).validate();
|
|
18
|
+
const violation = validation.get();
|
|
19
|
+
if (violation) {
|
|
20
|
+
const [key, expected] = violation;
|
|
21
|
+
setErrMsg(i18nManager.t(key, { vars: { expected } }));
|
|
22
|
+
break;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
onChangeBase(f, op, v);
|
|
26
|
+
};
|
|
27
|
+
return (React.createElement(React.Fragment, null,
|
|
28
|
+
elements.includes('label') && React.createElement(UCFormFieldLabel, { field: field }),
|
|
29
|
+
elements.includes('control') && (React.createElement(UCFormFieldControl, { disabled: disabled, execState: execState, field: field, onChange: onChange })),
|
|
30
|
+
elements.includes('err') && errMsg && (React.createElement(UCFormFieldErr, { errMsg: errMsg })),
|
|
31
|
+
elements.includes('desc') && React.createElement(UCFormFieldDesc, { field: field })));
|
|
32
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { type ReactElement } from 'react';
|
|
2
|
+
import type { DataType, ErrorMessage } from '../../dt/index.js';
|
|
3
|
+
import { type UCInputField } from '../../uc/index.js';
|
|
4
|
+
import type { UCFormFieldControlOnChange } from '../lib/react/form.js';
|
|
5
|
+
import type { UCPanelState } from '../lib/react/panel.js';
|
|
6
|
+
export type Props<T extends DataType> = UCPanelState & {
|
|
7
|
+
errMsg?: ErrorMessage | null;
|
|
8
|
+
field: UCInputField<T>;
|
|
9
|
+
onChange: UCFormFieldControlOnChange<T>;
|
|
10
|
+
};
|
|
11
|
+
export declare function UCFormFieldControl<T extends DataType>({ disabled, errMsg, execState, field, onChange: onChangeBase, }: Props<T>): ReactElement;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import React, {} from 'react';
|
|
2
|
+
import { UCInputFieldChangeOperator, ucifRepeatability, } from '../../uc/index.js';
|
|
3
|
+
import { htmlInputDef } from '../lib/web/input.js';
|
|
4
|
+
const CHECKED_FIELD_TYPES = ['checkbox', 'radio'];
|
|
5
|
+
const FILE_FIELD_TYPES = ['file'];
|
|
6
|
+
const MULTIPLE_VALUES_SEPARATOR = ',';
|
|
7
|
+
export function UCFormFieldControl({ disabled, errMsg = null, execState, field, onChange: onChangeBase, }) {
|
|
8
|
+
const attrs = htmlInputDef(field, execState, errMsg);
|
|
9
|
+
const onChange = (e) => {
|
|
10
|
+
const target = e.currentTarget;
|
|
11
|
+
const type = target.type;
|
|
12
|
+
let value = target.value;
|
|
13
|
+
if (CHECKED_FIELD_TYPES.includes(type) && 'checked' in target) {
|
|
14
|
+
value = target.checked;
|
|
15
|
+
}
|
|
16
|
+
else if (FILE_FIELD_TYPES.includes(type) && 'files' in target) {
|
|
17
|
+
value = target.files?.item(0);
|
|
18
|
+
}
|
|
19
|
+
const [isRepeatable] = ucifRepeatability(field.def);
|
|
20
|
+
if (isRepeatable && typeof value === 'string') {
|
|
21
|
+
const valueArr = value
|
|
22
|
+
.split(MULTIPLE_VALUES_SEPARATOR)
|
|
23
|
+
.map((v) => v.trim());
|
|
24
|
+
onChangeBase(field, UCInputFieldChangeOperator.SET, valueArr);
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
onChangeBase(field, UCInputFieldChangeOperator.SET, value);
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
if (attrs.internal?.multiline) {
|
|
31
|
+
return (React.createElement("textarea", { ...attrs.spec, disabled: disabled, onChange: onChange }));
|
|
32
|
+
}
|
|
33
|
+
return React.createElement("input", { ...attrs.spec, disabled: disabled, onChange: onChange });
|
|
34
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type ReactElement } from 'react';
|
|
2
|
+
import type { DataType } from '../../dt/index.js';
|
|
3
|
+
import type { UCInputField } from '../../uc/index.js';
|
|
4
|
+
export interface Props<T extends DataType> {
|
|
5
|
+
field: UCInputField<T>;
|
|
6
|
+
}
|
|
7
|
+
export declare function UCFormFieldDesc<T extends DataType>({ field, }: Props<T>): ReactElement | null;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React, {} from 'react';
|
|
2
|
+
import { useDIContext } from '../lib/react/DIContextProvider.js';
|
|
3
|
+
export function UCFormFieldDesc({ field, }) {
|
|
4
|
+
const { wordingManager } = useDIContext();
|
|
5
|
+
const { desc } = wordingManager.ucif(field);
|
|
6
|
+
if (!desc) {
|
|
7
|
+
return null;
|
|
8
|
+
}
|
|
9
|
+
return React.createElement("div", null, desc);
|
|
10
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type ReactElement } from 'react';
|
|
2
|
+
import type { DataType } from '../../dt/index.js';
|
|
3
|
+
import { type UCInputField } from '../../uc/index.js';
|
|
4
|
+
export interface Props<T extends DataType> {
|
|
5
|
+
field: UCInputField<T>;
|
|
6
|
+
}
|
|
7
|
+
export declare function UCFormFieldLabel<T extends DataType>({ field, }: Props<T>): ReactElement;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import React, {} from 'react';
|
|
2
|
+
import { ucifId } from '../../uc/index.js';
|
|
3
|
+
import { useDIContext } from '../lib/react/DIContextProvider.js';
|
|
4
|
+
export function UCFormFieldLabel({ field, }) {
|
|
5
|
+
const { wordingManager } = useDIContext();
|
|
6
|
+
const { label } = wordingManager.ucif(field);
|
|
7
|
+
return React.createElement("label", { htmlFor: ucifId(field.key) }, label);
|
|
8
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { type ReactElement } from 'react';
|
|
2
|
+
import type { UCInput, UCOPIBase } from '../../uc/index.js';
|
|
3
|
+
import type { UCPanelCtx } from '../lib/react/panel.js';
|
|
4
|
+
type Props<I extends UCInput | undefined = undefined, OPI0 extends UCOPIBase | undefined = undefined, OPI1 extends UCOPIBase | undefined = undefined> = UCPanelCtx<I, OPI0, OPI1>;
|
|
5
|
+
export declare function UCFormSubmitControl<I extends UCInput | undefined = undefined, OPI0 extends UCOPIBase | undefined = undefined, OPI1 extends UCOPIBase | undefined = undefined>({ execState, disabled, uc }: Props<I, OPI0, OPI1>): ReactElement;
|
|
6
|
+
export {};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import React, {} from 'react';
|
|
2
|
+
import { useDIContext } from '../lib/react/DIContextProvider.js';
|
|
3
|
+
export function UCFormSubmitControl({ execState, disabled, uc }) {
|
|
4
|
+
const { wordingManager } = useDIContext();
|
|
5
|
+
return (React.createElement("input", { disabled: disabled, type: "submit", value: wordingManager.ucISubmit(uc.def, execState) }));
|
|
6
|
+
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import type { FilePath } from '../dt/index.js';
|
|
2
|
+
import type { ServerClientManagerSettings } from '../target/lib/client/ServerClientManager.js';
|
|
3
|
+
import type { ServerManager } from '../target/lib/server/ServerManager.js';
|
|
4
|
+
import { type UCAuth, UCBuilder, type UCDef, type UCInput, type UCOPIBase } from '../uc/index.js';
|
|
5
|
+
import type { SrcImporter } from '../utils/index.js';
|
|
6
|
+
import type { AppTesterConfigurator } from './AppTesterConfigurator.js';
|
|
7
|
+
import type { AppTesterCtx, AppTesterUCDRef } from './ctx.js';
|
|
8
|
+
import type { AppTesterFlow, AppTesterFlowExecOutput } from './flow.js';
|
|
9
|
+
import { SimpleHTMLAppTestReportEmitter } from './impl/SimpleHTMLAppTestReportEmitter.js';
|
|
10
|
+
import { type UCInputFiller } from './uc-input.js';
|
|
11
|
+
import type { AppDocsEmitter } from './workers/AppDocsEmitter.js';
|
|
12
|
+
import type { AppTestSuiteTestResult } from './workers/AppTestSuiteEmitter.js';
|
|
13
|
+
import { AppTesterCtxInitializer } from './workers/AppTesterCtxInitializer.js';
|
|
14
|
+
import { UCExecutor, type UCExecutorExecOutput, type Input as UCExecutorInput } from './workers/UCExecutor.js';
|
|
15
|
+
import { AppI18nChecker } from './workers/checkers/AppI18nChecker.js';
|
|
16
|
+
import { AppIndexChecker } from './workers/checkers/AppIndexChecker.js';
|
|
17
|
+
import { AppManifestChecker } from './workers/checkers/AppManifestChecker.js';
|
|
18
|
+
import { UCDefChecker } from './workers/checkers/UCDefChecker.js';
|
|
19
|
+
import { UCDefSourcesChecker } from './workers/checkers/UCDefSourcesChecker.js';
|
|
20
|
+
export interface AppTesterInitArgs {
|
|
21
|
+
appPath: FilePath;
|
|
22
|
+
configurator: AppTesterConfigurator;
|
|
23
|
+
serverClientSettings: ServerClientManagerSettings;
|
|
24
|
+
srcImporter: SrcImporter;
|
|
25
|
+
}
|
|
26
|
+
export interface AppTesterUCTestData<I extends UCInput | undefined = undefined, OPI0 extends UCOPIBase | undefined = undefined, OPI1 extends UCOPIBase | undefined = undefined> {
|
|
27
|
+
auth: UCAuth | null;
|
|
28
|
+
authName: string;
|
|
29
|
+
inputFiller: UCInputFiller<I, OPI0, OPI1>;
|
|
30
|
+
inputFillerName: string;
|
|
31
|
+
}
|
|
32
|
+
export declare class AppTester {
|
|
33
|
+
private appDocsEmitter;
|
|
34
|
+
private appI18nChecker;
|
|
35
|
+
private appIndexChecker;
|
|
36
|
+
private appManifestChecker;
|
|
37
|
+
private appTesterCtxInitializer;
|
|
38
|
+
private serverManager;
|
|
39
|
+
private simpleHTMLAppTestReportEmitter;
|
|
40
|
+
private ucBuilder;
|
|
41
|
+
private ucDefChecker;
|
|
42
|
+
private ucDefSourcesChecker;
|
|
43
|
+
private ucExecutor;
|
|
44
|
+
private configurator;
|
|
45
|
+
private ctx;
|
|
46
|
+
private safeSrcImporter;
|
|
47
|
+
private testResults;
|
|
48
|
+
private testSummary;
|
|
49
|
+
private ucDefSourcesCheckerOutput;
|
|
50
|
+
constructor(appDocsEmitter: AppDocsEmitter, appI18nChecker: AppI18nChecker, appIndexChecker: AppIndexChecker, appManifestChecker: AppManifestChecker, appTesterCtxInitializer: AppTesterCtxInitializer, serverManager: ServerManager, simpleHTMLAppTestReportEmitter: SimpleHTMLAppTestReportEmitter, ucBuilder: UCBuilder, ucDefChecker: UCDefChecker, ucDefSourcesChecker: UCDefSourcesChecker, ucExecutor: UCExecutor);
|
|
51
|
+
checkAppI18n(): Promise<void>;
|
|
52
|
+
checkAppIndex(): Promise<void>;
|
|
53
|
+
checkAppManifest(): Promise<void>;
|
|
54
|
+
checkUCDSources(): Promise<void>;
|
|
55
|
+
checkUC(ucdRef: AppTesterUCDRef): Promise<UCDef>;
|
|
56
|
+
execFlow(flow: AppTesterFlow): Promise<AppTesterFlowExecOutput>;
|
|
57
|
+
execMonkeyTest<I extends UCInput | undefined = undefined, OPI0 extends UCOPIBase | undefined = undefined, OPI1 extends UCOPIBase | undefined = undefined>(ucd: UCDef<I, OPI0, OPI1>, input: I): Promise<UCExecutorExecOutput<I, OPI0, OPI1>>;
|
|
58
|
+
execUC<I extends UCInput | undefined = undefined, OPI0 extends UCOPIBase | undefined = undefined, OPI1 extends UCOPIBase | undefined = undefined>(input: Omit<UCExecutorInput<I, OPI0, OPI1>, 'appManifest'>, flow?: AppTesterFlow): Promise<AppTestSuiteTestResult<I, OPI0, OPI1>>;
|
|
59
|
+
finalize(): Promise<void>;
|
|
60
|
+
getCtx(): AppTesterCtx;
|
|
61
|
+
init({ appPath, configurator, serverClientSettings, srcImporter, }: AppTesterInitArgs): Promise<void>;
|
|
62
|
+
ucTestData(ucdRef: AppTesterUCDRef): Promise<AppTesterUCTestData[]>;
|
|
63
|
+
private bindI18n;
|
|
64
|
+
private bindServerClientSettings;
|
|
65
|
+
private initI18n;
|
|
66
|
+
private initServer;
|
|
67
|
+
}
|
|
@@ -0,0 +1,343 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
11
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
12
|
+
};
|
|
13
|
+
import { inject, injectable } from 'inversify';
|
|
14
|
+
import { I18nEN } from '../i18n/locales/en.js';
|
|
15
|
+
import { I18nFR } from '../i18n/locales/fr.js';
|
|
16
|
+
import { FAKE_USER_ADMIN, UCBuilder, UCInputFieldChangeOperator, ucHTTPContract, } from '../uc/index.js';
|
|
17
|
+
import { SimpleHTMLAppTestReportEmitter } from './impl/SimpleHTMLAppTestReportEmitter.js';
|
|
18
|
+
import { optsAllSet } from './opts.js';
|
|
19
|
+
import { defaultUCAuthSetters } from './uc-auth.js';
|
|
20
|
+
import { allWithExamples, defaultUCInputFillers, } from './uc-input.js';
|
|
21
|
+
import { awaitForSrcImport } from './utils.js';
|
|
22
|
+
import { AppTesterCtxInitializer } from './workers/AppTesterCtxInitializer.js';
|
|
23
|
+
import { UCExecutor, } from './workers/UCExecutor.js';
|
|
24
|
+
import { AppI18nChecker } from './workers/checkers/AppI18nChecker.js';
|
|
25
|
+
import { AppIndexChecker } from './workers/checkers/AppIndexChecker.js';
|
|
26
|
+
import { AppManifestChecker } from './workers/checkers/AppManifestChecker.js';
|
|
27
|
+
import { UCDefChecker } from './workers/checkers/UCDefChecker.js';
|
|
28
|
+
import { UCDefSourcesChecker, } from './workers/checkers/UCDefSourcesChecker.js';
|
|
29
|
+
let AppTester = class AppTester {
|
|
30
|
+
appDocsEmitter;
|
|
31
|
+
appI18nChecker;
|
|
32
|
+
appIndexChecker;
|
|
33
|
+
appManifestChecker;
|
|
34
|
+
appTesterCtxInitializer;
|
|
35
|
+
serverManager;
|
|
36
|
+
simpleHTMLAppTestReportEmitter;
|
|
37
|
+
ucBuilder;
|
|
38
|
+
ucDefChecker;
|
|
39
|
+
ucDefSourcesChecker;
|
|
40
|
+
ucExecutor;
|
|
41
|
+
configurator;
|
|
42
|
+
ctx;
|
|
43
|
+
safeSrcImporter;
|
|
44
|
+
testResults;
|
|
45
|
+
testSummary;
|
|
46
|
+
ucDefSourcesCheckerOutput;
|
|
47
|
+
constructor(appDocsEmitter, appI18nChecker, appIndexChecker, appManifestChecker, appTesterCtxInitializer, serverManager, simpleHTMLAppTestReportEmitter, ucBuilder, ucDefChecker, ucDefSourcesChecker, ucExecutor) {
|
|
48
|
+
this.appDocsEmitter = appDocsEmitter;
|
|
49
|
+
this.appI18nChecker = appI18nChecker;
|
|
50
|
+
this.appIndexChecker = appIndexChecker;
|
|
51
|
+
this.appManifestChecker = appManifestChecker;
|
|
52
|
+
this.appTesterCtxInitializer = appTesterCtxInitializer;
|
|
53
|
+
this.serverManager = serverManager;
|
|
54
|
+
this.simpleHTMLAppTestReportEmitter = simpleHTMLAppTestReportEmitter;
|
|
55
|
+
this.ucBuilder = ucBuilder;
|
|
56
|
+
this.ucDefChecker = ucDefChecker;
|
|
57
|
+
this.ucDefSourcesChecker = ucDefSourcesChecker;
|
|
58
|
+
this.ucExecutor = ucExecutor;
|
|
59
|
+
this.testResults = [];
|
|
60
|
+
this.testSummary = {
|
|
61
|
+
counts: {
|
|
62
|
+
danger: 0,
|
|
63
|
+
success: 0,
|
|
64
|
+
warning: 0,
|
|
65
|
+
},
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
async checkAppI18n() {
|
|
69
|
+
const { errors } = await this.appI18nChecker.exec({
|
|
70
|
+
appManifest: this.ctx.appManifest,
|
|
71
|
+
appI18n: this.ctx.appI18n,
|
|
72
|
+
});
|
|
73
|
+
if (errors.length > 0) {
|
|
74
|
+
throw new Error(errors[0]);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
async checkAppIndex() {
|
|
78
|
+
const { errors } = await this.appIndexChecker.exec({
|
|
79
|
+
appPath: this.ctx.appPath,
|
|
80
|
+
});
|
|
81
|
+
if (errors.length > 0) {
|
|
82
|
+
throw new Error(errors[0]);
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
async checkAppManifest() {
|
|
86
|
+
const { errors } = await this.appManifestChecker.exec({
|
|
87
|
+
appManifest: this.ctx.appManifest,
|
|
88
|
+
ucdRefs: this.ctx.ucdRefs,
|
|
89
|
+
});
|
|
90
|
+
if (errors.length > 0) {
|
|
91
|
+
throw new Error(errors[0]);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
async checkUCDSources() {
|
|
95
|
+
this.ucDefSourcesCheckerOutput = await this.ucDefSourcesChecker.exec({
|
|
96
|
+
ctx: this.ctx,
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
async checkUC(ucdRef) {
|
|
100
|
+
const { errors } = await this.ucDefChecker.exec({ ucdRef });
|
|
101
|
+
if (errors.length > 0) {
|
|
102
|
+
throw new Error(errors[0]);
|
|
103
|
+
}
|
|
104
|
+
const { source } = ucdRef;
|
|
105
|
+
const ucd = source[`${Object.keys(source)[0]}`];
|
|
106
|
+
return ucd;
|
|
107
|
+
}
|
|
108
|
+
async execFlow(flow) {
|
|
109
|
+
const output = [];
|
|
110
|
+
const { auth, authName, setup, steps } = flow;
|
|
111
|
+
await setup?.(this.ctx);
|
|
112
|
+
for await (const [ucd, inputOverride] of steps) {
|
|
113
|
+
const inputFiller = (uc) => {
|
|
114
|
+
allWithExamples(uc);
|
|
115
|
+
if (inputOverride) {
|
|
116
|
+
const inputOverrides = inputOverride(output);
|
|
117
|
+
for (const [k, v] of Object.entries(inputOverrides)) {
|
|
118
|
+
uc.inputField(k).setValue(UCInputFieldChangeOperator.SET, v);
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
};
|
|
122
|
+
const { out } = await this.execUC({
|
|
123
|
+
auth: auth ?? FAKE_USER_ADMIN,
|
|
124
|
+
authName: authName ?? 'ADMIN',
|
|
125
|
+
inputFiller,
|
|
126
|
+
inputFillerName: 'FLOW',
|
|
127
|
+
ucd,
|
|
128
|
+
}, flow);
|
|
129
|
+
output.push(out);
|
|
130
|
+
}
|
|
131
|
+
return output;
|
|
132
|
+
}
|
|
133
|
+
async execMonkeyTest(ucd, input) {
|
|
134
|
+
const inputFiller = (uc) => {
|
|
135
|
+
uc.fill(input);
|
|
136
|
+
};
|
|
137
|
+
const { out } = await this.execUC({
|
|
138
|
+
auth: FAKE_USER_ADMIN,
|
|
139
|
+
authName: 'ADMIN',
|
|
140
|
+
inputFiller,
|
|
141
|
+
inputFillerName: 'ANY_FIELD_AS_ANYTHING',
|
|
142
|
+
ucd,
|
|
143
|
+
});
|
|
144
|
+
return out;
|
|
145
|
+
}
|
|
146
|
+
async execUC(input, flow) {
|
|
147
|
+
const { out } = await this.ucExecutor.exec({
|
|
148
|
+
...input,
|
|
149
|
+
appManifest: this.ctx.appManifest,
|
|
150
|
+
});
|
|
151
|
+
let status = 'warning';
|
|
152
|
+
if (!out.err) {
|
|
153
|
+
status = 'success';
|
|
154
|
+
}
|
|
155
|
+
else {
|
|
156
|
+
const { name } = out.err;
|
|
157
|
+
switch (name) {
|
|
158
|
+
case 'CustomError':
|
|
159
|
+
break;
|
|
160
|
+
case 'Error':
|
|
161
|
+
case 'TypeError':
|
|
162
|
+
status = 'danger';
|
|
163
|
+
break;
|
|
164
|
+
default:
|
|
165
|
+
break;
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
let name = input.ucd.metadata.name;
|
|
169
|
+
let sideEffects = await this.configurator.sideEffects(this.ctx);
|
|
170
|
+
if (flow) {
|
|
171
|
+
name = `${flow.name} > ${name}`;
|
|
172
|
+
if (sideEffects) {
|
|
173
|
+
const snapshot = JSON.parse(JSON.stringify(Array.from(sideEffects.entries())));
|
|
174
|
+
sideEffects = new Map(snapshot);
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
const testResult = {
|
|
178
|
+
name,
|
|
179
|
+
out,
|
|
180
|
+
sideEffects,
|
|
181
|
+
status,
|
|
182
|
+
};
|
|
183
|
+
this.testResults.push(testResult);
|
|
184
|
+
this.testSummary.counts[status] += 1;
|
|
185
|
+
return testResult;
|
|
186
|
+
}
|
|
187
|
+
async finalize() {
|
|
188
|
+
await this.serverManager.stop();
|
|
189
|
+
const { appPath } = this.ctx;
|
|
190
|
+
if (this.ucDefSourcesCheckerOutput) {
|
|
191
|
+
await this.appDocsEmitter.exec({
|
|
192
|
+
appPath,
|
|
193
|
+
ucDefSourcesCheckerOutput: this.ucDefSourcesCheckerOutput,
|
|
194
|
+
});
|
|
195
|
+
}
|
|
196
|
+
await this.simpleHTMLAppTestReportEmitter.exec({
|
|
197
|
+
appPath,
|
|
198
|
+
testResults: this.testResults,
|
|
199
|
+
testSummary: this.testSummary,
|
|
200
|
+
});
|
|
201
|
+
}
|
|
202
|
+
getCtx() {
|
|
203
|
+
return this.ctx;
|
|
204
|
+
}
|
|
205
|
+
async init({ appPath, configurator, serverClientSettings, srcImporter, }) {
|
|
206
|
+
this.configurator = configurator;
|
|
207
|
+
this.safeSrcImporter = (path) => Promise.race([
|
|
208
|
+
awaitForSrcImport(path),
|
|
209
|
+
srcImporter(path),
|
|
210
|
+
]);
|
|
211
|
+
const { ctx } = await this.appTesterCtxInitializer.exec({
|
|
212
|
+
appPath,
|
|
213
|
+
srcImporter: this.safeSrcImporter,
|
|
214
|
+
});
|
|
215
|
+
this.ctx = ctx;
|
|
216
|
+
this.ctx.opts = await configurator.opts();
|
|
217
|
+
await this.configurator.bindImplementations(this.ctx);
|
|
218
|
+
await this.configurator.seed(this.ctx);
|
|
219
|
+
await this.bindI18n();
|
|
220
|
+
await this.bindServerClientSettings(serverClientSettings);
|
|
221
|
+
await this.initI18n();
|
|
222
|
+
await this.initServer();
|
|
223
|
+
}
|
|
224
|
+
async ucTestData(ucdRef) {
|
|
225
|
+
const defaultASs = defaultUCAuthSetters();
|
|
226
|
+
let asEntries = Object.entries(defaultASs);
|
|
227
|
+
const asConfig = await this.configurator.authSettersConfig();
|
|
228
|
+
if (asConfig) {
|
|
229
|
+
const { add, exclude } = asConfig;
|
|
230
|
+
if (exclude) {
|
|
231
|
+
for (const asName of exclude) {
|
|
232
|
+
asEntries = asEntries.filter(([name]) => name !== asName);
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
if (add) {
|
|
236
|
+
asEntries.push(...Object.entries(add));
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
const defaultIFs = defaultUCInputFillers();
|
|
240
|
+
const ifEntries = Object.entries(defaultIFs);
|
|
241
|
+
const specificIFs = await this.configurator.inputFillers();
|
|
242
|
+
const specificIFsForUC = specificIFs?.get(ucdRef.name);
|
|
243
|
+
if (specificIFsForUC) {
|
|
244
|
+
ifEntries.push(...Object.entries(specificIFsForUC));
|
|
245
|
+
}
|
|
246
|
+
const data = [];
|
|
247
|
+
for (const [authName, auth] of asEntries) {
|
|
248
|
+
for (const [inputFillerName, inputFiller] of ifEntries) {
|
|
249
|
+
data.push({
|
|
250
|
+
auth,
|
|
251
|
+
authName,
|
|
252
|
+
inputFiller,
|
|
253
|
+
inputFillerName,
|
|
254
|
+
});
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
return data;
|
|
258
|
+
}
|
|
259
|
+
async bindI18n() {
|
|
260
|
+
const { appI18n, container } = this.ctx;
|
|
261
|
+
const appLangCodes = Object.keys(appI18n);
|
|
262
|
+
const coreI18n = {
|
|
263
|
+
en: I18nEN,
|
|
264
|
+
fr: I18nFR,
|
|
265
|
+
};
|
|
266
|
+
const productI18n = {
|
|
267
|
+
en: {
|
|
268
|
+
...I18nEN,
|
|
269
|
+
},
|
|
270
|
+
fr: {
|
|
271
|
+
...I18nFR,
|
|
272
|
+
},
|
|
273
|
+
};
|
|
274
|
+
for (const l of appLangCodes) {
|
|
275
|
+
if (!(l in coreI18n)) {
|
|
276
|
+
continue;
|
|
277
|
+
}
|
|
278
|
+
productI18n[l] = {
|
|
279
|
+
...productI18n[l],
|
|
280
|
+
...appI18n[l],
|
|
281
|
+
};
|
|
282
|
+
}
|
|
283
|
+
container.rebind('I18n').toConstantValue(productI18n);
|
|
284
|
+
}
|
|
285
|
+
async bindServerClientSettings(serverClientSettings) {
|
|
286
|
+
const { container } = this.ctx;
|
|
287
|
+
const opts = optsAllSet(this.ctx.opts);
|
|
288
|
+
const existingSettings = container.get('Settings');
|
|
289
|
+
container.rebind('Settings').toConstantValue({
|
|
290
|
+
...existingSettings,
|
|
291
|
+
...serverClientSettings,
|
|
292
|
+
logger_level: opts.logger_level,
|
|
293
|
+
});
|
|
294
|
+
}
|
|
295
|
+
async initI18n() {
|
|
296
|
+
await this.ctx.container.get('I18nManager').init();
|
|
297
|
+
}
|
|
298
|
+
async initServer() {
|
|
299
|
+
const ucManager = this.ctx.container.get('UCManager');
|
|
300
|
+
this.serverManager.overrideUCManager(ucManager);
|
|
301
|
+
this.ucExecutor.overrideUCManager(ucManager);
|
|
302
|
+
await this.serverManager.init();
|
|
303
|
+
for await (const { source } of this.ctx.ucdRefs) {
|
|
304
|
+
const keys = Object.keys(source);
|
|
305
|
+
const [ucdKey] = keys;
|
|
306
|
+
if (!ucdKey) {
|
|
307
|
+
continue;
|
|
308
|
+
}
|
|
309
|
+
const ucd = source[ucdKey];
|
|
310
|
+
const uc = this.ucBuilder.exec({
|
|
311
|
+
appManifest: this.ctx.appManifest,
|
|
312
|
+
auth: null,
|
|
313
|
+
def: ucd,
|
|
314
|
+
});
|
|
315
|
+
await this.serverManager.mount(uc.appManifest, ucd, ucHTTPContract(uc));
|
|
316
|
+
}
|
|
317
|
+
await this.serverManager.warmUp();
|
|
318
|
+
await this.serverManager.start();
|
|
319
|
+
}
|
|
320
|
+
};
|
|
321
|
+
AppTester = __decorate([
|
|
322
|
+
injectable(),
|
|
323
|
+
__param(0, inject('AppDocsEmitter')),
|
|
324
|
+
__param(1, inject(AppI18nChecker)),
|
|
325
|
+
__param(2, inject(AppIndexChecker)),
|
|
326
|
+
__param(3, inject(AppManifestChecker)),
|
|
327
|
+
__param(4, inject(AppTesterCtxInitializer)),
|
|
328
|
+
__param(5, inject('ServerManager')),
|
|
329
|
+
__param(6, inject(SimpleHTMLAppTestReportEmitter)),
|
|
330
|
+
__param(7, inject(UCBuilder)),
|
|
331
|
+
__param(8, inject(UCDefChecker)),
|
|
332
|
+
__param(9, inject(UCDefSourcesChecker)),
|
|
333
|
+
__param(10, inject(UCExecutor)),
|
|
334
|
+
__metadata("design:paramtypes", [Object, AppI18nChecker,
|
|
335
|
+
AppIndexChecker,
|
|
336
|
+
AppManifestChecker,
|
|
337
|
+
AppTesterCtxInitializer, Object, SimpleHTMLAppTestReportEmitter,
|
|
338
|
+
UCBuilder,
|
|
339
|
+
UCDefChecker,
|
|
340
|
+
UCDefSourcesChecker,
|
|
341
|
+
UCExecutor])
|
|
342
|
+
], AppTester);
|
|
343
|
+
export { AppTester };
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { CryptoManagerHash } from '../std/index.js';
|
|
2
|
+
import type { UCInput, UCName, UCOPIBase } from '../uc/index.js';
|
|
3
|
+
import type { AppTesterCtx } from './ctx.js';
|
|
4
|
+
import type { AppTesterFlow } from './flow.js';
|
|
5
|
+
import type { DefaultUCAuthSetter, UCAuthSetterSet } from './uc-auth.js';
|
|
6
|
+
import type { CustomUCInputFiller, UCInputFillerSet } from './uc-input.js';
|
|
7
|
+
import type { UCExecutorAssertion } from './workers/UCExecutor.js';
|
|
8
|
+
export type AppTesterConfiguratorAuthSettersConfig = {
|
|
9
|
+
add?: UCAuthSetterSet;
|
|
10
|
+
exclude?: Set<DefaultUCAuthSetter>;
|
|
11
|
+
};
|
|
12
|
+
export type AppTesterConfiguratorInputFillers<I extends UCInput = any, OPI0 extends UCOPIBase = any, OPI1 extends UCOPIBase = any> = Map<UCName, UCInputFillerSet<CustomUCInputFiller, I, OPI0, OPI1>>;
|
|
13
|
+
export type AppTesterConfiguratorSideEffects = Map<string, any>;
|
|
14
|
+
export type AppTesterConfiguratorSideEffectsSerialized = [string, any][];
|
|
15
|
+
export type AppTesterConfiguratorSpecificAssertions<I extends UCInput | undefined = undefined, OPI0 extends UCOPIBase | undefined = undefined, OPI1 extends UCOPIBase | undefined = undefined> = Map<CryptoManagerHash, UCExecutorAssertion<I, OPI0, OPI1>>;
|
|
16
|
+
export interface AppTesterConfigurator {
|
|
17
|
+
authSettersConfig(): Promise<AppTesterConfiguratorAuthSettersConfig | undefined>;
|
|
18
|
+
bindImplementations(ctx: AppTesterCtx): Promise<void>;
|
|
19
|
+
clearExecution(ctx: AppTesterCtx): Promise<void>;
|
|
20
|
+
flows(): Promise<AppTesterFlow[]>;
|
|
21
|
+
inputFillers(): Promise<AppTesterConfiguratorInputFillers | undefined>;
|
|
22
|
+
opts(): Promise<AppTesterCtx['opts']>;
|
|
23
|
+
seed(ctx: AppTesterCtx): Promise<void>;
|
|
24
|
+
sideEffects(ctx: AppTesterCtx): Promise<AppTesterConfiguratorSideEffects | undefined>;
|
|
25
|
+
specificAssertions(): Promise<AppTesterConfiguratorSpecificAssertions | undefined>;
|
|
26
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { ClockManager, CryptoManager, Worker } from '../std/index.js';
|
|
2
|
+
import { type UCDataStore } from '../uc/index.js';
|
|
3
|
+
interface Input {
|
|
4
|
+
ucDataStore: UCDataStore;
|
|
5
|
+
}
|
|
6
|
+
export declare class UCDataStoreTester implements Worker<Input, Promise<void>> {
|
|
7
|
+
private clockManager;
|
|
8
|
+
private cryptoManager;
|
|
9
|
+
static PROJECTION_NAME_1: string;
|
|
10
|
+
private ucDataStore;
|
|
11
|
+
private skipProjectionTesting;
|
|
12
|
+
private entries;
|
|
13
|
+
private exists;
|
|
14
|
+
private filtersTestData;
|
|
15
|
+
private readRes;
|
|
16
|
+
constructor(clockManager: ClockManager, cryptoManager: CryptoManager);
|
|
17
|
+
exec({ ucDataStore }: Input): Promise<void>;
|
|
18
|
+
setSkipProjectionTesting(skipProjectionTesting: boolean): void;
|
|
19
|
+
private buildEntries;
|
|
20
|
+
private buildFiltersTestData;
|
|
21
|
+
private buildUCInput;
|
|
22
|
+
private expectXRecords;
|
|
23
|
+
private insertEntries;
|
|
24
|
+
}
|
|
25
|
+
export {};
|