vivth 1.4.9 → 1.5.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/README.md +6060 -2037
- package/README.src.md +22 -14
- package/bun.lock +154 -194
- package/dev/auto/.src.ignore +25 -0
- package/dev/auto-doc.mjs +137 -0
- package/generated/types/generated/vivth/exports/all.d.mts +145 -0
- package/generated/types/generated/vivth/exports/neutral.d.mts +105 -0
- package/generated/types/generated/vivth/exports/node.d.mts +40 -0
- package/generated/types/src/bundler/CompileAS.d.mts +30 -0
- package/generated/types/src/bundler/CompileJS.d.mts +109 -0
- package/{types → generated/types}/src/bundler/CreateESPlugin.d.mts +1 -1
- package/{types → generated/types}/src/bundler/EsBundler.d.mts +9 -7
- package/generated/types/src/bundler/FSAnalyzer.d.mts +58 -0
- package/generated/types/src/bundler/FSasar.bundled.d.mts +28 -0
- package/generated/types/src/bundler/FSasar.d.mts +51 -0
- package/generated/types/src/bundler/FileSelfMapper.d.mts +137 -0
- package/generated/types/src/bundler/JSDirMapper.d.mts +128 -0
- package/generated/types/src/bundler/RunWatchThenCompileJSOnSafeExit.d.mts +63 -0
- package/generated/types/src/bundler/adds/BrowserExternals.d.mts +21 -0
- package/generated/types/src/bundler/adds/CreateTransform.d.mts +26 -0
- package/generated/types/src/bundler/adds/LastEditedUnix.d.mts +5 -0
- package/generated/types/src/bundler/adds/NodeModuleList.d.mts +15 -0
- package/generated/types/src/bundler/adds/PathFSBundles.bundled.d.mts +25 -0
- package/generated/types/src/bundler/adds/PathFSBundles.d.mts +48 -0
- package/generated/types/src/bundler/adds/PathFSDir.bundled.d.mts +30 -0
- package/generated/types/src/bundler/adds/PathFSDir.d.mts +48 -0
- package/generated/types/src/bundler/adds/PathFSFile.bundled.d.mts +25 -0
- package/generated/types/src/bundler/adds/PathFSFile.d.mts +40 -0
- package/{types → generated/types}/src/bundler/adds/ToBundledJSPlugin.d.mts +6 -6
- package/generated/types/src/bundler/adds/autoExternalize.d.mts +2 -0
- package/generated/types/src/bundler/adds/emptyBufferValue.d.mts +1 -0
- package/generated/types/src/bundler/adds/isModuleTheBundledVersion.d.mts +1 -0
- package/generated/types/src/bundler/adds/onEndEsBuildErrorLogger.d.mts +1 -0
- package/generated/types/src/bundler/adds/resolveJSDependencyPath.d.mts +1 -0
- package/generated/types/src/class/AwaitSignal.d.mts +48 -0
- package/generated/types/src/class/Console.d.mts +82 -0
- package/generated/types/src/class/DataLog.d.mts +25 -0
- package/generated/types/src/class/Derived.d.mts +74 -0
- package/generated/types/src/class/Effect.d.mts +213 -0
- package/{types → generated/types}/src/class/EnvSignal.d.mts +6 -2
- package/generated/types/src/class/EsWatcher.d.mts +36 -0
- package/{types → generated/types}/src/class/EventSignal.d.mts +39 -39
- package/generated/types/src/class/FSDirArchWatcher.d.mts +110 -0
- package/{types → generated/types}/src/class/FileSafe.d.mts +32 -16
- package/generated/types/src/class/ForEach.d.mts +57 -0
- package/generated/types/src/class/ForSignal.d.mts +63 -0
- package/generated/types/src/class/GetterSetter.d.mts +38 -0
- package/generated/types/src/class/JSONFileHandler.d.mts +50 -0
- package/{types → generated/types}/src/class/ListSignal.d.mts +49 -15
- package/{types → generated/types}/src/class/LitExp.d.mts +18 -18
- package/generated/types/src/class/ObjectSignal.d.mts +267 -0
- package/generated/types/src/class/Paths.d.mts +95 -0
- package/generated/types/src/class/Prettivy.d.mts +26 -0
- package/{types → generated/types}/src/class/QChannel.d.mts +24 -16
- package/generated/types/src/class/SafeExit.d.mts +69 -0
- package/{types → generated/types}/src/class/Setup.d.mts +29 -16
- package/{types → generated/types}/src/class/Signal.d.mts +29 -15
- package/generated/types/src/class/SignalCollection.d.mts +96 -0
- package/{types → generated/types}/src/class/WalkThrough.d.mts +4 -19
- package/generated/types/src/class/WorkerMainThread.bundled.d.mts +83 -0
- package/{types → generated/types}/src/class/WorkerMainThread.d.mts +33 -39
- package/{types → generated/types}/src/class/WorkerThread.d.mts +11 -5
- package/{types → generated/types}/src/common/Base64URL.d.mts +2 -1
- package/generated/types/src/common/Base64URLFromFile.d.mts +20 -0
- package/generated/types/src/common/BundledV.bundled.d.mts +3 -0
- package/generated/types/src/common/BundledV.d.mts +36 -0
- package/{types → generated/types}/src/common/CreateStringID.d.mts +5 -4
- package/generated/types/src/common/EnvMode.d.mts +79 -0
- package/generated/types/src/common/FactoryKey.d.mts +9 -0
- package/generated/types/src/common/Preferrence.d.mts +25 -0
- package/{types → generated/types}/src/common/Trace.d.mts +1 -1
- package/{types → generated/types}/src/common/TracePath.d.mts +1 -1
- package/generated/types/src/common/VivthUnBundledCodeBlock.d.mts +6 -0
- package/generated/types/src/doc/JSautoDOC.d.mts +172 -0
- package/generated/types/src/doc/cleanPreserveTypedef.d.mts +1 -0
- package/{types/src/doc/parsedFile.d.mts → generated/types/src/doc/parsedFileForDOC.d.mts} +56 -27
- package/generated/types/src/function/ClearRequireCache.d.mts +1 -0
- package/{types → generated/types}/src/function/CreateImmutable.d.mts +5 -4
- package/{types → generated/types}/src/function/EventCheck.d.mts +3 -1
- package/{types → generated/types}/src/function/EventObject.d.mts +2 -6
- package/generated/types/src/function/ForInAsync.d.mts +36 -0
- package/generated/types/src/function/ForInSync.d.mts +36 -0
- package/generated/types/src/function/ForOfAsync.d.mts +25 -0
- package/generated/types/src/function/ForOfSync.d.mts +36 -0
- package/generated/types/src/function/GetBufferFromRelativePath.d.mts +15 -0
- package/generated/types/src/function/GetFilesFromDir.d.mts +14 -0
- package/generated/types/src/function/GetMaxFilenameLength.d.mts +9 -0
- package/generated/types/src/function/GetModuleEsbuildPlatform.d.mts +13 -0
- package/{types → generated/types}/src/function/GetNamedImportAlias.d.mts +1 -1
- package/generated/types/src/function/GetRuntime.d.mts +2 -0
- package/generated/types/src/function/InstantiateAssemblyScript.d.mts +15 -0
- package/{types → generated/types}/src/function/IsAsync.d.mts +1 -1
- package/generated/types/src/function/IsInstanceOf.d.mts +25 -0
- package/generated/types/src/function/IsSameFile.d.mts +16 -0
- package/generated/types/src/function/IsStringLooksLikeAPath.d.mts +16 -0
- package/generated/types/src/function/IsTypeOf.d.mts +25 -0
- package/{types → generated/types}/src/function/LazyFactory.d.mts +9 -10
- package/generated/types/src/function/MonkeyPatch.d.mts +33 -0
- package/generated/types/src/function/NewAnimationTimeline.d.mts +24 -0
- package/generated/types/src/function/NewChainable.d.mts +35 -0
- package/generated/types/src/function/NewDynamicsExport.d.mts +49 -0
- package/generated/types/src/function/NewObjectWrapper.d.mts +10 -0
- package/generated/types/src/function/ObjectRegistrar.d.mts +17 -0
- package/generated/types/src/function/ParseSQLFile.d.mts +25 -0
- package/generated/types/src/function/PipeAsync.d.mts +19 -0
- package/generated/types/src/function/PipeSync.d.mts +17 -0
- package/generated/types/src/function/SafeImport.d.mts +21 -0
- package/generated/types/src/function/TemplateLiteral.d.mts +23 -0
- package/{types → generated/types}/src/function/Timeout.d.mts +1 -1
- package/{types → generated/types}/src/function/Tries.d.mts +4 -4
- package/{types → generated/types}/src/function/TryAsync.d.mts +2 -2
- package/{types → generated/types}/src/function/TryNew.d.mts +1 -1
- package/generated/types/src/function/TsToMjs.d.mts +27 -0
- package/generated/types/src/function/UniqueFSTempName.d.mts +9 -0
- package/generated/types/src/function/errorToMessage.d.mts +5 -0
- package/generated/types/src/neinth/VivthyNeinth.d.mts +202 -0
- package/generated/types/src/typehints/ArrayToKeys.d.mts +23 -0
- package/generated/types/src/typehints/AssemblyScriptExportsType.d.mts +4 -0
- package/generated/types/src/typehints/AssemblyScriptLoaderInstantiate.d.mts +4 -0
- package/generated/types/src/typehints/AutoDocASOptions.d.mts +15 -0
- package/generated/types/src/typehints/ChainableType.d.mts +3 -0
- package/generated/types/src/typehints/ComponentDecorator_Constructor.d.mts +3 -0
- package/generated/types/src/typehints/ConsoleAdditionalSettingType.d.mts +3 -0
- package/generated/types/src/typehints/Decorator.d.mts +11 -0
- package/generated/types/src/typehints/DecoratorMonkeyPatch.d.mts +15 -0
- package/{types/src/types → generated/types/src/typehints}/DevTestCB.d.mts +2 -2
- package/generated/types/src/typehints/EnvModeType.d.mts +4 -0
- package/generated/types/src/typehints/ListArg.d.mts +4 -0
- package/generated/types/src/typehints/MonkeyPatchedType.d.mts +1 -0
- package/generated/types/src/typehints/ParametersFollowingN.d.mts +13 -0
- package/generated/types/src/typehints/PrefixedKeysOf.d.mts +1 -0
- package/generated/types/src/typehints/Runtime.d.mts +4 -0
- package/generated/types/src/typehints/SafeImportReturnType.d.mts +1 -0
- package/generated/types/src/typehints/StylePropRefType.d.mts +2 -0
- package/generated/types/src/typehints/TemplateLiteralValueHandler.d.mts +10 -0
- package/generated/types/src/typehints/VLifecycleCallbacks.d.mts +6 -0
- package/generated/types/src/typehints/VivthCleanup.d.mts +12 -0
- package/generated/types/src/web/BrowserDirMapper.d.mts +70 -0
- package/generated/types/src/web/EnsureValidTag.d.mts +7 -0
- package/generated/types/src/web/ViteAddDynamics.d.mts +28 -0
- package/generated/types/src/web/ViteGetAllHTMLFile.d.mts +9 -0
- package/generated/types/src/web/WC_extendsA.d.mts +135 -0
- package/generated/types/src/web/WC_extendsB.d.mts +135 -0
- package/generated/types/src/web/bindings/WC_StyleProp_bind.d.mts +42 -0
- package/generated/types/src/web/bindings/WC_createElement_bind.d.mts +51 -0
- package/generated/types/src/web/bindings/WC_createNamedSlot.d.mts +26 -0
- package/generated/types/src/web/bindings/WC_litRender_bind.d.mts +20 -0
- package/generated/types/src/web/bindings/WC_litStyleMap.d.mts +7 -0
- package/generated/types/src/web/common/CSS.d.mts +23 -0
- package/generated/types/src/web/common/E.d.mts +41 -0
- package/generated/types/src/web/common/NewStyleSheetAsync.d.mts +15 -0
- package/generated/types/src/web/common/NewStyleSheetSync.d.mts +15 -0
- package/generated/types/src/web/common/WC_TagName_type.d.mts +15 -0
- package/generated/types/src/web/signals/IsInViewPortSignal.d.mts +52 -0
- package/generated/types/src/web/signals/ObserverSignal.d.mts +32 -0
- package/generated/types/src/web/signals/WC_litRef.d.mts +26 -0
- package/generated/types/src/web/signals/WC_loopedSiblingsRef.d.mts +44 -0
- package/generated/vivth/exports/all.mjs +233 -0
- package/generated/vivth/exports/neutral.mjs +193 -0
- package/generated/vivth/exports/node.mjs +46 -0
- package/package.json +50 -14
- package/src/bundler/CompileAS.mjs +36 -0
- package/src/bundler/CompileJS.mjs +98 -171
- package/src/bundler/CreateESPlugin.mjs +1 -1
- package/src/bundler/EsBundler.mjs +38 -13
- package/src/bundler/FSAnalyzer.mjs +253 -0
- package/src/bundler/FSasar.bundled.mjs +128 -0
- package/src/bundler/FSasar.mjs +96 -0
- package/src/bundler/FileSelfMapper.mjs +491 -0
- package/src/bundler/JSDirMapper.mjs +528 -0
- package/src/bundler/RunWatchThenCompileJSOnSafeExit.mjs +129 -0
- package/src/bundler/adds/BrowserExternals.mjs +37 -0
- package/src/bundler/adds/CreateTransform.mjs +36 -0
- package/src/bundler/adds/LastEditedUnix.mjs +12 -0
- package/src/bundler/adds/NodeModuleList.mjs +33 -0
- package/src/bundler/adds/PathFSBundles.bundled.mjs +41 -0
- package/src/bundler/adds/PathFSBundles.mjs +91 -0
- package/src/bundler/adds/PathFSDir.bundled.mjs +53 -0
- package/src/bundler/adds/PathFSDir.mjs +100 -0
- package/src/bundler/adds/PathFSFile.bundled.mjs +40 -0
- package/src/bundler/adds/PathFSFile.mjs +85 -0
- package/src/bundler/adds/ToBundledJSPlugin.mjs +116 -55
- package/src/bundler/adds/autoExternalize.mjs +81 -0
- package/src/bundler/adds/emptyBufferValue.mjs +5 -0
- package/src/bundler/adds/isModuleTheBundledVersion.mjs +10 -0
- package/src/bundler/adds/onEndEsBuildErrorLogger.mjs +34 -0
- package/src/bundler/adds/resolveJSDependencyPath.mjs +17 -0
- package/src/class/AwaitSignal.mjs +119 -0
- package/src/class/Console.mjs +36 -14
- package/src/class/DataLog.mjs +29 -0
- package/src/class/Derived.mjs +67 -55
- package/src/class/Effect.mjs +270 -84
- package/src/class/EnvSignal.mjs +11 -8
- package/src/class/EsWatcher.mjs +60 -0
- package/src/class/EventSignal.mjs +46 -58
- package/src/class/FSDirArchWatcher.mjs +246 -0
- package/src/class/FileSafe.mjs +72 -24
- package/src/class/ForEach.mjs +78 -0
- package/src/class/ForSignal.mjs +115 -0
- package/src/class/GetterSetter.mjs +40 -0
- package/src/class/JSONFileHandler.mjs +90 -0
- package/src/class/ListSignal.mjs +68 -26
- package/src/class/LitExp.mjs +59 -36
- package/src/class/ObjectSignal.mjs +225 -0
- package/src/class/Paths.mjs +56 -20
- package/src/class/Prettivy.mjs +51 -0
- package/src/class/QChannel.mjs +48 -26
- package/src/class/SafeExit.mjs +156 -99
- package/src/class/Setup.mjs +28 -16
- package/src/class/Signal.mjs +50 -27
- package/src/class/SignalCollection.mjs +130 -0
- package/src/class/WalkThrough.mjs +6 -23
- package/src/class/{WorkerMainThreadBundled.mjs → WorkerMainThread.bundled.mjs} +61 -84
- package/src/class/WorkerMainThread.mjs +103 -102
- package/src/class/WorkerThread.mjs +24 -17
- package/src/common/Base64URL.mjs +6 -3
- package/src/common/Base64URLFromFile.mjs +17 -4
- package/src/common/BundledV.bundled.mjs +7 -0
- package/src/common/BundledV.mjs +45 -0
- package/src/common/CreateStringID.mjs +8 -7
- package/src/common/EnvMode.mjs +172 -0
- package/src/common/FactoryKey.mjs +11 -0
- package/src/common/Preferrence.mjs +27 -0
- package/src/common/Trace.mjs +1 -1
- package/src/common/TracePath.mjs +53 -3
- package/src/common/VivthUnBundledCodeBlock.mjs +8 -0
- package/src/doc/JSautoDOC.mjs +673 -284
- package/src/doc/cleanPreserveTypedef.mjs +27 -0
- package/src/doc/correctBeforeParse.mjs +57 -48
- package/src/doc/{parsedFile.mjs → parsedFileForDOC.mjs} +133 -120
- package/src/function/ClearRequireCache.mjs +33 -0
- package/src/function/CreateImmutable.mjs +40 -37
- package/src/function/EventCheck.mjs +5 -2
- package/src/function/EventObject.mjs +2 -6
- package/src/function/ForInAsync.mjs +76 -0
- package/src/function/ForInSync.mjs +87 -0
- package/src/function/ForOfAsync.mjs +61 -0
- package/src/function/ForOfSync.mjs +70 -0
- package/src/function/GetBufferFromRelativePath.mjs +25 -0
- package/src/function/GetFilesFromDir.mjs +49 -0
- package/src/function/GetMaxFilenameLength.mjs +32 -0
- package/src/function/GetModuleEsbuildPlatform.mjs +118 -0
- package/src/function/GetNamedImportAlias.mjs +2 -2
- package/src/function/GetRuntime.mjs +10 -14
- package/src/function/InstantiateAssemblyScript.mjs +22 -0
- package/src/function/IsAsync.mjs +1 -1
- package/src/function/IsInstanceOf.mjs +29 -0
- package/src/function/IsSameFile.mjs +41 -0
- package/src/function/IsStringLooksLikeAPath.mjs +20 -0
- package/src/function/IsTypeOf.mjs +27 -0
- package/src/function/IsTypeOf.mts +31 -0
- package/src/function/LazyFactory.mjs +25 -23
- package/src/function/MonkeyPatch.mjs +38 -0
- package/src/function/NewAnimationTimeline.mjs +55 -0
- package/src/function/NewChainable.mjs +69 -0
- package/src/function/NewDynamicsExport.mjs +312 -0
- package/src/function/NewObjectWrapper.mjs +14 -0
- package/src/function/ObjectRegistrar.mjs +23 -0
- package/src/function/ParseSQLFile.mjs +129 -0
- package/src/function/PipeAsync.mjs +30 -0
- package/src/function/PipeSync.mjs +28 -0
- package/src/function/SafeImport.mjs +77 -0
- package/src/function/TemplateLiteral.mjs +42 -23
- package/src/function/Timeout.mjs +4 -4
- package/src/function/Tries.mjs +22 -16
- package/src/function/TryAsync.mjs +3 -2
- package/src/function/TryNew.mjs +1 -1
- package/src/function/TsToMjs.mjs +184 -21
- package/src/function/UniqueFSTempName.mjs +33 -0
- package/src/function/errorToMessage.mjs +21 -0
- package/src/function/resolveErrorArray.mjs +15 -1
- package/src/neinth/VivthyNeinth.mjs +487 -0
- package/src/typehints/ArrayToKeys.mjs +17 -0
- package/src/typehints/ArrayToKeys.mts +31 -0
- package/src/typehints/AssemblyScriptExportsType.mjs +7 -0
- package/src/typehints/AssemblyScriptLoaderInstantiate.mjs +7 -0
- package/src/typehints/AutoDocASOptions.mjs +14 -0
- package/src/typehints/ChainableType.mjs +11 -0
- package/src/typehints/ComponentDecorator_Constructor.mjs +10 -0
- package/src/typehints/ConsoleAdditionalSettingType.mjs +6 -0
- package/src/typehints/Decorator.mjs +9 -0
- package/src/typehints/Decorator.mts +31 -0
- package/src/typehints/DecoratorMonkeyPatch.mjs +10 -0
- package/src/typehints/DecoratorMonkeyPatch.mts +43 -0
- package/src/{types → typehints}/DevTestCB.mjs +2 -2
- package/src/typehints/EnvModeType.mjs +6 -0
- package/src/{types → typehints}/ListArg.mjs +1 -1
- package/src/{types → typehints}/LitExpResultType.mjs +1 -1
- package/src/typehints/MonkeyPatchedType.mjs +13 -0
- package/src/typehints/ParametersFollowingN.mjs +8 -0
- package/src/typehints/ParametersFollowingN.mts +17 -0
- package/src/typehints/PrefixedKeysOf.mjs +9 -0
- package/src/typehints/Runtime.mjs +6 -0
- package/src/typehints/SafeImportReturnType.mjs +6 -0
- package/src/typehints/StylePropRefType.mjs +12 -0
- package/src/typehints/TemplateLiteralValueHandler.mjs +14 -0
- package/src/typehints/VLifecycleCallbacks.mjs +10 -0
- package/src/typehints/VivthCleanup.mjs +14 -0
- package/src/web/BrowserDirMapper.mjs +255 -0
- package/src/web/EnsureValidTag.mjs +5 -0
- package/src/web/EnsureValidTag.mts +10 -0
- package/src/web/ViteAddDynamics.mjs +34 -0
- package/src/web/ViteGetAllHTMLFile.mjs +97 -0
- package/src/web/WC_extendsA.mjs +330 -0
- package/src/web/WC_extendsB.mjs +332 -0
- package/src/web/bindings/WC_StyleProp_bind.mjs +70 -0
- package/src/web/bindings/WC_createElement_bind.mjs +95 -0
- package/src/web/bindings/WC_createNamedSlot.mjs +29 -0
- package/src/web/bindings/WC_litRender_bind.mjs +26 -0
- package/src/web/bindings/WC_litStyleMap.mjs +14 -0
- package/src/web/common/CSS.mjs +35 -0
- package/src/web/common/E.mjs +126 -0
- package/src/web/common/NewStyleSheetAsync.mjs +21 -0
- package/src/web/common/NewStyleSheetSync.mjs +21 -0
- package/src/web/common/WC_TagName_type.mjs +10 -0
- package/src/web/common/WC_TagName_type.mts +36 -0
- package/src/web/signals/IsInViewPortSignal.mjs +140 -0
- package/src/web/signals/ObserverSignal.mjs +93 -0
- package/src/web/signals/WC_litRef.mjs +61 -0
- package/src/web/signals/WC_loopedSiblingsRef.mjs +100 -0
- package/tsconfig.json +44 -41
- package/index.mjs +0 -91
- package/src/bundler/FSInline.mjs +0 -67
- package/src/bundler/FSInlineAnalyzer.mjs +0 -228
- package/src/bundler/FSInlineBundled.mjs +0 -38
- package/src/bundler/adds/externals.mjs +0 -8
- package/src/class/ListDerived.mjs +0 -42
- package/src/common/Dev.mjs +0 -134
- package/src/common/DevBundled.mjs +0 -5
- package/src/common/lazie.mjs +0 -3
- package/src/types/IsListSignal.mjs +0 -6
- package/src/types/Runtime.mjs +0 -6
- package/src/types/VivthDevCodeBlockStringType.mjs +0 -6
- package/types/index.d.mts +0 -58
- package/types/src/bundler/CompileJS.d.mts +0 -119
- package/types/src/bundler/FSInline.d.mts +0 -50
- package/types/src/bundler/FSInlineAnalyzer.d.mts +0 -37
- package/types/src/bundler/FSInlineBundled.d.mts +0 -22
- package/types/src/bundler/adds/externals.d.mts +0 -1
- package/types/src/class/Console.d.mts +0 -71
- package/types/src/class/Derived.d.mts +0 -98
- package/types/src/class/Effect.d.mts +0 -216
- package/types/src/class/ListDerived.d.mts +0 -38
- package/types/src/class/Paths.d.mts +0 -69
- package/types/src/class/SafeExit.d.mts +0 -103
- package/types/src/class/WorkerMainThreadBundled.d.mts +0 -83
- package/types/src/common/Base64URLFromFile.d.mts +0 -16
- package/types/src/common/Dev.d.mts +0 -68
- package/types/src/common/DevBundled.d.mts +0 -3
- package/types/src/common/lazie.d.mts +0 -1
- package/types/src/doc/JSautoDOC.d.mts +0 -83
- package/types/src/function/GetRuntime.d.mts +0 -2
- package/types/src/function/TemplateLiteral.d.mts +0 -22
- package/types/src/function/TsToMjs.d.mts +0 -23
- package/types/src/types/IsListSignal.d.mts +0 -4
- package/types/src/types/ListArg.d.mts +0 -4
- package/types/src/types/Runtime.d.mts +0 -4
- package/types/src/types/VivthDevCodeBlockStringType.d.mts +0 -4
- /package/{types → generated/types}/src/bundler/adds/pluginVivthBundle.d.mts +0 -0
- /package/{types → generated/types}/src/class/WorkerResult.d.mts +0 -0
- /package/{types → generated/types}/src/common/EventNameSpace.d.mts +0 -0
- /package/{types → generated/types}/src/common/eventObjects.d.mts +0 -0
- /package/{types → generated/types}/src/common/keys.d.mts +0 -0
- /package/{types → generated/types}/src/doc/correctBeforeParse.d.mts +0 -0
- /package/{types → generated/types}/src/function/TrySync.d.mts +0 -0
- /package/{types → generated/types}/src/function/resolveErrorArray.d.mts +0 -0
- /package/{types/src/types → generated/types/src/typehints}/AnyButUndefined.d.mts +0 -0
- /package/{types/src/types → generated/types/src/typehints}/ExtnameType.d.mts +0 -0
- /package/{types/src/types → generated/types/src/typehints}/LitExpKeyType.d.mts +0 -0
- /package/{types/src/types → generated/types/src/typehints}/LitExpResultType.d.mts +0 -0
- /package/{types/src/types → generated/types/src/typehints}/MutationType.d.mts +0 -0
- /package/{types/src/types → generated/types/src/typehints}/QCBFIFOReturn.d.mts +0 -0
- /package/{types/src/types → generated/types/src/typehints}/QCBReturn.d.mts +0 -0
- /package/src/{types → typehints}/AnyButUndefined.mjs +0 -0
- /package/src/{types → typehints}/ExtnameType.mjs +0 -0
- /package/src/{types → typehints}/LitExpKeyType.mjs +0 -0
- /package/src/{types → typehints}/MutationType.mjs +0 -0
- /package/src/{types → typehints}/QCBFIFOReturn.mjs +0 -0
- /package/src/{types → typehints}/QCBReturn.mjs +0 -0
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* it supposed to be able to call on browser too
|
|
3
|
+
* ```js
|
|
4
|
+
* import { SafeExit } from './SafeExit.mjs';
|
|
5
|
+
* ```
|
|
6
|
+
* need to add cleaner for SafeExit.instance?.addCallback
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* @typedef {import('../typehints/VivthCleanup.mjs').VivthCleanup} VivthCleanup
|
|
10
|
+
*/
|
|
11
|
+
/**
|
|
12
|
+
* @template {WorkerThread<any, any>} WT
|
|
13
|
+
* @implements {VivthCleanup}
|
|
14
|
+
*/
|
|
15
|
+
export class WorkerMainThread<WT extends import("./WorkerThread.mjs").WorkerThread<any, any>> implements VivthCleanup {
|
|
16
|
+
/**
|
|
17
|
+
* @template POST
|
|
18
|
+
* @typedef {import('./WorkerResult.mjs').WorkerResult<POST>} WorkerResult
|
|
19
|
+
*/
|
|
20
|
+
/**
|
|
21
|
+
* @template RECEIVE
|
|
22
|
+
* @template POST
|
|
23
|
+
* @typedef {import('./WorkerThread.mjs').WorkerThread<RECEIVE, POST>} WorkerThread
|
|
24
|
+
*/
|
|
25
|
+
/**
|
|
26
|
+
* @type {boolean}
|
|
27
|
+
*/
|
|
28
|
+
static #isRegistered: boolean;
|
|
29
|
+
/**
|
|
30
|
+
* @param {Object} param0
|
|
31
|
+
* @param {typeof WorkerMainThread["workerClass"]} param0.workerClass
|
|
32
|
+
* @param {typeof WorkerMainThread["pathValidator"]} param0.pathValidator
|
|
33
|
+
*/
|
|
34
|
+
static setup: ({ workerClass, pathValidator }: {
|
|
35
|
+
workerClass: (typeof WorkerMainThread)["workerClass"];
|
|
36
|
+
pathValidator: (typeof WorkerMainThread)["pathValidator"];
|
|
37
|
+
}) => void;
|
|
38
|
+
/**
|
|
39
|
+
* @type {typeof Worker|typeof import('node:worker_threads').Worker}
|
|
40
|
+
*/
|
|
41
|
+
static workerClass: typeof Worker | typeof import("node:worker_threads").Worker;
|
|
42
|
+
/**
|
|
43
|
+
* @type {(paths:{worker: string, root:string})=>Promise<string>}
|
|
44
|
+
*/
|
|
45
|
+
static pathValidator: (paths: {
|
|
46
|
+
worker: string;
|
|
47
|
+
root: string;
|
|
48
|
+
}) => Promise<string>;
|
|
49
|
+
static #options: import("node:worker_threads").WorkerOptions & {
|
|
50
|
+
type?: "module";
|
|
51
|
+
};
|
|
52
|
+
/**
|
|
53
|
+
* @template {WorkerThread<any, any>} WT
|
|
54
|
+
* @param {string} handler
|
|
55
|
+
* @param { WorkerOptions
|
|
56
|
+
* | import('node:worker_threads').WorkerOptions} options
|
|
57
|
+
* @param {WorkerMainThread<WT>} worker
|
|
58
|
+
* @param {(any:any)=>void} listener
|
|
59
|
+
* @returns {Promise<void>}
|
|
60
|
+
*/
|
|
61
|
+
static #workerFilehandler<WT_1 extends import("./WorkerThread.mjs").WorkerThread<any, any>>(handler: string, options: WorkerOptions | import("node:worker_threads").WorkerOptions, worker: WorkerMainThread<WT_1>, listener: (any: any) => void): Promise<void>;
|
|
62
|
+
/**
|
|
63
|
+
* @param {PathFSFile} handler
|
|
64
|
+
* @param {Omit<WorkerOptions|import('node:worker_threads').WorkerOptions, 'eval'|'type'>} options
|
|
65
|
+
*/
|
|
66
|
+
constructor(handler: PathFSFile, options?: Omit<WorkerOptions | import("node:worker_threads").WorkerOptions, "eval" | "type">);
|
|
67
|
+
/**
|
|
68
|
+
* @return {Promise<void>}
|
|
69
|
+
*/
|
|
70
|
+
vivthCleanup: () => Promise<void>;
|
|
71
|
+
/**
|
|
72
|
+
* @type {Derived<WorkerResult<WT["POST"]>>}
|
|
73
|
+
*/
|
|
74
|
+
receiverSignal: Derived<import("./WorkerResult.mjs").WorkerResult<WT["POST"]>>;
|
|
75
|
+
/**
|
|
76
|
+
* @type {(event: WT["RECEIVE"])=>void}
|
|
77
|
+
*/
|
|
78
|
+
postMessage: (event: WT["RECEIVE"]) => void;
|
|
79
|
+
#private;
|
|
80
|
+
}
|
|
81
|
+
export type VivthCleanup = import("../typehints/VivthCleanup.mjs").VivthCleanup;
|
|
82
|
+
import { Derived } from './Derived.mjs';
|
|
83
|
+
import { PathFSFile } from '../bundler/adds/PathFSFile.mjs';
|
|
@@ -1,26 +1,34 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
2
|
+
* it supposed to be able to call on browser too
|
|
3
|
+
* ```js
|
|
4
|
+
* import { SafeExit } from './SafeExit.mjs';
|
|
5
|
+
* ```
|
|
6
|
+
* need to add cleaner for SafeExit.instance?.addCallback
|
|
4
7
|
*/
|
|
5
8
|
/**
|
|
6
|
-
* @
|
|
7
|
-
* @template POST
|
|
8
|
-
* @typedef {import('./WorkerThread.mjs').WorkerThread<RECEIVE, POST>} WorkerThread
|
|
9
|
-
*/
|
|
10
|
-
/**
|
|
11
|
-
* @typedef {import('../common/lazie.mjs').unwrapLazy} unwrapLazy
|
|
9
|
+
* @typedef {import('../typehints/VivthCleanup.mjs').VivthCleanup} VivthCleanup
|
|
12
10
|
*/
|
|
13
11
|
/**
|
|
14
12
|
* @description
|
|
15
13
|
* - class helper to create `Worker` instance;
|
|
16
14
|
* - before any `Worker` functionaily to be used, you need to setup it with `WorkerThread.setup` and `WorkerMainThread.setup` before runing anytyhing;
|
|
17
15
|
* @template {WorkerThread<any, any>} WT
|
|
16
|
+
* @implements {VivthCleanup}
|
|
18
17
|
*/
|
|
19
|
-
export class WorkerMainThread<WT extends WorkerThread<any, any>> {
|
|
18
|
+
export class WorkerMainThread<WT extends import("./WorkerThread.mjs").WorkerThread<any, any>> implements VivthCleanup {
|
|
19
|
+
/**
|
|
20
|
+
* @template POST
|
|
21
|
+
* @typedef {import('./WorkerResult.mjs').WorkerResult<POST>} WorkerResult
|
|
22
|
+
*/
|
|
23
|
+
/**
|
|
24
|
+
* @template RECEIVE
|
|
25
|
+
* @template POST
|
|
26
|
+
* @typedef {import('./WorkerThread.mjs').WorkerThread<RECEIVE, POST>} WorkerThread
|
|
27
|
+
*/
|
|
20
28
|
/**
|
|
21
29
|
* @type {boolean}
|
|
22
30
|
*/
|
|
23
|
-
static
|
|
31
|
+
static #isRegistered: boolean;
|
|
24
32
|
/**
|
|
25
33
|
* @description
|
|
26
34
|
* - need to be called first, before any `WorkerMainThread` instantiation:
|
|
@@ -42,7 +50,7 @@ export class WorkerMainThread<WT extends WorkerThread<any, any>> {
|
|
|
42
50
|
* ```
|
|
43
51
|
* @example
|
|
44
52
|
* import { Worker } from 'node:worker_threads';
|
|
45
|
-
* import { WorkerMainThread } from 'vivth';
|
|
53
|
+
* import { WorkerMainThread } from 'vivth/neutral';
|
|
46
54
|
*
|
|
47
55
|
* WorkerMainThread.setup({
|
|
48
56
|
* workerClass: Worker,
|
|
@@ -79,22 +87,9 @@ export class WorkerMainThread<WT extends WorkerThread<any, any>> {
|
|
|
79
87
|
worker: string;
|
|
80
88
|
root: string;
|
|
81
89
|
}) => Promise<string>;
|
|
82
|
-
static
|
|
90
|
+
static #options: import("node:worker_threads").WorkerOptions & {
|
|
83
91
|
type?: "module";
|
|
84
92
|
};
|
|
85
|
-
/**
|
|
86
|
-
* @template {WorkerThread<any, any>} WT
|
|
87
|
-
* @description
|
|
88
|
-
* - create Worker_instance;
|
|
89
|
-
* @param {string} handler
|
|
90
|
-
* @param {Omit<WorkerOptions|import('node:worker_threads').WorkerOptions, 'eval'|'type'>} [options]
|
|
91
|
-
* @returns {WorkerMainThread<WT>}
|
|
92
|
-
* @example
|
|
93
|
-
* import { WorkerMainThread } from 'vivth';
|
|
94
|
-
*
|
|
95
|
-
* export const myDoubleWorker = WorkerMainThread.newVivthWorker('./doubleWorkerThread.mjs');
|
|
96
|
-
*/
|
|
97
|
-
static newVivthWorker<WT_1 extends WorkerThread<any, any>>(handler: string, options?: Omit<WorkerOptions | import("node:worker_threads").WorkerOptions, "eval" | "type">): WorkerMainThread<WT_1>;
|
|
98
93
|
/**
|
|
99
94
|
* @template {WorkerThread<any, any>} WT
|
|
100
95
|
* @param {string} handler
|
|
@@ -104,29 +99,30 @@ export class WorkerMainThread<WT extends WorkerThread<any, any>> {
|
|
|
104
99
|
* @param {(any:any)=>void} listener
|
|
105
100
|
* @returns {Promise<void>}
|
|
106
101
|
*/
|
|
107
|
-
static
|
|
102
|
+
static #workerFilehandler<WT_1 extends import("./WorkerThread.mjs").WorkerThread<any, any>>(handler: string, options: WorkerOptions | import("node:worker_threads").WorkerOptions, worker: WorkerMainThread<WT_1>, listener: (any: any) => void): Promise<void>;
|
|
108
103
|
/**
|
|
109
|
-
* @
|
|
110
|
-
*
|
|
111
|
-
* @param {
|
|
104
|
+
* @description
|
|
105
|
+
* - create Worker_instance;
|
|
106
|
+
* @param {import('../bundler/adds/PathFSBundles.mjs').PathFSBundles} handler
|
|
107
|
+
* @param {Omit<WorkerOptions|import('node:worker_threads').WorkerOptions, 'eval'|'type'>} options
|
|
112
108
|
* @example
|
|
113
|
-
* import { WorkerMainThread } from 'vivth';
|
|
109
|
+
* import { WorkerMainThread } from 'vivth/neutral';
|
|
114
110
|
*
|
|
115
|
-
* export const myDoubleWorker = WorkerMainThread.
|
|
111
|
+
* export const myDoubleWorker = new WorkerMainThread(PathFSBundles.vivthBundles('./doubleWorkerThread.mjs'));
|
|
116
112
|
*/
|
|
117
|
-
|
|
113
|
+
constructor(handler: import("../bundler/adds/PathFSBundles.mjs").PathFSBundles, options?: Omit<WorkerOptions | import("node:worker_threads").WorkerOptions, "eval" | "type">);
|
|
118
114
|
/**
|
|
119
115
|
* @description
|
|
120
116
|
* - terminate all signals that are used on this instance;
|
|
121
|
-
* @return {void}
|
|
117
|
+
* @return {Promise<void>}
|
|
122
118
|
*/
|
|
123
|
-
|
|
119
|
+
vivthCleanup: () => Promise<void>;
|
|
124
120
|
/**
|
|
125
121
|
* @description
|
|
126
122
|
* - result signal of the processed message;
|
|
127
123
|
* @type {Derived<WorkerResult<WT["POST"]>>}
|
|
128
124
|
* @example
|
|
129
|
-
* import { Effect } from 'vivth';
|
|
125
|
+
* import { Effect } from 'vivth/neutral';
|
|
130
126
|
* import { myDoubleWorker } from './myDoubleWorker.mjs';
|
|
131
127
|
*
|
|
132
128
|
* const doubleReceiverSignal = myDoubleWorker.receiverSignal;
|
|
@@ -135,7 +131,7 @@ export class WorkerMainThread<WT extends WorkerThread<any, any>> {
|
|
|
135
131
|
* // code
|
|
136
132
|
* })
|
|
137
133
|
*/
|
|
138
|
-
receiverSignal: Derived<WorkerResult<WT["POST"]>>;
|
|
134
|
+
receiverSignal: Derived<import("./WorkerResult.mjs").WorkerResult<WT["POST"]>>;
|
|
139
135
|
/**
|
|
140
136
|
* @description
|
|
141
137
|
* - callback to send message to the worker thread;
|
|
@@ -148,7 +144,5 @@ export class WorkerMainThread<WT extends WorkerThread<any, any>> {
|
|
|
148
144
|
postMessage: (event: WT["RECEIVE"]) => void;
|
|
149
145
|
#private;
|
|
150
146
|
}
|
|
151
|
-
export type
|
|
152
|
-
export type WorkerThread<RECEIVE, POST> = import("./WorkerThread.mjs").WorkerThread<RECEIVE, POST>;
|
|
153
|
-
export type unwrapLazy = "vivth:unwrapLazy;";
|
|
147
|
+
export type VivthCleanup = import("../typehints/VivthCleanup.mjs").VivthCleanup;
|
|
154
148
|
import { Derived } from './Derived.mjs';
|
|
@@ -1,18 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @typedef { import('../typehints/VivthCleanup.mjs').VivthCleanup } VivthCleanup
|
|
3
|
+
*/
|
|
1
4
|
/**
|
|
2
5
|
* @description
|
|
3
6
|
* - class helper for `WorkerThread` creation;
|
|
4
7
|
* - before any `Worker` functionaily to be used, you need to setup it with `WorkerThread.setup` and `WorkerMainThread.setup` before runing anytyhing;
|
|
5
8
|
* @template RECEIVE
|
|
6
9
|
* @template POST
|
|
10
|
+
* @implements {VivthCleanup}
|
|
7
11
|
*/
|
|
8
|
-
export class WorkerThread<RECEIVE, POST> {
|
|
12
|
+
export class WorkerThread<RECEIVE, POST> implements VivthCleanup {
|
|
9
13
|
/**
|
|
10
|
-
* @typedef {import('../
|
|
14
|
+
* @typedef {import('../typehints/QCBReturn.mjs').QCBReturn} QCBReturn
|
|
11
15
|
*/
|
|
12
16
|
/**
|
|
13
17
|
* @type {Parameters<typeof WorkerThread["setup"]>[0]|undefined}
|
|
14
18
|
*/
|
|
15
|
-
static
|
|
19
|
+
static #refs: Parameters<(typeof WorkerThread)["setup"]>[0] | undefined;
|
|
16
20
|
/**
|
|
17
21
|
* @description
|
|
18
22
|
* - need to be called and exported as new `WorkerThread` class reference;
|
|
@@ -25,8 +29,8 @@ export class WorkerThread<RECEIVE, POST> {
|
|
|
25
29
|
* ```
|
|
26
30
|
* @returns {typeof WorkerThread<RECEIVE, POST>}
|
|
27
31
|
* @example
|
|
28
|
-
* import { WorkerThread } from 'vivth';
|
|
29
32
|
* import { parentPort } from 'node:worker_threads';
|
|
33
|
+
* import { WorkerThread } from 'vivth/neutral';
|
|
30
34
|
*
|
|
31
35
|
* export const MyWorkerThreadRef = WorkerThread.setup({ parentPort });
|
|
32
36
|
*/
|
|
@@ -36,7 +40,7 @@ export class WorkerThread<RECEIVE, POST> {
|
|
|
36
40
|
/**
|
|
37
41
|
* @param {any} ev
|
|
38
42
|
*/
|
|
39
|
-
static
|
|
43
|
+
static #isCloseWorkerEvent: (ev: any) => boolean;
|
|
40
44
|
/**
|
|
41
45
|
* @description
|
|
42
46
|
* - instantiate via created class from `setup` static method;
|
|
@@ -57,6 +61,7 @@ export class WorkerThread<RECEIVE, POST> {
|
|
|
57
61
|
* new MyWorkerThread(handler);
|
|
58
62
|
*/
|
|
59
63
|
constructor(handler: WorkerThread<RECEIVE, POST>["handler"]);
|
|
64
|
+
vivthCleanup: () => Promise<void>;
|
|
60
65
|
/**
|
|
61
66
|
* @description
|
|
62
67
|
* - type helper;
|
|
@@ -77,3 +82,4 @@ export class WorkerThread<RECEIVE, POST> {
|
|
|
77
82
|
POST: POST;
|
|
78
83
|
#private;
|
|
79
84
|
}
|
|
85
|
+
export type VivthCleanup = import("../typehints/VivthCleanup.mjs").VivthCleanup;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @description
|
|
3
|
+
* - create inline base64 url;
|
|
4
|
+
* - usage:
|
|
5
|
+
* >- can be extremely usefull to display file on desktop app webview, without exposing http server;
|
|
6
|
+
* >- when using `FSasar`, use [Base64URL](#base64url) instead;
|
|
7
|
+
* @param {string} filePath
|
|
8
|
+
* @returns {Promise<{data:string, mime:string|false}|undefined>}
|
|
9
|
+
* @example
|
|
10
|
+
* import { join } from 'node:path'
|
|
11
|
+
*
|
|
12
|
+
* import { Base64URLFromFile } from 'vivth/node';
|
|
13
|
+
* import { Paths } from 'vivth/neutral';
|
|
14
|
+
*
|
|
15
|
+
* await Base64URLFromFile(join(Paths.root, '/path/to/file'));
|
|
16
|
+
*/
|
|
17
|
+
export function Base64URLFromFile(filePath: string): Promise<{
|
|
18
|
+
data: string;
|
|
19
|
+
mime: string | false;
|
|
20
|
+
} | undefined>;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @description
|
|
3
|
+
* - class helper for `vivth` `Bundled` values;
|
|
4
|
+
*/
|
|
5
|
+
export class BundledV {
|
|
6
|
+
static #isBundled: boolean;
|
|
7
|
+
/**
|
|
8
|
+
* @description
|
|
9
|
+
* - readonly value of whether the script run after being bundled with `vivth` or not;
|
|
10
|
+
* @readonly
|
|
11
|
+
* @type {boolean}
|
|
12
|
+
* @example
|
|
13
|
+
* import { BundledV } from 'vivth/neutral';
|
|
14
|
+
*
|
|
15
|
+
* if(BundledV.isBundled){
|
|
16
|
+
* // code
|
|
17
|
+
* }
|
|
18
|
+
*/
|
|
19
|
+
static readonly get isBundled(): boolean;
|
|
20
|
+
/**
|
|
21
|
+
* @description
|
|
22
|
+
* - to create `unbundled` only codeBlock;
|
|
23
|
+
* >- when properly bundled via `vivth` bundling mechanism, this code block will be removed;
|
|
24
|
+
* @param {()=>void} callback
|
|
25
|
+
* @param {import('./VivthUnBundledCodeBlock.mjs').VivthUnBundledCodeBlock} _closing
|
|
26
|
+
* - must be filled for regexp detection;
|
|
27
|
+
* @returns {void}
|
|
28
|
+
* @example
|
|
29
|
+
* import { BundledV } from 'vivth/neutral';
|
|
30
|
+
*
|
|
31
|
+
* BundledV.vivthUnBundledCodeBlock(() => {
|
|
32
|
+
* // code
|
|
33
|
+
* }, 'vivthUnBundledCodeBlock')
|
|
34
|
+
*/
|
|
35
|
+
static vivthUnBundledCodeBlock: (callback: () => void, _closing: "vivthUnBundledCodeBlock") => void;
|
|
36
|
+
}
|
|
@@ -4,17 +4,18 @@
|
|
|
4
4
|
* - the asynchrounous nature is to prevent race condition that might resulting same Id being generated;
|
|
5
5
|
* >- queued using QChannel;
|
|
6
6
|
* @param {string} [prefix]
|
|
7
|
+
* @param {string} [suffix]
|
|
7
8
|
* @returns {ReturnType<typeof TryAsync<string>>}
|
|
8
9
|
* @example
|
|
9
|
-
* import { CreateStringID } from 'vivth';
|
|
10
|
+
* import { CreateStringID } from 'vivth/neutral';
|
|
10
11
|
*
|
|
11
12
|
* (async () => {
|
|
12
|
-
* const [myUniqueID, errorCreatingUniqueID] = await CreateStringID('myPrefix');
|
|
13
|
+
* const [myUniqueID, errorCreatingUniqueID] = await CreateStringID('myPrefix', 'mySuffix');
|
|
13
14
|
* if(errorCreatingUniqueID) {
|
|
14
15
|
* return;
|
|
15
16
|
* }
|
|
16
|
-
* Console.log(myUniqueID); // `myPrefix${Date.now()}`
|
|
17
|
+
* Console.log(myUniqueID); // `myPrefix${Date.now()}mySuffix`
|
|
17
18
|
* })()
|
|
18
19
|
*/
|
|
19
|
-
export function CreateStringID(prefix?: string): ReturnType<typeof TryAsync<string>>;
|
|
20
|
+
export function CreateStringID(prefix?: string, suffix?: string): ReturnType<typeof TryAsync<string>>;
|
|
20
21
|
import { TryAsync } from '../function/TryAsync.mjs';
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @typedef {import('../typehints/EnvModeType.mjs').EnvModeType} EnvModeType
|
|
3
|
+
* @typedef {import('../typehints/DevTestCB.mjs').DevTestCB} DevTestCB
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* @description
|
|
7
|
+
* - class helper for determining environtment mode to be `developement` or `production`;
|
|
8
|
+
*/
|
|
9
|
+
export class EnvMode {
|
|
10
|
+
/**
|
|
11
|
+
* @type {Signal<EnvModeType>}
|
|
12
|
+
*/
|
|
13
|
+
static #mode: Signal<EnvModeType>;
|
|
14
|
+
/**
|
|
15
|
+
* @description
|
|
16
|
+
* - `Derived` wrapper of whether is in `dev` mode or `prod` not;
|
|
17
|
+
* >- for listener only;
|
|
18
|
+
* @type {Derived<EnvModeType>}
|
|
19
|
+
* @example
|
|
20
|
+
* import { EnvMode, Effect } from 'vivth/neutral';
|
|
21
|
+
*
|
|
22
|
+
* console.log(EnvMode.mode.value); // default: 'dev'
|
|
23
|
+
*
|
|
24
|
+
* // listeneing to changes;
|
|
25
|
+
* new Effect(async({ subscribe }) => {
|
|
26
|
+
* const mode = subscribe(EnvMode.mode).value;
|
|
27
|
+
* // code
|
|
28
|
+
* })
|
|
29
|
+
*/
|
|
30
|
+
static mode: Derived<EnvModeType>;
|
|
31
|
+
/**
|
|
32
|
+
* @description
|
|
33
|
+
* - enforce development or production mode;
|
|
34
|
+
* - DO NOT EXPOSE THIS API TO UNSECURED ACCESS, DIRECTLY NOR INDIRECTLY;
|
|
35
|
+
* @param {EnvModeType} mode
|
|
36
|
+
* @returns {void}
|
|
37
|
+
* @example
|
|
38
|
+
* import { EnvMode } from 'vivth/neutral';
|
|
39
|
+
*
|
|
40
|
+
* EnvMode.enforce('dev'); // OR
|
|
41
|
+
* EnvMode.enforce('prod');
|
|
42
|
+
*/
|
|
43
|
+
static enforce: (mode: EnvModeType) => void;
|
|
44
|
+
/**
|
|
45
|
+
* @type {Signal<Map<string,Awaited<ReturnType<typeof TryAsync<boolean>>>>>}
|
|
46
|
+
*/
|
|
47
|
+
static #notifications: Signal<Map<string, Awaited<ReturnType<typeof TryAsync<boolean>>>>>;
|
|
48
|
+
/**
|
|
49
|
+
* @type {DevTestCB}
|
|
50
|
+
*/
|
|
51
|
+
static #test: DevTestCB;
|
|
52
|
+
static #effectForCheck: Effect & {
|
|
53
|
+
[FactoryKey]: FACTORY;
|
|
54
|
+
};
|
|
55
|
+
/**
|
|
56
|
+
* @description
|
|
57
|
+
* @param {(options:{devTest:DevTestCB}|
|
|
58
|
+
* {devTest:undefined})=>Promise<void>
|
|
59
|
+
* } callback
|
|
60
|
+
* - when on `dev` mode also provide `test` method for inline testing:
|
|
61
|
+
* >- which is wrapped in `TryAsync`, throwed errors will automatically return `false`;
|
|
62
|
+
* - for smaller bundle size, you can wrap the `devTest` with `BundleV.vivthUnBundledCodeBlock`;
|
|
63
|
+
* @param {Effect["options"]["subscribe"]} [subscribe]
|
|
64
|
+
* - optional whether to scope the callback into an `Effect`;
|
|
65
|
+
* @returns {Promise<void>}
|
|
66
|
+
*/
|
|
67
|
+
static codeBlock(callback: (options: {
|
|
68
|
+
devTest: DevTestCB;
|
|
69
|
+
} | {
|
|
70
|
+
devTest: undefined;
|
|
71
|
+
}) => Promise<void>, subscribe?: Effect["options"]["subscribe"]): Promise<void>;
|
|
72
|
+
}
|
|
73
|
+
export type EnvModeType = import("../typehints/EnvModeType.mjs").EnvModeType;
|
|
74
|
+
export type DevTestCB = import("../typehints/DevTestCB.mjs").DevTestCB;
|
|
75
|
+
import { Signal } from '../class/Signal.mjs';
|
|
76
|
+
import { Derived } from '../class/Derived.mjs';
|
|
77
|
+
import { TryAsync } from '../function/TryAsync.mjs';
|
|
78
|
+
import { Effect } from '../class/Effect.mjs';
|
|
79
|
+
import { FactoryKey } from './FactoryKey.mjs';
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @description
|
|
3
|
+
* - key symbol to imediately generate object wrapped by `LazyFactory`;
|
|
4
|
+
* - usefull for Object that has different accessor behaviour when being get via Proxy, like:
|
|
5
|
+
* >- `Set<any>`;
|
|
6
|
+
* >- `Map<any, any>`;
|
|
7
|
+
* @type {symbol}
|
|
8
|
+
*/
|
|
9
|
+
export const FactoryKey: symbol;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @description
|
|
3
|
+
* - class wrapper for `vivth` innerworking preferrences;
|
|
4
|
+
*/
|
|
5
|
+
export class Preferrence {
|
|
6
|
+
/**
|
|
7
|
+
* @description
|
|
8
|
+
* - default `vivth` innerworking encoding;
|
|
9
|
+
* @type {BufferEncoding}
|
|
10
|
+
*/
|
|
11
|
+
static encoding: BufferEncoding;
|
|
12
|
+
/**
|
|
13
|
+
* @description
|
|
14
|
+
* - setup `vivth `preffered encoding;
|
|
15
|
+
* @param {Object} arg0
|
|
16
|
+
* @param {typeof Preferrence["encoding"]} arg0.encoding
|
|
17
|
+
* @example
|
|
18
|
+
* import { Preferrence } from 'vivth/neutral';
|
|
19
|
+
*
|
|
20
|
+
* Preferrence.setup({ encoding: 'utf-8' });
|
|
21
|
+
*/
|
|
22
|
+
static setup: ({ encoding }: {
|
|
23
|
+
encoding: (typeof Preferrence)["encoding"];
|
|
24
|
+
}) => void;
|
|
25
|
+
}
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
* - if return false, continue to check the stacks;
|
|
12
12
|
* @returns {string|undefined}
|
|
13
13
|
* @example
|
|
14
|
-
* import { TracePath, Console } from 'vivth';
|
|
14
|
+
* import { TracePath, Console } from 'vivth/neutral';
|
|
15
15
|
*
|
|
16
16
|
* Console.log(
|
|
17
17
|
* TracePath((stackString) => {
|