@payloadcms/plugin-stripe 0.0.16 → 0.0.18

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 (52) hide show
  1. package/README.md +36 -36
  2. package/dist/admin.d.ts +3 -0
  3. package/dist/admin.js +32 -33
  4. package/dist/admin.js.map +1 -0
  5. package/dist/extendWebpackConfig.d.ts +3 -0
  6. package/dist/extendWebpackConfig.js +26 -28
  7. package/dist/extendWebpackConfig.js.map +1 -0
  8. package/dist/fields/getFields.d.ts +11 -0
  9. package/dist/fields/getFields.js +42 -36
  10. package/dist/fields/getFields.js.map +1 -0
  11. package/dist/hooks/createNewInStripe.d.ts +7 -0
  12. package/dist/hooks/createNewInStripe.js +124 -82
  13. package/dist/hooks/createNewInStripe.js.map +1 -0
  14. package/dist/hooks/deleteFromStripe.d.ts +7 -0
  15. package/dist/hooks/deleteFromStripe.js +87 -44
  16. package/dist/hooks/deleteFromStripe.js.map +1 -0
  17. package/dist/hooks/syncExistingWithStripe.d.ts +7 -0
  18. package/dist/hooks/syncExistingWithStripe.js +93 -55
  19. package/dist/hooks/syncExistingWithStripe.js.map +1 -0
  20. package/dist/index.d.ts +3 -0
  21. package/dist/index.js +135 -109
  22. package/dist/index.js.map +1 -0
  23. package/dist/routes/rest.d.ts +9 -0
  24. package/dist/routes/rest.js +76 -35
  25. package/dist/routes/rest.js.map +1 -0
  26. package/dist/routes/webhooks.d.ts +11 -0
  27. package/dist/routes/webhooks.js +94 -59
  28. package/dist/routes/webhooks.js.map +1 -0
  29. package/dist/types.d.ts +44 -0
  30. package/dist/types.js +2 -5
  31. package/dist/types.js.map +1 -0
  32. package/dist/ui/LinkToDoc.d.ts +7 -0
  33. package/dist/ui/LinkToDoc.js +31 -43
  34. package/dist/ui/LinkToDoc.js.map +1 -0
  35. package/dist/utilities/deepen.d.ts +1 -0
  36. package/dist/utilities/deepen.js +17 -20
  37. package/dist/utilities/deepen.js.map +1 -0
  38. package/dist/utilities/stripeProxy.d.ts +2 -0
  39. package/dist/utilities/stripeProxy.js +88 -52
  40. package/dist/utilities/stripeProxy.js.map +1 -0
  41. package/dist/webhooks/handleCreatedOrUpdated.d.ts +7 -0
  42. package/dist/webhooks/handleCreatedOrUpdated.js +196 -125
  43. package/dist/webhooks/handleCreatedOrUpdated.js.map +1 -0
  44. package/dist/webhooks/handleDeleted.d.ts +7 -0
  45. package/dist/webhooks/handleDeleted.js +102 -53
  46. package/dist/webhooks/handleDeleted.js.map +1 -0
  47. package/dist/webhooks/index.d.ts +2 -0
  48. package/dist/webhooks/index.js +89 -55
  49. package/dist/webhooks/index.js.map +1 -0
  50. package/package.json +28 -13
  51. package/types.d.ts +1 -1
  52. package/types.js +1 -1
