@data-client/rest 0.4.1 → 0.6.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.
Files changed (53) hide show
  1. package/dist/index.js +44 -5
  2. package/dist/index.umd.min.js +1 -1
  3. package/dist/next.js +44 -5
  4. package/legacy/createResource.js +39 -8
  5. package/legacy/index.js +1 -1
  6. package/legacy/next/index.js +1 -1
  7. package/legacy/resourceExtendable.js +2 -0
  8. package/legacy/resourceExtensionTypes.js +2 -0
  9. package/legacy/resourceTypes.js +1 -1
  10. package/lib/RestEndpoint.d.ts +1 -1
  11. package/lib/createResource.d.ts +2 -96
  12. package/lib/createResource.d.ts.map +1 -1
  13. package/lib/createResource.js +45 -6
  14. package/lib/index.d.ts +1 -1
  15. package/lib/index.d.ts.map +1 -1
  16. package/lib/index.js +1 -1
  17. package/lib/next/index.d.ts +1 -1
  18. package/lib/next/index.d.ts.map +1 -1
  19. package/lib/next/index.js +1 -1
  20. package/lib/resourceExtendable.d.ts +25 -0
  21. package/lib/resourceExtendable.d.ts.map +1 -0
  22. package/lib/resourceExtendable.js +2 -0
  23. package/lib/resourceExtensionTypes.d.ts +33 -0
  24. package/lib/resourceExtensionTypes.d.ts.map +1 -0
  25. package/lib/resourceExtensionTypes.js +2 -0
  26. package/lib/resourceTypes.d.ts +94 -4
  27. package/lib/resourceTypes.d.ts.map +1 -1
  28. package/lib/resourceTypes.js +1 -1
  29. package/package.json +1 -1
  30. package/src/RestEndpoint.d.ts +1 -1
  31. package/src/__tests__/createResource.test.ts +490 -19
  32. package/src/createResource.ts +60 -127
  33. package/src/index.ts +1 -1
  34. package/src/next/index.ts +1 -1
  35. package/src/resourceExtendable.ts +95 -0
  36. package/src/resourceExtensionTypes.ts +109 -0
  37. package/src/resourceTypes.ts +119 -4
  38. package/ts4.0/RestEndpoint.d.ts +1 -1
  39. package/ts4.0/createResource.d.ts +2 -108
  40. package/ts4.0/index.d.ts +1 -1
  41. package/ts4.0/next/index.d.ts +1 -1
  42. package/ts4.0/resourceExtendable.d.ts +21 -0
  43. package/ts4.0/resourceExtensionTypes.d.ts +33 -0
  44. package/ts4.0/resourceTypes.d.ts +102 -4
  45. package/ts4.1/RestEndpoint.d.ts +1 -1
  46. package/ts4.1/createResource.d.ts +2 -108
  47. package/ts4.1/index.d.ts +1 -1
  48. package/ts4.1/next/index.d.ts +1 -1
  49. package/ts4.1/resourceExtendable.d.ts +21 -0
  50. package/ts4.1/resourceExtensionTypes.d.ts +33 -0
  51. package/ts4.1/resourceTypes.d.ts +102 -4
  52. package/ts4.0/deleteme.d.ts +0 -0
  53. package/ts4.1/deleteme.d.ts +0 -0
@@ -15,11 +15,14 @@ export default function createResource({
15
15
  schema,
16
16
  Endpoint = RestEndpoint,
17
17
  optimistic,
18
- paginationField,
19
18
  ...extraOptions
20
19
  }) {
21
20
  const shortenedPath = shortenPath(path);
22
21
  const getName = name => `${schema == null ? void 0 : schema.name}.${name}`;
22
+ // this accounts for derivative endpoints
23
+ function extendMember(extended, key, options) {
24
+ extended[key] = extended[key].extend(options);
25
+ }
23
26
  const extraMutateOptions = {
24
27
  ...extraOptions
25
28
  };
@@ -45,6 +48,7 @@ export default function createResource({
45
48
  const ret = {
46
49
  get,
47
50
  getList,
51
+ // TODO(deprecated): remove this once we remove creates
48
52
  create: getList.push.extend({
49
53
  name: getName('create')
50
54
  }),
@@ -72,15 +76,47 @@ export default function createResource({
72
76
  return res && Object.keys(res).length ? res : params;
73
77
  },
74
78
  getOptimisticResponse: optimistic ? optimisticDelete : undefined
75
- })
79
+ }),
80
+ extend(...args) {
81
+ if (typeof args[0] === 'string') {
82
+ const [key, options] = args;
83
+ if (key in this) {
84
+ const extended = {
85
+ ...this
86
+ };
87
+ extendMember(extended, key, options);
88
+ return extended;
89
+ } else {
90
+ return {
91
+ ...this,
92
+ [key]: this.get.extend(options)
93
+ };
94
+ }
95
+ } else if (typeof args[0] === 'function') {
96
+ const extended = args[0](this);
97
+ return {
98
+ ...this,
99
+ ...extended
100
+ };
101
+ }
102
+ const overrides = args[0];
103
+ const extended = {
104
+ ...this
105
+ };
106
+ for (const key in overrides) {
107
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
108
+ // @ts-ignore
109
+ extendMember(extended, key, overrides[key]);
110
+ }
111
+ return extended;
112
+ }
76
113
  };
77
- if (paginationField) ret.getNextPage = getList.paginated(paginationField);
78
114
  return ret;
79
115
  }
80
116
  function optimisticUpdate(snap, params, body) {
81
117
  return {
82
118
  ...params,
83
- ...body
119
+ ...ensureBodyPojo(body)
84
120
  };
85
121
  }
86
122
  function optimisticPartial(getEndpoint) {
@@ -93,11 +129,14 @@ function optimisticPartial(getEndpoint) {
93
129
  ...params,
94
130
  ...data,
95
131
  // even tho we don't always have two arguments, the extra one will simply be undefined which spreads fine
96
- ...body
132
+ ...ensureBodyPojo(body)
97
133
  };
98
134
  };
99
135
  }
100
136
  function optimisticDelete(snap, params) {
101
137
  return params;
102
138
  }
