@webiny/pulumi 5.35.0-beta.1 → 5.35.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,15 +1,12 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.PulumiAppModuleDefinition = void 0;
9
8
  exports.createAppModule = createAppModule;
10
-
11
9
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
12
-
13
10
  class PulumiAppModuleDefinition {
14
11
  constructor(params) {
15
12
  (0, _defineProperty2.default)(this, "symbol", Symbol());
@@ -18,11 +15,8 @@ class PulumiAppModuleDefinition {
18
15
  this.name = params.name;
19
16
  this.run = params.config;
20
17
  }
21
-
22
18
  }
23
-
24
19
  exports.PulumiAppModuleDefinition = PulumiAppModuleDefinition;
25
-
26
20
  function createAppModule(params) {
27
21
  return new PulumiAppModuleDefinition(params);
28
22
  }
@@ -1 +1 @@
1
- {"version":3,"names":["PulumiAppModuleDefinition","constructor","params","Symbol","name","run","config","createAppModule"],"sources":["PulumiAppModule.ts"],"sourcesContent":["import { PulumiApp } from \"./types\";\n\nexport interface PulumiAppModuleCallback<TModule, TConfig> {\n (this: void, app: PulumiApp, config: TConfig): TModule;\n}\n\nexport interface PulumiAppModuleParams<TModule, TConfig> {\n name: string;\n config: PulumiAppModuleCallback<TModule, TConfig>;\n}\n\nexport type PulumiAppModule<T extends PulumiAppModuleDefinition<any, any>> =\n T extends PulumiAppModuleDefinition<infer V, any> ? V : never;\n\nexport class PulumiAppModuleDefinition<TModule, TConfig> {\n public readonly symbol = Symbol();\n public readonly name: string;\n public readonly run: PulumiAppModuleCallback<TModule, TConfig>;\n constructor(params: PulumiAppModuleParams<TModule, TConfig>) {\n this.name = params.name;\n this.run = params.config;\n }\n}\n\nexport function createAppModule<TModule, TConfig = void>(\n params: PulumiAppModuleParams<TModule, TConfig>\n) {\n return new PulumiAppModuleDefinition(params);\n}\n"],"mappings":";;;;;;;;;;;;AAcO,MAAMA,yBAAN,CAAkD;EAIrDC,WAAW,CAACC,MAAD,EAAkD;IAAA,8CAHpCC,MAAM,EAG8B;IAAA;IAAA;IACzD,KAAKC,IAAL,GAAYF,MAAM,CAACE,IAAnB;IACA,KAAKC,GAAL,GAAWH,MAAM,CAACI,MAAlB;EACH;;AAPoD;;;;AAUlD,SAASC,eAAT,CACHL,MADG,EAEL;EACE,OAAO,IAAIF,yBAAJ,CAA8BE,MAA9B,CAAP;AACH"}
1
+ {"version":3,"names":["PulumiAppModuleDefinition","constructor","params","Symbol","name","run","config","createAppModule"],"sources":["PulumiAppModule.ts"],"sourcesContent":["import { PulumiApp } from \"./types\";\n\nexport interface PulumiAppModuleCallback<TModule, TConfig> {\n (this: void, app: PulumiApp, config: TConfig): TModule;\n}\n\nexport interface PulumiAppModuleParams<TModule, TConfig> {\n name: string;\n config: PulumiAppModuleCallback<TModule, TConfig>;\n}\n\nexport type PulumiAppModule<T extends PulumiAppModuleDefinition<any, any>> =\n T extends PulumiAppModuleDefinition<infer V, any> ? V : never;\n\nexport class PulumiAppModuleDefinition<TModule, TConfig> {\n public readonly symbol = Symbol();\n public readonly name: string;\n public readonly run: PulumiAppModuleCallback<TModule, TConfig>;\n constructor(params: PulumiAppModuleParams<TModule, TConfig>) {\n this.name = params.name;\n this.run = params.config;\n }\n}\n\nexport function createAppModule<TModule, TConfig = void>(\n params: PulumiAppModuleParams<TModule, TConfig>\n) {\n return new PulumiAppModuleDefinition(params);\n}\n"],"mappings":";;;;;;;;;AAcO,MAAMA,yBAAyB,CAAmB;EAIrDC,WAAW,CAACC,MAA+C,EAAE;IAAA,8CAHpCC,MAAM,EAAE;IAAA;IAAA;IAI7B,IAAI,CAACC,IAAI,GAAGF,MAAM,CAACE,IAAI;IACvB,IAAI,CAACC,GAAG,GAAGH,MAAM,CAACI,MAAM;EAC5B;AACJ;AAAC;AAEM,SAASC,eAAe,CAC3BL,MAA+C,EACjD;EACE,OAAO,IAAIF,yBAAyB,CAACE,MAAM,CAAC;AAChD"}
@@ -1,35 +1,24 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
-
5
4
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports.createPulumiApp = createPulumiApp;
11
-
12
9
  var _findUp = _interopRequireDefault(require("find-up"));
13
-
14
10
  var _path = _interopRequireDefault(require("path"));
15
-
16
11
  var pulumi = _interopRequireWildcard(require("@pulumi/pulumi"));
17
-
18
12
  function createPulumiApp(params) {
19
13
  let projectRootPath = _findUp.default.sync("webiny.project.ts");
20
-
21
14
  if (projectRootPath) {
22
15
  projectRootPath = _path.default.dirname(projectRootPath).replace(/\\/g, "/");
23
16
  } else {
24
17
  throw new Error("Couldn't detect Webiny project.");
25
18
  }
26
-
27
19
  const appRelativePath = params.path;
28
-
29
20
  const appRootPath = _path.default.join(projectRootPath, appRelativePath);
30
-
31
21
  const projectAppWorkspacePath = _path.default.join(projectRootPath, ".webiny", "workspaces", appRelativePath);
32
-
33
22
  const app = {
34
23
  resourceHandlers: [],
35
24
  handlers: [],
@@ -47,23 +36,18 @@ function createPulumiApp(params) {
47
36
  create: params.config || {},
48
37
  run: {}
49
38
  },
50
-
51
39
  async run(config) {
52
40
  app.params.run = config;
53
41
  Object.assign(app.resources, await app.program(app));
54
-
55
42
  for (const handler of app.handlers) {
56
43
  await handler();
57
44
  }
58
-
59
45
  app.params.run = {};
60
46
  return app.outputs;
61
47
  },
62
-
63
48
  onResource(handler) {
64
49
  app.resourceHandlers.push(handler);
65
50
  },
66
-
67
51
  /**
68
52
  * Adds a resource to pulumi app.
69
53
  * It's not running the script immediately, but enqueues the call.
@@ -92,7 +76,6 @@ function createPulumiApp(params) {
92
76
  };
93
77
  return resource;
94
78
  },
95
-
96
79
  addRemoteResource(name, getter) {
97
80
  const promise = getter();
98
81
  const resource = {
@@ -101,7 +84,6 @@ function createPulumiApp(params) {
101
84
  };
102
85
  return resource;
103
86
  },
104
-
105
87
  /**
106
88
  * Registers output value within pulumi app.
107
89
  * @param name Name of the output value
@@ -110,7 +92,6 @@ function createPulumiApp(params) {
110
92
  addOutput(name, output) {
111
93
  app.outputs[name] = output;
112
94
  },
113
-
114
95
  /**
115
96
  * Registers one or more output values.
116
97
  * @param outputs Dictionary containing output values.
@@ -118,7 +99,6 @@ function createPulumiApp(params) {
118
99
  addOutputs(outputs) {
119
100
  Object.assign(app.outputs, outputs);
120
101
  },
121
-
122
102
  /**
123
103
  * Registers an app module within app.
124
104
  * Allows to decompose application into smaller pieces.
@@ -130,12 +110,10 @@ function createPulumiApp(params) {
130
110
  if (app.modules.has(module.symbol)) {
131
111
  throw new Error(`Module "${module.name}" is already present in the "${app.name}" application.`);
132
112
  }
133
-
134
113
  const createdModule = module.run(app, config);
135
114
  app.modules.set(module.symbol, createdModule);
136
115
  return createdModule;
137
116
  },
138
-
139
117
  /**
140
118
  * Returns a module by its definition
141
119
  * @param def
@@ -143,7 +121,6 @@ function createPulumiApp(params) {
143
121
  */
144
122
  getModule(def, opts) {
145
123
  const module = app.modules.get(def.symbol);
146
-
147
124
  if (!module) {
148
125
  if (opts !== null && opts !== void 0 && opts.optional) {
149
126
  return null;
@@ -151,10 +128,8 @@ function createPulumiApp(params) {
151
128
  throw new Error(`Module "${def.name}" not found in "${app.name}" app`);
152
129
  }
153
130
  }
154
-
155
131
  return module;
156
132
  },
157
-
158
133
  /**
159
134
  * Schedules a handler to be executed when running pulumi script.
160
135
  * Anything, that is returned from handler will be wrapped in pulumi.Output
@@ -170,29 +145,24 @@ function createPulumiApp(params) {
170
145
  });
171
146
  return pulumi.output(promise);
172
147
  },
173
-
174
148
  getParam(param) {
175
149
  if (typeof param === "function") {
176
150
  return param(app);
177
151
  }
178
-
179
152
  return param;
180
153
  }
181
-
182
154
  };
183
155
  return app;
184
156
  }
185
-
186
157
  function createPulumiAppResourceConfigProxy(obj) {
187
158
  return new Proxy(obj, {
188
159
  get(target, p) {
189
160
  const key = p;
190
-
191
161
  const setter = value => {
192
162
  if (typeof value === "function") {
193
163
  const modifier = value;
194
- const currentValue = target[key]; // Wrap a current config with a function.
195
-
164
+ const currentValue = target[key];
165
+ // Wrap a current config with a function.
196
166
  const newValue = pulumi.output(currentValue).apply(v => {
197
167
  const newValue = modifier(v);
198
168
  return pulumi.output(newValue);
@@ -202,9 +172,7 @@ function createPulumiAppResourceConfigProxy(obj) {
202
172
  target[key] = value;
203
173
  }
204
174
  };
205
-
206
175
  return setter;
207
176
  }
208
-
209
177
  });
210
178
  }
@@ -1 +1 @@
1
- {"version":3,"names":["createPulumiApp","params","projectRootPath","findUp","sync","path","dirname","replace","Error","appRelativePath","appRootPath","join","projectAppWorkspacePath","app","resourceHandlers","handlers","outputs","modules","Map","paths","absolute","relative","workspace","resources","name","program","create","config","run","Object","assign","handler","onResource","push","addResource","resourceConstructor","opts","meta","promise","Promise","resolve","forEach","resource","type","createPulumiAppResourceConfigProxy","output","pulumi","addRemoteResource","getter","addOutput","addOutputs","addModule","module","has","symbol","createdModule","set","getModule","def","get","optional","addHandler","getParam","param","obj","Proxy","target","p","key","setter","value","modifier","currentValue","newValue","apply","v"],"sources":["createPulumiApp.ts"],"sourcesContent":["import findUp from \"find-up\";\nimport path from \"path\";\nimport * as pulumi from \"@pulumi/pulumi\";\nimport { PulumiAppModuleDefinition } from \"./PulumiAppModule\";\nimport {\n PulumiAppResourceArgs,\n PulumiAppResourceConstructor,\n PulumiAppResourceType,\n PulumiAppResource,\n CreatePulumiAppResourceParams,\n PulumiAppResourceConfigSetter,\n PulumiAppResourceConfigModifier,\n PulumiAppResourceConfigProxy\n} from \"./PulumiAppResource\";\nimport {\n CreatePulumiAppParams,\n PulumiApp,\n PulumiAppParam,\n PulumiAppParamCallback,\n ResourceHandler\n} from \"~/types\";\nimport { PulumiAppRemoteResource } from \"~/PulumiAppRemoteResource\";\n\nexport function createPulumiApp<TResources extends Record<string, unknown>>(\n params: CreatePulumiAppParams<TResources>\n): PulumiApp<TResources> {\n let projectRootPath = findUp.sync(\"webiny.project.ts\");\n if (projectRootPath) {\n projectRootPath = path.dirname(projectRootPath).replace(/\\\\/g, \"/\");\n } else {\n throw new Error(\"Couldn't detect Webiny project.\");\n }\n\n const appRelativePath = params.path;\n const appRootPath = path.join(projectRootPath, appRelativePath);\n\n const projectAppWorkspacePath = path.join(\n projectRootPath,\n \".webiny\",\n \"workspaces\",\n appRelativePath\n );\n\n const app: PulumiApp<TResources> = {\n resourceHandlers: [],\n handlers: [],\n outputs: {},\n modules: new Map<symbol, unknown>(),\n paths: {\n absolute: appRootPath,\n relative: appRelativePath,\n workspace: projectAppWorkspacePath\n },\n\n resources: {} as TResources,\n name: params.name,\n program: params.program,\n params: {\n create: params.config || {},\n run: {}\n },\n\n async run(config) {\n app.params.run = config;\n\n Object.assign(app.resources, await app.program(app));\n\n for (const handler of app.handlers) {\n await handler();\n }\n\n app.params.run = {};\n\n return app.outputs;\n },\n\n onResource(handler: ResourceHandler) {\n app.resourceHandlers.push(handler);\n },\n\n /**\n * Adds a resource to pulumi app.\n * It's not running the script immediately, but enqueues the call.\n * This way we are still able to modify the config of the resource.\n * @param resourceConstructor Resource to be added, ie aws.s3.Bucket\n * @param params Parameters to configure the resource\n * @returns Object giving access to both resource outputs and its config.\n */\n addResource<T extends PulumiAppResourceConstructor>(\n resourceConstructor: T,\n params: CreatePulumiAppResourceParams<T>\n ) {\n const config = params.config ?? ({} as PulumiAppResourceArgs<T>);\n const opts = params.opts ?? {};\n const meta = params.meta ?? {};\n\n const promise = new Promise<PulumiAppResourceType<T>>(resolve => {\n app.handlers.push(() => {\n app.resourceHandlers.forEach(handler => handler(resource));\n\n resolve(new resourceConstructor(resource.name, config, opts));\n });\n });\n\n const resource: PulumiAppResource<T> = {\n name: params.name,\n type: resourceConstructor,\n config: createPulumiAppResourceConfigProxy(config),\n opts,\n meta,\n output: pulumi.output(promise)\n };\n\n return resource;\n },\n\n addRemoteResource<T>(name: string, getter: () => Promise<T>) {\n const promise = getter();\n\n const resource: PulumiAppRemoteResource<T> = {\n name,\n output: pulumi.output(promise)\n };\n\n return resource;\n },\n\n /**\n * Registers output value within pulumi app.\n * @param name Name of the output value\n * @param output Value of the output\n */\n addOutput<T>(name: string, output: T) {\n app.outputs[name] = output;\n },\n\n /**\n * Registers one or more output values.\n * @param outputs Dictionary containing output values.\n */\n addOutputs(outputs: Record<string, unknown>) {\n Object.assign(app.outputs, outputs);\n },\n\n /**\n * Registers an app module within app.\n * Allows to decompose application into smaller pieces.\n * Added module can be then retrieved with `getModule`.\n * @param module\n * @param config\n */\n addModule<TModule, TConfig>(\n module: PulumiAppModuleDefinition<TModule, TConfig>,\n config?: TConfig\n ) {\n if (app.modules.has(module.symbol)) {\n throw new Error(\n `Module \"${module.name}\" is already present in the \"${app.name}\" application.`\n );\n }\n\n const createdModule = module.run(app, config as TConfig);\n app.modules.set(module.symbol, createdModule);\n\n return createdModule;\n },\n\n /**\n * Returns a module by its definition\n * @param def\n * @param opts\n */\n getModule<TConfig, TModule>(\n def: PulumiAppModuleDefinition<TModule, TConfig>,\n opts?: { optional: boolean }\n ) {\n const module = app.modules.get(def.symbol);\n\n if (!module) {\n if (opts?.optional) {\n return null;\n } else {\n throw new Error(`Module \"${def.name}\" not found in \"${app.name}\" app`);\n }\n }\n\n return module;\n },\n\n /**\n * Schedules a handler to be executed when running pulumi script.\n * Anything, that is returned from handler will be wrapped in pulumi.Output\n * so it can be used in other places.\n * @param handler Handler to be executed.\n * @returns Result of the handler wrapped with pulumi.Output\n */\n addHandler<T>(handler: () => Promise<T> | T) {\n const promise = new Promise<T>(resolve => {\n app.handlers.push(async () => {\n resolve(await handler());\n });\n });\n\n return pulumi.output(promise);\n },\n\n getParam<T>(param: PulumiAppParam<T>) {\n if (typeof param === \"function\") {\n return (param as PulumiAppParamCallback<T>)(app);\n }\n\n return param;\n }\n };\n\n return app;\n}\n\nfunction createPulumiAppResourceConfigProxy<T extends object>(obj: T) {\n return new Proxy(obj, {\n get(target, p: string) {\n type V = T[keyof T];\n const key = p as keyof T;\n const setter: PulumiAppResourceConfigSetter<V> = (\n value: V | PulumiAppResourceConfigModifier<V>\n ) => {\n if (typeof value === \"function\") {\n const modifier = value as PulumiAppResourceConfigModifier<V>;\n const currentValue = target[key];\n // Wrap a current config with a function.\n const newValue = pulumi.output(currentValue).apply(v => {\n const newValue = modifier(v);\n return pulumi.output(newValue);\n });\n\n target[key] = newValue as unknown as V;\n } else {\n target[key] = value;\n }\n };\n\n return setter;\n }\n }) as PulumiAppResourceConfigProxy<T>;\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["createPulumiApp","params","projectRootPath","findUp","sync","path","dirname","replace","Error","appRelativePath","appRootPath","join","projectAppWorkspacePath","app","resourceHandlers","handlers","outputs","modules","Map","paths","absolute","relative","workspace","resources","name","program","create","config","run","Object","assign","handler","onResource","push","addResource","resourceConstructor","opts","meta","promise","Promise","resolve","forEach","resource","type","createPulumiAppResourceConfigProxy","output","pulumi","addRemoteResource","getter","addOutput","addOutputs","addModule","module","has","symbol","createdModule","set","getModule","def","get","optional","addHandler","getParam","param","obj","Proxy","target","p","key","setter","value","modifier","currentValue","newValue","apply","v"],"sources":["createPulumiApp.ts"],"sourcesContent":["import findUp from \"find-up\";\nimport path from \"path\";\nimport * as pulumi from \"@pulumi/pulumi\";\nimport { PulumiAppModuleDefinition } from \"./PulumiAppModule\";\nimport {\n PulumiAppResourceArgs,\n PulumiAppResourceConstructor,\n PulumiAppResourceType,\n PulumiAppResource,\n CreatePulumiAppResourceParams,\n PulumiAppResourceConfigSetter,\n PulumiAppResourceConfigModifier,\n PulumiAppResourceConfigProxy\n} from \"./PulumiAppResource\";\nimport {\n CreatePulumiAppParams,\n PulumiApp,\n PulumiAppParam,\n PulumiAppParamCallback,\n ResourceHandler\n} from \"~/types\";\nimport { PulumiAppRemoteResource } from \"~/PulumiAppRemoteResource\";\n\nexport function createPulumiApp<TResources extends Record<string, unknown>>(\n params: CreatePulumiAppParams<TResources>\n): PulumiApp<TResources> {\n let projectRootPath = findUp.sync(\"webiny.project.ts\");\n if (projectRootPath) {\n projectRootPath = path.dirname(projectRootPath).replace(/\\\\/g, \"/\");\n } else {\n throw new Error(\"Couldn't detect Webiny project.\");\n }\n\n const appRelativePath = params.path;\n const appRootPath = path.join(projectRootPath, appRelativePath);\n\n const projectAppWorkspacePath = path.join(\n projectRootPath,\n \".webiny\",\n \"workspaces\",\n appRelativePath\n );\n\n const app: PulumiApp<TResources> = {\n resourceHandlers: [],\n handlers: [],\n outputs: {},\n modules: new Map<symbol, unknown>(),\n paths: {\n absolute: appRootPath,\n relative: appRelativePath,\n workspace: projectAppWorkspacePath\n },\n\n resources: {} as TResources,\n name: params.name,\n program: params.program,\n params: {\n create: params.config || {},\n run: {}\n },\n\n async run(config) {\n app.params.run = config;\n\n Object.assign(app.resources, await app.program(app));\n\n for (const handler of app.handlers) {\n await handler();\n }\n\n app.params.run = {};\n\n return app.outputs;\n },\n\n onResource(handler: ResourceHandler) {\n app.resourceHandlers.push(handler);\n },\n\n /**\n * Adds a resource to pulumi app.\n * It's not running the script immediately, but enqueues the call.\n * This way we are still able to modify the config of the resource.\n * @param resourceConstructor Resource to be added, ie aws.s3.Bucket\n * @param params Parameters to configure the resource\n * @returns Object giving access to both resource outputs and its config.\n */\n addResource<T extends PulumiAppResourceConstructor>(\n resourceConstructor: T,\n params: CreatePulumiAppResourceParams<T>\n ) {\n const config = params.config ?? ({} as PulumiAppResourceArgs<T>);\n const opts = params.opts ?? {};\n const meta = params.meta ?? {};\n\n const promise = new Promise<PulumiAppResourceType<T>>(resolve => {\n app.handlers.push(() => {\n app.resourceHandlers.forEach(handler => handler(resource));\n\n resolve(new resourceConstructor(resource.name, config, opts));\n });\n });\n\n const resource: PulumiAppResource<T> = {\n name: params.name,\n type: resourceConstructor,\n config: createPulumiAppResourceConfigProxy(config),\n opts,\n meta,\n output: pulumi.output(promise)\n };\n\n return resource;\n },\n\n addRemoteResource<T>(name: string, getter: () => Promise<T>) {\n const promise = getter();\n\n const resource: PulumiAppRemoteResource<T> = {\n name,\n output: pulumi.output(promise)\n };\n\n return resource;\n },\n\n /**\n * Registers output value within pulumi app.\n * @param name Name of the output value\n * @param output Value of the output\n */\n addOutput<T>(name: string, output: T) {\n app.outputs[name] = output;\n },\n\n /**\n * Registers one or more output values.\n * @param outputs Dictionary containing output values.\n */\n addOutputs(outputs: Record<string, unknown>) {\n Object.assign(app.outputs, outputs);\n },\n\n /**\n * Registers an app module within app.\n * Allows to decompose application into smaller pieces.\n * Added module can be then retrieved with `getModule`.\n * @param module\n * @param config\n */\n addModule<TModule, TConfig>(\n module: PulumiAppModuleDefinition<TModule, TConfig>,\n config?: TConfig\n ) {\n if (app.modules.has(module.symbol)) {\n throw new Error(\n `Module \"${module.name}\" is already present in the \"${app.name}\" application.`\n );\n }\n\n const createdModule = module.run(app, config as TConfig);\n app.modules.set(module.symbol, createdModule);\n\n return createdModule;\n },\n\n /**\n * Returns a module by its definition\n * @param def\n * @param opts\n */\n getModule<TConfig, TModule>(\n def: PulumiAppModuleDefinition<TModule, TConfig>,\n opts?: { optional: boolean }\n ) {\n const module = app.modules.get(def.symbol);\n\n if (!module) {\n if (opts?.optional) {\n return null;\n } else {\n throw new Error(`Module \"${def.name}\" not found in \"${app.name}\" app`);\n }\n }\n\n return module;\n },\n\n /**\n * Schedules a handler to be executed when running pulumi script.\n * Anything, that is returned from handler will be wrapped in pulumi.Output\n * so it can be used in other places.\n * @param handler Handler to be executed.\n * @returns Result of the handler wrapped with pulumi.Output\n */\n addHandler<T>(handler: () => Promise<T> | T) {\n const promise = new Promise<T>(resolve => {\n app.handlers.push(async () => {\n resolve(await handler());\n });\n });\n\n return pulumi.output(promise);\n },\n\n getParam<T>(param: PulumiAppParam<T>) {\n if (typeof param === \"function\") {\n return (param as PulumiAppParamCallback<T>)(app);\n }\n\n return param;\n }\n };\n\n return app;\n}\n\nfunction createPulumiAppResourceConfigProxy<T extends object>(obj: T) {\n return new Proxy(obj, {\n get(target, p: string) {\n type V = T[keyof T];\n const key = p as keyof T;\n const setter: PulumiAppResourceConfigSetter<V> = (\n value: V | PulumiAppResourceConfigModifier<V>\n ) => {\n if (typeof value === \"function\") {\n const modifier = value as PulumiAppResourceConfigModifier<V>;\n const currentValue = target[key];\n // Wrap a current config with a function.\n const newValue = pulumi.output(currentValue).apply(v => {\n const newValue = modifier(v);\n return pulumi.output(newValue);\n });\n\n target[key] = newValue as unknown as V;\n } else {\n target[key] = value;\n }\n };\n\n return setter;\n }\n }) as PulumiAppResourceConfigProxy<T>;\n}\n"],"mappings":"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"}
package/index.js CHANGED
@@ -3,9 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
-
7
6
  var _createPulumiApp = require("./createPulumiApp");
8
-
9
7
  Object.keys(_createPulumiApp).forEach(function (key) {
10
8
  if (key === "default" || key === "__esModule") return;
11
9
  if (key in exports && exports[key] === _createPulumiApp[key]) return;
@@ -16,9 +14,7 @@ Object.keys(_createPulumiApp).forEach(function (key) {
16
14
  }
17
15
  });
18
16
  });
19
-
20
17
  var _isResourceOfType = require("./isResourceOfType");
21
-
22
18
  Object.keys(_isResourceOfType).forEach(function (key) {
23
19
  if (key === "default" || key === "__esModule") return;
24
20
  if (key in exports && exports[key] === _isResourceOfType[key]) return;
@@ -29,9 +25,7 @@ Object.keys(_isResourceOfType).forEach(function (key) {
29
25
  }
30
26
  });
31
27
  });
32
-
33
28
  var _PulumiAppModule = require("./PulumiAppModule");
34
-
35
29
  Object.keys(_PulumiAppModule).forEach(function (key) {
36
30
  if (key === "default" || key === "__esModule") return;
37
31
  if (key in exports && exports[key] === _PulumiAppModule[key]) return;
@@ -42,9 +36,7 @@ Object.keys(_PulumiAppModule).forEach(function (key) {
42
36
  }
43
37
  });
44
38
  });
45
-
46
39
  var _PulumiAppResource = require("./PulumiAppResource");
47
-
48
40
  Object.keys(_PulumiAppResource).forEach(function (key) {
49
41
  if (key === "default" || key === "__esModule") return;
50
42
  if (key in exports && exports[key] === _PulumiAppResource[key]) return;
@@ -55,9 +47,7 @@ Object.keys(_PulumiAppResource).forEach(function (key) {
55
47
  }
56
48
  });
57
49
  });
