ember-data-resources 5.0.0 → 5.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -39,7 +39,7 @@ Available properties:
39
39
  - {{this.blog.isLoading}}
40
40
  - {{this.blog.isSuccess}}
41
41
  - {{this.blog.isError}}
42
- - {{this.blog.hasRun}}
42
+ - {{this.blog.hasRan}}
43
43
 
44
44
  Available methods:
45
45
  - <button {{on 'click' this.blog.retry}}>Retry</button>
@@ -63,7 +63,7 @@ Available methods:
63
63
  - {{blog.isLoading}}
64
64
  - {{blog.isSuccess}}
65
65
  - {{blog.isError}}
66
- - {{blog.hasRun}}
66
+ - {{blog.hasRan}}
67
67
 
68
68
  Available methods:
69
69
  - <button {{on 'click' blog.retry}}>Retry</button>
@@ -104,7 +104,7 @@ Available properties:
104
104
  - {{this.blog.isLoading}}
105
105
  - {{this.blog.isSuccess}}
106
106
  - {{this.blog.isError}}
107
- - {{this.blog.hasRun}}
107
+ - {{this.blog.hasRan}}
108
108
 
109
109
  Available methods:
110
110
  - <button {{on 'click' this.blog.retry}}>Retry</button>
@@ -129,7 +129,7 @@ Available methods:
129
129
  - {{blog.isLoading}}
130
130
  - {{blog.isSuccess}}
131
131
  - {{blog.isError}}
132
- - {{blog.hasRun}}
132
+ - {{blog.hasRan}}
133
133
 
134
134
  Available methods:
135
135
  - <button {{on 'click' blog.retry}}>Retry</button>
@@ -168,7 +168,7 @@ Available properties:
168
168
  - {{this.blog.isLoading}}
169
169
  - {{this.blog.isSuccess}}
170
170
  - {{this.blog.isError}}
171
- - {{this.blog.hasRun}}
171
+ - {{this.blog.hasRan}}
172
172
 
173
173
  Available methods:
174
174
  - <button {{on 'click' this.blog.retry}}>Retry</button>
@@ -192,7 +192,7 @@ Available methods:
192
192
  - {{blog.isLoading}}
193
193
  - {{blog.isSuccess}}
194
194
  - {{blog.isError}}
195
- - {{blog.hasRun}}
195
+ - {{blog.hasRan}}
196
196
 
197
197
  Available methods:
198
198
  - <button {{on 'click' blog.retry}}>Retry</button>
@@ -234,7 +234,7 @@ Available properties:
234
234
  - {{this.blog.isLoading}}
235
235
  - {{this.blog.isSuccess}}
236
236
  - {{this.blog.isError}}
237
- - {{this.blog.hasRun}}
237
+ - {{this.blog.hasRan}}
238
238
 
239
239
  Available methods:
240
240
  - <button {{on 'click' this.blog.retry}}>Retry</button>
@@ -258,7 +258,7 @@ Available methods:
258
258
  - {{blog.isLoading}}
259
259
  - {{blog.isSuccess}}
260
260
  - {{blog.isError}}
261
- - {{blog.hasRun}}
261
+ - {{blog.hasRan}}
262
262
 
263
263
  Available methods:
264
264
  - <button {{on 'click' blog.retry}}>Retry</button>
@@ -1,4 +1,4 @@
1
- import { _ as _applyDecoratedDescriptor, R as Request, a as _initializerDefineProperty } from '../../request-17f93aea.js';
1
+ import { _ as _applyDecoratedDescriptor, R as Request, a as _initializerDefineProperty } from '../../request-rVKgKutp.js';
2
2
  import { tracked } from '@glimmer/tracking';
3
3
  import { isDestroyed, isDestroying } from '@ember/destroyable';
4
4
  import { action } from '@ember/object';
@@ -1,4 +1,4 @@
1
- import { _ as _applyDecoratedDescriptor, R as Request, a as _initializerDefineProperty } from '../../request-17f93aea.js';
1
+ import { _ as _applyDecoratedDescriptor, R as Request, a as _initializerDefineProperty } from '../../request-rVKgKutp.js';
2
2
  import { tracked } from '@glimmer/tracking';
3
3
  import { isDestroyed, isDestroying } from '@ember/destroyable';
4
4
  import { action } from '@ember/object';
