bun_plugins 1.2.4 → 1.2.6

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.
Files changed (155) hide show
  1. package/README.md +2 -2
  2. package/dist/{src/PluginManager.d.ts → PluginManager.d.ts} +9 -16
  3. package/dist/PluginManager.d.ts.map +1 -0
  4. package/dist/{src/PluginManager.js → PluginManager.js} +188 -187
  5. package/dist/PluginManager.js.map +1 -0
  6. package/dist/{src/index.d.ts → index.d.ts} +1 -2
  7. package/dist/index.d.ts.map +1 -0
  8. package/dist/{src/index.js → index.js} +0 -2
  9. package/dist/index.js.map +1 -0
  10. package/dist/{src/managers → managers}/ContextFactory.d.ts +1 -1
  11. package/dist/managers/ContextFactory.d.ts.map +1 -0
  12. package/dist/{src/managers → managers}/ContextFactory.js +29 -52
  13. package/dist/managers/ContextFactory.js.map +1 -0
  14. package/dist/managers/DependencyManager.d.ts.map +1 -0
  15. package/dist/{src/managers → managers}/DependencyManager.js +5 -7
  16. package/dist/managers/DependencyManager.js.map +1 -0
  17. package/dist/{src/managers → managers}/HooksManager.d.ts +1 -4
  18. package/dist/managers/HooksManager.d.ts.map +1 -0
  19. package/dist/{src/managers → managers}/HooksManager.js +8 -36
  20. package/dist/managers/HooksManager.js.map +1 -0
  21. package/dist/managers/ResourceManager.d.ts.map +1 -0
  22. package/dist/{src/managers → managers}/ResourceManager.js +3 -3
  23. package/dist/managers/ResourceManager.js.map +1 -0
  24. package/dist/{src/storage → storage}/JsonPluginStorage.d.ts +1 -2
  25. package/dist/storage/JsonPluginStorage.d.ts.map +1 -0
  26. package/dist/storage/JsonPluginStorage.js +63 -0
  27. package/dist/storage/JsonPluginStorage.js.map +1 -0
  28. package/dist/{src/types.d.ts → types.d.ts} +19 -60
  29. package/dist/types.d.ts.map +1 -0
  30. package/dist/{src/types.js → types.js} +0 -7
  31. package/dist/types.js.map +1 -0
  32. package/dist/utils/errorParser.d.ts.map +1 -0
  33. package/dist/{src/utils → utils}/errorParser.js +5 -2
  34. package/dist/utils/errorParser.js.map +1 -0
  35. package/dist/utils/pluginValidator.d.ts +93 -0
  36. package/dist/utils/pluginValidator.d.ts.map +1 -0
  37. package/dist/{src/utils → utils}/pluginValidator.js +14 -12
  38. package/dist/utils/pluginValidator.js.map +1 -0
  39. package/dist/utils/security.d.ts.map +1 -0
  40. package/dist/utils/security.js.map +1 -0
  41. package/dist/worker/WorkerRunner.d.ts.map +1 -0
  42. package/dist/{src/worker → worker}/WorkerRunner.js +13 -33
  43. package/dist/worker/WorkerRunner.js.map +1 -0
  44. package/package.json +7 -18
  45. package/LICENSE +0 -9
  46. package/dist/plugins/ActionRegistryPlugin.d.ts +0 -23
  47. package/dist/plugins/ActionRegistryPlugin.d.ts.map +0 -1
  48. package/dist/plugins/ActionRegistryPlugin.js +0 -56
  49. package/dist/plugins/ActionRegistryPlugin.js.map +0 -1
  50. package/dist/plugins/DynamicJSActionsPlugin.d.ts +0 -21
  51. package/dist/plugins/DynamicJSActionsPlugin.d.ts.map +0 -1
  52. package/dist/plugins/DynamicJSActionsPlugin.js +0 -57
  53. package/dist/plugins/DynamicJSActionsPlugin.js.map +0 -1
  54. package/dist/plugins/DynamicMathActionsPlugin.d.ts +0 -22
  55. package/dist/plugins/DynamicMathActionsPlugin.d.ts.map +0 -1
  56. package/dist/plugins/DynamicMathActionsPlugin.js +0 -64
  57. package/dist/plugins/DynamicMathActionsPlugin.js.map +0 -1
  58. package/dist/plugins/DynamicTextActionsPlugin.d.ts +0 -22
  59. package/dist/plugins/DynamicTextActionsPlugin.d.ts.map +0 -1
  60. package/dist/plugins/DynamicTextActionsPlugin.js +0 -58
  61. package/dist/plugins/DynamicTextActionsPlugin.js.map +0 -1
  62. package/dist/plugins/DynamicUtilityActionsPlugin.d.ts +0 -22
  63. package/dist/plugins/DynamicUtilityActionsPlugin.d.ts.map +0 -1
  64. package/dist/plugins/DynamicUtilityActionsPlugin.js +0 -75
  65. package/dist/plugins/DynamicUtilityActionsPlugin.js.map +0 -1
  66. package/dist/plugins/LifecycleDemoPlugin.d.ts +0 -20
  67. package/dist/plugins/LifecycleDemoPlugin.d.ts.map +0 -1
  68. package/dist/plugins/LifecycleDemoPlugin.js +0 -34
  69. package/dist/plugins/LifecycleDemoPlugin.js.map +0 -1
  70. package/dist/plugins/MathPlugin.d.ts +0 -16
  71. package/dist/plugins/MathPlugin.d.ts.map +0 -1
  72. package/dist/plugins/MathPlugin.js +0 -25
  73. package/dist/plugins/MathPlugin.js.map +0 -1
  74. package/dist/plugins/MyJSPlugin.d.ts +0 -7
  75. package/dist/plugins/MyJSPlugin.d.ts.map +0 -1
  76. package/dist/plugins/MyJSPlugin.js +0 -12
  77. package/dist/plugins/MyJSPlugin.js.map +0 -1
  78. package/dist/plugins/arktype/index.d.ts +0 -8
  79. package/dist/plugins/arktype/index.d.ts.map +0 -1
  80. package/dist/plugins/arktype/index.js +0 -25
  81. package/dist/plugins/arktype/index.js.map +0 -1
  82. package/dist/src/Plugin.d.ts +0 -28
  83. package/dist/src/Plugin.d.ts.map +0 -1
  84. package/dist/src/Plugin.js +0 -36
  85. package/dist/src/Plugin.js.map +0 -1
  86. package/dist/src/PluginManager.d.ts.map +0 -1
  87. package/dist/src/PluginManager.js.map +0 -1
  88. package/dist/src/index.d.ts.map +0 -1
  89. package/dist/src/index.js.map +0 -1
  90. package/dist/src/logger/LoggerAdapter.d.ts +0 -77
  91. package/dist/src/logger/LoggerAdapter.d.ts.map +0 -1
  92. package/dist/src/logger/LoggerAdapter.js +0 -242
  93. package/dist/src/logger/LoggerAdapter.js.map +0 -1
  94. package/dist/src/logger/LoggerFactory.d.ts +0 -73
  95. package/dist/src/logger/LoggerFactory.d.ts.map +0 -1
  96. package/dist/src/logger/LoggerFactory.js +0 -99
  97. package/dist/src/logger/LoggerFactory.js.map +0 -1
  98. package/dist/src/logger/index.d.ts +0 -3
  99. package/dist/src/logger/index.d.ts.map +0 -1
  100. package/dist/src/logger/index.js +0 -3
  101. package/dist/src/logger/index.js.map +0 -1
  102. package/dist/src/managers/ContextFactory.d.ts.map +0 -1
  103. package/dist/src/managers/ContextFactory.js.map +0 -1
  104. package/dist/src/managers/DependencyManager.d.ts.map +0 -1
  105. package/dist/src/managers/DependencyManager.js.map +0 -1
  106. package/dist/src/managers/HooksManager.d.ts.map +0 -1
  107. package/dist/src/managers/HooksManager.js.map +0 -1
  108. package/dist/src/managers/ResourceManager.d.ts.map +0 -1
  109. package/dist/src/managers/ResourceManager.js.map +0 -1
  110. package/dist/src/storage/JsonPluginStorage.d.ts.map +0 -1
  111. package/dist/src/storage/JsonPluginStorage.js +0 -75
  112. package/dist/src/storage/JsonPluginStorage.js.map +0 -1
  113. package/dist/src/types/arktype_converter.d.ts +0 -19
  114. package/dist/src/types/arktype_converter.d.ts.map +0 -1
  115. package/dist/src/types/arktype_converter.js +0 -73
  116. package/dist/src/types/arktype_converter.js.map +0 -1
  117. package/dist/src/types/generator.d.ts +0 -9
  118. package/dist/src/types/generator.d.ts.map +0 -1
  119. package/dist/src/types/generator.js +0 -9
  120. package/dist/src/types/generator.js.map +0 -1
  121. package/dist/src/types/interfaces.d.ts +0 -55
  122. package/dist/src/types/interfaces.d.ts.map +0 -1
  123. package/dist/src/types/interfaces.js +0 -5
  124. package/dist/src/types/interfaces.js.map +0 -1
  125. package/dist/src/types/plugin-registry-base.d.ts +0 -78
  126. package/dist/src/types/plugin-registry-base.d.ts.map +0 -1
  127. package/dist/src/types/plugin-registry-base.js +0 -6
  128. package/dist/src/types/plugin-registry-base.js.map +0 -1
  129. package/dist/src/types/plugin-registry.d.ts +0 -2
  130. package/dist/src/types/plugin-registry.d.ts.map +0 -1
  131. package/dist/src/types/plugin-registry.js +0 -4
  132. package/dist/src/types/plugin-registry.js.map +0 -1
  133. package/dist/src/types/plugin_generator.d.ts +0 -62
  134. package/dist/src/types/plugin_generator.d.ts.map +0 -1
  135. package/dist/src/types/plugin_generator.js +0 -700
  136. package/dist/src/types/plugin_generator.js.map +0 -1
  137. package/dist/src/types.d.ts.map +0 -1
  138. package/dist/src/types.js.map +0 -1
  139. package/dist/src/utils/errorParser.d.ts.map +0 -1
  140. package/dist/src/utils/errorParser.js.map +0 -1
  141. package/dist/src/utils/pluginValidator.d.ts +0 -17
  142. package/dist/src/utils/pluginValidator.d.ts.map +0 -1
  143. package/dist/src/utils/pluginValidator.js.map +0 -1
  144. package/dist/src/utils/security.d.ts.map +0 -1
  145. package/dist/src/utils/security.js.map +0 -1
  146. package/dist/src/worker/WorkerRunner.d.ts.map +0 -1
  147. package/dist/src/worker/WorkerRunner.js.map +0 -1
  148. package/plugin-types/index.d.ts +0 -20
  149. package/plugin-types/plugin-registry.d.ts +0 -148
  150. /package/dist/{src/managers → managers}/DependencyManager.d.ts +0 -0
  151. /package/dist/{src/managers → managers}/ResourceManager.d.ts +0 -0
  152. /package/dist/{src/utils → utils}/errorParser.d.ts +0 -0
  153. /package/dist/{src/utils → utils}/security.d.ts +0 -0
  154. /package/dist/{src/utils → utils}/security.js +0 -0
  155. /package/dist/{src/worker → worker}/WorkerRunner.d.ts +0 -0