103
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJBYm9ydE9wdGltaXN0aWMiLCJzY2hlbWEiLCJSZXN0RW5kcG9pbnQiLCJzaG9ydGVuUGF0aCIsIkludmFsaWRhdGUiLCJDb2xsZWN0aW9uIiwiY3JlYXRlUmVzb3VyY2UiLCJwYXRoIiwiRW5kcG9pbnQiLCJvcHRpbWlzdGljIiwicGFnaW5hdGlvbkZpZWxkIiwiZXh0cmFPcHRpb25zIiwic2hvcnRlbmVkUGF0aCIsImdldE5hbWUiLCJuYW1lIiwiZXh0cmFNdXRhdGVPcHRpb25zIiwiZXh0cmFQYXJ0aWFsT3B0aW9ucyIsImdldCIsImdldE9wdGltaXN0aWNSZXNwb25zZSIsIm9wdGltaXN0aWNVcGRhdGUiLCJvcHRpbWlzdGljUGFydGlhbCIsImdldExpc3QiLCJyZXQiLCJjcmVhdGUiLCJwdXNoIiwiZXh0ZW5kIiwidXBkYXRlIiwibWV0aG9kIiwicGFydGlhbFVwZGF0ZSIsImRlbGV0ZSIsInByb2Nlc3MiLCJyZXMiLCJwYXJhbXMiLCJPYmplY3QiLCJrZXlzIiwibGVuZ3RoIiwib3B0aW1pc3RpY0RlbGV0ZSIsInVuZGVmaW5lZCIsImdldE5leHRQYWdlIiwicGFnaW5hdGVkIiwic25hcCIsImJvZHkiLCJnZXRFbmRwb2ludCIsImRhdGEiLCJnZXRSZXNwb25zZSJdLCJzb3VyY2VzIjpbIi4uL3NyYy9jcmVhdGVSZXNvdXJjZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBYm9ydE9wdGltaXN0aWMsXG4gIFNuYXBzaG90SW50ZXJmYWNlLFxuICBzY2hlbWEsXG59IGZyb20gJ0BkYXRhLWNsaWVudC9lbmRwb2ludCc7XG5pbXBvcnQgdHlwZSB7IERlbm9ybWFsaXplIH0gZnJvbSAnQGRhdGEtY2xpZW50L2VuZHBvaW50JztcblxuaW1wb3J0IHsgUGF0aEFyZ3MsIFJlc291cmNlUGF0aCwgU2hvcnRlblBhdGggfSBmcm9tICcuL3BhdGhUeXBlcy5qcyc7XG5pbXBvcnQgeyBSZXNvdXJjZUdlbmVyaWNzLCBSZXNvdXJjZU9wdGlvbnMgfSBmcm9tICcuL3Jlc291cmNlVHlwZXMuanMnO1xuaW1wb3J0IFJlc3RFbmRwb2ludCwge1xuICBHZXRFbmRwb2ludCxcbiAgTXV0YXRlRW5kcG9pbnQsXG4gIFBhZ2luYXRpb25GaWVsZEVuZHBvaW50LFxuICBSZXN0VHlwZU5vQm9keSxcbn0gZnJvbSAnLi9SZXN0RW5kcG9pbnQuanMnO1xuaW1wb3J0IHsgc2hvcnRlblBhdGggfSBmcm9tICcuL1Jlc3RIZWxwZXJzLmpzJztcblxuY29uc3QgeyBJbnZhbGlkYXRlLCBDb2xsZWN0aW9uIH0gPSBzY2hlbWE7XG5cbi8qKiBDcmVhdGVzIGNvbGxlY3Rpb24gb2YgRW5kcG9pbnRzIGZvciBjb21tb24gb3BlcmF0aW9ucyBvbiBhIGdpdmVuIGRhdGEvc2NoZW1hLlxuICpcbiAqIEBzZWUgaHR0cHM6Ly9yZXN0aG9va3MuaW8vcmVzdC9hcGkvY3JlYXRlUmVzb3VyY2VcbiAqL1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gY3JlYXRlUmVzb3VyY2U8TyBleHRlbmRzIFJlc291cmNlR2VuZXJpY3M+KHtcbiAgcGF0aCxcbiAgc2NoZW1hLFxuICBFbmRwb2ludCA9IFJlc3RFbmRwb2ludCxcbiAgb3B0aW1pc3RpYyxcbiAgcGFnaW5hdGlvbkZpZWxkLFxuICAuLi5leHRyYU9wdGlvbnNcbn06IFJlYWRvbmx5PE8+ICYgUmVzb3VyY2VPcHRpb25zKTogUmVzb3VyY2U8Tz4ge1xuICBjb25zdCBzaG9ydGVuZWRQYXRoID0gc2hvcnRlblBhdGgocGF0aCk7XG4gIGNvbnN0IGdldE5hbWUgPSAobmFtZTogc3RyaW5nKSA9PiBgJHsoc2NoZW1hIGFzIGFueSk/Lm5hbWV9LiR7bmFtZX1gO1xuICBjb25zdCBleHRyYU11dGF0ZU9wdGlvbnMgPSB7IC4uLmV4dHJhT3B0aW9ucyB9O1xuICBjb25zdCBleHRyYVBhcnRpYWxPcHRpb25zID0geyAuLi5leHRyYU9wdGlvbnMgfTtcbiAgY29uc3QgZ2V0OiBHZXRFbmRwb2ludDx7IHBhdGg6IE9bJ3BhdGgnXTsgc2NoZW1hOiBPWydzY2hlbWEnXSB9PiA9XG4gICAgbmV3IEVuZHBvaW50KHtcbiAgICAgIC4uLmV4dHJhT3B0aW9ucyxcbiAgICAgIHBhdGgsXG4gICAgICBzY2hlbWEsXG4gICAgICBuYW1lOiBnZXROYW1lKCdnZXQnKSxcbiAgICB9KSBhcyBhbnk7XG4gIGlmIChvcHRpbWlzdGljKSB7XG4gICAgKGV4dHJhTXV0YXRlT3B0aW9ucyBhcyBhbnkpLmdldE9wdGltaXN0aWNSZXNwb25zZSA9IG9wdGltaXN0aWNVcGRhdGU7XG4gICAgKGV4dHJhUGFydGlhbE9wdGlvbnMgYXMgYW55KS5nZXRPcHRpbWlzdGljUmVzcG9uc2UgPSBvcHRpbWlzdGljUGFydGlhbChnZXQpO1xuICB9XG4gIGNvbnN0IGdldExpc3QgPSBuZXcgRW5kcG9pbnQoe1xuICAgIC4uLmV4dHJhTXV0YXRlT3B0aW9ucyxcbiAgICBwYXRoOiBzaG9ydGVuZWRQYXRoLFxuICAgIHNjaGVtYTogbmV3IENvbGxlY3Rpb24oW3NjaGVtYSBhcyBhbnldKSxcbiAgICBuYW1lOiBnZXROYW1lKCdnZXRMaXN0JyksXG4gIH0pO1xuICBjb25zdCByZXQgPSB7XG4gICAgZ2V0LFxuICAgIGdldExpc3QsXG4gICAgY3JlYXRlOiBnZXRMaXN0LnB1c2guZXh0ZW5kKHsgbmFtZTogZ2V0TmFtZSgnY3JlYXRlJykgfSksXG4gICAgdXBkYXRlOiBuZXcgRW5kcG9pbnQoe1xuICAgICAgLi4uZXh0cmFNdXRhdGVPcHRpb25zLFxuICAgICAgcGF0aCxcbiAgICAgIHNjaGVtYSxcbiAgICAgIG1ldGhvZDogJ1BVVCcsXG4gICAgICBuYW1lOiBnZXROYW1lKCd1cGRhdGUnKSxcbiAgICB9KSxcbiAgICBwYXJ0aWFsVXBkYXRlOiBuZXcgRW5kcG9pbnQoe1xuICAgICAgLi4uZXh0cmFQYXJ0aWFsT3B0aW9ucyxcbiAgICAgIHBhdGgsXG4gICAgICBzY2hlbWEsXG4gICAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgICBuYW1lOiBnZXROYW1lKCdwYXJ0aWFsVXBkYXRlJyksXG4gICAgfSksXG4gICAgZGVsZXRlOiBuZXcgRW5kcG9pbnQoe1xuICAgICAgLi4uZXh0cmFNdXRhdGVPcHRpb25zLFxuICAgICAgcGF0aCxcbiAgICAgIHNjaGVtYTogKHNjaGVtYSBhcyBhbnkpLnByb2Nlc3MgPyBuZXcgSW52YWxpZGF0ZShzY2hlbWEgYXMgYW55KSA6IHNjaGVtYSxcbiAgICAgIG1ldGhvZDogJ0RFTEVURScsXG4gICAgICBuYW1lOiBnZXROYW1lKCdkZWxldGUnKSxcbiAgICAgIHByb2Nlc3MocmVzOiBhbnksIHBhcmFtczogYW55KSB7XG4gICAgICAgIHJldHVybiByZXMgJiYgT2JqZWN0LmtleXMocmVzKS5sZW5ndGggPyByZXMgOiBwYXJhbXM7XG4gICAgICB9LFxuICAgICAgZ2V0T3B0aW1pc3RpY1Jlc3BvbnNlOiBvcHRpbWlzdGljID8gKG9wdGltaXN0aWNEZWxldGUgYXMgYW55KSA6IHVuZGVmaW5lZCxcbiAgICB9KSxcbiAgfSBhcyBhbnk7XG4gIGlmIChwYWdpbmF0aW9uRmllbGQpIHJldC5nZXROZXh0UGFnZSA9IGdldExpc3QucGFnaW5hdGVkKHBhZ2luYXRpb25GaWVsZCk7XG4gIHJldHVybiByZXQ7XG59XG5cbmZ1bmN0aW9uIG9wdGltaXN0aWNVcGRhdGUoc25hcDogU25hcHNob3RJbnRlcmZhY2UsIHBhcmFtczogYW55LCBib2R5OiBhbnkpIHtcbiAgcmV0dXJuIHtcbiAgICAuLi5wYXJhbXMsXG4gICAgLi4uYm9keSxcbiAgfTtcbn1cbmZ1bmN0aW9uIG9wdGltaXN0aWNQYXJ0aWFsKFxuICBnZXRFbmRwb2ludDogR2V0RW5kcG9pbnQ8eyBwYXRoOiBSZXNvdXJjZVBhdGg7IHNjaGVtYTogYW55IH0+LFxuKSB7XG4gIHJldHVybiBmdW5jdGlvbiAoc25hcDogU25hcHNob3RJbnRlcmZhY2UsIHBhcmFtczogYW55LCBib2R5OiBhbnkpIHtcbiAgICBjb25zdCB7IGRhdGEgfSA9IHNuYXAuZ2V0UmVzcG9uc2UoZ2V0RW5kcG9pbnQsIHBhcmFtcykgYXMgeyBkYXRhOiBhbnkgfTtcbiAgICBpZiAoIWRhdGEpIHRocm93IG5ldyBBYm9ydE9wdGltaXN0aWMoKTtcbiAgICByZXR1cm4ge1xuICAgICAgLi4ucGFyYW1zLFxuICAgICAgLi4uZGF0YSxcbiAgICAgIC8vIGV2ZW4gdGhvIHdlIGRvbid0IGFsd2F5cyBoYXZlIHR3byBhcmd1bWVudHMsIHRoZSBleHRyYSBvbmUgd2lsbCBzaW1wbHkgYmUgdW5kZWZpbmVkIHdoaWNoIHNwcmVhZHMgZmluZVxuICAgICAgLi4uYm9keSxcbiAgICB9O1xuICB9O1xufVxuZnVuY3Rpb24gb3B0aW1pc3RpY0RlbGV0ZShzbmFwOiBTbmFwc2hvdEludGVyZmFjZSwgcGFyYW1zOiBhbnkpIHtcbiAgcmV0dXJuIHBhcmFtcztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZXNvdXJjZTxcbiAgTyBleHRlbmRzIFJlc291cmNlR2VuZXJpY3MgPSB7IHBhdGg6IFJlc291cmNlUGF0aDsgc2NoZW1hOiBhbnkgfSxcbj4ge1xuICAvKiogR2V0IGEgc2luZ3VsYXIgaXRlbVxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vcmVzdGhvb2tzLmlvL3Jlc3QvYXBpL2NyZWF0ZVJlc291cmNlI2dldFxuICAgKi9cbiAgZ2V0OiBHZXRFbmRwb2ludDx7IHBhdGg6IE9bJ3BhdGgnXTsgc2NoZW1hOiBPWydzY2hlbWEnXSB9PjtcbiAgLyoqIEdldCBhIGxpc3Qgb2YgaXRlbVxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vcmVzdGhvb2tzLmlvL3Jlc3QvYXBpL2NyZWF0ZVJlc291cmNlI2dldGxpc3RcbiAgICovXG4gIGdldExpc3Q6ICdzZWFyY2hQYXJhbXMnIGV4dGVuZHMga2V5b2YgT1xuICAgID8gR2V0RW5kcG9pbnQ8e1xuICAgICAgICBwYXRoOiBTaG9ydGVuUGF0aDxPWydwYXRoJ10+O1xuICAgICAgICBzY2hlbWE6IHNjaGVtYS5Db2xsZWN0aW9uPFtPWydzY2hlbWEnXV0+O1xuICAgICAgICBib2R5OiAnYm9keScgZXh0ZW5kcyBrZXlvZiBPXG4gICAgICAgICAgPyBPWydib2R5J11cbiAgICAgICAgICA6IFBhcnRpYWw8RGVub3JtYWxpemU8T1snc2NoZW1hJ10+PjtcbiAgICAgICAgc2VhcmNoUGFyYW1zOiBPWydzZWFyY2hQYXJhbXMnXTtcbiAgICAgIH0+XG4gICAgOiBHZXRFbmRwb2ludDx7XG4gICAgICAgIHBhdGg6IFNob3J0ZW5QYXRoPE9bJ3BhdGgnXT47XG4gICAgICAgIHNjaGVtYTogc2NoZW1hLkNvbGxlY3Rpb248W09bJ3NjaGVtYSddXT47XG4gICAgICAgIGJvZHk6ICdib2R5JyBleHRlbmRzIGtleW9mIE9cbiAgICAgICAgICA/IE9bJ2JvZHknXVxuICAgICAgICAgIDogUGFydGlhbDxEZW5vcm1hbGl6ZTxPWydzY2hlbWEnXT4+O1xuICAgICAgICBzZWFyY2hQYXJhbXM6IFJlY29yZDxzdHJpbmcsIG51bWJlciB8IHN0cmluZyB8IGJvb2xlYW4+IHwgdW5kZWZpbmVkO1xuICAgICAgfT47XG4gIC8qKiBHZXQgYSBsaXN0IG9mIGl0ZW1cbiAgICpcbiAgICogQHNlZSBodHRwczovL2RhdGFjbGllbnQuaW8vcmVzdC9hcGkvY3JlYXRlUmVzb3VyY2UjZ2V0TmV4dFBhZ2VcbiAgICovXG4gIGdldE5leHRQYWdlOiAncGFnaW5hdGlvbkZpZWxkJyBleHRlbmRzIGtleW9mIE9cbiAgICA/IFBhZ2luYXRpb25GaWVsZEVuZHBvaW50PFxuICAgICAgICAnc2VhcmNoUGFyYW1zJyBleHRlbmRzIGtleW9mIE9cbiAgICAgICAgICA/IEdldEVuZHBvaW50PHtcbiAgICAgICAgICAgICAgcGF0aDogU2hvcnRlblBhdGg8T1sncGF0aCddPjtcbiAgICAgICAgICAgICAgc2NoZW1hOiBzY2hlbWEuQ29sbGVjdGlvbjxbT1snc2NoZW1hJ11dPjtcbiAgICAgICAgICAgICAgc2VhcmNoUGFyYW1zOiBPWydzZWFyY2hQYXJhbXMnXTtcbiAgICAgICAgICAgIH0+XG4gICAgICAgICAgOiBHZXRFbmRwb2ludDx7XG4gICAgICAgICAgICAgIHBhdGg6IFNob3J0ZW5QYXRoPE9bJ3BhdGgnXT47XG4gICAgICAgICAgICAgIHNjaGVtYTogc2NoZW1hLkNvbGxlY3Rpb248W09bJ3NjaGVtYSddXT47XG4gICAgICAgICAgICAgIHNlYXJjaFBhcmFtczpcbiAgICAgICAgICAgICAgICB8IFJlY29yZDxzdHJpbmcsIG51bWJlciB8IHN0cmluZyB8IGJvb2xlYW4+XG4gICAgICAgICAgICAgICAgfCB1bmRlZmluZWQ7XG4gICAgICAgICAgICB9PixcbiAgICAgICAgRXhjbHVkZTxPWydwYWdpbmF0aW9uRmllbGQnXSwgdW5kZWZpbmVkPlxuICAgICAgPlxuICAgIDogdW5kZWZpbmVkO1xuICAvKiogQ3JlYXRlIGEgbmV3IGl0ZW0gKFBPU1QpXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9yZXN0aG9va3MuaW8vcmVzdC9hcGkvY3JlYXRlUmVzb3VyY2UjY3JlYXRlXG4gICAqL1xuICBjcmVhdGU6ICdzZWFyY2hQYXJhbXMnIGV4dGVuZHMga2V5b2YgT1xuICAgID8gTXV0YXRlRW5kcG9pbnQ8e1xuICAgICAgICBwYXRoOiBTaG9ydGVuUGF0aDxPWydwYXRoJ10+O1xuICAgICAgICBzY2hlbWE6IHNjaGVtYS5Db2xsZWN0aW9uPFtPWydzY2hlbWEnXV0+WydwdXNoJ107XG4gICAgICAgIGJvZHk6ICdib2R5JyBleHRlbmRzIGtleW9mIE9cbiAgICAgICAgICA/IE9bJ2JvZHknXVxuICAgICAgICAgIDogUGFydGlhbDxEZW5vcm1hbGl6ZTxPWydzY2hlbWEnXT4+O1xuICAgICAgICBzZWFyY2hQYXJhbXM6IE9bJ3NlYXJjaFBhcmFtcyddO1xuICAgICAgfT5cbiAgICA6IE11dGF0ZUVuZHBvaW50PHtcbiAgICAgICAgcGF0aDogU2hvcnRlblBhdGg8T1sncGF0aCddPjtcbiAgICAgICAgc2NoZW1hOiBzY2hlbWEuQ29sbGVjdGlvbjxbT1snc2NoZW1hJ11dPlsncHVzaCddO1xuICAgICAgICBib2R5OiAnYm9keScgZXh0ZW5kcyBrZXlvZiBPXG4gICAgICAgICAgPyBPWydib2R5J11cbiAgICAgICAgICA6IFBhcnRpYWw8RGVub3JtYWxpemU8T1snc2NoZW1hJ10+PjtcbiAgICAgIH0+O1xuICAvKiogVXBkYXRlIGFuIGl0ZW0gKFBVVClcbiAgICpcbiAgICogQHNlZSBodHRwczovL3Jlc3Rob29rcy5pby9yZXN0L2FwaS9jcmVhdGVSZXNvdXJjZSN1cGRhdGVcbiAgICovXG4gIHVwZGF0ZTogJ2JvZHknIGV4dGVuZHMga2V5b2YgT1xuICAgID8gTXV0YXRlRW5kcG9pbnQ8e1xuICAgICAgICBwYXRoOiBPWydwYXRoJ107XG4gICAgICAgIGJvZHk6IE9bJ2JvZHknXTtcbiAgICAgICAgc2NoZW1hOiBPWydzY2hlbWEnXTtcbiAgICAgIH0+XG4gICAgOiBNdXRhdGVFbmRwb2ludDx7XG4gICAgICAgIHBhdGg6IE9bJ3BhdGgnXTtcbiAgICAgICAgYm9keTogUGFydGlhbDxEZW5vcm1hbGl6ZTxPWydzY2hlbWEnXT4+O1xuICAgICAgICBzY2hlbWE6IE9bJ3NjaGVtYSddO1xuICAgICAgfT47XG4gIC8qKiBVcGRhdGUgYW4gaXRlbSAoUEFUQ0gpXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9yZXN0aG9va3MuaW8vcmVzdC9hcGkvY3JlYXRlUmVzb3VyY2UjcGFydGlhbHVwZGF0ZVxuICAgKi9cbiAgcGFydGlhbFVwZGF0ZTogJ2JvZHknIGV4dGVuZHMga2V5b2YgT1xuICAgID8gTXV0YXRlRW5kcG9pbnQ8e1xuICAgICAgICBwYXRoOiBPWydwYXRoJ107XG4gICAgICAgIGJvZHk6IFBhcnRpYWw8T1snYm9keSddPjtcbiAgICAgICAgc2NoZW1hOiBPWydzY2hlbWEnXTtcbiAgICAgIH0+XG4gICAgOiBNdXRhdGVFbmRwb2ludDx7XG4gICAgICAgIHBhdGg6IE9bJ3BhdGgnXTtcbiAgICAgICAgYm9keTogUGFydGlhbDxEZW5vcm1hbGl6ZTxPWydzY2hlbWEnXT4+O1xuICAgICAgICBzY2hlbWE6IE9bJ3NjaGVtYSddO1xuICAgICAgfT47XG4gIC8qKiBEZWxldGUgYW4gaXRlbSAoREVMRVRFKVxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vcmVzdGhvb2tzLmlvL3Jlc3QvYXBpL2NyZWF0ZVJlc291cmNlI2RlbGV0ZVxuICAgKi9cbiAgZGVsZXRlOiBSZXN0VHlwZU5vQm9keTxcbiAgICBQYXRoQXJnczxPWydwYXRoJ10+LFxuICAgIE9bJ3NjaGVtYSddIGV4dGVuZHMgc2NoZW1hLkVudGl0eUludGVyZmFjZSAmIHsgcHJvY2VzczogYW55IH1cbiAgICAgID8gc2NoZW1hLkludmFsaWRhdGU8T1snc2NoZW1hJ10+XG4gICAgICA6IE9bJ3NjaGVtYSddLFxuICAgIHVuZGVmaW5lZCxcbiAgICBQYXJ0aWFsPFBhdGhBcmdzPE9bJ3BhdGgnXT4+LFxuICAgIHtcbiAgICAgIHBhdGg6IE9bJ3BhdGgnXTtcbiAgICB9XG4gID47XG59XG4iXSwibWFwcGluZ3MiOiJBQUFBLFNBQ0VBLGVBQWUsRUFFZkMsTUFBTSxRQUNELHVCQUF1QjtBQUs5QixPQUFPQyxZQUFZLE1BS1osbUJBQW1CO0FBQzFCLFNBQVNDLFdBQVcsUUFBUSxrQkFBa0I7QUFFOUMsTUFBTTtFQUFFQyxVQUFVO0VBQUVDO0FBQVcsQ0FBQyxHQUFHSixNQUFNOztBQUV6QztBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWUsU0FBU0ssY0FBY0EsQ0FBNkI7RUFDakVDLElBQUk7RUFDSk4sTUFBTTtFQUNOTyxRQUFRLEdBQUdOLFlBQVk7RUFDdkJPLFVBQVU7RUFDVkMsZUFBZTtFQUNmLEdBQUdDO0FBQzBCLENBQUMsRUFBZTtFQUM3QyxNQUFNQyxhQUFhLEdBQUdULFdBQVcsQ0FBQ0ksSUFBSSxDQUFDO0VBQ3ZDLE1BQU1NLE9BQU8sR0FBSUMsSUFBWSxJQUFNLEdBQUdiLE1BQU0sb0JBQU5BLE1BQU0sQ0FBVWEsSUFBSyxJQUFHQSxJQUFLLEVBQUM7RUFDcEUsTUFBTUMsa0JBQWtCLEdBQUc7SUFBRSxHQUFHSjtFQUFhLENBQUM7RUFDOUMsTUFBTUssbUJBQW1CLEdBQUc7SUFBRSxHQUFHTDtFQUFhLENBQUM7RUFDL0MsTUFBTU0sR0FBMEQsR0FDOUQsSUFBSVQsUUFBUSxDQUFDO0lBQ1gsR0FBR0csWUFBWTtJQUNmSixJQUFJO0lBQ0pOLE1BQU07SUFDTmEsSUFBSSxFQUFFRCxPQUFPLENBQUMsS0FBSztFQUNyQixDQUFDLENBQVE7RUFDWCxJQUFJSixVQUFVLEVBQUU7SUFDYk0sa0JBQWtCLENBQVNHLHFCQUFxQixHQUFHQyxnQkFBZ0I7SUFDbkVILG1CQUFtQixDQUFTRSxxQkFBcUIsR0FBR0UsaUJBQWlCLENBQUNILEdBQUcsQ0FBQztFQUM3RTtFQUNBLE1BQU1JLE9BQU8sR0FBRyxJQUFJYixRQUFRLENBQUM7SUFDM0IsR0FBR08sa0JBQWtCO0lBQ3JCUixJQUFJLEVBQUVLLGFBQWE7SUFDbkJYLE1BQU0sRUFBRSxJQUFJSSxVQUFVLENBQUMsQ0FBQ0osTUFBTSxDQUFRLENBQUM7SUFDdkNhLElBQUksRUFBRUQsT0FBTyxDQUFDLFNBQVM7RUFDekIsQ0FBQyxDQUFDO0VBQ0YsTUFBTVMsR0FBRyxHQUFHO0lBQ1ZMLEdBQUc7SUFDSEksT0FBTztJQUNQRSxNQUFNLEVBQUVGLE9BQU8sQ0FBQ0csSUFBSSxDQUFDQyxNQUFNLENBQUM7TUFBRVgsSUFBSSxFQUFFRCxPQUFPLENBQUMsUUFBUTtJQUFFLENBQUMsQ0FBQztJQUN4RGEsTUFBTSxFQUFFLElBQUlsQixRQUFRLENBQUM7TUFDbkIsR0FBR08sa0JBQWtCO01BQ3JCUixJQUFJO01BQ0pOLE1BQU07TUFDTjBCLE1BQU0sRUFBRSxLQUFLO01BQ2JiLElBQUksRUFBRUQsT0FBTyxDQUFDLFFBQVE7SUFDeEIsQ0FBQyxDQUFDO0lBQ0ZlLGFBQWEsRUFBRSxJQUFJcEIsUUFBUSxDQUFDO01BQzFCLEdBQUdRLG1CQUFtQjtNQUN0QlQsSUFBSTtNQUNKTixNQUFNO01BQ04wQixNQUFNLEVBQUUsT0FBTztNQUNmYixJQUFJLEVBQUVELE9BQU8sQ0FBQyxlQUFlO0lBQy9CLENBQUMsQ0FBQztJQUNGZ0IsTUFBTSxFQUFFLElBQUlyQixRQUFRLENBQUM7TUFDbkIsR0FBR08sa0JBQWtCO01BQ3JCUixJQUFJO01BQ0pOLE1BQU0sRUFBR0EsTUFBTSxDQUFTNkIsT0FBTyxHQUFHLElBQUkxQixVQUFVLENBQUNILE1BQWEsQ0FBQyxHQUFHQSxNQUFNO01BQ3hFMEIsTUFBTSxFQUFFLFFBQVE7TUFDaEJiLElBQUksRUFBRUQsT0FBTyxDQUFDLFFBQVEsQ0FBQztNQUN2QmlCLE9BQU9BLENBQUNDLEdBQVEsRUFBRUMsTUFBVyxFQUFFO1FBQzdCLE9BQU9ELEdBQUcsSUFBSUUsTUFBTSxDQUFDQyxJQUFJLENBQUNILEdBQUcsQ0FBQyxDQUFDSSxNQUFNLEdBQUdKLEdBQUcsR0FBR0MsTUFBTTtNQUN0RCxDQUFDO01BQ0RkLHFCQUFxQixFQUFFVCxVQUFVLEdBQUkyQixnQkFBZ0IsR0FBV0M7SUFDbEUsQ0FBQztFQUNILENBQVE7RUFDUixJQUFJM0IsZUFBZSxFQUFFWSxHQUFHLENBQUNnQixXQUFXLEdBQUdqQixPQUFPLENBQUNrQixTQUFTLENBQUM3QixlQUFlLENBQUM7RUFDekUsT0FBT1ksR0FBRztBQUNaO0FBRUEsU0FBU0gsZ0JBQWdCQSxDQUFDcUIsSUFBdUIsRUFBRVIsTUFBVyxFQUFFUyxJQUFTLEVBQUU7RUFDekUsT0FBTztJQUNMLEdBQUdULE1BQU07SUFDVCxHQUFHUztFQUNMLENBQUM7QUFDSDtBQUNBLFNBQVNyQixpQkFBaUJBLENBQ3hCc0IsV0FBNkQsRUFDN0Q7RUFDQSxPQUFPLFVBQVVGLElBQXVCLEVBQUVSLE1BQVcsRUFBRVMsSUFBUyxFQUFFO0lBQ2hFLE1BQU07TUFBRUU7SUFBSyxDQUFDLEdBQUdILElBQUksQ0FBQ0ksV0FBVyxDQUFDRixXQUFXLEVBQUVWLE1BQU0sQ0FBa0I7SUFDdkUsSUFBSSxDQUFDVyxJQUFJLEVBQUUsTUFBTSxJQUFJM0MsZUFBZSxDQUFDLENBQUM7SUFDdEMsT0FBTztNQUNMLEdBQUdnQyxNQUFNO01BQ1QsR0FBR1csSUFBSTtNQUNQO01BQ0EsR0FBR0Y7SUFDTCxDQUFDO0VBQ0gsQ0FBQztBQUNIO0FBQ0EsU0FBU0wsZ0JBQWdCQSxDQUFDSSxJQUF1QixFQUFFUixNQUFXLEVBQUU7RUFDOUQsT0FBT0EsTUFBTTtBQUNmIn0=
139
+ function ensureBodyPojo(body) {
140
+ return body instanceof FormData ? Object.fromEntries(body.entries()) : body;
141
+ }
142
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJBYm9ydE9wdGltaXN0aWMiLCJzY2hlbWEiLCJSZXN0RW5kcG9pbnQiLCJzaG9ydGVuUGF0aCIsIkludmFsaWRhdGUiLCJDb2xsZWN0aW9uIiwiY3JlYXRlUmVzb3VyY2UiLCJwYXRoIiwiRW5kcG9pbnQiLCJvcHRpbWlzdGljIiwiZXh0cmFPcHRpb25zIiwic2hvcnRlbmVkUGF0aCIsImdldE5hbWUiLCJuYW1lIiwiZXh0ZW5kTWVtYmVyIiwiZXh0ZW5kZWQiLCJrZXkiLCJvcHRpb25zIiwiZXh0ZW5kIiwiZXh0cmFNdXRhdGVPcHRpb25zIiwiZXh0cmFQYXJ0aWFsT3B0aW9ucyIsImdldCIsImdldE9wdGltaXN0aWNSZXNwb25zZSIsIm9wdGltaXN0aWNVcGRhdGUiLCJvcHRpbWlzdGljUGFydGlhbCIsImdldExpc3QiLCJyZXQiLCJjcmVhdGUiLCJwdXNoIiwidXBkYXRlIiwibWV0aG9kIiwicGFydGlhbFVwZGF0ZSIsImRlbGV0ZSIsInByb2Nlc3MiLCJyZXMiLCJwYXJhbXMiLCJPYmplY3QiLCJrZXlzIiwibGVuZ3RoIiwib3B0aW1pc3RpY0RlbGV0ZSIsInVuZGVmaW5lZCIsImFyZ3MiLCJvdmVycmlkZXMiLCJzbmFwIiwiYm9keSIsImVuc3VyZUJvZHlQb2pvIiwiZ2V0RW5kcG9pbnQiLCJkYXRhIiwiZ2V0UmVzcG9uc2UiLCJGb3JtRGF0YSIsImZyb21FbnRyaWVzIiwiZW50cmllcyJdLCJzb3VyY2VzIjpbIi4uL3NyYy9jcmVhdGVSZXNvdXJjZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBYm9ydE9wdGltaXN0aWMsXG4gIFNuYXBzaG90SW50ZXJmYWNlLFxuICBzY2hlbWEsXG59IGZyb20gJ0BkYXRhLWNsaWVudC9lbmRwb2ludCc7XG5cbmltcG9ydCB7IFJlc291cmNlUGF0aCB9IGZyb20gJy4vcGF0aFR5cGVzLmpzJztcbmltcG9ydCB7XG4gIFJlc291cmNlR2VuZXJpY3MsXG4gIFJlc291cmNlT3B0aW9ucyxcbiAgUmVzb3VyY2UsXG4gIFJlc291cmNlSW50ZXJmYWNlLFxufSBmcm9tICcuL3Jlc291cmNlVHlwZXMuanMnO1xuaW1wb3J0IFJlc3RFbmRwb2ludCwge1xuICBHZXRFbmRwb2ludCxcbiAgUGFydGlhbFJlc3RHZW5lcmljcyxcbiAgUmVzdEVuZHBvaW50T3B0aW9ucyxcbiAgUmVzdEluc3RhbmNlQmFzZSxcbn0gZnJvbSAnLi9SZXN0RW5kcG9pbnQuanMnO1xuaW1wb3J0IHsgc2hvcnRlblBhdGggfSBmcm9tICcuL1Jlc3RIZWxwZXJzLmpzJztcblxuY29uc3QgeyBJbnZhbGlkYXRlLCBDb2xsZWN0aW9uIH0gPSBzY2hlbWE7XG5cbi8qKiBDcmVhdGVzIGNvbGxlY3Rpb24gb2YgRW5kcG9pbnRzIGZvciBjb21tb24gb3BlcmF0aW9ucyBvbiBhIGdpdmVuIGRhdGEvc2NoZW1hLlxuICpcbiAqIEBzZWUgaHR0cHM6Ly9yZXN0aG9va3MuaW8vcmVzdC9hcGkvY3JlYXRlUmVzb3VyY2VcbiAqL1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gY3JlYXRlUmVzb3VyY2U8TyBleHRlbmRzIFJlc291cmNlR2VuZXJpY3M+KHtcbiAgcGF0aCxcbiAgc2NoZW1hLFxuICBFbmRwb2ludCA9IFJlc3RFbmRwb2ludCxcbiAgb3B0aW1pc3RpYyxcbiAgLi4uZXh0cmFPcHRpb25zXG59OiBSZWFkb25seTxPPiAmIFJlc291cmNlT3B0aW9ucyk6IFJlc291cmNlPE8+IHtcbiAgY29uc3Qgc2hvcnRlbmVkUGF0aCA9IHNob3J0ZW5QYXRoKHBhdGgpO1xuICBjb25zdCBnZXROYW1lID0gKG5hbWU6IHN0cmluZykgPT4gYCR7KHNjaGVtYSBhcyBhbnkpPy5uYW1lfS4ke25hbWV9YDtcbiAgLy8gdGhpcyBhY2NvdW50cyBmb3IgZGVyaXZhdGl2ZSBlbmRwb2ludHNcbiAgZnVuY3Rpb24gZXh0ZW5kTWVtYmVyKGV4dGVuZGVkOiBhbnksIGtleTogc3RyaW5nLCBvcHRpb25zOiBhbnkpIHtcbiAgICBleHRlbmRlZFtrZXldID0gZXh0ZW5kZWRba2V5XS5leHRlbmQob3B0aW9ucyk7XG4gIH1cblxuICBjb25zdCBleHRyYU11dGF0ZU9wdGlvbnMgPSB7IC4uLmV4dHJhT3B0aW9ucyB9O1xuICBjb25zdCBleHRyYVBhcnRpYWxPcHRpb25zID0geyAuLi5leHRyYU9wdGlvbnMgfTtcbiAgY29uc3QgZ2V0OiBHZXRFbmRwb2ludDx7IHBhdGg6IE9bJ3BhdGgnXTsgc2NoZW1hOiBPWydzY2hlbWEnXSB9PiA9XG4gICAgbmV3IEVuZHBvaW50KHtcbiAgICAgIC4uLmV4dHJhT3B0aW9ucyxcbiAgICAgIHBhdGgsXG4gICAgICBzY2hlbWEsXG4gICAgICBuYW1lOiBnZXROYW1lKCdnZXQnKSxcbiAgICB9KSBhcyBhbnk7XG4gIGlmIChvcHRpbWlzdGljKSB7XG4gICAgKGV4dHJhTXV0YXRlT3B0aW9ucyBhcyBhbnkpLmdldE9wdGltaXN0aWNSZXNwb25zZSA9IG9wdGltaXN0aWNVcGRhdGU7XG4gICAgKGV4dHJhUGFydGlhbE9wdGlvbnMgYXMgYW55KS5nZXRPcHRpbWlzdGljUmVzcG9uc2UgPSBvcHRpbWlzdGljUGFydGlhbChnZXQpO1xuICB9XG4gIGNvbnN0IGdldExpc3QgPSBuZXcgRW5kcG9pbnQoe1xuICAgIC4uLmV4dHJhTXV0YXRlT3B0aW9ucyxcbiAgICBwYXRoOiBzaG9ydGVuZWRQYXRoLFxuICAgIHNjaGVtYTogbmV3IENvbGxlY3Rpb24oW3NjaGVtYSBhcyBhbnldKSxcbiAgICBuYW1lOiBnZXROYW1lKCdnZXRMaXN0JyksXG4gIH0pO1xuICBjb25zdCByZXQgPSB7XG4gICAgZ2V0LFxuICAgIGdldExpc3QsXG4gICAgLy8gVE9ETyhkZXByZWNhdGVkKTogcmVtb3ZlIHRoaXMgb25jZSB3ZSByZW1vdmUgY3JlYXRlc1xuICAgIGNyZWF0ZTogZ2V0TGlzdC5wdXNoLmV4dGVuZCh7IG5hbWU6IGdldE5hbWUoJ2NyZWF0ZScpIH0pLFxuICAgIHVwZGF0ZTogbmV3IEVuZHBvaW50KHtcbiAgICAgIC4uLmV4dHJhTXV0YXRlT3B0aW9ucyxcbiAgICAgIHBhdGgsXG4gICAgICBzY2hlbWEsXG4gICAgICBtZXRob2Q6ICdQVVQnLFxuICAgICAgbmFtZTogZ2V0TmFtZSgndXBkYXRlJyksXG4gICAgfSksXG4gICAgcGFydGlhbFVwZGF0ZTogbmV3IEVuZHBvaW50KHtcbiAgICAgIC4uLmV4dHJhUGFydGlhbE9wdGlvbnMsXG4gICAgICBwYXRoLFxuICAgICAgc2NoZW1hLFxuICAgICAgbWV0aG9kOiAnUEFUQ0gnLFxuICAgICAgbmFtZTogZ2V0TmFtZSgncGFydGlhbFVwZGF0ZScpLFxuICAgIH0pLFxuICAgIGRlbGV0ZTogbmV3IEVuZHBvaW50KHtcbiAgICAgIC4uLmV4dHJhTXV0YXRlT3B0aW9ucyxcbiAgICAgIHBhdGgsXG4gICAgICBzY2hlbWE6IChzY2hlbWEgYXMgYW55KS5wcm9jZXNzID8gbmV3IEludmFsaWRhdGUoc2NoZW1hIGFzIGFueSkgOiBzY2hlbWEsXG4gICAgICBtZXRob2Q6ICdERUxFVEUnLFxuICAgICAgbmFtZTogZ2V0TmFtZSgnZGVsZXRlJyksXG4gICAgICBwcm9jZXNzKHJlczogYW55LCBwYXJhbXM6IGFueSkge1xuICAgICAgICByZXR1cm4gcmVzICYmIE9iamVjdC5rZXlzKHJlcykubGVuZ3RoID8gcmVzIDogcGFyYW1zO1xuICAgICAgfSxcbiAgICAgIGdldE9wdGltaXN0aWNSZXNwb25zZTogb3B0aW1pc3RpYyA/IChvcHRpbWlzdGljRGVsZXRlIGFzIGFueSkgOiB1bmRlZmluZWQsXG4gICAgfSksXG4gICAgZXh0ZW5kKFxuICAgICAgLi4uYXJnczpcbiAgICAgICAgfCBbc3RyaW5nLCBSZXN0RW5kcG9pbnRPcHRpb25zICYgUGFydGlhbFJlc3RHZW5lcmljc11cbiAgICAgICAgfCBbUmVzdEVuZHBvaW50T3B0aW9ucyAmIFBhcnRpYWxSZXN0R2VuZXJpY3NdXG4gICAgICAgIHwgW1xuICAgICAgICAgICAgKFxuICAgICAgICAgICAgICBiYXNlUmVzb3VyY2U6IFJlc291cmNlSW50ZXJmYWNlLFxuICAgICAgICAgICAgKSA9PiBSZWNvcmQ8c3RyaW5nLCBSZXN0SW5zdGFuY2VCYXNlPixcbiAgICAgICAgICBdXG4gICAgKSB7XG4gICAgICBpZiAodHlwZW9mIGFyZ3NbMF0gPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIGNvbnN0IFtrZXksIG9wdGlvbnNdID0gYXJncztcbiAgICAgICAgaWYgKGtleSBpbiB0aGlzKSB7XG4gICAgICAgICAgY29uc3QgZXh0ZW5kZWQgPSB7IC4uLnRoaXMgfTtcbiAgICAgICAgICBleHRlbmRNZW1iZXIoZXh0ZW5kZWQsIGtleSwgb3B0aW9ucyk7XG4gICAgICAgICAgcmV0dXJuIGV4dGVuZGVkO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAuLi50aGlzLFxuICAgICAgICAgICAgW2tleV06IHRoaXMuZ2V0LmV4dGVuZChvcHRpb25zKSxcbiAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKHR5cGVvZiBhcmdzWzBdID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIGNvbnN0IGV4dGVuZGVkID0gYXJnc1swXSh0aGlzKTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAuLi50aGlzLFxuICAgICAgICAgIC4uLmV4dGVuZGVkLFxuICAgICAgICB9O1xuICAgICAgfVxuICAgICAgY29uc3Qgb3ZlcnJpZGVzID0gYXJnc1swXTtcbiAgICAgIGNvbnN0IGV4dGVuZGVkID0geyAuLi50aGlzIH07XG4gICAgICBmb3IgKGNvbnN0IGtleSBpbiBvdmVycmlkZXMpIHtcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9iYW4tdHMtY29tbWVudFxuICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgIGV4dGVuZE1lbWJlcihleHRlbmRlZCwga2V5LCBvdmVycmlkZXNba2V5XSk7XG4gICAgICB9XG4gICAgICByZXR1cm4gZXh0ZW5kZWQ7XG4gICAgfSxcbiAgfSBhcyBhbnk7XG4gIHJldHVybiByZXQ7XG59XG5cbmZ1bmN0aW9uIG9wdGltaXN0aWNVcGRhdGUoc25hcDogU25hcHNob3RJbnRlcmZhY2UsIHBhcmFtczogYW55LCBib2R5OiBhbnkpIHtcbiAgcmV0dXJuIHtcbiAgICAuLi5wYXJhbXMsXG4gICAgLi4uZW5zdXJlQm9keVBvam8oYm9keSksXG4gIH07XG59XG5mdW5jdGlvbiBvcHRpbWlzdGljUGFydGlhbChcbiAgZ2V0RW5kcG9pbnQ6IEdldEVuZHBvaW50PHsgcGF0aDogUmVzb3VyY2VQYXRoOyBzY2hlbWE6IGFueSB9Pixcbikge1xuICByZXR1cm4gZnVuY3Rpb24gKHNuYXA6IFNuYXBzaG90SW50ZXJmYWNlLCBwYXJhbXM6IGFueSwgYm9keTogYW55KSB7XG4gICAgY29uc3QgeyBkYXRhIH0gPSBzbmFwLmdldFJlc3BvbnNlKGdldEVuZHBvaW50LCBwYXJhbXMpIGFzIHsgZGF0YTogYW55IH07XG4gICAgaWYgKCFkYXRhKSB0aHJvdyBuZXcgQWJvcnRPcHRpbWlzdGljKCk7XG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLnBhcmFtcyxcbiAgICAgIC4uLmRhdGEsXG4gICAgICAvLyBldmVuIHRobyB3ZSBkb24ndCBhbHdheXMgaGF2ZSB0d28gYXJndW1lbnRzLCB0aGUgZXh0cmEgb25lIHdpbGwgc2ltcGx5IGJlIHVuZGVmaW5lZCB3aGljaCBzcHJlYWRzIGZpbmVcbiAgICAgIC4uLmVuc3VyZUJvZHlQb2pvKGJvZHkpLFxuICAgIH07XG4gIH07XG59XG5mdW5jdGlvbiBvcHRpbWlzdGljRGVsZXRlKHNuYXA6IFNuYXBzaG90SW50ZXJmYWNlLCBwYXJhbXM6IGFueSkge1xuICByZXR1cm4gcGFyYW1zO1xufVxuZnVuY3Rpb24gZW5zdXJlQm9keVBvam8oYm9keTogYW55KSB7XG4gIHJldHVybiBib2R5IGluc3RhbmNlb2YgRm9ybURhdGFcbiAgICA/IE9iamVjdC5mcm9tRW50cmllcygoYm9keSBhcyBhbnkpLmVudHJpZXMoKSlcbiAgICA6IGJv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
package/lib/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  export { default as RestEndpoint } from './RestEndpoint.js';
2
2
  export type { GetEndpoint, MutateEndpoint, Defaults, RestGenerics, FetchGet, FetchMutate, RestFetch, RestType, RestInstance, KeyofRestEndpoint, RestEndpointConstructorOptions, AddEndpoint, PaginationFieldEndpoint, PaginationEndpoint, } from './RestEndpoint.js';