@@ -1,4 +1,4 @@
1
- import { _ as _applyDecoratedDescriptor, R as Request, a as _initializerDefineProperty } from '../../request-17f93aea.js';
1
+ import { _ as _applyDecoratedDescriptor, R as Request, a as _initializerDefineProperty } from '../../request-rVKgKutp.js';
2
2
  import { tracked } from '@glimmer/tracking';
3
3
  import { isDestroyed, isDestroying } from '@ember/destroyable';
4
4
  import { action } from '@ember/object';
@@ -1,4 +1,4 @@
1
- import { _ as _applyDecoratedDescriptor, R as Request, a as _initializerDefineProperty } from '../../request-17f93aea.js';
1
+ import { _ as _applyDecoratedDescriptor, R as Request, a as _initializerDefineProperty } from '../../request-rVKgKutp.js';
2
2
  import { tracked } from '@glimmer/tracking';
3
3
  import { isDestroyed, isDestroying } from '@ember/destroyable';
4
4
  import { action } from '@ember/object';
@@ -1,4 +1,4 @@
1
- export { R as Request } from '../../request-17f93aea.js';
1
+ export { R as Request } from '../../request-rVKgKutp.js';
2
2
  import '@glimmer/tracking';
3
3
  import '@ember/debug';
4
4
  import '@ember/destroyable';
@@ -138,4 +138,4 @@ let Request = (_class = class Request extends Resource {
138
138
  }), _applyDecoratedDescriptor(_class.prototype, "retry", [action], Object.getOwnPropertyDescriptor(_class.prototype, "retry"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, "__REQUEST_FUNCTION__", [action, waitFor], Object.getOwnPropertyDescriptor(_class.prototype, "__REQUEST_FUNCTION__"), _class.prototype)), _class);
139
139
 
140
140
  export { Request as R, _applyDecoratedDescriptor as _, _initializerDefineProperty as a };