58
-
59
50
  var _PulumiAppRemoteResource = require("./PulumiAppRemoteResource");
60
-
61
51
  Object.keys(_PulumiAppRemoteResource).forEach(function (key) {
62
52
  if (key === "default" || key === "__esModule") return;
63
53
  if (key in exports && exports[key] === _PulumiAppRemoteResource[key]) return;
@@ -68,9 +58,7 @@ Object.keys(_PulumiAppRemoteResource).forEach(function (key) {
68
58
  }
69
59
  });
70
60
  });
71
-
72
61
  var _types = require("./types");
73
-
74
62
  Object.keys(_types).forEach(function (key) {
75
63
  if (key === "default" || key === "__esModule") return;
76
64
  if (key in exports && exports[key] === _types[key]) return;
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from \"./createPulumiApp\";\nexport * from \"./isResourceOfType\";\nexport * from \"./PulumiAppModule\";\nexport * from \"./PulumiAppResource\";\nexport * from \"./PulumiAppRemoteResource\";\nexport * from \"./types\";\n"],"mappings":";;;;;;AAAA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA"}
1
+ {"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from \"./createPulumiApp\";\nexport * from \"./isResourceOfType\";\nexport * from \"./PulumiAppModule\";\nexport * from \"./PulumiAppResource\";\nexport * from \"./PulumiAppRemoteResource\";\nexport * from \"./types\";\n"],"mappings":";;;;;AAAA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA"}
@@ -4,7 +4,6 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.isResourceOfType = isResourceOfType;
7
-
8
7
  function isResourceOfType(resource, type) {
9
8
  return resource.type === type;
10
9
  }
