@warp-drive/ember 0.0.0-alpha.5 → 0.0.0-alpha.51

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../../node_modules/.pnpm/decorator-transforms@1.1.0_@babel+core@7.24.3/node_modules/decorator-transforms/dist/chunk-CSAU5B4Q.js","../../../node_modules/.pnpm/decorator-transforms@1.1.0_@babel+core@7.24.3/node_modules/decorator-transforms/dist/chunk-3SQBS3Y5.js","../src/-private/request-state.ts","../src/-private/promise-state.ts","../src/-private/await.gts","../src/-private/request.gts"],"sourcesContent":["var __defProp = Object.defineProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\n\nexport {\n __export\n};\n//# sourceMappingURL=chunk-CSAU5B4Q.js.map","import {\n __export\n} from \"./chunk-CSAU5B4Q.js\";\n\n// src/runtime.ts\nvar runtime_exports = {};\n__export(runtime_exports, {\n c: () => decorateClass,\n f: () => decorateFieldV1,\n g: () => decorateFieldV2,\n i: () => initializeDeferredDecorator,\n m: () => decorateMethodV1,\n n: () => decorateMethodV2,\n p: () => decoratePOJO\n});\nvar deferred = /* @__PURE__ */ new WeakMap();\nfunction deferDecorator(proto, prop, desc) {\n let map = deferred.get(proto);\n if (!map) {\n map = /* @__PURE__ */ new Map();\n deferred.set(proto, map);\n }\n map.set(prop, desc);\n}\nfunction findDeferredDecorator(target, prop) {\n let cursor = target.prototype;\n while (cursor) {\n let desc = deferred.get(cursor)?.get(prop);\n if (desc) {\n return desc;\n }\n cursor = cursor.prototype;\n }\n}\nfunction decorateFieldV1(target, prop, decorators, initializer) {\n return decorateFieldV2(target.prototype, prop, decorators, initializer);\n}\nfunction decorateFieldV2(prototype, prop, decorators, initializer) {\n let desc = {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: null\n };\n if (initializer) {\n desc.initializer = initializer;\n }\n for (let decorator of decorators) {\n desc = decorator(prototype, prop, desc) || desc;\n }\n if (desc.initializer === void 0) {\n Object.defineProperty(prototype, prop, desc);\n } else {\n deferDecorator(prototype, prop, desc);\n }\n}\nfunction decorateMethodV1({ prototype }, prop, decorators) {\n return decorateMethodV2(prototype, prop, decorators);\n}\nfunction decorateMethodV2(prototype, prop, decorators) {\n const origDesc = Object.getOwnPropertyDescriptor(prototype, prop);\n let desc = { ...origDesc };\n for (let decorator of decorators) {\n desc = decorator(prototype, prop, desc) || desc;\n }\n if (desc.initializer !== void 0) {\n desc.value = desc.initializer ? desc.initializer.call(prototype) : void 0;\n desc.initializer = void 0;\n }\n Object.defineProperty(prototype, prop, desc);\n}\nfunction initializeDeferredDecorator(target, prop) {\n let desc = findDeferredDecorator(target.constructor, prop);\n if (desc) {\n Object.defineProperty(target, prop, {\n enumerable: desc.enumerable,\n configurable: desc.configurable,\n writable: desc.writable,\n value: desc.initializer ? desc.initializer.call(target) : void 0\n });\n }\n}\nfunction decorateClass(target, decorators) {\n return decorators.reduce(\n (accum, decorator) => decorator(accum) || accum,\n target\n );\n}\nfunction decoratePOJO(pojo, decorated) {\n for (let [type, prop, decorators] of decorated) {\n if (type === \"field\") {\n decoratePojoField(pojo, prop, decorators);\n } else {\n decorateMethodV2(pojo, prop, decorators);\n }\n }\n return pojo;\n}\nfunction decoratePojoField(pojo, prop, decorators) {\n let desc = {\n configurable: true,\n enumerable: true,\n writable: true,\n initializer: () => Object.getOwnPropertyDescriptor(pojo, prop)?.value\n };\n for (let decorator of decorators) {\n desc = decorator(pojo, prop, desc) || desc;\n }\n if (desc.initializer) {\n desc.value = desc.initializer.call(pojo);\n delete desc.initializer;\n }\n Object.defineProperty(pojo, prop, desc);\n}\n\nexport {\n decorateFieldV1,\n decorateFieldV2,\n decorateMethodV1,\n decorateMethodV2,\n initializeDeferredDecorator,\n decorateClass,\n decoratePOJO,\n runtime_exports\n};\n//# sourceMappingURL=chunk-3SQBS3Y5.js.map","import { tracked } from '@glimmer/tracking';\n\nimport type {\n Future,\n ImmutableRequestInfo,\n ResponseInfo,\n StructuredDocument,\n StructuredErrorDocument,\n} from '@ember-data/request';\nimport { getPromiseResult, setPromiseResult } from '@ember-data/request';\n\nconst RequestCache = new WeakMap<Future<unknown>, RequestState>();\n\nfunction isAbortError(error: unknown): boolean {\n return error instanceof DOMException && error.name === 'AbortError';\n}\n\nasync function watchStream(stream: ReadableStream<Uint8Array>, state: RequestLoadingState): Promise<void> {\n const reader = stream.getReader();\n let bytesLoaded = 0;\n let shouldForward = state._stream !== null && state._stream.readable.locked;\n let isForwarding = shouldForward;\n let writer = state._stream?.writable.getWriter();\n const buffer = [];\n\n state._isPending = false;\n state._isStarted = true;\n state._startTime = performance.now();\n\n // eslint-disable-next-line no-constant-condition\n while (true) {\n const { value, done } = await reader.read();\n if (done) {\n break;\n }\n bytesLoaded += value.byteLength;\n state._bytesLoaded = bytesLoaded;\n state._lastPacketTime = performance.now();\n\n shouldForward = shouldForward || (state._stream !== null && state._stream.readable.locked);\n\n if (shouldForward) {\n if (!isForwarding) {\n isForwarding = true;\n writer = state._stream!.writable.getWriter();\n for (const item of buffer) {\n await writer.ready;\n await writer.write(item);\n }\n buffer.length = 0;\n }\n await writer!.ready;\n await writer!.write(value);\n } else {\n buffer.push(value);\n }\n }\n\n // if we are still forwarding, we need to close the writer\n if (isForwarding) {\n await writer!.ready;\n await writer!.close();\n } else if (state._stream) {\n // if we are not forwarding, we need to cancel the stream\n await state._stream.readable.cancel('The Stream Has Already Ended');\n state._stream = null;\n }\n\n const endTime = performance.now();\n state._endTime = endTime;\n state._isComplete = true;\n state._isStarted = false;\n}\n\nexport class RequestLoadingState {\n _stream: TransformStream | null = null;\n _future: Future<unknown>;\n _triggered = false;\n _trigger() {\n if (this._triggered) {\n return;\n }\n this._triggered = true;\n const future = this._future;\n const promise: Promise<ReadableStream<Uint8Array> | null> & { sizeHint?: number } = future.getStream();\n if (promise.sizeHint) {\n this._sizeHint = promise.sizeHint;\n }\n this.promise = promise.then(\n (stream) => {\n if (!stream) {\n this._isPending = false;\n this._isComplete = true;\n return;\n }\n return watchStream(stream, this);\n },\n (error: Error) => {\n this._isPending = false;\n this._isStarted = false;\n if (isAbortError(error)) {\n this._isCancelled = true;\n this._isComplete = true;\n }\n this._isErrored = true;\n this._error = error;\n }\n );\n }\n\n promise: Promise<void> | null = null;\n @tracked _sizeHint = 0;\n @tracked _bytesLoaded = 0;\n\n @tracked _startTime = 0;\n @tracked _endTime = 0;\n @tracked _lastPacketTime = 0;\n\n @tracked _isPending = true;\n @tracked _isStarted = false;\n @tracked _isComplete = false;\n @tracked _isCancelled = false;\n @tracked _isErrored = false;\n @tracked _error: Error | null = null;\n\n get isPending(): boolean {\n this._trigger();\n return this._isPending;\n }\n\n get sizeHint(): number {\n this._trigger();\n return this._sizeHint;\n }\n\n get stream(): ReadableStream | null {\n this._trigger();\n if (!this._stream) {\n if (this._isComplete || this._isCancelled || this._isErrored) {\n return null;\n }\n this._stream = new TransformStream();\n }\n return this._stream.readable;\n }\n\n get isStarted(): boolean {\n this._trigger();\n return this._isStarted;\n }\n\n get bytesLoaded(): number {\n this._trigger();\n return this._bytesLoaded;\n }\n\n get startTime(): number {\n this._trigger();\n return this._startTime;\n }\n\n get endTime(): number {\n this._trigger();\n return this._endTime;\n }\n\n get lastPacketTime(): number {\n this._trigger();\n return this._lastPacketTime;\n }\n\n get isComplete(): boolean {\n this._trigger();\n return this._isComplete;\n }\n\n get isCancelled(): boolean {\n this._trigger();\n return this._isCancelled;\n }\n\n get isErrored(): boolean {\n this._trigger();\n return this._isErrored;\n }\n\n get error(): Error | null {\n this._trigger();\n return this._error;\n }\n\n get elapsedTime(): number {\n return (this.endTime || this.lastPacketTime) - this.startTime;\n }\n\n get completeRatio(): number {\n return this.sizeHint ? this.bytesLoaded / this.sizeHint : 0;\n }\n\n get remainingRatio(): number {\n return 1 - this.completeRatio;\n }\n\n get duration(): number {\n return this.endTime - this.startTime;\n }\n\n get speed(): number {\n // bytes per second\n return this.bytesLoaded / (this.elapsedTime / 1000);\n }\n\n constructor(future: Future<unknown>) {\n this._future = future;\n }\n\n abort(): void {\n this._future.abort();\n }\n}\n\nexport class RequestState<T = unknown> {\n #request: Future<T>;\n #loadingState: RequestLoadingState | null = null;\n\n @tracked result: T | null = null;\n @tracked error: StructuredErrorDocument | null = null;\n @tracked isLoading = true;\n @tracked isSuccess = false;\n @tracked isError = false;\n @tracked request: ImmutableRequestInfo | null = null;\n @tracked response: Response | ResponseInfo | null = null;\n\n get isCancelled(): boolean {\n return this.isError && isAbortError(this.error);\n }\n\n get loadingState() {\n if (!this.#loadingState) {\n this.#loadingState = new RequestLoadingState(this.#request);\n }\n\n return this.#loadingState;\n }\n\n constructor(future: Future<T>) {\n this.#request = future;\n const state = getPromiseResult<StructuredDocument<T>, StructuredErrorDocument>(future);\n\n if (state) {\n this.request = state.result.request;\n this.response = state.result.response;\n this.isLoading = false;\n\n if (state.isError) {\n this.error = state.result;\n this.isError = true;\n } else {\n this.result = state.result.content!;\n this.isSuccess = true;\n }\n } else {\n void future.then(\n (result) => {\n setPromiseResult(future, { isError: false, result });\n this.result = result.content;\n this.isSuccess = true;\n this.isLoading = false;\n this.request = result.request;\n this.response = result.response;\n },\n (error: StructuredErrorDocument) => {\n setPromiseResult(future, { isError: true, result: error });\n this.error = error;\n this.isError = true;\n this.isLoading = false;\n this.request = error.request;\n this.response = error.response;\n }\n );\n }\n }\n}\n\nexport function getRequestState<T>(future: Future<T>): RequestState<T> {\n let state = RequestCache.get(future) as RequestState<T> | undefined;\n\n if (!state) {\n state = new RequestState(future);\n RequestCache.set(future, state);\n }\n\n return state;\n}\n","import { tracked } from '@glimmer/tracking';\n\nimport type { Awaitable } from '@ember-data/request';\nimport { getPromiseResult, setPromiseResult } from '@ember-data/request';\n\nconst PromiseCache = new WeakMap<Awaitable, PromiseState>();\n\nexport class PromiseState<T = unknown, E = unknown> {\n @tracked result: T | null = null;\n @tracked error: E | null = null;\n @tracked isPending = true;\n @tracked isSuccess = false;\n @tracked isError = false;\n\n constructor(promise: Promise<T> | Awaitable<T, E>) {\n const state = getPromiseResult<T, E>(promise);\n\n if (state) {\n if (state.isError) {\n this.error = state.result;\n this.isError = true;\n this.isPending = false;\n } else {\n this.result = state.result;\n this.isSuccess = true;\n this.isPending = false;\n }\n } else {\n void promise.then(\n (result) => {\n setPromiseResult(promise, { isError: false, result });\n this.result = result;\n this.isSuccess = true;\n this.isPending = false;\n },\n (error: E) => {\n setPromiseResult(promise, { isError: true, result: error });\n this.error = error;\n this.isError = true;\n this.isPending = false;\n }\n );\n }\n }\n}\n\nexport function getPromiseState<T = unknown, E = unknown>(promise: Promise<T> | Awaitable<T, E>): PromiseState<T, E> {\n let state = PromiseCache.get(promise) as PromiseState<T, E> | undefined;\n\n if (!state) {\n state = new PromiseState(promise);\n PromiseCache.set(promise, state);\n }\n\n return state;\n}\n","import { template } from \"@ember/template-compiler\";\nimport { assert } from '@ember/debug';\nimport Component from '@glimmer/component';\nimport { getPromiseState } from './promise-state.ts';\nimport { Awaitable } from '@ember-data/request';\nexport function notNull<T>(x1: null): never;\nexport function notNull<T>(x1: T): Exclude<T, null>;\nexport function notNull<T>(x1: T | null) {\n assert('Expected a non-null value, but got null', x1 !== null);\n return x1;\n}\nexport const and = (x1: unknown, y1: unknown)=>Boolean(x1 && y1);\ninterface ThrowSignature<E = Error | string | object> {\n Args: {\n error: E;\n };\n}\nexport class Throw<T> extends Component<ThrowSignature<T>> {\n constructor(owner1: unknown, args1: ThrowSignature<T>['Args']){\n super(owner1, args1);\n throw this.args.error;\n }\n static{\n template(``, {\n component: this,\n eval () {\n return eval(arguments[0]);\n }\n });\n }\n}\ninterface AwaitSignature<T, E = Error | string | object> {\n Args: {\n promise: Promise<T> | Awaitable<T, E>;\n };\n Blocks: {\n pending: [];\n error: [error: E];\n success: [value: T];\n };\n}\nexport class Await<T, E> extends Component<AwaitSignature<T, E>> {\n get state() {\n return getPromiseState<T, E>(this.args.promise);\n }\n static{\n template(`\n {{#if this.state.isPending}}\n {{yield to=\"pending\"}}\n {{else if (and this.state.isError (has-block \"error\"))}}\n {{yield (notNull this.state.error) to=\"error\"}}\n {{else if this.state.isSuccess}}\n {{yield (notNull this.state.result) to=\"success\"}}\n {{else}}\n <Throw @error={{(notNull this.state.error)}} />\n {{/if}}\n `, {\n component: this,\n eval () {\n return eval(arguments[0]);\n }\n });\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RhdGEvZGF0YS9wYWNrYWdlcy9lbWJlci9zcmMvLXByaXZhdGUvYXdhaXQuZ3RzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFzc2VydCB9IGZyb20gJ0BlbWJlci9kZWJ1Zyc7XG5pbXBvcnQgQ29tcG9uZW50IGZyb20gJ0BnbGltbWVyL2NvbXBvbmVudCc7XG5pbXBvcnQgeyBnZXRQcm9taXNlU3RhdGUgfSBmcm9tICcuL3Byb21pc2Utc3RhdGUudHMnO1xuaW1wb3J0IHsgQXdhaXRhYmxlIH0gZnJvbSAnQGVtYmVyLWRhdGEvcmVxdWVzdCc7XG5cbmV4cG9ydCBmdW5jdGlvbiBub3ROdWxsPFQ-KHg6IG51bGwpOiBuZXZlcjtcbmV4cG9ydCBmdW5jdGlvbiBub3ROdWxsPFQ-KHg6IFQpOiBFeGNsdWRlPFQsIG51bGw-O1xuZXhwb3J0IGZ1bmN0aW9uIG5vdE51bGw8VD4oeDogVCB8IG51bGwpIHtcbiAgYXNzZXJ0KCdFeHBlY3RlZCBhIG5vbi1udWxsIHZhbHVlLCBidXQgZ290IG51bGwnLCB4ICE9PSBudWxsKTtcbiAgcmV0dXJuIHg7XG59XG5leHBvcnQgY29uc3QgYW5kID0gKHg6IHVua25vd24sIHk6IHVua25vd24pID0-IEJvb2xlYW4oeCAmJiB5KTtcblxuaW50ZXJmYWNlIFRocm93U2lnbmF0dXJlPEUgPSBFcnJvciB8IHN0cmluZyB8IG9iamVjdD4ge1xuICBBcmdzOiB7XG4gICAgZXJyb3I6IEU7XG4gIH07XG59XG5cbmV4cG9ydCBjbGFzcyBUaHJvdzxUPiBleHRlbmRzIENvbXBvbmVudDxUaHJvd1NpZ25hdHVyZTxUPj4ge1xuICBjb25zdHJ1Y3Rvcihvd25lcjogdW5rbm93biwgYXJnczogVGhyb3dTaWduYXR1cmU8VD5bJ0FyZ3MnXSkge1xuICAgIHN1cGVyKG93bmVyLCBhcmdzKTtcbiAgICB0aHJvdyB0aGlzLmFyZ3MuZXJyb3I7XG4gIH1cbiAgPHRlbXBsYXRlPjwvdGVtcGxhdGU-XG59XG5cbmludGVyZmFjZSBBd2FpdFNpZ25hdHVyZTxULCBFID0gRXJyb3IgfCBzdHJpbmcgfCBvYmplY3Q-IHtcbiAgQXJnczoge1xuICAgIHByb21pc2U6IFByb21pc2U8VD4gfCBBd2FpdGFibGU8VCwgRT47XG4gIH07XG4gIEJsb2Nrczoge1xuICAgIHBlbmRpbmc6IFtdO1xuICAgIGVycm9yOiBbZXJyb3I6IEVdO1xuICAgIHN1Y2Nlc3M6IFt2YWx1ZTogVF07XG4gIH07XG59XG5cbmV4cG9ydCBjbGFzcyBBd2FpdDxULCBFPiBleHRlbmRzIENvbXBvbmVudDxBd2FpdFNpZ25hdHVyZTxULCBFPj4ge1xuICBnZXQgc3RhdGUoKSB7XG4gICAgcmV0dXJuIGdldFByb21pc2VTdGF0ZTxULCBFPih0aGlzLmFyZ3MucHJvbWlzZSk7XG4gIH1cblxuICA8dGVtcGxhdGU-XG4gICAge3sjaWYgdGhpcy5zdGF0ZS5pc1BlbmRpbmd9fVxuICAgICAge3t5aWVsZCB0bz1cInBlbmRpbmdcIn19XG4gICAge3tlbHNlIGlmIChhbmQgdGhpcy5zdGF0ZS5pc0Vycm9yIChoYXMtYmxvY2sgXCJlcnJvclwiKSl9fVxuICAgICAge3t5aWVsZCAobm90TnVsbCB0aGlzLnN0YXRlLmVycm9yKSB0bz1cImVycm9yXCJ9fVxuICAgIHt7ZWxzZSBpZiB0aGlzLnN0YXRlLmlzU3VjY2Vzc319XG4gICAgICB7e3lpZWxkIChub3ROdWxsIHRoaXMuc3RhdGUucmVzdWx0KSB0bz1cInN1Y2Nlc3NcIn19XG4gICAge3tlbHNlfX1cbiAgICAgIDxUaHJvdyBAZXJyb3I9e3sobm90TnVsbCB0aGlzLnN0YXRlLmVycm9yKX19IC8-XG4gICAge3svaWZ9fVxuICA8L3RlbXBsYXRlPlxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxTQUFTLE1BQU0sUUFBUSxlQUFlO0FBQ3RDLE9BQU8sZUFBZSxxQkFBcUI7QUFDM0MsU0FBUyxlQUFlLFFBQVEscUJBQXFCO0FBQ3JELFNBQVMsU0FBUyxRQUFRLHNCQUFzQjtBQUVoRCxPQUFPLFNBQVMsUUFBUSxHQUFHLElBQUcsSUFBSSxHQUFHLEtBQUs7QUFDMUMsT0FBTyxTQUFTLFFBQVEsR0FBRyxJQUFHLENBQUMsR0FBRyxRQUFRLEdBQUcsSUFBSTtBQUNqRCxPQUFPLFNBQVMsUUFBUSxHQUFHLElBQUcsSUFBSSxJQUFJO0lBQ3BDLE9BQU8sMkNBQTJDLE9BQU07SUFDeEQsT0FBTztBQUNUO0FBQ0EsT0FBTyxNQUFNLE1BQU0sQ0FBQyxJQUFHLE9BQU8sRUFBRSxJQUFHLE9BQU8sR0FBSyxRQUFRLE1BQUssSUFBRztVQUVyRCxlQUFlLElBQUksUUFBUSxNQUFNLEdBQUcsTUFBTTtJQUNsRDtRQUNFLE9BQU87OztBQUlYLE9BQU8sTUFBTSxNQUFNLFdBQVcsVUFBVSxlQUFlO0lBQ3JELFlBQVksUUFBTyxPQUFPLEVBQUUsT0FBTSxlQUFlLEdBQUcsT0FBTyxDQUFFO1FBQzNELEtBQUssQ0FBQyxRQUFPO1FBQ2IsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUs7SUFDdkI7SUFDQSxNQUFBO1FBQUEsU0FBVSxDQUFBLENBQUEsRUFBQTtZQUFBLFdBQUEsSUFBVztZQUFYO2dCQUFBLE9BQUEsS0FBQSxTQUFBLENBQUEsRUFBVztZQUFEO1FBQUE7SUFBQSxDQUFWO0FBQ1o7VUFFVSxlQUFlLEdBQUcsSUFBSSxRQUFRLE1BQU0sR0FBRyxNQUFNO0lBQ3JEO1FBQ0UsU0FBUyxRQUFRLEtBQUssVUFBVSxHQUFHOztJQUVyQztRQUNFO1FBQ0EsUUFBUSxPQUFPO1FBQ2YsVUFBVSxPQUFPOzs7QUFJckIsT0FBTyxNQUFNLE1BQU0sR0FBRyxXQUFXLFVBQVUsZUFBZSxHQUFHO0lBQzNELElBQUksUUFBUTtRQUNWLE9BQU8sZ0JBQWdCLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU87SUFDaEQ7SUFFQSxNQUFBO1FBQUEsU0FBVSxDQUFBOzs7Ozs7Ozs7O0VBVVYsQ0FBQSxFQUFBO1lBQUEsV0FBQSxJQUFXO1lBQVg7Z0JBQUEsT0FBQSxLQUFBLFNBQUEsQ0FBQSxFQUFXO1lBQUQ7UUFBQTtJQUFBLENBVkE7QUFXWiJ9","import { template } from \"@ember/template-compiler\";\nimport { assert } from '@ember/debug';\nimport { service } from '@ember/service';\nimport Component from '@glimmer/component';\nimport { cached } from '@glimmer/tracking';\nimport type { Future, StructuredErrorDocument } from '@ember-data/request';\nimport { importSync, macroCondition, moduleExists } from '@embroider/macros';\nimport type { StoreRequestInput } from '@ember-data/store';\nimport type Store from '@ember-data/store';\nimport { getRequestState } from './request-state.ts';\nimport type { RequestLoadingState } from './request-state.ts';\nimport { and, notNull, Throw } from './await.gts';\nlet provide = service;\nif (macroCondition(moduleExists('ember-provide-consume-context'))) {\n const { consume } = importSync('ember-provide-consume-context') as {\n consume: typeof service;\n };\n provide = consume;\n}\ninterface RequestSignature<T> {\n Args: {\n request?: Future<T>;\n query?: StoreRequestInput;\n store?: Store;\n };\n Blocks: {\n loading: [state: RequestLoadingState];\n cancelled: [error: StructuredErrorDocument];\n error: [error: StructuredErrorDocument];\n content: [value: T];\n };\n}\nexport class Request<T> extends Component<RequestSignature<T>> {\n /**\n * @internal\n */ @provide('store')\n _store: Store;\n retry = ()=>{};\n reload = ()=>{};\n refresh = ()=>{};\n @cached\n get request() {\n const { request: request1, query: query1 } = this.args;\n assert(`Cannot use both @request and @query args with the <Request> component`, !request1 || !query1);\n if (request1) {\n return request1;\n }\n assert(`You must provide either @request or an @query arg with the <Request> component`, query1);\n return this.store.request<T>(query1);\n }\n get store(): Store {\n const store1 = this.args.store || this._store;\n assert(moduleExists('ember-provide-consume-context') ? `No store was provided to the <Request> component. Either provide a store via the @store arg or via the context API provided by ember-provide-consume-context.` : `No store was provided to the <Request> component. Either provide a store via the @store arg or by registering a store service.`, store1);\n return store1;\n }\n get reqState() {\n return getRequestState<T>(this.request);\n }\n static{\n template(`\n {{#if this.reqState.isLoading}}\n {{yield this.reqState.loadingState to=\"loading\"}}\n {{else if (and this.reqState.isCancelled (has-block \"cancelled\"))}}\n {{yield (notNull this.reqState.error) to=\"cancelled\"}}\n {{else if (and this.reqState.isError (has-block \"error\"))}}\n {{yield (notNull this.reqState.error) to=\"error\"}}\n {{else if this.reqState.isSuccess}}\n {{yield (notNull this.reqState.result) to=\"content\"}}\n {{else}}\n <Throw @error={{(notNull this.reqState.error)}} />\n {{/if}}\n `, {\n component: this,\n eval () {\n return eval(arguments[0]);\n }\n });\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL2RhdGEvZGF0YS9wYWNrYWdlcy9lbWJlci9zcmMvLXByaXZhdGUvcmVxdWVzdC5ndHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYXNzZXJ0IH0gZnJvbSAnQGVtYmVyL2RlYnVnJztcbmltcG9ydCB7IHNlcnZpY2UgfSBmcm9tICdAZW1iZXIvc2VydmljZSc7XG5pbXBvcnQgQ29tcG9uZW50IGZyb20gJ0BnbGltbWVyL2NvbXBvbmVudCc7XG5pbXBvcnQgeyBjYWNoZWQgfSBmcm9tICdAZ2xpbW1lci90cmFja2luZyc7XG5pbXBvcnQgdHlwZSB7IEZ1dHVyZSwgU3RydWN0dXJlZEVycm9yRG9jdW1lbnQgfSBmcm9tICdAZW1iZXItZGF0YS9yZXF1ZXN0JztcblxuaW1wb3J0IHsgaW1wb3J0U3luYywgbWFjcm9Db25kaXRpb24sIG1vZHVsZUV4aXN0cyB9IGZyb20gJ0BlbWJyb2lkZXIvbWFjcm9zJztcblxuaW1wb3J0IHR5cGUgeyBTdG9yZVJlcXVlc3RJbnB1dCB9IGZyb20gJ0BlbWJlci1kYXRhL3N0b3JlJztcbmltcG9ydCB0eXBlIFN0b3JlIGZyb20gJ0BlbWJlci1kYXRhL3N0b3JlJztcblxuaW1wb3J0IHsgZ2V0UmVxdWVzdFN0YXRlIH0gZnJvbSAnLi9yZXF1ZXN0LXN0YXRlLnRzJztcbmltcG9ydCB0eXBlIHsgUmVxdWVzdExvYWRpbmdTdGF0ZSB9IGZyb20gJy4vcmVxdWVzdC1zdGF0ZS50cyc7XG5pbXBvcnQgeyBhbmQsIG5vdE51bGwsIFRocm93IH0gZnJvbSAnLi9hd2FpdC5ndHMnO1xuXG5sZXQgcHJvdmlkZSA9IHNlcnZpY2U7XG5pZiAobWFjcm9Db25kaXRpb24obW9kdWxlRXhpc3RzKCdlbWJlci1wcm92aWRlLWNvbnN1bWUtY29udGV4dCcpKSkge1xuICBjb25zdCB7IGNvbnN1bWUgfSA9IGltcG9ydFN5bmMoJ2VtYmVyLXByb3ZpZGUtY29uc3VtZS1jb250ZXh0JykgYXMgeyBjb25zdW1lOiB0eXBlb2Ygc2VydmljZSB9O1xuICBwcm92aWRlID0gY29uc3VtZTtcbn1cblxuaW50ZXJmYWNlIFJlcXVlc3RTaWduYXR1cmU8VD4ge1xuICBBcmdzOiB7XG4gICAgcmVxdWVzdD86IEZ1dHVyZTxUPjtcbiAgICBxdWVyeT86IFN0b3JlUmVxdWVzdElucHV0O1xuICAgIHN0b3JlPzogU3RvcmU7XG4gIH07XG4gIEJsb2Nrczoge1xuICAgIGxvYWRpbmc6IFtzdGF0ZTogUmVxdWVzdExvYWRpbmdTdGF0ZV07XG4gICAgY2FuY2VsbGVkOiBbZXJyb3I6IFN0cnVjdHVyZWRFcnJvckRvY3VtZW50XTtcbiAgICBlcnJvcjogW2Vycm9yOiBTdHJ1Y3R1cmVkRXJyb3JEb2N1bWVudF07XG4gICAgY29udGVudDogW3ZhbHVlOiBUXTtcbiAgfTtcbn1cblxuZXhwb3J0IGNsYXNzIFJlcXVlc3Q8VD4gZXh0ZW5kcyBDb21wb25lbnQ8UmVxdWVzdFNpZ25hdHVyZTxUPj4ge1xuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBAcHJvdmlkZSgnc3RvcmUnKSBkZWNsYXJlIF9zdG9yZTogU3RvcmU7XG5cbiAgcmV0cnkgPSAoKSA9PiB7fTtcbiAgcmVsb2FkID0gKCkgPT4ge307XG4gIHJlZnJlc2ggPSAoKSA9PiB7fTtcblxuICBAY2FjaGVkXG4gIGdldCByZXF1ZXN0KCkge1xuICAgIGNvbnN0IHsgcmVxdWVzdCwgcXVlcnkgfSA9IHRoaXMuYXJncztcbiAgICBhc3NlcnQoYENhbm5vdCB1c2UgYm90aCBAcmVxdWVzdCBhbmQgQHF1ZXJ5IGFyZ3Mgd2l0aCB0aGUgPFJlcXVlc3Q-IGNvbXBvbmVudGAsICFyZXF1ZXN0IHx8ICFxdWVyeSk7XG4gICAgaWYgKHJlcXVlc3QpIHtcbiAgICAgIHJldHVybiByZXF1ZXN0O1xuICAgIH1cbiAgICBhc3NlcnQoYFlvdSBtdXN0IHByb3ZpZGUgZWl0aGVyIEByZXF1ZXN0IG9yIGFuIEBxdWVyeSBhcmcgd2l0aCB0aGUgPFJlcXVlc3Q-IGNvbXBvbmVudGAsIHF1ZXJ5KTtcbiAgICByZXR1cm4gdGhpcy5zdG9yZS5yZXF1ZXN0PFQ-KHF1ZXJ5KTtcbiAgfVxuXG4gIGdldCBzdG9yZSgpOiBTdG9yZSB7XG4gICAgY29uc3Qgc3RvcmUgPSB0aGlzLmFyZ3Muc3RvcmUgfHwgdGhpcy5fc3RvcmU7XG4gICAgYXNzZXJ0KFxuICAgICAgbW9kdWxlRXhpc3RzKCdlbWJlci1wcm92aWRlLWNvbnN1bWUtY29udGV4dCcpXG4gICAgICAgID8gYE5vIHN0b3JlIHdhcyBwcm92aWRlZCB0byB0aGUgPFJlcXVlc3Q-IGNvbXBvbmVudC4gRWl0aGVyIHByb3ZpZGUgYSBzdG9yZSB2aWEgdGhlIEBzdG9yZSBhcmcgb3IgdmlhIHRoZSBjb250ZXh0IEFQSSBwcm92aWRlZCBieSBlbWJlci1wcm92aWRlLWNvbnN1bWUtY29udGV4dC5gXG4gICAgICAgIDogYE5vIHN0b3JlIHdhcyBwcm92aWRlZCB0byB0aGUgPFJlcXVlc3Q-IGNvbXBvbmVudC4gRWl0aGVyIHByb3ZpZGUgYSBzdG9yZSB2aWEgdGhlIEBzdG9yZSBhcmcgb3IgYnkgcmVnaXN0ZXJpbmcgYSBzdG9yZSBzZXJ2aWNlLmAsXG4gICAgICBzdG9yZVxuICAgICk7XG4gICAgcmV0dXJuIHN0b3JlO1xuICB9XG5cbiAgZ2V0IHJlcVN0YXRlKCkge1xuICAgIHJldHVybiBnZXRSZXF1ZXN0U3RhdGU8VD4odGhpcy5yZXF1ZXN0KTtcbiAgfVxuXG4gIDx0ZW1wbGF0ZT5cbiAgICB7eyNpZiB0aGlzLnJlcVN0YXRlLmlzTG9hZGluZ319XG4gICAgICB7e3lpZWxkIHRoaXMucmVxU3RhdGUubG9hZGluZ1N0YXRlIHRvPVwibG9hZGluZ1wifX1cbiAgICB7e2Vsc2UgaWYgKGFuZCB0aGlzLnJlcVN0YXRlLmlzQ2FuY2VsbGVkIChoYXMtYmxvY2sgXCJjYW5jZWxsZWRcIikpfX1cbiAgICAgIHt7eWllbGQgKG5vdE51bGwgdGhpcy5yZXFTdGF0ZS5lcnJvcikgdG89XCJjYW5jZWxsZWRcIn19XG4gICAge3tlbHNlIGlmIChhbmQgdGhpcy5yZXFTdGF0ZS5pc0Vycm9yIChoYXMtYmxvY2sgXCJlcnJvclwiKSl9fVxuICAgICAge3t5aWVsZCAobm90TnVsbCB0aGlzLnJlcVN0YXRlLmVycm9yKSB0bz1cImVycm9yXCJ9fVxuICAgIHt7ZWxzZSBpZiB0aGlzLnJlcVN0YXRlLmlzU3VjY2Vzc319XG4gICAgICB7e3lpZWxkIChub3ROdWxsIHRoaXMucmVxU3RhdGUucmVzdWx0KSB0bz1cImNvbnRlbnRcIn19XG4gICAge3tlbHNlfX1cbiAgICAgIDxUaHJvdyBAZXJyb3I9e3sobm90TnVsbCB0aGlzLnJlcVN0YXRlLmVycm9yKX19IC8-XG4gICAge3svaWZ9fVxuICA8L3RlbXBsYXRlPlxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxTQUFTLE1BQU0sUUFBUSxlQUFlO0FBQ3RDLFNBQVMsT0FBTyxRQUFRLGlCQUFpQjtBQUN6QyxPQUFPLGVBQWUscUJBQXFCO0FBQzNDLFNBQVMsTUFBTSxRQUFRLG9CQUFvQjtBQUMzQyxjQUFjLE1BQU0sRUFBRSx1QkFBdUIsUUFBUSxzQkFBc0I7QUFFM0UsU0FBUyxVQUFVLEVBQUUsY0FBYyxFQUFFLFlBQVksUUFBUSxvQkFBb0I7QUFFN0UsY0FBYyxpQkFBaUIsUUFBUSxvQkFBb0I7QUFDM0QsWUFBWSxXQUFXLG9CQUFvQjtBQUUzQyxTQUFTLGVBQWUsUUFBUSxxQkFBcUI7QUFDckQsY0FBYyxtQkFBbUIsUUFBUSxxQkFBcUI7QUFDOUQsU0FBUyxHQUFHLEVBQUUsT0FBTyxFQUFFLEtBQUssUUFBUSxjQUFjO0FBRWxELElBQUksVUFBVTtBQUNkLElBQUksZUFBZSxhQUFhLG1DQUFtQztJQUNqRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsV0FBVztRQUFzQyxnQkFBZ0I7O0lBQ3JGLFVBQVU7QUFDWjtVQUVVLGlCQUFpQjtJQUN6QjtRQUNFLFVBQVUsT0FBTztRQUNqQixRQUFRO1FBQ1IsUUFBUTs7SUFFVjtRQUNFLFVBQVUsT0FBTztRQUNqQixZQUFZLE9BQU87UUFDbkIsUUFBUSxPQUFPO1FBQ2YsVUFBVSxPQUFPOzs7QUFJckIsT0FBTyxNQUFNLFFBQVEsV0FBVyxVQUFVLGlCQUFpQjtJQUN6RDs7R0FFQyxHQUNELENBQUMsUUFBUTtJQUFpQixRQUFRLE1BQU07SUFFeEMsUUFBUSxLQUFPLEVBQUU7SUFDakIsU0FBUyxLQUFPLEVBQUU7SUFDbEIsVUFBVSxLQUFPLEVBQUU7SUFFbkIsQ0FBQztJQUFNLElBQ0gsVUFBVTtRQUNaLE1BQU0sRUFBRSxTQUFBLFFBQU8sRUFBRSxPQUFBLE1BQUssRUFBRSxHQUFHLElBQUksQ0FBQyxJQUFJO1FBQ3BDLE9BQU8sQ0FBQyxxRUFBcUUsQ0FBQyxFQUFFLENBQUMsWUFBVyxDQUFDO1FBQzdGLElBQUksVUFBUztZQUNYLE9BQU87UUFDVDtRQUNBLE9BQU8sQ0FBQyw4RUFBOEUsQ0FBQyxFQUFFO1FBQ3pGLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRztJQUMvQjtJQUVBLElBQUksU0FBUyxNQUFNO1FBQ2pCLE1BQU0sU0FBUSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsTUFBTTtRQUM1QyxPQUNFLGFBQWEsbUNBQ1QsQ0FBQyw2SkFBNkosQ0FBQyxHQUMvSixDQUFDLDhIQUE4SCxDQUFDLEVBQ3BJO1FBRUYsT0FBTztJQUNUO0lBRUEsSUFBSSxXQUFXO1FBQ2IsT0FBTyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsT0FBTztJQUN4QztJQUVBLE1BQUE7UUFBQSxTQUFVLENBQUE7Ozs7Ozs7Ozs7OztFQVlWLENBQUEsRUFBQTtZQUFBLFdBQUEsSUFBVztZQUFYO2dCQUFBLE9BQUEsS0FBQSxTQUFBLENBQUEsRUFBVztZQUFEO1FBQUE7SUFBQSxDQVpBO0FBYVoifQ"],"names":["RequestCache","WeakMap","isAbortError","error","DOMException","name","watchStream","stream","state","reader","getReader","bytesLoaded","shouldForward","_stream","readable","locked","isForwarding","writer","writable","getWriter","buffer","_isPending","_isStarted","_startTime","performance","now","value","done","read","byteLength","_bytesLoaded","_lastPacketTime","item","ready","write","length","push","close","cancel","endTime","_endTime","_isComplete","RequestLoadingState","_future","_triggered","_trigger","future","promise","getStream","sizeHint","_sizeHint","then","_isCancelled","_isErrored","_error","g","this","prototype","tracked","i","void 0","isPending","TransformStream","isStarted","startTime","lastPacketTime","isComplete","isCancelled","isErrored","elapsedTime","completeRatio","remainingRatio","duration","speed","constructor","abort","RequestState","isError","loadingState","getPromiseResult","request","result","response","isLoading","content","isSuccess","setPromiseResult","getRequestState","get","set","PromiseCache","PromiseState","getPromiseState","notNull","x1","assert","and","y1","Boolean","Throw","Component","owner1","args1","args","setComponentTemplate","precompileTemplate","strictMode","Await","scope","provide","service","macroCondition","moduleExists","consume","importSync","Request","retry","reload","refresh","request1","query","query1","store","n","cached","store1","_store","reqState"],"mappings":"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","x_google_ignoreList":[0,1]}