@@ -1,11 +1,4 @@
1
1
  import { z } from "zod";
2
- export { z };
3
- import type { PluginFactory } from "../plugin-types/plugin-registry";
4
- import type { PluginApiType } from "../plugin-types/plugin-registry";
5
- export type PluginNames = keyof PluginFactory;
6
- export type { PluginTypeInfo, ArkTypeSchemaInfo, PropertyInfo, MethodParamInfo, GeneratorOptions } from "./types/generator";
7
- export * from "./types/plugin-registry-base";
8
- export { ArkTypeConverter, PluginTypeGenerator, generatePluginTypes } from "./types/generator";
9
2
  export declare enum WorkerMessageType {
10
3
  RPC_CALL = "RPC_CALL",
11
4
  HOOK_CALL = "HOOK_CALL",
@@ -34,14 +27,11 @@ export declare enum RPCMethod {
34
27
  ManagerGetPlugin = "manager:getPlugin",
35
28
  Log = "log",
36
29
  NetworkFetch = "network:fetch",
37
- PermissionCheck = "perm:check",
38
- ConfigGet = "config:get",
39
- StorageReload = "storage:reload"
30
+ PermissionCheck = "perm:check"
40
31
  }
41
32
  export declare enum HookType {
42
33
  ON_RESOLVE = "onResolve",
43
- ON_LOAD = "onLoad",
44
- ON_START = "onStart"
34
+ ON_LOAD = "onLoad"
45
35
  }
46
36
  export declare enum HookOrder {
47
37
  PRE = "pre",
@@ -51,7 +41,7 @@ export interface PluginResource {
51
41
  workers: Worker[];
52
42
  timers: {
53
43
  id: number | Timer;
54
- type: "timeout" | "interval";
44
+ type: 'timeout' | 'interval';
55
45
  }[];
56
46
  eventListeners: {
57
47
  event: string;
@@ -65,13 +55,13 @@ export interface HookRegistry<T> {
65
55
  order?: HookOrder;
66
56
  }
67
57
  export interface AppEvents {
68
- log: {
58
+ "log": {
69
59
  level: "info" | "error" | "warn";
70
60
  message: string;
71
61
  };
72
- "plugin:updated": {
73
- name: string;
74
- version: string;
62
+ "cmd:input": {
63
+ command: string;
64
+ args: string[];
75
65
  };
76
66
  [key: string]: any;
77
67
  }
@@ -81,39 +71,11 @@ export interface IPluginStorage {
81
71
  set<T>(key: string, value: T): Promise<void>;
82
72
  delete(key: string): Promise<void>;
83
73
  clear(): Promise<void>;
84
- reload(): Promise<void>;
85
74
  }
86
75
  export interface Logger {
87
76
  info(msg: string, ...args: any[]): void;
88
77
  warn(msg: string, ...args: any[]): void;
89
78
  error(msg: string, ...args: any[]): void;
90
- debug?(msg: string, ...args: any[]): void;
91
- child?(context: string): Logger;
92
- }
93
- export interface IPluginManager {
94
- register(plugin: IPlugin): Promise<void>;
95
- registerIsolated(pluginPath: string, pluginName: string): Promise<void>;
96
- unregister(pluginName: string): Promise<void>;
97
- getPlugin(name: string): IPlugin | undefined;
98
- listPlugins(): string[];
99
- loadPluginsFromDirectory(directoryPath?: string): Promise<void>;
100
- disablePlugin(name: string): Promise<void>;
101
- enablePlugin(name: string): Promise<void>;
102
- reloadPlugin(name: string): Promise<void>;
103
- runOnResolve(args: OnResolveArgs): Promise<any>;
104
- runOnLoad(args: OnLoadArgs): Promise<any>;
105
- toBunPlugin(): any;
106
- enableHotReload(pluginDir: string): void;
107
- getWorkerFactory(): (url: string | URL, options?: BunWorkerOptions) => Worker;
108
- getMetrics(): any;
109
- getPluginStatus(): Record<string, any>;
110
- use(plugin: IPlugin): Promise<void>;
111
- plugin(plugin: IPlugin): Promise<void>;
112
- remove(pluginName: string): Promise<void>;
113
- emit<K extends keyof AppEvents>(eventName: K, payload: AppEvents[K]): boolean;
114
- on<K extends keyof AppEvents>(eventName: K & string, listener: (payload: AppEvents[K]) => void): this;
115
- once<K extends keyof AppEvents>(eventName: K & string, listener: (payload: AppEvents[K]) => void): this;
116
- off<K extends keyof AppEvents>(eventName: K & string, listener: (payload: AppEvents[K]) => void): this;
117
79
  }
118
80
  export interface PluginContext {
119
81
  emit<K extends keyof AppEvents>(event: K, payload: AppEvents[K]): void;
@@ -124,8 +86,8 @@ export interface PluginContext {
124
86
  };
125
87
  storage: IPluginStorage;
126
88
  config: Record<string, any>;
127
- manager: IPluginManager;
128
- getPlugin<TName extends PluginNames>(name: TName): Promise<PluginApiType<TName> | undefined>;
89
+ manager: any;
90
+ getPlugin(name: string): unknown | undefined;
129
91
  log: Logger;
130
92
  createWorker(url: string | URL, options?: BunWorkerOptions): BunWorker;
131
93
  network: {
@@ -154,7 +116,13 @@ export declare class AccessDeniedError extends Error {
154
116
  export declare const BasicPluginSchema: z.ZodObject<{
155
117
  name: z.ZodString;
156
118
  version: z.ZodString;
157
- }, z.core.$strip>;
119
+ }, "strip", z.ZodTypeAny, {
120
+ name: string;
121
+ version: string;
122
+ }, {
123
+ name: string;
124
+ version: string;
125
+ }>;
158
126
  export interface IPlugin {
159
127
  name: string;
160
128
  version: string;
@@ -171,8 +139,7 @@ export interface IPlugin {
171
139
  onLoad(context: PluginContext): Promise<void> | void;
172
140
  onStarted?: () => Promise<void> | void;
173
141
  onUnload(): Promise<void> | void;
174
- onReload?: (context: PluginContext) => Promise<void> | void;
175
- getApi?: () => unknown;
142
+ getSharedApi?: () => unknown;
176
143
  setup?: (build: PluginBuilder) => void | Promise<void>;
177
144
  }
178
145
  export type OnResolveArgs = {
@@ -196,19 +163,11 @@ export type OnLoadResult = {
196
163
  } | undefined | null;
197
164
  export type OnLoadCallback = (args: OnLoadArgs) => OnLoadResult | Promise<OnLoadResult>;
198
165
  export interface PluginBuilder {
199
- onStart(callback: () => void | Promise<void>): void;
200
- onResolve(filter: RegExp | {
201
- filter: RegExp;
202
- namespace?: string;
203
- }, callback: OnResolveCallback, options?: {
166
+ onResolve(filter: RegExp, callback: OnResolveCallback, options?: {
204
167
  order?: HookOrder;
205
168
  }): void;
206
- onLoad(filter: RegExp | {
207
- filter: RegExp;
208
- namespace?: string;
209
- }, callback: OnLoadCallback, options?: {
169
+ onLoad(filter: RegExp, callback: OnLoadCallback, options?: {
210
170
  order?: HookOrder;
211
171
  }): void;
212
- config: Record<string, any>;
213
172
  }
214
173
  //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,4 @@
1
1
  import { z } from "zod";
2
- export { z };
3
- export * from "./types/plugin-registry-base";
4
- // Re-export Converter
5
- export { ArkTypeConverter, PluginTypeGenerator, generatePluginTypes } from "./types/generator";
6
2
  export var WorkerMessageType;
7
3
  (function (WorkerMessageType) {
8
4
  WorkerMessageType["RPC_CALL"] = "RPC_CALL";
@@ -35,14 +31,11 @@ export var RPCMethod;
35
31
  RPCMethod["Log"] = "log";
36
32
  RPCMethod["NetworkFetch"] = "network:fetch";
37
33
  RPCMethod["PermissionCheck"] = "perm:check";
38
- RPCMethod["ConfigGet"] = "config:get";
39
- RPCMethod["StorageReload"] = "storage:reload";
40
34
  })(RPCMethod || (RPCMethod = {}));
41
35
  export var HookType;
42
36
  (function (HookType) {
43
37
  HookType["ON_RESOLVE"] = "onResolve";
44
38
  HookType["ON_LOAD"] = "onLoad";
45
- HookType["ON_START"] = "onStart";
46
39
  })(HookType || (HookType = {}));
47
40
  export var HookOrder;
48
41
  (function (HookOrder) {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAN,IAAY,iBAWX;AAXD,WAAY,iBAAiB;IACzB,0CAAqB,CAAA;IACrB,4CAAuB,CAAA;IACvB,gDAA2B,CAAA;IAC3B,8CAAyB,CAAA;IACzB,8CAAyB,CAAA;IACzB,0CAAqB,CAAA;IACrB,kDAA6B,CAAA;IAC7B,8CAAyB,CAAA;IACzB,0CAAqB,CAAA;IACrB,sCAAiB,CAAA;AACrB,CAAC,EAXW,iBAAiB,KAAjB,iBAAiB,QAW5B;AAED,MAAM,CAAN,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IACxB,uCAAmB,CAAA;IACnB,6CAAyB,CAAA;IACzB,+BAAW,CAAA;AACf,CAAC,EAJW,gBAAgB,KAAhB,gBAAgB,QAI3B;AAED,MAAM,CAAN,IAAY,SAYX;AAZD,WAAY,SAAS;IACjB,uCAA0B,CAAA;IAC1B,uCAA0B,CAAA;IAC1B,6CAAgC,CAAA;IAChC,2CAA8B,CAAA;IAC9B,uCAA0B,CAAA;IAC1B,mCAAsB,CAAA;IACtB,6CAAgC,CAAA;IAChC,mDAAsC,CAAA;IACtC,wBAAW,CAAA;IACX,2CAA8B,CAAA;IAC9B,2CAA8B,CAAA;AAClC,CAAC,EAZW,SAAS,KAAT,SAAS,QAYpB;AAED,MAAM,CAAN,IAAY,QAGX;AAHD,WAAY,QAAQ;IAChB,oCAAwB,CAAA;IACxB,8BAAkB,CAAA;AACtB,CAAC,EAHW,QAAQ,KAAR,QAAQ,QAGnB;AAED,MAAM,CAAN,IAAY,SAGX;AAHD,WAAY,SAAS;IACjB,wBAAW,CAAA;IACX,0BAAa,CAAA;AACjB,CAAC,EAHW,SAAS,KAAT,SAAS,QAGpB;AA0FD,MAAM,OAAO,iBAAkB,SAAQ,KAAK;IACxC,YAAY,UAAkB,EAAE,UAAkB;QAC9C,KAAK,CAAC,WAAW,UAAU,sBAAsB,UAAU,iCAAiC,CAAC,CAAC;QAC9F,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;IACpC,CAAC;CACJ;AAED,2DAA2D;AAC3D,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;CACpB,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errorParser.d.ts","sourceRoot":"","sources":["../../src/utils/errorParser.ts"],"names":[],"mappings":"AAAA,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,KAAK,CAuBlE;AACD,eAAe,WAAW,CAAC"}
@@ -1,8 +1,11 @@
1
1
  export function errorParser(error, prefix) {
2
2
  let parsedError;
3
- // Parse the error
3
+ // Parse the error - always create a new Error to avoid readonly issues
4
4
  if (error instanceof Error) {
5
- parsedError = error;
5
+ // Create a new Error to avoid modifying potentially frozen Zod errors
6
+ parsedError = new Error(error.message);
7
+ parsedError.name = error.name;
8
+ parsedError.stack = error.stack;
6
9
  }
7
10
  else if (typeof error === "string") {
8
11
  parsedError = new Error(error);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errorParser.js","sourceRoot":"","sources":["../../src/utils/errorParser.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,WAAW,CAAC,KAAc,EAAE,MAAe;IACzD,IAAI,WAAkB,CAAC;IAEvB,uEAAuE;IACvE,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC3B,sEAAsE;QACtE,WAAW,GAAG,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACvC,WAAW,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;QAC9B,WAAW,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;IAClC,CAAC;SAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACrC,WAAW,GAAG,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;SAAM,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,SAAS,IAAI,KAAK,EAAE,CAAC;QACpE,WAAW,GAAG,IAAI,KAAK,CAAC,MAAM,CAAE,KAAa,CAAC,OAAO,CAAC,CAAC,CAAC;IAC1D,CAAC;SAAM,CAAC;QACN,WAAW,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACzC,CAAC;IAED,6BAA6B;IAC7B,IAAI,MAAM,EAAE,CAAC;QACX,WAAW,CAAC,OAAO,GAAG,GAAG,MAAM,KAAK,WAAW,CAAC,OAAO,EAAE,CAAC;IAC5D,CAAC;IAED,OAAO,WAAW,CAAC;AACrB,CAAC;AACD,eAAe,WAAW,CAAC"}
@@ -0,0 +1,93 @@
1
+ import { z } from "zod";
2
+ import type { IPlugin } from "../types";
3
+ export declare const PluginSchema: z.ZodObject<{
4
+ name: z.ZodString;
5
+ version: z.ZodDefault<z.ZodString>;
6
+ description: z.ZodOptional<z.ZodString>;
7
+ author: z.ZodOptional<z.ZodString>;
8
+ configSchema: z.ZodOptional<z.ZodAny>;
9
+ defaultConfig: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
10
+ dependencies: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
11
+ permissions: z.ZodOptional<z.ZodArray<z.ZodEnum<["network", "filesystem", "env"]>, "many">>;
12
+ allowedDomains: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
13
+ engines: z.ZodOptional<z.ZodObject<{
14
+ host: z.ZodOptional<z.ZodString>;
15
+ }, "strip", z.ZodTypeAny, {
16
+ host?: string | undefined;
17
+ }, {
18
+ host?: string | undefined;
19
+ }>>;
20
+ onLoad: z.ZodFunction<z.ZodTuple<[], z.ZodUnknown>, z.ZodUnknown>;
21
+ onStarted: z.ZodOptional<z.ZodFunction<z.ZodTuple<[], z.ZodUnknown>, z.ZodUnknown>>;
22
+ onUnload: z.ZodOptional<z.ZodFunction<z.ZodTuple<[], z.ZodUnknown>, z.ZodUnknown>>;
23
+ getSharedApi: z.ZodOptional<z.ZodFunction<z.ZodTuple<[], z.ZodUnknown>, z.ZodUnknown>>;
24
+ setup: z.ZodOptional<z.ZodFunction<z.ZodTuple<[], z.ZodUnknown>, z.ZodUnknown>>;
25
+ }, "strip", z.ZodTypeAny, {
26
+ onLoad: (...args: unknown[]) => unknown;
27
+ name: string;
28
+ version: string;
29
+ description?: string | undefined;
30
+ author?: string | undefined;
31
+ configSchema?: any;
32
+ defaultConfig?: Record<string, any> | undefined;
33
+ dependencies?: Record<string, string> | undefined;
34
+ permissions?: ("network" | "filesystem" | "env")[] | undefined;
35
+ allowedDomains?: string[] | undefined;
36
+ engines?: {
37
+ host?: string | undefined;
38
+ } | undefined;
39
+ onStarted?: ((...args: unknown[]) => unknown) | undefined;
40
+ onUnload?: ((...args: unknown[]) => unknown) | undefined;
41
+ getSharedApi?: ((...args: unknown[]) => unknown) | undefined;
42
+ setup?: ((...args: unknown[]) => unknown) | undefined;
43
+ }, {
44
+ onLoad: (...args: unknown[]) => unknown;
45
+ name: string;
46
+ version?: string | undefined;
47
+ description?: string | undefined;
48
+ author?: string | undefined;
49
+ configSchema?: any;
50
+ defaultConfig?: Record<string, any> | undefined;
51
+ dependencies?: Record<string, string> | undefined;
52
+ permissions?: ("network" | "filesystem" | "env")[] | undefined;
53
+ allowedDomains?: string[] | undefined;
54
+ engines?: {
55
+ host?: string | undefined;
56
+ } | undefined;
57
+ onStarted?: ((...args: unknown[]) => unknown) | undefined;
58
+ onUnload?: ((...args: unknown[]) => unknown) | undefined;
59
+ getSharedApi?: ((...args: unknown[]) => unknown) | undefined;
60
+ setup?: ((...args: unknown[]) => unknown) | undefined;
61
+ }>;
62
+ export declare const StrictPluginSchema: z.ZodObject<{
63
+ name: z.ZodString;
64
+ version: z.ZodString;
65
+ onLoad: z.ZodFunction<z.ZodTuple<[], z.ZodUnknown>, z.ZodUnknown>;
66
+ onUnload: z.ZodFunction<z.ZodTuple<[], z.ZodUnknown>, z.ZodUnknown>;
67
+ }, "strip", z.ZodTypeAny, {
68
+ onLoad: (...args: unknown[]) => unknown;
69
+ name: string;
70
+ version: string;
71
+ onUnload: (...args: unknown[]) => unknown;
72
+ }, {
73
+ onLoad: (...args: unknown[]) => unknown;
74
+ name: string;
75
+ version: string;
76
+ onUnload: (...args: unknown[]) => unknown;
77
+ }>;
78
+ export type ValidationResult = {
79
+ valid: true;
80
+ plugin: IPlugin;
81
+ } | {
82
+ valid: false;
83
+ error: string;
84
+ };
85
+ /**
86
+ * Validates if an unknown object is a valid plugin.
87
+ * Handles:
88
+ * 1. Class instances (Standard)
89
+ * 2. Plain objects
90
+ * 3. Class Constructors (instantiates them) // TODO if we want to move that logic here
91
+ */
92
+ export declare function validatePlugin(candidate: unknown): ValidationResult;
93
+ //# sourceMappingURL=pluginValidator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pluginValidator.d.ts","sourceRoot":"","sources":["../../src/utils/pluginValidator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAGxC,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsBvB,CAAC;AAGH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;EAK7B,CAAC;AAEH,MAAM,MAAM,gBAAgB,GACxB;IAAE,KAAK,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,GAChC;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEpC;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,OAAO,GAAG,gBAAgB,CAqBnE"}
@@ -1,7 +1,6 @@
1
1
  import { z } from "zod";
2
2
  import { errorParser } from "../utils/errorParser";
3
- // Internal schemas - NOT exported to avoid Zod type leakage
4
- const pluginSchemaDefinition = z.object({
3
+ export const PluginSchema = z.object({
5
4
  name: z.string().min(1, "Plugin name is required"),
6
5
  version: z.string().min(1, "Plugin version is required").default("1.0.0"),
7
6
  description: z.string().optional(),
@@ -17,9 +16,16 @@ const pluginSchemaDefinition = z.object({
17
16
  onLoad: z.function(),
18
17
  onStarted: z.function().optional(),
19
18
  onUnload: z.function().optional(),
20
- getApi: z.function().optional(),
19
+ getSharedApi: z.function().optional(),
21
20
  setup: z.function().optional(),
22
21
  });
22
+ // We can have a stricter schema for the full IPlugin
23
+ export const StrictPluginSchema = z.object({
24
+ name: z.string(),
25
+ version: z.string(),
26
+ onLoad: z.function(),
27
+ onUnload: z.function(),
28
+ });
23
29
  /**
24
30
  * Validates if an unknown object is a valid plugin.
25
31
  * Handles:
@@ -51,21 +57,17 @@ export function validatePlugin(candidate) {
51
57
  }
52
58
  }
53
59
  function validatePluginInstance(obj) {
54
- const result = pluginSchemaDefinition.safeParse(obj);
60
+ const result = PluginSchema.safeParse(obj);
55
61
  if (!result.success) {
56
62
  return {
57
63
  valid: false,
58
64
  error: result.error.issues.map((e) => `${e.path.join('.')}: ${e.message}`).join(', ')
59
65
  };
60
66
  }
61
- // Use the original object to preserve prototype and 'this' context,
62
- // but we can use the parsed data to ensure defaults are applied if we want.
63
- // For now, let's just return the original object casted to IPlugin.
64
- const plugin = obj;
65
- // Apply defaults/formatting from Zod if needed (optional)
66
- if (!plugin.version && result.data.version)
67
- plugin.version = result.data.version;
68
- // Shim onUnload if missing
67
+ // Cast to IPlugin (fill in missing optional methods if needed)
68
+ const plugin = result.data;
69
+ // Shim onUnload if missing (since we made it optional in schema but it is required in IPlugin interface usually,
70
+ // though we can be lenient)
69
71
  if (!plugin.onUnload) {
70
72
  plugin.onUnload = () => { };
71
73
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pluginValidator.js","sourceRoot":"","sources":["../../src/utils/pluginValidator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"security.d.ts","sourceRoot":"","sources":["../../src/utils/security.ts"],"names":[],"mappings":"AAAA,wBAAgB,sBAAsB,CAClC,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,EAAE,GAAG,SAAS,EACjC,cAAc,EAAE,MAAM,EAAE,GAAG,SAAS,EACpC,MAAM,EAAE,MAAM,GACf,IAAI,CAuBN;AAED,wBAAgB,eAAe,CAC3B,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,EAAE,GAAG,SAAS,EACjC,IAAI,EAAE,YAAY,GAAG,KAAK,GAC3B,IAAI,CAIN"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"security.js","sourceRoot":"","sources":["../../src/utils/security.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,sBAAsB,CAClC,UAAkB,EAClB,WAAiC,EACjC,cAAoC,EACpC,MAAc;IAEd,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,yBAAyB,UAAU,kCAAkC,CAAC,CAAC;IAC3F,CAAC;IAED,IAAI,cAAc,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9C,IAAI,GAAQ,CAAC;QACb,IAAI,CAAC;YACD,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;QAC1B,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,8CAA8C;YAC9C,MAAM,IAAI,KAAK,CAAC,8BAA8B,MAAM,iBAAiB,UAAU,IAAI,CAAC,CAAC;QACzF,CAAC;QAED,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;QAC9B,MAAM,SAAS,GAAG,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAC3C,QAAQ,KAAK,MAAM,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,GAAG,MAAM,CAAC,CACzD,CAAC;QAEF,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,yBAAyB,QAAQ,0CAA0C,UAAU,IAAI,CAAC,CAAC;QAC/G,CAAC;IACL,CAAC;AACL,CAAC;AAED,MAAM,UAAU,eAAe,CAC3B,UAAkB,EAClB,WAAiC,EACjC,IAA0B;IAE1B,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,yBAAyB,UAAU,eAAe,IAAI,eAAe,CAAC,CAAC;IAC3F,CAAC;AACL,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WorkerRunner.d.ts","sourceRoot":"","sources":["../../src/worker/WorkerRunner.ts"],"names":[],"mappings":""}
@@ -1,7 +1,6 @@
1
1
  import { parentPort, workerData } from "worker_threads";
2
- import { WorkerMessageType, RPCMethod, HookType } from "../types";
2
+ import { WorkerMessageType, PluginPermission, RPCMethod, HookType } from "../types";
3
3
  import { errorParser } from "../utils/errorParser";
4
- import { logger } from "../logger";
5
4
  // This is the "Shell" that runs inside the Worker.
6
5
  // It receives the plugin path, loads it, and executes onLoad.
7
6
  // It creates a proxy Context that talks back to the main thread via postMessage.
@@ -11,7 +10,6 @@ const { pluginPath, pluginName } = workerData;
11
10
  // Map to store callbacks for hooks and events
12
11
  const hookCallbacks = new Map();
13
12
  const localEventListeners = new Map();
14
- let currentConfig = {};
15
13
  // Simple RPC Helper
16
14
  function rpc(method, ...args) {
17
15
  return new Promise((resolve, reject) => {
@@ -60,26 +58,26 @@ async function run() {
60
58
  }
61
59
  catch (e) {
62
60
  const error = errorParser(e, `Error in event listener for ${event}`);
63
- logger.getLogger(`Worker:${pluginName}`).error(`Error in event listener for ${event}:`, error.message);
61
+ console.error(`[Worker:${pluginName}] Error in event listener for ${event}:`, error.message);
64
62
  }
65
63
  }
66
64
  }
67
65
  }
68
66
  else if (msg.type === WorkerMessageType.UNLOAD) {
69
- logger.getLogger(`Worker:${pluginName}`).info(`Received UNLOAD signal.`);
67
+ console.log(`[Worker:${pluginName}] Received UNLOAD signal.`);
70
68
  if (plugin && plugin.onUnload) {
71
69
  try {
72
70
  await plugin.onUnload();
73
71
  }
74
72
  catch (e) {
75
- logger.getLogger(`Worker:${pluginName}`).error(`Error during onUnload:`, e);
73
+ console.error(`[Worker:${pluginName}] Error during onUnload:`, e);
76
74
  }
77
75
  }
78
76
  process.exit(0);
79
77
  }
80
78
  });
81
79
  try {
82
- logger.getLogger(`Worker:${pluginName}`).info(`Loading plugin from ${pluginPath}...`);
80
+ console.log(`[Worker:${pluginName}] Loading plugin from ${pluginPath}...`);
83
81
  // Dynamic Import of the Plugin
84
82
  const module = await import(pluginPath);
85
83
  // Find the plugin object (default export or named export compliant with IPlugin)
@@ -116,8 +114,6 @@ async function run() {
116
114
  if (!plugin) {
117
115
  throw new Error(`[Worker:${pluginName}] No valid plugin found in ${pluginPath}. Ensure you export an instance or class that implements IPlugin.`);
118
116
  }
119
- // Fetch actual config from host
120
- currentConfig = await rpc(RPCMethod.ConfigGet) || plugin.defaultConfig || {};
121
117
  // Send Manifest immediately after load for security context initialization in host
122
118
  parentPort.postMessage({
123
119
  type: WorkerMessageType.MANIFEST,
@@ -132,18 +128,13 @@ async function run() {
132
128
  });
133
129
  // Create Proxy Context
134
130
  const contextProxy = {
135
- manager: {},
136
- get config() {
137
- // Return a proxy that can potentially be async or just fetch once and update?
138
- // For now, since config needs to be sync, we keep a local copy and update it.
139
- return currentConfig;
140
- },
131
+ manager: {}, // Manager is not accessible remotely directly
132
+ config: plugin.defaultConfig || {}, // Initial config (todo: fetch actual valid config)
141
133
  storage: {
142
134
  get: (key) => rpc(RPCMethod.StorageGet, key),
143
135
  set: (key, val) => rpc(RPCMethod.StorageSet, key, val),
144
136
  delete: (key) => rpc(RPCMethod.StorageDelete, key),
145
- clear: () => rpc(RPCMethod.StorageClear),
146
- reload: () => rpc(RPCMethod.StorageReload)
137
+ clear: () => rpc(RPCMethod.StorageClear)
147
138
  },
148
139
  emit: (event, payload) => rpc(RPCMethod.EventsEmit, event, payload),
149
140
  on: (event, cb) => {
@@ -200,20 +191,10 @@ async function run() {
200
191
  // Run setup (Hooks)
201
192
  if (plugin.setup) {
202
193
  const builderVal = {
203
- config: currentConfig,
204
- onStart: (callback) => {
205
- const hookId = Math.random().toString(36).substring(7);
206
- hookCallbacks.set(hookId, callback);
207
- rpc(RPCMethod.HooksRegister, HookType.ON_START, {
208
- filter: /.*/.source,
209
- pluginName,
210
- id: hookId
211
- });
212
- },
213
- onResolve: (filterOrConfig, callback, options) => {
214
- const filter = filterOrConfig instanceof RegExp ? filterOrConfig : filterOrConfig.filter;
194
+ onResolve: (filter, callback, options) => {
215
195
  const hookId = Math.random().toString(36).substring(7);
216
196
  hookCallbacks.set(hookId, callback);
197
+ // We need to pass the filter source string
217
198
  rpc(RPCMethod.HooksRegister, HookType.ON_RESOLVE, {
218
199
  filter: filter.source,
219
200
  pluginName,
@@ -221,8 +202,7 @@ async function run() {
221
202
  options
222
203
  });
223
204
  },
224
- onLoad: (filterOrConfig, callback, options) => {
225
- const filter = filterOrConfig instanceof RegExp ? filterOrConfig : filterOrConfig.filter;
205
+ onLoad: (filter, callback, options) => {
226
206
  const hookId = Math.random().toString(36).substring(7);
227
207
  hookCallbacks.set(hookId, callback);
228
208
  rpc(RPCMethod.HooksRegister, HookType.ON_LOAD, {
@@ -258,7 +238,7 @@ async function run() {
258
238
  await plugin.onStarted();
259
239
  }
260
240
  catch (e) {
261
- logger.getLogger(`Worker:${pluginName}`).error(`Error in onStarted:`, e);
241
+ console.error(`[Worker:${pluginName}] Error in onStarted:`, e);
262
242
  }
263
243
  }
264
244
  }
@@ -266,7 +246,7 @@ async function run() {
266
246
  }
267
247
  catch (e) {
268
248
  const error = errorParser(e, `[Worker:${pluginName}] Error:`);
269
- logger.getLogger(`Worker:${pluginName}`).error(error.message);
249
+ console.error(error.message);
270
250
  parentPort.postMessage({ type: WorkerMessageType.LOAD_ERROR, error: error.message });
271
251
  }
272
252
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WorkerRunner.js","sourceRoot":"","sources":["../../src/worker/WorkerRunner.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bun_plugins",
3
- "version": "1.2.4",
3
+ "version": "1.2.6",
4
4
  "description": "A powerful and secure plugin system for Bun applications",
5
5
  "author": "memelser <nglmercer@gmail.com>",
6
6
  "repository": {
@@ -16,39 +16,28 @@
16
16
  "types": "dist/index.d.ts",
17
17
  "type": "module",
18
18
  "files": [
19
- "dist",
20
- "plugin-types"
19
+ "dist"
21
20
  ],
22
21
  "exports": {
23
22
  ".": {
24
- "import": "./dist/src/index.js",
25
- "types": "./dist/src/index.d.ts"
26
- },
27
- "./plugin-types": {
28
- "types": "./plugin-types/index.d.ts"
29
- },
30
- "./plugin-types/plugin-registry": {
31
- "types": "./plugin-types/plugin-registry.d.ts"
32
- },
33
- "./src/types/plugin-registry-base": {
34
- "types": "./dist/src/types/plugin-registry-base.d.ts"
23
+ "import": "./dist/index.js",
24
+ "types": "./dist/index.d.ts"
35
25
  }
36
26
  },
37
27
  "scripts": {
38
- "build": "bun tsc",
28
+ "build": "rm -rf dist && tsc",
39
29
  "test": "bun test ./tests",
40
30
  "typecheck": "bun tsc --noEmit",
41
- "generate-types": "bun run scripts/generate-types.ts",
42
31
  "prepublishOnly": "bun run build"
43
32
  },
44
33
  "devDependencies": {
45
34
  "@types/bun": "latest",
46
35
  "@types/semver": "^7.7.1",
36
+ "bun_plugins": "^1.0.4",
47
37
  "typescript": "^5.0.0"
48
38
  },
49
39
  "dependencies": {
50
- "arktype": "^2.1.0",
51
40
  "semver": "^7.7.3",
52
- "zod": "^4.3.5"
41
+ "zod": "^3.23.0"
53
42
  }
54
43
  }
package/LICENSE DELETED
@@ -1,9 +0,0 @@
1
- # MIT License
2
-
3
- Copyright (c) 2025
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
6
-
7
- The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
8
-
9
- THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -1,23 +0,0 @@
1
- /**
2
- * Plugin principal ActionRegistry para carga dinámica
3
- * Este plugin proporciona el registro de acciones compartido
4
- */
5
- import type { IPlugin, PluginContext } from "../src";
6
- type EngineActionHandler = (...args: any[]) => any;
7
- export declare class ActionRegistryPlugin implements IPlugin {
8
- name: string;
9
- version: string;
10
- private actionRegistry;
11
- constructor();
12
- onLoad(context: PluginContext): void;
13
- onUnload(): void;
14
- getApi(): {
15
- registerAction: (type: string, handler: EngineActionHandler) => void;
16
- executeAction: (type: string, ...args: any[]) => any;
17
- listActions: () => string[];
18
- hasAction: (type: string) => boolean;
19
- actions: string[];
20
- };
21
- }
22
- export {};
23
- //# sourceMappingURL=ActionRegistryPlugin.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ActionRegistryPlugin.d.ts","sourceRoot":"","sources":["../../plugins/ActionRegistryPlugin.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAGrD,KAAK,mBAAmB,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;AAgCnD,qBAAa,oBAAqB,YAAW,OAAO;IAClD,IAAI,SAAqB;IACzB,OAAO,SAAW;IAClB,OAAO,CAAC,cAAc,CAAiB;;IASvC,MAAM,CAAC,OAAO,EAAE,aAAa;IAI7B,QAAQ;IAKR,MAAM;+BA9Ce,MAAM,WAAW,mBAAmB,KAAG,IAAI;8BAK5C,MAAM,WAAW,GAAG,EAAE,KAAG,GAAG;2BASjC,MAAM,EAAE;0BAKP,MAAM,KAAG,OAAO;;;CAoCjC"}