141
- //# sourceMappingURL=request-17f93aea.js.map
141
+ //# sourceMappingURL=request-rVKgKutp.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"request-17f93aea.js","sources":["../../node_modules/.pnpm/@babel+runtime@7.22.5/node_modules/@babel/runtime/helpers/esm/initializerDefineProperty.js","../../node_modules/.pnpm/@babel+runtime@7.22.5/node_modules/@babel/runtime/helpers/esm/applyDecoratedDescriptor.js","../src/-private/resources/request.ts"],"sourcesContent":["export default function _initializerDefineProperty(target, property, descriptor, context) {\n if (!descriptor) return;\n Object.defineProperty(target, property, {\n enumerable: descriptor.enumerable,\n configurable: descriptor.configurable,\n writable: descriptor.writable,\n value: descriptor.initializer ? descriptor.initializer.call(context) : void 0\n });\n}","export default function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) {\n var desc = {};\n Object.keys(descriptor).forEach(function (key) {\n desc[key] = descriptor[key];\n });\n desc.enumerable = !!desc.enumerable;\n desc.configurable = !!desc.configurable;\n if ('value' in desc || desc.initializer) {\n desc.writable = true;\n }\n desc = decorators.slice().reverse().reduce(function (desc, decorator) {\n return decorator(target, property, desc) || desc;\n }, desc);\n if (context && desc.initializer !== void 0) {\n desc.value = desc.initializer ? desc.initializer.call(context) : void 0;\n desc.initializer = undefined;\n }\n if (desc.initializer === void 0) {\n Object.defineProperty(target, property, desc);\n desc = null;\n }\n return desc;\n}","import { tracked } from '@glimmer/tracking';\nimport { assert } from '@ember/debug';\nimport { isDestroyed, isDestroying } from '@ember/destroyable';\nimport { action } from '@ember/object';\nimport { inject as service } from '@ember/service';\nimport { waitFor, waitForPromise } from '@ember/test-waiters';\n\nimport { Resource } from 'ember-resources';\n\nimport type Store from '@ember-data/store';\nimport type { ExpandArgs } from 'ember-resources';\n\nexport type FindRecordOptions = Parameters<Store['findRecord']>[2];\n\nexport class Request<Args> extends Resource<Args> {\n @service declare store: Store;\n\n @tracked error: Error | undefined;\n @tracked isLoading = false;\n @tracked hasRan = false;\n\n /**\n * Args saved, untracked, for retrying\n */\n declare positional: ExpandArgs<Args>['Positional'];\n declare named: ExpandArgs<Args>['Named'];\n\n modify(positional: ExpandArgs<Args>['Positional'], named: ExpandArgs<Args>['Named']) {\n this.positional = positional;\n this.named = named;\n\n /**\n * We need to consume all arguments here so that we correctly respond to updates to\n * dirtied source data.\n *\n * e.g.: when an id changes that is passed to findRecord, we re-fetch.\n */\n this.__REQUEST_FUNCTION__([...(positional as unknown[])] as ExpandArgs<Args>['Positional'], {\n ...named,\n });\n }\n\n async __WRAPPED_FUNCTION__(\n _positional: ExpandArgs<Args>['Positional'],\n _named: ExpandArgs<Args>['Named']\n ) {\n throw new Error('Not Implemented');\n }\n\n get isSuccess() {\n return !this.error;\n }\n\n get isError() {\n return Boolean(this.error);\n }\n\n get records(): unknown | undefined {\n return assert(\n `The resource for ${this.constructor.name} does not have a records property. ` +\n `You might be looking for .record instead.`\n );\n }\n\n get record(): unknown | undefined {\n return assert(\n `The resource for ${this.constructor.name} does not have a record property. ` +\n `You might be looking for .records instead.`\n );\n }\n\n @action\n async retry() {\n return waitForPromise(this.__WRAPPED_FUNCTION__(this.positional, this.named));\n }\n\n @action\n @waitFor\n async __REQUEST_FUNCTION__(\n _positional: ExpandArgs<Args>['Positional'],\n _named: ExpandArgs<Args>['Named']\n ) {\n /**\n * Args are already consumed, but let's delay doing anything\n * until we can get out of a tracking frame.\n */\n await Promise.resolve();\n\n if (isDestroyed(this) || isDestroying(this)) return;\n\n this.error = undefined;\n this.isLoading = true;\n\n try {\n await this.retry();\n } catch (e) {\n if (isDestroyed(this) || isDestroying(this)) return;\n\n if (e instanceof Error) {\n this.error = e;\n } else {\n // How likely is this to happen?\n throw e;\n }\n }\n\n if (isDestroyed(this) || isDestroying(this)) {\n return;\n }\n\n this.isLoading = false;\n this.hasRan = true;\n }\n}\n"],"names":["_initializerDefineProperty","target","property","descriptor","context","Object","defineProperty","enumerable","configurable","writable","value","initializer","call","_applyDecoratedDescriptor","decorators","desc","keys","forEach","key","slice","reverse","reduce","decorator","undefined","Request","_class","Resource","constructor","args","_descriptor","_descriptor2","_descriptor3","_descriptor4","modify","positional","named","__REQUEST_FUNCTION__","__WRAPPED_FUNCTION__","_positional","_named","Error","isSuccess","error","isError","Boolean","records","assert","name","record","retry","waitForPromise","Promise","resolve","isDestroyed","isDestroying","isLoading","e","hasRan","prototype","service","tracked","action","getOwnPropertyDescriptor","waitFor"],"mappings":"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","x_google_ignoreList":[0,1]}
1
+ {"version":3,"file":"request-rVKgKutp.js","sources":["../../node_modules/.pnpm/@babel+runtime@7.22.5/node_modules/@babel/runtime/helpers/esm/initializerDefineProperty.js","../../node_modules/.pnpm/@babel+runtime@7.22.5/node_modules/@babel/runtime/helpers/esm/applyDecoratedDescriptor.js","../src/-private/resources/request.ts"],"sourcesContent":["export default function _initializerDefineProperty(target, property, descriptor, context) {\n if (!descriptor) return;\n Object.defineProperty(target, property, {\n enumerable: descriptor.enumerable,\n configurable: descriptor.configurable,\n writable: descriptor.writable,\n value: descriptor.initializer ? descriptor.initializer.call(context) : void 0\n });\n}","export default function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) {\n var desc = {};\n Object.keys(descriptor).forEach(function (key) {\n desc[key] = descriptor[key];\n });\n desc.enumerable = !!desc.enumerable;\n desc.configurable = !!desc.configurable;\n if ('value' in desc || desc.initializer) {\n desc.writable = true;\n }\n desc = decorators.slice().reverse().reduce(function (desc, decorator) {\n return decorator(target, property, desc) || desc;\n }, desc);\n if (context && desc.initializer !== void 0) {\n desc.value = desc.initializer ? desc.initializer.call(context) : void 0;\n desc.initializer = undefined;\n }\n if (desc.initializer === void 0) {\n Object.defineProperty(target, property, desc);\n desc = null;\n }\n return desc;\n}","import { tracked } from '@glimmer/tracking';\nimport { assert } from '@ember/debug';\nimport { isDestroyed, isDestroying } from '@ember/destroyable';\nimport { action } from '@ember/object';\nimport { inject as service } from '@ember/service';\nimport { waitFor, waitForPromise } from '@ember/test-waiters';\n\nimport { Resource } from 'ember-resources';\n\nimport type Store from '@ember-data/store';\nimport type { ExpandArgs } from 'ember-resources';\n\nexport type FindRecordOptions = Parameters<Store['findRecord']>[2];\n\nexport class Request<Args> extends Resource<Args> {\n @service declare store: Store;\n\n @tracked error: Error | undefined;\n @tracked isLoading = false;\n @tracked hasRan = false;\n\n /**\n * Args saved, untracked, for retrying\n */\n declare positional: ExpandArgs<Args>['Positional'];\n declare named: ExpandArgs<Args>['Named'];\n\n modify(positional: ExpandArgs<Args>['Positional'], named: ExpandArgs<Args>['Named']) {\n this.positional = positional;\n this.named = named;\n\n /**\n * We need to consume all arguments here so that we correctly respond to updates to\n * dirtied source data.\n *\n * e.g.: when an id changes that is passed to findRecord, we re-fetch.\n */\n this.__REQUEST_FUNCTION__([...(positional as unknown[])] as ExpandArgs<Args>['Positional'], {\n ...named,\n });\n }\n\n async __WRAPPED_FUNCTION__(\n _positional: ExpandArgs<Args>['Positional'],\n _named: ExpandArgs<Args>['Named']\n ) {\n throw new Error('Not Implemented');\n }\n\n get isSuccess() {\n return !this.error;\n }\n\n get isError() {\n return Boolean(this.error);\n }\n\n get records(): unknown | undefined {\n return assert(\n `The resource for ${this.constructor.name} does not have a records property. ` +\n `You might be looking for .record instead.`\n );\n }\n\n get record(): unknown | undefined {\n return assert(\n `The resource for ${this.constructor.name} does not have a record property. ` +\n `You might be looking for .records instead.`\n );\n }\n\n @action\n async retry() {\n return waitForPromise(this.__WRAPPED_FUNCTION__(this.positional, this.named));\n }\n\n @action\n @waitFor\n async __REQUEST_FUNCTION__(\n _positional: ExpandArgs<Args>['Positional'],\n _named: ExpandArgs<Args>['Named']\n ) {\n /**\n * Args are already consumed, but let's delay doing anything\n * until we can get out of a tracking frame.\n */\n await Promise.resolve();\n\n if (isDestroyed(this) || isDestroying(this)) return;\n\n this.error = undefined;\n this.isLoading = true;\n\n try {\n await this.retry();\n } catch (e) {\n if (isDestroyed(this) || isDestroying(this)) return;\n\n if (e instanceof Error) {\n this.error = e;\n } else {\n // How likely is this to happen?\n throw e;\n }\n }\n\n if (isDestroyed(this) || isDestroying(this)) {\n return;\n }\n\n this.isLoading = false;\n this.hasRan = true;\n }\n}\n"],"names":["_initializerDefineProperty","target","property","descriptor","context","Object","defineProperty","enumerable","configurable","writable","value","initializer","call","_applyDecoratedDescriptor","decorators","desc","keys","forEach","key","slice","reverse","reduce","decorator","undefined","Request","_class","Resource","constructor","args","_descriptor","_descriptor2","_descriptor3","_descriptor4","modify","positional","named","__REQUEST_FUNCTION__","__WRAPPED_FUNCTION__","_positional","_named","Error","isSuccess","error","isError","Boolean","records","assert","name","record","retry","waitForPromise","Promise","resolve","isDestroyed","isDestroying","isLoading","e","hasRan","prototype","service","tracked","action","getOwnPropertyDescriptor","waitFor"],"mappings":";;;;;;;;AAAe,SAASA,0BAA0BA,CAACC,MAAM,EAAEC,QAAQ,EAAEC,UAAU,EAAEC,OAAO,EAAE;EACxF,IAAI,CAACD,UAAU,EAAE,OAAA;AACjBE,EAAAA,MAAM,CAACC,cAAc,CAACL,MAAM,EAAEC,QAAQ,EAAE;IACtCK,UAAU,EAAEJ,UAAU,CAACI,UAAU;IACjCC,YAAY,EAAEL,UAAU,CAACK,YAAY;IACrCC,QAAQ,EAAEN,UAAU,CAACM,QAAQ;AAC7BC,IAAAA,KAAK,EAAEP,UAAU,CAACQ,WAAW,GAAGR,UAAU,CAACQ,WAAW,CAACC,IAAI,CAACR,OAAO,CAAC,GAAG,KAAK,CAAA;AAC9E,GAAC,CAAC,CAAA;AACJ;;ACRe,SAASS,yBAAyBA,CAACZ,MAAM,EAAEC,QAAQ,EAAEY,UAAU,EAAEX,UAAU,EAAEC,OAAO,EAAE;EACnG,IAAIW,IAAI,GAAG,EAAE,CAAA;EACbV,MAAM,CAACW,IAAI,CAACb,UAAU,CAAC,CAACc,OAAO,CAAC,UAAUC,GAAG,EAAE;AAC7CH,IAAAA,IAAI,CAACG,GAAG,CAAC,GAAGf,UAAU,CAACe,GAAG,CAAC,CAAA;AAC7B,GAAC,CAAC,CAAA;AACFH,EAAAA,IAAI,CAACR,UAAU,GAAG,CAAC,CAACQ,IAAI,CAACR,UAAU,CAAA;AACnCQ,EAAAA,IAAI,CAACP,YAAY,GAAG,CAAC,CAACO,IAAI,CAACP,YAAY,CAAA;AACvC,EAAA,IAAI,OAAO,IAAIO,IAAI,IAAIA,IAAI,CAACJ,WAAW,EAAE;IACvCI,IAAI,CAACN,QAAQ,GAAG,IAAI,CAAA;AACtB,GAAA;AACAM,EAAAA,IAAI,GAAGD,UAAU,CAACK,KAAK,EAAE,CAACC,OAAO,EAAE,CAACC,MAAM,CAAC,UAAUN,IAAI,EAAEO,SAAS,EAAE;IACpE,OAAOA,SAAS,CAACrB,MAAM,EAAEC,QAAQ,EAAEa,IAAI,CAAC,IAAIA,IAAI,CAAA;GACjD,EAAEA,IAAI,CAAC,CAAA;EACR,IAAIX,OAAO,IAAIW,IAAI,CAACJ,WAAW,KAAK,KAAK,CAAC,EAAE;AAC1CI,IAAAA,IAAI,CAACL,KAAK,GAAGK,IAAI,CAACJ,WAAW,GAAGI,IAAI,CAACJ,WAAW,CAACC,IAAI,CAACR,OAAO,CAAC,GAAG,KAAK,CAAC,CAAA;IACvEW,IAAI,CAACJ,WAAW,GAAGY,SAAS,CAAA;AAC9B,GAAA;AACA,EAAA,IAAIR,IAAI,CAACJ,WAAW,KAAK,KAAK,CAAC,EAAE;IAC/BN,MAAM,CAACC,cAAc,CAACL,MAAM,EAAEC,QAAQ,EAAEa,IAAI,CAAC,CAAA;AAC7CA,IAAAA,IAAI,GAAG,IAAI,CAAA;AACb,GAAA;AACA,EAAA,OAAOA,IAAI,CAAA;AACb;;;ACRaS,IAAAA,OAAO,IAAAC,MAAA,GAAb,MAAMD,OAAO,SAAeE,QAAQ,CAAO;AAAAC,EAAAA,WAAAA,CAAA,GAAAC,IAAA,EAAA;AAAA,IAAA,KAAA,CAAA,GAAAA,IAAA,CAAA,CAAA;AAAA5B,IAAAA,0BAAA,gBAAA6B,WAAA,EAAA,IAAA,CAAA,CAAA;AAAA7B,IAAAA,0BAAA,gBAAA8B,YAAA,EAAA,IAAA,CAAA,CAAA;AAAA9B,IAAAA,0BAAA,oBAAA+B,YAAA,EAAA,IAAA,CAAA,CAAA;AAAA/B,IAAAA,0BAAA,iBAAAgC,YAAA,EAAA,IAAA,CAAA,CAAA;AAAA,GAAA;AAOhD;AACF;AACA;;AAIEC,EAAAA,MAAMA,CAACC,UAA0C,EAAEC,KAAgC,EAAE;IACnF,IAAI,CAACD,UAAU,GAAGA,UAAU,CAAA;IAC5B,IAAI,CAACC,KAAK,GAAGA,KAAK,CAAA;;AAElB;AACJ;AACA;AACA;AACA;AACA;AACI,IAAA,IAAI,CAACC,oBAAoB,CAAC,CAAC,GAAIF,UAAwB,CAAC,EAAoC;MAC1F,GAAGC,KAAAA;AACL,KAAC,CAAC,CAAA;AACJ,GAAA;AAEA,EAAA,MAAME,oBAAoBA,CACxBC,WAA2C,EAC3CC,MAAiC,EACjC;AACA,IAAA,MAAM,IAAIC,KAAK,CAAC,iBAAiB,CAAC,CAAA;AACpC,GAAA;EAEA,IAAIC,SAASA,GAAG;IACd,OAAO,CAAC,IAAI,CAACC,KAAK,CAAA;AACpB,GAAA;EAEA,IAAIC,OAAOA,GAAG;AACZ,IAAA,OAAOC,OAAO,CAAC,IAAI,CAACF,KAAK,CAAC,CAAA;AAC5B,GAAA;EAEA,IAAIG,OAAOA,GAAwB;IACjC,OAAOC,MAAM,CACV,CAAA,iBAAA,EAAmB,IAAI,CAACnB,WAAW,CAACoB,IAAK,CAAA,mCAAA,CAAoC,GAC3E,CAAA,yCAAA,CACL,CAAC,CAAA;AACH,GAAA;EAEA,IAAIC,MAAMA,GAAwB;IAChC,OAAOF,MAAM,CACV,CAAA,iBAAA,EAAmB,IAAI,CAACnB,WAAW,CAACoB,IAAK,CAAA,kCAAA,CAAmC,GAC1E,CAAA,0CAAA,CACL,CAAC,CAAA;AACH,GAAA;EAEA,MACME,KAAKA,GAAG;AACZ,IAAA,OAAOC,cAAc,CAAC,IAAI,CAACb,oBAAoB,CAAC,IAAI,CAACH,UAAU,EAAE,IAAI,CAACC,KAAK,CAAC,CAAC,CAAA;AAC/E,GAAA;AAEA,EAAA,MAEMC,oBAAoBA,CACxBE,WAA2C,EAC3CC,MAAiC,EACjC;AACA;AACJ;AACA;AACA;AACI,IAAA,MAAMY,OAAO,CAACC,OAAO,EAAE,CAAA;IAEvB,IAAIC,WAAW,CAAC,IAAI,CAAC,IAAIC,YAAY,CAAC,IAAI,CAAC,EAAE,OAAA;IAE7C,IAAI,CAACZ,KAAK,GAAGnB,SAAS,CAAA;IACtB,IAAI,CAACgC,SAAS,GAAG,IAAI,CAAA;IAErB,IAAI;AACF,MAAA,MAAM,IAAI,CAACN,KAAK,EAAE,CAAA;KACnB,CAAC,OAAOO,CAAC,EAAE;MACV,IAAIH,WAAW,CAAC,IAAI,CAAC,IAAIC,YAAY,CAAC,IAAI,CAAC,EAAE,OAAA;MAE7C,IAAIE,CAAC,YAAYhB,KAAK,EAAE;QACtB,IAAI,CAACE,KAAK,GAAGc,CAAC,CAAA;AAChB,OAAC,MAAM;AACL;AACA,QAAA,MAAMA,CAAC,CAAA;AACT,OAAA;AACF,KAAA;IAEA,IAAIH,WAAW,CAAC,IAAI,CAAC,IAAIC,YAAY,CAAC,IAAI,CAAC,EAAE;AAC3C,MAAA,OAAA;AACF,KAAA;IAEA,IAAI,CAACC,SAAS,GAAG,KAAK,CAAA;IACtB,IAAI,CAACE,MAAM,GAAG,IAAI,CAAA;AACpB,GAAA;AACF,CAAC,GAAA5B,WAAA,GAAAhB,yBAAA,CAAAY,MAAA,CAAAiC,SAAA,EAAA,OAAA,EAAA,CAlGEC,MAAO,CAAA,EAAA;EAAAnD,YAAA,EAAA,IAAA;EAAAD,UAAA,EAAA,IAAA;EAAAE,QAAA,EAAA,IAAA;EAAAE,WAAA,EAAA,IAAA;AAAA,CAAAmB,CAAAA,EAAAA,YAAA,GAAAjB,yBAAA,CAAAY,MAAA,CAAAiC,SAAA,YAEPE,OAAO,CAAA,EAAA;EAAApD,YAAA,EAAA,IAAA;EAAAD,UAAA,EAAA,IAAA;EAAAE,QAAA,EAAA,IAAA;EAAAE,WAAA,EAAA,IAAA;AAAA,CAAAoB,CAAAA,EAAAA,YAAA,GAAAlB,yBAAA,CAAAY,MAAA,CAAAiC,SAAA,gBACPE,OAAO,CAAA,EAAA;EAAApD,YAAA,EAAA,IAAA;EAAAD,UAAA,EAAA,IAAA;EAAAE,QAAA,EAAA,IAAA;AAAAE,EAAAA,WAAA,cAAA;AAAA,IAAA,OAAa,KAAK,CAAA;AAAA,GAAA;AAAA,CAAAqB,CAAAA,EAAAA,YAAA,GAAAnB,yBAAA,CAAAY,MAAA,CAAAiC,SAAA,aACzBE,OAAO,CAAA,EAAA;EAAApD,YAAA,EAAA,IAAA;EAAAD,UAAA,EAAA,IAAA;EAAAE,QAAA,EAAA,IAAA;AAAAE,EAAAA,WAAA,cAAA;AAAA,IAAA,OAAU,KAAK,CAAA;AAAA,GAAA;AAAA,CAAA,CAAA,EAAAE,yBAAA,CAAAY,MAAA,CAAAiC,SAAA,EAAA,OAAA,EAAA,CAoDtBG,MAAM,CAAAxD,EAAAA,MAAA,CAAAyD,wBAAA,CAAArC,MAAA,CAAAiC,SAAA,YAAAjC,MAAA,CAAAiC,SAAA,CAAA7C,EAAAA,yBAAA,CAAAY,MAAA,CAAAiC,SAAA,EAAA,sBAAA,EAAA,CAKNG,MAAM,EACNE,OAAO,GAAA1D,MAAA,CAAAyD,wBAAA,CAAArC,MAAA,CAAAiC,SAAA,EAAA,sBAAA,CAAA,EAAAjC,MAAA,CAAAiC,SAAA,IAAAjC,MAAA;;;;","x_google_ignoreList":[0,1]}
@@ -1,4 +1,4 @@
1
- import { Request } from "../../request-17f93aea.js";
1
+ import { Request } from "../../request-rVKgKutp.js";
2
2
  import ArrayProxy from '@ember/array/proxy';
