chore: 🤖 create patched ember-loading for modern e-c (#3015)
This commit is contained in:
1 parent
b19d76f249
commit
866972c6c6
3 files changed
+134
-42
No files matched your search
+6
-2
@@ -53,7 +53,8 @@
|
|||||||
"fireworm>async": "^2.6.4",
|
"fireworm>async": "^2.6.4",
|
||||||
"ember-cli-babel>@babel/runtime": "7.27.6",
|
"ember-cli-babel>@babel/runtime": "7.27.6",
|
||||||
"ember-try-config>package-json": "^10.0.1",
|
"ember-try-config>package-json": "^10.0.1",
|
||||||
"ember-stargate@^0.6.0>@glimmer/component": "^2.0.0"
|
"ember-stargate@^0.6.0>@glimmer/component": "^2.0.0",
|
||||||
|
"ember-loading>ember-concurrency": "^4.0.0"
|
||||||
},
|
},
|
||||||
"ignoredBuiltDependencies": [
|
"ignoredBuiltDependencies": [
|
||||||
"@parcel/watcher",
|
"@parcel/watcher",
|
||||||
@@ -63,7 +64,10 @@
|
|||||||
"@nestjs/core",
|
"@nestjs/core",
|
||||||
"@openapitools/openapi-generator-cli"
|
"@openapitools/openapi-generator-cli"
|
||||||
],
|
],
|
||||||
"onlyBuiltDependencies": []
|
"onlyBuiltDependencies": [],
|
||||||
|
"patchedDependencies": {
|
||||||
|
"ember-loading": "patches/ember-loading.patch"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"config": {
|
"config": {
|
||||||
"commitizen": {
|
"commitizen": {
|
||||||
|
|||||||
@@ -0,0 +1,112 @@
|
|||||||
|
diff --git a/addon/services/loading.ts b/addon/services/loading.ts
|
||||||
|
index 34ac7eb0cdf4ee8f09661ba2459068307bb2792e..9d201c99046fb2e3d6ba3b49f8c1445a4c768c02 100644
|
||||||
|
--- a/addon/services/loading.ts
|
||||||
|
+++ b/addon/services/loading.ts
|
||||||
|
@@ -4,7 +4,6 @@ import { restartableTask, task, timeout } from 'ember-concurrency';
|
||||||
|
import RouterService from '@ember/routing/router-service';
|
||||||
|
import { getOwner } from '@ember/application';
|
||||||
|
import RSVP, { defer } from 'rsvp';
|
||||||
|
-import { taskFor } from 'ember-concurrency-ts';
|
||||||
|
|
||||||
|
type ParseArgsValue = [any, Function, any[] | undefined];
|
||||||
|
|
||||||
|
@@ -49,7 +48,6 @@ function parseArgs(): ParseArgsValue {
|
||||||
|
}
|
||||||
|
|
||||||
|
export default class LoadingService extends Service {
|
||||||
|
-
|
||||||
|
@service
|
||||||
|
router!: RouterService;
|
||||||
|
|
||||||
|
@@ -58,11 +56,11 @@ export default class LoadingService extends Service {
|
||||||
|
watchTransitions = true;
|
||||||
|
|
||||||
|
get isLoading(): boolean {
|
||||||
|
- return taskFor(this._runJob).isRunning;
|
||||||
|
+ return this._runJob.isRunning;
|
||||||
|
}
|
||||||
|
|
||||||
|
get showLoading(): boolean {
|
||||||
|
- return !taskFor(this.preDelayTask).isRunning && (this.isLoading || taskFor(this.postDelayTask).isRunning);
|
||||||
|
+ return !this.preDelayTask.isRunning && (this.isLoading || this.postDelayTask.isRunning);
|
||||||
|
}
|
||||||
|
|
||||||
|
_routerTransitionDeferred?: RSVP.Deferred<unknown>;
|
||||||
|
@@ -132,33 +130,30 @@ export default class LoadingService extends Service {
|
||||||
|
// run<R>(fn: () => R): Promise<R>;
|
||||||
|
async run(...args: any[]) {
|
||||||
|
if (this.preDelay > 0) {
|
||||||
|
- taskFor(this.preDelayTask).perform(this.preDelay);
|
||||||
|
+ this.preDelayTask.perform(this.preDelay);
|
||||||
|
}
|
||||||
|
|
||||||
|
- let result = await taskFor(this._runJob).perform(...args);
|
||||||
|
+ let result = await this._runJob.perform(...args);
|
||||||
|
|
||||||
|
if (this.postDelay > 0) {
|
||||||
|
- taskFor(this.postDelayTask).perform(this.postDelay);
|
||||||
|
+ this.postDelayTask.perform(this.postDelay);
|
||||||
|
}
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
- @task
|
||||||
|
- async _runJob(...args: unknown[]): Promise<unknown> {
|
||||||
|
+ _runJob = task(async (...args: unknown[]) => {
|
||||||
|
let [target, method, realArgs] = parseArgs(...args);
|
||||||
|
return await method.apply(target, realArgs);
|
||||||
|
- }
|
||||||
|
+ });
|
||||||
|
|
||||||
|
- @restartableTask
|
||||||
|
- async preDelayTask(delay: number): Promise<void> {
|
||||||
|
+ preDelayTask = restartableTask(async (delay: number) => {
|
||||||
|
await timeout(delay);
|
||||||
|
- }
|
||||||
|
+ });
|
||||||
|
|
||||||
|
- @restartableTask
|
||||||
|
- async postDelayTask(delay: number): Promise<void> {
|
||||||
|
+ postDelayTask = restartableTask(async (delay: number) => {
|
||||||
|
await timeout(delay);
|
||||||
|
- }
|
||||||
|
+ });
|
||||||
|
}
|
||||||
|
|
||||||
|
// DO NOT DELETE: this is how TypeScript knows how to look up your services.
|
||||||
|
diff --git a/index.js b/index.js
|
||||||
|
index 0ca063d427d9441b9b3a1274bfcfe47186623c63..ca80a9382c6f5e64504048e0757215b1272fb849 100644
|
||||||
|
--- a/index.js
|
||||||
|
+++ b/index.js
|
||||||
|
@@ -2,4 +2,11 @@
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
name: require('./package').name,
|
||||||
|
+ options: {
|
||||||
|
+ babel: {
|
||||||
|
+ plugins: [
|
||||||
|
+ require.resolve('ember-concurrency/async-arrow-task-transform'),
|
||||||
|
+ ],
|
||||||
|
+ },
|
||||||
|
+ },
|
||||||
|
};
|
||||||
|
diff --git a/package.json b/package.json
|
||||||
|
index 3b898dce9a160776192437af4c35b2038eb39232..2a37d3d6f179bfe62479c5141d705a2d3e4eeaeb 100644
|
||||||
|
--- a/package.json
|
||||||
|
+++ b/package.json
|
||||||
|
@@ -31,10 +31,10 @@
|
||||||
|
"dependencies": {
|
||||||
|
"ember-cli-babel": "^7.26.6",
|
||||||
|
"ember-cli-htmlbars": "^5.7.1",
|
||||||
|
- "ember-cli-typescript": "^4.1.0",
|
||||||
|
- "ember-concurrency": "^2.0.3",
|
||||||
|
- "ember-concurrency-async": "^1.0.0",
|
||||||
|
- "ember-concurrency-ts": "^0.3.0"
|
||||||
|
+ "ember-cli-typescript": "^4.1.0"
|
||||||
|
+ },
|
||||||
|
+ "peerDependencies": {
|
||||||
|
+ "ember-concurrency": "^4.0.0"
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"@ember/optional-features": "2.0.0",
|
||||||
Generated
+16
-40
@@ -16,6 +16,12 @@ overrides:
|
|||||||
ember-cli-babel>@babel/runtime: 7.27.6
|
ember-cli-babel>@babel/runtime: 7.27.6
|
||||||
ember-try-config>package-json: ^10.0.1
|
ember-try-config>package-json: ^10.0.1
|
||||||
ember-stargate@^0.6.0>@glimmer/component: ^2.0.0
|
ember-stargate@^0.6.0>@glimmer/component: ^2.0.0
|
||||||
|
ember-loading>ember-concurrency: ^4.0.0
|
||||||
|
|
||||||
|
patchedDependencies:
|
||||||
|
ember-loading:
|
||||||
|
hash: 7d97519ce1955a5130edf885afb18c05d7253e2055b1b60cdcf6efc64cbdbff3
|
||||||
|
path: patches/ember-loading.patch
|
||||||
|
|
||||||
importers:
|
importers:
|
||||||
|
|
||||||
@@ -394,7 +400,7 @@ importers:
|
|||||||
version: 7.1.8(@ember/test-helpers@5.2.2(@babel/core@7.27.1)(@glint/template@1.5.2))(@glint/template@1.5.2)(typescript@5.8.3)(webpack@5.99.8)
|
version: 7.1.8(@ember/test-helpers@5.2.2(@babel/core@7.27.1)(@glint/template@1.5.2))(@glint/template@1.5.2)(typescript@5.8.3)(webpack@5.99.8)
|
||||||
ember-loading:
|
ember-loading:
|
||||||
specifier: ^2.0.0
|
specifier: ^2.0.0
|
||||||
version: 2.0.0(@babel/core@7.27.1)
|
version: 2.0.0(patch_hash=7d97519ce1955a5130edf885afb18c05d7253e2055b1b60cdcf6efc64cbdbff3)(@babel/core@7.27.1)(@glint/template@1.5.2)
|
||||||
ember-truth-helpers:
|
ember-truth-helpers:
|
||||||
specifier: ^4.0.3
|
specifier: ^4.0.3
|
||||||
version: 4.0.3(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8))
|
version: 4.0.3(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8))
|
||||||
@@ -4809,10 +4815,6 @@ packages:
|
|||||||
peerDependencies:
|
peerDependencies:
|
||||||
ember-concurrency: ^1.2.1 || ^2.0.0-rc.1
|
ember-concurrency: ^1.2.1 || ^2.0.0-rc.1
|
||||||
|
|
||||||
ember-concurrency@2.3.7:
|
|
||||||
resolution: {integrity: sha512-sz6sTIXN/CuLb5wdpauFa+rWXuvXXSnSHS4kuNzU5GSMDX1pLBWSuovoUk61FUe6CYRqBmT1/UushObwBGickQ==}
|
|
||||||
engines: {node: 10.* || 12.* || 14.* || >= 16}
|
|
||||||
|
|
||||||
ember-concurrency@4.0.4:
|
ember-concurrency@4.0.4:
|
||||||
resolution: {integrity: sha512-Y+PwbFE2r3+ANlT0lTBNokLXTRFLV6lnGkZ8u5tDhND5o2wD1wkh9JdP8KZ8aJ+J0dmhncVGQNi+Dbbtc6xTfg==}
|
resolution: {integrity: sha512-Y+PwbFE2r3+ANlT0lTBNokLXTRFLV6lnGkZ8u5tDhND5o2wD1wkh9JdP8KZ8aJ+J0dmhncVGQNi+Dbbtc6xTfg==}
|
||||||
engines: {node: 16.* || >= 18}
|
engines: {node: 16.* || >= 18}
|
||||||
@@ -4844,10 +4846,6 @@ packages:
|
|||||||
qunit:
|
qunit:
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
ember-destroyable-polyfill@2.0.3:
|
|
||||||
resolution: {integrity: sha512-TovtNqCumzyAiW0/OisSkkVK93xnVF4NRU6+FN0ubpfwEOpRrmM2RqDwXI6YAChCgSHON1cz0DfQStpA1Gjuuw==}
|
|
||||||
engines: {node: 10.* || >= 12}
|
|
||||||
|
|
||||||
ember-electron@6.0.0:
|
ember-electron@6.0.0:
|
||||||
resolution: {integrity: sha512-+vS5K+EYUo3XzClvPR83IECwwqda2rKymPfzCYnYbrzgqVPXFgtL/REh2PZNPrv1VB3UKLROfKeRtF/o/h6bXw==}
|
resolution: {integrity: sha512-+vS5K+EYUo3XzClvPR83IECwwqda2rKymPfzCYnYbrzgqVPXFgtL/REh2PZNPrv1VB3UKLROfKeRtF/o/h6bXw==}
|
||||||
engines: {node: '>= 18'}
|
engines: {node: '>= 18'}
|
||||||
@@ -14226,39 +14224,25 @@ snapshots:
|
|||||||
- '@babel/core'
|
- '@babel/core'
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
ember-concurrency-async@1.0.0(ember-concurrency@2.3.7(@babel/core@7.27.1)):
|
ember-concurrency-async@1.0.0(ember-concurrency@4.0.4(@babel/core@7.27.1)(@glint/template@1.5.2)):
|
||||||
dependencies:
|
dependencies:
|
||||||
'@babel/helper-plugin-utils': 7.27.1
|
'@babel/helper-plugin-utils': 7.27.1
|
||||||
'@babel/types': 7.27.1
|
'@babel/types': 7.27.1
|
||||||
ember-cli-babel: 7.26.11
|
ember-cli-babel: 7.26.11
|
||||||
ember-cli-babel-plugin-helpers: 1.1.1
|
ember-cli-babel-plugin-helpers: 1.1.1
|
||||||
ember-cli-htmlbars: 4.5.0
|
ember-cli-htmlbars: 4.5.0
|
||||||
ember-concurrency: 2.3.7(@babel/core@7.27.1)
|
ember-concurrency: 4.0.4(@babel/core@7.27.1)(@glint/template@1.5.2)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
ember-concurrency-ts@0.3.1(ember-concurrency@2.3.7(@babel/core@7.27.1)):
|
ember-concurrency-ts@0.3.1(ember-concurrency@4.0.4(@babel/core@7.27.1)(@glint/template@1.5.2)):
|
||||||
dependencies:
|
dependencies:
|
||||||
ember-cli-babel: 7.26.11
|
ember-cli-babel: 7.26.11
|
||||||
ember-cli-htmlbars: 4.5.0
|
ember-cli-htmlbars: 4.5.0
|
||||||
ember-concurrency: 2.3.7(@babel/core@7.27.1)
|
ember-concurrency: 4.0.4(@babel/core@7.27.1)(@glint/template@1.5.2)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
ember-concurrency@2.3.7(@babel/core@7.27.1):
|
|
||||||
dependencies:
|
|
||||||
'@babel/helper-plugin-utils': 7.27.1
|
|
||||||
'@babel/types': 7.27.1
|
|
||||||
'@glimmer/tracking': 1.1.2
|
|
||||||
ember-cli-babel: 7.26.11
|
|
||||||
ember-cli-babel-plugin-helpers: 1.1.1
|
|
||||||
ember-cli-htmlbars: 5.7.2
|
|
||||||
ember-compatibility-helpers: 1.2.7(@babel/core@7.27.1)
|
|
||||||
ember-destroyable-polyfill: 2.0.3(@babel/core@7.27.1)
|
|
||||||
transitivePeerDependencies:
|
|
||||||
- '@babel/core'
|
|
||||||
- supports-color
|
|
||||||
|
|
||||||
ember-concurrency@4.0.4(@babel/core@7.27.1)(@glint/template@1.5.2):
|
ember-concurrency@4.0.4(@babel/core@7.27.1)(@glint/template@1.5.2):
|
||||||
dependencies:
|
dependencies:
|
||||||
'@babel/helper-module-imports': 7.27.1
|
'@babel/helper-module-imports': 7.27.1
|
||||||
@@ -14307,15 +14291,6 @@ snapshots:
|
|||||||
- ember-inflector
|
- ember-inflector
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
ember-destroyable-polyfill@2.0.3(@babel/core@7.27.1):
|
|
||||||
dependencies:
|
|
||||||
ember-cli-babel: 7.26.11
|
|
||||||
ember-cli-version-checker: 5.1.2
|
|
||||||
ember-compatibility-helpers: 1.2.7(@babel/core@7.27.1)
|
|
||||||
transitivePeerDependencies:
|
|
||||||
- '@babel/core'
|
|
||||||
- supports-color
|
|
||||||
|
|
||||||
ember-electron@6.0.0(@babel/core@7.27.1)(ember-cli-dependency-checker@3.3.3(ember-cli@5.12.0(handlebars@4.7.8)(underscore@1.13.7)))(ember-cli@5.12.0(handlebars@4.7.8)(underscore@1.13.7))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8))(encoding@0.1.13):
|
ember-electron@6.0.0(@babel/core@7.27.1)(ember-cli-dependency-checker@3.3.3(ember-cli@5.12.0(handlebars@4.7.8)(underscore@1.13.7)))(ember-cli@5.12.0(handlebars@4.7.8)(underscore@1.13.7))(ember-source@5.12.0(@glimmer/component@2.0.0)(@glint/template@1.5.2)(rsvp@4.8.5)(webpack@5.99.8))(encoding@0.1.13):
|
||||||
dependencies:
|
dependencies:
|
||||||
'@electron-forge/core': 7.8.1(encoding@0.1.13)
|
'@electron-forge/core': 7.8.1(encoding@0.1.13)
|
||||||
@@ -14511,16 +14486,17 @@ snapshots:
|
|||||||
- '@babel/core'
|
- '@babel/core'
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
ember-loading@2.0.0(@babel/core@7.27.1):
|
ember-loading@2.0.0(patch_hash=7d97519ce1955a5130edf885afb18c05d7253e2055b1b60cdcf6efc64cbdbff3)(@babel/core@7.27.1)(@glint/template@1.5.2):
|
||||||
dependencies:
|
dependencies:
|
||||||
ember-cli-babel: 7.26.11
|
ember-cli-babel: 7.26.11
|
||||||
ember-cli-htmlbars: 5.7.2
|
ember-cli-htmlbars: 5.7.2
|
||||||
ember-cli-typescript: 4.2.1
|
ember-cli-typescript: 4.2.1
|
||||||
ember-concurrency: 2.3.7(@babel/core@7.27.1)
|
ember-concurrency: 4.0.4(@babel/core@7.27.1)(@glint/template@1.5.2)
|
||||||
ember-concurrency-async: 1.0.0(ember-concurrency@2.3.7(@babel/core@7.27.1))
|
ember-concurrency-async: 1.0.0(ember-concurrency@4.0.4(@babel/core@7.27.1)(@glint/template@1.5.2))
|
||||||
ember-concurrency-ts: 0.3.1(ember-concurrency@2.3.7(@babel/core@7.27.1))
|
ember-concurrency-ts: 0.3.1(ember-concurrency@4.0.4(@babel/core@7.27.1)(@glint/template@1.5.2))
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- '@babel/core'
|
- '@babel/core'
|
||||||
|
- '@glint/template'
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
ember-maybe-import-regenerator@1.0.0:
|
ember-maybe-import-regenerator@1.0.0:
|
||||||
|
|||||||
Reference in new issue
Block a user