@@ -1 +1 @@
1
- {"version":3,"names":["isResourceOfType","resource","type"],"sources":["isResourceOfType.ts"],"sourcesContent":["import { PulumiAppResource, PulumiAppResourceConstructor } from \"~/PulumiAppResource\";\n\nexport function isResourceOfType<T extends PulumiAppResourceConstructor>(\n resource: PulumiAppResource<PulumiAppResourceConstructor>,\n type: T\n): resource is PulumiAppResource<T> {\n return resource.type === type;\n}\n"],"mappings":";;;;;;;AAEO,SAASA,gBAAT,CACHC,QADG,EAEHC,IAFG,EAG6B;EAChC,OAAOD,QAAQ,CAACC,IAAT,KAAkBA,IAAzB;AACH"}
1
+ {"version":3,"names":["isResourceOfType","resource","type"],"sources":["isResourceOfType.ts"],"sourcesContent":["import { PulumiAppResource, PulumiAppResourceConstructor } from \"~/PulumiAppResource\";\n\nexport function isResourceOfType<T extends PulumiAppResourceConstructor>(\n resource: PulumiAppResource<PulumiAppResourceConstructor>,\n type: T\n): resource is PulumiAppResource<T> {\n return resource.type === type;\n}\n"],"mappings":";;;;;;AAEO,SAASA,gBAAgB,CAC5BC,QAAyD,EACzDC,IAAO,EACyB;EAChC,OAAOD,QAAQ,CAACC,IAAI,KAAKA,IAAI;AACjC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webiny/pulumi",
3
- "version": "5.35.0-beta.1",
3
+ "version": "5.35.0",
4
4
  "main": "index.js",
5
5
  "repository": {
6
6
  "type": "git",
@@ -21,8 +21,8 @@
21
21
  "@babel/cli": "^7.19.3",
22
22
  "@babel/core": "^7.19.3",
23
23
  "@types/lodash": "^4.14.190",
24
- "@webiny/cli": "^5.35.0-beta.1",
25
- "@webiny/project-utils": "^5.35.0-beta.1",
24
+ "@webiny/cli": "^5.35.0",
25
+ "@webiny/project-utils": "^5.35.0",
26
26
  "rimraf": "^3.0.2",
27
27
  "typescript": "4.7.4"
28
28
  },
@@ -30,5 +30,5 @@
30
30
  "build": "yarn webiny run build",
31
31
  "watch": "yarn webiny run watch"
32
32
  },
33
- "gitHead": "6b376faedf02e056efbbf1e4d46d537850773ce0"
33
+ "gitHead": "948cd1e05978e0ed25137ace7dd6c15ed0bf2cca"
34
34
  }