3
3
  export { default as createResource } from './createResource.js';
4
- export type { Resource } from './createResource.js';
4
+ export type { Resource } from './resourceTypes.js';
5
5
  export type { ResourceOptions, ResourceGenerics } from './resourceTypes.js';
6
6
  export { default as hookifyResource } from './hookifyResource.js';
7
7
  export type { HookResource, HookableEndpointInterface, } from './hookifyResource.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC5D,YAAY,EACV,WAAW,EACX,cAAc,EACd,QAAQ,EACR,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,SAAS,EACT,QAAQ,EACR,YAAY,EACZ,iBAAiB,EACjB,8BAA8B,EAC9B,WAAW,EACX,uBAAuB,EACvB,kBAAkB,GACnB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAChE,YAAY,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC5E,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAClE,YAAY,EACV,YAAY,EACZ,yBAAyB,GAC1B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACpE,YAAY,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,YAAY,EACV,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,iBAAiB,GAClB,MAAM,gBAAgB,CAAC;AAExB,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC5D,YAAY,EACV,WAAW,EACX,cAAc,EACd,QAAQ,EACR,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,SAAS,EACT,QAAQ,EACR,YAAY,EACZ,iBAAiB,EACjB,8BAA8B,EAC9B,WAAW,EACX,uBAAuB,EACvB,kBAAkB,GACnB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAChE,YAAY,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACnD,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC5E,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAClE,YAAY,EACV,YAAY,EACZ,yBAAyB,GAC1B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACpE,YAAY,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,YAAY,EACV,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,iBAAiB,GAClB,MAAM,gBAAgB,CAAC;AAExB,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC"}