3
3
  import Store from '@ember-data/store';
4
4
  type FindAllOptions = Parameters<Store['findAll']>[1];
@@ -1,4 +1,4 @@
1
- import { Request } from "../../request-17f93aea.js";
1
+ import { Request } from "../../request-rVKgKutp.js";
2
2
  import { Id } from "./types.js";
3
3
  import Store from '@ember-data/store';
4
4
  type FindRecordOptions = Parameters<Store['findRecord']>[2];
@@ -1,4 +1,4 @@
1
- import { Request } from "../../request-17f93aea.js";
1
+ import { Request } from "../../request-rVKgKutp.js";
2
2
  import Store from '@ember-data/store';
3
3
  type QueryParams = Parameters<Store['queryRecord']>;
4
4
  type QueryRecordQuery = QueryParams[1];
@@ -1,4 +1,4 @@
1
- import { Request } from "../../request-17f93aea.js";
1
+ import { Request } from "../../request-rVKgKutp.js";
2
2
  import ArrayProxy from '@ember/array/proxy';
3
3
  import Store from '@ember-data/store';
4
4
  type QueryParams = Parameters<Store['query']>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ember-data-resources",
3
- "version": "5.0.0",
3
+ "version": "5.1.0",
4
4
  "description": "Resource helpers for reactively (re)fetching data with ember-data",