package/README.md CHANGED
@@ -26,8 +26,8 @@ Core features:
26
26
  In the `plugins` array of your [Payload config](https://payloadcms.com/docs/configuration/overview), call the plugin with [options](#options):
27
27
 
28
28
  ```js
29
- import { buildConfig } from 'payload/config'
30
- import stripePlugin from '@payloadcms/plugin-stripe'
29
+ import { buildConfig } from "payload/config";
30
+ import stripePlugin from "@payloadcms/plugin-stripe";
31
31
 
32
32
  const config = buildConfig({
33
33
  plugins: [
@@ -35,9 +35,9 @@ const config = buildConfig({
35
35
  stripeSecretKey: process.env.STRIPE_SECRET_KEY,
36
36
  }),
37
37
  ],
38
- })
38
+ });
39
39
 
40
- export default config
40
+ export default config;
41
41
  ```
42
42
 
43
43
  ### Options
@@ -75,8 +75,8 @@ This option will setup a basic sync between Payload collections and Stripe resou
75
75
  > NOTE: Due to limitations in the Stripe API, this currently only works with top-level fields. This is because every Stripe object is a separate entity, making it difficult to abstract into a simple reusable library. In the future, we may find a pattern around this. But for now, cases like that will need to be hard-coded. See the [demo](./demo) for an example of this.
76
76
 
77
77
  ```js
78
- import { buildConfig } from 'payload/config'
79
- import stripePlugin from '@payloadcms/plugin-stripe'
78
+ import { buildConfig } from "payload/config";
79
+ import stripePlugin from "@payloadcms/plugin-stripe";
80
80
 
81
81
  const config = buildConfig({
82
82
  plugins: [
@@ -85,22 +85,22 @@ const config = buildConfig({
85
85
  stripeWebhooksEndpointSecret: process.env.STRIPE_WEBHOOKS_ENDPOINT_SECRET,
86
86
  sync: [
87
87
  {
88
- collection: 'customers',
89
- stripeResourceType: 'customers',
90
- stripeResourceTypeSingular: 'customer',
88
+ collection: "customers",
89
+ stripeResourceType: "customers",
90
+ stripeResourceTypeSingular: "customer",
91
91
  fields: [
92
92
  {
93
- fieldPath: 'name', // this is a field on your own Payload config
94
- stripeProperty: 'name', // use dot notation, if applicable
93
+ fieldPath: "name", // this is a field on your own Payload config
94
+ stripeProperty: "name", // use dot notation, if applicable
95
95
  },
96
96
  ],
97
97
  },
98
98
  ],
99
99
  }),
100
100
  ],
101
- })
101
+ });
102
102
 
103
- export default config
103
+ export default config;
104
104
  ```
105
105
 
106
106
  Using `sync` will do the following:
@@ -129,21 +129,21 @@ The following custom endpoints are automatically opened for you:
129
129
 
130
130
  ```js
131
131
  const res = await fetch(`/api/stripe/rest`, {
132
- method: 'POST',
133
- credentials: 'include',
132
+ method: "POST",
133
+ credentials: "include",
134
134
  headers: {
135
- 'Content-Type': 'application/json',
135
+ "Content-Type": "application/json",
136
136
  // Authorization: `JWT ${token}` // NOTE: do this if not in a browser (i.e. curl or Postman)
137
137
  },
138
138
  body: JSON.stringify({
139
- stripeMethod: 'stripe.subscriptions.list',
139
+ stripeMethod: "stripe.subscriptions.list",
140
140
  stripeArgs: [
141
141
  {
142
- customer: 'abc',
142
+ customer: "abc",
143
143
  },
144
144
  ],
145
145
  }),
146
- })
146
+ });
147
147
  ```
148
148
 
149
149
  - #### `POST /stripe/webhooks`
@@ -169,8 +169,8 @@ Production:
169
169
  1. Then, handle these events using the `webhooks` portion of this plugin's config:
170
170
 
171
171
  ```js
172
- import { buildConfig } from 'payload/config'
173
- import stripePlugin from '@payloadcms/plugin-stripe'
172
+ import { buildConfig } from "payload/config";
173
+ import stripePlugin from "@payloadcms/plugin-stripe";
174
174
 
175
175
  const config = buildConfig({
176
176
  plugins: [
@@ -178,7 +178,7 @@ const config = buildConfig({
178
178
  stripeSecretKey: process.env.STRIPE_SECRET_KEY,
179
179
  stripeWebhooksEndpointSecret: process.env.STRIPE_WEBHOOKS_ENDPOINT_SECRET,
180
180
  webhooks: {
181
- 'customer.subscription.updated': ({ event, stripe, stripeConfig }) => {
181
+ "customer.subscription.updated": ({ event, stripe, stripeConfig }) => {
182
182
  // do something...
183
183
  },
184
184
  },
@@ -196,9 +196,9 @@ const config = buildConfig({
196
196
  // }
197
197
  }),
198
198
  ],
199
- })
199
+ });
200
200
 
201
- export default config
201
+ export default config;
202
202
  ```
203
203
 
204
204
  For a full list of available webhooks, see [here](https://stripe.com/docs/cli/trigger#trigger-event).
@@ -208,52 +208,52 @@ For a full list of available webhooks, see [here](https://stripe.com/docs/cli/tr
208
208
  On the server you should interface with Stripe directly using the [stripe](https://www.npmjs.com/package/stripe) npm module. That might look something like this:
209
209
 
210
210
  ```js
211
- import Stripe from 'stripe'
211
+ import Stripe from "stripe";
212
212
 
213
- const stripeSecretKey = process.env.STRIPE_SECRET_KEY
214
- const stripe = new Stripe(stripeSecretKey, { apiVersion: '2022-08-01' })
213
+ const stripeSecretKey = process.env.STRIPE_SECRET_KEY;
214
+ const stripe = new Stripe(stripeSecretKey, { apiVersion: "2022-08-01" });
215
215
 
216
216
  export const MyFunction = async () => {
217
217
  try {
218
218
  const customer = await stripe.customers.create({
219
219
  email: data.email,
220
- })
220
+ });
221
221
 
222
222
  // do something...
223
223
  } catch (error) {
224
- console.error(error.message)
224
+ console.error(error.message);
225
225
  }
226
- }
226
+ };
227
227
  ```
228
228
 
229
229
  Alternatively, you can interface with the Stripe using the `stripeProxy`, which is exactly what the `/api/stripe/rest` endpoint does behind-the-scenes. Here's the same example as above, but piped through the proxy:
230
230
 
231
231
  ```js
232
- import { stripeProxy } from '@payloadcms/plugin-stripe'
232
+ import { stripeProxy } from "@payloadcms/plugin-stripe";
233
233
 
234
234
  export const MyFunction = async () => {
235
235
  try {
236
236
  const customer = await stripeProxy({
237
237
  stripeSecretKey: process.env.STRIPE_SECRET_KEY,
238
- stripeMethod: 'customers.create',
238
+ stripeMethod: "customers.create",
239
239
  stripeArgs: [
240
240
  {
241
241
  email: data.email,
242
242
  },
243
243
  ],
244
- })
244
+ });
245
245
 
246
246
  if (customer.status === 200) {
247
247
  // do something...
248
248
  }
249
249
 
250
250
  if (customer.status >= 400) {
251
- throw new Error(customer.message)
251
+ throw new Error(customer.message);
252
252
  }
253
253
  } catch (error) {
254
- console.error(error.message)
254
+ console.error(error.message);
255
255
  }
256
- }
256
+ };
257
257
  ```
258
258
 
259
259
  ## TypeScript
@@ -0,0 +1,3 @@
1
+ import type { Config } from 'payload/config';
2
+ import type { StripeConfig } from './types';
3
+ export declare const stripePlugin: (incomingStripeConfig: StripeConfig) => (config: Config) => Config;
package/dist/admin.js CHANGED
@@ -1,44 +1,43 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "stripePlugin", {
6
- enumerable: true,
7
- get: function() {
8
- return stripePlugin;
9
- }
10
- });
11
- const _getFields = require("./fields/getFields");
12
- const stripePlugin = (incomingStripeConfig)=>(config)=>{
13
- const { collections } = config;
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.stripePlugin = void 0;
15
+ var getFields_1 = require("./fields/getFields");
16
+ var stripePlugin = function (incomingStripeConfig) {
17
+ return function (config) {
18
+ var _a;
19
+ var collections = config.collections;
14
20
  // set config defaults here
15
- const stripeConfig = {
16
- ...incomingStripeConfig,
21
+ var stripeConfig = __assign(__assign({}, incomingStripeConfig), {
17
22
  // TODO: in the next major version, default this to `false`
18
- rest: incomingStripeConfig?.rest ?? true,
19
- sync: incomingStripeConfig?.sync || []
20
- };
23
+ rest: (_a = incomingStripeConfig === null || incomingStripeConfig === void 0 ? void 0 : incomingStripeConfig.rest) !== null && _a !== void 0 ? _a : true, sync: (incomingStripeConfig === null || incomingStripeConfig === void 0 ? void 0 : incomingStripeConfig.sync) || [] });
21
24
  // NOTE: env variables are never passed to the client, but we need to know if `stripeSecretKey` is a test key
22
25
  // unfortunately we must set the 'isTestKey' property on the config instead of using the following code:
23
26
  // const isTestKey = stripeConfig.stripeSecretKey?.startsWith('sk_test_');
24
- return {
25
- ...config,
26
- collections: collections?.map((collection)=>{
27
- const syncConfig = stripeConfig.sync?.find((sync)=>sync.collection === collection.slug);
27
+ return __assign(__assign({}, config), { collections: collections === null || collections === void 0 ? void 0 : collections.map(function (collection) {
28
+ var _a;
29
+ var syncConfig = (_a = stripeConfig.sync) === null || _a === void 0 ? void 0 : _a.find(function (sync) { return sync.collection === collection.slug; });
28
30
  if (syncConfig) {
29
- const fields = (0, _getFields.getFields)({
30
- collection,
31
- stripeConfig,
32
- syncConfig
31
+ var fields = (0, getFields_1.getFields)({
32
+ collection: collection,
33
+ stripeConfig: stripeConfig,
34
+ syncConfig: syncConfig,
33
35
  });
34
- return {
35
- ...collection,
36
- fields
37
- };
36
+ return __assign(__assign({}, collection), { fields: fields });
38
37
  }
39
38
  return collection;
40
- })
41
- };
39
+ }) });
42
40
  };
43
-
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9hZG1pbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IENvbmZpZyB9IGZyb20gJ3BheWxvYWQvY29uZmlnJ1xuXG5pbXBvcnQgdHlwZSB7IFNhbml0aXplZFN0cmlwZUNvbmZpZywgU3RyaXBlQ29uZmlnIH0gZnJvbSAnLi90eXBlcydcblxuaW1wb3J0IHsgZ2V0RmllbGRzIH0gZnJvbSAnLi9maWVsZHMvZ2V0RmllbGRzJ1xuXG5leHBvcnQgY29uc3Qgc3RyaXBlUGx1Z2luID1cbiAgKGluY29taW5nU3RyaXBlQ29uZmlnOiBTdHJpcGVDb25maWcpID0+XG4gIChjb25maWc6IENvbmZpZyk6IENvbmZpZyA9PiB7XG4gICAgY29uc3QgeyBjb2xsZWN0aW9ucyB9ID0gY29uZmlnXG5cbiAgICAvLyBzZXQgY29uZmlnIGRlZmF1bHRzIGhlcmVcbiAgICBjb25zdCBzdHJpcGVDb25maWc6IFNhbml0aXplZFN0cmlwZUNvbmZpZyA9IHtcbiAgICAgIC4uLmluY29taW5nU3RyaXBlQ29uZmlnLFxuICAgICAgLy8gVE9ETzogaW4gdGhlIG5leHQgbWFqb3IgdmVyc2lvbiwgZGVmYXVsdCB0aGlzIHRvIGBmYWxzZWBcbiAgICAgIHJlc3Q6IGluY29taW5nU3RyaXBlQ29uZmlnPy5yZXN0ID8/IHRydWUsXG4gICAgICBzeW5jOiBpbmNvbWluZ1N0cmlwZUNvbmZpZz8uc3luYyB8fCBbXSxcbiAgICB9XG5cbiAgICAvLyBOT1RFOiBlbnYgdmFyaWFibGVzIGFyZSBuZXZlciBwYXNzZWQgdG8gdGhlIGNsaWVudCwgYnV0IHdlIG5lZWQgdG8ga25vdyBpZiBgc3RyaXBlU2VjcmV0S2V5YCBpcyBhIHRlc3Qga2V5XG4gICAgLy8gdW5mb3J0dW5hdGVseSB3ZSBtdXN0IHNldCB0aGUgJ2lzVGVzdEtleScgcHJvcGVydHkgb24gdGhlIGNvbmZpZyBpbnN0ZWFkIG9mIHVzaW5nIHRoZSBmb2xsb3dpbmcgY29kZTpcbiAgICAvLyBjb25zdCBpc1Rlc3RLZXkgPSBzdHJpcGVDb25maWcuc3RyaXBlU2VjcmV0S2V5Py5zdGFydHNXaXRoKCdza190ZXN0XycpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLmNvbmZpZyxcbiAgICAgIGNvbGxlY3Rpb25zOiBjb2xsZWN0aW9ucz8ubWFwKChjb2xsZWN0aW9uKSA9PiB7XG4gICAgICAgIGNvbnN0IHN5bmNDb25maWcgPSBzdHJpcGVDb25maWcuc3luYz8uZmluZCgoc3luYykgPT4gc3luYy5jb2xsZWN0aW9uID09PSBjb2xsZWN0aW9uLnNsdWcpXG5cbiAgICAgICAgaWYgKHN5bmNDb25maWcpIHtcbiAgICAgICAgICBjb25zdCBmaWVsZHMgPSBnZXRGaWVsZHMoe1xuICAgICAgICAgICAgY29sbGVjdGlvbixcbiAgICAgICAgICAgIHN0cmlwZUNvbmZpZyxcbiAgICAgICAgICAgIHN5bmNDb25maWcsXG4gICAgICAgICAgfSlcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgLi4uY29sbGVjdGlvbixcbiAgICAgICAgICAgIGZpZWxkcyxcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gY29sbGVjdGlvblxuICAgICAgfSksXG4gICAgfVxuICB9XG4iXSwibmFtZXMiOlsic3RyaXBlUGx1Z2luIiwiaW5jb21pbmdTdHJpcGVDb25maWciLCJjb25maWciLCJjb2xsZWN0aW9ucyIsInN0cmlwZUNvbmZpZyIsInJlc3QiLCJzeW5jIiwibWFwIiwiY29sbGVjdGlvbiIsInN5bmNDb25maWciLCJmaW5kIiwic2x1ZyIsImZpZWxkcyIsImdldEZpZWxkcyJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFNYUE7OztlQUFBQTs7OzJCQUZhO0FBRW5CLE1BQU1BLGVBQ1gsQ0FBQ0MsdUJBQ0QsQ0FBQ0M7UUFDQyxNQUFNLEVBQUVDLFdBQVcsRUFBRSxHQUFHRDtRQUV4QiwyQkFBMkI7UUFDM0IsTUFBTUUsZUFBc0M7WUFDMUMsR0FBR0gsb0JBQW9CO1lBQ3ZCLDJEQUEyRDtZQUMzREksTUFBTUosc0JBQXNCSSxRQUFRO1lBQ3BDQyxNQUFNTCxzQkFBc0JLLFFBQVEsRUFBRTtRQUN4QztRQUVBLDZHQUE2RztRQUM3Ryx3R0FBd0c7UUFDeEcsMEVBQTBFO1FBRTFFLE9BQU87WUFDTCxHQUFHSixNQUFNO1lBQ1RDLGFBQWFBLGFBQWFJLElBQUksQ0FBQ0M7Z0JBQzdCLE1BQU1DLGFBQWFMLGFBQWFFLElBQUksRUFBRUksS0FBSyxDQUFDSixPQUFTQSxLQUFLRSxVQUFVLEtBQUtBLFdBQVdHLElBQUk7Z0JBRXhGLElBQUlGLFlBQVk7b0JBQ2QsTUFBTUcsU0FBU0MsSUFBQUEsb0JBQVMsRUFBQzt3QkFDdkJMO3dCQUNBSjt3QkFDQUs7b0JBQ0Y7b0JBQ0EsT0FBTzt3QkFDTCxHQUFHRCxVQUFVO3dCQUNiSTtvQkFDRjtnQkFDRjtnQkFFQSxPQUFPSjtZQUNUO1FBQ0Y7SUFDRiJ9
41
+ };
42
+ exports.stripePlugin = stripePlugin;
43
+ //# sourceMappingURL=admin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin.js","sourceRoot":"","sources":["../src/admin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAEA,gDAA8C;AAGvC,IAAM,YAAY,GACvB,UAAC,oBAAkC;IACnC,OAAA,UAAC,MAAc;;QACL,IAAA,WAAW,GAAK,MAAM,YAAX,CAAW;QAE9B,2BAA2B;QAC3B,IAAM,YAAY,yBACb,oBAAoB;YACvB,2DAA2D;YAC3D,IAAI,EAAE,MAAA,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,IAAI,mCAAI,IAAI,EACxC,IAAI,EAAE,CAAA,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,IAAI,KAAI,EAAE,GACvC,CAAA;QAED,6GAA6G;QAC7G,wGAAwG;QACxG,0EAA0E;QAE1E,6BACK,MAAM,KACT,WAAW,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,GAAG,CAAC,UAAA,UAAU;;gBACtC,IAAM,UAAU,GAAG,MAAA,YAAY,CAAC,IAAI,0CAAE,IAAI,CAAC,UAAA,IAAI,IAAI,OAAA,IAAI,CAAC,UAAU,KAAK,UAAU,CAAC,IAAI,EAAnC,CAAmC,CAAC,CAAA;gBAEvF,IAAI,UAAU,EAAE;oBACd,IAAM,MAAM,GAAG,IAAA,qBAAS,EAAC;wBACvB,UAAU,YAAA;wBACV,YAAY,cAAA;wBACZ,UAAU,YAAA;qBACX,CAAC,CAAA;oBACF,6BACK,UAAU,KACb,MAAM,QAAA,IACP;iBACF;gBAED,OAAO,UAAU,CAAA;YACnB,CAAC,CAAC,IACH;IACH,CAAC;AAnCD,CAmCC,CAAA;AArCU,QAAA,YAAY,gBAqCtB"}
@@ -0,0 +1,3 @@
1
+ import type { Config } from 'payload/config';
2
+ import type { Configuration as WebpackConfig } from 'webpack';
3
+ export declare const extendWebpackConfig: (config: Config) => (webpackConfig: WebpackConfig) => WebpackConfig;
@@ -1,31 +1,29 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "extendWebpackConfig", {
6
- enumerable: true,
7
- get: function() {
8
- return extendWebpackConfig;
9
- }
10
- });
11
- const _path = /*#__PURE__*/ _interop_require_default(require("path"));
12
- function _interop_require_default(obj) {
13
- return obj && obj.__esModule ? obj : {
14
- default: obj
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
15
10
  };
16
- }
17
- const extendWebpackConfig = (config)=>(webpackConfig)=>{
18
- const existingWebpackConfig = typeof config.admin?.webpack === 'function' ? config.admin.webpack(webpackConfig) : webpackConfig;
19
- return {
20
- ...existingWebpackConfig,
21
- resolve: {
22
- ...existingWebpackConfig.resolve || {},
23
- alias: {
24
- ...existingWebpackConfig.resolve?.alias ? existingWebpackConfig.resolve.alias : {},
25
- '@payloadcms/plugin-stripe': _path.default.resolve(__dirname, './admin.js')
26
- }
27
- }
28
- };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.extendWebpackConfig = void 0;
18
+ var path_1 = __importDefault(require("path"));
19
+ var extendWebpackConfig = function (config) {
20
+ return function (webpackConfig) {
21
+ var _a, _b;
22
+ var existingWebpackConfig = typeof ((_a = config.admin) === null || _a === void 0 ? void 0 : _a.webpack) === 'function'
23
+ ? config.admin.webpack(webpackConfig)
24
+ : webpackConfig;
25
+ return __assign(__assign({}, existingWebpackConfig), { resolve: __assign(__assign({}, (existingWebpackConfig.resolve || {})), { alias: __assign(__assign({}, (((_b = existingWebpackConfig.resolve) === null || _b === void 0 ? void 0 : _b.alias) ? existingWebpackConfig.resolve.alias : {})), { '@payloadcms/plugin-stripe': path_1.default.resolve(__dirname, './admin.js') }) }) });
29
26
  };
30
-
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9leHRlbmRXZWJwYWNrQ29uZmlnLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ29uZmlnIH0gZnJvbSAncGF5bG9hZC9jb25maWcnXG5pbXBvcnQgdHlwZSB7IENvbmZpZ3VyYXRpb24gYXMgV2VicGFja0NvbmZpZyB9IGZyb20gJ3dlYnBhY2snXG5cbmltcG9ydCBwYXRoIGZyb20gJ3BhdGgnXG5cbmV4cG9ydCBjb25zdCBleHRlbmRXZWJwYWNrQ29uZmlnID1cbiAgKGNvbmZpZzogQ29uZmlnKTogKCh3ZWJwYWNrQ29uZmlnOiBXZWJwYWNrQ29uZmlnKSA9PiBXZWJwYWNrQ29uZmlnKSA9PlxuICAod2VicGFja0NvbmZpZykgPT4ge1xuICAgIGNvbnN0IGV4aXN0aW5nV2VicGFja0NvbmZpZyA9XG4gICAgICB0eXBlb2YgY29uZmlnLmFkbWluPy53ZWJwYWNrID09PSAnZnVuY3Rpb24nXG4gICAgICAgID8gY29uZmlnLmFkbWluLndlYnBhY2sod2VicGFja0NvbmZpZylcbiAgICAgICAgOiB3ZWJwYWNrQ29uZmlnXG5cbiAgICByZXR1cm4ge1xuICAgICAgLi4uZXhpc3RpbmdXZWJwYWNrQ29uZmlnLFxuICAgICAgcmVzb2x2ZToge1xuICAgICAgICAuLi4oZXhpc3RpbmdXZWJwYWNrQ29uZmlnLnJlc29sdmUgfHwge30pLFxuICAgICAgICBhbGlhczoge1xuICAgICAgICAgIC4uLihleGlzdGluZ1dlYnBhY2tDb25maWcucmVzb2x2ZT8uYWxpYXMgPyBleGlzdGluZ1dlYnBhY2tDb25maWcucmVzb2x2ZS5hbGlhcyA6IHt9KSxcbiAgICAgICAgICAnQHBheWxvYWRjbXMvcGx1Z2luLXN0cmlwZSc6IHBhdGgucmVzb2x2ZShfX2Rpcm5hbWUsICcuL2FkbWluLmpzJyksXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH1cbiAgfVxuIl0sIm5hbWVzIjpbImV4dGVuZFdlYnBhY2tDb25maWciLCJjb25maWciLCJ3ZWJwYWNrQ29uZmlnIiwiZXhpc3RpbmdXZWJwYWNrQ29uZmlnIiwiYWRtaW4iLCJ3ZWJwYWNrIiwicmVzb2x2ZSIsImFsaWFzIiwicGF0aCIsIl9fZGlybmFtZSJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFLYUE7OztlQUFBQTs7OzZEQUZJOzs7Ozs7QUFFVixNQUFNQSxzQkFDWCxDQUFDQyxTQUNELENBQUNDO1FBQ0MsTUFBTUMsd0JBQ0osT0FBT0YsT0FBT0csS0FBSyxFQUFFQyxZQUFZLGFBQzdCSixPQUFPRyxLQUFLLENBQUNDLE9BQU8sQ0FBQ0gsaUJBQ3JCQTtRQUVOLE9BQU87WUFDTCxHQUFHQyxxQkFBcUI7WUFDeEJHLFNBQVM7Z0JBQ1AsR0FBSUgsc0JBQXNCRyxPQUFPLElBQUksQ0FBQyxDQUFDO2dCQUN2Q0MsT0FBTztvQkFDTCxHQUFJSixzQkFBc0JHLE9BQU8sRUFBRUMsUUFBUUosc0JBQXNCRyxPQUFPLENBQUNDLEtBQUssR0FBRyxDQUFDLENBQUM7b0JBQ25GLDZCQUE2QkMsYUFBSSxDQUFDRixPQUFPLENBQUNHLFdBQVc7Z0JBQ3ZEO1lBQ0Y7UUFDRjtJQUNGIn0=
27
+ };
28
+ exports.extendWebpackConfig = extendWebpackConfig;
29
+ //# sourceMappingURL=extendWebpackConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extendWebpackConfig.js","sourceRoot":"","sources":["../src/extendWebpackConfig.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,8CAAuB;AAIhB,IAAM,mBAAmB,GAC9B,UAAC,MAAc;IACf,OAAA,UAAA,aAAa;;QACX,IAAM,qBAAqB,GACzB,OAAO,CAAA,MAAA,MAAM,CAAC,KAAK,0CAAE,OAAO,CAAA,KAAK,UAAU;YACzC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC;YACrC,CAAC,CAAC,aAAa,CAAA;QAEnB,6BACK,qBAAqB,KACxB,OAAO,wBACF,CAAC,qBAAqB,CAAC,OAAO,IAAI,EAAE,CAAC,KACxC,KAAK,wBACA,CAAC,CAAA,MAAA,qBAAqB,CAAC,OAAO,0CAAE,KAAK,EAAC,CAAC,CAAC,qBAAqB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,KACpF,2BAA2B,EAAE,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,YAAY,CAAC,UAGvE;IACH,CAAC;AAhBD,CAgBC,CAAA;AAlBU,QAAA,mBAAmB,uBAkB7B"}
@@ -0,0 +1,11 @@
1
+ import type { CollectionConfig, Field } from 'payload/types';
2
+ import type { SanitizedStripeConfig } from '../types';
3
+ interface Args {
4
+ collection: CollectionConfig;
5
+ stripeConfig: SanitizedStripeConfig;
6
+ syncConfig: {
7
+ stripeResourceType: string;
8
+ };
9
+ }
10
+ export declare const getFields: ({ collection, stripeConfig, syncConfig }: Args) => Field[];
11
+ export {};
@@ -1,56 +1,62 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "getFields", {
6
- enumerable: true,
7
- get: function() {
8
- return getFields;
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
14
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
15
+ if (ar || !(i in from)) {
16
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
17
+ ar[i] = from[i];
18
+ }
9
19
  }
10
- });
11
- const _LinkToDoc = require("../ui/LinkToDoc");
12
- const getFields = ({ collection, stripeConfig, syncConfig })=>{
13
- const stripeIDField = {
20
+ return to.concat(ar || Array.prototype.slice.call(from));
21
+ };
22
+ Object.defineProperty(exports, "__esModule", { value: true });
23
+ exports.getFields = void 0;
24
+ var LinkToDoc_1 = require("../ui/LinkToDoc");
25
+ var getFields = function (_a) {
26
+ var collection = _a.collection, stripeConfig = _a.stripeConfig, syncConfig = _a.syncConfig;
27
+ var stripeIDField = {
14
28
  name: 'stripeID',
29
+ label: 'Stripe ID',
30
+ type: 'text',
31
+ saveToJWT: true,
15
32
  admin: {
16
33
  position: 'sidebar',
17
- readOnly: true
34
+ readOnly: true,
18
35
  },
19
- label: 'Stripe ID',
20
- saveToJWT: true,
21
- type: 'text'
22
36
  };
23
- const skipSyncField = {
37
+ var skipSyncField = {
24
38
  name: 'skipSync',
39
+ label: 'Skip Sync',
40
+ type: 'checkbox',
25
41
  admin: {
26
42
  position: 'sidebar',
27
- readOnly: true
43
+ readOnly: true,
28
44
  },
29
- label: 'Skip Sync',
30
- type: 'checkbox'
31
45
  };
32
- const docUrlField = {
46
+ var docUrlField = {
33
47
  name: 'docUrl',
48
+ type: 'ui',
34
49
  admin: {
50
+ position: 'sidebar',
35
51
  components: {
36
- Field: (args)=>(0, _LinkToDoc.LinkToDoc)({
37
- ...args,
38
- isTestKey: stripeConfig.isTestKey,
39
- nameOfIDField: 'stripeID',
40
- stripeResourceType: syncConfig.stripeResourceType
41
- })
52
+ Field: function (args) {
53
+ return (0, LinkToDoc_1.LinkToDoc)(__assign(__assign({}, args), { isTestKey: stripeConfig.isTestKey, stripeResourceType: syncConfig.stripeResourceType, nameOfIDField: 'stripeID' }));
54
+ },
42
55
  },
43
- position: 'sidebar'
44
56
  },
45
- type: 'ui'
46
57
  };
47
- const fields = [
48
- ...collection.fields,
49
- stripeIDField,
50
- skipSyncField,
51
- docUrlField
52
- ];
58
+ var fields = __spreadArray(__spreadArray([], collection.fields, true), [stripeIDField, skipSyncField, docUrlField], false);
53
59
  return fields;
54
60
  };
55
-
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9maWVsZHMvZ2V0RmllbGRzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ29sbGVjdGlvbkNvbmZpZywgRmllbGQgfSBmcm9tICdwYXlsb2FkL3R5cGVzJ1xuXG5pbXBvcnQgdHlwZSB7IFNhbml0aXplZFN0cmlwZUNvbmZpZyB9IGZyb20gJy4uL3R5cGVzJ1xuXG5pbXBvcnQgeyBMaW5rVG9Eb2MgfSBmcm9tICcuLi91aS9MaW5rVG9Eb2MnXG5cbmludGVyZmFjZSBBcmdzIHtcbiAgY29sbGVjdGlvbjogQ29sbGVjdGlvbkNvbmZpZ1xuICBzdHJpcGVDb25maWc6IFNhbml0aXplZFN0cmlwZUNvbmZpZ1xuICBzeW5jQ29uZmlnOiB7XG4gICAgc3RyaXBlUmVzb3VyY2VUeXBlOiBzdHJpbmdcbiAgfVxufVxuXG5leHBvcnQgY29uc3QgZ2V0RmllbGRzID0gKHsgY29sbGVjdGlvbiwgc3RyaXBlQ29uZmlnLCBzeW5jQ29uZmlnIH06IEFyZ3MpOiBGaWVsZFtdID0+IHtcbiAgY29uc3Qgc3RyaXBlSURGaWVsZDogRmllbGQgPSB7XG4gICAgbmFtZTogJ3N0cmlwZUlEJyxcbiAgICBhZG1pbjoge1xuICAgICAgcG9zaXRpb246ICdzaWRlYmFyJyxcbiAgICAgIHJlYWRPbmx5OiB0cnVlLFxuICAgIH0sXG4gICAgbGFiZWw6ICdTdHJpcGUgSUQnLFxuICAgIHNhdmVUb0pXVDogdHJ1ZSxcbiAgICB0eXBlOiAndGV4dCcsXG4gIH1cblxuICBjb25zdCBza2lwU3luY0ZpZWxkOiBGaWVsZCA9IHtcbiAgICBuYW1lOiAnc2tpcFN5bmMnLFxuICAgIGFkbWluOiB7XG4gICAgICBwb3NpdGlvbjogJ3NpZGViYXInLFxuICAgICAgcmVhZE9ubHk6IHRydWUsXG4gICAgfSxcbiAgICBsYWJlbDogJ1NraXAgU3luYycsXG4gICAgdHlwZTogJ2NoZWNrYm94JyxcbiAgfVxuXG4gIGNvbnN0IGRvY1VybEZpZWxkOiBGaWVsZCA9IHtcbiAgICBuYW1lOiAnZG9jVXJsJyxcbiAgICBhZG1pbjoge1xuICAgICAgY29tcG9uZW50czoge1xuICAgICAgICBGaWVsZDogKGFyZ3MpID0+XG4gICAgICAgICAgTGlua1RvRG9jKHtcbiAgICAgICAgICAgIC4uLmFyZ3MsXG4gICAgICAgICAgICBpc1Rlc3RLZXk6IHN0cmlwZUNvbmZpZy5pc1Rlc3RLZXksXG4gICAgICAgICAgICBuYW1lT2ZJREZpZWxkOiAnc3RyaXBlSUQnLFxuICAgICAgICAgICAgc3RyaXBlUmVzb3VyY2VUeXBlOiBzeW5jQ29uZmlnLnN0cmlwZVJlc291cmNlVHlwZSxcbiAgICAgICAgICB9KSxcbiAgICAgIH0sXG4gICAgICBwb3NpdGlvbjogJ3NpZGViYXInLFxuICAgIH0sXG4gICAgdHlwZTogJ3VpJyxcbiAgfVxuXG4gIGNvbnN0IGZpZWxkcyA9IFsuLi5jb2xsZWN0aW9uLmZpZWxkcywgc3RyaXBlSURGaWVsZCwgc2tpcFN5bmNGaWVsZCwgZG9jVXJsRmllbGRdXG5cbiAgcmV0dXJuIGZpZWxkc1xufVxuIl0sIm5hbWVzIjpbImdldEZpZWxkcyIsImNvbGxlY3Rpb24iLCJzdHJpcGVDb25maWciLCJzeW5jQ29uZmlnIiwic3RyaXBlSURGaWVsZCIsIm5hbWUiLCJhZG1pbiIsInBvc2l0aW9uIiwicmVhZE9ubHkiLCJsYWJlbCIsInNhdmVUb0pXVCIsInR5cGUiLCJza2lwU3luY0ZpZWxkIiwiZG9jVXJsRmllbGQiLCJjb21wb25lbnRzIiwiRmllbGQiLCJhcmdzIiwiTGlua1RvRG9jIiwiaXNUZXN0S2V5IiwibmFtZU9mSURGaWVsZCIsInN0cmlwZVJlc291cmNlVHlwZSIsImZpZWxkcyJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFjYUE7OztlQUFBQTs7OzJCQVZhO0FBVW5CLE1BQU1BLFlBQVksQ0FBQyxFQUFFQyxVQUFVLEVBQUVDLFlBQVksRUFBRUMsVUFBVSxFQUFRO0lBQ3RFLE1BQU1DLGdCQUF1QjtRQUMzQkMsTUFBTTtRQUNOQyxPQUFPO1lBQ0xDLFVBQVU7WUFDVkMsVUFBVTtRQUNaO1FBQ0FDLE9BQU87UUFDUEMsV0FBVztRQUNYQyxNQUFNO0lBQ1I7SUFFQSxNQUFNQyxnQkFBdUI7UUFDM0JQLE1BQU07UUFDTkMsT0FBTztZQUNMQyxVQUFVO1lBQ1ZDLFVBQVU7UUFDWjtRQUNBQyxPQUFPO1FBQ1BFLE1BQU07SUFDUjtJQUVBLE1BQU1FLGNBQXFCO1FBQ3pCUixNQUFNO1FBQ05DLE9BQU87WUFDTFEsWUFBWTtnQkFDVkMsT0FBTyxDQUFDQyxPQUNOQyxJQUFBQSxvQkFBUyxFQUFDO3dCQUNSLEdBQUdELElBQUk7d0JBQ1BFLFdBQVdoQixhQUFhZ0IsU0FBUzt3QkFDakNDLGVBQWU7d0JBQ2ZDLG9CQUFvQmpCLFdBQVdpQixrQkFBa0I7b0JBQ25EO1lBQ0o7WUFDQWIsVUFBVTtRQUNaO1FBQ0FJLE1BQU07SUFDUjtJQUVBLE1BQU1VLFNBQVM7V0FBSXBCLFdBQVdvQixNQUFNO1FBQUVqQjtRQUFlUTtRQUFlQztLQUFZO0lBRWhGLE9BQU9RO0FBQ1QifQ==
61
+ exports.getFields = getFields;
62
+ //# sourceMappingURL=getFields.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getFields.js","sourceRoot":"","sources":["../../src/fields/getFields.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAGA,6CAA2C;AAUpC,IAAM,SAAS,GAAG,UAAC,EAA8C;QAA5C,UAAU,gBAAA,EAAE,YAAY,kBAAA,EAAE,UAAU,gBAAA;IAC9D,IAAM,aAAa,GAAU;QAC3B,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,WAAW;QAClB,IAAI,EAAE,MAAM;QACZ,SAAS,EAAE,IAAI;QACf,KAAK,EAAE;YACL,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE,IAAI;SACf;KACF,CAAA;IAED,IAAM,aAAa,GAAU;QAC3B,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,WAAW;QAClB,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE;YACL,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE,IAAI;SACf;KACF,CAAA;IAED,IAAM,WAAW,GAAU;QACzB,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,IAAI;QACV,KAAK,EAAE;YACL,QAAQ,EAAE,SAAS;YACnB,UAAU,EAAE;gBACV,KAAK,EAAE,UAAA,IAAI;oBACT,OAAA,IAAA,qBAAS,wBACJ,IAAI,KACP,SAAS,EAAE,YAAY,CAAC,SAAS,EACjC,kBAAkB,EAAE,UAAU,CAAC,kBAAkB,EACjD,aAAa,EAAE,UAAU,IACzB;gBALF,CAKE;aACL;SACF;KACF,CAAA;IAED,IAAM,MAAM,mCAAO,UAAU,CAAC,MAAM,UAAE,aAAa,EAAE,aAAa,EAAE,WAAW,SAAC,CAAA;IAEhF,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AA1CY,QAAA,SAAS,aA0CrB"}
@@ -0,0 +1,7 @@
1
+ import type { CollectionBeforeValidateHook, CollectionConfig } from 'payload/types';
2
+ import type { StripeConfig } from '../types';
3
+ export type CollectionBeforeValidateHookWithArgs = (args: Parameters<CollectionBeforeValidateHook>[0] & {
4
+ collection?: CollectionConfig;
5
+ stripeConfig?: StripeConfig;
6
+ }) => void;
7
+ export declare const createNewInStripe: CollectionBeforeValidateHookWithArgs;