package/lib/index.js CHANGED
@@ -8,4 +8,4 @@ export { default as NetworkError } from './NetworkError.js';
8
8
  export { default as paginationUpdate } from './paginationUpdate.js';
9
9
  export * from '@data-client/endpoint';
10
10
  export * from './RestEndpoint.js';
11
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJPYmplY3QiLCJoYXNPd24iLCJpdCIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlZmF1bHQiLCJSZXN0RW5kcG9pbnQiLCJjcmVhdGVSZXNvdXJjZSIsImhvb2tpZnlSZXNvdXJjZSIsIk5ldHdvcmtFcnJvciIsInBhZ2luYXRpb25VcGRhdGUiXSwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0Lmhhc093biA9XG4gIE9iamVjdC5oYXNPd24gfHxcbiAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi8gZnVuY3Rpb24gaGFzT3duKGl0LCBrZXkpIHtcbiAgICByZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGl0LCBrZXkpO1xuICB9O1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBSZXN0RW5kcG9pbnQgfSBmcm9tICcuL1Jlc3RFbmRwb2ludC5qcyc7XG5leHBvcnQgdHlwZSB7XG4gIEdldEVuZHBvaW50LFxuICBNdXRhdGVFbmRwb2ludCxcbiAgRGVmYXVsdHMsXG4gIFJlc3RHZW5lcmljcyxcbiAgRmV0Y2hHZXQsXG4gIEZldGNoTXV0YXRlLFxuICBSZXN0RmV0Y2gsXG4gIFJlc3RUeXBlLFxuICBSZXN0SW5zdGFuY2UsXG4gIEtleW9mUmVzdEVuZHBvaW50LFxuICBSZXN0RW5kcG9pbnRDb25zdHJ1Y3Rvck9wdGlvbnMsXG4gIEFkZEVuZHBvaW50LFxuICBQYWdpbmF0aW9uRmllbGRFbmRwb2ludCxcbiAgUGFnaW5hdGlvbkVuZHBvaW50LFxufSBmcm9tICcuL1Jlc3RFbmRwb2ludC5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIGNyZWF0ZVJlc291cmNlIH0gZnJvbSAnLi9jcmVhdGVSZXNvdXJjZS5qcyc7XG5leHBvcnQgdHlwZSB7IFJlc291cmNlIH0gZnJvbSAnLi9jcmVhdGVSZXNvdXJjZS5qcyc7XG5leHBvcnQgdHlwZSB7IFJlc291cmNlT3B0aW9ucywgUmVzb3VyY2VHZW5lcmljcyB9IGZyb20gJy4vcmVzb3VyY2VUeXBlcy5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIGhvb2tpZnlSZXNvdXJjZSB9IGZyb20gJy4vaG9va2lmeVJlc291cmNlLmpzJztcbmV4cG9ydCB0eXBlIHtcbiAgSG9va1Jlc291cmNlLFxuICBIb29rYWJsZUVuZHBvaW50SW50ZXJmYWNlLFxufSBmcm9tICcuL2hvb2tpZnlSZXNvdXJjZS5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIE5ldHdvcmtFcnJvciB9IGZyb20gJy4vTmV0d29ya0Vycm9yLmpzJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgcGFnaW5hdGlvblVwZGF0ZSB9IGZyb20gJy4vcGFnaW5hdGlvblVwZGF0ZS5qcyc7XG5leHBvcnQgdHlwZSB7IE9wdGlvbnNUb0Z1bmN0aW9uIH0gZnJvbSAnLi9PcHRpb25zVG9GdW5jdGlvbi5qcyc7XG5leHBvcnQgdHlwZSB7XG4gIFNob3J0ZW5QYXRoLFxuICBQYXRoQXJncyxcbiAgUGF0aEtleXMsXG4gIEtleXNUb0FyZ3MsXG4gIFBhdGhBcmdzQW5kU2VhcmNoLFxufSBmcm9tICcuL3BhdGhUeXBlcy5qcyc7XG5cbmV4cG9ydCAqIGZyb20gJ0BkYXRhLWNsaWVudC9lbmRwb2ludCc7XG5leHBvcnQgKiBmcm9tICcuL1Jlc3RFbmRwb2ludC5qcyc7XG4iXSwibWFwcGluZ3MiOiJBQUFBQSxNQUFNLENBQUNDLE1BQU0sR0FDWEQsTUFBTSxDQUFDQyxNQUFNLElBQ2IsMEJBQTJCLFNBQVNBLE1BQU1BLENBQUNDLEVBQUUsRUFBRUMsR0FBRyxFQUFFO0VBQ2xELE9BQU9ILE1BQU0sQ0FBQ0ksU0FBUyxDQUFDQyxjQUFjLENBQUNDLElBQUksQ0FBQ0osRUFBRSxFQUFFQyxHQUFHLENBQUM7QUFDdEQsQ0FBQztBQUNILFNBQVNJLE9BQU8sSUFBSUMsWUFBWSxRQUFRLG1CQUFtQjtBQWlCM0QsU0FBU0QsT0FBTyxJQUFJRSxjQUFjLFFBQVEscUJBQXFCO0FBRy9ELFNBQVNGLE9BQU8sSUFBSUcsZUFBZSxRQUFRLHNCQUFzQjtBQUtqRSxTQUFTSCxPQUFPLElBQUlJLFlBQVksUUFBUSxtQkFBbUI7QUFDM0QsU0FBU0osT0FBTyxJQUFJSyxnQkFBZ0IsUUFBUSx1QkFBdUI7QUFVbkUsY0FBYyx1QkFBdUI7QUFDckMsY0FBYyxtQkFBbUIifQ==
11
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJPYmplY3QiLCJoYXNPd24iLCJpdCIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlZmF1bHQiLCJSZXN0RW5kcG9pbnQiLCJjcmVhdGVSZXNvdXJjZSIsImhvb2tpZnlSZXNvdXJjZSIsIk5ldHdvcmtFcnJvciIsInBhZ2luYXRpb25VcGRhdGUiXSwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwic291cmNlc0NvbnRlbnQiOlsiT2JqZWN0Lmhhc093biA9XG4gIE9iamVjdC5oYXNPd24gfHxcbiAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi8gZnVuY3Rpb24gaGFzT3duKGl0LCBrZXkpIHtcbiAgICByZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGl0LCBrZXkpO1xuICB9O1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBSZXN0RW5kcG9pbnQgfSBmcm9tICcuL1Jlc3RFbmRwb2ludC5qcyc7XG5leHBvcnQgdHlwZSB7XG4gIEdldEVuZHBvaW50LFxuICBNdXRhdGVFbmRwb2ludCxcbiAgRGVmYXVsdHMsXG4gIFJlc3RHZW5lcmljcyxcbiAgRmV0Y2hHZXQsXG4gIEZldGNoTXV0YXRlLFxuICBSZXN0RmV0Y2gsXG4gIFJlc3RUeXBlLFxuICBSZXN0SW5zdGFuY2UsXG4gIEtleW9mUmVzdEVuZHBvaW50LFxuICBSZXN0RW5kcG9pbnRDb25zdHJ1Y3Rvck9wdGlvbnMsXG4gIEFkZEVuZHBvaW50LFxuICBQYWdpbmF0aW9uRmllbGRFbmRwb2ludCxcbiAgUGFnaW5hdGlvbkVuZHBvaW50LFxufSBmcm9tICcuL1Jlc3RFbmRwb2ludC5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIGNyZWF0ZVJlc291cmNlIH0gZnJvbSAnLi9jcmVhdGVSZXNvdXJjZS5qcyc7XG5leHBvcnQgdHlwZSB7IFJlc291cmNlIH0gZnJvbSAnLi9yZXNvdXJjZVR5cGVzLmpzJztcbmV4cG9ydCB0eXBlIHsgUmVzb3VyY2VPcHRpb25zLCBSZXNvdXJjZUdlbmVyaWNzIH0gZnJvbSAnLi9yZXNvdXJjZVR5cGVzLmpzJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgaG9va2lmeVJlc291cmNlIH0gZnJvbSAnLi9ob29raWZ5UmVzb3VyY2UuanMnO1xuZXhwb3J0IHR5cGUge1xuICBIb29rUmVzb3VyY2UsXG4gIEhvb2thYmxlRW5kcG9pbnRJbnRlcmZhY2UsXG59IGZyb20gJy4vaG9va2lmeVJlc291cmNlLmpzJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgTmV0d29ya0Vycm9yIH0gZnJvbSAnLi9OZXR3b3JrRXJyb3IuanMnO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBwYWdpbmF0aW9uVXBkYXRlIH0gZnJvbSAnLi9wYWdpbmF0aW9uVXBkYXRlLmpzJztcbmV4cG9ydCB0eXBlIHsgT3B0aW9uc1RvRnVuY3Rpb24gfSBmcm9tICcuL09wdGlvbnNUb0Z1bmN0aW9uLmpzJztcbmV4cG9ydCB0eXBlIHtcbiAgU2hvcnRlblBhdGgsXG4gIFBhdGhBcmdzLFxuICBQYXRoS2V5cyxcbiAgS2V5c1RvQXJncyxcbiAgUGF0aEFyZ3NBbmRTZWFyY2gsXG59IGZyb20gJy4vcGF0aFR5cGVzLmpzJztcblxuZXhwb3J0ICogZnJvbSAnQGRhdGEtY2xpZW50L2VuZHBvaW50JztcbmV4cG9ydCAqIGZyb20gJy4vUmVzdEVuZHBvaW50LmpzJztcbiJdLCJtYXBwaW5ncyI6IkFBQUFBLE1BQU0sQ0FBQ0MsTUFBTSxHQUNYRCxNQUFNLENBQUNDLE1BQU0sSUFDYiwwQkFBMkIsU0FBU0EsTUFBTUEsQ0FBQ0MsRUFBRSxFQUFFQyxHQUFHLEVBQUU7RUFDbEQsT0FBT0gsTUFBTSxDQUFDSSxTQUFTLENBQUNDLGNBQWMsQ0FBQ0MsSUFBSSxDQUFDSixFQUFFLEVBQUVDLEdBQUcsQ0FBQztBQUN0RCxDQUFDO0FBQ0gsU0FBU0ksT0FBTyxJQUFJQyxZQUFZLFFBQVEsbUJBQW1CO0FBaUIzRCxTQUFTRCxPQUFPLElBQUlFLGNBQWMsUUFBUSxxQkFBcUI7QUFHL0QsU0FBU0YsT0FBTyxJQUFJRyxlQUFlLFFBQVEsc0JBQXNCO0FBS2pFLFNBQVNILE9BQU8sSUFBSUksWUFBWSxRQUFRLG1CQUFtQjtBQUMzRCxTQUFTSixPQUFPLElBQUlLLGdCQUFnQixRQUFRLHVCQUF1QjtBQVVuRSxjQUFjLHVCQUF1QjtBQUNyQyxjQUFjLG1CQUFtQiJ9
@@ -1,6 +1,6 @@
1
1
  export * from '../RestEndpoint.js';