5
5
  "keywords": [
6
6
  "ember-addon"
@@ -15,25 +15,27 @@
15
15
  ],
16
16
  "dependencies": {
17
17
  "@ember/string": "^3.1.1",
18
- "@ember/test-waiters": "^3.0.2",
19
- "@embroider/addon-shim": "^1.0.0"
18
+ "@ember/test-waiters": "^3.1.0",
19
+ "@embroider/addon-shim": "^1.0.0",
20
+ "ember-modify-based-class-resource": "^1.1.0"
20
21
  },
21
22
  "devDependencies": {
22
- "@arethetypeswrong/cli": "^0.2.0",
23
- "@babel/core": "^7.22.5",
23
+ "@arethetypeswrong/cli": "^0.13.5",
24
+ "@babel/core": "^7.23.7",
24
25
  "@babel/plugin-proposal-class-properties": "^7.18.6",
25
26
  "@babel/plugin-proposal-decorators": "^7.22.5",
26
27
  "@babel/preset-typescript": "^7.22.5",
27
28
  "@babel/runtime": "^7.22.5",
28
29
  "@ember-data/store": "^5.0.0",
30
+ "@ember-data/tracking": "^5.3.0",
29
31
  "@embroider/addon-dev": "^3.1.1",
30
32
  "@glimmer/component": "^1.1.2",
31
33
  "@glimmer/tracking": "^1.1.2",
32
- "@glint/core": "^1.0.2",
34
+ "@glint/core": "^1.3.0",
33
35
  "@glint/environment-ember-loose": "^1.0.2",
34
36
  "@glint/template": "^1.0.2",
35
37
  "@nullvoxpopuli/eslint-configs": "^3.1.3",
36
- "@tsconfig/ember": "^2.0.0",
38
+ "@tsconfig/ember": "^3.0.3",
37
39
  "@types/ember": "^4.0.0",
38
40
  "@types/ember-data__store": "^4.0.3",
39
41
  "@types/ember__application": "^4.0.0",
@@ -53,26 +55,27 @@
53
55
  "@types/ember__template": "^4.0.0",
54
56
  "@types/ember__test": "^4.0.0",
55
57
  "@types/ember__utils": "^4.0.0",
56
- "@typescript-eslint/eslint-plugin": "^5.60.0",
57
- "@typescript-eslint/parser": "^5.60.0",
58
+ "@typescript-eslint/eslint-plugin": "^6.19.0",
59
+ "@typescript-eslint/parser": "^6.19.0",
58
60
  "concurrently": "^8.2.0",
59
- "ember-source": "~4.10.0",
60
- "ember-resources": "^5.3.0",
61
+ "ember-resources": "^6.0.0",
62
+ "ember-source": "~5.4.0",
61
63
  "ember-template-lint": "^5.10.3",
62
64
  "eslint": "^8.43.0",
63
- "eslint-config-prettier": "^8.8.0",
64
- "eslint-plugin-ember": "^11.8.0",
65
+ "eslint-config-prettier": "^9.1.0",
66
+ "eslint-plugin-ember": "^12.0.0",
65
67
  "eslint-plugin-n": "^16.0.0",
66
- "eslint-plugin-prettier": "^4.0.0",
67
- "execa": "^7.1.1",
68
- "prettier": "^2.8.8",
69
- "prettier-plugin-ember-template-tag": "^0.3.2",
70
- "publint": "^0.1.12",
71
- "rollup": "~3.21.0",
72
- "rollup-plugin-copy": "^3.4.0",
68
+ "eslint-plugin-prettier": "^5.1.3",
69
+ "eslint-plugin-qunit": "^8.0.1",
70
+ "execa": "^8.0.1",
71
+ "prettier": "^3.2.4",
72
+ "prettier-plugin-ember-template-tag": "^2.0.0",
73
+ "publint": "^0.2.7",
74
+ "rollup": "~4.9.5",
75
+ "rollup-plugin-copy": "^3.5.0",
73
76
  "rollup-plugin-delete": "^2.0.0",
74
- "rollup-plugin-ts": "^3.2.0",
75
- "typescript": "^4.9.4"
77
+ "rollup-plugin-ts": "^3.4.5",
78
+ "typescript": "^5.3.3"
76
79
  },
77
80
  "publishConfig": {
78
81
  "registry": "https://registry.npmjs.org"
@@ -116,8 +119,8 @@
116
119
  "@ember-data/store": "^3.25 || >= 4.0.0",
117
120
  "@glimmer/tracking": "^1.1.2",
118
121
  "ember-data": "^3.25.0 || >=4.0.0",
119
- "ember-source": "^3.25.0 || >=4.0.0",
120
- "ember-resources": "^5.3.0 || >= 6.0.0"
122
+ "ember-resources": "^5.3.0 || >= 6.0.0",
123
+ "ember-source": "^3.25.0 || >=4.0.0"
121
124
  },
122
125
  "scripts": {
123
126
  "build": "concurrently 'npm:build:*'",