@powerlines/core 0.15.0 → 0.15.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/constants/api.cjs +6 -5
- package/dist/constants/api.d.cts +3 -3
- package/dist/constants/api.d.cts.map +1 -1
- package/dist/constants/api.d.mts +3 -3
- package/dist/constants/api.d.mts.map +1 -1
- package/dist/constants/api.mjs +4 -4
- package/dist/constants/api.mjs.map +1 -1
- package/dist/constants/commands.cjs +3 -2
- package/dist/constants/commands.d.cts +1 -1
- package/dist/constants/commands.d.mts +1 -1
- package/dist/constants/commands.mjs +2 -2
- package/dist/constants/commands.mjs.map +1 -1
- package/dist/constants/devtools.cjs +23 -0
- package/dist/constants/devtools.d.cts +13 -0
- package/dist/constants/devtools.d.cts.map +1 -0
- package/dist/constants/devtools.d.mts +13 -0
- package/dist/constants/devtools.d.mts.map +1 -0
- package/dist/constants/devtools.mjs +14 -0
- package/dist/constants/devtools.mjs.map +1 -0
- package/dist/constants/environments.cjs +1 -0
- package/dist/constants/extensions.cjs +21 -0
- package/dist/constants/extensions.d.cts +5 -0
- package/dist/constants/extensions.d.cts.map +1 -0
- package/dist/constants/extensions.d.mts +5 -0
- package/dist/constants/extensions.d.mts.map +1 -0
- package/dist/constants/extensions.mjs +20 -0
- package/dist/constants/extensions.mjs.map +1 -0
- package/dist/constants/fs.cjs +1 -0
- package/dist/constants/hooks.cjs +1 -0
- package/dist/constants/index.cjs +48 -30
- package/dist/constants/index.d.cts +5 -3
- package/dist/constants/index.d.mts +5 -3
- package/dist/constants/index.mjs +5 -3
- package/dist/constants/log-level.cjs +90 -0
- package/dist/constants/log-level.d.cts +63 -0
- package/dist/constants/log-level.d.cts.map +1 -0
- package/dist/constants/log-level.d.mts +63 -0
- package/dist/constants/log-level.d.mts.map +1 -0
- package/dist/constants/log-level.mjs +82 -0
- package/dist/constants/log-level.mjs.map +1 -0
- package/dist/constants/meta.cjs +1 -0
- package/dist/constants/plugin.cjs +3 -2
- package/dist/constants/plugin.d.cts +2 -2
- package/dist/constants/plugin.d.mts +2 -2
- package/dist/context/base-context.cjs +127 -0
- package/dist/context/base-context.d.cts +81 -0
- package/dist/context/base-context.d.cts.map +1 -0
- package/dist/context/base-context.d.mts +81 -0
- package/dist/context/base-context.d.mts.map +1 -0
- package/dist/context/base-context.mjs +125 -0
- package/dist/context/base-context.mjs.map +1 -0
- package/dist/context/context.cjs +934 -0
- package/dist/context/context.d.cts +369 -0
- package/dist/context/context.d.cts.map +1 -0
- package/dist/context/context.d.mts +369 -0
- package/dist/context/context.d.mts.map +1 -0
- package/dist/context/context.mjs +932 -0
- package/dist/context/context.mjs.map +1 -0
- package/dist/context/environment-context.cjs +219 -0
- package/dist/context/environment-context.d.cts +100 -0
- package/dist/context/environment-context.d.cts.map +1 -0
- package/dist/context/environment-context.d.mts +100 -0
- package/dist/context/environment-context.d.mts.map +1 -0
- package/dist/context/environment-context.mjs +218 -0
- package/dist/context/environment-context.mjs.map +1 -0
- package/dist/context/execution-context.cjs +230 -0
- package/dist/context/execution-context.d.cts +101 -0
- package/dist/context/execution-context.d.cts.map +1 -0
- package/dist/context/execution-context.d.mts +101 -0
- package/dist/context/execution-context.d.mts.map +1 -0
- package/dist/context/execution-context.mjs +228 -0
- package/dist/context/execution-context.mjs.map +1 -0
- package/dist/context/index.cjs +12 -0
- package/dist/context/index.d.cts +6 -0
- package/dist/context/index.d.mts +6 -0
- package/dist/context/index.mjs +7 -0
- package/dist/context/plugin-context.cjs +83 -0
- package/dist/context/plugin-context.d.cts +18 -0
- package/dist/context/plugin-context.d.cts.map +1 -0
- package/dist/context/plugin-context.d.mts +18 -0
- package/dist/context/plugin-context.d.mts.map +1 -0
- package/dist/context/plugin-context.mjs +82 -0
- package/dist/context/plugin-context.mjs.map +1 -0
- package/dist/index.cjs +62 -9
- package/dist/index.d.cts +20 -9
- package/dist/index.d.mts +20 -9
- package/dist/index.mjs +17 -5
- package/dist/lib/config.cjs +160 -15
- package/dist/lib/config.d.cts +92 -6
- package/dist/lib/config.d.cts.map +1 -1
- package/dist/lib/config.d.mts +92 -6
- package/dist/lib/config.d.mts.map +1 -1
- package/dist/lib/config.mjs +154 -16
- package/dist/lib/config.mjs.map +1 -1
- package/dist/lib/context-helpers.cjs +43 -0
- package/dist/lib/context-helpers.d.cts +19 -0
- package/dist/lib/context-helpers.d.cts.map +1 -0
- package/dist/lib/context-helpers.d.mts +19 -0
- package/dist/lib/context-helpers.d.mts.map +1 -0
- package/dist/lib/context-helpers.mjs +41 -0
- package/dist/lib/context-helpers.mjs.map +1 -0
- package/dist/lib/entry.cjs +5 -5
- package/dist/lib/entry.d.cts.map +1 -1
- package/dist/lib/entry.d.mts.map +1 -1
- package/dist/lib/entry.mjs +5 -5
- package/dist/lib/entry.mjs.map +1 -1
- package/dist/lib/environment.cjs +72 -0
- package/dist/lib/environment.d.cts +12 -0
- package/dist/lib/environment.d.cts.map +1 -0
- package/dist/lib/environment.d.mts +12 -0
- package/dist/lib/environment.d.mts.map +1 -0
- package/dist/lib/environment.mjs +67 -0
- package/dist/lib/environment.mjs.map +1 -0
- package/dist/lib/events.cjs +43 -0
- package/dist/lib/events.d.cts +10 -0
- package/dist/lib/events.d.cts.map +1 -0
- package/dist/lib/events.d.mts +10 -0
- package/dist/lib/events.d.mts.map +1 -0
- package/dist/lib/events.mjs +42 -0
- package/dist/lib/events.mjs.map +1 -0
- package/dist/lib/generate-types.cjs +371 -0
- package/dist/lib/generate-types.d.cts +67 -0
- package/dist/lib/generate-types.d.cts.map +1 -0
- package/dist/lib/generate-types.d.mts +67 -0
- package/dist/lib/generate-types.d.mts.map +1 -0
- package/dist/lib/generate-types.mjs +368 -0
- package/dist/lib/generate-types.mjs.map +1 -0
- package/dist/lib/hooks.cjs +152 -0
- package/dist/lib/hooks.d.cts +28 -0
- package/dist/lib/hooks.d.cts.map +1 -0
- package/dist/lib/hooks.d.mts +28 -0
- package/dist/lib/hooks.d.mts.map +1 -0
- package/dist/lib/hooks.mjs +147 -0
- package/dist/lib/hooks.mjs.map +1 -0
- package/dist/lib/index.cjs +64 -9
- package/dist/lib/index.d.cts +15 -3
- package/dist/lib/index.d.mts +15 -3
- package/dist/lib/index.mjs +19 -5
- package/dist/lib/install-dependencies.cjs +25 -0
- package/dist/lib/install-dependencies.d.cts +12 -0
- package/dist/lib/install-dependencies.d.cts.map +1 -0
- package/dist/lib/install-dependencies.d.mts +12 -0
- package/dist/lib/install-dependencies.d.mts.map +1 -0
- package/dist/lib/install-dependencies.mjs +24 -0
- package/dist/lib/install-dependencies.mjs.map +1 -0
- package/dist/lib/meta.cjs +57 -0
- package/dist/lib/meta.d.cts +34 -0
- package/dist/lib/meta.d.cts.map +1 -0
- package/dist/lib/meta.d.mts +34 -0
- package/dist/lib/meta.d.mts.map +1 -0
- package/dist/lib/meta.mjs +54 -0
- package/dist/lib/meta.mjs.map +1 -0
- package/dist/lib/plugins.cjs +150 -0
- package/dist/lib/plugins.d.cts +40 -0
- package/dist/lib/plugins.d.cts.map +1 -0
- package/dist/lib/plugins.d.mts +40 -0
- package/dist/lib/plugins.d.mts.map +1 -0
- package/dist/lib/plugins.mjs +146 -0
- package/dist/lib/plugins.mjs.map +1 -0
- package/dist/lib/resolver.cjs +35 -0
- package/dist/lib/resolver.d.cts +21 -0
- package/dist/lib/resolver.d.cts.map +1 -0
- package/dist/lib/resolver.d.mts +21 -0
- package/dist/lib/resolver.d.mts.map +1 -0
- package/dist/lib/resolver.mjs +33 -0
- package/dist/lib/resolver.mjs.map +1 -0
- package/dist/lib/schemas.cjs +9 -0
- package/dist/lib/schemas.d.cts +2 -0
- package/dist/lib/schemas.d.mts +2 -0
- package/dist/lib/schemas.mjs +3 -0
- package/dist/lib/streaming-channel.cjs +260 -0
- package/dist/lib/streaming-channel.d.cts +133 -0
- package/dist/lib/streaming-channel.d.cts.map +1 -0
- package/dist/lib/streaming-channel.d.mts +133 -0
- package/dist/lib/streaming-channel.d.mts.map +1 -0
- package/dist/lib/streaming-channel.mjs +258 -0
- package/dist/lib/streaming-channel.mjs.map +1 -0
- package/dist/lib/typescript/index.cjs +16 -0
- package/dist/lib/typescript/index.d.cts +3 -0
- package/dist/lib/typescript/index.d.mts +3 -0
- package/dist/lib/typescript/index.mjs +4 -0
- package/dist/lib/typescript/ts-morph.cjs +105 -0
- package/dist/lib/typescript/ts-morph.d.cts +38 -0
- package/dist/lib/typescript/ts-morph.d.cts.map +1 -0
- package/dist/lib/typescript/ts-morph.d.mts +38 -0
- package/dist/lib/typescript/ts-morph.d.mts.map +1 -0
- package/dist/lib/typescript/ts-morph.mjs +102 -0
- package/dist/lib/typescript/ts-morph.mjs.map +1 -0
- package/dist/lib/typescript/tsconfig.cjs +253 -0
- package/dist/lib/typescript/tsconfig.d.cts +77 -0
- package/dist/lib/typescript/tsconfig.d.cts.map +1 -0
- package/dist/lib/typescript/tsconfig.d.mts +77 -0
- package/dist/lib/typescript/tsconfig.d.mts.map +1 -0
- package/dist/lib/typescript/tsconfig.mjs +240 -0
- package/dist/lib/typescript/tsconfig.mjs.map +1 -0
- package/dist/lib/unplugin/helpers.cjs +2 -2
- package/dist/lib/unplugin/module-resolution.cjs +18 -18
- package/dist/lib/unplugin/module-resolution.mjs +18 -18
- package/dist/lib/unplugin/module-resolution.mjs.map +1 -1
- package/dist/lib/unplugin/plugin.cjs +55 -62
- package/dist/lib/unplugin/plugin.d.cts +10 -11
- package/dist/lib/unplugin/plugin.d.cts.map +1 -1
- package/dist/lib/unplugin/plugin.d.mts +10 -11
- package/dist/lib/unplugin/plugin.d.mts.map +1 -1
- package/dist/lib/unplugin/plugin.mjs +55 -62
- package/dist/lib/unplugin/plugin.mjs.map +1 -1
- package/dist/lib/utilities/file-header.cjs +2 -2
- package/dist/lib/utilities/file-header.mjs +2 -2
- package/dist/lib/utilities/file-header.mjs.map +1 -1
- package/dist/lib/utilities/format.cjs +1 -1
- package/dist/lib/utilities/format.mjs +1 -1
- package/dist/lib/utilities/index.cjs +2 -2
- package/dist/lib/utilities/index.mjs +2 -2
- package/dist/lib/utilities/write-file.cjs +1 -2
- package/dist/lib/utilities/write-file.d.cts +1 -1
- package/dist/lib/utilities/write-file.d.cts.map +1 -1
- package/dist/lib/utilities/write-file.d.mts +1 -1
- package/dist/lib/utilities/write-file.d.mts.map +1 -1
- package/dist/lib/utilities/write-file.mjs +1 -2
- package/dist/lib/utilities/write-file.mjs.map +1 -1
- package/dist/lib/vfs.cjs +1104 -0
- package/dist/lib/vfs.d.cts +321 -0
- package/dist/lib/vfs.d.cts.map +1 -0
- package/dist/lib/vfs.d.mts +321 -0
- package/dist/lib/vfs.d.mts.map +1 -0
- package/dist/lib/vfs.mjs +1102 -0
- package/dist/lib/vfs.mjs.map +1 -0
- package/dist/plugin-base.cjs +1 -1
- package/dist/plugin-base.mjs +1 -1
- package/dist/plugin-base.mjs.map +1 -1
- package/dist/plugin-utils/build-helpers.cjs +2 -2
- package/dist/plugin-utils/build-helpers.mjs +2 -2
- package/dist/plugin-utils/build-helpers.mjs.map +1 -1
- package/dist/plugin-utils/context-helpers.cjs +22 -12
- package/dist/plugin-utils/context-helpers.d.cts +9 -1
- package/dist/plugin-utils/context-helpers.d.cts.map +1 -1
- package/dist/plugin-utils/context-helpers.d.mts +9 -1
- package/dist/plugin-utils/context-helpers.d.mts.map +1 -1
- package/dist/plugin-utils/context-helpers.mjs +22 -13
- package/dist/plugin-utils/context-helpers.mjs.map +1 -1
- package/dist/plugin-utils/filter.cjs +13 -5
- package/dist/plugin-utils/filter.d.cts +2 -1
- package/dist/plugin-utils/filter.d.cts.map +1 -1
- package/dist/plugin-utils/filter.d.mts +2 -1
- package/dist/plugin-utils/filter.d.mts.map +1 -1
- package/dist/plugin-utils/filter.mjs +13 -6
- package/dist/plugin-utils/filter.mjs.map +1 -1
- package/dist/plugin-utils/format.cjs +44 -0
- package/dist/plugin-utils/format.d.cts +11 -0
- package/dist/plugin-utils/format.d.cts.map +1 -0
- package/dist/plugin-utils/format.d.mts +11 -0
- package/dist/plugin-utils/format.d.mts.map +1 -0
- package/dist/plugin-utils/format.mjs +43 -0
- package/dist/plugin-utils/format.mjs.map +1 -0
- package/dist/plugin-utils/helpers.cjs +6 -6
- package/dist/plugin-utils/helpers.d.cts +15 -15
- package/dist/plugin-utils/helpers.d.cts.map +1 -1
- package/dist/plugin-utils/helpers.d.mts +15 -15
- package/dist/plugin-utils/helpers.d.mts.map +1 -1
- package/dist/plugin-utils/helpers.mjs +1 -1
- package/dist/plugin-utils/helpers.mjs.map +1 -1
- package/dist/plugin-utils/index.cjs +34 -4
- package/dist/plugin-utils/index.d.cts +7 -4
- package/dist/plugin-utils/index.d.mts +7 -4
- package/dist/plugin-utils/index.mjs +9 -6
- package/dist/plugin-utils/install.cjs +47 -0
- package/dist/plugin-utils/install.d.cts +23 -0
- package/dist/plugin-utils/install.d.cts.map +1 -0
- package/dist/plugin-utils/install.d.mts +23 -0
- package/dist/plugin-utils/install.d.mts.map +1 -0
- package/dist/plugin-utils/install.mjs +45 -0
- package/dist/plugin-utils/install.mjs.map +1 -0
- package/dist/plugin-utils/logging.cjs +588 -1
- package/dist/plugin-utils/logging.d.cts +93 -1
- package/dist/plugin-utils/logging.d.cts.map +1 -1
- package/dist/plugin-utils/logging.d.mts +93 -1
- package/dist/plugin-utils/logging.d.mts.map +1 -1
- package/dist/plugin-utils/logging.mjs +572 -1
- package/dist/plugin-utils/logging.mjs.map +1 -1
- package/dist/plugin-utils/merge.cjs +1 -1
- package/dist/plugin-utils/merge.mjs +1 -1
- package/dist/plugin-utils/modules.cjs +1 -1
- package/dist/plugin-utils/modules.mjs +1 -1
- package/dist/plugin-utils/modules.mjs.map +1 -1
- package/dist/plugin-utils/paths.cjs +6 -2
- package/dist/plugin-utils/paths.mjs +6 -2
- package/dist/plugin-utils/paths.mjs.map +1 -1
- package/dist/plugin-utils/virtual.cjs +80 -0
- package/dist/plugin-utils/virtual.d.cts +69 -0
- package/dist/plugin-utils/virtual.d.cts.map +1 -0
- package/dist/plugin-utils/virtual.d.mts +69 -0
- package/dist/plugin-utils/virtual.d.mts.map +1 -0
- package/dist/plugin-utils/virtual.mjs +73 -0
- package/dist/plugin-utils/virtual.mjs.map +1 -0
- package/dist/schemas/fs.cjs +232 -0
- package/dist/schemas/fs.d.cts +127 -0
- package/dist/schemas/fs.d.cts.map +1 -0
- package/dist/schemas/fs.d.mts +127 -0
- package/dist/schemas/fs.d.mts.map +1 -0
- package/dist/schemas/fs.mjs +226 -0
- package/dist/schemas/fs.mjs.map +1 -0
- package/dist/storage/base.cjs +216 -0
- package/dist/storage/base.d.cts +201 -0
- package/dist/storage/base.d.cts.map +1 -0
- package/dist/storage/base.d.mts +201 -0
- package/dist/storage/base.d.mts.map +1 -0
- package/dist/storage/base.mjs +215 -0
- package/dist/storage/base.mjs.map +1 -0
- package/dist/storage/file-system.cjs +180 -0
- package/dist/storage/file-system.d.cts +129 -0
- package/dist/storage/file-system.d.cts.map +1 -0
- package/dist/storage/file-system.d.mts +129 -0
- package/dist/storage/file-system.d.mts.map +1 -0
- package/dist/storage/file-system.mjs +179 -0
- package/dist/storage/file-system.mjs.map +1 -0
- package/dist/storage/helpers.cjs +37 -0
- package/dist/storage/helpers.d.cts +25 -0
- package/dist/storage/helpers.d.cts.map +1 -0
- package/dist/storage/helpers.d.mts +25 -0
- package/dist/storage/helpers.d.mts.map +1 -0
- package/dist/storage/helpers.mjs +34 -0
- package/dist/storage/helpers.mjs.map +1 -0
- package/dist/storage/index.cjs +12 -0
- package/dist/storage/index.d.cts +5 -0
- package/dist/storage/index.d.mts +5 -0
- package/dist/storage/index.mjs +6 -0
- package/dist/storage/virtual.cjs +98 -0
- package/dist/storage/virtual.d.cts +80 -0
- package/dist/storage/virtual.d.cts.map +1 -0
- package/dist/storage/virtual.d.mts +80 -0
- package/dist/storage/virtual.d.mts.map +1 -0
- package/dist/storage/virtual.mjs +97 -0
- package/dist/storage/virtual.mjs.map +1 -0
- package/dist/types/api.d.cts +18 -152
- package/dist/types/api.d.cts.map +1 -1
- package/dist/types/api.d.mts +18 -152
- package/dist/types/api.d.mts.map +1 -1
- package/dist/types/config.d.cts +194 -135
- package/dist/types/config.d.cts.map +1 -1
- package/dist/types/config.d.mts +195 -136
- package/dist/types/config.d.mts.map +1 -1
- package/dist/types/context.d.cts +152 -128
- package/dist/types/context.d.cts.map +1 -1
- package/dist/types/context.d.mts +155 -131
- package/dist/types/context.d.mts.map +1 -1
- package/dist/types/fs.d.mts +1 -1
- package/dist/types/index.d.cts +5 -6
- package/dist/types/index.d.mts +5 -6
- package/dist/types/logging.d.cts +161 -0
- package/dist/types/logging.d.cts.map +1 -0
- package/dist/types/logging.d.mts +161 -0
- package/dist/types/logging.d.mts.map +1 -0
- package/dist/types/plugin.d.cts +6 -9
- package/dist/types/plugin.d.cts.map +1 -1
- package/dist/types/plugin.d.mts +6 -9
- package/dist/types/plugin.d.mts.map +1 -1
- package/dist/types/tsconfig.d.mts +1 -1
- package/dist/types/unplugin.d.cts +5 -26
- package/dist/types/unplugin.d.cts.map +1 -1
- package/dist/types/unplugin.d.mts +5 -26
- package/dist/types/unplugin.d.mts.map +1 -1
- package/package.json +259 -457
- package/schemas/fs.capnp +42 -0
- package/dist/constants/virtual-modules.cjs +0 -8
- package/dist/constants/virtual-modules.d.cts +0 -6
- package/dist/constants/virtual-modules.d.cts.map +0 -1
- package/dist/constants/virtual-modules.d.mts +0 -6
- package/dist/constants/virtual-modules.d.mts.map +0 -1
- package/dist/constants/virtual-modules.mjs +0 -7
- package/dist/constants/virtual-modules.mjs.map +0 -1
- package/dist/lib/logger.cjs +0 -99
- package/dist/lib/logger.d.cts +0 -53
- package/dist/lib/logger.d.cts.map +0 -1
- package/dist/lib/logger.d.mts +0 -53
- package/dist/lib/logger.d.mts.map +0 -1
- package/dist/lib/logger.mjs +0 -93
- package/dist/lib/logger.mjs.map +0 -1
- package/dist/types/_internal.cjs +0 -0
- package/dist/types/_internal.d.cts +0 -106
- package/dist/types/_internal.d.cts.map +0 -1
- package/dist/types/_internal.d.mts +0 -106
- package/dist/types/_internal.d.mts.map +0 -1
- package/dist/types/_internal.mjs +0 -1
- package/dist/types/commands.d.cts +0 -16
- package/dist/types/commands.d.cts.map +0 -1
- package/dist/types/commands.d.mts +0 -16
- package/dist/types/commands.d.mts.map +0 -1
- package/dist/types/utils.d.cts +0 -9
- package/dist/types/utils.d.cts.map +0 -1
- package/dist/types/utils.d.mts +0 -9
- package/dist/types/utils.d.mts.map +0 -1
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2
|
+
const require_runtime = require('../_virtual/_rolldown/runtime.cjs');
|
|
3
|
+
const require_plugin_utils_logging = require('../plugin-utils/logging.cjs');
|
|
4
|
+
const require_lib_hooks = require('./hooks.cjs');
|
|
5
|
+
let _stryke_string_format_title_case = require("@stryke/string-format/title-case");
|
|
6
|
+
let _stryke_type_checks_is_set_string = require("@stryke/type-checks/is-set-string");
|
|
7
|
+
let _stryke_convert_to_array = require("@stryke/convert/to-array");
|
|
8
|
+
|
|
9
|
+
//#region src/lib/context-helpers.ts
|
|
10
|
+
function getConfigProps(config = {}) {
|
|
11
|
+
return {
|
|
12
|
+
input: (0, _stryke_type_checks_is_set_string.isSetString)(config.input) ? [config.input] : config.input,
|
|
13
|
+
...config
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
async function resolvePluginConfig(context) {
|
|
17
|
+
const timer = context.timer(`${(0, _stryke_string_format_title_case.titleCase)(context.config.command)} Execution - Initialization`);
|
|
18
|
+
for (const plugin of context.config.plugins.flatMap((p) => (0, _stryke_convert_to_array.toArray)(p)) ?? []) await context.unstable_addPlugin(plugin);
|
|
19
|
+
if (context.plugins.length === 0) context.warn({
|
|
20
|
+
meta: { category: "plugins" },
|
|
21
|
+
message: "No Powerlines plugins were specified in the options. Please ensure this is correct, as it is generally not recommended."
|
|
22
|
+
});
|
|
23
|
+
else context.info({
|
|
24
|
+
meta: { category: "plugins" },
|
|
25
|
+
message: `Loaded ${context.plugins.length} ${(0, _stryke_string_format_title_case.titleCase)(context.config.framework?.name ?? "powerlines")} plugin${context.plugins.length > 1 ? "s" : ""}: \n${context.plugins.map((plugin, index) => ` ${index + 1}. ${require_plugin_utils_logging.colorText(plugin.name)}`).join("\n")}`
|
|
26
|
+
});
|
|
27
|
+
const pluginConfig = await context.callHook("config", {
|
|
28
|
+
environment: await context.getEnvironment(),
|
|
29
|
+
sequential: true,
|
|
30
|
+
result: "merge",
|
|
31
|
+
merge: require_lib_hooks.mergeConfigs
|
|
32
|
+
});
|
|
33
|
+
if (pluginConfig) await context.setPluginConfig(pluginConfig);
|
|
34
|
+
else context.debug({
|
|
35
|
+
meta: { category: "config" },
|
|
36
|
+
message: "No plugin configuration was returned from the config hook."
|
|
37
|
+
});
|
|
38
|
+
timer();
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
//#endregion
|
|
42
|
+
exports.getConfigProps = getConfigProps;
|
|
43
|
+
exports.resolvePluginConfig = resolvePluginConfig;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { InferOverridableConfig, ResolvedConfig } from "../types/config.cjs";
|
|
2
|
+
import { PowerlinesExecutionContext } from "../context/execution-context.cjs";
|
|
3
|
+
import * as _$_stryke_types_base0 from "@stryke/types/base";
|
|
4
|
+
import * as _$_stryke_types_configuration0 from "@stryke/types/configuration";
|
|
5
|
+
|
|
6
|
+
//#region src/lib/context-helpers.d.ts
|
|
7
|
+
declare function getConfigProps<TResolvedConfig extends ResolvedConfig>(config?: TResolvedConfig["userConfig"] | TResolvedConfig["inlineConfig"] | TResolvedConfig["pluginConfig"] | InferOverridableConfig<TResolvedConfig>): ({
|
|
8
|
+
input: _$_stryke_types_configuration0.TypeDefinition | _$_stryke_types_configuration0.TypeDefinitionParameter[] | Record<string, _$_stryke_types_configuration0.TypeDefinitionParameter | _$_stryke_types_configuration0.TypeDefinitionParameter[]> | TResolvedConfig["input"] | (Omit<TResolvedConfig, "cwd" | "configFile" | "command" | "userConfig" | "inlineConfig" | "pluginConfig">["input"] extends object ? Omit<TResolvedConfig, "cwd" | "configFile" | "command" | "userConfig" | "inlineConfig" | "pluginConfig">["input"] extends infer T ? T extends Omit<TResolvedConfig, "cwd" | "configFile" | "command" | "userConfig" | "inlineConfig" | "pluginConfig">["input"] ? T extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T : { [K in keyof T]?: (T[K] extends object ? T[K] extends infer T_1 ? T_1 extends T[K] ? T_1 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_1 : { [K_2 in keyof T_1]?: (T_1[K_2] extends object ? T_1[K_2] extends infer T_2 ? T_2 extends T_1[K_2] ? T_2 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_2 : { [K_3 in keyof T_2]?: (T_2[K_3] extends object ? T_2[K_3] extends infer T_3 ? T_3 extends T_2[K_3] ? T_3 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_3 : { [K_4 in keyof T_3]?: (T_3[K_4] extends object ? T_3[K_4] extends infer T_4 ? T_4 extends T_3[K_4] ? T_4 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_4 : { [K_5 in keyof T_4]?: (T_4[K_5] extends object ? T_4[K_5] extends infer T_5 ? T_5 extends T_4[K_5] ? T_5 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_5 : { [K_6 in keyof T_5]?: (T_5[K_6] extends object ? T_5[K_6] extends infer T_6 ? T_6 extends T_5[K_6] ? T_6 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_6 : { [K_7 in keyof T_6]?: (T_6[K_7] extends object ? T_6[K_7] extends infer T_7 ? T_7 extends T_6[K_7] ? T_7 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_7 : { [K_8 in keyof T_7]?: (T_7[K_8] extends object ? T_7[K_8] extends infer T_8 ? T_8 extends T_7[K_8] ? T_8 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_8 : { [K_9 in keyof T_8]?: (T_8[K_9] extends object ? T_8[K_9] : T_8[K_9]) | undefined } : never : never : T_7[K_8]) | undefined } : never : never : T_6[K_7]) | undefined } : never : never : T_5[K_6]) | undefined } : never : never : T_4[K_5]) | undefined } : never : never : T_3[K_4]) | undefined } : never : never : T_2[K_3]) | undefined } : never : never : T_1[K_2]) | undefined } : never : never : T[K]) | undefined } : never : never : Omit<TResolvedConfig, "cwd" | "configFile" | "command" | "userConfig" | "inlineConfig" | "pluginConfig">["input"]) | undefined;
|
|
9
|
+
} & TResolvedConfig["userConfig"]) | ({
|
|
10
|
+
input: _$_stryke_types_configuration0.TypeDefinition | _$_stryke_types_configuration0.TypeDefinitionParameter[] | Record<string, _$_stryke_types_configuration0.TypeDefinitionParameter | _$_stryke_types_configuration0.TypeDefinitionParameter[]> | TResolvedConfig["input"] | (Omit<TResolvedConfig, "cwd" | "configFile" | "command" | "userConfig" | "inlineConfig" | "pluginConfig">["input"] extends object ? Omit<TResolvedConfig, "cwd" | "configFile" | "command" | "userConfig" | "inlineConfig" | "pluginConfig">["input"] extends infer T_1 ? T_1 extends Omit<TResolvedConfig, "cwd" | "configFile" | "command" | "userConfig" | "inlineConfig" | "pluginConfig">["input"] ? T_1 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_1 : { [K_1 in keyof T_1]?: (T_1[K_1] extends object ? T_1[K_1] extends infer T_2 ? T_2 extends T_1[K_1] ? T_2 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_2 : { [K_3 in keyof T_2]?: (T_2[K_3] extends object ? T_2[K_3] extends infer T_3 ? T_3 extends T_2[K_3] ? T_3 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_3 : { [K_4 in keyof T_3]?: (T_3[K_4] extends object ? T_3[K_4] extends infer T_4 ? T_4 extends T_3[K_4] ? T_4 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_4 : { [K_5 in keyof T_4]?: (T_4[K_5] extends object ? T_4[K_5] extends infer T_5 ? T_5 extends T_4[K_5] ? T_5 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_5 : { [K_6 in keyof T_5]?: (T_5[K_6] extends object ? T_5[K_6] extends infer T_6 ? T_6 extends T_5[K_6] ? T_6 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_6 : { [K_7 in keyof T_6]?: (T_6[K_7] extends object ? T_6[K_7] extends infer T_7 ? T_7 extends T_6[K_7] ? T_7 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_7 : { [K_8 in keyof T_7]?: (T_7[K_8] extends object ? T_7[K_8] extends infer T_8 ? T_8 extends T_7[K_8] ? T_8 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_8 : { [K_9 in keyof T_8]?: (T_8[K_9] extends object ? T_8[K_9] extends infer T_9 ? T_9 extends T_8[K_9] ? T_9 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_9 : { [K_10 in keyof T_9]?: (T_9[K_10] extends object ? T_9[K_10] : T_9[K_10]) | undefined } : never : never : T_8[K_9]) | undefined } : never : never : T_7[K_8]) | undefined } : never : never : T_6[K_7]) | undefined } : never : never : T_5[K_6]) | undefined } : never : never : T_4[K_5]) | undefined } : never : never : T_3[K_4]) | undefined } : never : never : T_2[K_3]) | undefined } : never : never : T_1[K_1]) | undefined } : never : never : Omit<TResolvedConfig, "cwd" | "configFile" | "command" | "userConfig" | "inlineConfig" | "pluginConfig">["input"]) | undefined;
|
|
11
|
+
} & TResolvedConfig["inlineConfig"]) | ({
|
|
12
|
+
input: _$_stryke_types_configuration0.TypeDefinition | _$_stryke_types_configuration0.TypeDefinitionParameter[] | Record<string, _$_stryke_types_configuration0.TypeDefinitionParameter | _$_stryke_types_configuration0.TypeDefinitionParameter[]> | TResolvedConfig["input"] | (Omit<TResolvedConfig, "cwd" | "configFile" | "command" | "userConfig" | "inlineConfig" | "pluginConfig">["input"] extends object ? Omit<TResolvedConfig, "cwd" | "configFile" | "command" | "userConfig" | "inlineConfig" | "pluginConfig">["input"] extends infer T_2 ? T_2 extends Omit<TResolvedConfig, "cwd" | "configFile" | "command" | "userConfig" | "inlineConfig" | "pluginConfig">["input"] ? T_2 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_2 : { [K_2 in keyof T_2]?: (T_2[K_2] extends object ? T_2[K_2] extends infer T_3 ? T_3 extends T_2[K_2] ? T_3 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_3 : { [K_4 in keyof T_3]?: (T_3[K_4] extends object ? T_3[K_4] extends infer T_4 ? T_4 extends T_3[K_4] ? T_4 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_4 : { [K_5 in keyof T_4]?: (T_4[K_5] extends object ? T_4[K_5] extends infer T_5 ? T_5 extends T_4[K_5] ? T_5 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_5 : { [K_6 in keyof T_5]?: (T_5[K_6] extends object ? T_5[K_6] extends infer T_6 ? T_6 extends T_5[K_6] ? T_6 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_6 : { [K_7 in keyof T_6]?: (T_6[K_7] extends object ? T_6[K_7] extends infer T_7 ? T_7 extends T_6[K_7] ? T_7 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_7 : { [K_8 in keyof T_7]?: (T_7[K_8] extends object ? T_7[K_8] extends infer T_8 ? T_8 extends T_7[K_8] ? T_8 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_8 : { [K_9 in keyof T_8]?: (T_8[K_9] extends object ? T_8[K_9] extends infer T_9 ? T_9 extends T_8[K_9] ? T_9 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_9 : { [K_10 in keyof T_9]?: (T_9[K_10] extends object ? T_9[K_10] extends infer T_10 ? T_10 extends T_9[K_10] ? T_10 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_10 : { [K_11 in keyof T_10]?: (T_10[K_11] extends object ? T_10[K_11] : T_10[K_11]) | undefined } : never : never : T_9[K_10]) | undefined } : never : never : T_8[K_9]) | undefined } : never : never : T_7[K_8]) | undefined } : never : never : T_6[K_7]) | undefined } : never : never : T_5[K_6]) | undefined } : never : never : T_4[K_5]) | undefined } : never : never : T_3[K_4]) | undefined } : never : never : T_2[K_2]) | undefined } : never : never : Omit<TResolvedConfig, "cwd" | "configFile" | "command" | "userConfig" | "inlineConfig" | "pluginConfig">["input"]) | undefined;
|
|
13
|
+
} & TResolvedConfig["pluginConfig"]) | ({
|
|
14
|
+
input: _$_stryke_types_configuration0.TypeDefinition | _$_stryke_types_configuration0.TypeDefinitionParameter[] | Record<string, _$_stryke_types_configuration0.TypeDefinitionParameter | _$_stryke_types_configuration0.TypeDefinitionParameter[]> | TResolvedConfig["input"] | (Omit<TResolvedConfig, "cwd" | "configFile" | "command" | "userConfig" | "inlineConfig" | "pluginConfig">["input"] extends object ? Omit<TResolvedConfig, "cwd" | "configFile" | "command" | "userConfig" | "inlineConfig" | "pluginConfig">["input"] extends infer T_3 ? T_3 extends Omit<TResolvedConfig, "cwd" | "configFile" | "command" | "userConfig" | "inlineConfig" | "pluginConfig">["input"] ? T_3 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_3 : { [K_3 in keyof T_3]?: (T_3[K_3] extends object ? T_3[K_3] extends infer T_4 ? T_4 extends T_3[K_3] ? T_4 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_4 : { [K_5 in keyof T_4]?: (T_4[K_5] extends object ? T_4[K_5] extends infer T_5 ? T_5 extends T_4[K_5] ? T_5 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_5 : { [K_6 in keyof T_5]?: (T_5[K_6] extends object ? T_5[K_6] extends infer T_6 ? T_6 extends T_5[K_6] ? T_6 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_6 : { [K_7 in keyof T_6]?: (T_6[K_7] extends object ? T_6[K_7] extends infer T_7 ? T_7 extends T_6[K_7] ? T_7 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_7 : { [K_8 in keyof T_7]?: (T_7[K_8] extends object ? T_7[K_8] extends infer T_8 ? T_8 extends T_7[K_8] ? T_8 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_8 : { [K_9 in keyof T_8]?: (T_8[K_9] extends object ? T_8[K_9] extends infer T_9 ? T_9 extends T_8[K_9] ? T_9 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_9 : { [K_10 in keyof T_9]?: (T_9[K_10] extends object ? T_9[K_10] extends infer T_10 ? T_10 extends T_9[K_10] ? T_10 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_10 : { [K_11 in keyof T_10]?: (T_10[K_11] extends object ? T_10[K_11] extends infer T_11 ? T_11 extends T_10[K_11] ? T_11 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_11 : { [K_12 in keyof T_11]?: (T_11[K_12] extends object ? T_11[K_12] : T_11[K_12]) | undefined } : never : never : T_10[K_11]) | undefined } : never : never : T_9[K_10]) | undefined } : never : never : T_8[K_9]) | undefined } : never : never : T_7[K_8]) | undefined } : never : never : T_6[K_7]) | undefined } : never : never : T_5[K_6]) | undefined } : never : never : T_4[K_5]) | undefined } : never : never : T_3[K_3]) | undefined } : never : never : Omit<TResolvedConfig, "cwd" | "configFile" | "command" | "userConfig" | "inlineConfig" | "pluginConfig">["input"]) | undefined;
|
|
15
|
+
} & InferOverridableConfig<TResolvedConfig>);
|
|
16
|
+
declare function resolvePluginConfig<TContext extends PowerlinesExecutionContext>(context: TContext): Promise<void>;
|
|
17
|
+
//#endregion
|
|
18
|
+
export { getConfigProps, resolvePluginConfig };
|
|
19
|
+
//# sourceMappingURL=context-helpers.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context-helpers.d.cts","names":[],"sources":["../../src/lib/context-helpers.ts"],"mappings":";;;;;;iBA0BgB,cAAA,yBAAuC,cAAA,CAAA,CACrD,MAAA,GACI,eAAA,iBACA,eAAA,mBACA,eAAA,mBACA,sBAAA,CAAuB,eAAA;SAAD,8BAAA,CAAA,cAAA;;;;;;;;iBAQN,mBAAA,kBACH,0BAAA,CAAA,CACjB,OAAA,EAAS,QAAA,GAAQ,OAAA"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { InferOverridableConfig, ResolvedConfig } from "../types/config.mjs";
|
|
2
|
+
import { PowerlinesExecutionContext } from "../context/execution-context.mjs";
|
|
3
|
+
import * as _$_stryke_types_base0 from "@stryke/types/base";
|
|
4
|
+
import * as _$_stryke_types_configuration0 from "@stryke/types/configuration";
|
|
5
|
+
|
|
6
|
+
//#region src/lib/context-helpers.d.ts
|
|
7
|
+
declare function getConfigProps<TResolvedConfig extends ResolvedConfig>(config?: TResolvedConfig["userConfig"] | TResolvedConfig["inlineConfig"] | TResolvedConfig["pluginConfig"] | InferOverridableConfig<TResolvedConfig>): ({
|
|
8
|
+
input: _$_stryke_types_configuration0.TypeDefinition | _$_stryke_types_configuration0.TypeDefinitionParameter[] | Record<string, _$_stryke_types_configuration0.TypeDefinitionParameter | _$_stryke_types_configuration0.TypeDefinitionParameter[]> | TResolvedConfig["input"] | (Omit<TResolvedConfig, "cwd" | "configFile" | "command" | "userConfig" | "inlineConfig" | "pluginConfig">["input"] extends object ? Omit<TResolvedConfig, "cwd" | "configFile" | "command" | "userConfig" | "inlineConfig" | "pluginConfig">["input"] extends infer T ? T extends Omit<TResolvedConfig, "cwd" | "configFile" | "command" | "userConfig" | "inlineConfig" | "pluginConfig">["input"] ? T extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T : { [K in keyof T]?: (T[K] extends object ? T[K] extends infer T_1 ? T_1 extends T[K] ? T_1 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_1 : { [K_2 in keyof T_1]?: (T_1[K_2] extends object ? T_1[K_2] extends infer T_2 ? T_2 extends T_1[K_2] ? T_2 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_2 : { [K_3 in keyof T_2]?: (T_2[K_3] extends object ? T_2[K_3] extends infer T_3 ? T_3 extends T_2[K_3] ? T_3 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_3 : { [K_4 in keyof T_3]?: (T_3[K_4] extends object ? T_3[K_4] extends infer T_4 ? T_4 extends T_3[K_4] ? T_4 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_4 : { [K_5 in keyof T_4]?: (T_4[K_5] extends object ? T_4[K_5] extends infer T_5 ? T_5 extends T_4[K_5] ? T_5 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_5 : { [K_6 in keyof T_5]?: (T_5[K_6] extends object ? T_5[K_6] extends infer T_6 ? T_6 extends T_5[K_6] ? T_6 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_6 : { [K_7 in keyof T_6]?: (T_6[K_7] extends object ? T_6[K_7] extends infer T_7 ? T_7 extends T_6[K_7] ? T_7 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_7 : { [K_8 in keyof T_7]?: (T_7[K_8] extends object ? T_7[K_8] extends infer T_8 ? T_8 extends T_7[K_8] ? T_8 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_8 : { [K_9 in keyof T_8]?: (T_8[K_9] extends object ? T_8[K_9] : T_8[K_9]) | undefined } : never : never : T_7[K_8]) | undefined } : never : never : T_6[K_7]) | undefined } : never : never : T_5[K_6]) | undefined } : never : never : T_4[K_5]) | undefined } : never : never : T_3[K_4]) | undefined } : never : never : T_2[K_3]) | undefined } : never : never : T_1[K_2]) | undefined } : never : never : T[K]) | undefined } : never : never : Omit<TResolvedConfig, "cwd" | "configFile" | "command" | "userConfig" | "inlineConfig" | "pluginConfig">["input"]) | undefined;
|
|
9
|
+
} & TResolvedConfig["userConfig"]) | ({
|
|
10
|
+
input: _$_stryke_types_configuration0.TypeDefinition | _$_stryke_types_configuration0.TypeDefinitionParameter[] | Record<string, _$_stryke_types_configuration0.TypeDefinitionParameter | _$_stryke_types_configuration0.TypeDefinitionParameter[]> | TResolvedConfig["input"] | (Omit<TResolvedConfig, "cwd" | "configFile" | "command" | "userConfig" | "inlineConfig" | "pluginConfig">["input"] extends object ? Omit<TResolvedConfig, "cwd" | "configFile" | "command" | "userConfig" | "inlineConfig" | "pluginConfig">["input"] extends infer T_1 ? T_1 extends Omit<TResolvedConfig, "cwd" | "configFile" | "command" | "userConfig" | "inlineConfig" | "pluginConfig">["input"] ? T_1 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_1 : { [K_1 in keyof T_1]?: (T_1[K_1] extends object ? T_1[K_1] extends infer T_2 ? T_2 extends T_1[K_1] ? T_2 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_2 : { [K_3 in keyof T_2]?: (T_2[K_3] extends object ? T_2[K_3] extends infer T_3 ? T_3 extends T_2[K_3] ? T_3 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_3 : { [K_4 in keyof T_3]?: (T_3[K_4] extends object ? T_3[K_4] extends infer T_4 ? T_4 extends T_3[K_4] ? T_4 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_4 : { [K_5 in keyof T_4]?: (T_4[K_5] extends object ? T_4[K_5] extends infer T_5 ? T_5 extends T_4[K_5] ? T_5 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_5 : { [K_6 in keyof T_5]?: (T_5[K_6] extends object ? T_5[K_6] extends infer T_6 ? T_6 extends T_5[K_6] ? T_6 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_6 : { [K_7 in keyof T_6]?: (T_6[K_7] extends object ? T_6[K_7] extends infer T_7 ? T_7 extends T_6[K_7] ? T_7 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_7 : { [K_8 in keyof T_7]?: (T_7[K_8] extends object ? T_7[K_8] extends infer T_8 ? T_8 extends T_7[K_8] ? T_8 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_8 : { [K_9 in keyof T_8]?: (T_8[K_9] extends object ? T_8[K_9] extends infer T_9 ? T_9 extends T_8[K_9] ? T_9 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_9 : { [K_10 in keyof T_9]?: (T_9[K_10] extends object ? T_9[K_10] : T_9[K_10]) | undefined } : never : never : T_8[K_9]) | undefined } : never : never : T_7[K_8]) | undefined } : never : never : T_6[K_7]) | undefined } : never : never : T_5[K_6]) | undefined } : never : never : T_4[K_5]) | undefined } : never : never : T_3[K_4]) | undefined } : never : never : T_2[K_3]) | undefined } : never : never : T_1[K_1]) | undefined } : never : never : Omit<TResolvedConfig, "cwd" | "configFile" | "command" | "userConfig" | "inlineConfig" | "pluginConfig">["input"]) | undefined;
|
|
11
|
+
} & TResolvedConfig["inlineConfig"]) | ({
|
|
12
|
+
input: _$_stryke_types_configuration0.TypeDefinition | _$_stryke_types_configuration0.TypeDefinitionParameter[] | Record<string, _$_stryke_types_configuration0.TypeDefinitionParameter | _$_stryke_types_configuration0.TypeDefinitionParameter[]> | TResolvedConfig["input"] | (Omit<TResolvedConfig, "cwd" | "configFile" | "command" | "userConfig" | "inlineConfig" | "pluginConfig">["input"] extends object ? Omit<TResolvedConfig, "cwd" | "configFile" | "command" | "userConfig" | "inlineConfig" | "pluginConfig">["input"] extends infer T_2 ? T_2 extends Omit<TResolvedConfig, "cwd" | "configFile" | "command" | "userConfig" | "inlineConfig" | "pluginConfig">["input"] ? T_2 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_2 : { [K_2 in keyof T_2]?: (T_2[K_2] extends object ? T_2[K_2] extends infer T_3 ? T_3 extends T_2[K_2] ? T_3 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_3 : { [K_4 in keyof T_3]?: (T_3[K_4] extends object ? T_3[K_4] extends infer T_4 ? T_4 extends T_3[K_4] ? T_4 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_4 : { [K_5 in keyof T_4]?: (T_4[K_5] extends object ? T_4[K_5] extends infer T_5 ? T_5 extends T_4[K_5] ? T_5 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_5 : { [K_6 in keyof T_5]?: (T_5[K_6] extends object ? T_5[K_6] extends infer T_6 ? T_6 extends T_5[K_6] ? T_6 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_6 : { [K_7 in keyof T_6]?: (T_6[K_7] extends object ? T_6[K_7] extends infer T_7 ? T_7 extends T_6[K_7] ? T_7 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_7 : { [K_8 in keyof T_7]?: (T_7[K_8] extends object ? T_7[K_8] extends infer T_8 ? T_8 extends T_7[K_8] ? T_8 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_8 : { [K_9 in keyof T_8]?: (T_8[K_9] extends object ? T_8[K_9] extends infer T_9 ? T_9 extends T_8[K_9] ? T_9 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_9 : { [K_10 in keyof T_9]?: (T_9[K_10] extends object ? T_9[K_10] extends infer T_10 ? T_10 extends T_9[K_10] ? T_10 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_10 : { [K_11 in keyof T_10]?: (T_10[K_11] extends object ? T_10[K_11] : T_10[K_11]) | undefined } : never : never : T_9[K_10]) | undefined } : never : never : T_8[K_9]) | undefined } : never : never : T_7[K_8]) | undefined } : never : never : T_6[K_7]) | undefined } : never : never : T_5[K_6]) | undefined } : never : never : T_4[K_5]) | undefined } : never : never : T_3[K_4]) | undefined } : never : never : T_2[K_2]) | undefined } : never : never : Omit<TResolvedConfig, "cwd" | "configFile" | "command" | "userConfig" | "inlineConfig" | "pluginConfig">["input"]) | undefined;
|
|
13
|
+
} & TResolvedConfig["pluginConfig"]) | ({
|
|
14
|
+
input: _$_stryke_types_configuration0.TypeDefinition | _$_stryke_types_configuration0.TypeDefinitionParameter[] | Record<string, _$_stryke_types_configuration0.TypeDefinitionParameter | _$_stryke_types_configuration0.TypeDefinitionParameter[]> | TResolvedConfig["input"] | (Omit<TResolvedConfig, "cwd" | "configFile" | "command" | "userConfig" | "inlineConfig" | "pluginConfig">["input"] extends object ? Omit<TResolvedConfig, "cwd" | "configFile" | "command" | "userConfig" | "inlineConfig" | "pluginConfig">["input"] extends infer T_3 ? T_3 extends Omit<TResolvedConfig, "cwd" | "configFile" | "command" | "userConfig" | "inlineConfig" | "pluginConfig">["input"] ? T_3 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_3 : { [K_3 in keyof T_3]?: (T_3[K_3] extends object ? T_3[K_3] extends infer T_4 ? T_4 extends T_3[K_3] ? T_4 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_4 : { [K_5 in keyof T_4]?: (T_4[K_5] extends object ? T_4[K_5] extends infer T_5 ? T_5 extends T_4[K_5] ? T_5 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_5 : { [K_6 in keyof T_5]?: (T_5[K_6] extends object ? T_5[K_6] extends infer T_6 ? T_6 extends T_5[K_6] ? T_6 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_6 : { [K_7 in keyof T_6]?: (T_6[K_7] extends object ? T_6[K_7] extends infer T_7 ? T_7 extends T_6[K_7] ? T_7 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_7 : { [K_8 in keyof T_7]?: (T_7[K_8] extends object ? T_7[K_8] extends infer T_8 ? T_8 extends T_7[K_8] ? T_8 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_8 : { [K_9 in keyof T_8]?: (T_8[K_9] extends object ? T_8[K_9] extends infer T_9 ? T_9 extends T_8[K_9] ? T_9 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_9 : { [K_10 in keyof T_9]?: (T_9[K_10] extends object ? T_9[K_10] extends infer T_10 ? T_10 extends T_9[K_10] ? T_10 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_10 : { [K_11 in keyof T_10]?: (T_10[K_11] extends object ? T_10[K_11] extends infer T_11 ? T_11 extends T_10[K_11] ? T_11 extends _$_stryke_types_base0.BrowserNativeObject | _$_stryke_types_base0.NestedValue<object> ? T_11 : { [K_12 in keyof T_11]?: (T_11[K_12] extends object ? T_11[K_12] : T_11[K_12]) | undefined } : never : never : T_10[K_11]) | undefined } : never : never : T_9[K_10]) | undefined } : never : never : T_8[K_9]) | undefined } : never : never : T_7[K_8]) | undefined } : never : never : T_6[K_7]) | undefined } : never : never : T_5[K_6]) | undefined } : never : never : T_4[K_5]) | undefined } : never : never : T_3[K_3]) | undefined } : never : never : Omit<TResolvedConfig, "cwd" | "configFile" | "command" | "userConfig" | "inlineConfig" | "pluginConfig">["input"]) | undefined;
|
|
15
|
+
} & InferOverridableConfig<TResolvedConfig>);
|
|
16
|
+
declare function resolvePluginConfig<TContext extends PowerlinesExecutionContext>(context: TContext): Promise<void>;
|
|
17
|
+
//#endregion
|
|
18
|
+
export { getConfigProps, resolvePluginConfig };
|
|
19
|
+
//# sourceMappingURL=context-helpers.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context-helpers.d.mts","names":[],"sources":["../../src/lib/context-helpers.ts"],"mappings":";;;;;;iBA0BgB,cAAA,yBAAuC,cAAA,CAAA,CACrD,MAAA,GACI,eAAA,iBACA,eAAA,mBACA,eAAA,mBACA,sBAAA,CAAuB,eAAA;SAAD,8BAAA,CAAA,cAAA;;;;;;;;iBAQN,mBAAA,kBACH,0BAAA,CAAA,CACjB,OAAA,EAAS,QAAA,GAAQ,OAAA"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { colorText } from "../plugin-utils/logging.mjs";
|
|
2
|
+
import { mergeConfigs } from "./hooks.mjs";
|
|
3
|
+
import { titleCase } from "@stryke/string-format/title-case";
|
|
4
|
+
import { isSetString } from "@stryke/type-checks/is-set-string";
|
|
5
|
+
import { toArray } from "@stryke/convert/to-array";
|
|
6
|
+
|
|
7
|
+
//#region src/lib/context-helpers.ts
|
|
8
|
+
function getConfigProps(config = {}) {
|
|
9
|
+
return {
|
|
10
|
+
input: isSetString(config.input) ? [config.input] : config.input,
|
|
11
|
+
...config
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
async function resolvePluginConfig(context) {
|
|
15
|
+
const timer = context.timer(`${titleCase(context.config.command)} Execution - Initialization`);
|
|
16
|
+
for (const plugin of context.config.plugins.flatMap((p) => toArray(p)) ?? []) await context.unstable_addPlugin(plugin);
|
|
17
|
+
if (context.plugins.length === 0) context.warn({
|
|
18
|
+
meta: { category: "plugins" },
|
|
19
|
+
message: "No Powerlines plugins were specified in the options. Please ensure this is correct, as it is generally not recommended."
|
|
20
|
+
});
|
|
21
|
+
else context.info({
|
|
22
|
+
meta: { category: "plugins" },
|
|
23
|
+
message: `Loaded ${context.plugins.length} ${titleCase(context.config.framework?.name ?? "powerlines")} plugin${context.plugins.length > 1 ? "s" : ""}: \n${context.plugins.map((plugin, index) => ` ${index + 1}. ${colorText(plugin.name)}`).join("\n")}`
|
|
24
|
+
});
|
|
25
|
+
const pluginConfig = await context.callHook("config", {
|
|
26
|
+
environment: await context.getEnvironment(),
|
|
27
|
+
sequential: true,
|
|
28
|
+
result: "merge",
|
|
29
|
+
merge: mergeConfigs
|
|
30
|
+
});
|
|
31
|
+
if (pluginConfig) await context.setPluginConfig(pluginConfig);
|
|
32
|
+
else context.debug({
|
|
33
|
+
meta: { category: "config" },
|
|
34
|
+
message: "No plugin configuration was returned from the config hook."
|
|
35
|
+
});
|
|
36
|
+
timer();
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
//#endregion
|
|
40
|
+
export { getConfigProps, resolvePluginConfig };
|
|
41
|
+
//# sourceMappingURL=context-helpers.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context-helpers.mjs","names":[],"sources":["../../src/lib/context-helpers.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { toArray } from \"@stryke/convert/to-array\";\nimport { titleCase } from \"@stryke/string-format/title-case\";\nimport { isSetString } from \"@stryke/type-checks/is-set-string\";\nimport { PowerlinesExecutionContext } from \"../context\";\nimport { colorText } from \"../plugin-utils/logging\";\nimport type { InferOverridableConfig, ResolvedConfig } from \"../types\";\nimport { mergeConfigs } from \"./hooks\";\n\nexport function getConfigProps<TResolvedConfig extends ResolvedConfig>(\n config:\n | TResolvedConfig[\"userConfig\"]\n | TResolvedConfig[\"inlineConfig\"]\n | TResolvedConfig[\"pluginConfig\"]\n | InferOverridableConfig<TResolvedConfig> = {}\n) {\n return {\n input: isSetString(config.input) ? [config.input] : config.input,\n ...config\n };\n}\n\nexport async function resolvePluginConfig<\n TContext extends PowerlinesExecutionContext\n>(context: TContext) {\n const timer = context.timer(\n `${titleCase(context.config.command)} Execution - Initialization`\n );\n\n for (const plugin of context.config.plugins.flatMap(p => toArray(p)) ?? []) {\n await context.unstable_addPlugin(plugin);\n }\n\n if (context.plugins.length === 0) {\n context.warn({\n meta: {\n category: \"plugins\"\n },\n message:\n \"No Powerlines plugins were specified in the options. Please ensure this is correct, as it is generally not recommended.\"\n });\n } else {\n context.info({\n meta: {\n category: \"plugins\"\n },\n message: `Loaded ${context.plugins.length} ${titleCase(\n context.config.framework?.name ?? \"powerlines\"\n )} plugin${context.plugins.length > 1 ? \"s\" : \"\"}: \\n${context.plugins\n .map((plugin, index) => ` ${index + 1}. ${colorText(plugin.name)}`)\n .join(\"\\n\")}`\n });\n }\n\n const pluginConfig = await context.callHook(\"config\", {\n environment: await context.getEnvironment(),\n sequential: true,\n result: \"merge\",\n merge: mergeConfigs\n });\n if (pluginConfig) {\n await context.setPluginConfig(\n pluginConfig as TContext[\"config\"][\"pluginConfig\"]\n );\n } else {\n context.debug({\n meta: {\n category: \"config\"\n },\n message: \"No plugin configuration was returned from the config hook.\"\n });\n }\n\n timer();\n}\n"],"mappings":";;;;;;;AA0BA,SAAgB,eACd,SAI8C,EAAE,EAChD;AACA,QAAO;EACL,OAAO,YAAY,OAAO,MAAM,GAAG,CAAC,OAAO,MAAM,GAAG,OAAO;EAC3D,GAAG;EACJ;;AAGH,eAAsB,oBAEpB,SAAmB;CACnB,MAAM,QAAQ,QAAQ,MACpB,GAAG,UAAU,QAAQ,OAAO,QAAQ,CAAC,6BACtC;AAED,MAAK,MAAM,UAAU,QAAQ,OAAO,QAAQ,SAAQ,MAAK,QAAQ,EAAE,CAAC,IAAI,EAAE,CACxE,OAAM,QAAQ,mBAAmB,OAAO;AAG1C,KAAI,QAAQ,QAAQ,WAAW,EAC7B,SAAQ,KAAK;EACX,MAAM,EACJ,UAAU,WACX;EACD,SACE;EACH,CAAC;KAEF,SAAQ,KAAK;EACX,MAAM,EACJ,UAAU,WACX;EACD,SAAS,UAAU,QAAQ,QAAQ,OAAO,GAAG,UAC3C,QAAQ,OAAO,WAAW,QAAQ,aACnC,CAAC,SAAS,QAAQ,QAAQ,SAAS,IAAI,MAAM,GAAG,MAAM,QAAQ,QAC5D,KAAK,QAAQ,UAAU,IAAI,QAAQ,EAAE,IAAI,UAAU,OAAO,KAAK,GAAG,CAClE,KAAK,KAAK;EACd,CAAC;CAGJ,MAAM,eAAe,MAAM,QAAQ,SAAS,UAAU;EACpD,aAAa,MAAM,QAAQ,gBAAgB;EAC3C,YAAY;EACZ,QAAQ;EACR,OAAO;EACR,CAAC;AACF,KAAI,aACF,OAAM,QAAQ,gBACZ,aACD;KAED,SAAQ,MAAM;EACZ,MAAM,EACJ,UAAU,UACX;EACD,SAAS;EACV,CAAC;AAGJ,QAAO"}
|
package/dist/lib/entry.cjs
CHANGED
|
@@ -4,14 +4,14 @@ const require_plugin_utils_paths = require('../plugin-utils/paths.cjs');
|
|
|
4
4
|
let _stryke_path_append = require("@stryke/path/append");
|
|
5
5
|
let _stryke_path_join_paths = require("@stryke/path/join-paths");
|
|
6
6
|
let _stryke_path_replace = require("@stryke/path/replace");
|
|
7
|
-
let
|
|
7
|
+
let _stryke_type_checks_is_set_string = require("@stryke/type-checks/is-set-string");
|
|
8
|
+
let _stryke_type_checks_is_string = require("@stryke/type-checks/is-string");
|
|
8
9
|
let _stryke_convert_to_array = require("@stryke/convert/to-array");
|
|
9
|
-
let
|
|
10
|
+
let _stryke_type_checks_is_object = require("@stryke/type-checks/is-object");
|
|
10
11
|
let _stryke_helpers_get_unique = require("@stryke/helpers/get-unique");
|
|
11
12
|
let _stryke_path_is_type = require("@stryke/path/is-type");
|
|
12
|
-
let
|
|
13
|
-
let
|
|
14
|
-
let _stryke_type_checks_is_string = require("@stryke/type-checks/is-string");
|
|
13
|
+
let _stryke_convert_parse_type_definition = require("@stryke/convert/parse-type-definition");
|
|
14
|
+
let _stryke_hash = require("@stryke/hash");
|
|
15
15
|
|
|
16
16
|
//#region src/lib/entry.ts
|
|
17
17
|
function resolveEntryOutput(context, typeDefinition) {
|
package/dist/lib/entry.d.cts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entry.d.cts","names":[],"sources":["../../src/lib/entry.ts"],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"entry.d.cts","names":[],"sources":["../../src/lib/entry.ts"],"mappings":";;;;;iBAqCgB,kBAAA,CACd,OAAA,EAAS,OAAA,EACT,cAAA,EAAgB,cAAA;AAAA,iBAsBF,YAAA,CACd,OAAA,EAAS,OAAA,EACT,cAAA,EAAgB,cAAA,EAChB,KAAA,GAAQ,uBAAA,EACR,MAAA,YACC,2BAAA;AA7BH;;;;;;;AAAA,iBA4CsB,aAAA,CACpB,OAAA,EAAS,OAAA,EACT,eAAA,EACI,uBAAA,GACA,uBAAA,KACA,MAAA,SAAe,uBAAA,GAA0B,uBAAA,MAC5C,OAAA,CAAQ,2BAAA;;;AA1BX;;;;;iBAmGgB,iBAAA,CACd,OAAA,EAAS,OAAA,EACT,eAAA,EACI,uBAAA,GACA,uBAAA,KACA,MAAA,SAAe,uBAAA,GAA0B,uBAAA,MAC5C,2BAAA;;;;;;;iBAwDa,gBAAA,CAAiB,KAAA,QAAa,KAAA,IAAS,cAAA;;;;;;;iBAUvC,6BAAA,CACd,KAAA,EAAO,uBAAA,GAA0B,2BAAA,GAChC,KAAA,IAAS,2BAAA;;;;;;;iBAaI,eAAA,CAAgB,MAAA,GAAQ,MAAA,YAAuB,MAAA"}
|
package/dist/lib/entry.d.mts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entry.d.mts","names":[],"sources":["../../src/lib/entry.ts"],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"entry.d.mts","names":[],"sources":["../../src/lib/entry.ts"],"mappings":";;;;;iBAqCgB,kBAAA,CACd,OAAA,EAAS,OAAA,EACT,cAAA,EAAgB,cAAA;AAAA,iBAsBF,YAAA,CACd,OAAA,EAAS,OAAA,EACT,cAAA,EAAgB,cAAA,EAChB,KAAA,GAAQ,uBAAA,EACR,MAAA,YACC,2BAAA;AA7BH;;;;;;;AAAA,iBA4CsB,aAAA,CACpB,OAAA,EAAS,OAAA,EACT,eAAA,EACI,uBAAA,GACA,uBAAA,KACA,MAAA,SAAe,uBAAA,GAA0B,uBAAA,MAC5C,OAAA,CAAQ,2BAAA;;;AA1BX;;;;;iBAmGgB,iBAAA,CACd,OAAA,EAAS,OAAA,EACT,eAAA,EACI,uBAAA,GACA,uBAAA,KACA,MAAA,SAAe,uBAAA,GAA0B,uBAAA,MAC5C,2BAAA;;;;;;;iBAwDa,gBAAA,CAAiB,KAAA,QAAa,KAAA,IAAS,cAAA;;;;;;;iBAUvC,6BAAA,CACd,KAAA,EAAO,uBAAA,GAA0B,2BAAA,GAChC,KAAA,IAAS,2BAAA;;;;;;;iBAaI,eAAA,CAAgB,MAAA,GAAQ,MAAA,YAAuB,MAAA"}
|
package/dist/lib/entry.mjs
CHANGED
|
@@ -2,14 +2,14 @@ import { replacePathTokens } from "../plugin-utils/paths.mjs";
|
|
|
2
2
|
import { appendPath } from "@stryke/path/append";
|
|
3
3
|
import { joinPaths } from "@stryke/path/join-paths";
|
|
4
4
|
import { replaceExtension, replacePath } from "@stryke/path/replace";
|
|
5
|
-
import {
|
|
5
|
+
import { isSetString } from "@stryke/type-checks/is-set-string";
|
|
6
|
+
import { isString } from "@stryke/type-checks/is-string";
|
|
6
7
|
import { toArray } from "@stryke/convert/to-array";
|
|
7
|
-
import {
|
|
8
|
+
import { isObject } from "@stryke/type-checks/is-object";
|
|
8
9
|
import { getUniqueBy } from "@stryke/helpers/get-unique";
|
|
9
10
|
import { isAbsolutePath } from "@stryke/path/is-type";
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import { isString } from "@stryke/type-checks/is-string";
|
|
11
|
+
import { parseTypeDefinition } from "@stryke/convert/parse-type-definition";
|
|
12
|
+
import { murmurhash } from "@stryke/hash";
|
|
13
13
|
|
|
14
14
|
//#region src/lib/entry.ts
|
|
15
15
|
function resolveEntryOutput(context, typeDefinition) {
|
package/dist/lib/entry.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entry.mjs","names":[],"sources":["../../src/lib/entry.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { parseTypeDefinition } from \"@stryke/convert/parse-type-definition\";\nimport { toArray } from \"@stryke/convert/to-array\";\nimport { murmurhash } from \"@stryke/hash\";\nimport { getUniqueBy } from \"@stryke/helpers/get-unique\";\nimport { appendPath } from \"@stryke/path/append\";\nimport { isAbsolutePath } from \"@stryke/path/is-type\";\nimport { joinPaths } from \"@stryke/path/join-paths\";\nimport { replaceExtension, replacePath } from \"@stryke/path/replace\";\nimport { isObject } from \"@stryke/type-checks/is-object\";\nimport { isSetString } from \"@stryke/type-checks/is-set-string\";\nimport { isString } from \"@stryke/type-checks/is-string\";\nimport type {\n TypeDefinition,\n TypeDefinitionParameter\n} from \"@stryke/types/configuration\";\nimport { replacePathTokens } from \"../plugin-utils/paths\";\nimport { Config } from \"../types\";\nimport { ResolvedEntryTypeDefinition } from \"../types/config\";\nimport type { Context } from \"../types/context\";\n\nexport function resolveEntryOutput(\n context: Context,\n typeDefinition: TypeDefinition\n): string {\n return replaceExtension(\n replacePath(\n replacePath(\n replacePath(\n replacePath(\n replacePath(\n typeDefinition.file,\n joinPaths(context.config.cwd, context.config.root, \"src\")\n ),\n joinPaths(context.config.cwd, context.config.root)\n ),\n joinPaths(context.config.root, \"src\")\n ),\n context.config.root\n ),\n \"src\"\n )\n );\n}\n\nexport function resolveInput(\n context: Context,\n typeDefinition: TypeDefinition,\n input?: TypeDefinitionParameter,\n output?: string\n): ResolvedEntryTypeDefinition {\n return {\n ...typeDefinition,\n input: isSetString(input) ? { file: String(input) } : typeDefinition,\n output: output || resolveEntryOutput(context, typeDefinition)\n };\n}\n\n/**\n * Resolves multiple type definitions into their corresponding resolved entry type definitions.\n *\n * @param context - The current context\n * @param typeDefinitions - The type definitions to resolve.\n * @returns A promise that resolves to an array of resolved entry type definitions.\n */\nexport async function resolveInputs(\n context: Context,\n typeDefinitions:\n | TypeDefinitionParameter\n | TypeDefinitionParameter[]\n | Record<string, TypeDefinitionParameter | TypeDefinitionParameter[]>\n): Promise<ResolvedEntryTypeDefinition[]> {\n return (\n await Promise.all(\n (isObject(typeDefinitions) && !isTypeDefinition(typeDefinitions)\n ? Object.values(typeDefinitions).flat()\n : toArray(typeDefinitions)\n )\n .map(async entry => {\n if (isResolvedEntryTypeDefinition(entry)) {\n return {\n ...entry,\n output: entry.output\n ? replacePathTokens(context, entry.output)\n : undefined,\n file: replacePathTokens(context, entry.file)\n };\n }\n\n let typeDefinition: TypeDefinition;\n if (isString(entry)) {\n typeDefinition = parseTypeDefinition(\n replacePathTokens(context, entry)\n )!;\n } else {\n typeDefinition = entry;\n typeDefinition.file = replacePathTokens(\n context,\n typeDefinition.file\n );\n }\n\n const filePath = isAbsolutePath(typeDefinition.file)\n ? typeDefinition.file\n : appendPath(typeDefinition.file, context.config.root);\n if (await context.fs.isFile(filePath)) {\n return resolveInput(\n context,\n {\n file: replacePath(filePath, context.config.root),\n name: typeDefinition.name\n },\n (entry as ResolvedEntryTypeDefinition).input,\n (entry as ResolvedEntryTypeDefinition).output\n );\n }\n\n return (\n await context.fs.glob(appendPath(filePath, context.config.cwd))\n ).map(file =>\n resolveInput(\n context,\n {\n file: replacePath(file, context.config.root),\n name: typeDefinition.name\n },\n (entry as ResolvedEntryTypeDefinition).input,\n (entry as ResolvedEntryTypeDefinition).output\n )\n );\n })\n .flat()\n .filter(Boolean)\n )\n ).flat();\n}\n\n/**\n * Resolves multiple type definitions into their corresponding resolved entry type definitions.\n *\n * @param context - The current context\n * @param typeDefinitions - The type definitions to resolve.\n * @returns A promise that resolves to an array of resolved entry type definitions.\n */\nexport function resolveInputsSync(\n context: Context,\n typeDefinitions:\n | TypeDefinitionParameter\n | TypeDefinitionParameter[]\n | Record<string, TypeDefinitionParameter | TypeDefinitionParameter[]>\n): ResolvedEntryTypeDefinition[] {\n return (\n isObject(typeDefinitions) && !isTypeDefinition(typeDefinitions)\n ? Object.values(typeDefinitions).flat()\n : toArray(typeDefinitions)\n )\n .map(entry => {\n if (isResolvedEntryTypeDefinition(entry)) {\n return {\n ...entry,\n output: entry.output\n ? replacePathTokens(context, entry.output)\n : undefined,\n file: replacePathTokens(context, entry.file)\n };\n }\n\n let typeDefinition: TypeDefinition;\n if (isString(entry)) {\n typeDefinition = parseTypeDefinition(\n replacePathTokens(context, entry)\n )!;\n } else {\n typeDefinition = entry;\n typeDefinition.file = replacePathTokens(context, typeDefinition.file);\n }\n\n const filePath = isAbsolutePath(typeDefinition.file)\n ? typeDefinition.file\n : appendPath(typeDefinition.file, context.config.root);\n if (context.fs.isFileSync(filePath)) {\n return resolveInput(context, {\n file: appendPath(filePath, context.config.cwd),\n name: typeDefinition.name\n });\n }\n\n return context.fs\n .globSync(appendPath(filePath, context.config.cwd))\n .map(file =>\n resolveInput(context, {\n file,\n name: typeDefinition.name\n })\n );\n })\n .flat()\n .filter(Boolean);\n}\n\n/**\n * Checks if the provided entry is a type definition.\n *\n * @param entry - The entry to check.\n * @returns True if the entry is a type definition, false otherwise.\n */\nexport function isTypeDefinition(entry: any): entry is TypeDefinition {\n return !isString(entry) && entry.file !== undefined;\n}\n\n/**\n * Checks if the provided entry is a resolved entry type definition.\n *\n * @param entry - The entry to check.\n * @returns True if the entry is a resolved entry type definition, false otherwise.\n */\nexport function isResolvedEntryTypeDefinition(\n entry: TypeDefinitionParameter | ResolvedEntryTypeDefinition\n): entry is ResolvedEntryTypeDefinition {\n return (\n isTypeDefinition(entry) &&\n (entry as ResolvedEntryTypeDefinition).output !== undefined\n );\n}\n\n/**\n * Get unique inputs from the provided list.\n *\n * @param inputs - The entry points to process.\n * @returns An array of unique inputs (by file path or content hash).\n */\nexport function getUniqueInputs(inputs: Config[\"input\"] = []): Config[\"input\"] {\n return isObject(inputs)\n ? inputs\n : getUniqueBy(toArray(inputs), (item: TypeDefinitionParameter) =>\n isSetString(item) ? item : murmurhash(item ?? {}, { maxLength: 24 })\n );\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"entry.mjs","names":[],"sources":["../../src/lib/entry.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { parseTypeDefinition } from \"@stryke/convert/parse-type-definition\";\nimport { toArray } from \"@stryke/convert/to-array\";\nimport { murmurhash } from \"@stryke/hash\";\nimport { getUniqueBy } from \"@stryke/helpers/get-unique\";\nimport { appendPath } from \"@stryke/path/append\";\nimport { isAbsolutePath } from \"@stryke/path/is-type\";\nimport { joinPaths } from \"@stryke/path/join-paths\";\nimport { replaceExtension, replacePath } from \"@stryke/path/replace\";\nimport { isObject } from \"@stryke/type-checks/is-object\";\nimport { isSetString } from \"@stryke/type-checks/is-set-string\";\nimport { isString } from \"@stryke/type-checks/is-string\";\nimport type {\n TypeDefinition,\n TypeDefinitionParameter\n} from \"@stryke/types/configuration\";\nimport { replacePathTokens } from \"../plugin-utils/paths\";\nimport { Config, ResolvedEntryTypeDefinition } from \"../types/config\";\nimport type { Context } from \"../types/context\";\n\nexport function resolveEntryOutput(\n context: Context,\n typeDefinition: TypeDefinition\n): string {\n return replaceExtension(\n replacePath(\n replacePath(\n replacePath(\n replacePath(\n replacePath(\n typeDefinition.file,\n joinPaths(context.config.cwd, context.config.root, \"src\")\n ),\n joinPaths(context.config.cwd, context.config.root)\n ),\n joinPaths(context.config.root, \"src\")\n ),\n context.config.root\n ),\n \"src\"\n )\n );\n}\n\nexport function resolveInput(\n context: Context,\n typeDefinition: TypeDefinition,\n input?: TypeDefinitionParameter,\n output?: string\n): ResolvedEntryTypeDefinition {\n return {\n ...typeDefinition,\n input: isSetString(input) ? { file: String(input) } : typeDefinition,\n output: output || resolveEntryOutput(context, typeDefinition)\n };\n}\n\n/**\n * Resolves multiple type definitions into their corresponding resolved entry type definitions.\n *\n * @param context - The current context\n * @param typeDefinitions - The type definitions to resolve.\n * @returns A promise that resolves to an array of resolved entry type definitions.\n */\nexport async function resolveInputs(\n context: Context,\n typeDefinitions:\n | TypeDefinitionParameter\n | TypeDefinitionParameter[]\n | Record<string, TypeDefinitionParameter | TypeDefinitionParameter[]>\n): Promise<ResolvedEntryTypeDefinition[]> {\n return (\n await Promise.all(\n (isObject(typeDefinitions) && !isTypeDefinition(typeDefinitions)\n ? Object.values(typeDefinitions).flat()\n : toArray(typeDefinitions)\n )\n .map(async entry => {\n if (isResolvedEntryTypeDefinition(entry)) {\n return {\n ...entry,\n output: entry.output\n ? replacePathTokens(context, entry.output)\n : undefined,\n file: replacePathTokens(context, entry.file)\n };\n }\n\n let typeDefinition: TypeDefinition;\n if (isString(entry)) {\n typeDefinition = parseTypeDefinition(\n replacePathTokens(context, entry)\n )!;\n } else {\n typeDefinition = entry;\n typeDefinition.file = replacePathTokens(\n context,\n typeDefinition.file\n );\n }\n\n const filePath = isAbsolutePath(typeDefinition.file)\n ? typeDefinition.file\n : appendPath(typeDefinition.file, context.config.root);\n if (await context.fs.isFile(filePath)) {\n return resolveInput(\n context,\n {\n file: replacePath(filePath, context.config.root),\n name: typeDefinition.name\n },\n (entry as ResolvedEntryTypeDefinition).input,\n (entry as ResolvedEntryTypeDefinition).output\n );\n }\n\n return (\n await context.fs.glob(appendPath(filePath, context.config.cwd))\n ).map(file =>\n resolveInput(\n context,\n {\n file: replacePath(file, context.config.root),\n name: typeDefinition.name\n },\n (entry as ResolvedEntryTypeDefinition).input,\n (entry as ResolvedEntryTypeDefinition).output\n )\n );\n })\n .flat()\n .filter(Boolean)\n )\n ).flat();\n}\n\n/**\n * Resolves multiple type definitions into their corresponding resolved entry type definitions.\n *\n * @param context - The current context\n * @param typeDefinitions - The type definitions to resolve.\n * @returns A promise that resolves to an array of resolved entry type definitions.\n */\nexport function resolveInputsSync(\n context: Context,\n typeDefinitions:\n | TypeDefinitionParameter\n | TypeDefinitionParameter[]\n | Record<string, TypeDefinitionParameter | TypeDefinitionParameter[]>\n): ResolvedEntryTypeDefinition[] {\n return (\n isObject(typeDefinitions) && !isTypeDefinition(typeDefinitions)\n ? Object.values(typeDefinitions).flat()\n : toArray(typeDefinitions)\n )\n .map(entry => {\n if (isResolvedEntryTypeDefinition(entry)) {\n return {\n ...entry,\n output: entry.output\n ? replacePathTokens(context, entry.output)\n : undefined,\n file: replacePathTokens(context, entry.file)\n };\n }\n\n let typeDefinition: TypeDefinition;\n if (isString(entry)) {\n typeDefinition = parseTypeDefinition(\n replacePathTokens(context, entry)\n )!;\n } else {\n typeDefinition = entry;\n typeDefinition.file = replacePathTokens(context, typeDefinition.file);\n }\n\n const filePath = isAbsolutePath(typeDefinition.file)\n ? typeDefinition.file\n : appendPath(typeDefinition.file, context.config.root);\n if (context.fs.isFileSync(filePath)) {\n return resolveInput(context, {\n file: appendPath(filePath, context.config.cwd),\n name: typeDefinition.name\n });\n }\n\n return context.fs\n .globSync(appendPath(filePath, context.config.cwd))\n .map(file =>\n resolveInput(context, {\n file,\n name: typeDefinition.name\n })\n );\n })\n .flat()\n .filter(Boolean);\n}\n\n/**\n * Checks if the provided entry is a type definition.\n *\n * @param entry - The entry to check.\n * @returns True if the entry is a type definition, false otherwise.\n */\nexport function isTypeDefinition(entry: any): entry is TypeDefinition {\n return !isString(entry) && entry.file !== undefined;\n}\n\n/**\n * Checks if the provided entry is a resolved entry type definition.\n *\n * @param entry - The entry to check.\n * @returns True if the entry is a resolved entry type definition, false otherwise.\n */\nexport function isResolvedEntryTypeDefinition(\n entry: TypeDefinitionParameter | ResolvedEntryTypeDefinition\n): entry is ResolvedEntryTypeDefinition {\n return (\n isTypeDefinition(entry) &&\n (entry as ResolvedEntryTypeDefinition).output !== undefined\n );\n}\n\n/**\n * Get unique inputs from the provided list.\n *\n * @param inputs - The entry points to process.\n * @returns An array of unique inputs (by file path or content hash).\n */\nexport function getUniqueInputs(inputs: Config[\"input\"] = []): Config[\"input\"] {\n return isObject(inputs)\n ? inputs\n : getUniqueBy(toArray(inputs), (item: TypeDefinitionParameter) =>\n isSetString(item) ? item : murmurhash(item ?? {}, { maxLength: 24 })\n );\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2
|
+
const require_runtime = require('../_virtual/_rolldown/runtime.cjs');
|
|
3
|
+
const require_constants_environments = require('../constants/environments.cjs');
|
|
4
|
+
const require_lib_hooks = require('./hooks.cjs');
|
|
5
|
+
require('../constants/index.cjs');
|
|
6
|
+
let defu = require("defu");
|
|
7
|
+
defu = require_runtime.__toESM(defu, 1);
|
|
8
|
+
let _stryke_string_format_title_case = require("@stryke/string-format/title-case");
|
|
9
|
+
let _stryke_unique_id_uuid = require("@stryke/unique-id/uuid");
|
|
10
|
+
let _stryke_type_checks_is_set = require("@stryke/type-checks/is-set");
|
|
11
|
+
|
|
12
|
+
//#region src/lib/environment.ts
|
|
13
|
+
function createEnvironment(name, config) {
|
|
14
|
+
return (0, defu.default)(config.environments?.[name] ?? {}, {
|
|
15
|
+
id: (0, _stryke_unique_id_uuid.uuid)(),
|
|
16
|
+
name,
|
|
17
|
+
title: config.title ?? (0, _stryke_string_format_title_case.titleCase)(config.name),
|
|
18
|
+
ssr: false,
|
|
19
|
+
resolve: { mainFields: config.platform === "browser" ? [
|
|
20
|
+
"browser",
|
|
21
|
+
"module",
|
|
22
|
+
"jsnext:main",
|
|
23
|
+
"jsnext"
|
|
24
|
+
] : [
|
|
25
|
+
"module",
|
|
26
|
+
"jsnext:main",
|
|
27
|
+
"jsnext"
|
|
28
|
+
] },
|
|
29
|
+
consumer: config.platform === "browser" ? "client" : "server",
|
|
30
|
+
preview: config.platform === "browser" ? {
|
|
31
|
+
port: 5173,
|
|
32
|
+
open: true,
|
|
33
|
+
strictPort: false,
|
|
34
|
+
host: "localhost",
|
|
35
|
+
allowedHosts: ["."],
|
|
36
|
+
cors: true,
|
|
37
|
+
headers: {}
|
|
38
|
+
} : void 0
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
function createDefaultEnvironment(config) {
|
|
42
|
+
return createEnvironment(require_constants_environments.DEFAULT_ENVIRONMENT, config);
|
|
43
|
+
}
|
|
44
|
+
async function getEnvironments(context) {
|
|
45
|
+
if (!context.config.environments || Object.keys(context.config.environments).length <= 1) {
|
|
46
|
+
context.debug({
|
|
47
|
+
meta: { category: "config" },
|
|
48
|
+
message: "No environments are configured for this Powerlines project. Using the default environment."
|
|
49
|
+
});
|
|
50
|
+
return [await context.getEnvironment()];
|
|
51
|
+
}
|
|
52
|
+
context.debug({
|
|
53
|
+
meta: { category: "config" },
|
|
54
|
+
message: `Found ${Object.keys(context.config.environments).length} configured environment(s) for this Powerlines project.`
|
|
55
|
+
});
|
|
56
|
+
return (await Promise.all(Object.entries(context.config.environments).map(async ([name, config]) => {
|
|
57
|
+
if (!await context.getEnvironmentSafe(name)) {
|
|
58
|
+
const resolvedEnvironment = await require_lib_hooks.callHook(context, "configEnvironment", { environment: name }, name, config);
|
|
59
|
+
if (resolvedEnvironment) context.environments[name] = await context.createEnvironment(resolvedEnvironment);
|
|
60
|
+
}
|
|
61
|
+
return context.environments[name];
|
|
62
|
+
}))).filter((env) => (0, _stryke_type_checks_is_set.isSet)(env));
|
|
63
|
+
}
|
|
64
|
+
async function executeEnvironments(context, handle) {
|
|
65
|
+
await Promise.all((await getEnvironments(context)).map(async (env) => Promise.resolve(handle(env))));
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
//#endregion
|
|
69
|
+
exports.createDefaultEnvironment = createDefaultEnvironment;
|
|
70
|
+
exports.createEnvironment = createEnvironment;
|
|
71
|
+
exports.executeEnvironments = executeEnvironments;
|
|
72
|
+
exports.getEnvironments = getEnvironments;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { EnvironmentContext, ExecutionContext } from "../types/context.cjs";
|
|
2
|
+
import { EnvironmentResolvedConfig, ResolvedConfig } from "../types/config.cjs";
|
|
3
|
+
import { MaybePromise } from "@stryke/types/base";
|
|
4
|
+
|
|
5
|
+
//#region src/lib/environment.d.ts
|
|
6
|
+
declare function createEnvironment<TResolvedConfig extends ResolvedConfig = ResolvedConfig>(name: string, config: TResolvedConfig): EnvironmentResolvedConfig<TResolvedConfig>["environment"];
|
|
7
|
+
declare function createDefaultEnvironment<TResolvedConfig extends ResolvedConfig = ResolvedConfig>(config: TResolvedConfig): EnvironmentResolvedConfig<TResolvedConfig>["environment"];
|
|
8
|
+
declare function getEnvironments<TResolvedConfig extends ResolvedConfig = ResolvedConfig, TSystemContext = unknown>(context: ExecutionContext<TResolvedConfig, TSystemContext>): Promise<EnvironmentContext<TResolvedConfig, TSystemContext>[]>;
|
|
9
|
+
declare function executeEnvironments<TResolvedConfig extends ResolvedConfig = ResolvedConfig, TSystemContext = unknown>(context: ExecutionContext<TResolvedConfig, TSystemContext>, handle: (env: EnvironmentContext<TResolvedConfig, TSystemContext>) => MaybePromise<void>): Promise<void>;
|
|
10
|
+
//#endregion
|
|
11
|
+
export { createDefaultEnvironment, createEnvironment, executeEnvironments, getEnvironments };
|
|
12
|
+
//# sourceMappingURL=environment.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"environment.d.cts","names":[],"sources":["../../src/lib/environment.ts"],"mappings":";;;;;iBAgCgB,iBAAA,yBACU,cAAA,GAAiB,cAAA,CAAA,CACzC,IAAA,UAAc,MAAA,EAAQ,eAAA,GA0BL,yBAAA,CAA0B,eAAA;AAAA,iBAG7B,wBAAA,yBACU,cAAA,GAAiB,cAAA,CAAA,CACzC,MAAA,EAAQ,eAAA,GAAe,yBAAA,CAAA,eAAA;AAAA,iBAIH,eAAA,yBACI,cAAA,GAAiB,cAAA,2BAAA,CAGzC,OAAA,EAAS,gBAAA,CAAiB,eAAA,EAAiB,cAAA,IAC1C,OAAA,CAAQ,kBAAA,CAAmB,eAAA,EAAiB,cAAA;AAAA,iBAuDzB,mBAAA,yBACI,cAAA,GAAiB,cAAA,2BAAA,CAGzC,OAAA,EAAS,gBAAA,CAAiB,eAAA,EAAiB,cAAA,GAC3C,MAAA,GACE,GAAA,EAAK,kBAAA,CAAmB,eAAA,EAAiB,cAAA,MACtC,YAAA,SAAkB,OAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { EnvironmentContext, ExecutionContext } from "../types/context.mjs";
|
|
2
|
+
import { EnvironmentResolvedConfig, ResolvedConfig } from "../types/config.mjs";
|
|
3
|
+
import { MaybePromise } from "@stryke/types/base";
|
|
4
|
+
|
|
5
|
+
//#region src/lib/environment.d.ts
|
|
6
|
+
declare function createEnvironment<TResolvedConfig extends ResolvedConfig = ResolvedConfig>(name: string, config: TResolvedConfig): EnvironmentResolvedConfig<TResolvedConfig>["environment"];
|
|
7
|
+
declare function createDefaultEnvironment<TResolvedConfig extends ResolvedConfig = ResolvedConfig>(config: TResolvedConfig): EnvironmentResolvedConfig<TResolvedConfig>["environment"];
|
|
8
|
+
declare function getEnvironments<TResolvedConfig extends ResolvedConfig = ResolvedConfig, TSystemContext = unknown>(context: ExecutionContext<TResolvedConfig, TSystemContext>): Promise<EnvironmentContext<TResolvedConfig, TSystemContext>[]>;
|
|
9
|
+
declare function executeEnvironments<TResolvedConfig extends ResolvedConfig = ResolvedConfig, TSystemContext = unknown>(context: ExecutionContext<TResolvedConfig, TSystemContext>, handle: (env: EnvironmentContext<TResolvedConfig, TSystemContext>) => MaybePromise<void>): Promise<void>;
|
|
10
|
+
//#endregion
|
|
11
|
+
export { createDefaultEnvironment, createEnvironment, executeEnvironments, getEnvironments };
|
|
12
|
+
//# sourceMappingURL=environment.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"environment.d.mts","names":[],"sources":["../../src/lib/environment.ts"],"mappings":";;;;;iBAgCgB,iBAAA,yBACU,cAAA,GAAiB,cAAA,CAAA,CACzC,IAAA,UAAc,MAAA,EAAQ,eAAA,GA0BL,yBAAA,CAA0B,eAAA;AAAA,iBAG7B,wBAAA,yBACU,cAAA,GAAiB,cAAA,CAAA,CACzC,MAAA,EAAQ,eAAA,GAAe,yBAAA,CAAA,eAAA;AAAA,iBAIH,eAAA,yBACI,cAAA,GAAiB,cAAA,2BAAA,CAGzC,OAAA,EAAS,gBAAA,CAAiB,eAAA,EAAiB,cAAA,IAC1C,OAAA,CAAQ,kBAAA,CAAmB,eAAA,EAAiB,cAAA;AAAA,iBAuDzB,mBAAA,yBACI,cAAA,GAAiB,cAAA,2BAAA,CAGzC,OAAA,EAAS,gBAAA,CAAiB,eAAA,EAAiB,cAAA,GAC3C,MAAA,GACE,GAAA,EAAK,kBAAA,CAAmB,eAAA,EAAiB,cAAA,MACtC,YAAA,SAAkB,OAAA"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { DEFAULT_ENVIRONMENT } from "../constants/environments.mjs";
|
|
2
|
+
import { callHook } from "./hooks.mjs";
|
|
3
|
+
import "../constants/index.mjs";
|
|
4
|
+
import defu from "defu";
|
|
5
|
+
import { titleCase } from "@stryke/string-format/title-case";
|
|
6
|
+
import { uuid } from "@stryke/unique-id/uuid";
|
|
7
|
+
import { isSet } from "@stryke/type-checks/is-set";
|
|
8
|
+
|
|
9
|
+
//#region src/lib/environment.ts
|
|
10
|
+
function createEnvironment(name, config) {
|
|
11
|
+
return defu(config.environments?.[name] ?? {}, {
|
|
12
|
+
id: uuid(),
|
|
13
|
+
name,
|
|
14
|
+
title: config.title ?? titleCase(config.name),
|
|
15
|
+
ssr: false,
|
|
16
|
+
resolve: { mainFields: config.platform === "browser" ? [
|
|
17
|
+
"browser",
|
|
18
|
+
"module",
|
|
19
|
+
"jsnext:main",
|
|
20
|
+
"jsnext"
|
|
21
|
+
] : [
|
|
22
|
+
"module",
|
|
23
|
+
"jsnext:main",
|
|
24
|
+
"jsnext"
|
|
25
|
+
] },
|
|
26
|
+
consumer: config.platform === "browser" ? "client" : "server",
|
|
27
|
+
preview: config.platform === "browser" ? {
|
|
28
|
+
port: 5173,
|
|
29
|
+
open: true,
|
|
30
|
+
strictPort: false,
|
|
31
|
+
host: "localhost",
|
|
32
|
+
allowedHosts: ["."],
|
|
33
|
+
cors: true,
|
|
34
|
+
headers: {}
|
|
35
|
+
} : void 0
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
function createDefaultEnvironment(config) {
|
|
39
|
+
return createEnvironment(DEFAULT_ENVIRONMENT, config);
|
|
40
|
+
}
|
|
41
|
+
async function getEnvironments(context) {
|
|
42
|
+
if (!context.config.environments || Object.keys(context.config.environments).length <= 1) {
|
|
43
|
+
context.debug({
|
|
44
|
+
meta: { category: "config" },
|
|
45
|
+
message: "No environments are configured for this Powerlines project. Using the default environment."
|
|
46
|
+
});
|
|
47
|
+
return [await context.getEnvironment()];
|
|
48
|
+
}
|
|
49
|
+
context.debug({
|
|
50
|
+
meta: { category: "config" },
|
|
51
|
+
message: `Found ${Object.keys(context.config.environments).length} configured environment(s) for this Powerlines project.`
|
|
52
|
+
});
|
|
53
|
+
return (await Promise.all(Object.entries(context.config.environments).map(async ([name, config]) => {
|
|
54
|
+
if (!await context.getEnvironmentSafe(name)) {
|
|
55
|
+
const resolvedEnvironment = await callHook(context, "configEnvironment", { environment: name }, name, config);
|
|
56
|
+
if (resolvedEnvironment) context.environments[name] = await context.createEnvironment(resolvedEnvironment);
|
|
57
|
+
}
|
|
58
|
+
return context.environments[name];
|
|
59
|
+
}))).filter((env) => isSet(env));
|
|
60
|
+
}
|
|
61
|
+
async function executeEnvironments(context, handle) {
|
|
62
|
+
await Promise.all((await getEnvironments(context)).map(async (env) => Promise.resolve(handle(env))));
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
//#endregion
|
|
66
|
+
export { createDefaultEnvironment, createEnvironment, executeEnvironments, getEnvironments };
|
|
67
|
+
//# sourceMappingURL=environment.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"environment.mjs","names":[],"sources":["../../src/lib/environment.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { titleCase } from \"@stryke/string-format/title-case\";\nimport { isSet } from \"@stryke/type-checks/is-set\";\nimport { MaybePromise } from \"@stryke/types/base\";\nimport { uuid } from \"@stryke/unique-id/uuid\";\nimport defu from \"defu\";\nimport { DEFAULT_ENVIRONMENT } from \"../constants\";\nimport type {\n EnvironmentContext,\n EnvironmentResolvedConfig,\n ExecutionContext,\n ResolvedConfig\n} from \"../types\";\nimport { callHook } from \"./hooks\";\n\nexport function createEnvironment<\n TResolvedConfig extends ResolvedConfig = ResolvedConfig\n>(name: string, config: TResolvedConfig) {\n return defu(config.environments?.[name] ?? {}, {\n id: uuid(),\n name,\n title: config.title ?? titleCase(config.name),\n ssr: false,\n resolve: {\n mainFields:\n config.platform === \"browser\"\n ? [\"browser\", \"module\", \"jsnext:main\", \"jsnext\"]\n : [\"module\", \"jsnext:main\", \"jsnext\"]\n },\n consumer: config.platform === \"browser\" ? \"client\" : \"server\",\n preview:\n config.platform === \"browser\"\n ? {\n port: 5173,\n open: true,\n strictPort: false,\n // https: false,\n host: \"localhost\",\n allowedHosts: [\".\"],\n cors: true,\n headers: {}\n }\n : undefined\n }) as unknown as EnvironmentResolvedConfig<TResolvedConfig>[\"environment\"];\n}\n\nexport function createDefaultEnvironment<\n TResolvedConfig extends ResolvedConfig = ResolvedConfig\n>(config: TResolvedConfig) {\n return createEnvironment<TResolvedConfig>(DEFAULT_ENVIRONMENT, config);\n}\n\nexport async function getEnvironments<\n TResolvedConfig extends ResolvedConfig = ResolvedConfig,\n TSystemContext = unknown\n>(\n context: ExecutionContext<TResolvedConfig, TSystemContext>\n): Promise<EnvironmentContext<TResolvedConfig, TSystemContext>[]> {\n if (\n !context.config.environments ||\n Object.keys(context.config.environments).length <= 1\n ) {\n context.debug({\n meta: {\n category: \"config\"\n },\n message:\n \"No environments are configured for this Powerlines project. Using the default environment.\"\n });\n\n return [await context.getEnvironment()];\n }\n\n context.debug({\n meta: {\n category: \"config\"\n },\n message: `Found ${\n Object.keys(context.config.environments).length\n } configured environment(s) for this Powerlines project.`\n });\n\n return (\n await Promise.all(\n Object.entries(context.config.environments).map(\n async ([name, config]) => {\n const environment = await context.getEnvironmentSafe(name);\n if (!environment) {\n const resolvedEnvironment = await callHook(\n context,\n \"configEnvironment\",\n {\n environment: name\n },\n name,\n config\n );\n\n if (resolvedEnvironment) {\n context.environments[name] = await context.createEnvironment(\n resolvedEnvironment as EnvironmentResolvedConfig<TResolvedConfig>[\"environment\"]\n );\n }\n }\n\n return context.environments[name];\n }\n )\n )\n ).filter(env => isSet(env));\n}\n\nexport async function executeEnvironments<\n TResolvedConfig extends ResolvedConfig = ResolvedConfig,\n TSystemContext = unknown\n>(\n context: ExecutionContext<TResolvedConfig, TSystemContext>,\n handle: (\n env: EnvironmentContext<TResolvedConfig, TSystemContext>\n ) => MaybePromise<void>\n) {\n await Promise.all(\n (await getEnvironments(context)).map(async env =>\n Promise.resolve(handle(env))\n )\n );\n}\n"],"mappings":";;;;;;;;;AAgCA,SAAgB,kBAEd,MAAc,QAAyB;AACvC,QAAO,KAAK,OAAO,eAAe,SAAS,EAAE,EAAE;EAC7C,IAAI,MAAM;EACV;EACA,OAAO,OAAO,SAAS,UAAU,OAAO,KAAK;EAC7C,KAAK;EACL,SAAS,EACP,YACE,OAAO,aAAa,YAChB;GAAC;GAAW;GAAU;GAAe;GAAS,GAC9C;GAAC;GAAU;GAAe;GAAS,EAC1C;EACD,UAAU,OAAO,aAAa,YAAY,WAAW;EACrD,SACE,OAAO,aAAa,YAChB;GACE,MAAM;GACN,MAAM;GACN,YAAY;GAEZ,MAAM;GACN,cAAc,CAAC,IAAI;GACnB,MAAM;GACN,SAAS,EAAE;GACZ,GACD;EACP,CAAC;;AAGJ,SAAgB,yBAEd,QAAyB;AACzB,QAAO,kBAAmC,qBAAqB,OAAO;;AAGxE,eAAsB,gBAIpB,SACgE;AAChE,KACE,CAAC,QAAQ,OAAO,gBAChB,OAAO,KAAK,QAAQ,OAAO,aAAa,CAAC,UAAU,GACnD;AACA,UAAQ,MAAM;GACZ,MAAM,EACJ,UAAU,UACX;GACD,SACE;GACH,CAAC;AAEF,SAAO,CAAC,MAAM,QAAQ,gBAAgB,CAAC;;AAGzC,SAAQ,MAAM;EACZ,MAAM,EACJ,UAAU,UACX;EACD,SAAS,SACP,OAAO,KAAK,QAAQ,OAAO,aAAa,CAAC,OAC1C;EACF,CAAC;AAEF,SACE,MAAM,QAAQ,IACZ,OAAO,QAAQ,QAAQ,OAAO,aAAa,CAAC,IAC1C,OAAO,CAAC,MAAM,YAAY;AAExB,MAAI,CAAC,MADqB,QAAQ,mBAAmB,KAAK,EACxC;GAChB,MAAM,sBAAsB,MAAM,SAChC,SACA,qBACA,EACE,aAAa,MACd,EACD,MACA,OACD;AAED,OAAI,oBACF,SAAQ,aAAa,QAAQ,MAAM,QAAQ,kBACzC,oBACD;;AAIL,SAAO,QAAQ,aAAa;GAE/B,CACF,EACD,QAAO,QAAO,MAAM,IAAI,CAAC;;AAG7B,eAAsB,oBAIpB,SACA,QAGA;AACA,OAAM,QAAQ,KACX,MAAM,gBAAgB,QAAQ,EAAE,IAAI,OAAM,QACzC,QAAQ,QAAQ,OAAO,IAAI,CAAC,CAC7B,CACF"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2
|
+
|
|
3
|
+
//#region src/lib/events.ts
|
|
4
|
+
/**
|
|
5
|
+
* Create event emitter.
|
|
6
|
+
*/
|
|
7
|
+
function createEventEmitter() {
|
|
8
|
+
const _listeners = {};
|
|
9
|
+
function emit(event, ...args) {
|
|
10
|
+
const callbacks = _listeners[event] || [];
|
|
11
|
+
for (let i = 0, length = callbacks.length; i < length; i++) {
|
|
12
|
+
const callback = callbacks[i];
|
|
13
|
+
if (callback) callback(...args);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
function emitOnce(event, ...args) {
|
|
17
|
+
emit(event, ...args);
|
|
18
|
+
delete _listeners[event];
|
|
19
|
+
}
|
|
20
|
+
function on(event, cb) {
|
|
21
|
+
(_listeners[event] ||= []).push(cb);
|
|
22
|
+
return () => {
|
|
23
|
+
_listeners[event] = _listeners[event]?.filter((i) => cb !== i);
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
function once(event, cb) {
|
|
27
|
+
const unsubscribe = on(event, ((...args) => {
|
|
28
|
+
unsubscribe();
|
|
29
|
+
return cb(...args);
|
|
30
|
+
}));
|
|
31
|
+
return unsubscribe;
|
|
32
|
+
}
|
|
33
|
+
return {
|
|
34
|
+
_listeners,
|
|
35
|
+
emit,
|
|
36
|
+
emitOnce,
|
|
37
|
+
on,
|
|
38
|
+
once
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
//#endregion
|
|
43
|
+
exports.createEventEmitter = createEventEmitter;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { EventEmitter, EventsMap } from "devframe/types";
|
|
2
|
+
|
|
3
|
+
//#region src/lib/events.d.ts
|
|
4
|
+
/**
|
|
5
|
+
* Create event emitter.
|
|
6
|
+
*/
|
|
7
|
+
declare function createEventEmitter<Events extends EventsMap>(): EventEmitter<Events>;
|
|
8
|
+
//#endregion
|
|
9
|
+
export { createEventEmitter };
|
|
10
|
+
//# sourceMappingURL=events.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.d.cts","names":[],"sources":["../../src/lib/events.ts"],"mappings":";;;;;AAuBA;iBAAgB,kBAAA,gBACC,SAAA,CAAA,CAAA,GACZ,YAAA,CAAa,MAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { EventEmitter, EventsMap } from "devframe/types";
|
|
2
|
+
|
|
3
|
+
//#region src/lib/events.d.ts
|
|
4
|
+
/**
|
|
5
|
+
* Create event emitter.
|
|
6
|
+
*/
|
|
7
|
+
declare function createEventEmitter<Events extends EventsMap>(): EventEmitter<Events>;
|
|
8
|
+
//#endregion
|
|
9
|
+
export { createEventEmitter };
|
|
10
|
+
//# sourceMappingURL=events.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.d.mts","names":[],"sources":["../../src/lib/events.ts"],"mappings":";;;;;AAuBA;iBAAgB,kBAAA,gBACC,SAAA,CAAA,CAAA,GACZ,YAAA,CAAa,MAAA"}
|