2
2
  export { default as RestEndpoint } from '../RestEndpoint.js';
3
3
  export { default as createResource } from '../createResource.js';
4
- export type { Resource } from '../createResource.js';
4
+ export type { Resource } from '../resourceTypes.js';
5
5
  export type { ResourceOptions, ResourceGenerics } from '../resourceTypes.js';
6
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/next/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACjE,YAAY,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/next/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACjE,YAAY,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC"}
package/lib/next/index.js CHANGED
@@ -1,4 +1,4 @@
1
1
  export * from '../RestEndpoint.js';
2
2
  export { default as RestEndpoint } from '../RestEndpoint.js';
3
3
  export { default as createResource } from '../createResource.js';
4
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJkZWZhdWx0IiwiUmVzdEVuZHBvaW50IiwiY3JlYXRlUmVzb3VyY2UiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvbmV4dC9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuLi9SZXN0RW5kcG9pbnQuanMnO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBSZXN0RW5kcG9pbnQgfSBmcm9tICcuLi9SZXN0RW5kcG9pbnQuanMnO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBjcmVhdGVSZXNvdXJjZSB9IGZyb20gJy4uL2NyZWF0ZVJlc291cmNlLmpzJztcbmV4cG9ydCB0eXBlIHsgUmVzb3VyY2UgfSBmcm9tICcuLi9jcmVhdGVSZXNvdXJjZS5qcyc7XG5leHBvcnQgdHlwZSB7IFJlc291cmNlT3B0aW9ucywgUmVzb3VyY2VHZW5lcmljcyB9IGZyb20gJy4uL3Jlc291cmNlVHlwZXMuanMnO1xuIl0sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG9CQUFvQjtBQUNsQyxTQUFTQSxPQUFPLElBQUlDLFlBQVksUUFBUSxvQkFBb0I7QUFDNUQsU0FBU0QsT0FBTyxJQUFJRSxjQUFjLFFBQVEsc0JBQXNCIn0=
4
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJkZWZhdWx0IiwiUmVzdEVuZHBvaW50IiwiY3JlYXRlUmVzb3VyY2UiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvbmV4dC9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuLi9SZXN0RW5kcG9pbnQuanMnO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBSZXN0RW5kcG9pbnQgfSBmcm9tICcuLi9SZXN0RW5kcG9pbnQuanMnO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBjcmVhdGVSZXNvdXJjZSB9IGZyb20gJy4uL2NyZWF0ZVJlc291cmNlLmpzJztcbmV4cG9ydCB0eXBlIHsgUmVzb3VyY2UgfSBmcm9tICcuLi9yZXNvdXJjZVR5cGVzLmpzJztcbmV4cG9ydCB0eXBlIHsgUmVzb3VyY2VPcHRpb25zLCBSZXNvdXJjZUdlbmVyaWNzIH0gZnJvbSAnLi4vcmVzb3VyY2VUeXBlcy5qcyc7XG4iXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsb0JBQW9CO0FBQ2xDLFNBQVNBLE9BQU8sSUFBSUMsWUFBWSxRQUFRLG9CQUFvQjtBQUM1RCxTQUFTRCxPQUFPLElBQUlFLGNBQWMsUUFBUSxzQkFBc0IifQ==
@@ -0,0 +1,25 @@
1
+ import type { EndpointInterface, EndpointToFunction } from '@data-client/endpoint';
2
+ import type { ResourcePath } from './pathTypes.js';
3
+ import type { ResourceExtension, ResourceEndpointExtensions, CustomResource, ExtendedResource } from './resourceExtensionTypes.js';
4
+ import type { ResourceGenerics, ResourceInterface } from './resourceTypes.js';
5
+ import type { PartialRestGenerics, RestEndpointExtendOptions, RestExtendedEndpoint, RestInstanceBase } from './RestEndpoint.js';
6
+ export interface Extendable<O extends ResourceGenerics = {
7
+ path: ResourcePath;
8
+ schema: any;
9
+ }> {
10
+ /** Allows customizing individual endpoints
11
+ *
12
+ * @see https://dataclient.io/rest/api/createResource#extend
13
+ */
14
+ extend<R extends {
15
+ [K in ExtendKey]: RestInstanceBase;
16
+ }, const ExtendKey extends Exclude<Extract<keyof R, string>, 'extend'>, ExtendOptions extends PartialRestGenerics | {}>(this: R, key: ExtendKey, options: Readonly<RestEndpointExtendOptions<ExtendOptions, R[ExtendKey], EndpointToFunction<R[ExtendKey]>> & ExtendOptions>): ResourceExtension<R, ExtendKey, ExtendOptions>;
17
+ extend<R extends {
18
+ get: RestInstanceBase;
19
+ }, const ExtendKey extends string, ExtendOptions extends PartialRestGenerics | {}>(this: R, key: ExtendKey, options: Readonly<RestEndpointExtendOptions<ExtendOptions, R['get'], EndpointToFunction<R['get']>> & ExtendOptions>): R & {
20
+ [key in ExtendKey]: RestExtendedEndpoint<ExtendOptions, R['get']>;
21
+ };
22
+ extend<R extends ResourceInterface, Get extends PartialRestGenerics = any, GetList extends PartialRestGenerics = any, Update extends PartialRestGenerics = any, PartialUpdate extends PartialRestGenerics = any, Delete extends PartialRestGenerics = any>(this: R, options: ResourceEndpointExtensions<R, Get, GetList, Update, PartialUpdate, Delete>): CustomResource<R, O, Get, GetList, Update, PartialUpdate, Delete>;
23
+ extend<R extends ResourceInterface, T extends Record<string, EndpointInterface>>(this: R, extender: (baseResource: R) => T): ExtendedResource<R, T>;
24
+ }
25
+ //# sourceMappingURL=resourceExtendable.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resourceExtendable.d.ts","sourceRoot":"","sources":["../src/resourceExtendable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,KAAK,EACV,iBAAiB,EACjB,0BAA0B,EAC1B,cAAc,EACd,gBAAgB,EACjB,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAEV,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EACV,mBAAmB,EACnB,yBAAyB,EACzB,oBAAoB,EACpB,gBAAgB,EACjB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,WAAW,UAAU,CACzB,CAAC,SAAS,gBAAgB,GAAG;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,MAAM,EAAE,GAAG,CAAA;CAAE;IAEhE;;;OAGG;IACH,MAAM,CACJ,CAAC,SAAS;SACP,CAAC,IAAI,SAAS,GAAG,gBAAgB;KACnC,EACD,KAAK,CAAC,SAAS,SAAS,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,EAEnE,aAAa,SAAS,mBAAmB,GAAG,EAAE,EAE9C,IAAI,EAAE,CAAC,EACP,GAAG,EAAE,SAAS,EACd,OAAO,EAAE,QAAQ,CACf,yBAAyB,CACvB,aAAa,EACb,CAAC,CAAC,SAAS,CAAC,EACZ,kBAAkB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CACjC,GACC,aAAa,CAChB,GACA,iBAAiB,CAAC,CAAC,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;IAClD,MAAM,CACJ,CAAC,SAAS;QAAE,GAAG,EAAE,gBAAgB,CAAA;KAAE,EACnC,KAAK,CAAC,SAAS,SAAS,MAAM,EAE9B,aAAa,SAAS,mBAAmB,GAAG,EAAE,EAE9C,IAAI,EAAE,CAAC,EACP,GAAG,EAAE,SAAS,EACd,OAAO,EAAE,QAAQ,CACf,yBAAyB,CACvB,aAAa,EACb,CAAC,CAAC,KAAK,CAAC,EACR,kBAAkB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAC7B,GACC,aAAa,CAChB,GACA,CAAC,GAAG;SACJ,GAAG,IAAI,SAAS,GAAG,oBAAoB,CAAC,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;KAClE,CAAC;IACF,MAAM,CACJ,CAAC,SAAS,iBAAiB,EAC3B,GAAG,SAAS,mBAAmB,GAAG,GAAG,EACrC,OAAO,SAAS,mBAAmB,GAAG,GAAG,EACzC,MAAM,SAAS,mBAAmB,GAAG,GAAG,EACxC,aAAa,SAAS,mBAAmB,GAAG,GAAG,EAC/C,MAAM,SAAS,mBAAmB,GAAG,GAAG,EAExC,IAAI,EAAE,CAAC,EACP,OAAO,EAAE,0BAA0B,CACjC,CAAC,EACD,GAAG,EACH,OAAO,EACP,MAAM,EACN,aAAa,EACb,MAAM,CACP,GACA,cAAc,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;IACrE,MAAM,CACJ,CAAC,SAAS,iBAAiB,EAC3B,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,EAE3C,IAAI,EAAE,CAAC,EACP,QAAQ,EAAE,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,GAC/B,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CAC3B"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vc3JjL3Jlc291cmNlRXh0ZW5kYWJsZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEVuZHBvaW50SW50ZXJmYWNlLFxuICBFbmRwb2ludFRvRnVuY3Rpb24sXG59IGZyb20gJ0BkYXRhLWNsaWVudC9lbmRwb2ludCc7XG5cbmltcG9ydCB0eXBlIHsgUmVzb3VyY2VQYXRoIH0gZnJvbSAnLi9wYXRoVHlwZXMuanMnO1xuaW1wb3J0IHR5cGUge1xuICBSZXNvdXJjZUV4dGVuc2lvbixcbiAgUmVzb3VyY2VFbmRwb2ludEV4dGVuc2lvbnMsXG4gIEN1c3RvbVJlc291cmNlLFxuICBFeHRlbmRlZFJlc291cmNlLFxufSBmcm9tICcuL3Jlc291cmNlRXh0ZW5zaW9uVHlwZXMuanMnO1xuaW1wb3J0IHR5cGUge1xuICBSZXNvdXJjZSxcbiAgUmVzb3VyY2VHZW5lcmljcyxcbiAgUmVzb3VyY2VJbnRlcmZhY2UsXG59IGZyb20gJy4vcmVzb3VyY2VUeXBlcy5qcyc7XG5pbXBvcnQgdHlwZSB7XG4gIFBhcnRpYWxSZXN0R2VuZXJpY3MsXG4gIFJlc3RFbmRwb2ludEV4dGVuZE9wdGlvbnMsXG4gIFJlc3RFeHRlbmRlZEVuZHBvaW50LFxuICBSZXN0SW5zdGFuY2VCYXNlLFxufSBmcm9tICcuL1Jlc3RFbmRwb2ludC5qcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXh0ZW5kYWJsZTxcbiAgTyBleHRlbmRzIFJlc291cmNlR2VuZXJpY3MgPSB7IHBhdGg6IFJlc291cmNlUGF0aDsgc2NoZW1hOiBhbnkgfSxcbj4ge1xuICAvKiogQWxsb3dzIGN1c3RvbWl6aW5nIGluZGl2aWR1YWwgZW5kcG9pbnRzXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kYXRhY2xpZW50LmlvL3Jlc3QvYXBpL2NyZWF0ZVJlc291cmNlI2V4dGVuZFxuICAgKi9cbiAgZXh0ZW5kPFxuICAgIFIgZXh0ZW5kcyB7XG4gICAgICBbSyBpbiBFeHRlbmRLZXldOiBSZXN0SW5zdGFuY2VCYXNlO1xuICAgIH0sXG4gICAgY29uc3QgRXh0ZW5kS2V5IGV4dGVuZHMgRXhjbHVkZTxFeHRyYWN0PGtleW9mIFIsIHN0cmluZz4sICdleHRlbmQnPixcbiAgICAvLyBUT0RPOiBzZWUgUmVzdEVuZHBvaW50LmV4dGVuZCBUT0RPXG4gICAgRXh0ZW5kT3B0aW9ucyBleHRlbmRzIFBhcnRpYWxSZXN0R2VuZXJpY3MgfCB7fSxcbiAgPihcbiAgICB0aGlzOiBSLFxuICAgIGtleTogRXh0ZW5kS2V5LFxuICAgIG9wdGlvbnM6IFJlYWRvbmx5PFxuICAgICAgUmVzdEVuZHBvaW50RXh0ZW5kT3B0aW9uczxcbiAgICAgICAgRXh0ZW5kT3B0aW9ucyxcbiAgICAgICAgUltFeHRlbmRLZXldLFxuICAgICAgICBFbmRwb2ludFRvRnVuY3Rpb248UltFeHRlbmRLZXldPlxuICAgICAgPiAmXG4gICAgICAgIEV4dGVuZE9wdGlvbnNcbiAgICA+LFxuICApOiBSZXNvdXJjZUV4dGVuc2lvbjxSLCBFeHRlbmRLZXksIEV4dGVuZE9wdGlvbnM+O1xuICBleHRlbmQ8XG4gICAgUiBleHRlbmRzIHsgZ2V0OiBSZXN0SW5zdGFuY2VCYXNlIH0sXG4gICAgY29uc3QgRXh0ZW5kS2V5IGV4dGVuZHMgc3RyaW5nLFxuICAgIC8vIFRPRE86IHNlZSBSZXN0RW5kcG9pbnQuZXh0ZW5kIFRPRE9cbiAgICBFeHRlbmRPcHRpb25zIGV4dGVuZHMgUGFydGlhbFJlc3RHZW5lcmljcyB8IHt9LFxuICA+KFxuICAgIHRoaXM6IFIsXG4gICAga2V5OiBFeHRlbmRLZXksXG4gICAgb3B0aW9uczogUmVhZG9ubHk8XG4gICAgICBSZXN0RW5kcG9pbnRFeHRlbmRPcHRpb25zPFxuICAgICAgICBFeHRlbmRPcHRpb25zLFxuICAgICAgICBSWydnZXQnXSxcbiAgICAgICAgRW5kcG9pbnRUb0Z1bmN0aW9uPFJbJ2dldCddPlxuICAgICAgPiAmXG4gICAgICAgIEV4dGVuZE9wdGlvbnNcbiAgICA+LFxuICApOiBSICYge1xuICAgIFtrZXkgaW4gRXh0ZW5kS2V5XTogUmVzdEV4dGVuZGVkRW5kcG9pbnQ8RXh0ZW5kT3B0aW9ucywgUlsnZ2V0J10+O1xuICB9O1xuICBleHRlbmQ8XG4gICAgUiBleHRlbmRzIFJlc291cmNlSW50ZXJmYWNlLFxuICAgIEdldCBleHRlbmRzIFBhcnRpYWxSZXN0R2VuZXJpY3MgPSBhbnksXG4gICAgR2V0TGlzdCBleHRlbmRzIFBhcnRpYWxSZXN0R2VuZXJpY3MgPSBhbnksXG4gICAgVXBkYXRlIGV4dGVuZHMgUGFydGlhbFJlc3RHZW5lcmljcyA9IGFueSxcbiAgICBQYXJ0aWFsVXBkYXRlIGV4dGVuZHMgUGFydGlhbFJlc3RHZW5lcmljcyA9IGFueSxcbiAgICBEZWxldGUgZXh0ZW5kcyBQYXJ0aWFsUmVzdEdlbmVyaWNzID0gYW55LFxuICA+KFxuICAgIHRoaXM6IFIsXG4gICAgb3B0aW9uczogUmVzb3VyY2VFbmRwb2ludEV4dGVuc2lvbnM8XG4gICAgICBSLFxuICAgICAgR2V0LFxuICAgICAgR2V0TGlzdCxcbiAgICAgIFVwZGF0ZSxcbiAgICAgIFBhcnRpYWxVcGRhdGUsXG4gICAgICBEZWxldGVcbiAgICA+LFxuICApOiBDdXN0b21SZXNvdXJjZTxSLCBPLCBHZXQsIEdldExpc3QsIFVwZGF0ZSwgUGFydGlhbFVwZGF0ZSwgRGVsZXRlPjtcbiAgZXh0ZW5kPFxuICAgIFIgZXh0ZW5kcyBSZXNvdXJjZUludGVyZmFjZSxcbiAgICBUIGV4dGVuZHMgUmVjb3JkPHN0cmluZywgRW5kcG9pbnRJbnRlcmZhY2U+LFxuICA+KFxuICAgIHRoaXM6IFIsXG4gICAgZXh0ZW5kZXI6IChiYXNlUmVzb3VyY2U6IFIpID0+IFQsXG4gICk6IEV4dGVuZGVkUmVzb3VyY2U8UiwgVD47XG59XG4iXSwibWFwcGluZ3MiOiIifQ==
@@ -0,0 +1,33 @@
1
+ import type { EndpointInterface, EndpointToFunction } from '@data-client/endpoint';
2
+ import { OptionsToFunction } from './OptionsToFunction.js';
3
+ import type { ResourcePath } from './pathTypes.js';
4
+ import { Extendable } from './resourceExtendable.js';
5
+ import { ResourceGenerics, ResourceInterface } from './resourceTypes.js';
6
+ import type { PartialRestGenerics, RestExtendedEndpoint, RestInstanceBase, RestEndpointOptions } from './RestEndpoint.js';
7
+ export type ResourceExtension<R extends {
8
+ [K in ExtendKey]: RestInstanceBase;
9
+ }, ExtendKey extends Exclude<Extract<keyof R, string>, 'extend'>, O extends PartialRestGenerics | {}> = {
10
+ [K in keyof R]: K extends ExtendKey ? RestExtendedEndpoint<O, R[K]> : R[K];
11
+ };
12
+ /** Resource with individual endpoints customized
13
+ *
14
+ */
15
+ export interface CustomResource<R extends ResourceInterface, O extends ResourceGenerics = {
16
+ path: ResourcePath;
17
+ schema: any;
18
+ }, Get extends PartialRestGenerics | {} = any, GetList extends PartialRestGenerics | {} = any, Update extends PartialRestGenerics | {} = any, PartialUpdate extends PartialRestGenerics | {} = any, Delete extends PartialRestGenerics | {} = any> extends Extendable<O> {
19
+ get: unknown extends Get ? R['get'] : RestExtendedEndpoint<Get, R['get']>;
20
+ getList: unknown extends GetList ? R['getList'] : RestExtendedEndpoint<GetList, R['getList']>;
21
+ update: unknown extends Update ? R['update'] : RestExtendedEndpoint<Update, R['update']>;
22
+ partialUpdate: unknown extends PartialUpdate ? R['partialUpdate'] : RestExtendedEndpoint<PartialUpdate, R['partialUpdate']>;
23
+ delete: unknown extends Delete ? R['delete'] : RestExtendedEndpoint<Delete, R['delete']>;
24
+ }
25
+ export type ExtendedResource<R extends ResourceInterface, T extends Record<string, EndpointInterface>> = Omit<R, keyof T> & T;
26
+ export interface ResourceEndpointExtensions<R extends ResourceInterface, Get extends PartialRestGenerics = any, GetList extends PartialRestGenerics = any, Update extends PartialRestGenerics = any, PartialUpdate extends PartialRestGenerics = any, Delete extends PartialRestGenerics = any> {
27
+ readonly get?: RestEndpointOptions<unknown extends Get ? EndpointToFunction<R['get']> : OptionsToFunction<Get, R['get'], EndpointToFunction<R['get']>>, R['get']['schema']> & Readonly<Get>;
28
+ readonly getList?: RestEndpointOptions<unknown extends GetList ? EndpointToFunction<R['getList']> : OptionsToFunction<GetList, R['getList'], EndpointToFunction<R['getList']>>, R['getList']['schema']> & Readonly<GetList>;
29
+ readonly update?: RestEndpointOptions<unknown extends Update ? EndpointToFunction<R['update']> : OptionsToFunction<Update, R['update'], EndpointToFunction<R['update']>>, R['update']['schema']> & Readonly<Update>;
30
+ readonly partialUpdate?: RestEndpointOptions<unknown extends PartialUpdate ? EndpointToFunction<R['partialUpdate']> : OptionsToFunction<PartialUpdate, R['partialUpdate'], EndpointToFunction<R['partialUpdate']>>, R['partialUpdate']['schema']> & Readonly<PartialUpdate>;
31
+ readonly delete?: RestEndpointOptions<unknown extends Delete ? EndpointToFunction<R['delete']> : OptionsToFunction<Delete, R['delete'], EndpointToFunction<R['delete']>>, R['delete']['schema']> & Readonly<Delete>;
32
+ }
33
+ //# sourceMappingURL=resourceExtensionTypes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resourceExtensionTypes.d.ts","sourceRoot":"","sources":["../src/resourceExtensionTypes.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vc3JjL3Jlc291cmNlRXh0ZW5zaW9uVHlwZXMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUge1xuICBFbmRwb2ludEludGVyZmFjZSxcbiAgRW5kcG9pbnRUb0Z1bmN0aW9uLFxufSBmcm9tICdAZGF0YS1jbGllbnQvZW5kcG9pbnQnO1xuXG5pbXBvcnQgeyBPcHRpb25zVG9GdW5jdGlvbiB9IGZyb20gJy4vT3B0aW9uc1RvRnVuY3Rpb24uanMnO1xuaW1wb3J0IHR5cGUgeyBSZXNvdXJjZVBhdGggfSBmcm9tICcuL3BhdGhUeXBlcy5qcyc7XG5pbXBvcnQgeyBFeHRlbmRhYmxlIH0gZnJvbSAnLi9yZXNvdXJjZUV4dGVuZGFibGUuanMnO1xuaW1wb3J0IHsgUmVzb3VyY2VHZW5lcmljcywgUmVzb3VyY2VJbnRlcmZhY2UgfSBmcm9tICcuL3Jlc291cmNlVHlwZXMuanMnO1xuaW1wb3J0IHR5cGUge1xuICBQYXJ0aWFsUmVzdEdlbmVyaWNzLFxuICBSZXN0RXh0ZW5kZWRFbmRwb2ludCxcbiAgUmVzdEluc3RhbmNlQmFzZSxcbiAgUmVzdEVuZHBvaW50T3B0aW9ucyxcbn0gZnJvbSAnLi9SZXN0RW5kcG9pbnQuanMnO1xuXG5leHBvcnQgdHlwZSBSZXNvdXJjZUV4dGVuc2lvbjxcbiAgUiBleHRlbmRzIHsgW0sgaW4gRXh0ZW5kS2V5XTogUmVzdEluc3RhbmNlQmFzZSB9LFxuICBFeHRlbmRLZXkgZXh0ZW5kcyBFeGNsdWRlPEV4dHJhY3Q8a2V5b2YgUiwgc3RyaW5nPiwgJ2V4dGVuZCc+LFxuICBPIGV4dGVuZHMgUGFydGlhbFJlc3RHZW5lcmljcyB8IHt9LFxuPiA9IHtcbiAgW0sgaW4ga2V5b2YgUl06IEsgZXh0ZW5kcyBFeHRlbmRLZXkgPyBSZXN0RXh0ZW5kZWRFbmRwb2ludDxPLCBSW0tdPiA6IFJbS107XG59O1xuXG4vKiogUmVzb3VyY2Ugd2l0aCBpbmRpdmlkdWFsIGVuZHBvaW50cyBjdXN0b21pemVkXG4gKlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEN1c3RvbVJlc291cmNlPFxuICBSIGV4dGVuZHMgUmVzb3VyY2VJbnRlcmZhY2UsXG4gIE8gZXh0ZW5kcyBSZXNvdXJjZUdlbmVyaWNzID0geyBwYXRoOiBSZXNvdXJjZVBhdGg7IHNjaGVtYTogYW55IH0sXG4gIEdldCBleHRlbmRzIFBhcnRpYWxSZXN0R2VuZXJpY3MgfCB7fSA9IGFueSxcbiAgR2V0TGlzdCBleHRlbmRzIFBhcnRpYWxSZXN0R2VuZXJpY3MgfCB7fSA9IGFueSxcbiAgVXBkYXRlIGV4dGVuZHMgUGFydGlhbFJlc3RHZW5lcmljcyB8IHt9ID0gYW55LFxuICBQYXJ0aWFsVXBkYXRlIGV4dGVuZHMgUGFydGlhbFJlc3RHZW5lcmljcyB8IHt9ID0gYW55LFxuICBEZWxldGUgZXh0ZW5kcyBQYXJ0aWFsUmVzdEdlbmVyaWNzIHwge30gPSBhbnksXG4+IGV4dGVuZHMgRXh0ZW5kYWJsZTxPPiB7XG4gIC8vIHVua25vd24gb25seSBleHRlbmRzIGFueS4gdGhpcyBhbGxvd3MgdXMgdG8gbWF0Y2ggZXhjbHVzaXZlbHkgb24gbWVtYmVycyBub3Qgc2V0XG4gIGdldDogdW5rbm93biBleHRlbmRzIEdldCA/IFJbJ2dldCddIDogUmVzdEV4dGVuZGVkRW5kcG9pbnQ8R2V0LCBSWydnZXQnXT47XG4gIGdldExpc3Q6IHVua25vd24gZXh0ZW5kcyBHZXRMaXN0XG4gICAgPyBSWydnZXRMaXN0J11cbiAgICA6IFJlc3RFeHRlbmRlZEVuZHBvaW50PEdldExpc3QsIFJbJ2dldExpc3QnXT47XG4gIHVwZGF0ZTogdW5rbm93biBleHRlbmRzIFVwZGF0ZVxuICAgID8gUlsndXBkYXRlJ11cbiAgICA6IFJlc3RFeHRlbmRlZEVuZHBvaW50PFVwZGF0ZSwgUlsndXBkYXRlJ10+O1xuICBwYXJ0aWFsVXBkYXRlOiB1bmtub3duIGV4dGVuZHMgUGFydGlhbFVwZGF0ZVxuICAgID8gUlsncGFydGlhbFVwZGF0ZSddXG4gICAgOiBSZXN0RXh0ZW5kZWRFbmRwb2ludDxQYXJ0aWFsVXBkYXRlLCBSWydwYXJ0aWFsVXBkYXRlJ10+O1xuICBkZWxldGU6IHVua25vd24gZXh0ZW5kcyBEZWxldGVcbiAgICA/IFJbJ2RlbGV0ZSddXG4gICAgOiBSZXN0RXh0ZW5kZWRFbmRwb2ludDxEZWxldGUsIFJbJ2RlbGV0ZSddPjtcbn1cblxuZXhwb3J0IHR5cGUgRXh0ZW5kZWRSZXNvdXJjZTxcbiAgUiBleHRlbmRzIFJlc291cmNlSW50ZXJmYWNlLFxuICBUIGV4dGVuZHMgUmVjb3JkPHN0cmluZywgRW5kcG9pbnRJbnRlcmZhY2U+LFxuPiA9IE9taXQ8Uiwga2V5b2YgVD4gJiBUO1xuXG5leHBvcnQgaW50ZXJmYWNlIFJlc291cmNlRW5kcG9pbnRFeHRlbnNpb25zPFxuICBSIGV4dGVuZHMgUmVzb3VyY2VJbnRlcmZhY2UsXG4gIEdldCBleHRlbmRzIFBhcnRpYWxSZXN0R2VuZXJpY3MgPSBhbnksXG4gIEdldExpc3QgZXh0ZW5kcyBQYXJ0aWFsUmVzdEdlbmVyaWNzID0gYW55LFxuICBVcGRhdGUgZXh0ZW5kcyBQYXJ0aWFsUmVzdEdlbmVyaWNzID0gYW55LFxuICBQYXJ0aWFsVXBkYXRlIGV4dGVuZHMgUGFydGlhbFJlc3RHZW5lcmljcyA9IGFueSxcbiAgRGVsZXRlIGV4dGVuZHMgUGFydGlhbFJlc3RHZW5lcmljcyA9IGFueSxcbj4ge1xuICByZWFkb25seSBnZXQ/OiBSZXN0RW5kcG9pbnRPcHRpb25zPFxuICAgIHVua25vd24gZXh0ZW5kcyBHZXRcbiAgICAgID8gRW5kcG9pbnRUb0Z1bmN0aW9uPFJbJ2dldCddPlxuICAgICAgOiBPcHRpb25zVG9GdW5jdGlvbjxHZXQsIFJbJ2dldCddLCBFbmRwb2ludFRvRnVuY3Rpb248UlsnZ2V0J10+PixcbiAgICBSWydnZXQnXVsnc2NoZW1hJ11cbiAgPiAmXG4gICAgUmVhZG9ubHk8R2V0PjtcbiAgcmVhZG9ubHkgZ2V0TGlzdD86IFJlc3RFbmRwb2ludE9wdGlvbnM8XG4gICAgdW5rbm93biBleHRlbmRzIEdldExpc3RcbiAgICAgID8gRW5kcG9pbnRUb0Z1bmN0aW9uPFJbJ2dldExpc3QnXT5cbiAgICAgIDogT3B0aW9uc1RvRnVuY3Rpb248XG4gICAgICAgICAgR2V0TGlzdCxcbiAgICAgICAgICBSWydnZXRMaXN0J10sXG4gICAgICAgICAgRW5kcG9pbnRUb0Z1bmN0aW9uPFJbJ2dldExpc3QnXT5cbiAgICAgICAgPixcbiAgICBSWydnZXRMaXN0J11bJ3NjaGVtYSddXG4gID4gJlxuICAgIFJlYWRvbmx5PEdldExpc3Q+O1xuICByZWFkb25seSB1cGRhdGU/OiBSZXN0RW5kcG9pbnRPcHRpb25zPFxuICAgIHVua25vd24gZXh0ZW5kcyBVcGRhdGVcbiAgICAgID8gRW5kcG9pbnRUb0Z1bmN0aW9uPFJbJ3VwZGF0ZSddPlxuICAgICAgOiBPcHRpb25zVG9GdW5jdGlvbjxVcGRhdGUsIFJbJ3VwZGF0ZSddLCBFbmRwb2ludFRvRnVuY3Rpb248UlsndXBkYXRlJ10+PixcbiAgICBSWyd1cGRhdGUnXVsnc2NoZW1hJ11cbiAgPiAmXG4gICAgUmVhZG9ubHk8VXBkYXRlPjtcbiAgcmVhZG9ubHkgcGFydGlhbFVwZGF0ZT86IFJlc3RFbmRwb2ludE9wdGlvbnM8XG4gICAgdW5rbm93biBleHRlbmRzIFBhcnRpYWxVcGRhdGVcbiAgICAgID8gRW5kcG9pbnRUb0Z1bmN0aW9uPFJbJ3BhcnRpYWxVcGRhdGUnXT5cbiAgICAgIDogT3B0aW9uc1RvRnVuY3Rpb248XG4gICAgICAgICAgUGFydGlhbFVwZGF0ZSxcbiAgICAgICAgICBSWydwYXJ0aWFsVXBkYXRlJ10sXG4gICAgICAgICAgRW5kcG9pbnRUb0Z1bmN0aW9uPFJbJ3BhcnRpYWxVcGRhdGUnXT5cbiAgICAgICAgPixcbiAgICBSWydwYXJ0aWFsVXBkYXRlJ11bJ3NjaGVtYSddXG4gID4gJlxuICAgIFJlYWRvbmx5PFBhcnRpYWxVcGRhdGU+O1xuICByZWFkb25seSBkZWxldGU/OiBSZXN0RW5kcG9pbnRPcHRpb25zPFxuICAgIHVua25vd24gZXh0ZW5kcyBEZWxldGVcbiAgICAgID8gRW5kcG9pbnRUb0Z1bmN0aW9uPFJbJ2RlbGV0ZSddPlxuICAgICAgOiBPcHRpb25zVG9GdW5jdGlvbjxEZWxldGUsIFJbJ2RlbGV0ZSddLCBFbmRwb2ludFRvRnVuY3Rpb248UlsnZGVsZXRlJ10+PixcbiAgICBSWydkZWxldGUnXVsnc2NoZW1hJ11cbiAgPiAmXG4gICAgUmVhZG9ubHk8RGVsZXRlPjtcbn1cbiJdLCJtYXBwaW5ncyI6IiJ9
@@ -1,13 +1,15 @@
1
+ import type { schema } from '@data-client/endpoint';
1
2
  import type { Schema } from '@data-client/endpoint';
