@kosdev-code/kos-ui-plugin 0.1.0-dev.5053
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/documentation-generator-DFaIDo0E.cjs +266 -0
- package/documentation-generator-DFaIDo0E.cjs.map +1 -0
- package/documentation-generator-auruIa_o.js +1560 -0
- package/documentation-generator-auruIa_o.js.map +1 -0
- package/index.cjs +437 -0
- package/index.cjs.map +1 -0
- package/index.d.ts +5 -0
- package/index.d.ts.map +1 -0
- package/index.js +2276 -0
- package/index.js.map +1 -0
- package/lib/components/dynamic-component/dynamic-component.d.ts +11 -0
- package/lib/components/dynamic-component/dynamic-component.d.ts.map +1 -0
- package/lib/components/dynamic-component/error-boundary.d.ts +17 -0
- package/lib/components/dynamic-component/error-boundary.d.ts.map +1 -0
- package/lib/components/dynamic-component/index.d.ts +2 -0
- package/lib/components/dynamic-component/index.d.ts.map +1 -0
- package/lib/components/dynamic-container/dynamic-container.d.ts +12 -0
- package/lib/components/dynamic-container/dynamic-container.d.ts.map +1 -0
- package/lib/components/dynamic-container/index.d.ts +2 -0
- package/lib/components/dynamic-container/index.d.ts.map +1 -0
- package/lib/components/index.d.ts +3 -0
- package/lib/components/index.d.ts.map +1 -0
- package/lib/components/plugin-explorer/extension-point-list.d.ts +13 -0
- package/lib/components/plugin-explorer/extension-point-list.d.ts.map +1 -0
- package/lib/components/plugin-explorer/floating-plugin-explorer.d.ts +13 -0
- package/lib/components/plugin-explorer/floating-plugin-explorer.d.ts.map +1 -0
- package/lib/components/plugin-explorer/index.d.ts +10 -0
- package/lib/components/plugin-explorer/index.d.ts.map +1 -0
- package/lib/components/plugin-explorer/plugin-card.d.ts +10 -0
- package/lib/components/plugin-explorer/plugin-card.d.ts.map +1 -0
- package/lib/components/plugin-explorer/plugin-explorer.d.ts +12 -0
- package/lib/components/plugin-explorer/plugin-explorer.d.ts.map +1 -0
- package/lib/components/plugin-explorer/plugin-health-dashboard.d.ts +9 -0
- package/lib/components/plugin-explorer/plugin-health-dashboard.d.ts.map +1 -0
- package/lib/contexts/index.d.ts +2 -0
- package/lib/contexts/index.d.ts.map +1 -0
- package/lib/contexts/plugins-provider/index.d.ts +2 -0
- package/lib/contexts/plugins-provider/index.d.ts.map +1 -0
- package/lib/contexts/plugins-provider/plugins-provider.d.ts +50 -0
- package/lib/contexts/plugins-provider/plugins-provider.d.ts.map +1 -0
- package/lib/hooks/index.d.ts +6 -0
- package/lib/hooks/index.d.ts.map +1 -0
- package/lib/hooks/use-dynamic-component.d.ts +34 -0
- package/lib/hooks/use-dynamic-component.d.ts.map +1 -0
- package/lib/hooks/use-extension-component.d.ts +26 -0
- package/lib/hooks/use-extension-component.d.ts.map +1 -0
- package/lib/hooks/use-extension-i18n.d.ts +69 -0
- package/lib/hooks/use-extension-i18n.d.ts.map +1 -0
- package/lib/hooks/use-plugin-discovery.d.ts +23 -0
- package/lib/hooks/use-plugin-discovery.d.ts.map +1 -0
- package/lib/hooks/use-typed-extensions.d.ts +152 -0
- package/lib/hooks/use-typed-extensions.d.ts.map +1 -0
- package/lib/utils/discovery/documentation-generator.d.ts +85 -0
- package/lib/utils/discovery/documentation-generator.d.ts.map +1 -0
- package/lib/utils/discovery/plugin-discovery-service.d.ts +109 -0
- package/lib/utils/discovery/plugin-discovery-service.d.ts.map +1 -0
- package/lib/utils/extension-points/define-extension-point.d.ts +58 -0
- package/lib/utils/extension-points/define-extension-point.d.ts.map +1 -0
- package/lib/utils/extension-points/example-extension-point.d.ts +67 -0
- package/lib/utils/extension-points/example-extension-point.d.ts.map +1 -0
- package/lib/utils/extension-points/extension-point-registry.d.ts +59 -0
- package/lib/utils/extension-points/extension-point-registry.d.ts.map +1 -0
- package/lib/utils/extension-points/extension-point-schema.d.ts +9 -0
- package/lib/utils/extension-points/extension-point-schema.d.ts.map +1 -0
- package/lib/utils/extension-points/extension-point-schemas.d.ts +92 -0
- package/lib/utils/extension-points/extension-point-schemas.d.ts.map +1 -0
- package/lib/utils/extension-points/extension-point-transforms.d.ts +21 -0
- package/lib/utils/extension-points/extension-point-transforms.d.ts.map +1 -0
- package/lib/utils/extension-points/extension-point-types.d.ts +162 -0
- package/lib/utils/extension-points/extension-point-types.d.ts.map +1 -0
- package/lib/utils/extension-points/extension-point-validation.d.ts +43 -0
- package/lib/utils/extension-points/extension-point-validation.d.ts.map +1 -0
- package/lib/utils/extension-points/json-extension-parser.d.ts +68 -0
- package/lib/utils/extension-points/json-extension-parser.d.ts.map +1 -0
- package/lib/utils/extension-points/type-generator.d.ts +43 -0
- package/lib/utils/extension-points/type-generator.d.ts.map +1 -0
- package/lib/utils/index.d.ts +10 -0
- package/lib/utils/index.d.ts.map +1 -0
- package/lib/utils/plugin-system/plugin-extension-manager.d.ts +15 -0
- package/lib/utils/plugin-system/plugin-extension-manager.d.ts.map +1 -0
- package/lib/utils/plugin-system/plugin-extension-registry-init.d.ts +2 -0
- package/lib/utils/plugin-system/plugin-extension-registry-init.d.ts.map +1 -0
- package/lib/utils/plugin-system/plugin-extension-registry.d.ts +6 -0
- package/lib/utils/plugin-system/plugin-extension-registry.d.ts.map +1 -0
- package/lib/utils/plugin-system/plugin-reducer.d.ts +17 -0
- package/lib/utils/plugin-system/plugin-reducer.d.ts.map +1 -0
- package/lib/utils/plugin-system/resolve-best-extension.d.ts +12 -0
- package/lib/utils/plugin-system/resolve-best-extension.d.ts.map +1 -0
- package/lib/utils/processors/contribution-reducer.d.ts +5 -0
- package/lib/utils/processors/contribution-reducer.d.ts.map +1 -0
- package/lib/utils/processors/initialize-plugins.d.ts +82 -0
- package/lib/utils/processors/initialize-plugins.d.ts.map +1 -0
- package/lib/utils/processors/initialize-simplified-extensions.d.ts +13 -0
- package/lib/utils/processors/initialize-simplified-extensions.d.ts.map +1 -0
- package/lib/utils/processors/process-kos-config.d.ts +34 -0
- package/lib/utils/processors/process-kos-config.d.ts.map +1 -0
- package/lib/utils/processors/simplified-contribution-processor.d.ts +14 -0
- package/lib/utils/processors/simplified-contribution-processor.d.ts.map +1 -0
- package/lib/webpack/index.d.ts +2 -0
- package/lib/webpack/index.d.ts.map +1 -0
- package/lib/webpack/with-kos-config.d.ts +2 -0
- package/lib/webpack/with-kos-config.d.ts.map +1 -0
- package/package.json +30 -0
- package/types/global.d.ts +53 -0
- package/types/plugins.d.ts +41 -0
- package/utils.cjs +2 -0
- package/utils.cjs.map +1 -0
- package/utils.js +296 -0
- package/utils.js.map +1 -0
- package/webpack.cjs +13 -0
- package/webpack.cjs.map +1 -0
- package/webpack.js +795 -0
- package/webpack.js.map +1 -0
package/utils.cjs.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.cjs","sources":["../../../../packages/sdk/kos-ui-plugin/src/lib/utils/extension-points/extension-point-types.ts","../../../../packages/sdk/kos-ui-plugin/src/lib/utils/processors/process-kos-config.ts"],"sourcesContent":["/**\n * Core types and interfaces for extension point system\n */\n\n// React import removed - component creation happens at runtime via hooks\nimport type { z } from \"zod\";\nimport type {\n BasePluginExtension,\n PluginExtensionsType,\n ProcessedContributions,\n} from \"../../../types/plugins\";\n\n/**\n * Validation context for collecting validation issues\n */\nexport interface ValidationContext {\n addError(message: string): void;\n addWarning(message: string): void;\n addInfo(message: string): void;\n hasErrors(): boolean;\n hasIssues(): boolean;\n getIssues(): { type: \"error\" | \"warning\" | \"info\"; message: string }[];\n}\n\n/**\n * Context provided to transform functions\n */\nexport interface TransformContext {\n remote: string;\n sectionId: string;\n experiences?: Record<string, any>;\n contributions: ProcessedContributions;\n}\n\n/**\n * Schema field information for documentation\n */\nexport interface SchemaFieldInfo {\n name: string;\n description?: string;\n type?: string;\n required?: boolean;\n}\n\n/**\n * Configuration for defining a new extension point\n */\nexport interface ExtensionPointConfig<\n TData = any,\n TProcessed = TData,\n _TProps = any\n> {\n /**\n * Unique identifier for this extension point\n * Convention: \"ddk.{feature}\" or \"ddk.{feature}.{sub-feature}\"\n */\n id: string;\n\n /**\n * Optional display name for documentation/discovery\n */\n displayName?: string;\n\n /**\n * Optional description for documentation/discovery\n */\n description?: string;\n\n /**\n * The contribution key in the plugin descriptor\n * e.g., \"myFeature\" maps to contributes.myFeature in kosdev-plugin.json\n */\n contributionKey: string;\n\n /**\n * Optional related extension points\n * For example, a main extension might have .view and .definition variants\n */\n relatedPoints?: {\n view?: string;\n definition?: string;\n [key: string]: string | undefined;\n };\n\n /**\n * Transform function to process raw contribution data\n * Allows custom processing logic while maintaining type safety\n */\n transform?: (data: TData, context: TransformContext) => TProcessed;\n\n /**\n * Optional validation function\n * Use context.addError/addWarning/addInfo to collect validation issues\n * Return \"skip\" to skip processing this contribution\n */\n validate?: (data: TData, context: ValidationContext) => \"skip\" | void;\n\n /**\n * Whether this extension point uses view/experience pattern\n * Default: false\n */\n hasView?: boolean;\n\n /**\n * Whether contributions should be ranked\n * Default: false\n */\n isRankable?: boolean;\n\n /**\n * Optional Zod schema for runtime validation and documentation\n * Provides both type safety and field introspection for Plugin Explorer\n */\n schema?: z.ZodSchema<TData>;\n\n /**\n * Metadata for discovery/documentation\n */\n metadata?: {\n category?: string;\n tags?: string[];\n since?: string;\n deprecated?: boolean;\n replacedBy?: string;\n owner?: string;\n /**\n * The actual export name of this extension point in the code\n * Used for documentation generation to show correct import statements\n */\n exportName?: string;\n };\n}\n\n/**\n * Props for extension point components\n */\nexport interface ExtensionComponentProps {\n /** Specific module to load (optional) */\n module?: string;\n /** Fallback component when extension not found */\n fallback?: React.ReactNode;\n}\n\n/**\n * Result of defining an extension point\n */\nexport interface ExtensionPointDefinition<\n TData = any,\n TProcessed = TData,\n TProps = any\n> {\n /**\n * The extension point configuration\n */\n config: ExtensionPointConfig<TData, TProcessed, TProps>;\n\n /**\n * Extension point ID for use in components\n */\n id: string;\n\n /**\n * Helper to get typed extensions (for future use with hooks)\n */\n getExtensions?: (\n extensions: PluginExtensionsType\n ) => Record<string, BasePluginExtension & { data: TProcessed }>;\n\n /**\n * Registration status\n */\n isRegistered: boolean;\n\n /**\n * Method to register this extension point\n */\n register: () => void;\n\n // Component property removed - use useExtensionComponent hook or createExtensionComponent factory at runtime\n\n /**\n * Get schema field information for documentation purposes\n * Returns field info that can be safely displayed by Plugin Explorer\n */\n getSchemaFieldInfo?: () => SchemaFieldInfo[];\n}\n\n/**\n * Extension point with hasView: true, guarantees Component property\n */\nexport interface ViewExtensionPointDefinition<\n TData = any,\n TProcessed = TData,\n TProps = any\n> extends ExtensionPointDefinition<TData, TProcessed, TProps> {\n Component: React.ComponentType<ExtensionComponentProps & TProps>;\n}\n\n/**\n * Type-safe extension point ID helper\n * Ensures consistent naming and helps with refactoring\n */\nexport function extensionPointId(\n namespace: string,\n feature: string,\n ...subFeatures: string[]\n): string {\n const parts = [namespace, feature, ...subFeatures].filter(Boolean);\n return parts.join(\".\");\n}\n","/* eslint-disable max-lines-per-function */\nimport type { Contributions } from \"../../../types/global\";\n\ninterface KosConfigView {\n id: string;\n title: string;\n component: string;\n location: string;\n}\n\ninterface KosPluginConfig {\n id: string;\n init?: boolean;\n contributes: Contributions;\n}\n\ninterface DDKConfig {\n name: string;\n kosdev: {\n ddk: {\n ncui: {\n plugin: KosPluginConfig;\n };\n };\n };\n}\n\ninterface CoreKosConfig {\n name: string;\n kos: {\n ui: {\n plugin: KosPluginConfig;\n };\n };\n}\n\nexport type KosConfig = DDKConfig | CoreKosConfig;\n\nfunction normalizeVersion(version: string): string {\n const match = version.match(/^(\\d+)\\.(\\d+)\\.\\d+(?:-\\S+)?$/);\n if (!match) {\n throw new Error(`Invalid version format: ${version}`);\n }\n const [_, major, minor] = match;\n return `${major}.${minor}.0`;\n}\n\nexport interface PluginOptions {\n sdkVersion?: string;\n ddkVersion?: string;\n pluginPath?: string;\n}\nexport function generatePluginConfiguration(\n config: KosConfig,\n options?: PluginOptions\n): any {\n if (options?.sdkVersion) {\n console.log(\"sdkVersion\", options.sdkVersion);\n }\n if (options?.ddkVersion) {\n console.log(\"ddkVersion\", options.ddkVersion);\n }\n const sdkVersion = normalizeVersion(options?.sdkVersion || \"0.2.0\");\n const ddkVersion = normalizeVersion(options?.ddkVersion || \"0.2.0\");\n\n console.log(`Using DDK version: ${ddkVersion}`);\n console.log(`Using SDK version: ${sdkVersion}`);\n const projectId = config?.name;\n if (!projectId) {\n throw new Error(\n \"KOS Configuration should be added. Project name not found in config\"\n );\n }\n const pluginPath = options?.pluginPath || \"kos.ui.plugin\";\n const pluginObj = pluginPath\n .split(\".\")\n .reduce<KosPluginConfig>((obj, key) => {\n console.log(`Accessing key: ${key}`);\n return obj && obj[key] ? obj[key] : undefined;\n }, config as unknown as KosPluginConfig);\n\n const pluginId = pluginObj?.id;\n if (!pluginId) {\n throw new Error(\n \"KOS Configuration should be added. Plugin ID not found in config\"\n );\n }\n const mfConfig = Object.keys(pluginObj?.contributes?.views || {}).reduce(\n (acc, key) => {\n const views = pluginObj.contributes.views[key];\n\n views.forEach((view) => {\n acc[`./${view.component}`] = view.location;\n });\n return acc;\n },\n {}\n );\n\n Object.values(pluginObj?.contributes?.experiences || {}).forEach(\n (experience) => {\n mfConfig[`./${experience.component}`] = experience.location;\n }\n );\n\n if (pluginObj?.init) {\n mfConfig[\"./InitPlugin\"] = \"./src/app/init.ts\";\n }\n\n return {\n name: projectId,\n exposes: mfConfig,\n library: { type: \"var\", name: pluginId },\n additionalShared: [\n {\n libraryName: \"@kosdev-code/kos-ui-plugin\",\n sharedConfig: {\n singleton: true,\n eager: false,\n requiredVersion: `~${ddkVersion}`,\n },\n },\n {\n libraryName: \"react\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: true,\n requiredVersion: \"18.2.0\",\n },\n },\n\n {\n libraryName: \"react-dom\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: true,\n requiredVersion: \"18.2.0\",\n },\n },\n {\n libraryName: \"@kosdev-code/kos-ui-sdk\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: `~${sdkVersion}`,\n },\n },\n {\n libraryName: \"@kosdev-code/kos-dispense-sdk\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: `~${sdkVersion}`,\n },\n },\n\n {\n libraryName: \"@kosdev-code/kos-freestyle-sdk\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: `~${sdkVersion}`,\n },\n },\n {\n libraryName: \"@kosdev-code/kos-ddk-components\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: `~${ddkVersion}`,\n },\n },\n {\n libraryName: \"@kosdev-code/kos-ddk-model-components\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: `~${ddkVersion}`,\n },\n },\n {\n libraryName: \"@kosdev-code/kos-ddk-models\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: `~${ddkVersion}`,\n },\n },\n {\n libraryName: \"@kosdev-code/kos-ddk\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: `~${ddkVersion}`,\n },\n },\n {\n libraryName: \"@kosdev-code/kos-ddk-styles\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: `~${ddkVersion}`,\n },\n },\n {\n libraryName: \"@emotion/styled\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: \"~11.11.0\",\n },\n },\n {\n libraryName: \"@emotion/react\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: \"~11.11.0\",\n },\n },\n {\n libraryName: \"reflect-metadata\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: \"^0.2.2\",\n },\n },\n {\n libraryName: \"mobx\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: \"^6.9.0\",\n },\n },\n\n {\n libraryName: \"loglevel\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: \"^1.8.1\",\n },\n },\n {\n libraryName: \"robot3\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: \"^0.4.0\",\n },\n },\n {\n libraryName: \"mobx-react-lite\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: \"^3.4.3\",\n },\n },\n {\n libraryName: \"react-router-dom\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: \"^6.11.2\",\n },\n },\n {\n libraryName: \"date-fns\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: \"^2.30.0\",\n },\n },\n {\n libraryName: \"@use-gesture/react\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: \"^10.3.0\",\n },\n },\n {\n libraryName: \"@react-spring/web\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: \"^9.7.3\",\n },\n },\n {\n libraryName: \"react-simple-keyboard\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: \"^3.6.13\",\n },\n },\n {\n libraryName: \"expr-eval\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: \"^2.0.2\",\n },\n },\n {\n libraryName: \"zod\",\n sharedConfig: {\n singleton: true,\n eager: true,\n strictVersion: false,\n requiredVersion: \"^3.25.0\",\n },\n },\n ],\n };\n}\n"],"names":["extensionPointId","namespace","feature","subFeatures","normalizeVersion","version","match","_","major","minor","generatePluginConfiguration","config","options","sdkVersion","ddkVersion","projectId","pluginObj","obj","key","pluginId","mfConfig","_a","acc","view","_b","experience"],"mappings":"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"}
|
package/utils.js
ADDED
|
@@ -0,0 +1,296 @@
|
|
|
1
|
+
import { B as v, D as q, P as N, R as $, d as x, q as P, n as w, h as E, e as S, c as D, j as I, f as R, g as K, b as B, a as z, l as A, k as U, r as F, o as G, p as M, s as T, v as W } from "./documentation-generator-auruIa_o.js";
|
|
2
|
+
import "zod";
|
|
3
|
+
function k(i, e, ...n) {
|
|
4
|
+
return [i, e, ...n].filter(Boolean).join(".");
|
|
5
|
+
}
|
|
6
|
+
function u(i) {
|
|
7
|
+
const e = i.match(/^(\d+)\.(\d+)\.\d+(?:-\S+)?$/);
|
|
8
|
+
if (!e)
|
|
9
|
+
throw new Error(`Invalid version format: ${i}`);
|
|
10
|
+
const [n, s, t] = e;
|
|
11
|
+
return `${s}.${t}.0`;
|
|
12
|
+
}
|
|
13
|
+
function y(i, e) {
|
|
14
|
+
var g, f;
|
|
15
|
+
e != null && e.sdkVersion && console.log("sdkVersion", e.sdkVersion), e != null && e.ddkVersion && console.log("ddkVersion", e.ddkVersion);
|
|
16
|
+
const n = u((e == null ? void 0 : e.sdkVersion) || "0.2.0"), s = u((e == null ? void 0 : e.ddkVersion) || "0.2.0");
|
|
17
|
+
console.log(`Using DDK version: ${s}`), console.log(`Using SDK version: ${n}`);
|
|
18
|
+
const t = i == null ? void 0 : i.name;
|
|
19
|
+
if (!t)
|
|
20
|
+
throw new Error(
|
|
21
|
+
"KOS Configuration should be added. Project name not found in config"
|
|
22
|
+
);
|
|
23
|
+
const r = ((e == null ? void 0 : e.pluginPath) || "kos.ui.plugin").split(".").reduce((a, o) => (console.log(`Accessing key: ${o}`), a && a[o] ? a[o] : void 0), i), d = r == null ? void 0 : r.id;
|
|
24
|
+
if (!d)
|
|
25
|
+
throw new Error(
|
|
26
|
+
"KOS Configuration should be added. Plugin ID not found in config"
|
|
27
|
+
);
|
|
28
|
+
const l = Object.keys(((g = r == null ? void 0 : r.contributes) == null ? void 0 : g.views) || {}).reduce(
|
|
29
|
+
(a, o) => (r.contributes.views[o].forEach((c) => {
|
|
30
|
+
a[`./${c.component}`] = c.location;
|
|
31
|
+
}), a),
|
|
32
|
+
{}
|
|
33
|
+
);
|
|
34
|
+
return Object.values(((f = r == null ? void 0 : r.contributes) == null ? void 0 : f.experiences) || {}).forEach(
|
|
35
|
+
(a) => {
|
|
36
|
+
l[`./${a.component}`] = a.location;
|
|
37
|
+
}
|
|
38
|
+
), r != null && r.init && (l["./InitPlugin"] = "./src/app/init.ts"), {
|
|
39
|
+
name: t,
|
|
40
|
+
exposes: l,
|
|
41
|
+
library: { type: "var", name: d },
|
|
42
|
+
additionalShared: [
|
|
43
|
+
{
|
|
44
|
+
libraryName: "@kosdev-code/kos-ui-plugin",
|
|
45
|
+
sharedConfig: {
|
|
46
|
+
singleton: !0,
|
|
47
|
+
eager: !1,
|
|
48
|
+
requiredVersion: `~${s}`
|
|
49
|
+
}
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
libraryName: "react",
|
|
53
|
+
sharedConfig: {
|
|
54
|
+
singleton: !0,
|
|
55
|
+
eager: !1,
|
|
56
|
+
strictVersion: !0,
|
|
57
|
+
requiredVersion: "18.2.0"
|
|
58
|
+
}
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
libraryName: "react-dom",
|
|
62
|
+
sharedConfig: {
|
|
63
|
+
singleton: !0,
|
|
64
|
+
eager: !1,
|
|
65
|
+
strictVersion: !0,
|
|
66
|
+
requiredVersion: "18.2.0"
|
|
67
|
+
}
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
libraryName: "@kosdev-code/kos-ui-sdk",
|
|
71
|
+
sharedConfig: {
|
|
72
|
+
singleton: !0,
|
|
73
|
+
eager: !1,
|
|
74
|
+
strictVersion: !1,
|
|
75
|
+
requiredVersion: `~${n}`
|
|
76
|
+
}
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
libraryName: "@kosdev-code/kos-dispense-sdk",
|
|
80
|
+
sharedConfig: {
|
|
81
|
+
singleton: !0,
|
|
82
|
+
eager: !1,
|
|
83
|
+
strictVersion: !1,
|
|
84
|
+
requiredVersion: `~${n}`
|
|
85
|
+
}
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
libraryName: "@kosdev-code/kos-freestyle-sdk",
|
|
89
|
+
sharedConfig: {
|
|
90
|
+
singleton: !0,
|
|
91
|
+
eager: !1,
|
|
92
|
+
strictVersion: !1,
|
|
93
|
+
requiredVersion: `~${n}`
|
|
94
|
+
}
|
|
95
|
+
},
|
|
96
|
+
{
|
|
97
|
+
libraryName: "@kosdev-code/kos-ddk-components",
|
|
98
|
+
sharedConfig: {
|
|
99
|
+
singleton: !0,
|
|
100
|
+
eager: !1,
|
|
101
|
+
strictVersion: !1,
|
|
102
|
+
requiredVersion: `~${s}`
|
|
103
|
+
}
|
|
104
|
+
},
|
|
105
|
+
{
|
|
106
|
+
libraryName: "@kosdev-code/kos-ddk-model-components",
|
|
107
|
+
sharedConfig: {
|
|
108
|
+
singleton: !0,
|
|
109
|
+
eager: !1,
|
|
110
|
+
strictVersion: !1,
|
|
111
|
+
requiredVersion: `~${s}`
|
|
112
|
+
}
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
libraryName: "@kosdev-code/kos-ddk-models",
|
|
116
|
+
sharedConfig: {
|
|
117
|
+
singleton: !0,
|
|
118
|
+
eager: !1,
|
|
119
|
+
strictVersion: !1,
|
|
120
|
+
requiredVersion: `~${s}`
|
|
121
|
+
}
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
libraryName: "@kosdev-code/kos-ddk",
|
|
125
|
+
sharedConfig: {
|
|
126
|
+
singleton: !0,
|
|
127
|
+
eager: !1,
|
|
128
|
+
strictVersion: !1,
|
|
129
|
+
requiredVersion: `~${s}`
|
|
130
|
+
}
|
|
131
|
+
},
|
|
132
|
+
{
|
|
133
|
+
libraryName: "@kosdev-code/kos-ddk-styles",
|
|
134
|
+
sharedConfig: {
|
|
135
|
+
singleton: !0,
|
|
136
|
+
eager: !1,
|
|
137
|
+
strictVersion: !1,
|
|
138
|
+
requiredVersion: `~${s}`
|
|
139
|
+
}
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
libraryName: "@emotion/styled",
|
|
143
|
+
sharedConfig: {
|
|
144
|
+
singleton: !0,
|
|
145
|
+
eager: !1,
|
|
146
|
+
strictVersion: !1,
|
|
147
|
+
requiredVersion: "~11.11.0"
|
|
148
|
+
}
|
|
149
|
+
},
|
|
150
|
+
{
|
|
151
|
+
libraryName: "@emotion/react",
|
|
152
|
+
sharedConfig: {
|
|
153
|
+
singleton: !0,
|
|
154
|
+
eager: !1,
|
|
155
|
+
strictVersion: !1,
|
|
156
|
+
requiredVersion: "~11.11.0"
|
|
157
|
+
}
|
|
158
|
+
},
|
|
159
|
+
{
|
|
160
|
+
libraryName: "reflect-metadata",
|
|
161
|
+
sharedConfig: {
|
|
162
|
+
singleton: !0,
|
|
163
|
+
eager: !1,
|
|
164
|
+
strictVersion: !1,
|
|
165
|
+
requiredVersion: "^0.2.2"
|
|
166
|
+
}
|
|
167
|
+
},
|
|
168
|
+
{
|
|
169
|
+
libraryName: "mobx",
|
|
170
|
+
sharedConfig: {
|
|
171
|
+
singleton: !0,
|
|
172
|
+
eager: !1,
|
|
173
|
+
strictVersion: !1,
|
|
174
|
+
requiredVersion: "^6.9.0"
|
|
175
|
+
}
|
|
176
|
+
},
|
|
177
|
+
{
|
|
178
|
+
libraryName: "loglevel",
|
|
179
|
+
sharedConfig: {
|
|
180
|
+
singleton: !0,
|
|
181
|
+
eager: !1,
|
|
182
|
+
strictVersion: !1,
|
|
183
|
+
requiredVersion: "^1.8.1"
|
|
184
|
+
}
|
|
185
|
+
},
|
|
186
|
+
{
|
|
187
|
+
libraryName: "robot3",
|
|
188
|
+
sharedConfig: {
|
|
189
|
+
singleton: !0,
|
|
190
|
+
eager: !1,
|
|
191
|
+
strictVersion: !1,
|
|
192
|
+
requiredVersion: "^0.4.0"
|
|
193
|
+
}
|
|
194
|
+
},
|
|
195
|
+
{
|
|
196
|
+
libraryName: "mobx-react-lite",
|
|
197
|
+
sharedConfig: {
|
|
198
|
+
singleton: !0,
|
|
199
|
+
eager: !1,
|
|
200
|
+
strictVersion: !1,
|
|
201
|
+
requiredVersion: "^3.4.3"
|
|
202
|
+
}
|
|
203
|
+
},
|
|
204
|
+
{
|
|
205
|
+
libraryName: "react-router-dom",
|
|
206
|
+
sharedConfig: {
|
|
207
|
+
singleton: !0,
|
|
208
|
+
eager: !1,
|
|
209
|
+
strictVersion: !1,
|
|
210
|
+
requiredVersion: "^6.11.2"
|
|
211
|
+
}
|
|
212
|
+
},
|
|
213
|
+
{
|
|
214
|
+
libraryName: "date-fns",
|
|
215
|
+
sharedConfig: {
|
|
216
|
+
singleton: !0,
|
|
217
|
+
eager: !1,
|
|
218
|
+
strictVersion: !1,
|
|
219
|
+
requiredVersion: "^2.30.0"
|
|
220
|
+
}
|
|
221
|
+
},
|
|
222
|
+
{
|
|
223
|
+
libraryName: "@use-gesture/react",
|
|
224
|
+
sharedConfig: {
|
|
225
|
+
singleton: !0,
|
|
226
|
+
eager: !1,
|
|
227
|
+
strictVersion: !1,
|
|
228
|
+
requiredVersion: "^10.3.0"
|
|
229
|
+
}
|
|
230
|
+
},
|
|
231
|
+
{
|
|
232
|
+
libraryName: "@react-spring/web",
|
|
233
|
+
sharedConfig: {
|
|
234
|
+
singleton: !0,
|
|
235
|
+
eager: !1,
|
|
236
|
+
strictVersion: !1,
|
|
237
|
+
requiredVersion: "^9.7.3"
|
|
238
|
+
}
|
|
239
|
+
},
|
|
240
|
+
{
|
|
241
|
+
libraryName: "react-simple-keyboard",
|
|
242
|
+
sharedConfig: {
|
|
243
|
+
singleton: !0,
|
|
244
|
+
eager: !1,
|
|
245
|
+
strictVersion: !1,
|
|
246
|
+
requiredVersion: "^3.6.13"
|
|
247
|
+
}
|
|
248
|
+
},
|
|
249
|
+
{
|
|
250
|
+
libraryName: "expr-eval",
|
|
251
|
+
sharedConfig: {
|
|
252
|
+
singleton: !0,
|
|
253
|
+
eager: !1,
|
|
254
|
+
strictVersion: !1,
|
|
255
|
+
requiredVersion: "^2.0.2"
|
|
256
|
+
}
|
|
257
|
+
},
|
|
258
|
+
{
|
|
259
|
+
libraryName: "zod",
|
|
260
|
+
sharedConfig: {
|
|
261
|
+
singleton: !0,
|
|
262
|
+
eager: !0,
|
|
263
|
+
strictVersion: !1,
|
|
264
|
+
requiredVersion: "^3.25.0"
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
]
|
|
268
|
+
};
|
|
269
|
+
}
|
|
270
|
+
export {
|
|
271
|
+
v as BaseViewExtensionSchema,
|
|
272
|
+
q as DocumentationGenerator,
|
|
273
|
+
N as PluginDiscoveryService,
|
|
274
|
+
$ as RankableViewExtensionSchema,
|
|
275
|
+
x as contributionReducer,
|
|
276
|
+
P as createExtensionSchema,
|
|
277
|
+
w as createViewAwareTransform,
|
|
278
|
+
E as defineExtensionPoint,
|
|
279
|
+
k as extensionPointId,
|
|
280
|
+
y as generatePluginConfiguration,
|
|
281
|
+
S as getContributions,
|
|
282
|
+
D as getExtensionPointRegistry,
|
|
283
|
+
I as getExtensionPointSchema,
|
|
284
|
+
R as getExtensions,
|
|
285
|
+
K as getValidationResults,
|
|
286
|
+
B as initPluginManager,
|
|
287
|
+
z as initializeKosPlugins,
|
|
288
|
+
A as loadExtensions,
|
|
289
|
+
U as registry,
|
|
290
|
+
F as resolveBestExtension,
|
|
291
|
+
G as validateDescriptorFormat,
|
|
292
|
+
M as validateRank,
|
|
293
|
+
T as validateRankIfPresent,
|
|
294
|
+
W as validateWithSchema
|
|
295
|
+
};
|
|
296
|
+
//# sourceMappingURL=utils.js.map
|
package/utils.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sources":["../../../../packages/sdk/kos-ui-plugin/src/lib/utils/extension-points/extension-point-types.ts","../../../../packages/sdk/kos-ui-plugin/src/lib/utils/processors/process-kos-config.ts"],"sourcesContent":["/**\n * Core types and interfaces for extension point system\n */\n\n// React import removed - component creation happens at runtime via hooks\nimport type { z } from \"zod\";\nimport type {\n BasePluginExtension,\n PluginExtensionsType,\n ProcessedContributions,\n} from \"../../../types/plugins\";\n\n/**\n * Validation context for collecting validation issues\n */\nexport interface ValidationContext {\n addError(message: string): void;\n addWarning(message: string): void;\n addInfo(message: string): void;\n hasErrors(): boolean;\n hasIssues(): boolean;\n getIssues(): { type: \"error\" | \"warning\" | \"info\"; message: string }[];\n}\n\n/**\n * Context provided to transform functions\n */\nexport interface TransformContext {\n remote: string;\n sectionId: string;\n experiences?: Record<string, any>;\n contributions: ProcessedContributions;\n}\n\n/**\n * Schema field information for documentation\n */\nexport interface SchemaFieldInfo {\n name: string;\n description?: string;\n type?: string;\n required?: boolean;\n}\n\n/**\n * Configuration for defining a new extension point\n */\nexport interface ExtensionPointConfig<\n TData = any,\n TProcessed = TData,\n _TProps = any\n> {\n /**\n * Unique identifier for this extension point\n * Convention: \"ddk.{feature}\" or \"ddk.{feature}.{sub-feature}\"\n */\n id: string;\n\n /**\n * Optional display name for documentation/discovery\n */\n displayName?: string;\n\n /**\n * Optional description for documentation/discovery\n */\n description?: string;\n\n /**\n * The contribution key in the plugin descriptor\n * e.g., \"myFeature\" maps to contributes.myFeature in kosdev-plugin.json\n */\n contributionKey: string;\n\n /**\n * Optional related extension points\n * For example, a main extension might have .view and .definition variants\n */\n relatedPoints?: {\n view?: string;\n definition?: string;\n [key: string]: string | undefined;\n };\n\n /**\n * Transform function to process raw contribution data\n * Allows custom processing logic while maintaining type safety\n */\n transform?: (data: TData, context: TransformContext) => TProcessed;\n\n /**\n * Optional validation function\n * Use context.addError/addWarning/addInfo to collect validation issues\n * Return \"skip\" to skip processing this contribution\n */\n validate?: (data: TData, context: ValidationContext) => \"skip\" | void;\n\n /**\n * Whether this extension point uses view/experience pattern\n * Default: false\n */\n hasView?: boolean;\n\n /**\n * Whether contributions should be ranked\n * Default: false\n */\n isRankable?: boolean;\n\n /**\n * Optional Zod schema for runtime validation and documentation\n * Provides both type safety and field introspection for Plugin Explorer\n */\n schema?: z.ZodSchema<TData>;\n\n /**\n * Metadata for discovery/documentation\n */\n metadata?: {\n category?: string;\n tags?: string[];\n since?: string;\n deprecated?: boolean;\n replacedBy?: string;\n owner?: string;\n /**\n * The actual export name of this extension point in the code\n * Used for documentation generation to show correct import statements\n */\n exportName?: string;\n };\n}\n\n/**\n * Props for extension point components\n */\nexport interface ExtensionComponentProps {\n /** Specific module to load (optional) */\n module?: string;\n /** Fallback component when extension not found */\n fallback?: React.ReactNode;\n}\n\n/**\n * Result of defining an extension point\n */\nexport interface ExtensionPointDefinition<\n TData = any,\n TProcessed = TData,\n TProps = any\n> {\n /**\n * The extension point configuration\n */\n config: ExtensionPointConfig<TData, TProcessed, TProps>;\n\n /**\n * Extension point ID for use in components\n */\n id: string;\n\n /**\n * Helper to get typed extensions (for future use with hooks)\n */\n getExtensions?: (\n extensions: PluginExtensionsType\n ) => Record<string, BasePluginExtension & { data: TProcessed }>;\n\n /**\n * Registration status\n */\n isRegistered: boolean;\n\n /**\n * Method to register this extension point\n */\n register: () => void;\n\n // Component property removed - use useExtensionComponent hook or createExtensionComponent factory at runtime\n\n /**\n * Get schema field information for documentation purposes\n * Returns field info that can be safely displayed by Plugin Explorer\n */\n getSchemaFieldInfo?: () => SchemaFieldInfo[];\n}\n\n/**\n * Extension point with hasView: true, guarantees Component property\n */\nexport interface ViewExtensionPointDefinition<\n TData = any,\n TProcessed = TData,\n TProps = any\n> extends ExtensionPointDefinition<TData, TProcessed, TProps> {\n Component: React.ComponentType<ExtensionComponentProps & TProps>;\n}\n\n/**\n * Type-safe extension point ID helper\n * Ensures consistent naming and helps with refactoring\n */\nexport function extensionPointId(\n namespace: string,\n feature: string,\n ...subFeatures: string[]\n): string {\n const parts = [namespace, feature, ...subFeatures].filter(Boolean);\n return parts.join(\".\");\n}\n","/* eslint-disable max-lines-per-function */\nimport type { Contributions } from \"../../../types/global\";\n\ninterface KosConfigView {\n id: string;\n title: string;\n component: string;\n location: string;\n}\n\ninterface KosPluginConfig {\n id: string;\n init?: boolean;\n contributes: Contributions;\n}\n\ninterface DDKConfig {\n name: string;\n kosdev: {\n ddk: {\n ncui: {\n plugin: KosPluginConfig;\n };\n };\n };\n}\n\ninterface CoreKosConfig {\n name: string;\n kos: {\n ui: {\n plugin: KosPluginConfig;\n };\n };\n}\n\nexport type KosConfig = DDKConfig | CoreKosConfig;\n\nfunction normalizeVersion(version: string): string {\n const match = version.match(/^(\\d+)\\.(\\d+)\\.\\d+(?:-\\S+)?$/);\n if (!match) {\n throw new Error(`Invalid version format: ${version}`);\n }\n const [_, major, minor] = match;\n return `${major}.${minor}.0`;\n}\n\nexport interface PluginOptions {\n sdkVersion?: string;\n ddkVersion?: string;\n pluginPath?: string;\n}\nexport function generatePluginConfiguration(\n config: KosConfig,\n options?: PluginOptions\n): any {\n if (options?.sdkVersion) {\n console.log(\"sdkVersion\", options.sdkVersion);\n }\n if (options?.ddkVersion) {\n console.log(\"ddkVersion\", options.ddkVersion);\n }\n const sdkVersion = normalizeVersion(options?.sdkVersion || \"0.2.0\");\n const ddkVersion = normalizeVersion(options?.ddkVersion || \"0.2.0\");\n\n console.log(`Using DDK version: ${ddkVersion}`);\n console.log(`Using SDK version: ${sdkVersion}`);\n const projectId = config?.name;\n if (!projectId) {\n throw new Error(\n \"KOS Configuration should be added. Project name not found in config\"\n );\n }\n const pluginPath = options?.pluginPath || \"kos.ui.plugin\";\n const pluginObj = pluginPath\n .split(\".\")\n .reduce<KosPluginConfig>((obj, key) => {\n console.log(`Accessing key: ${key}`);\n return obj && obj[key] ? obj[key] : undefined;\n }, config as unknown as KosPluginConfig);\n\n const pluginId = pluginObj?.id;\n if (!pluginId) {\n throw new Error(\n \"KOS Configuration should be added. Plugin ID not found in config\"\n );\n }\n const mfConfig = Object.keys(pluginObj?.contributes?.views || {}).reduce(\n (acc, key) => {\n const views = pluginObj.contributes.views[key];\n\n views.forEach((view) => {\n acc[`./${view.component}`] = view.location;\n });\n return acc;\n },\n {}\n );\n\n Object.values(pluginObj?.contributes?.experiences || {}).forEach(\n (experience) => {\n mfConfig[`./${experience.component}`] = experience.location;\n }\n );\n\n if (pluginObj?.init) {\n mfConfig[\"./InitPlugin\"] = \"./src/app/init.ts\";\n }\n\n return {\n name: projectId,\n exposes: mfConfig,\n library: { type: \"var\", name: pluginId },\n additionalShared: [\n {\n libraryName: \"@kosdev-code/kos-ui-plugin\",\n sharedConfig: {\n singleton: true,\n eager: false,\n requiredVersion: `~${ddkVersion}`,\n },\n },\n {\n libraryName: \"react\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: true,\n requiredVersion: \"18.2.0\",\n },\n },\n\n {\n libraryName: \"react-dom\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: true,\n requiredVersion: \"18.2.0\",\n },\n },\n {\n libraryName: \"@kosdev-code/kos-ui-sdk\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: `~${sdkVersion}`,\n },\n },\n {\n libraryName: \"@kosdev-code/kos-dispense-sdk\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: `~${sdkVersion}`,\n },\n },\n\n {\n libraryName: \"@kosdev-code/kos-freestyle-sdk\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: `~${sdkVersion}`,\n },\n },\n {\n libraryName: \"@kosdev-code/kos-ddk-components\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: `~${ddkVersion}`,\n },\n },\n {\n libraryName: \"@kosdev-code/kos-ddk-model-components\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: `~${ddkVersion}`,\n },\n },\n {\n libraryName: \"@kosdev-code/kos-ddk-models\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: `~${ddkVersion}`,\n },\n },\n {\n libraryName: \"@kosdev-code/kos-ddk\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: `~${ddkVersion}`,\n },\n },\n {\n libraryName: \"@kosdev-code/kos-ddk-styles\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: `~${ddkVersion}`,\n },\n },\n {\n libraryName: \"@emotion/styled\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: \"~11.11.0\",\n },\n },\n {\n libraryName: \"@emotion/react\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: \"~11.11.0\",\n },\n },\n {\n libraryName: \"reflect-metadata\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: \"^0.2.2\",\n },\n },\n {\n libraryName: \"mobx\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: \"^6.9.0\",\n },\n },\n\n {\n libraryName: \"loglevel\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: \"^1.8.1\",\n },\n },\n {\n libraryName: \"robot3\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: \"^0.4.0\",\n },\n },\n {\n libraryName: \"mobx-react-lite\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: \"^3.4.3\",\n },\n },\n {\n libraryName: \"react-router-dom\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: \"^6.11.2\",\n },\n },\n {\n libraryName: \"date-fns\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: \"^2.30.0\",\n },\n },\n {\n libraryName: \"@use-gesture/react\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: \"^10.3.0\",\n },\n },\n {\n libraryName: \"@react-spring/web\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: \"^9.7.3\",\n },\n },\n {\n libraryName: \"react-simple-keyboard\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: \"^3.6.13\",\n },\n },\n {\n libraryName: \"expr-eval\",\n sharedConfig: {\n singleton: true,\n eager: false,\n strictVersion: false,\n requiredVersion: \"^2.0.2\",\n },\n },\n {\n libraryName: \"zod\",\n sharedConfig: {\n singleton: true,\n eager: true,\n strictVersion: false,\n requiredVersion: \"^3.25.0\",\n },\n },\n ],\n };\n}\n"],"names":["extensionPointId","namespace","feature","subFeatures","normalizeVersion","version","match","_","major","minor","generatePluginConfiguration","config","options","sdkVersion","ddkVersion","projectId","pluginObj","obj","key","pluginId","mfConfig","_a","acc","view","_b","experience"],"mappings":"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"}
|
package/webpack.cjs
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});var he=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function me(e){if(e.__esModule)return e;var r=e.default;if(typeof r=="function"){var t=function o(){return this instanceof o?Reflect.construct(r,arguments,this.constructor):r.apply(this,arguments)};t.prototype=r.prototype}else t={};return Object.defineProperty(t,"__esModule",{value:!0}),Object.keys(e).forEach(function(o){var u=Object.getOwnPropertyDescriptor(e,o);Object.defineProperty(t,o,u.get?u:{enumerable:!0,get:function(){return e[o]}})}),t}var A={exports:{}};const be={},Ee=Object.freeze(Object.defineProperty({__proto__:null,default:be},Symbol.toStringTag,{value:"Module"})),Z=me(Ee);var V={exports:{}},ne={},we=function(r){return r&&typeof r=="object"&&typeof r.copy=="function"&&typeof r.fill=="function"&&typeof r.readUInt8=="function"},G={exports:{}};typeof Object.create=="function"?G.exports=function(r,t){r.super_=t,r.prototype=Object.create(t.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}})}:G.exports=function(r,t){r.super_=t;var o=function(){};o.prototype=t.prototype,r.prototype=new o,r.prototype.constructor=r};var _e=G.exports;(function(e){var r=/%[sdj%]/g;e.format=function(n){if(!z(n)){for(var i=[],s=0;s<arguments.length;s++)i.push(u(arguments[s]));return i.join(" ")}for(var s=1,p=arguments,_=p.length,g=String(n).replace(r,function(d){if(d==="%%")return"%";if(s>=_)return d;switch(d){case"%s":return String(p[s++]);case"%d":return Number(p[s++]);case"%j":try{return JSON.stringify(p[s++])}catch{return"[Circular]"}default:return d}}),c=p[s];s<_;c=p[++s])I(c)||!T(c)?g+=" "+c:g+=" "+u(c);return g},e.deprecate=function(n,i){if(D(he.process))return function(){return e.deprecate(n,i).apply(this,arguments)};if(process.noDeprecation===!0)return n;var s=!1;function p(){if(!s){if(process.throwDeprecation)throw new Error(i);process.traceDeprecation?console.trace(i):console.error(i),s=!0}return n.apply(this,arguments)}return p};var t={},o;e.debuglog=function(n){if(D(o)&&(o=process.env.NODE_DEBUG||""),n=n.toUpperCase(),!t[n])if(new RegExp("\\b"+n+"\\b","i").test(o)){var i=process.pid;t[n]=function(){var s=e.format.apply(e,arguments);console.error("%s %d: %s",n,i,s)}}else t[n]=function(){};return t[n]};function u(n,i){var s={seen:[],stylize:l};return arguments.length>=3&&(s.depth=arguments[2]),arguments.length>=4&&(s.colors=arguments[3]),M(i)?s.showHidden=i:i&&e._extend(s,i),D(s.showHidden)&&(s.showHidden=!1),D(s.depth)&&(s.depth=2),D(s.colors)&&(s.colors=!1),D(s.customInspect)&&(s.customInspect=!0),s.colors&&(s.stylize=a),v(s,n,s.depth)}e.inspect=u,u.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},u.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function a(n,i){var s=u.styles[i];return s?"\x1B["+u.colors[s][0]+"m"+n+"\x1B["+u.colors[s][1]+"m":n}function l(n,i){return n}function f(n){var i={};return n.forEach(function(s,p){i[s]=!0}),i}function v(n,i,s){if(n.customInspect&&i&&L(i.inspect)&&i.inspect!==e.inspect&&!(i.constructor&&i.constructor.prototype===i)){var p=i.inspect(s,n);return z(p)||(p=v(n,p,s)),p}var _=h(n,i);if(_)return _;var g=Object.keys(i),c=f(g);if(n.showHidden&&(g=Object.getOwnPropertyNames(i)),R(i)&&(g.indexOf("message")>=0||g.indexOf("description")>=0))return y(i);if(g.length===0){if(L(i)){var d=i.name?": "+i.name:"";return n.stylize("[Function"+d+"]","special")}if(k(i))return n.stylize(RegExp.prototype.toString.call(i),"regexp");if(F(i))return n.stylize(Date.prototype.toString.call(i),"date");if(R(i))return y(i)}var w="",S=!1,U=["{","}"];if(x(i)&&(S=!0,U=["[","]"]),L(i)){var ve=i.name?": "+i.name:"";w=" [Function"+ve+"]"}if(k(i)&&(w=" "+RegExp.prototype.toString.call(i)),F(i)&&(w=" "+Date.prototype.toUTCString.call(i)),R(i)&&(w=" "+y(i)),g.length===0&&(!S||i.length==0))return U[0]+w+U[1];if(s<0)return k(i)?n.stylize(RegExp.prototype.toString.call(i),"regexp"):n.stylize("[Object]","special");n.seen.push(i);var W;return S?W=$(n,i,s,c,g):W=g.map(function(ye){return N(n,i,s,c,ye,S)}),n.seen.pop(),le(W,w,U)}function h(n,i){if(D(i))return n.stylize("undefined","undefined");if(z(i)){var s="'"+JSON.stringify(i).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return n.stylize(s,"string")}if(ee(i))return n.stylize(""+i,"number");if(M(i))return n.stylize(""+i,"boolean");if(I(i))return n.stylize("null","null")}function y(n){return"["+Error.prototype.toString.call(n)+"]"}function $(n,i,s,p,_){for(var g=[],c=0,d=i.length;c<d;++c)re(i,String(c))?g.push(N(n,i,s,p,String(c),!0)):g.push("");return _.forEach(function(w){w.match(/^\d+$/)||g.push(N(n,i,s,p,w,!0))}),g}function N(n,i,s,p,_,g){var c,d,w;if(w=Object.getOwnPropertyDescriptor(i,_)||{value:i[_]},w.get?w.set?d=n.stylize("[Getter/Setter]","special"):d=n.stylize("[Getter]","special"):w.set&&(d=n.stylize("[Setter]","special")),re(p,_)||(c="["+_+"]"),d||(n.seen.indexOf(w.value)<0?(I(s)?d=v(n,w.value,null):d=v(n,w.value,s-1),d.indexOf(`
|
|
2
|
+
`)>-1&&(g?d=d.split(`
|
|
3
|
+
`).map(function(S){return" "+S}).join(`
|
|
4
|
+
`).substr(2):d=`
|
|
5
|
+
`+d.split(`
|
|
6
|
+
`).map(function(S){return" "+S}).join(`
|
|
7
|
+
`))):d=n.stylize("[Circular]","special")),D(c)){if(g&&_.match(/^\d+$/))return d;c=JSON.stringify(""+_),c.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(c=c.substr(1,c.length-2),c=n.stylize(c,"name")):(c=c.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),c=n.stylize(c,"string"))}return c+": "+d}function le(n,i,s){var p=n.reduce(function(_,g){return g.indexOf(`
|
|
8
|
+
`)>=0,_+g.replace(/\u001b\[\d\d?m/g,"").length+1},0);return p>60?s[0]+(i===""?"":i+`
|
|
9
|
+
`)+" "+n.join(`,
|
|
10
|
+
`)+" "+s[1]:s[0]+i+" "+n.join(", ")+" "+s[1]}function x(n){return Array.isArray(n)}e.isArray=x;function M(n){return typeof n=="boolean"}e.isBoolean=M;function I(n){return n===null}e.isNull=I;function fe(n){return n==null}e.isNullOrUndefined=fe;function ee(n){return typeof n=="number"}e.isNumber=ee;function z(n){return typeof n=="string"}e.isString=z;function ce(n){return typeof n=="symbol"}e.isSymbol=ce;function D(n){return n===void 0}e.isUndefined=D;function k(n){return T(n)&&J(n)==="[object RegExp]"}e.isRegExp=k;function T(n){return typeof n=="object"&&n!==null}e.isObject=T;function F(n){return T(n)&&J(n)==="[object Date]"}e.isDate=F;function R(n){return T(n)&&(J(n)==="[object Error]"||n instanceof Error)}e.isError=R;function L(n){return typeof n=="function"}e.isFunction=L;function pe(n){return n===null||typeof n=="boolean"||typeof n=="number"||typeof n=="string"||typeof n=="symbol"||typeof n>"u"}e.isPrimitive=pe,e.isBuffer=we;function J(n){return Object.prototype.toString.call(n)}function q(n){return n<10?"0"+n.toString(10):n.toString(10)}var ge=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function de(){var n=new Date,i=[q(n.getHours()),q(n.getMinutes()),q(n.getSeconds())].join(":");return[n.getDate(),ge[n.getMonth()],i].join(" ")}e.log=function(){console.log("%s - %s",de(),e.format.apply(e,arguments))},e.inherits=_e,e._extend=function(n,i){if(!i||!T(i))return n;for(var s=Object.keys(i),p=s.length;p--;)n[s[p]]=i[s[p]];return n};function re(n,i){return Object.prototype.hasOwnProperty.call(n,i)}})(ne);var Oe=process.platform==="win32",O=ne;function C(e,r){for(var t=[],o=0;o<e.length;o++){var u=e[o];!u||u==="."||(u===".."?t.length&&t[t.length-1]!==".."?t.pop():r&&t.push(".."):t.push(u))}return t}function j(e){for(var r=e.length-1,t=0;t<=r&&!e[t];t++);for(var o=r;o>=0&&!e[o];o--);return t===0&&o===r?e:t>o?[]:e.slice(t,o+1)}var oe=/^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?([\\\/])?([\s\S]*?)$/,De=/^([\s\S]*?)((?:\.{1,2}|[^\\\/]+?|)(\.[^.\/\\]*|))(?:[\\\/]*)$/,m={};function Y(e){var r=oe.exec(e),t=(r[1]||"")+(r[2]||""),o=r[3]||"",u=De.exec(o),a=u[1],l=u[2],f=u[3];return[t,a,l,f]}function Q(e){var r=oe.exec(e),t=r[1]||"",o=!!t&&t[1]!==":";return{device:t,isUnc:o,isAbsolute:o||!!r[2],tail:r[3]}}function ie(e){return"\\\\"+e.replace(/^[\\\/]+/,"").replace(/[\\\/]+/g,"\\")}m.resolve=function(){for(var e="",r="",t=!1,o=arguments.length-1;o>=-1;o--){var u;if(o>=0?u=arguments[o]:e?(u=process.env["="+e],(!u||u.substr(0,3).toLowerCase()!==e.toLowerCase()+"\\")&&(u=e+"\\")):u=process.cwd(),O.isString(u)){if(!u)continue}else throw new TypeError("Arguments to path.resolve must be strings");var a=Q(u),l=a.device,f=a.isUnc,v=a.isAbsolute,h=a.tail;if(!(l&&e&&l.toLowerCase()!==e.toLowerCase())&&(e||(e=l),t||(r=h+"\\"+r,t=v),e&&t))break}return f&&(e=ie(e)),r=C(r.split(/[\\\/]+/),!t).join("\\"),e+(t?"\\":"")+r||"."};m.normalize=function(e){var r=Q(e),t=r.device,o=r.isUnc,u=r.isAbsolute,a=r.tail,l=/[\\\/]$/.test(a);return a=C(a.split(/[\\\/]+/),!u).join("\\"),!a&&!u&&(a="."),a&&l&&(a+="\\"),o&&(t=ie(t)),t+(u?"\\":"")+a};m.isAbsolute=function(e){return Q(e).isAbsolute};m.join=function(){for(var e=[],r=0;r<arguments.length;r++){var t=arguments[r];if(!O.isString(t))throw new TypeError("Arguments to path.join must be strings");t&&e.push(t)}var o=e.join("\\");return/^[\\\/]{2}[^\\\/]/.test(e[0])||(o=o.replace(/^[\\\/]{2,}/,"\\")),m.normalize(o)};m.relative=function(e,r){e=m.resolve(e),r=m.resolve(r);for(var t=e.toLowerCase(),o=r.toLowerCase(),u=j(r.split("\\")),a=j(t.split("\\")),l=j(o.split("\\")),f=Math.min(a.length,l.length),v=f,h=0;h<f;h++)if(a[h]!==l[h]){v=h;break}if(v==0)return r;for(var y=[],h=v;h<a.length;h++)y.push("..");return y=y.concat(u.slice(v)),y.join("\\")};m._makeLong=function(e){if(!O.isString(e))return e;if(!e)return"";var r=m.resolve(e);return/^[a-zA-Z]\:\\/.test(r)?"\\\\?\\"+r:/^\\\\[^?.]/.test(r)?"\\\\?\\UNC\\"+r.substring(2):e};m.dirname=function(e){var r=Y(e),t=r[0],o=r[1];return!t&&!o?".":(o&&(o=o.substr(0,o.length-1)),t+o)};m.basename=function(e,r){var t=Y(e)[2];return r&&t.substr(-1*r.length)===r&&(t=t.substr(0,t.length-r.length)),t};m.extname=function(e){return Y(e)[3]};m.format=function(e){if(!O.isObject(e))throw new TypeError("Parameter 'pathObject' must be an object, not "+typeof e);var r=e.root||"";if(!O.isString(r))throw new TypeError("'pathObject.root' must be a string or undefined, not "+typeof e.root);var t=e.dir,o=e.base||"";return t?t[t.length-1]===m.sep?t+o:t+m.sep+o:o};m.parse=function(e){if(!O.isString(e))throw new TypeError("Parameter 'pathString' must be a string, not "+typeof e);var r=Y(e);if(!r||r.length!==4)throw new TypeError("Invalid path '"+e+"'");return{root:r[0],dir:r[0]+r[1].slice(0,-1),base:r[2],ext:r[3],name:r[2].slice(0,r[2].length-r[3].length)}};m.sep="\\";m.delimiter=";";var Ne=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/,b={};function B(e){return Ne.exec(e).slice(1)}b.resolve=function(){for(var e="",r=!1,t=arguments.length-1;t>=-1&&!r;t--){var o=t>=0?arguments[t]:process.cwd();if(O.isString(o)){if(!o)continue}else throw new TypeError("Arguments to path.resolve must be strings");e=o+"/"+e,r=o[0]==="/"}return e=C(e.split("/"),!r).join("/"),(r?"/":"")+e||"."};b.normalize=function(e){var r=b.isAbsolute(e),t=e&&e[e.length-1]==="/";return e=C(e.split("/"),!r).join("/"),!e&&!r&&(e="."),e&&t&&(e+="/"),(r?"/":"")+e};b.isAbsolute=function(e){return e.charAt(0)==="/"};b.join=function(){for(var e="",r=0;r<arguments.length;r++){var t=arguments[r];if(!O.isString(t))throw new TypeError("Arguments to path.join must be strings");t&&(e?e+="/"+t:e+=t)}return b.normalize(e)};b.relative=function(e,r){e=b.resolve(e).substr(1),r=b.resolve(r).substr(1);for(var t=j(e.split("/")),o=j(r.split("/")),u=Math.min(t.length,o.length),a=u,l=0;l<u;l++)if(t[l]!==o[l]){a=l;break}for(var f=[],l=a;l<t.length;l++)f.push("..");return f=f.concat(o.slice(a)),f.join("/")};b._makeLong=function(e){return e};b.dirname=function(e){var r=B(e),t=r[0],o=r[1];return!t&&!o?".":(o&&(o=o.substr(0,o.length-1)),t+o)};b.basename=function(e,r){var t=B(e)[2];return r&&t.substr(-1*r.length)===r&&(t=t.substr(0,t.length-r.length)),t};b.extname=function(e){return B(e)[3]};b.format=function(e){if(!O.isObject(e))throw new TypeError("Parameter 'pathObject' must be an object, not "+typeof e);var r=e.root||"";if(!O.isString(r))throw new TypeError("'pathObject.root' must be a string or undefined, not "+typeof e.root);var t=e.dir?e.dir+b.sep:"",o=e.base||"";return t+o};b.parse=function(e){if(!O.isString(e))throw new TypeError("Parameter 'pathString' must be a string, not "+typeof e);var r=B(e);if(!r||r.length!==4)throw new TypeError("Invalid path '"+e+"'");return r[1]=r[1]||"",r[2]=r[2]||"",r[3]=r[3]||"",{root:r[0],dir:r[0]+r[1].slice(0,-1),base:r[2],ext:r[3],name:r[2].slice(0,r[2].length-r[3].length)}};b.sep="/";b.delimiter=":";Oe?V.exports=m:V.exports=b;V.exports.posix=b;V.exports.win32=m;var Se=V.exports;const Ae="16.6.1",Te={version:Ae},H=Z,K=Se,je=Z,Pe=Z,Ve=Te,X=Ve.version,$e=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function Ie(e){const r={};let t=e.toString();t=t.replace(/\r\n?/mg,`
|
|
11
|
+
`);let o;for(;(o=$e.exec(t))!=null;){const u=o[1];let a=o[2]||"";a=a.trim();const l=a[0];a=a.replace(/^(['"`])([\s\S]*)\1$/mg,"$2"),l==='"'&&(a=a.replace(/\\n/g,`
|
|
12
|
+
`),a=a.replace(/\\r/g,"\r")),r[u]=a}return r}function ze(e){e=e||{};const r=ue(e);e.path=r;const t=E.configDotenv(e);if(!t.parsed){const l=new Error(`MISSING_DATA: Cannot parse ${r} for an unknown reason`);throw l.code="MISSING_DATA",l}const o=ae(e).split(","),u=o.length;let a;for(let l=0;l<u;l++)try{const f=o[l].trim(),v=Re(t,f);a=E.decrypt(v.ciphertext,v.key);break}catch(f){if(l+1>=u)throw f}return E.parse(a)}function ke(e){console.log(`[dotenv@${X}][WARN] ${e}`)}function P(e){console.log(`[dotenv@${X}][DEBUG] ${e}`)}function se(e){console.log(`[dotenv@${X}] ${e}`)}function ae(e){return e&&e.DOTENV_KEY&&e.DOTENV_KEY.length>0?e.DOTENV_KEY:process.env.DOTENV_KEY&&process.env.DOTENV_KEY.length>0?process.env.DOTENV_KEY:""}function Re(e,r){let t;try{t=new URL(r)}catch(f){if(f.code==="ERR_INVALID_URL"){const v=new Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development");throw v.code="INVALID_DOTENV_KEY",v}throw f}const o=t.password;if(!o){const f=new Error("INVALID_DOTENV_KEY: Missing key part");throw f.code="INVALID_DOTENV_KEY",f}const u=t.searchParams.get("environment");if(!u){const f=new Error("INVALID_DOTENV_KEY: Missing environment part");throw f.code="INVALID_DOTENV_KEY",f}const a=`DOTENV_VAULT_${u.toUpperCase()}`,l=e.parsed[a];if(!l){const f=new Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${a} in your .env.vault file.`);throw f.code="NOT_FOUND_DOTENV_ENVIRONMENT",f}return{ciphertext:l,key:o}}function ue(e){let r=null;if(e&&e.path&&e.path.length>0)if(Array.isArray(e.path))for(const t of e.path)H.existsSync(t)&&(r=t.endsWith(".vault")?t:`${t}.vault`);else r=e.path.endsWith(".vault")?e.path:`${e.path}.vault`;else r=K.resolve(process.cwd(),".env.vault");return H.existsSync(r)?r:null}function te(e){return e[0]==="~"?K.join(je.homedir(),e.slice(1)):e}function Le(e){const r=!!(e&&e.debug),t=e&&"quiet"in e?e.quiet:!0;(r||!t)&&se("Loading env from encrypted .env.vault");const o=E._parseVault(e);let u=process.env;return e&&e.processEnv!=null&&(u=e.processEnv),E.populate(u,o,e),{parsed:o}}function Ue(e){const r=K.resolve(process.cwd(),".env");let t="utf8";const o=!!(e&&e.debug),u=e&&"quiet"in e?e.quiet:!0;e&&e.encoding?t=e.encoding:o&&P("No encoding is specified. UTF-8 is used by default");let a=[r];if(e&&e.path)if(!Array.isArray(e.path))a=[te(e.path)];else{a=[];for(const h of e.path)a.push(te(h))}let l;const f={};for(const h of a)try{const y=E.parse(H.readFileSync(h,{encoding:t}));E.populate(f,y,e)}catch(y){o&&P(`Failed to load ${h} ${y.message}`),l=y}let v=process.env;if(e&&e.processEnv!=null&&(v=e.processEnv),E.populate(v,f,e),o||!u){const h=Object.keys(f).length,y=[];for(const $ of a)try{const N=K.relative(process.cwd(),$);y.push(N)}catch(N){o&&P(`Failed to load ${$} ${N.message}`),l=N}se(`injecting env (${h}) from ${y.join(",")}`)}return l?{parsed:f,error:l}:{parsed:f}}function Ke(e){if(ae(e).length===0)return E.configDotenv(e);const r=ue(e);return r?E._configVault(e):(ke(`You set DOTENV_KEY but you are missing a .env.vault file at ${r}. Did you forget to build it?`),E.configDotenv(e))}function Ce(e,r){const t=Buffer.from(r.slice(-64),"hex");let o=Buffer.from(e,"base64");const u=o.subarray(0,12),a=o.subarray(-16);o=o.subarray(12,-16);try{const l=Pe.createDecipheriv("aes-256-gcm",t,u);return l.setAuthTag(a),`${l.update(o)}${l.final()}`}catch(l){const f=l instanceof RangeError,v=l.message==="Invalid key length",h=l.message==="Unsupported state or unable to authenticate data";if(f||v){const y=new Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)");throw y.code="INVALID_DOTENV_KEY",y}else if(h){const y=new Error("DECRYPTION_FAILED: Please check your DOTENV_KEY");throw y.code="DECRYPTION_FAILED",y}else throw l}}function Ye(e,r,t={}){const o=!!(t&&t.debug),u=!!(t&&t.override);if(typeof r!="object"){const a=new Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate");throw a.code="OBJECT_REQUIRED",a}for(const a of Object.keys(r))Object.prototype.hasOwnProperty.call(e,a)?(u===!0&&(e[a]=r[a]),o&&P(u===!0?`"${a}" is already defined and WAS overwritten`:`"${a}" is already defined and was NOT overwritten`)):e[a]=r[a]}const E={configDotenv:Ue,_configVault:Le,_parseVault:ze,config:Ke,decrypt:Ce,parse:Ie,populate:Ye};A.exports.configDotenv=E.configDotenv;A.exports._configVault=E._configVault;A.exports._parseVault=E._parseVault;var Be=A.exports.config=E.config;A.exports.decrypt=E.decrypt;A.exports.parse=E.parse;A.exports.populate=E.populate;A.exports=E;function Me(){return Object.keys(process.env).filter(r=>r.startsWith("KOS_"))}Be({path:".env"});const Fe=e=>r=>{var t;return r&&(r.resolve=r.resolve||{},r.resolve.fallback={...r.resolve.fallback,path:!1}),r.mode=process.env.NODE_ENV||r.mode,(t=r==null?void 0:r.plugins)==null||t.push(new e.EnvironmentPlugin(["NODE_ENV",...Me()])),r};exports.withKosConfig=Fe;
|
|
13
|
+
//# sourceMappingURL=webpack.cjs.map
|