@data-client/rest 0.14.0 → 0.14.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -5
- package/dist/index.js +6 -5
- package/dist/index.umd.min.js +1 -1
- package/legacy/index.js +3 -2
- package/legacy/resource.js +140 -0
- package/legacy/resourceExtendable.js +1 -1
- package/legacy/resourceTypes.js +1 -1
- package/lib/index.d.ts +2 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +3 -2
- package/lib/resource.d.ts +7 -0
- package/lib/resource.d.ts.map +1 -0
- package/lib/resource.js +162 -0
- package/lib/resourceExtendable.d.ts +1 -1
- package/lib/resourceExtendable.js +1 -1
- package/lib/resourceTypes.d.ts +17 -17
- package/lib/resourceTypes.d.ts.map +1 -1
- package/lib/resourceTypes.js +1 -1
- package/package.json +2 -2
- package/src/__tests__/Resource.test.ts +6 -6
- package/src/__tests__/__snapshots__/createResource.test.ts.snap +7 -7
- package/src/__tests__/createResource.test.ts +14 -14
- package/src/index.ts +2 -1
- package/src/{createResource.ts → resource.ts} +4 -4
- package/src/resourceExtendable.ts +1 -1
- package/src/resourceTypes.ts +17 -17
- package/ts4.0/index.d.ts +2 -1
- package/ts4.0/resource.d.ts +7 -0
- package/ts4.0/resourceTypes.d.ts +17 -17
- package/ts4.1/index.d.ts +2 -1
- package/ts4.1/resource.d.ts +7 -0
- package/ts4.1/resourceTypes.d.ts +17 -17
- package/legacy/createResource.js +0 -140
- package/lib/createResource.d.ts +0 -7
- package/lib/createResource.d.ts.map +0 -1
- package/lib/createResource.js +0 -162
- package/ts4.0/createResource.d.ts +0 -7
- package/ts4.1/createResource.d.ts +0 -7
package/README.md
CHANGED
|
@@ -37,9 +37,9 @@ It automatically handles REST concepts like JSON serialization, consolidated err
|
|
|
37
37
|
|
|
38
38
|
## Resources
|
|
39
39
|
|
|
40
|
-
Simplify related CRUD endpoints with [Resources](https://dataclient.io/rest/api/
|
|
40
|
+
Simplify related CRUD endpoints with [Resources](https://dataclient.io/rest/api/resource)
|
|
41
41
|
|
|
42
|
-
[Resources](https://dataclient.io/rest/api/
|
|
42
|
+
[Resources](https://dataclient.io/rest/api/resource) are a collection of `methods` for a given `data model`.
|
|
43
43
|
|
|
44
44
|
[Entities](https://dataclient.io/rest/api/Entity) and [Schemas](https://dataclient.io/concepts/normalization) declaratively define the _data model_.
|
|
45
45
|
[RestEndpoints](https://dataclient.io/rest/api/RestEndpoint) are the [_methods_](<https://en.wikipedia.org/wiki/Method_(computer_programming)>) on
|
|
@@ -55,7 +55,7 @@ class Todo extends Entity {
|
|
|
55
55
|
return `${this.id}`;
|
|
56
56
|
}
|
|
57
57
|
}
|
|
58
|
-
const TodoResource =
|
|
58
|
+
const TodoResource = resource({
|
|
59
59
|
urlPrefix: 'https://jsonplaceholder.typicode.com',
|
|
60
60
|
path: '/todos/:id',
|
|
61
61
|
searchParams: {} as { userId?: string | number },
|
|
@@ -64,7 +64,7 @@ const TodoResource = createResource({
|
|
|
64
64
|
});
|
|
65
65
|
```
|
|
66
66
|
|
|
67
|
-
One Resource defines [seven endpoints](https://dataclient.io/rest/api/
|
|
67
|
+
One Resource defines [seven endpoints](https://dataclient.io/rest/api/resource#members):
|
|
68
68
|
|
|
69
69
|
```typescript
|
|
70
70
|
// GET https://jsonplaceholder.typicode.com/todos/5
|
|
@@ -145,7 +145,7 @@ supports inferring argument types from the path templates.
|
|
|
145
145
|
|
|
146
146
|
- Networking definition
|
|
147
147
|
- [Endpoints](https://dataclient.io/rest/api/Endpoint): [RestEndpoint](https://dataclient.io/rest/api/RestEndpoint)
|
|
148
|
-
- [Resources](https://dataclient.io/docs/getting-started/resource): [
|
|
148
|
+
- [Resources](https://dataclient.io/docs/getting-started/resource): [resource()](https://dataclient.io/rest/api/resource), [hookifyResource()](https://dataclient.io/rest/api/hookifyResource)
|
|
149
149
|
- [Data model](https://dataclient.io/docs/concepts/normalization)
|
|
150
150
|
- [Entity](https://dataclient.io/rest/api/Entity), [schema.Entity](https://dataclient.io/rest/api/schema.Entity) mixin
|
|
151
151
|
- [Object](https://dataclient.io/rest/api/Object)
|
package/dist/index.js
CHANGED
|
@@ -377,9 +377,9 @@ const {
|
|
|
377
377
|
|
|
378
378
|
/** Creates collection of Endpoints for common operations on a given data/schema.
|
|
379
379
|
*
|
|
380
|
-
* @see https://dataclient.io/rest/api/
|
|
380
|
+
* @see https://dataclient.io/rest/api/resource
|
|
381
381
|
*/
|
|
382
|
-
function
|
|
382
|
+
function resource({
|
|
383
383
|
path,
|
|
384
384
|
schema,
|
|
385
385
|
Endpoint = RestEndpoint,
|
|
@@ -392,7 +392,7 @@ function createResource({
|
|
|
392
392
|
// if they lowercase and it looks like they meant to use upper-case version
|
|
393
393
|
if ('endpoint' in extraOptions && Endpoint === RestEndpoint && typeof extraOptions['endpoint'] === 'function' && extraOptions['endpoint'] && Object.prototype.isPrototypeOf.call(RestEndpoint.prototype, extraOptions['endpoint'].prototype)) {
|
|
394
394
|
console.warn(`You passed 'endpoint' option; did you mean to use Endpoint?
|
|
395
|
-
https://dataclient.io/rest/api/
|
|
395
|
+
https://dataclient.io/rest/api/resource#endpoint
|
|
396
396
|
This parameter must be capitalized.
|
|
397
397
|
|
|
398
398
|
This warning will not show in production.`);
|
|
@@ -400,7 +400,7 @@ This warning will not show in production.`);
|
|
|
400
400
|
// if they lowercase and it looks like they meant to use upper-case version
|
|
401
401
|
if ('collection' in extraOptions && Collection === BaseCollection && typeof extraOptions['collection'] === 'function' && extraOptions['collection'] && Object.prototype.isPrototypeOf.call(BaseCollection.prototype, extraOptions['collection'].prototype)) {
|
|
402
402
|
console.warn(`You passed 'collection' option; did you mean to use Collection?
|
|
403
|
-
https://dataclient.io/rest/api/
|
|
403
|
+
https://dataclient.io/rest/api/resource#collection
|
|
404
404
|
This parameter must be capitalized.
|
|
405
405
|
|
|
406
406
|
This warning will not show in production.`);
|
|
@@ -559,10 +559,11 @@ Object.hasOwn = Object.hasOwn || /* istanbul ignore next */function hasOwn(it, k
|
|
|
559
559
|
|
|
560
560
|
exports.NetworkError = NetworkError;
|
|
561
561
|
exports.RestEndpoint = RestEndpoint;
|
|
562
|
-
exports.createResource =
|
|
562
|
+
exports.createResource = resource;
|
|
563
563
|
exports.getUrlBase = getUrlBase;
|
|
564
564
|
exports.getUrlTokens = getUrlTokens;
|
|
565
565
|
exports.hookifyResource = hookifyResource;
|
|
566
|
+
exports.resource = resource;
|
|
566
567
|
Object.keys(endpoint).forEach(function (k) {
|
|
567
568
|
if (k !== 'default' && !exports.hasOwnProperty(k)) Object.defineProperty(exports, k, {
|
|
568
569
|
enumerable: true,
|
package/dist/index.umd.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).Rest={})}(this,(function(e){"use strict";function t(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function n(e,t){return e(t={exports:{}},t.exports),t.exports}var r=t(n((function(e){e.exports=function(e){if(null==e)throw new TypeError("Cannot destructure "+e)},e.exports.__esModule=!0,e.exports.default=e.exports}))),s=t(n((function(e){e.exports=function(e,t){if(!Object.prototype.hasOwnProperty.call(e,t))throw new TypeError("attempted to use private field on non-instance");return e},e.exports.__esModule=!0,e.exports.default=e.exports}))),i=t(n((function(e){var t=0;e.exports=function(e){return"__private_"+t+++"_"+e},e.exports.__esModule=!0,e.exports.default=e.exports})));function o(e){return!("function"!=typeof e.hasOwnProperty||!(Object.hasOwnProperty.call(e,"__ownerID")||e._map&&Object.hasOwnProperty.call(e._map,"__ownerID")))}class a{constructor(e,t){this.schema=void 0,t&&(this._schemaAttribute="string"==typeof t?e=>e[t]:t),this.define(e)}get isSingleSchema(){return!this._schemaAttribute}define(e){"_schemaAttribute"in e&&!this._schemaAttribute?(this.schema=e.schema,this._schemaAttribute=e._schemaAttribute):this.schema=e}getSchemaAttribute(e,t,n){return!this.isSingleSchema&&this._schemaAttribute(e,t,n)}inferSchema(e,t,n){if(this.isSingleSchema)return this.schema;const r=this.getSchemaAttribute(e,t,n);return this.schema[r]}normalizeValue(e,t,n,r,s){if(!e)return e;const i=this.inferSchema(e,t,n);if(!i)return e;const o=s(i,e,t,n,r);return this.isSingleSchema||null==o?o:{id:o,schema:this.getSchemaAttribute(e,t,n)}}denormalizeValue(e,t){const n=!this.isSingleSchema&&e&&(o(e)?e.get("schema"):e.schema);if(!this.isSingleSchema&&!n){if("object"==typeof e&&null!==e){const n=this.inferSchema(e,void 0,void 0);if(n)return t(n,e)}return e}const r=this.isSingleSchema?void 0:o(e)?e.get("id"):e.id;return t(this.isSingleSchema?this.schema:this.schema[n],r||e)}}class c extends a{normalize(e,t,n,r,s,i,o,a){return Object.keys(e).reduce(((t,n,i)=>{const o=e[n];return null!=o?Object.assign({},t,{[n]:this.normalizeValue(o,e,n,r,s)}):t}),{})}denormalize(e,t,n){return Object.keys(e).reduce(((t,r)=>{const s=e[r],i=this.denormalizeValue(s,n);return i&&"symbol"!=typeof i?Object.assign({},t,{[r]:i}):t}),{})}queryKey(e,t,n,r){}}const u=e=>void 0!==e&&"symbol"!=typeof e;class h extends a{normalize(e,t,n,r,s,i,o,a){const c=(e=>Array.isArray(e)?e:Object.keys(e).map((t=>e[t])))(e);return c.map(((e,i)=>this.normalizeValue(e,t,n,r,s)))}denormalize(e,t,n){return e.map?e.map((e=>this.denormalizeValue(e,n))).filter(u):e}queryKey(e,t,n,r){}toJSON(){return[this.schema]}}const l=Symbol("INVALID");function f(e,t,n,r){if(o(t))return function(e,t,n){var r;let s;const i=Object.keys(e).reduce(((t,r)=>{const i=`${r}`,o=n(e[i],t.get(i));return"symbol"==typeof o&&(s=o),t.has(i)?t.set(i,o):t}),t);return null!=(r=s)?r:i}(e,t,r);const s=Object.assign({},t);for(const t of Object.keys(e)){const n=r(e[t],s[t]);if(void 0!==s[t]&&(s[t]=n),"symbol"==typeof n)return n}return s}class d{constructor(e){this.schema=void 0,this.define(e)}define(e){this.schema=Object.keys(e).reduce(((t,n)=>{const r=e[n];return Object.assign({},t,{[n]:r})}),this.schema||{})}normalize(...e){return((e,t,n,r,s,i,o,a,c)=>{const u=Object.assign({},t);return Object.keys(e).forEach((n=>{const r=e[n],o=i(r,t[n],t,n,s);void 0===o?delete u[n]:u[n]=o})),u})(this.schema,...e)}denormalize(e,t,n){return f(this.schema,e,0,n)}queryKey(e,t,n,r){return function(e,t,n,r,s){const i={};return Object.keys(e).forEach((o=>{i[o]=n(e[o],t,r,s)})),i}(this.schema,e,t,n,r)}}const p=(e,t)=>[...e,...t],m=(e,t)=>[...t,...e],y=(e,t)=>Object.assign({},e,t),g=e=>[...e],b=e=>Object.assign({},e);class v{addWith(e,t){return O(this,e,t)}createCollectionFilter(...e){return t=>Object.entries(t).every((([t,n])=>{var r;return this.nonFilterArgumentKeys(t)||`${e[0][t]}`===n||`${null==(r=e[1])?void 0:r[t]}`===n}))}nonFilterArgumentKeys(e){return e.startsWith("order")}constructor(e,t){if(this.schema=Array.isArray(e)?new h(e[0]):e,t?"nestKey"in t?this.nestKey=t.nestKey:this.argsKey="argsKey"in t?t.argsKey:e=>Object.assign({},e):this.argsKey=e=>Object.assign({},e),this.key=`COLLECT:${this.schema.constructor.name}(${this.schema.schema.key})`,null!=t&&t.nonFilterArgumentKeys){const{nonFilterArgumentKeys:e}=t;"function"==typeof e?this.nonFilterArgumentKeys=e:e instanceof RegExp?this.nonFilterArgumentKeys=t=>e.test(t):this.nonFilterArgumentKeys=t=>e.includes(t)}else null!=t&&t.createCollectionFilter&&(this.createCollectionFilter=t.createCollectionFilter.bind(this));this.schema instanceof h?(this.createIfValid=g,this.push=O(this,p),this.unshift=O(this,m)):e instanceof c&&(this.createIfValid=b,this.assign=O(this,y))}get cacheWith(){return this.schema.schema}toJSON(){return{name:`Collection(${this.schema.schema.name})`,schema:this.schema.schema.toJSON(),key:this.key}}pk(e,t,n,r){const s=this.argsKey?this.argsKey(...r):this.nestKey(t,n);for(const e in s)"string"!=typeof s[e]&&void 0!==s[e]&&(s[e]=`${s[e]}`);return function(e){const t=Object.keys(e).sort(),n={};for(const r of t)n[r]=e[r];return JSON.stringify(n)}(s)}normalize(e,t,n,r,s,i,o,a){const c=this.schema.normalize(e,t,n,r,s,i,o,a),u=this.pk(c,t,n,r);return i(this,c,u),u}merge(e,t){return t}shouldReorder(e,t,n,r){return t.fetchedAt<e.fetchedAt}mergeWithStore(e,t,n,r){return this.shouldReorder(e,t,n,r)?this.merge(r,n):this.merge(n,r)}mergeMetaWithStore(e,t,n,r){return this.shouldReorder(e,t,n,r)?e:t}queryKey(e,t,n,r){if(this.argsKey){const t=this.pk(void 0,void 0,"",e);if(n(this.key,t))return t}}denormalize(e,t,n){return this.schema.denormalize(e,t,n)}}function O(e,t,n){const r={merge:{value:t},normalize:{value:j},infer:{value:x}};return e.schema instanceof h&&(r.createIfValid={value:E},r.denormalize={value:w}),n&&(r.createCollectionFilter={value:n}),Object.create(e,r)}function x(){}function j(e,t,n,r,s,i,o,a){const c=this.schema.normalize(this.schema instanceof h&&!Array.isArray(e)?[e]:e,t,n,r,s,i,o,a),u=this.createCollectionFilter(...r),l=o(this.key);return l&&Object.keys(l).forEach((e=>{u(JSON.parse(e))&&i(this,c,e)})),c}function E(e){return Array.isArray(e)?[...e]:Object.assign({},e)}function w(e,t,n){return Array.isArray(e)?this.schema.denormalize(e,t,n):this.schema.denormalize([e],t,n)[0]}var k=t(n((function(e){e.exports=function(e,t){if(null==e)return{};var n,r,s={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(s[n]=e[n]);return s},e.exports.__esModule=!0,e.exports.default=e.exports})));const S=["pk","schema","key"];function A(e,t={}){class n extends e{static toString(){return this.key}static toJSON(){return{name:this.name,schema:this.schema,key:this.key}}static pk(e,t,n,r){return this.prototype.pk.call(e,t,n,r)}static shouldUpdate(e,t,n,r){return!0}static shouldReorder(e,t,n,r){return t.fetchedAt<e.fetchedAt}static merge(e,t){return Object.assign({},e,t)}static mergeWithStore(e,t,n,r){return this.shouldUpdate(e,t,n,r)?typeof r!=typeof n?r:this.shouldReorder(e,t,n,r)?this.merge(r,n):this.merge(n,r):n}static mergeMetaWithStore(e,t,n,r){return this.shouldReorder(e,t,n,r)?e:t}static fromJS(e={}){const t=new this(e);return Object.assign(t,e),t}static createIfValid(e){if(!this.validate(e))return this.fromJS(e)}static process(e,t,n,r){return Object.assign({},e)}static normalize(e,t,n,r,s,i,o,a){const c=this.process(e,t,n,r);let u=this.pk(c,t,n,r);if(u=void 0===u||""===u||"undefined"===u?`MISS-${Math.random()}`:`${u}`,a(this.key,u,e))return u;return function(e){if(e){const t=new Error(e);throw t.status=400,t}}(this.validate(c)),Object.keys(this.schema).forEach((e=>{Object.hasOwn(c,e)&&(c[e]=s(this.schema[e],c[e],c,e,r))})),i(this,c,u),u}static validate(e){}static queryKey(e,t,n,r){if(!e[0])return;const s=function(e,t,n){if(["string","number"].includes(typeof t[0]))return`${t[0]}`;const r=e.pk(t[0],void 0,"",t);if(void 0!==r&&""!==r)return r;const s=(i=t[0],o=e.indexes,o?o.find((e=>Object.hasOwn(i,e))):void 0);var i,o;if(!s)return;const a=t[0][s];return n(e.key,s,a)[a]}(this,e,r);return n(this.key,s)?s:void 0}static denormalize(e,t,n){if("symbol"==typeof e)return e;for(const t of Object.keys(this.schema)){const r=n(this.schema[t],e[t]);if("symbol"==typeof r){if(this.defaults[t])return r;e[t]=void 0}else e[t]=r}return e}static get defaults(){return Object.hasOwn(this,"__defaults")||Object.defineProperty(this,"__defaults",{value:new this,writable:!0,configurable:!0}),this.__defaults}}const r=k(t,S);if(Object.assign(n,r),"schema"in t?n.schema=t.schema:e.schema||(n.schema={}),"pk"in t?"function"==typeof t.pk?n.prototype.pk=function(e,n){return t.pk(this,e,n)}:n.prototype.pk=function(){return this[t.pk]}:"function"!=typeof e.prototype.pk&&(n.prototype.pk=function(){return this.id}),"key"in t)Object.defineProperty(n,"key",{value:t.key,configurable:!0,writable:!0,enumerable:!0});else if(!("key"in e)){function s(e){Object.defineProperty(this,"key",{value:e,writable:!0,enumerable:!0,configurable:!0})}const i=function(){return"EntityMixin"===this.name?e.name:this.name},o="undefined"!=typeof document&&document.CLS_MANGLE?function(){return null==document.CLS_MANGLE||document.CLS_MANGLE(this),Object.defineProperty(n,"key",{get:i,set:s,enumerable:!0,configurable:!0}),i.call(this)}:i;Object.defineProperty(n,"key",{get:o,set:s,enumerable:!0,configurable:!0})}return n}var _=Object.freeze({__proto__:null,Union:class extends a{constructor(e,t){if(!t)throw new Error('Expected option "schemaAttribute" not found on UnionSchema.');super(e,t)}normalize(e,t,n,r,s,i,o,a){return this.normalizeValue(e,t,n,r,s)}denormalize(e,t,n){return this.denormalizeValue(e,n)}queryKey(e,t,n,r){if(!e[0])return;const s=this.getSchemaAttribute(e[0],void 0,""),i=this.schema[s];if(void 0===i)return;const o=t(i,e,n,r);return void 0!==o?{id:o,schema:s}:void 0}},Values:c,Array:h,All:class extends h{constructor(e,t){super(e,t)}normalize(e,t,n,r,s,i,o,a){super.normalize(e,t,n,r,s,i,o,a)}queryKey(e,t,n,r){if(this.isSingleSchema){const e=n(this.schema.key);return void 0===e?l:Object.values(e).map((e=>e&&this.schema.pk(e)))}let s=!1;const i=Object.values(this.schema).flatMap((e=>{const t=n(e.key);return void 0===t?[]:(s=!0,Object.values(t).map((t=>({id:t&&e.pk(t),schema:this.getSchemaAttribute(t,void 0,void 0)}))))}));return s?i:l}},Object:d,Invalidate:class{constructor(e){this._entity=e}get key(){return this._entity.key}normalize(e,t,n,r,s,i,o,a){const c=this._entity.process(e,t,n,r),u=this._entity.pk(c,t,n,r);return i(this,l,u),u}merge(e,t){return t}mergeWithStore(e,t,n,r){return this.merge(n,r)}mergeMetaWithStore(e,t,n,r){return t}queryKey(e,t,n,r){}denormalize(e,t,n){return n(this._entity,e)}_denormalizeNullable(){return{}}_normalizeNullable(){return{}}},Collection:v,Entity:A,Query:class{constructor(e,t){this.schema=e,this.process=t}normalize(...e){return this.schema.normalize(...e)}denormalize(e,t,n){const r=n(this.schema,e);return"symbol"==typeof r?r:this.process(r,...t)}queryKey(e,t,n,r){return t(this.schema,e,n,r)}}});const P=class{};class R extends(A(P)){static process(e,t,n,r){return super.process(e,t,n,r)}}var C;const T="undefined"!=typeof document;let z=T&&!(null!=(C=document.querySelector("meta[http-equiv='Content-Security-Policy']"))&&C.getAttribute("content"));try{z||Function()}catch(e){z=!0,T&&console.error("Content Security Policy: The previous CSP log can be safely ignored - @data-client/endpoint will use setPrototypeOf instead")}var N;class $ extends Function{constructor(e,t){let n,r;return z?(n=(...e)=>n.fetch(...e),Object.setPrototypeOf(n,new.target.prototype)):(super("return arguments.callee.fetch.apply(arguments.callee, arguments)"),n=this),e&&(n.fetch=e),t&&"name"in t||!e||!e.name||"anonymous"===e.name||(r=e.name),Object.defineProperty(n,"name",{get(){return r||this.__name},set(e){this.__name=e}}),Object.assign(n,t),n}key(...e){return`${this.name} ${JSON.stringify(e)}`}testKey(e){return e.startsWith(this.name)}bind(e,...t){const n=this.fetch,r=this.key;return this.extend({fetch(){return n.apply(null!=e?e:this,t)},key(){return r.apply(this,t)}})}extend(e){class t extends this.constructor{}return Object.assign(t.prototype,this),new t(e.fetch,e)}}N=$,(()=>{if("undefined"!=typeof document&&document.FUNC_MANGLE){const e=N.prototype.key;N.prototype.key=function(...t){return null==document.FUNC_MANGLE||document.FUNC_MANGLE(this),this.prototype.key=e,e.call(this,...t)}}})();const K=$;function M(e,t){void 0===t&&(t={});for(var n=function(e){for(var t=[],n=0;n<e.length;){var r=e[n];if("*"!==r&&"+"!==r&&"?"!==r)if("\\"!==r)if("{"!==r)if("}"!==r)if(":"!==r)if("("!==r)t.push({type:"CHAR",index:n,value:e[n++]});else{var s=1,i="";if("?"===e[a=n+1])throw new TypeError('Pattern cannot start with "?" at '.concat(a));for(;a<e.length;)if("\\"!==e[a]){if(")"===e[a]){if(0==--s){a++;break}}else if("("===e[a]&&(s++,"?"!==e[a+1]))throw new TypeError("Capturing groups are not allowed at ".concat(a));i+=e[a++]}else i+=e[a++]+e[a++];if(s)throw new TypeError("Unbalanced pattern at ".concat(n));if(!i)throw new TypeError("Missing pattern at ".concat(n));t.push({type:"PATTERN",index:n,value:i}),n=a}else{for(var o="",a=n+1;a<e.length;){var c=e.charCodeAt(a);if(!(c>=48&&c<=57||c>=65&&c<=90||c>=97&&c<=122||95===c))break;o+=e[a++]}if(!o)throw new TypeError("Missing parameter name at ".concat(n));t.push({type:"NAME",index:n,value:o}),n=a}else t.push({type:"CLOSE",index:n,value:e[n++]});else t.push({type:"OPEN",index:n,value:e[n++]});else t.push({type:"ESCAPED_CHAR",index:n++,value:e[n++]});else t.push({type:"MODIFIER",index:n,value:e[n++]})}return t.push({type:"END",index:n,value:""}),t}(e),r=t.prefixes,s=void 0===r?"./":r,i="[^".concat(I(t.delimiter||"/#?"),"]+?"),o=[],a=0,c=0,u="",h=function(e){if(c<n.length&&n[c].type===e)return n[c++].value},l=function(e){var t=h(e);if(void 0!==t)return t;var r=n[c],s=r.type,i=r.index;throw new TypeError("Unexpected ".concat(s," at ").concat(i,", expected ").concat(e))},f=function(){for(var e,t="";e=h("CHAR")||h("ESCAPED_CHAR");)t+=e;return t};c<n.length;){var d=h("CHAR"),p=h("NAME"),m=h("PATTERN");if(p||m){var y=d||"";-1===s.indexOf(y)&&(u+=y,y=""),u&&(o.push(u),u=""),o.push({name:p||a++,prefix:y,suffix:"",pattern:m||i,modifier:h("MODIFIER")||""})}else{var g=d||h("ESCAPED_CHAR");if(g)u+=g;else if(u&&(o.push(u),u=""),h("OPEN")){y=f();var b=h("NAME")||"",v=h("PATTERN")||"",O=f();l("CLOSE"),o.push({name:b||(v?a++:""),pattern:b&&!v?i:v,prefix:y,suffix:O,modifier:h("MODIFIER")||""})}else l("END")}}return o}function F(e,t){return function(e,t){void 0===t&&(t={});var n=L(t),r=t.encode,s=void 0===r?function(e){return e}:r,i=t.validate,o=void 0===i||i,a=e.map((function(e){if("object"==typeof e)return new RegExp("^(?:".concat(e.pattern,")$"),n)}));return function(t){for(var n="",r=0;r<e.length;r++){var i=e[r];if("string"!=typeof i){var c=t?t[i.name]:void 0,u="?"===i.modifier||"*"===i.modifier,h="*"===i.modifier||"+"===i.modifier;if(Array.isArray(c)){if(!h)throw new TypeError('Expected "'.concat(i.name,'" to not repeat, but got an array'));if(0===c.length){if(u)continue;throw new TypeError('Expected "'.concat(i.name,'" to not be empty'))}for(var l=0;l<c.length;l++){var f=s(c[l],i);if(o&&!a[r].test(f))throw new TypeError('Expected all "'.concat(i.name,'" to match "').concat(i.pattern,'", but got "').concat(f,'"'));n+=i.prefix+f+i.suffix}}else if("string"!=typeof c&&"number"!=typeof c){if(!u){var d=h?"an array":"a string";throw new TypeError('Expected "'.concat(i.name,'" to be ').concat(d))}}else{f=s(String(c),i);if(o&&!a[r].test(f))throw new TypeError('Expected "'.concat(i.name,'" to match "').concat(i.pattern,'", but got "').concat(f,'"'));n+=i.prefix+f+i.suffix}}else n+=i}return n}}(M(e,t),t)}function I(e){return e.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1")}function L(e){return e&&e.sensitive?"":"i"}function U(e,t,n){return function(e,t,n){void 0===n&&(n={});for(var r=n.strict,s=void 0!==r&&r,i=n.start,o=void 0===i||i,a=n.end,c=void 0===a||a,u=n.encode,h=void 0===u?function(e){return e}:u,l=n.delimiter,f=void 0===l?"/#?":l,d=n.endsWith,p="[".concat(I(void 0===d?"":d),"]|$"),m="[".concat(I(f),"]"),y=o?"^":"",g=0,b=e;g<b.length;g++){var v=b[g];if("string"==typeof v)y+=I(h(v));else{var O=I(h(v.prefix)),x=I(h(v.suffix));if(v.pattern)if(t&&t.push(v),O||x)if("+"===v.modifier||"*"===v.modifier){var j="*"===v.modifier?"?":"";y+="(?:".concat(O,"((?:").concat(v.pattern,")(?:").concat(x).concat(O,"(?:").concat(v.pattern,"))*)").concat(x,")").concat(j)}else y+="(?:".concat(O,"(").concat(v.pattern,")").concat(x,")").concat(v.modifier);else"+"===v.modifier||"*"===v.modifier?y+="((?:".concat(v.pattern,")").concat(v.modifier,")"):y+="(".concat(v.pattern,")").concat(v.modifier);else y+="(?:".concat(O).concat(x,")").concat(v.modifier)}}if(c)s||(y+="".concat(m,"?")),y+=n.endsWith?"(?=".concat(p,")"):"$";else{var E=e[e.length-1],w="string"==typeof E?m.indexOf(E[E.length-1])>-1:void 0===E;s||(y+="(?:".concat(m,"(?=").concat(p,"))?")),w||(y+="(?=".concat(m,"|").concat(p,")"))}return new RegExp(y,L(n))}(M(e,n),t,n)}function q(e,t,n){return e instanceof RegExp?function(e,t){if(!t)return e;for(var n=/\((?:\?<(.*?)>)?(?!\?)/g,r=0,s=n.exec(e.source);s;)t.push({name:s[1]||r++,prefix:"",suffix:"",modifier:"",pattern:""}),s=n.exec(e.source);return e}(e,t):Array.isArray(e)?function(e,t,n){var r=e.map((function(e){return q(e,t,n).source}));return new RegExp("(?:".concat(r.join("|"),")"),L(n))}(e,t,n):U(e,t,n)}function D(e,t){if("object"!=typeof e||void 0===e||Array.isArray(e))return;if(e instanceof v)return t(e);const n=Object.assign({},e instanceof d?e.schema:e);for(const e in n){if(!n[e])continue;const r=D(n[e],t);if(r)return r}}function V(e,t){if("object"!=typeof e||void 0===e)return e;if(e instanceof v)return t(e);const n=Object.assign({},e instanceof d?e.schema:e);for(const e in n)n[e]&&(n[e]=V(n[e],t));return n}class W extends Error{constructor(e){super(e.statusText||`Network response not 'ok': ${e.status}`),this.name="NetworkError",this.status=e.status,this.response=e}}function J(e,t){const n=new Set(e),r=[...e];for(const e of t)n.has(e)||r.push(e);return r}const G=Object.create(null);function H(e){return e in G||(G[e]=F(e,{encode:encodeURIComponent,validate:!1})),G[e]}const B=Object.create(null);function Q(e){return e in B||(B[e]=new Set(M(e).map((e=>"string"==typeof e?e:`${e.name}`)))),B[e]}const X=Object.prototype,Y=Object.getPrototypeOf;var Z=i("hasBody");class ee extends ${constructor(e){var t;super(null!=(t=e.fetch)?t:async function(...e){const t=s(this,Z)[Z]&&e.length<2?{}:e[0]||{},n=s(this,Z)[Z]?e[e.length-1]:void 0;return this.fetchResponse(this.url(t),await this.getRequestInit(n)).then((e=>this.parseResponse(e))).then((t=>this.process(t,...e)))},e),Object.defineProperty(this,Z,{writable:!0,value:void 0}),(!("sideEffect"in this)||"method"in e&&!("sideEffect"in e))&&(this.sideEffect="GET"!==e.method&&void 0!==e.method||void 0),void 0===this.method&&(this.method=this.sideEffect?"POST":"GET"),void 0===this.urlPrefix&&(this.urlPrefix=""),s(this,Z)[Z]=!("body"in this&&void 0===this.body||["GET","DELETE"].includes(this.method)),Object.defineProperty(this,"name",{get(){return"__name"in this?this.__name:this.urlPrefix+this.path}})}key(...e){return`${this.method} ${this.url(s(this,Z)[Z]&&e.length<2?{}:e[0]||{})}`}url(e={}){const t=H(this.path)(e),n=Q(this.path),r={};return Object.keys(e).forEach((t=>{n.has(t)||(r[t]=e[t])})),Object.keys(r).length?`${this.urlPrefix}${t}?${this.searchToString(r)}`:`${this.urlPrefix}${t}`}searchToString(e){return function(e){const t=new URLSearchParams(e);return t.sort(),t.toString()}(e)}getHeaders(e){return e}async getRequestInit(e){const t=null!==(n=e)&&"object"==typeof n&&Y(n)===X;var n;t&&(e=JSON.stringify(e));const r=Object.assign({},this.requestInit,{method:this.method,signal:this.signal,body:e});return e&&!t||(r.headers=Object.assign({"Content-Type":"application/json"},r.headers)),r.headers=await this.getHeaders(r.headers),r}fetchResponse(e,t){return fetch(e,t).then((e=>{if(!e.ok)throw new W(e);return e})).catch((e=>{throw e instanceof TypeError&&(e.status=500),e}))}parseResponse(e){var t;return 204===e.status?Promise.resolve(null):null!=(t=e.headers.get("content-type"))&&t.includes("json")?e.json().catch((e=>{throw e.status=400,e})):e.text().then((t=>{if(["string","undefined"].includes(typeof this.schema)||null===this.schema||this.process!==ee.prototype.process)return t;const n=new W(e);throw n.status=404,n.message=`Unexpected text response for schema ${this.schema}`,n}))}process(e){return e}errorPolicy(e){return e.status>=500?"soft":void 0}get pathRegex(){return q(this.path)}testKey(e){const t=this.method+" "+this.urlPrefix;if(!e.startsWith(t))return!1;let n=e.lastIndexOf("?");return-1===n&&(n=void 0),this.pathRegex.test(e.substring(t.length,n))}extend(e){class t extends this.constructor{}return Object.assign(t.prototype,this),new t(Object.assign({fetch:this.fetch},e))}paginated(e){if("string"==typeof e){const t=e;e=e=>{let n=Object.assign({},(r(e),e));return delete n[t],[n]}}let t=!1;const n=V(this.schema,(n=>(t=!0,function(e,t){return Object.create(t,{name:{value:`Pagination(${t.schema})`},merge:{value:J},pk:{value:function(n,r,s,i){return t.pk.call(this,n,r,s,e(...i))}}})}(e,n))));if(!t)throw new Error("Missing Collection");const s=this;return this.extend({schema:n,key(...t){return s.key.call(this,...e(...t))},name:this.name+".getPage"})}get getPage(){return this.paginated(this.paginationField)}get push(){return this.extend({method:"POST",schema:D(this.schema,(e=>e.push)),name:this.name+".create"})}get unshift(){return this.extend({method:"POST",schema:D(this.schema,(e=>e.unshift)),name:this.name+".create"})}get assign(){return this.extend({method:"POST",schema:D(this.schema,(e=>e.assign)),name:this.name+".create"})}}const te=["path","schema","Endpoint","Collection","optimistic","paginationField"],{Invalidate:ne,Collection:re}=_;function se(e,t,n){return Object.assign({},t,oe(n))}function ie(e,t){return t}function oe(e){return e instanceof FormData?Object.fromEntries(e.entries()):e}Object.hasOwn=Object.hasOwn||function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},e.Endpoint=$,e.Entity=R,e.ExtendableEndpoint=K,e.INVALID=l,e.NetworkError=W,e.RestEndpoint=ee,e.createResource=function(e){let{path:t,schema:n,Endpoint:r=ee,Collection:s=re,optimistic:i,paginationField:o}=e,a=k(e,te);const c=function(e){const t=e.lastIndexOf(":");if(-1===t)throw new Error("Resource path requires at least one :parameter");let n=e.substring(0,t);return"/"===n[n.length-1]&&(n=n.substring(0,n.length-1)),n}(t),u=e=>`${null==n?void 0:n.name}.${e}`;function h(e,t,n){e[t]=e[t].extend(n)}const l=Object.assign({},a),f=Object.assign({},a),d=new r(Object.assign({},a,{path:t,schema:n,name:u("get")}));i&&(l.getOptimisticResponse=se,f.getOptimisticResponse=function(e){return function(t,n,r){const s=t.get(e,n);if(!s)throw t.abort;return Object.assign({},n,s,oe(r))}}(n));const p=new r(Object.assign({},l,{paginationField:o,path:c,schema:new s([n]),name:u("getList")}));return{get:d,getList:p,create:p.push.extend({name:u("create")}),update:new r(Object.assign({},l,{path:t,schema:n,method:"PUT",name:u("update")})),partialUpdate:new r(Object.assign({},f,{path:t,schema:n,method:"PATCH",name:u("partialUpdate")})),delete:new r(Object.assign({},l,{path:t,schema:n.process?new ne(n):n,method:"DELETE",name:u("delete"),process:(e,t)=>e&&Object.keys(e).length?e:t,getOptimisticResponse:i?ie:void 0})),extend(...e){if("string"==typeof e[0]){const[t,n]=e;if(t in this){const e=Object.assign({},this);return h(e,t,n),e}return Object.assign({},this,{[t]:this.get.extend(n)})}if("function"==typeof e[0]){const t=e[0](this);return Object.assign({},this,t)}const t=e[0],n=Object.assign({},this);for(const e in t)h(n,e,t[e]);return n}}},e.getUrlBase=H,e.getUrlTokens=Q,e.hookifyResource=function(e,t){const n={};return Object.keys(e).forEach((r=>{const s=e[r];var i;void 0!==s.extend&&(n[`use${i=r,i.charAt(0).toUpperCase()+i.slice(1)}`]=()=>{const e=t();return s.extend({requestInit:e})})})),n},e.schema=_,e.validateRequired=function(e,t){let n="";if(Object.keys(t).some((t=>!Object.hasOwn(e,t)&&(n=t,!0))))return`Missing key ${n}`},Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).Rest={})}(this,(function(e){"use strict";function t(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function n(e,t){return e(t={exports:{}},t.exports),t.exports}var r=t(n((function(e){e.exports=function(e){if(null==e)throw new TypeError("Cannot destructure "+e)},e.exports.__esModule=!0,e.exports.default=e.exports}))),s=t(n((function(e){e.exports=function(e,t){if(!Object.prototype.hasOwnProperty.call(e,t))throw new TypeError("attempted to use private field on non-instance");return e},e.exports.__esModule=!0,e.exports.default=e.exports}))),i=t(n((function(e){var t=0;e.exports=function(e){return"__private_"+t+++"_"+e},e.exports.__esModule=!0,e.exports.default=e.exports})));function o(e){return!("function"!=typeof e.hasOwnProperty||!(Object.hasOwnProperty.call(e,"__ownerID")||e._map&&Object.hasOwnProperty.call(e._map,"__ownerID")))}class c{constructor(e,t){this.schema=void 0,t&&(this._schemaAttribute="string"==typeof t?e=>e[t]:t),this.define(e)}get isSingleSchema(){return!this._schemaAttribute}define(e){"_schemaAttribute"in e&&!this._schemaAttribute?(this.schema=e.schema,this._schemaAttribute=e._schemaAttribute):this.schema=e}getSchemaAttribute(e,t,n){return!this.isSingleSchema&&this._schemaAttribute(e,t,n)}inferSchema(e,t,n){if(this.isSingleSchema)return this.schema;const r=this.getSchemaAttribute(e,t,n);return this.schema[r]}schemaKey(){return this.isSingleSchema?this.schema.key:Object.values(this.schema).join(";")}normalizeValue(e,t,n,r,s){if(!e)return e;const i=this.inferSchema(e,t,n);if(!i)return e;const o=s(i,e,t,n,r);return this.isSingleSchema||null==o?o:{id:o,schema:this.getSchemaAttribute(e,t,n)}}denormalizeValue(e,t){const n=!this.isSingleSchema&&e&&(o(e)?e.get("schema"):e.schema);if(!this.isSingleSchema&&!n){if("object"==typeof e&&null!==e){const n=this.inferSchema(e,void 0,void 0);if(n)return t(n,e)}return e}const r=this.isSingleSchema?void 0:o(e)?e.get("id"):e.id;return t(this.isSingleSchema?this.schema:this.schema[n],r||e)}}class a extends c{normalize(e,t,n,r,s,i,o,c){return Object.keys(e).reduce(((t,n,i)=>{const o=e[n];return null!=o?Object.assign({},t,{[n]:this.normalizeValue(o,e,n,r,s)}):t}),{})}denormalize(e,t,n){return Object.keys(e).reduce(((t,r)=>{const s=e[r],i=this.denormalizeValue(s,n);return i&&"symbol"!=typeof i?Object.assign({},t,{[r]:i}):t}),{})}queryKey(e,t,n,r){}}const u=e=>void 0!==e&&"symbol"!=typeof e;class h extends c{normalize(e,t,n,r,s,i,o,c){const a=(e=>Array.isArray(e)?e:Object.keys(e).map((t=>e[t])))(e);return a.map(((e,i)=>this.normalizeValue(e,t,n,r,s)))}denormalize(e,t,n){return e.map?e.map((e=>this.denormalizeValue(e,n))).filter(u):e}queryKey(e,t,n,r){}toJSON(){return[this.schema]}}const l=Symbol("INVALID");function f(e,t,n,r){if(o(t))return function(e,t,n){var r;let s;const i=Object.keys(e).reduce(((t,r)=>{const i=`${r}`,o=n(e[i],t.get(i));return"symbol"==typeof o&&(s=o),t.has(i)?t.set(i,o):t}),t);return null!=(r=s)?r:i}(e,t,r);const s=Object.assign({},t);for(const t of Object.keys(e)){const n=r(e[t],s[t]);if(void 0!==s[t]&&(s[t]=n),"symbol"==typeof n)return n}return s}class d{constructor(e){this.schema=void 0,this.define(e)}define(e){this.schema=Object.keys(e).reduce(((t,n)=>{const r=e[n];return Object.assign({},t,{[n]:r})}),this.schema||{})}normalize(...e){return((e,t,n,r,s,i,o,c,a)=>{const u=Object.assign({},t);return Object.keys(e).forEach((n=>{const r=e[n],o=i(r,t[n],t,n,s);void 0===o?delete u[n]:u[n]=o})),u})(this.schema,...e)}denormalize(e,t,n){return f(this.schema,e,0,n)}queryKey(e,t,n,r){return function(e,t,n,r,s){const i={};return Object.keys(e).forEach((o=>{i[o]=n(e[o],t,r,s)})),i}(this.schema,e,t,n,r)}}const p=(e,t)=>[...e,...t],m=(e,t)=>[...t,...e],y=(e,t)=>Object.assign({},e,t),g=e=>[...e],b=e=>Object.assign({},e);class v{addWith(e,t){return O(this,e,t)}createCollectionFilter(...e){return t=>Object.entries(t).every((([t,n])=>{var r;return this.nonFilterArgumentKeys(t)||`${e[0][t]}`===n||`${null==(r=e[1])?void 0:r[t]}`===n}))}nonFilterArgumentKeys(e){return e.startsWith("order")}constructor(e,t){if(this.schema=Array.isArray(e)?new h(e[0]):e,t?"nestKey"in t?this.nestKey=t.nestKey:this.argsKey="argsKey"in t?t.argsKey:e=>Object.assign({},e):this.argsKey=e=>Object.assign({},e),this.key=function(e){if(e instanceof h)return`[${e.schemaKey()}]`;if(e instanceof a)return`{${e.schemaKey()}}`;return`(${e.schemaKey()})`}(this.schema),null!=t&&t.nonFilterArgumentKeys){const{nonFilterArgumentKeys:e}=t;"function"==typeof e?this.nonFilterArgumentKeys=e:e instanceof RegExp?this.nonFilterArgumentKeys=t=>e.test(t):this.nonFilterArgumentKeys=t=>e.includes(t)}else null!=t&&t.createCollectionFilter&&(this.createCollectionFilter=t.createCollectionFilter.bind(this));this.schema instanceof h?(this.createIfValid=g,this.push=O(this,p),this.unshift=O(this,m)):e instanceof a&&(this.createIfValid=b,this.assign=O(this,y))}get cacheWith(){return this.schema.schema}toString(){return this.key}toJSON(){return{key:this.key,schema:this.schema.schema.toJSON()}}pk(e,t,n,r){const s=this.argsKey?this.argsKey(...r):this.nestKey(t,n);for(const e in s)"string"!=typeof s[e]&&void 0!==s[e]&&(s[e]=`${s[e]}`);return function(e){const t=Object.keys(e).sort(),n={};for(const r of t)n[r]=e[r];return JSON.stringify(n)}(s)}normalize(e,t,n,r,s,i,o,c){const a=this.schema.normalize(e,t,n,r,s,i,o,c),u=this.pk(a,t,n,r);return i(this,a,u),u}merge(e,t){return t}shouldReorder(e,t,n,r){return t.fetchedAt<e.fetchedAt}mergeWithStore(e,t,n,r){return this.shouldReorder(e,t,n,r)?this.merge(r,n):this.merge(n,r)}mergeMetaWithStore(e,t,n,r){return this.shouldReorder(e,t,n,r)?e:t}queryKey(e,t,n,r){if(this.argsKey){const t=this.pk(void 0,void 0,"",e);if(n(this.key,t))return t}}denormalize(e,t,n){return this.schema.denormalize(e,t,n)}}function O(e,t,n){const r={merge:{value:t},normalize:{value:j},infer:{value:x}};return e.schema instanceof h&&(r.createIfValid={value:E},r.denormalize={value:w}),n&&(r.createCollectionFilter={value:n}),Object.create(e,r)}function x(){}function j(e,t,n,r,s,i,o,c){const a=this.schema.normalize(this.schema instanceof h&&!Array.isArray(e)?[e]:e,t,n,r,s,i,o,c),u=this.createCollectionFilter(...r),l=o(this.key);return l&&Object.keys(l).forEach((e=>{u(JSON.parse(e))&&i(this,a,e)})),a}function E(e){return Array.isArray(e)?[...e]:Object.assign({},e)}function w(e,t,n){return Array.isArray(e)?this.schema.denormalize(e,t,n):this.schema.denormalize([e],t,n)[0]}var k=t(n((function(e){e.exports=function(e,t){if(null==e)return{};var n,r,s={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(s[n]=e[n]);return s},e.exports.__esModule=!0,e.exports.default=e.exports})));const S=["pk","schema","key"];function A(e,t={}){class n extends e{static toString(){return this.key}static toJSON(){return{key:this.key,schema:this.schema}}static pk(e,t,n,r){return this.prototype.pk.call(e,t,n,r)}static shouldUpdate(e,t,n,r){return!0}static shouldReorder(e,t,n,r){return t.fetchedAt<e.fetchedAt}static merge(e,t){return Object.assign({},e,t)}static mergeWithStore(e,t,n,r){return this.shouldUpdate(e,t,n,r)?typeof r!=typeof n?r:this.shouldReorder(e,t,n,r)?this.merge(r,n):this.merge(n,r):n}static mergeMetaWithStore(e,t,n,r){return this.shouldReorder(e,t,n,r)?e:t}static fromJS(e={}){const t=new this(e);return Object.assign(t,e),t}static createIfValid(e){if(!this.validate(e))return this.fromJS(e)}static process(e,t,n,r){return Object.assign({},e)}static normalize(e,t,n,r,s,i,o,c){const a=this.process(e,t,n,r);let u=this.pk(a,t,n,r);if(u=void 0===u||""===u||"undefined"===u?`MISS-${Math.random()}`:`${u}`,c(this.key,u,e))return u;return function(e){if(e){const t=new Error(e);throw t.status=400,t}}(this.validate(a)),Object.keys(this.schema).forEach((e=>{Object.hasOwn(a,e)&&(a[e]=s(this.schema[e],a[e],a,e,r))})),i(this,a,u),u}static validate(e){}static queryKey(e,t,n,r){if(!e[0])return;const s=function(e,t,n){if(["string","number"].includes(typeof t[0]))return`${t[0]}`;const r=e.pk(t[0],void 0,"",t);if(void 0!==r&&""!==r)return r;const s=(i=t[0],o=e.indexes,o?o.find((e=>Object.hasOwn(i,e))):void 0);var i,o;if(!s)return;const c=t[0][s];return n(e.key,s,c)[c]}(this,e,r);return n(this.key,s)?s:void 0}static denormalize(e,t,n){if("symbol"==typeof e)return e;for(const t of Object.keys(this.schema)){const r=n(this.schema[t],e[t]);if("symbol"==typeof r){if(this.defaults[t])return r;e[t]=void 0}else e[t]=r}return e}static get defaults(){return Object.hasOwn(this,"__defaults")||Object.defineProperty(this,"__defaults",{value:new this,writable:!0,configurable:!0}),this.__defaults}}const r=k(t,S);if(Object.assign(n,r),"schema"in t?n.schema=t.schema:e.schema||(n.schema={}),"pk"in t?"function"==typeof t.pk?n.prototype.pk=function(e,n){return t.pk(this,e,n)}:n.prototype.pk=function(){return this[t.pk]}:"function"!=typeof e.prototype.pk&&(n.prototype.pk=function(){return this.id}),"key"in t)Object.defineProperty(n,"key",{value:t.key,configurable:!0,writable:!0,enumerable:!0});else if(!("key"in e)){function s(e){Object.defineProperty(this,"key",{value:e,writable:!0,enumerable:!0,configurable:!0})}const i=function(){return"EntityMixin"===this.name?e.name:this.name},o="undefined"!=typeof document&&document.CLS_MANGLE?function(){return null==document.CLS_MANGLE||document.CLS_MANGLE(this),Object.defineProperty(n,"key",{get:i,set:s,enumerable:!0,configurable:!0}),i.call(this)}:i;Object.defineProperty(n,"key",{get:o,set:s,enumerable:!0,configurable:!0})}return n}var _=Object.freeze({__proto__:null,Union:class extends c{constructor(e,t){if(!t)throw new Error('Expected option "schemaAttribute" not found on UnionSchema.');super(e,t)}normalize(e,t,n,r,s,i,o,c){return this.normalizeValue(e,t,n,r,s)}denormalize(e,t,n){return this.denormalizeValue(e,n)}queryKey(e,t,n,r){if(!e[0])return;const s=this.getSchemaAttribute(e[0],void 0,""),i=this.schema[s];if(void 0===i)return;const o=t(i,e,n,r);return void 0!==o?{id:o,schema:s}:void 0}},Values:a,Array:h,All:class extends h{constructor(e,t){super(e,t)}normalize(e,t,n,r,s,i,o,c){super.normalize(e,t,n,r,s,i,o,c)}queryKey(e,t,n,r){if(this.isSingleSchema){const e=n(this.schema.key);return void 0===e?l:Object.values(e).map((e=>e&&this.schema.pk(e)))}let s=!1;const i=Object.values(this.schema).flatMap((e=>{const t=n(e.key);return void 0===t?[]:(s=!0,Object.values(t).map((t=>({id:t&&e.pk(t),schema:this.getSchemaAttribute(t,void 0,void 0)}))))}));return s?i:l}},Object:d,Invalidate:class{constructor(e){this._entity=e}get key(){return this._entity.key}normalize(e,t,n,r,s,i,o,c){const a=this._entity.process(e,t,n,r),u=this._entity.pk(a,t,n,r);return i(this,l,u),u}merge(e,t){return t}mergeWithStore(e,t,n,r){return this.merge(n,r)}mergeMetaWithStore(e,t,n,r){return t}queryKey(e,t,n,r){}denormalize(e,t,n){return n(this._entity,e)}_denormalizeNullable(){return{}}_normalizeNullable(){return{}}},Collection:v,Entity:A,Query:class{constructor(e,t){this.schema=e,this.process=t}normalize(...e){return this.schema.normalize(...e)}denormalize(e,t,n){const r=n(this.schema,e);return"symbol"==typeof r?r:this.process(r,...t)}queryKey(e,t,n,r){return t(this.schema,e,n,r)}}});const P=class{};class R extends(A(P)){static process(e,t,n,r){return super.process(e,t,n,r)}}var T;const C="undefined"!=typeof document;let z=C&&!(null!=(T=document.querySelector("meta[http-equiv='Content-Security-Policy']"))&&T.getAttribute("content"));try{z||Function()}catch(e){z=!0,C&&console.error("Content Security Policy: The previous CSP log can be safely ignored - @data-client/endpoint will use setPrototypeOf instead")}var N;class K extends Function{constructor(e,t){let n,r;return z?(n=(...e)=>n.fetch(...e),Object.setPrototypeOf(n,new.target.prototype)):(super("return arguments.callee.fetch.apply(arguments.callee, arguments)"),n=this),e&&(n.fetch=e),t&&"name"in t||!e||!e.name||"anonymous"===e.name||(r=e.name),Object.defineProperty(n,"name",{get(){return r||this.__name},set(e){this.__name=e}}),Object.assign(n,t),n}key(...e){return`${this.name} ${JSON.stringify(e)}`}testKey(e){return e.startsWith(this.name)}bind(e,...t){const n=this.fetch,r=this.key;return this.extend({fetch(){return n.apply(null!=e?e:this,t)},key(){return r.apply(this,t)}})}extend(e){class t extends this.constructor{}return Object.assign(t.prototype,this),new t(e.fetch,e)}}N=K,(()=>{if("undefined"!=typeof document&&document.FUNC_MANGLE){const e=N.prototype.key;N.prototype.key=function(...t){return null==document.FUNC_MANGLE||document.FUNC_MANGLE(this),this.prototype.key=e,e.call(this,...t)}}})();const $=K;function M(e,t){void 0===t&&(t={});for(var n=function(e){for(var t=[],n=0;n<e.length;){var r=e[n];if("*"!==r&&"+"!==r&&"?"!==r)if("\\"!==r)if("{"!==r)if("}"!==r)if(":"!==r)if("("!==r)t.push({type:"CHAR",index:n,value:e[n++]});else{var s=1,i="";if("?"===e[c=n+1])throw new TypeError('Pattern cannot start with "?" at '.concat(c));for(;c<e.length;)if("\\"!==e[c]){if(")"===e[c]){if(0==--s){c++;break}}else if("("===e[c]&&(s++,"?"!==e[c+1]))throw new TypeError("Capturing groups are not allowed at ".concat(c));i+=e[c++]}else i+=e[c++]+e[c++];if(s)throw new TypeError("Unbalanced pattern at ".concat(n));if(!i)throw new TypeError("Missing pattern at ".concat(n));t.push({type:"PATTERN",index:n,value:i}),n=c}else{for(var o="",c=n+1;c<e.length;){var a=e.charCodeAt(c);if(!(a>=48&&a<=57||a>=65&&a<=90||a>=97&&a<=122||95===a))break;o+=e[c++]}if(!o)throw new TypeError("Missing parameter name at ".concat(n));t.push({type:"NAME",index:n,value:o}),n=c}else t.push({type:"CLOSE",index:n,value:e[n++]});else t.push({type:"OPEN",index:n,value:e[n++]});else t.push({type:"ESCAPED_CHAR",index:n++,value:e[n++]});else t.push({type:"MODIFIER",index:n,value:e[n++]})}return t.push({type:"END",index:n,value:""}),t}(e),r=t.prefixes,s=void 0===r?"./":r,i="[^".concat(I(t.delimiter||"/#?"),"]+?"),o=[],c=0,a=0,u="",h=function(e){if(a<n.length&&n[a].type===e)return n[a++].value},l=function(e){var t=h(e);if(void 0!==t)return t;var r=n[a],s=r.type,i=r.index;throw new TypeError("Unexpected ".concat(s," at ").concat(i,", expected ").concat(e))},f=function(){for(var e,t="";e=h("CHAR")||h("ESCAPED_CHAR");)t+=e;return t};a<n.length;){var d=h("CHAR"),p=h("NAME"),m=h("PATTERN");if(p||m){var y=d||"";-1===s.indexOf(y)&&(u+=y,y=""),u&&(o.push(u),u=""),o.push({name:p||c++,prefix:y,suffix:"",pattern:m||i,modifier:h("MODIFIER")||""})}else{var g=d||h("ESCAPED_CHAR");if(g)u+=g;else if(u&&(o.push(u),u=""),h("OPEN")){y=f();var b=h("NAME")||"",v=h("PATTERN")||"",O=f();l("CLOSE"),o.push({name:b||(v?c++:""),pattern:b&&!v?i:v,prefix:y,suffix:O,modifier:h("MODIFIER")||""})}else l("END")}}return o}function F(e,t){return function(e,t){void 0===t&&(t={});var n=L(t),r=t.encode,s=void 0===r?function(e){return e}:r,i=t.validate,o=void 0===i||i,c=e.map((function(e){if("object"==typeof e)return new RegExp("^(?:".concat(e.pattern,")$"),n)}));return function(t){for(var n="",r=0;r<e.length;r++){var i=e[r];if("string"!=typeof i){var a=t?t[i.name]:void 0,u="?"===i.modifier||"*"===i.modifier,h="*"===i.modifier||"+"===i.modifier;if(Array.isArray(a)){if(!h)throw new TypeError('Expected "'.concat(i.name,'" to not repeat, but got an array'));if(0===a.length){if(u)continue;throw new TypeError('Expected "'.concat(i.name,'" to not be empty'))}for(var l=0;l<a.length;l++){var f=s(a[l],i);if(o&&!c[r].test(f))throw new TypeError('Expected all "'.concat(i.name,'" to match "').concat(i.pattern,'", but got "').concat(f,'"'));n+=i.prefix+f+i.suffix}}else if("string"!=typeof a&&"number"!=typeof a){if(!u){var d=h?"an array":"a string";throw new TypeError('Expected "'.concat(i.name,'" to be ').concat(d))}}else{f=s(String(a),i);if(o&&!c[r].test(f))throw new TypeError('Expected "'.concat(i.name,'" to match "').concat(i.pattern,'", but got "').concat(f,'"'));n+=i.prefix+f+i.suffix}}else n+=i}return n}}(M(e,t),t)}function I(e){return e.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1")}function L(e){return e&&e.sensitive?"":"i"}function U(e,t,n){return function(e,t,n){void 0===n&&(n={});for(var r=n.strict,s=void 0!==r&&r,i=n.start,o=void 0===i||i,c=n.end,a=void 0===c||c,u=n.encode,h=void 0===u?function(e){return e}:u,l=n.delimiter,f=void 0===l?"/#?":l,d=n.endsWith,p="[".concat(I(void 0===d?"":d),"]|$"),m="[".concat(I(f),"]"),y=o?"^":"",g=0,b=e;g<b.length;g++){var v=b[g];if("string"==typeof v)y+=I(h(v));else{var O=I(h(v.prefix)),x=I(h(v.suffix));if(v.pattern)if(t&&t.push(v),O||x)if("+"===v.modifier||"*"===v.modifier){var j="*"===v.modifier?"?":"";y+="(?:".concat(O,"((?:").concat(v.pattern,")(?:").concat(x).concat(O,"(?:").concat(v.pattern,"))*)").concat(x,")").concat(j)}else y+="(?:".concat(O,"(").concat(v.pattern,")").concat(x,")").concat(v.modifier);else"+"===v.modifier||"*"===v.modifier?y+="((?:".concat(v.pattern,")").concat(v.modifier,")"):y+="(".concat(v.pattern,")").concat(v.modifier);else y+="(?:".concat(O).concat(x,")").concat(v.modifier)}}if(a)s||(y+="".concat(m,"?")),y+=n.endsWith?"(?=".concat(p,")"):"$";else{var E=e[e.length-1],w="string"==typeof E?m.indexOf(E[E.length-1])>-1:void 0===E;s||(y+="(?:".concat(m,"(?=").concat(p,"))?")),w||(y+="(?=".concat(m,"|").concat(p,")"))}return new RegExp(y,L(n))}(M(e,n),t,n)}function q(e,t,n){return e instanceof RegExp?function(e,t){if(!t)return e;for(var n=/\((?:\?<(.*?)>)?(?!\?)/g,r=0,s=n.exec(e.source);s;)t.push({name:s[1]||r++,prefix:"",suffix:"",modifier:"",pattern:""}),s=n.exec(e.source);return e}(e,t):Array.isArray(e)?function(e,t,n){var r=e.map((function(e){return q(e,t,n).source}));return new RegExp("(?:".concat(r.join("|"),")"),L(n))}(e,t,n):U(e,t,n)}function D(e,t){if("object"!=typeof e||void 0===e||Array.isArray(e))return;if(e instanceof v)return t(e);const n=Object.assign({},e instanceof d?e.schema:e);for(const e in n){if(!n[e])continue;const r=D(n[e],t);if(r)return r}}function V(e,t){if("object"!=typeof e||void 0===e)return e;if(e instanceof v)return t(e);const n=Object.assign({},e instanceof d?e.schema:e);for(const e in n)n[e]&&(n[e]=V(n[e],t));return n}class W extends Error{constructor(e){super(e.statusText||`Network response not 'ok': ${e.status}`),this.name="NetworkError",this.status=e.status,this.response=e}}function J(e,t){const n=new Set(e),r=[...e];for(const e of t)n.has(e)||r.push(e);return r}const G=Object.create(null);function H(e){return e in G||(G[e]=F(e,{encode:encodeURIComponent,validate:!1})),G[e]}const B=Object.create(null);function Q(e){return e in B||(B[e]=new Set(M(e).map((e=>"string"==typeof e?e:`${e.name}`)))),B[e]}const X=Object.prototype,Y=Object.getPrototypeOf;var Z=i("hasBody");class ee extends K{constructor(e){var t;super(null!=(t=e.fetch)?t:async function(...e){const t=s(this,Z)[Z]&&e.length<2?{}:e[0]||{},n=s(this,Z)[Z]?e[e.length-1]:void 0;return this.fetchResponse(this.url(t),await this.getRequestInit(n)).then((e=>this.parseResponse(e))).then((t=>this.process(t,...e)))},e),Object.defineProperty(this,Z,{writable:!0,value:void 0}),(!("sideEffect"in this)||"method"in e&&!("sideEffect"in e))&&(this.sideEffect="GET"!==e.method&&void 0!==e.method||void 0),void 0===this.method&&(this.method=this.sideEffect?"POST":"GET"),void 0===this.urlPrefix&&(this.urlPrefix=""),s(this,Z)[Z]=!("body"in this&&void 0===this.body||["GET","DELETE"].includes(this.method)),Object.defineProperty(this,"name",{get(){return"__name"in this?this.__name:this.urlPrefix+this.path}})}key(...e){return`${this.method} ${this.url(s(this,Z)[Z]&&e.length<2?{}:e[0]||{})}`}url(e={}){const t=H(this.path)(e),n=Q(this.path),r={};return Object.keys(e).forEach((t=>{n.has(t)||(r[t]=e[t])})),Object.keys(r).length?`${this.urlPrefix}${t}?${this.searchToString(r)}`:`${this.urlPrefix}${t}`}searchToString(e){return function(e){const t=new URLSearchParams(e);return t.sort(),t.toString()}(e)}getHeaders(e){return e}async getRequestInit(e){const t=null!==(n=e)&&"object"==typeof n&&Y(n)===X;var n;t&&(e=JSON.stringify(e));const r=Object.assign({},this.requestInit,{method:this.method,signal:this.signal,body:e});return e&&!t||(r.headers=Object.assign({"Content-Type":"application/json"},r.headers)),r.headers=await this.getHeaders(r.headers),r}fetchResponse(e,t){return fetch(e,t).then((e=>{if(!e.ok)throw new W(e);return e})).catch((e=>{throw e instanceof TypeError&&(e.status=500),e}))}parseResponse(e){var t;return 204===e.status?Promise.resolve(null):null!=(t=e.headers.get("content-type"))&&t.includes("json")?e.json().catch((e=>{throw e.status=400,e})):e.text().then((t=>{if(["string","undefined"].includes(typeof this.schema)||null===this.schema||this.process!==ee.prototype.process)return t;const n=new W(e);throw n.status=404,n.message=`Unexpected text response for schema ${this.schema}`,n}))}process(e){return e}errorPolicy(e){return e.status>=500?"soft":void 0}get pathRegex(){return q(this.path)}testKey(e){const t=this.method+" "+this.urlPrefix;if(!e.startsWith(t))return!1;let n=e.lastIndexOf("?");return-1===n&&(n=void 0),this.pathRegex.test(e.substring(t.length,n))}extend(e){class t extends this.constructor{}return Object.assign(t.prototype,this),new t(Object.assign({fetch:this.fetch},e))}paginated(e){if("string"==typeof e){const t=e;e=e=>{let n=Object.assign({},(r(e),e));return delete n[t],[n]}}let t=!1;const n=V(this.schema,(n=>(t=!0,function(e,t){return Object.create(t,{name:{value:`Pagination(${t.schema})`},merge:{value:J},pk:{value:function(n,r,s,i){return t.pk.call(this,n,r,s,e(...i))}}})}(e,n))));if(!t)throw new Error("Missing Collection");const s=this;return this.extend({schema:n,key(...t){return s.key.call(this,...e(...t))},name:this.name+".getPage"})}get getPage(){return this.paginated(this.paginationField)}get push(){return this.extend({method:"POST",schema:D(this.schema,(e=>e.push)),name:this.name+".create"})}get unshift(){return this.extend({method:"POST",schema:D(this.schema,(e=>e.unshift)),name:this.name+".create"})}get assign(){return this.extend({method:"POST",schema:D(this.schema,(e=>e.assign)),name:this.name+".create"})}}const te=["path","schema","Endpoint","Collection","optimistic","paginationField"],{Invalidate:ne,Collection:re}=_;function se(e){let{path:t,schema:n,Endpoint:r=ee,Collection:s=re,optimistic:i,paginationField:o}=e,c=k(e,te);const a=function(e){const t=e.lastIndexOf(":");if(-1===t)throw new Error("Resource path requires at least one :parameter");let n=e.substring(0,t);return"/"===n[n.length-1]&&(n=n.substring(0,n.length-1)),n}(t),u=e=>`${null==n?void 0:n.name}.${e}`;function h(e,t,n){e[t]=e[t].extend(n)}const l=Object.assign({},c),f=Object.assign({},c),d=new r(Object.assign({},c,{path:t,schema:n,name:u("get")}));i&&(l.getOptimisticResponse=ie,f.getOptimisticResponse=function(e){return function(t,n,r){const s=t.get(e,n);if(!s)throw t.abort;return Object.assign({},n,s,ce(r))}}(n));const p=new r(Object.assign({},l,{paginationField:o,path:a,schema:new s([n]),name:u("getList")}));return{get:d,getList:p,create:p.push.extend({name:u("create")}),update:new r(Object.assign({},l,{path:t,schema:n,method:"PUT",name:u("update")})),partialUpdate:new r(Object.assign({},f,{path:t,schema:n,method:"PATCH",name:u("partialUpdate")})),delete:new r(Object.assign({},l,{path:t,schema:n.process?new ne(n):n,method:"DELETE",name:u("delete"),process:(e,t)=>e&&Object.keys(e).length?e:t,getOptimisticResponse:i?oe:void 0})),extend(...e){if("string"==typeof e[0]){const[t,n]=e;if(t in this){const e=Object.assign({},this);return h(e,t,n),e}return Object.assign({},this,{[t]:this.get.extend(n)})}if("function"==typeof e[0]){const t=e[0](this);return Object.assign({},this,t)}const t=e[0],n=Object.assign({},this);for(const e in t)h(n,e,t[e]);return n}}}function ie(e,t,n){return Object.assign({},t,ce(n))}function oe(e,t){return t}function ce(e){return e instanceof FormData?Object.fromEntries(e.entries()):e}Object.hasOwn=Object.hasOwn||function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},e.Endpoint=K,e.Entity=R,e.ExtendableEndpoint=$,e.INVALID=l,e.NetworkError=W,e.RestEndpoint=ee,e.createResource=se,e.getUrlBase=H,e.getUrlTokens=Q,e.hookifyResource=function(e,t){const n={};return Object.keys(e).forEach((r=>{const s=e[r];var i;void 0!==s.extend&&(n[`use${i=r,i.charAt(0).toUpperCase()+i.slice(1)}`]=()=>{const e=t();return s.extend({requestInit:e})})})),n},e.resource=se,e.schema=_,e.validateRequired=function(e,t){let n="";if(Object.keys(t).some((t=>!Object.hasOwn(e,t)&&(n=t,!0))))return`Missing key ${n}`},Object.defineProperty(e,"__esModule",{value:!0})}));
|
package/legacy/index.js
CHANGED
|
@@ -3,9 +3,10 @@ Object.hasOwn = Object.hasOwn || /* istanbul ignore next */function hasOwn(it, k
|
|
|
3
3
|
};
|
|
4
4
|
export { default as RestEndpoint } from './RestEndpoint.js';
|
|
5
5
|
export { getUrlBase, getUrlTokens } from './RestHelpers.js';
|
|
6
|
-
export { default as
|
|
6
|
+
export { default as resource } from './resource.js';
|
|
7
|
+
export { default as createResource } from './resource.js';
|
|
7
8
|
export { default as hookifyResource } from './hookifyResource.js';
|
|
8
9
|
export { default as NetworkError } from './NetworkError.js';
|
|
9
10
|
export * from '@data-client/endpoint';
|
|
10
11
|
export * from './RestEndpoint.js';
|
|
11
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
12
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJPYmplY3QiLCJoYXNPd24iLCJpdCIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlZmF1bHQiLCJSZXN0RW5kcG9pbnQiLCJnZXRVcmxCYXNlIiwiZ2V0VXJsVG9rZW5zIiwicmVzb3VyY2UiLCJjcmVhdGVSZXNvdXJjZSIsImhvb2tpZnlSZXNvdXJjZSIsIk5ldHdvcmtFcnJvciJdLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuaGFzT3duID1cbiAgT2JqZWN0Lmhhc093biB8fFxuICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqLyBmdW5jdGlvbiBoYXNPd24oaXQsIGtleSkge1xuICAgIHJldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoaXQsIGtleSk7XG4gIH07XG5leHBvcnQgeyBkZWZhdWx0IGFzIFJlc3RFbmRwb2ludCB9IGZyb20gJy4vUmVzdEVuZHBvaW50LmpzJztcbmV4cG9ydCB0eXBlIHtcbiAgR2V0RW5kcG9pbnQsXG4gIE11dGF0ZUVuZHBvaW50LFxuICBEZWZhdWx0cyxcbiAgUmVzdEdlbmVyaWNzLFxuICBGZXRjaEdldCxcbiAgRmV0Y2hNdXRhdGUsXG4gIFJlc3RGZXRjaCxcbiAgUmVzdFR5cGUsXG4gIFJlc3RJbnN0YW5jZSxcbiAgS2V5b2ZSZXN0RW5kcG9pbnQsXG4gIFJlc3RFbmRwb2ludENvbnN0cnVjdG9yT3B0aW9ucyxcbiAgQWRkRW5kcG9pbnQsXG4gIFBhZ2luYXRpb25GaWVsZEVuZHBvaW50LFxuICBQYWdpbmF0aW9uRW5kcG9pbnQsXG59IGZyb20gJy4vUmVzdEVuZHBvaW50LmpzJztcbmV4cG9ydCB0eXBlIHsgUmVzdEVuZHBvaW50IGFzIElSZXN0RW5kcG9pbnQgfSBmcm9tICcuL1Jlc3RFbmRwb2ludFR5cGVzLmpzJztcbmV4cG9ydCB7IGdldFVybEJhc2UsIGdldFVybFRva2VucyB9IGZyb20gJy4vUmVzdEhlbHBlcnMuanMnO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyByZXNvdXJjZSB9IGZyb20gJy4vcmVzb3VyY2UuanMnO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBjcmVhdGVSZXNvdXJjZSB9IGZyb20gJy4vcmVzb3VyY2UuanMnO1xuZXhwb3J0IHR5cGUgeyBSZXNvdXJjZSB9IGZyb20gJy4vcmVzb3VyY2VUeXBlcy5qcyc7XG5leHBvcnQgdHlwZSB7IFJlc291cmNlT3B0aW9ucywgUmVzb3VyY2VHZW5lcmljcyB9IGZyb20gJy4vcmVzb3VyY2VUeXBlcy5qcyc7XG5leHBvcnQgdHlwZSB7XG4gIFJlc291cmNlRXh0ZW5zaW9uLFxuICBSZXNvdXJjZUVuZHBvaW50RXh0ZW5zaW9ucyxcbiAgQ3VzdG9tUmVzb3VyY2UsXG4gIEV4dGVuZGVkUmVzb3VyY2UsXG59IGZyb20gJy4vcmVzb3VyY2VFeHRlbnNpb25UeXBlcy5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIGhvb2tpZnlSZXNvdXJjZSB9IGZyb20gJy4vaG9va2lmeVJlc291cmNlLmpzJztcbmV4cG9ydCB0eXBlIHtcbiAgSG9va1Jlc291cmNlLFxuICBIb29rYWJsZUVuZHBvaW50SW50ZXJmYWNlLFxufSBmcm9tICcuL2hvb2tpZnlSZXNvdXJjZS5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIE5ldHdvcmtFcnJvciB9IGZyb20gJy4vTmV0d29ya0Vycm9yLmpzJztcbmV4cG9ydCB0eXBlIHsgT3B0aW9uc1RvRnVuY3Rpb24gfSBmcm9tICcuL09wdGlvbnNUb0Z1bmN0aW9uLmpzJztcbmV4cG9ydCB0eXBlIHtcbiAgU2hvcnRlblBhdGgsXG4gIFBhdGhBcmdzLFxuICBQYXRoS2V5cyxcbiAgS2V5c1RvQXJncyxcbiAgUGF0aEFyZ3NBbmRTZWFyY2gsXG59IGZyb20gJy4vcGF0aFR5cGVzLmpzJztcblxuZXhwb3J0ICogZnJvbSAnQGRhdGEtY2xpZW50L2VuZHBvaW50JztcbmV4cG9ydCAqIGZyb20gJy4vUmVzdEVuZHBvaW50LmpzJztcbiJdLCJtYXBwaW5ncyI6IkFBQUFBLE1BQU0sQ0FBQ0MsTUFBTSxHQUNYRCxNQUFNLENBQUNDLE1BQU0sSUFDYiwwQkFBMkIsU0FBU0EsTUFBTUEsQ0FBQ0MsRUFBRSxFQUFFQyxHQUFHLEVBQUU7RUFDbEQsT0FBT0gsTUFBTSxDQUFDSSxTQUFTLENBQUNDLGNBQWMsQ0FBQ0MsSUFBSSxDQUFDSixFQUFFLEVBQUVDLEdBQUcsQ0FBQztBQUN0RCxDQUFDO0FBQ0gsU0FBU0ksT0FBTyxJQUFJQyxZQUFZLFFBQVEsbUJBQW1CO0FBa0IzRCxTQUFTQyxVQUFVLEVBQUVDLFlBQVksUUFBUSxrQkFBa0I7QUFDM0QsU0FBU0gsT0FBTyxJQUFJSSxRQUFRLFFBQVEsZUFBZTtBQUNuRCxTQUFTSixPQUFPLElBQUlLLGNBQWMsUUFBUSxlQUFlO0FBU3pELFNBQVNMLE9BQU8sSUFBSU0sZUFBZSxRQUFRLHNCQUFzQjtBQUtqRSxTQUFTTixPQUFPLElBQUlPLFlBQVksUUFBUSxtQkFBbUI7QUFVM0QsY0FBYyx1QkFBdUI7QUFDckMsY0FBYyxtQkFBbUIiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/objectWithoutPropertiesLoose";
|
|
2
|
+
const _excluded = ["path", "schema", "Endpoint", "Collection", "optimistic", "paginationField"];
|
|
3
|
+
import { schema } from '@data-client/endpoint';
|
|
4
|
+
import RestEndpoint from './RestEndpoint.js';
|
|
5
|
+
import { shortenPath } from './RestHelpers.js';
|
|
6
|
+
const {
|
|
7
|
+
Invalidate,
|
|
8
|
+
Collection: BaseCollection
|
|
9
|
+
} = schema;
|
|
10
|
+
|
|
11
|
+
/** Creates collection of Endpoints for common operations on a given data/schema.
|
|
12
|
+
*
|
|
13
|
+
* @see https://dataclient.io/rest/api/resource
|
|
14
|
+
*/
|
|
15
|
+
export default function resource(_ref) {
|
|
16
|
+
let {
|
|
17
|
+
path,
|
|
18
|
+
schema,
|
|
19
|
+
Endpoint = RestEndpoint,
|
|
20
|
+
Collection = BaseCollection,
|
|
21
|
+
optimistic,
|
|
22
|
+
paginationField
|
|
23
|
+
} = _ref,
|
|
24
|
+
extraOptions = _objectWithoutPropertiesLoose(_ref, _excluded);
|
|
25
|
+
if (process.env.NODE_ENV !== 'production') {
|
|
26
|
+
// if they lowercase and it looks like they meant to use upper-case version
|
|
27
|
+
if ('endpoint' in extraOptions && Endpoint === RestEndpoint && typeof extraOptions['endpoint'] === 'function' && extraOptions['endpoint'] && Object.prototype.isPrototypeOf.call(RestEndpoint.prototype, extraOptions['endpoint'].prototype)) {
|
|
28
|
+
console.warn(`You passed 'endpoint' option; did you mean to use Endpoint?
|
|
29
|
+
https://dataclient.io/rest/api/resource#endpoint
|
|
30
|
+
This parameter must be capitalized.
|
|
31
|
+
|
|
32
|
+
This warning will not show in production.`);
|
|
33
|
+
}
|
|
34
|
+
// if they lowercase and it looks like they meant to use upper-case version
|
|
35
|
+
if ('collection' in extraOptions && Collection === BaseCollection && typeof extraOptions['collection'] === 'function' && extraOptions['collection'] && Object.prototype.isPrototypeOf.call(BaseCollection.prototype, extraOptions['collection'].prototype)) {
|
|
36
|
+
console.warn(`You passed 'collection' option; did you mean to use Collection?
|
|
37
|
+
https://dataclient.io/rest/api/resource#collection
|
|
38
|
+
This parameter must be capitalized.
|
|
39
|
+
|
|
40
|
+
This warning will not show in production.`);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
const shortenedPath = shortenPath(path);
|
|
44
|
+
const getName = name => `${schema == null ? void 0 : schema.name}.${name}`;
|
|
45
|
+
// this accounts for derivative endpoints
|
|
46
|
+
function extendMember(extended, key, options) {
|
|
47
|
+
extended[key] = extended[key].extend(options);
|
|
48
|
+
}
|
|
49
|
+
const extraMutateOptions = Object.assign({}, extraOptions);
|
|
50
|
+
const extraPartialOptions = Object.assign({}, extraOptions);
|
|
51
|
+
const get = new Endpoint(Object.assign({}, extraOptions, {
|
|
52
|
+
path,
|
|
53
|
+
schema,
|
|
54
|
+
name: getName('get')
|
|
55
|
+
}));
|
|
56
|
+
if (optimistic) {
|
|
57
|
+
extraMutateOptions.getOptimisticResponse = optimisticUpdate;
|
|
58
|
+
// TODO: Check that schema is a queryable, otherwise this doesn't make sense
|
|
59
|
+
extraPartialOptions.getOptimisticResponse = optimisticPartial(schema);
|
|
60
|
+
}
|
|
61
|
+
const getList = new Endpoint(Object.assign({}, extraMutateOptions, {
|
|
62
|
+
paginationField: paginationField,
|
|
63
|
+
path: shortenedPath,
|
|
64
|
+
schema: new Collection([schema]),
|
|
65
|
+
name: getName('getList')
|
|
66
|
+
}));
|
|
67
|
+
const ret = {
|
|
68
|
+
get,
|
|
69
|
+
getList,
|
|
70
|
+
// TODO(deprecated): remove this once we remove creates
|
|
71
|
+
create: getList.push.extend({
|
|
72
|
+
name: getName('create')
|
|
73
|
+
}),
|
|
74
|
+
update: new Endpoint(Object.assign({}, extraMutateOptions, {
|
|
75
|
+
path,
|
|
76
|
+
schema,
|
|
77
|
+
method: 'PUT',
|
|
78
|
+
name: getName('update')
|
|
79
|
+
})),
|
|
80
|
+
partialUpdate: new Endpoint(Object.assign({}, extraPartialOptions, {
|
|
81
|
+
path,
|
|
82
|
+
schema,
|
|
83
|
+
method: 'PATCH',
|
|
84
|
+
name: getName('partialUpdate')
|
|
85
|
+
})),
|
|
86
|
+
delete: new Endpoint(Object.assign({}, extraMutateOptions, {
|
|
87
|
+
path,
|
|
88
|
+
schema: schema.process ? new Invalidate(schema) : schema,
|
|
89
|
+
method: 'DELETE',
|
|
90
|
+
name: getName('delete'),
|
|
91
|
+
process(res, params) {
|
|
92
|
+
return res && Object.keys(res).length ? res : params;
|
|
93
|
+
},
|
|
94
|
+
getOptimisticResponse: optimistic ? optimisticDelete : undefined
|
|
95
|
+
})),
|
|
96
|
+
extend(...args) {
|
|
97
|
+
if (typeof args[0] === 'string') {
|
|
98
|
+
const [key, options] = args;
|
|
99
|
+
if (key in this) {
|
|
100
|
+
const extended = Object.assign({}, this);
|
|
101
|
+
extendMember(extended, key, options);
|
|
102
|
+
return extended;
|
|
103
|
+
} else {
|
|
104
|
+
return Object.assign({}, this, {
|
|
105
|
+
[key]: this.get.extend(options)
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
} else if (typeof args[0] === 'function') {
|
|
109
|
+
const extended = args[0](this);
|
|
110
|
+
return Object.assign({}, this, extended);
|
|
111
|
+
}
|
|
112
|
+
const overrides = args[0];
|
|
113
|
+
const extended = Object.assign({}, this);
|
|
114
|
+
for (const key in overrides) {
|
|
115
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
116
|
+
// @ts-ignore
|
|
117
|
+
extendMember(extended, key, overrides[key]);
|
|
118
|
+
}
|
|
119
|
+
return extended;
|
|
120
|
+
}
|
|
121
|
+
};
|
|
122
|
+
return ret;
|
|
123
|
+
}
|
|
124
|
+
function optimisticUpdate(snap, params, body) {
|
|
125
|
+
return Object.assign({}, params, ensurePojo(body));
|
|
126
|
+
}
|
|
127
|
+
function optimisticPartial(schema) {
|
|
128
|
+
return function (snap, params, body) {
|
|
129
|
+
const data = snap.get(schema, params);
|
|
130
|
+
if (!data) throw snap.abort;
|
|
131
|
+
return Object.assign({}, params, data, ensurePojo(body));
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
function optimisticDelete(snap, params) {
|
|
135
|
+
return params;
|
|
136
|
+
}
|
|
137
|
+
function ensurePojo(body) {
|
|
138
|
+
return body instanceof FormData ? Object.fromEntries(body.entries()) : body;
|
|
139
|
+
}
|
|
140
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzY2hlbWEiLCJSZXN0RW5kcG9pbnQiLCJzaG9ydGVuUGF0aCIsIkludmFsaWRhdGUiLCJDb2xsZWN0aW9uIiwiQmFzZUNvbGxlY3Rpb24iLCJyZXNvdXJjZSIsIl9yZWYiLCJwYXRoIiwiRW5kcG9pbnQiLCJvcHRpbWlzdGljIiwicGFnaW5hdGlvbkZpZWxkIiwiZXh0cmFPcHRpb25zIiwiX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UiLCJfZXhjbHVkZWQiLCJwcm9jZXNzIiwiZW52IiwiTk9ERV9FTlYiLCJPYmplY3QiLCJwcm90b3R5cGUiLCJpc1Byb3RvdHlwZU9mIiwiY2FsbCIsImNvbnNvbGUiLCJ3YXJuIiwic2hvcnRlbmVkUGF0aCIsImdldE5hbWUiLCJuYW1lIiwiZXh0ZW5kTWVtYmVyIiwiZXh0ZW5kZWQiLCJrZXkiLCJvcHRpb25zIiwiZXh0ZW5kIiwiZXh0cmFNdXRhdGVPcHRpb25zIiwiYXNzaWduIiwiZXh0cmFQYXJ0aWFsT3B0aW9ucyIsImdldCIsImdldE9wdGltaXN0aWNSZXNwb25zZSIsIm9wdGltaXN0aWNVcGRhdGUiLCJvcHRpbWlzdGljUGFydGlhbCIsImdldExpc3QiLCJyZXQiLCJjcmVhdGUiLCJwdXNoIiwidXBkYXRlIiwibWV0aG9kIiwicGFydGlhbFVwZGF0ZSIsImRlbGV0ZSIsInJlcyIsInBhcmFtcyIsImtleXMiLCJsZW5ndGgiLCJvcHRpbWlzdGljRGVsZXRlIiwidW5kZWZpbmVkIiwiYXJncyIsIm92ZXJyaWRlcyIsInNuYXAiLCJib2R5IiwiZW5zdXJlUG9qbyIsImRhdGEiLCJhYm9ydCIsIkZvcm1EYXRhIiwiZnJvbUVudHJpZXMiLCJlbnRyaWVzIl0sInNvdXJjZXMiOlsiLi4vc3JjL3Jlc291cmNlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHNjaGVtYSB9IGZyb20gJ0BkYXRhLWNsaWVudC9lbmRwb2ludCc7XG5pbXBvcnQgdHlwZSB7IFNuYXBzaG90SW50ZXJmYWNlLCBRdWVyeWFibGUgfSBmcm9tICdAZGF0YS1jbGllbnQvZW5kcG9pbnQnO1xuXG5pbXBvcnQge1xuICBSZXNvdXJjZUdlbmVyaWNzLFxuICBSZXNvdXJjZU9wdGlvbnMsXG4gIFJlc291cmNlLFxuICBSZXNvdXJjZUludGVyZmFjZSxcbn0gZnJvbSAnLi9yZXNvdXJjZVR5cGVzLmpzJztcbmltcG9ydCBSZXN0RW5kcG9pbnQsIHtcbiAgR2V0RW5kcG9pbnQsXG4gIFBhcnRpYWxSZXN0R2VuZXJpY3MsXG4gIFJlc3RFbmRwb2ludE9wdGlvbnMsXG4gIFJlc3RJbnN0YW5jZUJhc2UsXG59IGZyb20gJy4vUmVzdEVuZHBvaW50LmpzJztcbmltcG9ydCB7IHNob3J0ZW5QYXRoIH0gZnJvbSAnLi9SZXN0SGVscGVycy5qcyc7XG5cbmNvbnN0IHsgSW52YWxpZGF0ZSwgQ29sbGVjdGlvbjogQmFzZUNvbGxlY3Rpb24gfSA9IHNjaGVtYTtcblxuLyoqIENyZWF0ZXMgY29sbGVjdGlvbiBvZiBFbmRwb2ludHMgZm9yIGNvbW1vbiBvcGVyYXRpb25zIG9uIGEgZ2l2ZW4gZGF0YS9zY2hlbWEuXG4gKlxuICogQHNlZSBodHRwczovL2RhdGFjbGllbnQuaW8vcmVzdC9hcGkvcmVzb3VyY2VcbiAqL1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gcmVzb3VyY2U8TyBleHRlbmRzIFJlc291cmNlR2VuZXJpY3M+KHtcbiAgcGF0aCxcbiAgc2NoZW1hLFxuICBFbmRwb2ludCA9IFJlc3RFbmRwb2ludCxcbiAgQ29sbGVjdGlvbiA9IEJhc2VDb2xsZWN0aW9uLFxuICBvcHRpbWlzdGljLFxuICBwYWdpbmF0aW9uRmllbGQsXG4gIC4uLmV4dHJhT3B0aW9uc1xufTogUmVhZG9ubHk8Tz4gJiBSZXNvdXJjZU9wdGlvbnMpOiBSZXNvdXJjZTxPPiB7XG4gIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgLy8gaWYgdGhleSBsb3dlcmNhc2UgYW5kIGl0IGxvb2tzIGxpa2UgdGhleSBtZWFudCB0byB1c2UgdXBwZXItY2FzZSB2ZXJzaW9uXG4gICAgaWYgKFxuICAgICAgJ2VuZHBvaW50JyBpbiBleHRyYU9wdGlvbnMgJiZcbiAgICAgIEVuZHBvaW50ID09PSBSZXN0RW5kcG9pbnQgJiZcbiAgICAgIHR5cGVvZiBleHRyYU9wdGlvbnNbJ2VuZHBvaW50J10gPT09ICdmdW5jdGlvbicgJiZcbiAgICAgIGV4dHJhT3B0aW9uc1snZW5kcG9pbnQnXSAmJlxuICAgICAgT2JqZWN0LnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mLmNhbGwoXG4gICAgICAgIFJlc3RFbmRwb2ludC5wcm90b3R5cGUsXG4gICAgICAgIChleHRyYU9wdGlvbnNbJ2VuZHBvaW50J10gYXMgYW55KS5wcm90b3R5cGUsXG4gICAgICApXG4gICAgKSB7XG4gICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgIGBZb3UgcGFzc2VkICdlbmRwb2ludCcgb3B0aW9uOyBkaWQgeW91IG1lYW4gdG8gdXNlIEVuZHBvaW50P1xuaHR0cHM6Ly9kYXRhY2xpZW50LmlvL3Jlc3QvYXBpL3Jlc291cmNlI2VuZHBvaW50XG5UaGlzIHBhcmFtZXRlciBtdXN0IGJlIGNhcGl0YWxpemVkLlxuXG5UaGlzIHdhcm5pbmcgd2lsbCBub3Qgc2hvdyBpbiBwcm9kdWN0aW9uLmAsXG4gICAgICApO1xuICAgIH1cbiAgICAvLyBpZiB0aGV5IGxvd2VyY2FzZSBhbmQgaXQgbG9va3MgbGlrZSB0aGV5IG1lYW50IHRvIHVzZSB1cHBlci1jYXNlIHZlcnNpb25cbiAgICBpZiAoXG4gICAgICAnY29sbGVjdGlvbicgaW4gZXh0cmFPcHRpb25zICYmXG4gICAgICBDb2xsZWN0aW9uID09PSBCYXNlQ29sbGVjdGlvbiAmJlxuICAgICAgdHlwZW9mIGV4dHJhT3B0aW9uc1snY29sbGVjdGlvbiddID09PSAnZnVuY3Rpb24nICYmXG4gICAgICBleHRyYU9wdGlvbnNbJ2NvbGxlY3Rpb24nXSAmJlxuICAgICAgT2JqZWN0LnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mLmNhbGwoXG4gICAgICAgIEJhc2VDb2xsZWN0aW9uLnByb3RvdHlwZSxcbiAgICAgICAgKGV4dHJhT3B0aW9uc1snY29sbGVjdGlvbiddIGFzIGFueSkucHJvdG90eXBlLFxuICAgICAgKVxuICAgICkge1xuICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICBgWW91IHBhc3NlZCAnY29sbGVjdGlvbicgb3B0aW9uOyBkaWQgeW91IG1lYW4gdG8gdXNlIENvbGxlY3Rpb24/XG5odHRwczovL2RhdGFjbGllbnQuaW8vcmVzdC9hcGkvcmVzb3VyY2UjY29sbGVjdGlvblxuVGhpcyBwYXJhbWV0ZXIgbXVzdCBiZSBjYXBpdGFsaXplZC5cblxuVGhpcyB3YXJuaW5nIHdpbGwgbm90IHNob3cgaW4gcHJvZHVjdGlvbi5gLFxuICAgICAgKTtcbiAgICB9XG4gIH1cbiAgY29uc3Qgc2hvcnRlbmVkUGF0aCA9IHNob3J0ZW5QYXRoKHBhdGgpO1xuICBjb25zdCBnZXROYW1lID0gKG5hbWU6IHN0cmluZykgPT4gYCR7KHNjaGVtYSBhcyBhbnkpPy5uYW1lfS4ke25hbWV9YDtcbiAgLy8gdGhpcyBhY2NvdW50cyBmb3IgZGVyaXZhdGl2ZSBlbmRwb2ludHNcbiAgZnVuY3Rpb24gZXh0ZW5kTWVtYmVyKGV4dGVuZGVkOiBhbnksIGtleTogc3RyaW5nLCBvcHRpb25zOiBhbnkpIHtcbiAgICBleHRlbmRlZFtrZXldID0gZXh0ZW5kZWRba2V5XS5leHRlbmQob3B0aW9ucyk7XG4gIH1cblxuICBjb25zdCBleHRyYU11dGF0ZU9wdGlvbnMgPSB7IC4uLmV4dHJhT3B0aW9ucyB9O1xuICBjb25zdCBleHRyYVBhcnRpYWxPcHRpb25zID0geyAuLi5leHRyYU9wdGlvbnMgfTtcbiAgY29uc3QgZ2V0OiBHZXRFbmRwb2ludDx7IHBhdGg6IE9bJ3BhdGgnXTsgc2NoZW1hOiBPWydzY2hlbWEnXSB9PiA9XG4gICAgbmV3IEVuZHBvaW50KHtcbiAgICAgIC4uLmV4dHJhT3B0aW9ucyxcbiAgICAgIHBhdGgsXG4gICAgICBzY2hlbWEsXG4gICAgICBuYW1lOiBnZXROYW1lKCdnZXQnKSxcbiAgICB9KSBhcyBhbnk7XG4gIGlmIChvcHRpbWlzdGljKSB7XG4gICAgKGV4dHJhTXV0YXRlT3B0aW9ucyBhcyBhbnkpLmdldE9wdGltaXN0aWNSZXNwb25zZSA9IG9wdGltaXN0aWNVcGRhdGU7XG4gICAgLy8gVE9ETzogQ2hlY2sgdGhhdCBzY2hlbWEgaXMgYSBxdWVyeWFibGUsIG90aGVyd2lzZSB0aGlzIGRvZXNuJ3QgbWFrZSBzZW5zZVxuICAgIChleHRyYVBhcnRpYWxPcHRpb25zIGFzIGFueSkuZ2V0T3B0aW1pc3RpY1Jlc3BvbnNlID0gb3B0aW1pc3RpY1BhcnRpYWwoXG4gICAgICBzY2hlbWEgYXMgYW55LFxuICAgICk7XG4gIH1cbiAgY29uc3QgZ2V0TGlzdCA9IG5ldyBFbmRwb2ludCh7XG4gICAgLi4uZXh0cmFNdXRhdGVPcHRpb25zLFxuICAgIHBhZ2luYXRpb25GaWVsZDogcGFnaW5hdGlvbkZpZWxkIGFzIHN0cmluZyxcbiAgICBwYXRoOiBzaG9ydGVuZWRQYXRoLFxuICAgIHNjaGVtYTogbmV3IENvbGxlY3Rpb24oW3NjaGVtYSBhcyBhbnldKSxcbiAgICBuYW1lOiBnZXROYW1lKCdnZXRMaXN0JyksXG4gIH0pO1xuICBjb25zdCByZXQgPSB7XG4gICAgZ2V0LFxuICAgIGdldExpc3QsXG4gICAgLy8gVE9ETyhkZXByZWNhdGVkKTogcmVtb3ZlIHRoaXMgb25jZSB3ZSByZW1vdmUgY3JlYXRlc1xuICAgIGNyZWF0ZTogZ2V0TGlzdC5wdXNoLmV4dGVuZCh7IG5hbWU6IGdldE5hbWUoJ2NyZWF0ZScpIH0pLFxuICAgIHVwZGF0ZTogbmV3IEVuZHBvaW50KHtcbiAgICAgIC4uLmV4dHJhTXV0YXRlT3B0aW9ucyxcbiAgICAgIHBhdGgsXG4gICAgICBzY2hlbWEsXG4gICAgICBtZXRob2Q6ICdQVVQnLFxuICAgICAgbmFtZTogZ2V0TmFtZSgndXBkYXRlJyksXG4gICAgfSksXG4gICAgcGFydGlhbFVwZGF0ZTogbmV3IEVuZHBvaW50KHtcbiAgICAgIC4uLmV4dHJhUGFydGlhbE9wdGlvbnMsXG4gICAgICBwYXRoLFxuICAgICAgc2NoZW1hLFxuICAgICAgbWV0aG9kOiAnUEFUQ0gnLFxuICAgICAgbmFtZTogZ2V0TmFtZSgncGFydGlhbFVwZGF0ZScpLFxuICAgIH0pLFxuICAgIGRlbGV0ZTogbmV3IEVuZHBvaW50KHtcbiAgICAgIC4uLmV4dHJhTXV0YXRlT3B0aW9ucyxcbiAgICAgIHBhdGgsXG4gICAgICBzY2hlbWE6IChzY2hlbWEgYXMgYW55KS5wcm9jZXNzID8gbmV3IEludmFsaWRhdGUoc2NoZW1hIGFzIGFueSkgOiBzY2hlbWEsXG4gICAgICBtZXRob2Q6ICdERUxFVEUnLFxuICAgICAgbmFtZTogZ2V0TmFtZSgnZGVsZXRlJyksXG4gICAgICBwcm9jZXNzKHJlczogYW55LCBwYXJhbXM6IGFueSkge1xuICAgICAgICByZXR1cm4gcmVzICYmIE9iamVjdC5rZXlzKHJlcykubGVuZ3RoID8gcmVzIDogcGFyYW1zO1xuICAgICAgfSxcbiAgICAgIGdldE9wdGltaXN0aWNSZXNwb25zZTogb3B0aW1pc3RpYyA/IChvcHRpbWlzdGljRGVsZXRlIGFzIGFueSkgOiB1bmRlZmluZWQsXG4gICAgfSksXG4gICAgZXh0ZW5kKFxuICAgICAgLi4uYXJnczpcbiAgICAgICAgfCBbc3RyaW5nLCBSZXN0RW5kcG9pbnRPcHRpb25zICYgUGFydGlhbFJlc3RHZW5lcmljc11cbiAgICAgICAgfCBbUmVzdEVuZHBvaW50T3B0aW9ucyAmIFBhcnRpYWxSZXN0R2VuZXJpY3NdXG4gICAgICAgIHwgW1xuICAgICAgICAgICAgKFxuICAgICAgICAgICAgICBiYXNlUmVzb3VyY2U6IFJlc291cmNlSW50ZXJmYWNlLFxuICAgICAgICAgICAgKSA9PiBSZWNvcmQ8c3RyaW5nLCBSZXN0SW5zdGFuY2VCYXNlPixcbiAgICAgICAgICBdXG4gICAgKSB7XG4gICAgICBpZiAodHlwZW9mIGFyZ3NbMF0gPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIGNvbnN0IFtrZXksIG9wdGlvbnNdID0gYXJncztcbiAgICAgICAgaWYgKGtleSBpbiB0aGlzKSB7XG4gICAgICAgICAgY29uc3QgZXh0ZW5kZWQgPSB7IC4uLnRoaXMgfTtcbiAgICAgICAgICBleHRlbmRNZW1iZXIoZXh0ZW5kZWQsIGtleSwgb3B0aW9ucyk7XG4gICAgICAgICAgcmV0dXJuIGV4dGVuZGVkO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAuLi50aGlzLFxuICAgICAgICAgICAgW2tleV06IHRoaXMuZ2V0LmV4dGVuZChvcHRpb25zKSxcbiAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKHR5cGVvZiBhcmdzWzBdID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIGNvbnN0IGV4dGVuZGVkID0gYXJnc1swXSh0aGlzKTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAuLi50aGlzLFxuICAgICAgICAgIC4uLmV4dGVuZGVkLFxuICAgICAgICB9O1xuICAgICAgfVxuICAgICAgY29uc3Qgb3ZlcnJpZGVzID0gYXJnc1swXTtcbiAgICAgIGNvbnN0IGV4dGVuZGVkID0geyAuLi50aGlzIH07XG4gICAgICBmb3IgKGNvbnN0IGtleSBpbiBvdmVycmlkZXMpIHtcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9iYW4tdHMtY29tbWVudFxuICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgIGV4dGVuZE1lbWJlcihleHRlbmRlZCwga2V5LCBvdmVycmlkZXNba2V5XSk7XG4gICAgICB9XG4gICAgICByZXR1cm4gZXh0ZW5kZWQ7XG4gICAgfSxcbiAgfSBhcyBhbnk7XG4gIHJldHVybiByZXQ7XG59XG5cbmZ1bmN0aW9uIG9wdGltaXN0aWNVcGRhdGUoc25hcDogU25hcHNob3RJbnRlcmZhY2UsIHBhcmFtczogYW55LCBib2R5OiBhbnkpIHtcbiAgcmV0dXJuIHtcbiAgICAuLi5wYXJhbXMsXG4gICAgLi4uZW5zdXJlUG9qbyhib2R5KSxcbiAgfTtcbn1cbmZ1bmN0aW9uIG9wdGltaXN0aWNQYXJ0aWFsKHNjaGVtYTogUXVlcnlhYmxlKSB7XG4gIHJldHVybiBmdW5jdGlvbiAoc25hcDogU25hcHNob3RJbnRlcmZhY2UsIHBhcmFtczogYW55LCBib2R5OiBhbnkpIHtcbiAgICBjb25zdCBkYXRhID0gc25hcC5nZXQoc2NoZW1hLCBwYXJhbXMpO1xuICAgIGlmICghZGF0YSkgdGhyb3cgc25hcC5hYm9ydDtcbiAgICByZXR1cm4ge1xuICAgICAgLi4ucGFyYW1zLFxuICAgICAgLi4uZGF0YSxcbiAgICAgIC8vIGV2ZW4gdGhvIHdlIGRvbid0IGFsd2F5cyBoYXZlIHR3byBhcmd1bWVudHMsIHRoZSBleHRyYSBvbmUgd2lsbCBzaW1wbHkgYmUgdW5kZWZpbmVkIHdoaWNoIHNwcmVhZHMgZmluZVxuICAgICAgLi4uZW5zdXJlUG9qbyhib2R5KSxcbiAgICB9O1xuICB9O1xufVxuZnVuY3Rpb24gb3B0aW1pc3RpY0RlbGV0ZShzbmFwOiBTbmFwc2hvdEludGVyZmFjZSwgcGFyYW1zOiBhbnkpIHtcbiAgcmV0dXJuIHBhcmFtcztcbn1cbmZ1bmN0aW9uIGVuc3VyZVBvam8oYm9keTogYW55KSB7XG4gIHJldHVybiBib2R5IGluc3RhbmNlb2YgRm9ybURhdGEgP1xuICAgICAgT2JqZWN0LmZyb21FbnRyaWVzKChib2R5IGFzIGFueSkuZW50cmllcygpKVxuICAgIDogYm9keTtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7QUFBQSxTQUFTQSxNQUFNLFFBQVEsdUJBQXVCO0FBUzlDLE9BQU9DLFlBQVksTUFLWixtQkFBbUI7QUFDMUIsU0FBU0MsV0FBVyxRQUFRLGtCQUFrQjtBQUU5QyxNQUFNO0VBQUVDLFVBQVU7RUFBRUMsVUFBVSxFQUFFQztBQUFlLENBQUMsR0FBR0wsTUFBTTs7QUFFekQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlLFNBQVNNLFFBQVFBLENBQUFDLElBQUEsRUFRZTtFQUFB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
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vc3JjL3Jlc291cmNlRXh0ZW5kYWJsZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEVuZHBvaW50SW50ZXJmYWNlLFxuICBFbmRwb2ludFRvRnVuY3Rpb24sXG59IGZyb20gJ0BkYXRhLWNsaWVudC9lbmRwb2ludCc7XG5cbmltcG9ydCB0eXBlIHsgUmVzb3VyY2VQYXRoIH0gZnJvbSAnLi9wYXRoVHlwZXMuanMnO1xuaW1wb3J0IHR5cGUge1xuICBSZXNvdXJjZUV4dGVuc2lvbixcbiAgUmVzb3VyY2VFbmRwb2ludEV4dGVuc2lvbnMsXG4gIEN1c3RvbVJlc291cmNlLFxuICBFeHRlbmRlZFJlc291cmNlLFxufSBmcm9tICcuL3Jlc291cmNlRXh0ZW5zaW9uVHlwZXMuanMnO1xuaW1wb3J0IHR5cGUge1xuICBSZXNvdXJjZSxcbiAgUmVzb3VyY2VHZW5lcmljcyxcbiAgUmVzb3VyY2VJbnRlcmZhY2UsXG59IGZyb20gJy4vcmVzb3VyY2VUeXBlcy5qcyc7XG5pbXBvcnQgdHlwZSB7XG4gIFBhcnRpYWxSZXN0R2VuZXJpY3MsXG4gIFJlc3RFbmRwb2ludEV4dGVuZE9wdGlvbnMsXG4gIFJlc3RFeHRlbmRlZEVuZHBvaW50LFxuICBSZXN0SW5zdGFuY2VCYXNlLFxufSBmcm9tICcuL1Jlc3RFbmRwb2ludC5qcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXh0ZW5kYWJsZTxcbiAgTyBleHRlbmRzIFJlc291cmNlR2VuZXJpY3MgPSB7IHBhdGg6IFJlc291cmNlUGF0aDsgc2NoZW1hOiBhbnkgfSxcbj4ge1xuICAvKiogQWxsb3dzIGN1c3RvbWl6aW5nIGluZGl2aWR1YWwgZW5kcG9pbnRzXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kYXRhY2xpZW50LmlvL3Jlc3QvYXBpL3Jlc291cmNlI2V4dGVuZFxuICAgKi9cbiAgZXh0ZW5kPFxuICAgIFIgZXh0ZW5kcyB7XG4gICAgICBbSyBpbiBFeHRlbmRLZXldOiBSZXN0SW5zdGFuY2VCYXNlO1xuICAgIH0sXG4gICAgY29uc3QgRXh0ZW5kS2V5IGV4dGVuZHMgRXhjbHVkZTxFeHRyYWN0PGtleW9mIFIsIHN0cmluZz4sICdleHRlbmQnPixcbiAgICAvLyBUT0RPOiBzZWUgUmVzdEVuZHBvaW50LmV4dGVuZCBUT0RPXG4gICAgRXh0ZW5kT3B0aW9ucyBleHRlbmRzIFBhcnRpYWxSZXN0R2VuZXJpY3MgfCB7fSxcbiAgPihcbiAgICB0aGlzOiBSLFxuICAgIGtleTogRXh0ZW5kS2V5LFxuICAgIG9wdGlvbnM6IFJlYWRvbmx5PFxuICAgICAgUmVzdEVuZHBvaW50RXh0ZW5kT3B0aW9uczxcbiAgICAgICAgRXh0ZW5kT3B0aW9ucyxcbiAgICAgICAgUltFeHRlbmRLZXldLFxuICAgICAgICBFbmRwb2ludFRvRnVuY3Rpb248UltFeHRlbmRLZXldPlxuICAgICAgPiAmXG4gICAgICAgIEV4dGVuZE9wdGlvbnNcbiAgICA+LFxuICApOiBSZXNvdXJjZUV4dGVuc2lvbjxSLCBFeHRlbmRLZXksIEV4dGVuZE9wdGlvbnM+O1xuICBleHRlbmQ8XG4gICAgUiBleHRlbmRzIHsgZ2V0OiBSZXN0SW5zdGFuY2VCYXNlIH0sXG4gICAgY29uc3QgRXh0ZW5kS2V5IGV4dGVuZHMgc3RyaW5nLFxuICAgIC8vIFRPRE86IHNlZSBSZXN0RW5kcG9pbnQuZXh0ZW5kIFRPRE9cbiAgICBFeHRlbmRPcHRpb25zIGV4dGVuZHMgUGFydGlhbFJlc3RHZW5lcmljcyB8IHt9LFxuICA+KFxuICAgIHRoaXM6IFIsXG4gICAga2V5OiBFeHRlbmRLZXksXG4gICAgb3B0aW9uczogUmVhZG9ubHk8XG4gICAgICBSZXN0RW5kcG9pbnRFeHRlbmRPcHRpb25zPFxuICAgICAgICBFeHRlbmRPcHRpb25zLFxuICAgICAgICBSWydnZXQnXSxcbiAgICAgICAgRW5kcG9pbnRUb0Z1bmN0aW9uPFJbJ2dldCddPlxuICAgICAgPiAmXG4gICAgICAgIEV4dGVuZE9wdGlvbnNcbiAgICA+LFxuICApOiBSICYge1xuICAgIFtrZXkgaW4gRXh0ZW5kS2V5XTogUmVzdEV4dGVuZGVkRW5kcG9pbnQ8RXh0ZW5kT3B0aW9ucywgUlsnZ2V0J10+O1xuICB9O1xuICBleHRlbmQ8XG4gICAgUiBleHRlbmRzIFJlc291cmNlSW50ZXJmYWNlLFxuICAgIEdldCBleHRlbmRzIFBhcnRpYWxSZXN0R2VuZXJpY3MgPSBhbnksXG4gICAgR2V0TGlzdCBleHRlbmRzIFBhcnRpYWxSZXN0R2VuZXJpY3MgPSBhbnksXG4gICAgVXBkYXRlIGV4dGVuZHMgUGFydGlhbFJlc3RHZW5lcmljcyA9IGFueSxcbiAgICBQYXJ0aWFsVXBkYXRlIGV4dGVuZHMgUGFydGlhbFJlc3RHZW5lcmljcyA9IGFueSxcbiAgICBEZWxldGUgZXh0ZW5kcyBQYXJ0aWFsUmVzdEdlbmVyaWNzID0gYW55LFxuICA+KFxuICAgIHRoaXM6IFIsXG4gICAgb3B0aW9uczogUmVzb3VyY2VFbmRwb2ludEV4dGVuc2lvbnM8XG4gICAgICBSLFxuICAgICAgR2V0LFxuICAgICAgR2V0TGlzdCxcbiAgICAgIFVwZGF0ZSxcbiAgICAgIFBhcnRpYWxVcGRhdGUsXG4gICAgICBEZWxldGVcbiAgICA+LFxuICApOiBDdXN0b21SZXNvdXJjZTxSLCBPLCBHZXQsIEdldExpc3QsIFVwZGF0ZSwgUGFydGlhbFVwZGF0ZSwgRGVsZXRlPjtcbiAgZXh0ZW5kPFxuICAgIFIgZXh0ZW5kcyBSZXNvdXJjZUludGVyZmFjZSxcbiAgICBUIGV4dGVuZHMgUmVjb3JkPHN0cmluZywgRW5kcG9pbnRJbnRlcmZhY2U+LFxuICA+KFxuICAgIHRoaXM6IFIsXG4gICAgZXh0ZW5kZXI6IChiYXNlUmVzb3VyY2U6IFIpID0+IFQsXG4gICk6IEV4dGVuZGVkUmVzb3VyY2U8UiwgVD47XG59XG4iXSwibWFwcGluZ3MiOiIiLCJpZ25vcmVMaXN0IjpbXX0=
|
package/legacy/resourceTypes.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vc3JjL3Jlc291cmNlVHlwZXMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDb2xsZWN0aW9uLCBzY2hlbWEgfSBmcm9tICdAZGF0YS1jbGllbnQvZW5kcG9pbnQnO1xuaW1wb3J0IHR5cGUgeyBTY2hlbWEgfSBmcm9tICdAZGF0YS1jbGllbnQvZW5kcG9pbnQnO1xuaW1wb3J0IHR5cGUgeyBEZW5vcm1hbGl6ZSB9IGZyb20gJ0BkYXRhLWNsaWVudC9lbmRwb2ludCc7XG5cbmltcG9ydCB0eXBlIHtcbiAgS2V5c1RvQXJncyxcbiAgUGF0aEFyZ3MsXG4gIFJlc291cmNlUGF0aCxcbiAgU2hvcnRlblBhdGgsXG59IGZyb20gJy4vcGF0aFR5cGVzLmpzJztcbmltcG9ydCB7IEV4dGVuZGFibGUgfSBmcm9tICcuL3Jlc291cmNlRXh0ZW5kYWJsZS5qcyc7XG5pbXBvcnQgUmVzdEVuZHBvaW50LCB7XG4gIEdldEVuZHBvaW50LFxuICBNdXRhdGVFbmRwb2ludCxcbiAgUGFyYW1Ub0FyZ3MsXG4gIFJlc3RJbnN0YW5jZUJhc2UsXG4gIFJlc3RUeXBlTm9Cb2R5LFxufSBmcm9tICcuL1Jlc3RFbmRwb2ludC5qcyc7XG5cbi8qKiBUaGUgdHlwZWQgKGdlbmVyaWMpIG9wdGlvbnMgZm9yIGEgUmVzb3VyY2VcbiAqXG4gKiBAc2VlIGh0dHBzOi8vZGF0YWNsaWVudC5pby9yZXN0L2FwaS9yZXNvdXJjZSNmdW5jdGlvbi1pbmhlcml0YW5jZS1wYXR0ZXJuc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlc291cmNlR2VuZXJpY3Mge1xuICAvKiogQHNlZSBodHRwczovL2RhdGFjbGllbnQuaW8vcmVzdC9hcGkvcmVzb3VyY2UjcGF0aCAqL1xuICByZWFkb25seSBwYXRoOiBSZXNvdXJjZVBhdGg7XG4gIC8qKiBAc2VlIGh0dHBzOi8vZGF0YWNsaWVudC5pby9yZXN0L2FwaS9yZXNvdXJjZSNzY2hlbWEgKi9cbiAgcmVhZG9ubHkgc2NoZW1hOiBTY2hlbWE7XG4gIC8qKiBPbmx5IHVzZWQgZm9yIHR5cGVzICovXG4gIC8qKiBAc2VlIGh0dHBzOi8vZGF0YWNsaWVudC5pby9yZXN0L2FwaS9yZXNvdXJjZSNib2R5ICovXG4gIHJlYWRvbmx5IGJvZHk/OiBhbnk7XG4gIC8qKiBPbmx5IHVzZWQgZm9yIHR5cGVzICovXG4gIC8qKiBAc2VlIGh0dHBzOi8vZGF0YWNsaWVudC5pby9yZXN0L2FwaS9yZXNvdXJjZSNzZWFyY2hQYXJhbXMgKi9cbiAgcmVhZG9ubHkgc2VhcmNoUGFyYW1zPzogYW55O1xuICAvKiogQHNlZSBodHRwczovL2RhdGFjbGllbnQuaW8vcmVzdC9hcGkvcmVzb3VyY2UjcGFnaW5hdGlvbmZpZWxkICovXG4gIHJlYWRvbmx5IHBhZ2luYXRpb25GaWVsZD86IHN0cmluZztcbn1cbi8qKiBUaGUgdW50eXBlZCBvcHRpb25zIGZvciByZXNvdXJjZSgpICovXG5leHBvcnQgaW50ZXJmYWNlIFJlc291cmNlT3B0aW9ucyB7XG4gIC8qKiBAc2VlIGh0dHBzOi8vZGF0YWNsaWVudC5pby9yZXN0L2FwaS9yZXNvdXJjZSNlbmRwb2ludCAqL1xuICBFbmRwb2ludD86IHR5cGVvZiBSZXN0RW5kcG9pbnQ7XG4gIC8qKiBAc2VlIGh0dHBzOi8vZGF0YWNsaWVudC5pby9yZXN0L2FwaS9yZXNvdXJjZSNjb2xsZWN0aW9uICovXG4gIENvbGxlY3Rpb24/OiB0eXBlb2YgQ29sbGVjdGlvbjtcbiAgLyoqIEBzZWUgaHR0cHM6Ly9kYXRhY2xpZW50LmlvL3Jlc3QvYXBpL3Jlc291cmNlI29wdGltaXN0aWMgKi9cbiAgb3B0aW1pc3RpYz86IGJvb2xlYW47XG4gIC8qKiBAc2VlIGh0dHBzOi8vZGF0YWNsaWVudC5pby9yZXN0L2FwaS9yZXNvdXJjZSN1cmxwcmVmaXggKi9cbiAgdXJsUHJlZml4Pzogc3RyaW5nO1xuICByZXF1ZXN0SW5pdD86IFJlcXVlc3RJbml0O1xuICBnZXRIZWFkZXJzPyhoZWFkZXJzOiBIZWFkZXJzSW5pdCk6IFByb21pc2U8SGVhZGVyc0luaXQ+IHwgSGVhZGVyc0luaXQ7XG4gIGdldFJlcXVlc3RJbml0Pyhib2R5OiBhbnkpOiBQcm9taXNlPFJlcXVlc3RJbml0PiB8IFJlcXVlc3RJbml0O1xuICBmZXRjaFJlc3BvbnNlPyhpbnB1dDogUmVxdWVzdEluZm8sIGluaXQ6IFJlcXVlc3RJbml0KTogUHJvbWlzZTxhbnk+O1xuICBwYXJzZVJlc3BvbnNlPyhyZXNwb25zZTogUmVzcG9uc2UpOiBQcm9taXNlPGFueT47XG4gIC8qKiBEZWZhdWx0IGRhdGEgZXhwaXJ5IGxlbmd0aCwgd2lsbCBmYWxsIGJhY2sgdG8gTmV0d29ya01hbmFnZXIgZGVmYXVsdCBpZiBub3QgZGVmaW5lZCAqL1xuICByZWFkb25seSBkYXRhRXhwaXJ5TGVuZ3RoPzogbnVtYmVyO1xuICAvKiogRGVmYXVsdCBlcnJvciBleHBpcnkgbGVuZ3RoLCB3aWxsIGZhbGwgYmFjayB0byBOZXR3b3JrTWFuYWdlciBkZWZhdWx0IGlmIG5vdCBkZWZpbmVkICovXG4gIHJlYWRvbmx5IGVycm9yRXhwaXJ5TGVuZ3RoPzogbnVtYmVyO1xuICAvKiogUG9sbCB3aXRoIGF0IGxlYXN0IHRoaXMgZnJlcXVlbmN5IGluIG1pbGlzZWNvbmRzICovXG4gIHJlYWRvbmx5IHBvbGxGcmVxdWVuY3k/OiBudW1iZXI7XG4gIC8qKiBNYXJrcyBjYWNoZWQgcmVzb3VyY2VzIGFzIGludmFsaWQgaWYgdGhleSBhcmUgc3RhbGUgKi9cbiAgcmVhZG9ubHkgaW52YWxpZElmU3RhbGU/OiBib29sZWFuO1xuICAvKiogRGV0ZXJtaW5lcyB3aGV0aGVyIHRvIHRocm93IG9yIGZhbGxiYWNrIHRvICovXG4gIGVycm9yUG9saWN5PyhlcnJvcjogYW55KTogJ2hhcmQnIHwgJ3NvZnQnIHwgdW5kZWZpbmVkO1xufVxuXG4vKiogUmVzb3VyY2VzIGFyZSBhIGNvbGxlY3Rpb24gb2YgbWV0aG9kcyBmb3IgYSBnaXZlbiBkYXRhIG1vZGVsLlxuICogQHNlZSBodHRwczovL2RhdGFjbGllbnQuaW8vcmVzdC9hcGkvcmVzb3VyY2VcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZXNvdXJjZTxcbiAgTyBleHRlbmRzIFJlc291cmNlR2VuZXJpY3MgPSB7IHBhdGg6IFJlc291cmNlUGF0aDsgc2NoZW1hOiBhbnkgfSxcbj4gZXh0ZW5kcyBFeHRlbmRhYmxlPE8+IHtcbiAgLyoqIEdldCBvbmUgaXRlbSAoR0VUKVxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZGF0YWNsaWVudC5pby9yZXN0L2FwaS9yZXNvdXJjZSNnZXRcbiAgICovXG4gIGdldDogR2V0RW5kcG9pbnQ8eyBwYXRoOiBPWydwYXRoJ107IHNjaGVtYTogT1snc2NoZW1hJ10gfT47XG4gIC8qKiBHZXQgYW4gQXJyYXkgb2YgaXRlbXMgKEdFVClcbiAgICpcbiAgICogQHNlZSBodHRwczovL2RhdGFjbGllbnQuaW8vcmVzdC9hcGkvcmVzb3VyY2UjZ2V0bGlzdFxuICAgKi9cbiAgZ2V0TGlzdDogJ3NlYXJjaFBhcmFtcycgZXh0ZW5kcyBrZXlvZiBPID9cbiAgICBHZXRFbmRwb2ludDxcbiAgICAgIHtcbiAgICAgICAgcGF0aDogU2hvcnRlblBhdGg8T1sncGF0aCddPjtcbiAgICAgICAgc2NoZW1hOiBzY2hlbWEuQ29sbGVjdGlvbjxcbiAgICAgICAgICBbT1snc2NoZW1hJ11dLFxuICAgICAgICAgIFBhcmFtVG9BcmdzPFxuICAgICAgICAgICAgT1snc2VhcmNoUGFyYW1zJ10gZXh0ZW5kcyB1bmRlZmluZWQgP1xuICAgICAgICAgICAgICBLZXlzVG9BcmdzPFNob3J0ZW5QYXRoPE9bJ3BhdGgnXT4+XG4gICAgICAgICAgICA6IE9bJ3NlYXJjaFBhcmFtcyddICYgUGF0aEFyZ3M8U2hvcnRlblBhdGg8T1sncGF0aCddPj5cbiAgICAgICAgICA+XG4gICAgICAgID47XG4gICAgICAgIGJvZHk6ICdib2R5JyBleHRlbmRzIGtleW9mIE8gPyBPWydib2R5J11cbiAgICAgICAgOiBQYXJ0aWFsPERlbm9ybWFsaXplPE9bJ3NjaGVtYSddPj47XG4gICAgICAgIHNlYXJjaFBhcmFtczogT1snc2VhcmNoUGFyYW1zJ107XG4gICAgICB9ICYgUGljazxPLCAncGFnaW5hdGlvbkZpZWxkJz5cbiAgICA+XG4gIDogR2V0RW5kcG9pbnQ8XG4gICAgICB7XG4gICAgICAgIHBhdGg6IFNob3J0ZW5QYXRoPE9bJ3BhdGgnXT47XG4gICAgICAgIHNjaGVtYTogc2NoZW1hLkNvbGxlY3Rpb248XG4gICAgICAgICAgW09bJ3NjaGVtYSddXSxcbiAgICAgICAgICBQYXJhbVRvQXJnczxcbiAgICAgICAgICAgIChSZWNvcmQ8c3RyaW5nLCBudW1iZXIgfCBzdHJpbmcgfCBib29sZWFuPiB8IHVuZGVmaW5lZCkgJlxuICAgICAgICAgICAgICBQYXRoQXJnczxTaG9ydGVuUGF0aDxPWydwYXRoJ10+PlxuICAgICAgICAgID5cbiAgICAgICAgPjtcbiAgICAgICAgYm9keTogJ2JvZHknIGV4dGVuZHMga2V5b2YgTyA/IE9bJ2JvZHknXVxuICAgICAgICA6IFBhcnRpYWw8RGVub3JtYWxpemU8T1snc2NoZW1hJ10+PjtcbiAgICAgICAgc2VhcmNoUGFyYW1zOiBSZWNvcmQ8c3RyaW5nLCBudW1iZXIgfCBzdHJpbmcgfCBib29sZWFuPiB8IHVuZGVmaW5lZDtcbiAgICAgIH0gJiBQaWNrPE8sICdwYWdpbmF0aW9uRmllbGQnPlxuICAgID47XG4gIC8qKiBDcmVhdGUgYSBuZXcgaXRlbSAoUE9TVClcbiAgICpcbiAgICogQGRlcHJlY2F0ZWQgdXNlIFJlc291cmNlLmdldExpc3QucHVzaCBpbnN0ZWFkXG4gICAqL1xuICBjcmVhdGU6ICdzZWFyY2hQYXJhbXMnIGV4dGVuZHMga2V5b2YgTyA/XG4gICAgTXV0YXRlRW5kcG9pbnQ8e1xuICAgICAgcGF0aDogU2hvcnRlblBhdGg8T1sncGF0aCddPjtcbiAgICAgIHNjaGVtYTogc2NoZW1hLkNvbGxlY3Rpb248W09bJ3NjaGVtYSddXT5bJ3B1c2gnXTtcbiAgICAgIGJvZHk6ICdib2R5JyBleHRlbmRzIGtleW9mIE8gPyBPWydib2R5J11cbiAgICAgIDogUGFydGlhbDxEZW5vcm1hbGl6ZTxPWydzY2hlbWEnXT4+O1xuICAgICAgc2VhcmNoUGFyYW1zOiBPWydzZWFyY2hQYXJhbXMnXTtcbiAgICB9PlxuICA6IE11dGF0ZUVuZHBvaW50PHtcbiAgICAgIHBhdGg6IFNob3J0ZW5QYXRoPE9bJ3BhdGgnXT47XG4gICAgICBzY2hlbWE6IHNjaGVtYS5Db2xsZWN0aW9uPFtPWydzY2hlbWEnXV0+WydwdXNoJ107XG4gICAgICBib2R5OiAnYm9keScgZXh0ZW5kcyBrZXlvZiBPID8gT1snYm9keSddXG4gICAgICA6IFBhcnRpYWw8RGVub3JtYWxpemU8T1snc2NoZW1hJ10+PjtcbiAgICB9PjtcbiAgLyoqIFVwZGF0ZSBhbiBpdGVtIChQVVQpXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kYXRhY2xpZW50LmlvL3Jlc3QvYXBpL3Jlc291cmNlI3VwZGF0ZVxuICAgKi9cbiAgdXBkYXRlOiAnYm9keScgZXh0ZW5kcyBrZXlvZiBPID9cbiAgICBNdXRhdGVFbmRwb2ludDx7XG4gICAgICBwYXRoOiBPWydwYXRoJ107XG4gICAgICBib2R5OiBPWydib2R5J107XG4gICAgICBzY2hlbWE6IE9bJ3NjaGVtYSddO1xuICAgIH0+XG4gIDogTXV0YXRlRW5kcG9pbnQ8e1xuICAgICAgcGF0aDogT1sncGF0aCddO1xuICAgICAgYm9keTogUGFydGlhbDxEZW5vcm1hbGl6ZTxPWydzY2hlbWEnXT4+IHwgRm9ybURhdGE7XG4gICAgICBzY2hlbWE6IE9bJ3NjaGVtYSddO1xuICAgIH0+O1xuICAvKiogVXBkYXRlIGFuIGl0ZW0gKFBBVENIKVxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZGF0YWNsaWVudC5pby9yZXN0L2FwaS9yZXNvdXJjZSNwYXJ0aWFsdXBkYXRlXG4gICAqL1xuICBwYXJ0aWFsVXBkYXRlOiAnYm9keScgZXh0ZW5kcyBrZXlvZiBPID9cbiAgICBNdXRhdGVFbmRwb2ludDx7XG4gICAgICBwYXRoOiBPWydwYXRoJ107XG4gICAgICBib2R5OiBQYXJ0aWFsPE9bJ2JvZHknXT47XG4gICAgICBzY2hlbWE6IE9bJ3NjaGVtYSddO1xuICAgIH0+XG4gIDogTXV0YXRlRW5kcG9pbnQ8e1xuICAgICAgcGF0aDogT1sncGF0aCddO1xuICAgICAgYm9keTogUGFydGlhbDxEZW5vcm1hbGl6ZTxPWydzY2hlbWEnXT4+IHwgRm9ybURhdGE7XG4gICAgICBzY2hlbWE6IE9bJ3NjaGVtYSddO1xuICAgIH0+O1xuICAvKiogRGVsZXRlIGFuIGl0ZW0gKERFTEVURSlcbiAgICpcbiAgICogQHNlZSBodHRwczovL2RhdGFjbGllbnQuaW8vcmVzdC9hcGkvcmVzb3VyY2UjZGVsZXRlXG4gICAqL1xuICBkZWxldGU6IFJlc3RUeXBlTm9Cb2R5PFxuICAgIFBhdGhBcmdzPE9bJ3BhdGgnXT4sXG4gICAgT1snc2NoZW1hJ10gZXh0ZW5kcyBzY2hlbWEuRW50aXR5SW50ZXJmYWNlICYgeyBwcm9jZXNzOiBhbnkgfSA/XG4gICAgICBzY2hlbWEuSW52YWxpZGF0ZTxPWydzY2hlbWEnXT5cbiAgICA6IE9bJ3NjaGVtYSddLFxuICAgIHVuZGVmaW5lZCxcbiAgICBQYXJ0aWFsPFBhdGhBcmdzPE9bJ3BhdGgnXT4+LFxuICAgIHtcbiAgICAgIHBhdGg6IE9bJ3BhdGgnXTtcbiAgICB9XG4gID47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVzb3VyY2VJbnRlcmZhY2Uge1xuICBnZXQ6IFJlc3RJbnN0YW5jZUJhc2U7XG4gIGdldExpc3Q6IFJlc3RJbnN0YW5jZUJhc2U7XG4gIHVwZGF0ZTogUmVzdEluc3RhbmNlQmFzZTtcbiAgcGFydGlhbFVwZGF0ZTogUmVzdEluc3RhbmNlQmFzZTtcbiAgZGVsZXRlOiBSZXN0SW5zdGFuY2VCYXNlO1xufVxuIl0sIm1hcHBpbmdzIjoiIiwiaWdub3JlTGlzdCI6W119
|
package/lib/index.d.ts
CHANGED
|
@@ -2,7 +2,8 @@ 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 type { RestEndpoint as IRestEndpoint } from './RestEndpointTypes.js';
|
|
4
4
|
export { getUrlBase, getUrlTokens } from './RestHelpers.js';
|
|
5
|
-
export { default as
|
|
5
|
+
export { default as resource } from './resource.js';
|
|
6
|
+
export { default as createResource } from './resource.js';
|
|
6
7
|
export type { Resource } from './resourceTypes.js';
|
|
7
8
|
export type { ResourceOptions, ResourceGenerics } from './resourceTypes.js';
|
|
8
9
|
export type { ResourceExtension, ResourceEndpointExtensions, CustomResource, ExtendedResource, } from './resourceExtensionTypes.js';
|
package/lib/index.d.ts.map
CHANGED
|
@@ -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,YAAY,EAAE,YAAY,IAAI,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,
|
|
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,YAAY,EAAE,YAAY,IAAI,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,eAAe,CAAC;AAC1D,YAAY,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACnD,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC5E,YAAY,EACV,iBAAiB,EACjB,0BAA0B,EAC1B,cAAc,EACd,gBAAgB,GACjB,MAAM,6BAA6B,CAAC;AACrC,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,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
|
@@ -3,9 +3,10 @@ Object.hasOwn = Object.hasOwn || /* istanbul ignore next */function hasOwn(it, k
|
|
|
3
3
|
};
|
|
4
4
|
export { default as RestEndpoint } from './RestEndpoint.js';
|
|
5
5
|
export { getUrlBase, getUrlTokens } from './RestHelpers.js';
|
|
6
|
-
export { default as
|
|
6
|
+
export { default as resource } from './resource.js';
|
|
7
|
+
export { default as createResource } from './resource.js';
|
|
7
8
|
export { default as hookifyResource } from './hookifyResource.js';
|
|
8
9
|
export { default as NetworkError } from './NetworkError.js';
|
|
9
10
|
export * from '@data-client/endpoint';
|
|
10
11
|
export * from './RestEndpoint.js';
|
|
11
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
12
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJPYmplY3QiLCJoYXNPd24iLCJpdCIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlZmF1bHQiLCJSZXN0RW5kcG9pbnQiLCJnZXRVcmxCYXNlIiwiZ2V0VXJsVG9rZW5zIiwicmVzb3VyY2UiLCJjcmVhdGVSZXNvdXJjZSIsImhvb2tpZnlSZXNvdXJjZSIsIk5ldHdvcmtFcnJvciJdLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJPYmplY3QuaGFzT3duID1cbiAgT2JqZWN0Lmhhc093biB8fFxuICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqLyBmdW5jdGlvbiBoYXNPd24oaXQsIGtleSkge1xuICAgIHJldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoaXQsIGtleSk7XG4gIH07XG5leHBvcnQgeyBkZWZhdWx0IGFzIFJlc3RFbmRwb2ludCB9IGZyb20gJy4vUmVzdEVuZHBvaW50LmpzJztcbmV4cG9ydCB0eXBlIHtcbiAgR2V0RW5kcG9pbnQsXG4gIE11dGF0ZUVuZHBvaW50LFxuICBEZWZhdWx0cyxcbiAgUmVzdEdlbmVyaWNzLFxuICBGZXRjaEdldCxcbiAgRmV0Y2hNdXRhdGUsXG4gIFJlc3RGZXRjaCxcbiAgUmVzdFR5cGUsXG4gIFJlc3RJbnN0YW5jZSxcbiAgS2V5b2ZSZXN0RW5kcG9pbnQsXG4gIFJlc3RFbmRwb2ludENvbnN0cnVjdG9yT3B0aW9ucyxcbiAgQWRkRW5kcG9pbnQsXG4gIFBhZ2luYXRpb25GaWVsZEVuZHBvaW50LFxuICBQYWdpbmF0aW9uRW5kcG9pbnQsXG59IGZyb20gJy4vUmVzdEVuZHBvaW50LmpzJztcbmV4cG9ydCB0eXBlIHsgUmVzdEVuZHBvaW50IGFzIElSZXN0RW5kcG9pbnQgfSBmcm9tICcuL1Jlc3RFbmRwb2ludFR5cGVzLmpzJztcbmV4cG9ydCB7IGdldFVybEJhc2UsIGdldFVybFRva2VucyB9IGZyb20gJy4vUmVzdEhlbHBlcnMuanMnO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyByZXNvdXJjZSB9IGZyb20gJy4vcmVzb3VyY2UuanMnO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBjcmVhdGVSZXNvdXJjZSB9IGZyb20gJy4vcmVzb3VyY2UuanMnO1xuZXhwb3J0IHR5cGUgeyBSZXNvdXJjZSB9IGZyb20gJy4vcmVzb3VyY2VUeXBlcy5qcyc7XG5leHBvcnQgdHlwZSB7IFJlc291cmNlT3B0aW9ucywgUmVzb3VyY2VHZW5lcmljcyB9IGZyb20gJy4vcmVzb3VyY2VUeXBlcy5qcyc7XG5leHBvcnQgdHlwZSB7XG4gIFJlc291cmNlRXh0ZW5zaW9uLFxuICBSZXNvdXJjZUVuZHBvaW50RXh0ZW5zaW9ucyxcbiAgQ3VzdG9tUmVzb3VyY2UsXG4gIEV4dGVuZGVkUmVzb3VyY2UsXG59IGZyb20gJy4vcmVzb3VyY2VFeHRlbnNpb25UeXBlcy5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIGhvb2tpZnlSZXNvdXJjZSB9IGZyb20gJy4vaG9va2lmeVJlc291cmNlLmpzJztcbmV4cG9ydCB0eXBlIHtcbiAgSG9va1Jlc291cmNlLFxuICBIb29rYWJsZUVuZHBvaW50SW50ZXJmYWNlLFxufSBmcm9tICcuL2hvb2tpZnlSZXNvdXJjZS5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIE5ldHdvcmtFcnJvciB9IGZyb20gJy4vTmV0d29ya0Vycm9yLmpzJztcbmV4cG9ydCB0eXBlIHsgT3B0aW9uc1RvRnVuY3Rpb24gfSBmcm9tICcuL09wdGlvbnNUb0Z1bmN0aW9uLmpzJztcbmV4cG9ydCB0eXBlIHtcbiAgU2hvcnRlblBhdGgsXG4gIFBhdGhBcmdzLFxuICBQYXRoS2V5cyxcbiAgS2V5c1RvQXJncyxcbiAgUGF0aEFyZ3NBbmRTZWFyY2gsXG59IGZyb20gJy4vcGF0aFR5cGVzLmpzJztcblxuZXhwb3J0ICogZnJvbSAnQGRhdGEtY2xpZW50L2VuZHBvaW50JztcbmV4cG9ydCAqIGZyb20gJy4vUmVzdEVuZHBvaW50LmpzJztcbiJdLCJtYXBwaW5ncyI6IkFBQUFBLE1BQU0sQ0FBQ0MsTUFBTSxHQUNYRCxNQUFNLENBQUNDLE1BQU0sSUFDYiwwQkFBMkIsU0FBU0EsTUFBTUEsQ0FBQ0MsRUFBRSxFQUFFQyxHQUFHLEVBQUU7RUFDbEQsT0FBT0gsTUFBTSxDQUFDSSxTQUFTLENBQUNDLGNBQWMsQ0FBQ0MsSUFBSSxDQUFDSixFQUFFLEVBQUVDLEdBQUcsQ0FBQztBQUN0RCxDQUFDO0FBQ0gsU0FBU0ksT0FBTyxJQUFJQyxZQUFZLFFBQVEsbUJBQW1CO0FBa0IzRCxTQUFTQyxVQUFVLEVBQUVDLFlBQVksUUFBUSxrQkFBa0I7QUFDM0QsU0FBU0gsT0FBTyxJQUFJSSxRQUFRLFFBQVEsZUFBZTtBQUNuRCxTQUFTSixPQUFPLElBQUlLLGNBQWMsUUFBUSxlQUFlO0FBU3pELFNBQVNMLE9BQU8sSUFBSU0sZUFBZSxRQUFRLHNCQUFzQjtBQUtqRSxTQUFTTixPQUFPLElBQUlPLFlBQVksUUFBUSxtQkFBbUI7QUFVM0QsY0FBYyx1QkFBdUI7QUFDckMsY0FBYyxtQkFBbUIiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { ResourceGenerics, ResourceOptions, Resource } from './resourceTypes.js';
|
|
2
|
+
/** Creates collection of Endpoints for common operations on a given data/schema.
|
|
3
|
+
*
|
|
4
|
+
* @see https://dataclient.io/rest/api/resource
|
|
5
|
+
*/
|
|
6
|
+
export default function resource<O extends ResourceGenerics>({ path, schema, Endpoint, Collection, optimistic, paginationField, ...extraOptions }: Readonly<O> & ResourceOptions): Resource<O>;
|
|
7
|
+
//# sourceMappingURL=resource.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resource.d.ts","sourceRoot":"","sources":["../src/resource.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,QAAQ,EAET,MAAM,oBAAoB,CAAC;AAW5B;;;GAGG;AACH,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,CAAC,SAAS,gBAAgB,EAAE,EAC3D,IAAI,EACJ,MAAM,EACN,QAAuB,EACvB,UAA2B,EAC3B,UAAU,EACV,eAAe,EACf,GAAG,YAAY,EAChB,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,eAAe,GAAG,QAAQ,CAAC,CAAC,CAAC,CA6I7C"}
|