2
- import type { ResourcePath } from './pathTypes.js';
3
- import RestEndpoint from './RestEndpoint.js';
3
+ import type { Denormalize } from '@data-client/endpoint';
4
+ import type { PathArgs, ResourcePath, ShortenPath } from './pathTypes.js';
5
+ import { Extendable } from './resourceExtendable.js';
6
+ import RestEndpoint, { GetEndpoint, MutateEndpoint, RestInstanceBase, RestTypeNoBody } from './RestEndpoint.js';
7
+ /** The typed (generic) options for a Resource */
4
8
  export interface ResourceGenerics {
5
9
  /** @see https://resthooks.io/rest/api/createResource#path */
6
10
  readonly path: ResourcePath;
7
11
  /** @see https://resthooks.io/rest/api/createResource#schema */
8
12
  readonly schema: Schema;
9
- /** @see https://resthooks.io/rest/api/createResource#paginationfield */
10
- readonly paginationField?: string;
11
13
  /** Only used for types */
12
14
  /** @see https://dataclient.io/rest/api/createResource#body */
13
15
  readonly body?: any;
@@ -15,6 +17,7 @@ export interface ResourceGenerics {
15
17
  /** @see https://resthooks.io/rest/api/createResource#searchParams */
16
18
  readonly searchParams?: any;
17
19
  }
20
+ /** The untyped options for createResource() */
18
21
  export interface ResourceOptions {
19
22
  /** @see https://resthooks.io/rest/api/createResource#endpoint */
20
23
  Endpoint?: typeof RestEndpoint;
@@ -38,4 +41,91 @@ export interface ResourceOptions {
38
41
  /** Determines whether to throw or fallback to */
39
42
  errorPolicy?(error: any): 'hard' | 'soft' | undefined;
40
43
  }
44
+ /** Resources are a collection of methods for a given data model.
45
+ * @see https://resthooks.io/rest/api/createResource
46
+ */
47
+ export interface Resource<O extends ResourceGenerics = {
48
+ path: ResourcePath;
49
+ schema: any;
50
+ }> extends Extendable<O> {
51
+ /** Get a singular item
52
+ *
53
+ * @see https://resthooks.io/rest/api/createResource#get
54
+ */
55
+ get: GetEndpoint<{
56
+ path: O['path'];
57
+ schema: O['schema'];
58
+ }>;
59
+ /** Get a list of item
60
+ *
61
+ * @see https://resthooks.io/rest/api/createResource#getlist
62
+ */
63
+ getList: 'searchParams' extends keyof O ? GetEndpoint<{
64
+ path: ShortenPath<O['path']>;
65
+ schema: schema.Collection<[O['schema']]>;
66
+ body: 'body' extends keyof O ? O['body'] : Partial<Denormalize<O['schema']>>;
67
+ searchParams: O['searchParams'];
68
+ }> : GetEndpoint<{
69
+ path: ShortenPath<O['path']>;
70
+ schema: schema.Collection<[O['schema']]>;
71
+ body: 'body' extends keyof O ? O['body'] : Partial<Denormalize<O['schema']>>;
72
+ searchParams: Record<string, number | string | boolean> | undefined;
73
+ }>;
74
+ /** Create a new item (POST)
75
+ *
76
+ * @deprecated use Resource.getList.push instead
77
+ */
78
+ create: 'searchParams' extends keyof O ? MutateEndpoint<{
79
+ path: ShortenPath<O['path']>;
80
+ schema: schema.Collection<[O['schema']]>['push'];
81
+ body: 'body' extends keyof O ? O['body'] : Partial<Denormalize<O['schema']>>;
82
+ searchParams: O['searchParams'];
83
+ }> : MutateEndpoint<{
84
+ path: ShortenPath<O['path']>;
85
+ schema: schema.Collection<[O['schema']]>['push'];
86
+ body: 'body' extends keyof O ? O['body'] : Partial<Denormalize<O['schema']>>;
87
+ }>;
88
+ /** Update an item (PUT)
89
+ *
90
+ * @see https://resthooks.io/rest/api/createResource#update
91
+ */
92
+ update: 'body' extends keyof O ? MutateEndpoint<{
93
+ path: O['path'];
94
+ body: O['body'];
95
+ schema: O['schema'];
96
+ }> : MutateEndpoint<{
97
+ path: O['path'];
98
+ body: Partial<Denormalize<O['schema']>> | FormData;
99
+ schema: O['schema'];
100
+ }>;
101
+ /** Update an item (PATCH)
102
+ *
103
+ * @see https://resthooks.io/rest/api/createResource#partialupdate
104
+ */
105
+ partialUpdate: 'body' extends keyof O ? MutateEndpoint<{
106
+ path: O['path'];
107
+ body: Partial<O['body']>;
108
+ schema: O['schema'];
109
+ }> : MutateEndpoint<{
110
+ path: O['path'];
111
+ body: Partial<Denormalize<O['schema']>> | FormData;
112
+ schema: O['schema'];
113
+ }>;
114
+ /** Delete an item (DELETE)
115
+ *
116
+ * @see https://resthooks.io/rest/api/createResource#delete
117
+ */
118
+ delete: RestTypeNoBody<PathArgs<O['path']>, O['schema'] extends schema.EntityInterface & {
119
+ process: any;
120
+ } ? schema.Invalidate<O['schema']> : O['schema'], undefined, Partial<PathArgs<O['path']>>, {
121
+ path: O['path'];
122
+ }>;
123
+ }
124
+ export interface ResourceInterface {
125
+ get: RestInstanceBase;
126
+ getList: RestInstanceBase;
127
+ update: RestInstanceBase;
128
+ partialUpdate: RestInstanceBase;
129
+ delete: RestInstanceBase;
130
+ }
41
131
  //# sourceMappingURL=resourceTypes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"resourceTypes.d.ts","sourceRoot":"","sources":["../src/resourceTypes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAE7C,MAAM,WAAW,gBAAgB;IAC/B,6DAA6D;IAC7D,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,+DAA+D;IAC/D,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,wEAAwE;IACxE,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,0BAA0B;IAC1B,8DAA8D;IAC9D,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC;IACpB,0BAA0B;IAC1B,qEAAqE;IACrE,QAAQ,CAAC,YAAY,CAAC,EAAE,GAAG,CAAC;CAC7B;AACD,MAAM,WAAW,eAAe;IAC9B,iEAAiE;IACjE,QAAQ,CAAC,EAAE,OAAO,YAAY,CAAC;IAC/B,mEAAmE;IACnE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,kEAAkE;IAClE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,UAAU,CAAC,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC;IACtE,cAAc,CAAC,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC;IAC/D,aAAa,CAAC,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IACpE,aAAa,CAAC,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IACjD,0FAA0F;IAC1F,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,2FAA2F;IAC3F,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IACpC,uDAAuD;IACvD,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,0DAA0D;IAC1D,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAClC,iDAAiD;IACjD,WAAW,CAAC,CAAC,KAAK,EAAE,GAAG,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CACvD"}
1
+ {"version":3,"file":"resourceTypes.d.ts","sourceRoot":"","sources":["../src/resourceTypes.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vc3JjL3Jlc291cmNlVHlwZXMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBTY2hlbWEgfSBmcm9tICdAZGF0YS1jbGllbnQvZW5kcG9pbnQnO1xuXG5pbXBvcnQgdHlwZSB7IFJlc291cmNlUGF0aCB9IGZyb20gJy4vcGF0aFR5cGVzLmpzJztcbmltcG9ydCBSZXN0RW5kcG9pbnQgZnJvbSAnLi9SZXN0RW5kcG9pbnQuanMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFJlc291cmNlR2VuZXJpY3Mge1xuICAvKiogQHNlZSBodHRwczovL3Jlc3Rob29rcy5pby9yZXN0L2FwaS9jcmVhdGVSZXNvdXJjZSNwYXRoICovXG4gIHJlYWRvbmx5IHBhdGg6IFJlc291cmNlUGF0aDtcbiAgLyoqIEBzZWUgaHR0cHM6Ly9yZXN0aG9va3MuaW8vcmVzdC9hcGkvY3JlYXRlUmVzb3VyY2Ujc2NoZW1hICovXG4gIHJlYWRvbmx5IHNjaGVtYTogU2NoZW1hO1xuICAvKiogQHNlZSBodHRwczovL3Jlc3Rob29rcy5pby9yZXN0L2FwaS9jcmVhdGVSZXNvdXJjZSNwYWdpbmF0aW9uZmllbGQgKi9cbiAgcmVhZG9ubHkgcGFnaW5hdGlvbkZpZWxkPzogc3RyaW5nO1xuICAvKiogT25seSB1c2VkIGZvciB0eXBlcyAqL1xuICAvKiogQHNlZSBodHRwczovL2RhdGFjbGllbnQuaW8vcmVzdC9hcGkvY3JlYXRlUmVzb3VyY2UjYm9keSAqL1xuICByZWFkb25seSBib2R5PzogYW55O1xuICAvKiogT25seSB1c2VkIGZvciB0eXBlcyAqL1xuICAvKiogQHNlZSBodHRwczovL3Jlc3Rob29rcy5pby9yZXN0L2FwaS9jcmVhdGVSZXNvdXJjZSNzZWFyY2hQYXJhbXMgKi9cbiAgcmVhZG9ubHkgc2VhcmNoUGFyYW1zPzogYW55O1xufVxuZXhwb3J0IGludGVyZmFjZSBSZXNvdXJjZU9wdGlvbnMge1xuICAvKiogQHNlZSBodHRwczovL3Jlc3Rob29rcy5pby9yZXN0L2FwaS9jcmVhdGVSZXNvdXJjZSNlbmRwb2ludCAqL1xuICBFbmRwb2ludD86IHR5cGVvZiBSZXN0RW5kcG9pbnQ7XG4gIC8qKiBAc2VlIGh0dHBzOi8vcmVzdGhvb2tzLmlvL3Jlc3QvYXBpL2NyZWF0ZVJlc291cmNlI29wdGltaXN0aWMgKi9cbiAgb3B0aW1pc3RpYz86IGJvb2xlYW47XG4gIC8qKiBAc2VlIGh0dHBzOi8vcmVzdGhvb2tzLmlvL3Jlc3QvYXBpL2NyZWF0ZVJlc291cmNlI3VybHByZWZpeCAqL1xuICB1cmxQcmVmaXg/OiBzdHJpbmc7XG4gIHJlcXVlc3RJbml0PzogUmVxdWVzdEluaXQ7XG4gIGdldEhlYWRlcnM/KGhlYWRlcnM6IEhlYWRlcnNJbml0KTogUHJvbWlzZTxIZWFkZXJzSW5pdD4gfCBIZWFkZXJzSW5pdDtcbiAgZ2V0UmVxdWVzdEluaXQ/KGJvZHk6IGFueSk6IFByb21pc2U8UmVxdWVzdEluaXQ+IHwgUmVxdWVzdEluaXQ7XG4gIGZldGNoUmVzcG9uc2U/KGlucHV0OiBSZXF1ZXN0SW5mbywgaW5pdDogUmVxdWVzdEluaXQpOiBQcm9taXNlPGFueT47XG4gIHBhcnNlUmVzcG9uc2U/KHJlc3BvbnNlOiBSZXNwb25zZSk6IFByb21pc2U8YW55PjtcbiAgLyoqIERlZmF1bHQgZGF0YSBleHBpcnkgbGVuZ3RoLCB3aWxsIGZhbGwgYmFjayB0byBOZXR3b3JrTWFuYWdlciBkZWZhdWx0IGlmIG5vdCBkZWZpbmVkICovXG4gIHJlYWRvbmx5IGRhdGFFeHBpcnlMZW5ndGg/OiBudW1iZXI7XG4gIC8qKiBEZWZhdWx0IGVycm9yIGV4cGlyeSBsZW5ndGgsIHdpbGwgZmFsbCBiYWNrIHRvIE5ldHdvcmtNYW5hZ2VyIGRlZmF1bHQgaWYgbm90IGRlZmluZWQgKi9cbiAgcmVhZG9ubHkgZXJyb3JFeHBpcnlMZW5ndGg/OiBudW1iZXI7XG4gIC8qKiBQb2xsIHdpdGggYXQgbGVhc3QgdGhpcyBmcmVxdWVuY3kgaW4gbWlsaXNlY29uZHMgKi9cbiAgcmVhZG9ubHkgcG9sbEZyZXF1ZW5jeT86IG51bWJlcjtcbiAgLyoqIE1hcmtzIGNhY2hlZCByZXNvdXJjZXMgYXMgaW52YWxpZCBpZiB0aGV5IGFyZSBzdGFsZSAqL1xuICByZWFkb25seSBpbnZhbGlkSWZTdGFsZT86IGJvb2xlYW47XG4gIC8qKiBEZXRlcm1pbmVzIHdoZXRoZXIgdG8gdGhyb3cgb3IgZmFsbGJhY2sgdG8gKi9cbiAgZXJyb3JQb2xpY3k/KGVycm9yOiBhbnkpOiAnaGFyZCcgfCAnc29mdCcgfCB1bmRlZmluZWQ7XG59XG4iXSwibWFwcGluZ3MiOiIifQ==
2
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vc3JjL3Jlc291cmNlVHlwZXMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBzY2hlbWEgfSBmcm9tICdAZGF0YS1jbGllbnQvZW5kcG9pbnQnO1xuaW1wb3J0IHR5cGUgeyBTY2hlbWEgfSBmcm9tICdAZGF0YS1jbGllbnQvZW5kcG9pbnQnO1xuaW1wb3J0IHR5cGUgeyBEZW5vcm1hbGl6ZSB9IGZyb20gJ0BkYXRhLWNsaWVudC9lbmRwb2ludCc7XG5cbmltcG9ydCB0eXBlIHsgUGF0aEFyZ3MsIFJlc291cmNlUGF0aCwgU2hvcnRlblBhdGggfSBmcm9tICcuL3BhdGhUeXBlcy5qcyc7XG5pbXBvcnQgeyBFeHRlbmRhYmxlIH0gZnJvbSAnLi9yZXNvdXJjZUV4dGVuZGFibGUuanMnO1xuaW1wb3J0IFJlc3RFbmRwb2ludCwge1xuICBHZXRFbmRwb2ludCxcbiAgTXV0YXRlRW5kcG9pbnQsXG4gIFJlc3RJbnN0YW5jZUJhc2UsXG4gIFJlc3RUeXBlTm9Cb2R5LFxufSBmcm9tICcuL1Jlc3RFbmRwb2ludC5qcyc7XG5cbi8qKiBUaGUgdHlwZWQgKGdlbmVyaWMpIG9wdGlvbnMgZm9yIGEgUmVzb3VyY2UgKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVzb3VyY2VHZW5lcmljcyB7XG4gIC8qKiBAc2VlIGh0dHBzOi8vcmVzdGhvb2tzLmlvL3Jlc3QvYXBpL2NyZWF0ZVJlc291cmNlI3BhdGggKi9cbiAgcmVhZG9ubHkgcGF0aDogUmVzb3VyY2VQYXRoO1xuICAvKiogQHNlZSBodHRwczovL3Jlc3Rob29rcy5pby9yZXN0L2FwaS9jcmVhdGVSZXNvdXJjZSNzY2hlbWEgKi9cbiAgcmVhZG9ubHkgc2NoZW1hOiBTY2hlbWE7XG4gIC8qKiBPbmx5IHVzZWQgZm9yIHR5cGVzICovXG4gIC8qKiBAc2VlIGh0dHBzOi8vZGF0YWNsaWVudC5pby9yZXN0L2FwaS9jcmVhdGVSZXNvdXJjZSNib2R5ICovXG4gIHJlYWRvbmx5IGJvZHk/OiBhbnk7XG4gIC8qKiBPbmx5IHVzZWQgZm9yIHR5cGVzICovXG4gIC8qKiBAc2VlIGh0dHBzOi8vcmVzdGhvb2tzLmlvL3Jlc3QvYXBpL2NyZWF0ZVJlc291cmNlI3NlYXJjaFBhcmFtcyAqL1xuICByZWFkb25seSBzZWFyY2hQYXJhbXM/OiBhbnk7XG59XG4vKiogVGhlIHVudHlwZWQgb3B0aW9ucyBmb3IgY3JlYXRlUmVzb3VyY2UoKSAqL1xuZXhwb3J0IGludGVyZmFjZSBSZXNvdXJjZU9wdGlvbnMge1xuICAvKiogQHNlZSBodHRwczovL3Jlc3Rob29rcy5pby9yZXN0L2FwaS9jcmVhdGVSZXNvdXJjZSNlbmRwb2ludCAqL1xuICBFbmRwb2ludD86IHR5cGVvZiBSZXN0RW5kcG9pbnQ7XG4gIC8qKiBAc2VlIGh0dHBzOi8vcmVzdGhvb2tzLmlvL3Jlc3QvYXBpL2NyZWF0ZVJlc291cmNlI29wdGltaXN0aWMgKi9cbiAgb3B0aW1pc3RpYz86IGJvb2xlYW47XG4gIC8qKiBAc2VlIGh0dHBzOi8vcmVzdGhvb2tzLmlvL3Jlc3QvYXBpL2NyZWF0ZVJlc291cmNlI3VybHByZWZpeCAqL1xuICB1cmxQcmVmaXg/OiBzdHJpbmc7XG4gIHJlcXVlc3RJbml0PzogUmVxdWVzdEluaXQ7XG4gIGdldEhlYWRlcnM/KGhlYWRlcnM6IEhlYWRlcnNJbml0KTogUHJvbWlzZTxIZWFkZXJzSW5pdD4gfCBIZWFkZXJzSW5pdDtcbiAgZ2V0UmVxdWVzdEluaXQ/KGJvZHk6IGFueSk6IFByb21pc2U8UmVxdWVzdEluaXQ+IHwgUmVxdWVzdEluaXQ7XG4gIGZldGNoUmVzcG9uc2U/KGlucHV0OiBSZXF1ZXN0SW5mbywgaW5pdDogUmVxdWVzdEluaXQpOiBQcm9taXNlPGFueT47XG4gIHBhcnNlUmVzcG9uc2U/KHJlc3BvbnNlOiBSZXNwb25zZSk6IFByb21pc2U8YW55PjtcbiAgLyoqIERlZmF1bHQgZGF0YSBleHBpcnkgbGVuZ3RoLCB3aWxsIGZhbGwgYmFjayB0byBOZXR3b3JrTWFuYWdlciBkZWZhdWx0IGlmIG5vdCBkZWZpbmVkICovXG4gIHJlYWRvbmx5IGRhdGFFeHBpcnlMZW5ndGg/OiBudW1iZXI7XG4gIC8qKiBEZWZhdWx0IGVycm9yIGV4cGlyeSBsZW5ndGgsIHdpbGwgZmFsbCBiYWNrIHRvIE5ldHdvcmtNYW5hZ2VyIGRlZmF1bHQgaWYgbm90IGRlZmluZWQgKi9cbiAgcmVhZG9ubHkgZXJyb3JFeHBpcnlMZW5ndGg/OiBudW1iZXI7XG4gIC8qKiBQb2xsIHdpdGggYXQgbGVhc3QgdGhpcyBmcmVxdWVuY3kgaW4gbWlsaXNlY29uZHMgKi9cbiAgcmVhZG9ubHkgcG9sbEZyZXF1ZW5jeT86IG51bWJlcjtcbiAgLyoqIE1hcmtzIGNhY2hlZCByZXNvdXJjZXMgYXMgaW52YWxpZCBpZiB0aGV5IGFyZSBzdGFsZSAqL1xuICByZWFkb25seSBpbnZhbGlkSWZTdGFsZT86IGJvb2xlYW47XG4gIC8qKiBEZXRlcm1pbmVzIHdoZXRoZXIgdG8gdGhyb3cgb3IgZmFsbGJhY2sgdG8gKi9cbiAgZXJyb3JQb2xpY3k/KGVycm9yOiBhbnkpOiAnaGFyZCcgfCAnc29mdCcgfCB1bmRlZmluZWQ7XG59XG5cbi8qKiBSZXNvdXJjZXMgYXJlIGEgY29sbGVjdGlvbiBvZiBtZXRob2RzIGZvciBhIGdpdmVuIGRhdGEgbW9kZWwuXG4gKiBAc2VlIGh0dHBzOi8vcmVzdGhvb2tzLmlvL3Jlc3QvYXBpL2NyZWF0ZVJlc291cmNlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVzb3VyY2U8XG4gIE8gZXh0ZW5kcyBSZXNvdXJjZUdlbmVyaWNzID0geyBwYXRoOiBSZXNvdXJjZVBhdGg7IHNjaGVtYTogYW55IH0sXG4+IGV4dGVuZHMgRXh0ZW5kYWJsZTxPPiB7XG4gIC8qKiBHZXQgYSBzaW5ndWxhciBpdGVtXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9yZXN0aG9va3MuaW8vcmVzdC9hcGkvY3JlYXRlUmVzb3VyY2UjZ2V0XG4gICAqL1xuICBnZXQ6IEdldEVuZHBvaW50PHsgcGF0aDogT1sncGF0aCddOyBzY2hlbWE6IE9bJ3NjaGVtYSddIH0+O1xuICAvKiogR2V0IGEgbGlzdCBvZiBpdGVtXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9yZXN0aG9va3MuaW8vcmVzdC9hcGkvY3JlYXRlUmVzb3VyY2UjZ2V0bGlzdFxuICAgKi9cbiAgZ2V0TGlzdDogJ3NlYXJjaFBhcmFtcycgZXh0ZW5kcyBrZXlvZiBPXG4gICAgPyBHZXRFbmRwb2ludDx7XG4gICAgICAgIHBhdGg6IFNob3J0ZW5QYXRoPE9bJ3BhdGgnXT47XG4gICAgICAgIHNjaGVtYTogc2NoZW1hLkNvbGxlY3Rpb248W09bJ3NjaGVtYSddXT47XG4gICAgICAgIGJvZHk6ICdib2R5JyBleHRlbmRzIGtleW9mIE9cbiAgICAgICAgICA/IE9bJ2JvZHknXVxuICAgICAgICAgIDogUGFydGlhbDxEZW5vcm1hbGl6ZTxPWydzY2hlbWEnXT4+O1xuICAgICAgICBzZWFyY2hQYXJhbXM6IE9bJ3NlYXJjaFBhcmFtcyddO1xuICAgICAgfT5cbiAgICA6IEdldEVuZHBvaW50PHtcbiAgICAgICAgcGF0aDogU2hvcnRlblBhdGg8T1sncGF0aCddPjtcbiAgICAgICAgc2NoZW1hOiBzY2hlbWEuQ29sbGVjdGlvbjxbT1snc2NoZW1hJ11dPjtcbiAgICAgICAgYm9keTogJ2JvZHknIGV4dGVuZHMga2V5b2YgT1xuICAgICAgICAgID8gT1snYm9keSddXG4gICAgICAgICAgOiBQYXJ0aWFsPERlbm9ybWFsaXplPE9bJ3NjaGVtYSddPj47XG4gICAgICAgIHNlYXJjaFBhcmFtczogUmVjb3JkPHN0cmluZywgbnVtYmVyIHwgc3RyaW5nIHwgYm9vbGVhbj4gfCB1bmRlZmluZWQ7XG4gICAgICB9PjtcbiAgLyoqIENyZWF0ZSBhIG5ldyBpdGVtIChQT1NUKVxuICAgKlxuICAgKiBAZGVwcmVjYXRlZCB1c2UgUmVzb3VyY2UuZ2V0TGlzdC5wdXNoIGluc3RlYWRcbiAgICovXG4gIGNyZWF0ZTogJ3NlYXJjaFBhcmFtcycgZXh0ZW5kcyBrZXlvZiBPXG4gICAgPyBNdXRhdGVFbmRwb2ludDx7XG4gICAgICAgIHBhdGg6IFNob3J0ZW5QYXRoPE9bJ3BhdGgnXT47XG4gICAgICAgIHNjaGVtYTogc2NoZW1hLkNvbGxlY3Rpb248W09bJ3NjaGVtYSddXT5bJ3B1c2gnXTtcbiAgICAgICAgYm9keTogJ2JvZHknIGV4dGVuZHMga2V5b2YgT1xuICAgICAgICAgID8gT1snYm9keSddXG4gICAgICAgICAgOiBQYXJ0aWFsPERlbm9ybWFsaXplPE9bJ3NjaGVtYSddPj47XG4gICAgICAgIHNlYXJjaFBhcmFtczogT1snc2VhcmNoUGFyYW1zJ107XG4gICAgICB9PlxuICAgIDogTXV0YXRlRW5kcG9pbnQ8e1xuICAgICAgICBwYXRoOiBTaG9ydGVuUGF0aDxPWydwYXRoJ10+O1xuICAgICAgICBzY2hlbWE6IHNjaGVtYS5Db2xsZWN0aW9uPFtPWydzY2hlbWEnXV0+WydwdXNoJ107XG4gICAgICAgIGJvZHk6ICdib2R5JyBleHRlbmRzIGtleW9mIE9cbiAgICAgICAgICA/IE9bJ2JvZHknXVxuICAgICAgICAgIDogUGFydGlhbDxEZW5vcm1hbGl6ZTxPWydzY2hlbWEnXT4+O1xuICAgICAgfT47XG4gIC8qKiBVcGRhdGUgYW4gaXRlbSAoUFVUKVxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vcmVzdGhvb2tzLmlvL3Jlc3QvYXBpL2NyZWF0ZVJlc291cmNlI3VwZGF0ZVxuICAgKi9cbiAgdXBkYXRlOiAnYm9keScgZXh0ZW5kcyBrZXlvZiBPXG4gICAgPyBNdXRhdGVFbmRwb2ludDx7XG4gICAgICAgIHBhdGg6IE9bJ3BhdGgnXTtcbiAgICAgICAgYm9keTogT1snYm9keSddO1xuICAgICAgICBzY2hlbWE6IE9bJ3NjaGVtYSddO1xuICAgICAgfT5cbiAgICA6IE11dGF0ZUVuZHBvaW50PHtcbiAgICAgICAgcGF0aDogT1sncGF0aCddO1xuICAgICAgICBib2R5OiBQYXJ0aWFsPERlbm9ybWFsaXplPE9bJ3NjaGVtYSddPj4gfCBGb3JtRGF0YTtcbiAgICAgICAgc2NoZW1hOiBPWydzY2hlbWEnXTtcbiAgICAgIH0+O1xuICAvKiogVXBkYXRlIGFuIGl0ZW0gKFBBVENIKVxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vcmVzdGhvb2tzLmlvL3Jlc3QvYXBpL2NyZWF0ZVJlc291cmNlI3BhcnRpYWx1cGRhdGVcbiAgICovXG4gIHBhcnRpYWxVcGRhdGU6ICdib2R5JyBleHRlbmRzIGtleW9mIE9cbiAgICA/IE11dGF0ZUVuZHBvaW50PHtcbiAgICAgICAgcGF0aDogT1sncGF0aCddO1xuICAgICAgICBib2R5OiBQYXJ0aWFsPE9bJ2JvZHknXT47XG4gICAgICAgIHNjaGVtYTogT1snc2NoZW1hJ107XG4gICAgICB9PlxuICAgIDogTXV0YXRlRW5kcG9pbnQ8e1xuICAgICAgICBwYXRoOiBPWydwYXRoJ107XG4gICAgICAgIGJvZHk6IFBhcnRpYWw8RGVub3JtYWxpemU8T1snc2NoZW1hJ10+PiB8IEZvcm1EYXRhO1xuICAgICAgICBzY2hlbWE6IE9bJ3NjaGVtYSddO1xuICAgICAgfT47XG4gIC8qKiBEZWxldGUgYW4gaXRlbSAoREVMRVRFKVxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vcmVzdGhvb2tzLmlvL3Jlc3QvYXBpL2NyZWF0ZVJlc291cmNlI2RlbGV0ZVxuICAgKi9cbiAgZGVsZXRlOiBSZXN0VHlwZU5vQm9keTxcbiAgICBQYXRoQXJnczxPWydwYXRoJ10+LFxuICAgIE9bJ3NjaGVtYSddIGV4dGVuZHMgc2NoZW1hLkVudGl0eUludGVyZmFjZSAmIHsgcHJvY2VzczogYW55IH1cbiAgICAgID8gc2NoZW1hLkludmFsaWRhdGU8T1snc2NoZW1hJ10+XG4gICAgICA6IE9bJ3NjaGVtYSddLFxuICAgIHVuZGVmaW5lZCxcbiAgICBQYXJ0aWFsPFBhdGhBcmdzPE9bJ3BhdGgnXT4+LFxuICAgIHtcbiAgICAgIHBhdGg6IE9bJ3BhdGgnXTtcbiAgICB9XG4gID47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVzb3VyY2VJbnRlcmZhY2Uge1xuICBnZXQ6IFJlc3RJbnN0YW5jZUJhc2U7XG4gIGdldExpc3Q6IFJlc3RJbnN0YW5jZUJhc2U7XG4gIHVwZGF0ZTogUmVzdEluc3RhbmNlQmFzZTtcbiAgcGFydGlhbFVwZGF0ZTogUmVzdEluc3RhbmNlQmFzZTtcbiAgZGVsZXRlOiBSZXN0SW5zdGFuY2VCYXNlO1xufVxuIl0sIm1hcHBpbmdzIjoiIn0=
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@data-client/rest",
3
- "version": "0.4.1",
3
+ "version": "0.6.0",
4
4
  "description": "Endpoints for REST APIs",
5
5
  "homepage": "https://dataclient.io/rest",
6
6
  "repository": {
@@ -326,7 +326,7 @@ export type AddEndpoint<
326
326
  >,
327
327
  S,
328
328
  true,
329
- O & { method: 'POST' }
329
+ Omit<O, 'method'> & { method: 'POST' }
330
330
  >;
331
331
 
332
332
  type OptionsBodyDefault<O extends RestGenerics> = 'body' extends keyof O