From 0da9f4389ffcc7367b5caca29799edd6337394ae Mon Sep 17 00:00:00 2001 From: Christoph Wiedenmann Date: Wed, 24 Jul 2024 14:25:48 +0200 Subject: [PATCH 1/6] refactor: format search-input template --- .../src/components/search-input.hbs | 30 ++++++++++++++----- 1 file changed, 23 insertions(+), 7 deletions(-) diff --git a/guidemaker-ember-template/src/components/search-input.hbs b/guidemaker-ember-template/src/components/search-input.hbs index 6772bf1e..6594a093 100644 --- a/guidemaker-ember-template/src/components/search-input.hbs +++ b/guidemaker-ember-template/src/components/search-input.hbs @@ -1,4 +1,4 @@ -{{!-- template-lint-disable link-rel-noopener no-action no-curly-component-invocation --}} +{{! template-lint-disable no-action }} {{#if this.searchService.index}} + /> - {{!-- Search results dropdown --}} - + {{! Search results dropdown }} + {{#if this.showDropdown}}
@@ -28,15 +34,25 @@

No results found. {{#if this.deprecationsGuideURL}} - Try searching the deprecations guide. + Try searching the + + deprecations guide + . {{/if}}

{{/each}} From 126835b120dc022135099e230993fdc0944589f7 Mon Sep 17 00:00:00 2001 From: Christoph Wiedenmann Date: Wed, 31 Jul 2024 18:32:55 +0200 Subject: [PATCH 2/6] refactor: use native class for search-input --- guidemaker-ember-template/babel.config.json | 3 +- .../src/components/search-input.hbs | 120 ++++++------- .../src/components/search-input.js | 78 ++++----- .../src/services/search.js | 30 ++-- jsconfig.json | 1 + pnpm-lock.yaml | 158 +++++++++--------- test-app/package.json | 1 + .../components/search-input-test.js | 76 +++++++++ 8 files changed, 271 insertions(+), 196 deletions(-) create mode 100644 jsconfig.json create mode 100644 test-app/tests/integration/components/search-input-test.js diff --git a/guidemaker-ember-template/babel.config.json b/guidemaker-ember-template/babel.config.json index 98e70c1c..66f3d65f 100644 --- a/guidemaker-ember-template/babel.config.json +++ b/guidemaker-ember-template/babel.config.json @@ -4,7 +4,8 @@ ["babel-plugin-ember-template-compilation", { "targetFormat": "hbs", "transforms": [] - }], + }], + "ember-concurrency/async-arrow-task-transform", ["module:decorator-transforms", { "runtime": { "import": "decorator-transforms/runtime" } }], ] } diff --git a/guidemaker-ember-template/src/components/search-input.hbs b/guidemaker-ember-template/src/components/search-input.hbs index 6594a093..81f1d8ba 100644 --- a/guidemaker-ember-template/src/components/search-input.hbs +++ b/guidemaker-ember-template/src/components/search-input.hbs @@ -1,61 +1,67 @@ -{{! template-lint-disable no-action }} -{{#if this.searchService.index}} - +
+ {{#if this.searchService.index}} + - {{! Search results dropdown }} - - {{#if this.showDropdown}} -
- - Search Results - - - {{#each this.searchService.results as |result|}} - - {{else}} -
-
-

- No results found. - {{#if this.deprecationsGuideURL}} - Try searching the - - deprecations guide - . - {{/if}} -

+ {{! Search results dropdown }} + + {{#if this.showDropdown}} +
+ + Search Results + + {{#each this.searchService.results as |result|}} + + {{else}} +
+
+

+ No results found. + {{#if this.deprecationsGuideURL}} + Try searching the + + deprecations guide + . + {{/if}} +

+
+ {{/each}} + - {{/each}} - -
- {{/if}} -
-{{/if}} + {{/if}} + + {{/if}} +
diff --git a/guidemaker-ember-template/src/components/search-input.js b/guidemaker-ember-template/src/components/search-input.js index e664d732..e6365880 100644 --- a/guidemaker-ember-template/src/components/search-input.js +++ b/guidemaker-ember-template/src/components/search-input.js @@ -1,69 +1,59 @@ -/* eslint-disable ember/no-classic-components, ember/no-classic-classes, ember/require-tagless-components, prettier/prettier, ember/no-get, ember/no-actions-hash */ -import { getOwner } from '@ember/application'; -import Component from '@ember/component'; -import { get, set } from '@ember/object'; -import { and } from '@ember/object/computed'; +import Component from '@glimmer/component'; +import { tracked } from '@glimmer/tracking'; import { inject as service } from '@ember/service'; +import { action } from '@ember/object'; import { task, timeout } from 'ember-concurrency'; +import config from 'ember-get-config'; const SEARCH_DEBOUNCE_PERIOD = 300; const SEARCH_CLOSE_PERIOD = 200; -export default Component.extend({ +export default class SearchInputComponent extends Component { + @service('search') searchService; - classNames: ['search-input'], - - searchService: service('search'), - - _resultTetherConstraints: Object.freeze([ + _resultTetherConstraints = [ { to: 'window', - pin: ['left','right'] - } - ]), - - _focused: false, + pin: ['left', 'right'], + }, + ]; - init() { - this._super(...arguments); - const config = getOwner(this).resolveRegistration('config:environment'); - this.deprecationsGuideURL = config['deprecationsGuideURL']; - }, + @tracked _focused = false; + @tracked query; + @tracked value = ''; - showDropdown: and('query', '_focused'), + get deprecationsGuideURL() { + return config['deprecationsGuideURL']; + } - search: task(function * (query) { + get showDropdown() { + return this.query && this._focused; + } - yield timeout(SEARCH_DEBOUNCE_PERIOD); + search = task(async (query) => { + await timeout(SEARCH_DEBOUNCE_PERIOD); - set(this, 'query', query); + this.query = query; // Hide and don't run query if there's no search query if (!query) { - return set(this, '_focused', false); + return (this._focused = false); } // ensure search results are visible if the menu was previously closed above - set(this, '_focused', true); - - yield get(this, 'searchService.search').perform(query, this.projectVersion); - - }).restartable(), + this._focused = true; - closeMenu: task(function * () { - yield timeout(SEARCH_CLOSE_PERIOD); + await this.searchService.search.perform(query, this.args.projectVersion); + }); - set(this, '_focused', false); - }), + closeMenu = task({ restartable: true }, async () => { + await timeout(SEARCH_CLOSE_PERIOD); - actions: { - onfocus() { - set(this, '_focused', true); - }, - - onblur() { - this.get('closeMenu').perform(); - } + this._focused = false; + }); + @action + onfocus() { + this._focused = true; } -}); +} diff --git a/guidemaker-ember-template/src/services/search.js b/guidemaker-ember-template/src/services/search.js index 1231c618..2bdc8b4f 100644 --- a/guidemaker-ember-template/src/services/search.js +++ b/guidemaker-ember-template/src/services/search.js @@ -1,44 +1,42 @@ -/* eslint-disable ember/no-classic-classes, prettier/prettier, ember/no-get */ import Service from '@ember/service'; +import { tracked } from '@glimmer/tracking'; import { task } from 'ember-concurrency'; -import { get, set } from '@ember/object'; -import { A as emberArray } from '@ember/array'; import algoliasearch from 'algoliasearch'; import { getOwner } from '@ember/application'; -export default Service.extend({ +export default class SearchServices extends Service { + @tracked results = []; + client = null; + index = null; - results: emberArray(), + constructor() { + super(...arguments); - init() { - this._super(...arguments); const config = getOwner(this).resolveRegistration('config:environment'); - const { algoliaId, algoliaKey, indexName } = config['algolia'] || {}; if (algoliaId && algoliaKey && indexName) { this.client = algoliasearch(algoliaId, algoliaKey); this.index = this.client.initIndex(indexName); } - }, + } - search: task(function * (query, projectVersion) { + search = task({ restartable: true }, async (query, projectVersion) => { const searchObj = { hitsPerPage: 15, restrictSearchableAttributes: ['content'], }; - if(projectVersion && projectVersion.match(/\d+\.\d+\.\d+/)) { + if (projectVersion && projectVersion.match(/\d+\.\d+\.\d+/)) { searchObj.facetFilters = [[`version:${projectVersion}`]]; } - return set(this, 'results', yield this.doSearch(query, searchObj)); - - }).restartable(), + return (this.results = await this.doSearch(query, searchObj)); + }); doSearch(query, searchObj) { return this.index.search(query, searchObj).then((results) => { - return get(results, 'hits'); + return results.hits; }); } -}); +} diff --git a/jsconfig.json b/jsconfig.json new file mode 100644 index 00000000..f408cac8 --- /dev/null +++ b/jsconfig.json @@ -0,0 +1 @@ +{"compilerOptions":{"target":"es6","experimentalDecorators":true},"exclude":["node_modules","bower_components","tmp","vendor",".git","dist"]} \ No newline at end of file diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 29e65266..1c2ccf6a 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -152,7 +152,7 @@ importers: version: 3.1.1 '@ember/test-helpers': specifier: ^3.3.0 - version: 3.3.0(ember-source@5.7.0)(webpack@5.90.3) + version: 3.3.0(@glint/template@1.3.0)(ember-source@5.7.0)(webpack@5.90.3) '@embroider/test-setup': specifier: ^3.0.1 version: 3.0.3 @@ -207,9 +207,12 @@ importers: ember-cli-terser: specifier: ^4.0.2 version: 4.0.2 + ember-concurrency: + specifier: ^4.0.0 + version: 4.0.0(@babel/core@7.24.0)(@glimmer/tracking@1.1.2)(@glint/template@1.3.0)(ember-source@5.7.0) ember-data: specifier: ~5.3.3 - version: 5.3.3(@babel/core@7.24.0)(@ember/string@3.1.1)(ember-source@5.7.0) + version: 5.3.3(@babel/core@7.24.0)(@ember/string@3.1.1)(@glint/template@1.3.0)(ember-source@5.7.0) ember-fetch: specifier: ^8.1.2 version: 8.1.2 @@ -218,7 +221,7 @@ importers: version: 2.1.2(@babel/core@7.24.0) ember-mirage: specifier: ^0.3.0 - version: 0.3.0(@babel/core@7.24.0)(ember-source@5.7.0)(miragejs@0.1.48) + version: 0.3.0(@babel/core@7.24.0)(@glint/template@1.3.0)(ember-source@5.7.0)(miragejs@0.1.48) ember-modifier: specifier: ^4.1.0 version: 4.1.0(ember-source@5.7.0) @@ -227,7 +230,7 @@ importers: version: 8.2.2(ember-source@5.7.0) ember-qunit: specifier: ^8.0.2 - version: 8.0.2(@ember/test-helpers@3.3.0)(ember-source@5.7.0)(qunit@2.20.1) + version: 8.0.2(@ember/test-helpers@3.3.0)(@glint/template@1.3.0)(ember-source@5.7.0)(qunit@2.20.1) ember-resolver: specifier: ^11.0.1 version: 11.0.1(ember-source@5.7.0) @@ -1748,7 +1751,7 @@ packages: postcss-selector-parser: 6.0.15 dev: true - /@ember-data/adapter@5.3.3(@babel/core@7.24.0)(@ember-data/legacy-compat@5.3.3)(@ember-data/store@5.3.3)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2): + /@ember-data/adapter@5.3.3(@babel/core@7.24.0)(@ember-data/legacy-compat@5.3.3)(@ember-data/store@5.3.3)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2): resolution: {integrity: sha512-lIOTYcOl2gVsoJ7Uh6MBwHrdwXBhRpnSZix4Wt0/DwBwlk3t3coujOTi06xi6LxN3F+wN+F++RZRkI1E5Jb+kQ==} engines: {node: '>= 18.19.1'} peerDependencies: @@ -1758,12 +1761,12 @@ packages: '@warp-drive/core-types': 0.0.0-beta.4 ember-inflector: ^4.0.2 dependencies: - '@ember-data/legacy-compat': 5.3.3(@babel/core@7.24.0)(@ember-data/graph@5.3.3)(@ember-data/json-api@5.3.3)(@ember-data/request@5.3.3)(@ember-data/store@5.3.3)(@warp-drive/core-types@0.0.0-beta.4) - '@ember-data/private-build-infra': 5.3.3 - '@ember-data/store': 5.3.3(@babel/core@7.24.0)(@ember-data/request@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/legacy-compat': 5.3.3(@babel/core@7.24.0)(@ember-data/graph@5.3.3)(@ember-data/json-api@5.3.3)(@ember-data/request@5.3.3)(@ember-data/store@5.3.3)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/private-build-infra': 5.3.3(@glint/template@1.3.0) + '@ember-data/store': 5.3.3(@babel/core@7.24.0)(@ember-data/request@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) '@ember/string': 3.1.1 '@embroider/macros': 1.15.0(@glint/template@1.3.0) - '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0) + '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0)(@glint/template@1.3.0) ember-cli-babel: 8.2.0(@babel/core@7.24.0) ember-cli-test-info: 1.0.0 ember-inflector: 4.0.2 @@ -1774,7 +1777,7 @@ packages: - supports-color dev: true - /@ember-data/debug@5.3.3(@ember-data/store@5.3.3)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4): + /@ember-data/debug@5.3.3(@ember-data/store@5.3.3)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4): resolution: {integrity: sha512-69o5rJC1FP3XurnYfFP3JYxcswHlp36fGYYp5YNG4VMHXk062ShJ6xZlqI/lKPioXFOHHf+8JKTYFDQJCz9s4g==} engines: {node: '>= 18.19.1'} peerDependencies: @@ -1783,12 +1786,12 @@ packages: '@warp-drive/core-types': 0.0.0-beta.4 dependencies: '@babel/core': 7.24.0 - '@ember-data/private-build-infra': 5.3.3 - '@ember-data/store': 5.3.3(@babel/core@7.24.0)(@ember-data/request@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/private-build-infra': 5.3.3(@glint/template@1.3.0) + '@ember-data/store': 5.3.3(@babel/core@7.24.0)(@ember-data/request@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) '@ember/edition-utils': 1.2.0 '@ember/string': 3.1.1 '@embroider/macros': 1.15.0(@glint/template@1.3.0) - '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0) + '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0)(@glint/template@1.3.0) ember-auto-import: 2.7.2(@glint/template@1.3.0)(webpack@5.90.3) ember-cli-babel: 8.2.0(@babel/core@7.24.0) pnpm-sync-dependencies-meta-injected: 0.0.10 @@ -1802,18 +1805,18 @@ packages: - webpack-cli dev: true - /@ember-data/graph@5.3.3(@babel/core@7.24.0)(@ember-data/store@5.3.3)(@warp-drive/core-types@0.0.0-beta.4): + /@ember-data/graph@5.3.3(@babel/core@7.24.0)(@ember-data/store@5.3.3)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4): resolution: {integrity: sha512-GOIEHilq7X59fk0GTxKUX744XASvfnzwjtIy1JhcD9eNvWRgiaJVEdZD/UMFVmkrle+TckACMBsbwOoNyj/+9A==} engines: {node: '>= 18.19.1'} peerDependencies: '@ember-data/store': 5.3.3 '@warp-drive/core-types': 0.0.0-beta.4 dependencies: - '@ember-data/private-build-infra': 5.3.3 - '@ember-data/store': 5.3.3(@babel/core@7.24.0)(@ember-data/request@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/private-build-infra': 5.3.3(@glint/template@1.3.0) + '@ember-data/store': 5.3.3(@babel/core@7.24.0)(@ember-data/request@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) '@ember/edition-utils': 1.2.0 '@embroider/macros': 1.15.0(@glint/template@1.3.0) - '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0) + '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0)(@glint/template@1.3.0) ember-cli-babel: 8.2.0(@babel/core@7.24.0) pnpm-sync-dependencies-meta-injected: 0.0.10 transitivePeerDependencies: @@ -1822,7 +1825,7 @@ packages: - supports-color dev: true - /@ember-data/json-api@5.3.3(@babel/core@7.24.0)(@ember-data/graph@5.3.3)(@ember-data/request-utils@5.3.3)(@ember-data/store@5.3.3)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2): + /@ember-data/json-api@5.3.3(@babel/core@7.24.0)(@ember-data/graph@5.3.3)(@ember-data/request-utils@5.3.3)(@ember-data/store@5.3.3)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2): resolution: {integrity: sha512-PoHdKuWNpHkZQYp3q1vt2Yx/j85vsRtzOFtM4hkmPPxaVViJkAfd21JgTML1/gOmLbbCaQrz8r8AxDWkPyemPA==} engines: {node: '>= 18.19.1'} peerDependencies: @@ -1835,13 +1838,13 @@ packages: '@ember-data/request-utils': optional: true dependencies: - '@ember-data/graph': 5.3.3(@babel/core@7.24.0)(@ember-data/store@5.3.3)(@warp-drive/core-types@0.0.0-beta.4) - '@ember-data/private-build-infra': 5.3.3 + '@ember-data/graph': 5.3.3(@babel/core@7.24.0)(@ember-data/store@5.3.3)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/private-build-infra': 5.3.3(@glint/template@1.3.0) '@ember-data/request-utils': 5.3.3(@babel/core@7.24.0)(@warp-drive/core-types@0.0.0-beta.4) - '@ember-data/store': 5.3.3(@babel/core@7.24.0)(@ember-data/request@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/store': 5.3.3(@babel/core@7.24.0)(@ember-data/request@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) '@ember/edition-utils': 1.2.0 '@embroider/macros': 1.15.0(@glint/template@1.3.0) - '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0) + '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0)(@glint/template@1.3.0) ember-cli-babel: 8.2.0(@babel/core@7.24.0) ember-inflector: 4.0.2 pnpm-sync-dependencies-meta-injected: 0.0.10 @@ -1851,7 +1854,7 @@ packages: - supports-color dev: true - /@ember-data/legacy-compat@5.3.3(@babel/core@7.24.0)(@ember-data/graph@5.3.3)(@ember-data/json-api@5.3.3)(@ember-data/request@5.3.3)(@ember-data/store@5.3.3)(@warp-drive/core-types@0.0.0-beta.4): + /@ember-data/legacy-compat@5.3.3(@babel/core@7.24.0)(@ember-data/graph@5.3.3)(@ember-data/json-api@5.3.3)(@ember-data/request@5.3.3)(@ember-data/store@5.3.3)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4): resolution: {integrity: sha512-VgGwFoa2Qv4wohAMzutvt1LtK9Gx9qwnuKzWQQzQikI438qYfTKbvtzLDei0GiABJwE6KRPD3EZUflw0xlm7xw==} engines: {node: '>= 18.19.1'} peerDependencies: @@ -1866,13 +1869,13 @@ packages: '@ember-data/json-api': optional: true dependencies: - '@ember-data/graph': 5.3.3(@babel/core@7.24.0)(@ember-data/store@5.3.3)(@warp-drive/core-types@0.0.0-beta.4) - '@ember-data/json-api': 5.3.3(@babel/core@7.24.0)(@ember-data/graph@5.3.3)(@ember-data/request-utils@5.3.3)(@ember-data/store@5.3.3)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2) - '@ember-data/private-build-infra': 5.3.3 - '@ember-data/request': 5.3.3(@babel/core@7.24.0)(@warp-drive/core-types@0.0.0-beta.4) - '@ember-data/store': 5.3.3(@babel/core@7.24.0)(@ember-data/request@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/graph': 5.3.3(@babel/core@7.24.0)(@ember-data/store@5.3.3)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/json-api': 5.3.3(@babel/core@7.24.0)(@ember-data/graph@5.3.3)(@ember-data/request-utils@5.3.3)(@ember-data/store@5.3.3)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2) + '@ember-data/private-build-infra': 5.3.3(@glint/template@1.3.0) + '@ember-data/request': 5.3.3(@babel/core@7.24.0)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/store': 5.3.3(@babel/core@7.24.0)(@ember-data/request@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) '@embroider/macros': 1.15.0(@glint/template@1.3.0) - '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0) + '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0)(@glint/template@1.3.0) ember-cli-babel: 8.2.0(@babel/core@7.24.0) pnpm-sync-dependencies-meta-injected: 0.0.10 transitivePeerDependencies: @@ -1881,7 +1884,7 @@ packages: - supports-color dev: true - /@ember-data/model@5.3.3(@babel/core@7.24.0)(@ember-data/debug@5.3.3)(@ember-data/graph@5.3.3)(@ember-data/json-api@5.3.3)(@ember-data/legacy-compat@5.3.3)(@ember-data/store@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2): + /@ember-data/model@5.3.3(@babel/core@7.24.0)(@ember-data/debug@5.3.3)(@ember-data/graph@5.3.3)(@ember-data/json-api@5.3.3)(@ember-data/legacy-compat@5.3.3)(@ember-data/store@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2): resolution: {integrity: sha512-aP2wqSTmDFVBcY3x8kn1o54SYB7Gf8V6hFsYA497f46xbJA+FBj37NDdKsjepKIQaW0fqGFGUzVv2Le0zTaH2A==} engines: {node: '>= 18.19.1'} peerDependencies: @@ -1902,17 +1905,17 @@ packages: '@ember-data/json-api': optional: true dependencies: - '@ember-data/debug': 5.3.3(@ember-data/store@5.3.3)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4) - '@ember-data/graph': 5.3.3(@babel/core@7.24.0)(@ember-data/store@5.3.3)(@warp-drive/core-types@0.0.0-beta.4) - '@ember-data/json-api': 5.3.3(@babel/core@7.24.0)(@ember-data/graph@5.3.3)(@ember-data/request-utils@5.3.3)(@ember-data/store@5.3.3)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2) - '@ember-data/legacy-compat': 5.3.3(@babel/core@7.24.0)(@ember-data/graph@5.3.3)(@ember-data/json-api@5.3.3)(@ember-data/request@5.3.3)(@ember-data/store@5.3.3)(@warp-drive/core-types@0.0.0-beta.4) - '@ember-data/private-build-infra': 5.3.3 - '@ember-data/store': 5.3.3(@babel/core@7.24.0)(@ember-data/request@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4) - '@ember-data/tracking': 5.3.3(@babel/core@7.24.0)(ember-source@5.7.0) + '@ember-data/debug': 5.3.3(@ember-data/store@5.3.3)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/graph': 5.3.3(@babel/core@7.24.0)(@ember-data/store@5.3.3)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/json-api': 5.3.3(@babel/core@7.24.0)(@ember-data/graph@5.3.3)(@ember-data/request-utils@5.3.3)(@ember-data/store@5.3.3)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2) + '@ember-data/legacy-compat': 5.3.3(@babel/core@7.24.0)(@ember-data/graph@5.3.3)(@ember-data/json-api@5.3.3)(@ember-data/request@5.3.3)(@ember-data/store@5.3.3)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/private-build-infra': 5.3.3(@glint/template@1.3.0) + '@ember-data/store': 5.3.3(@babel/core@7.24.0)(@ember-data/request@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/tracking': 5.3.3(@babel/core@7.24.0)(@glint/template@1.3.0)(ember-source@5.7.0) '@ember/edition-utils': 1.2.0 '@ember/string': 3.1.1 '@embroider/macros': 1.15.0(@glint/template@1.3.0) - '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0) + '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0)(@glint/template@1.3.0) ember-cli-babel: 8.2.0(@babel/core@7.24.0) ember-cli-string-utils: 1.1.0 ember-cli-test-info: 1.0.0 @@ -1925,7 +1928,7 @@ packages: - supports-color dev: true - /@ember-data/private-build-infra@5.3.3: + /@ember-data/private-build-infra@5.3.3(@glint/template@1.3.0): resolution: {integrity: sha512-THWsVUVxkqiHvquGk1HSexSsYuMgDxCt/obOHNPnaC4vVMaL4CL++64LcnyZF+cEVfObA1W01h0zkp4+042UKg==} engines: {node: '>= 18.19.1'} dependencies: @@ -1957,7 +1960,7 @@ packages: - supports-color dev: true - /@ember-data/private-build-infra@5.4.0-beta.4: + /@ember-data/private-build-infra@5.4.0-beta.4(@glint/template@1.3.0): resolution: {integrity: sha512-xUh/YhgdNuWHgi2Y/9mmc53CnEw8bpXLpPoM+Rpdf6UTWbxLBBUXpwZqU43j+7K30MMt0+HwnRneu6YvFA0bMA==} engines: {node: '>= 18.19.1'} dependencies: @@ -1995,7 +1998,7 @@ packages: peerDependencies: '@warp-drive/core-types': 0.0.0-beta.4 dependencies: - '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0) + '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0)(@glint/template@1.3.0) ember-cli-babel: 8.2.0(@babel/core@7.24.0) pnpm-sync-dependencies-meta-injected: 0.0.10 transitivePeerDependencies: @@ -2003,16 +2006,16 @@ packages: - supports-color dev: true - /@ember-data/request@5.3.3(@babel/core@7.24.0)(@warp-drive/core-types@0.0.0-beta.4): + /@ember-data/request@5.3.3(@babel/core@7.24.0)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4): resolution: {integrity: sha512-M9KtskelSAGmtiHGYeB2sHpttksctrq2UYCKKGxNxMPCQ82E4s2jj1MHaLtxafD4o6gD46g/6FW3NjxxZlLXBw==} engines: {node: '>= 18.19.1'} peerDependencies: '@warp-drive/core-types': 0.0.0-beta.4 dependencies: - '@ember-data/private-build-infra': 5.3.3 + '@ember-data/private-build-infra': 5.3.3(@glint/template@1.3.0) '@ember/test-waiters': 3.1.0 '@embroider/macros': 1.15.0(@glint/template@1.3.0) - '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0) + '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0)(@glint/template@1.3.0) ember-cli-babel: 8.2.0(@babel/core@7.24.0) pnpm-sync-dependencies-meta-injected: 0.0.10 transitivePeerDependencies: @@ -2024,7 +2027,7 @@ packages: /@ember-data/rfc395-data@0.0.4: resolution: {integrity: sha512-tGRdvgC9/QMQSuSuJV45xoyhI0Pzjm7A9o/MVVA3HakXIImJbbzx/k/6dO9CUEQXIyS2y0fW6C1XaYOG7rY0FQ==} - /@ember-data/serializer@5.3.3(@babel/core@7.24.0)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2): + /@ember-data/serializer@5.3.3(@babel/core@7.24.0)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2): resolution: {integrity: sha512-UUjxAbo8FeMyGO0AFFuTPPj6wUIHo6yynbvyQz3qK7YDX+TrE4wVcYPKKgu04BQ0ntWaNUVxmX5eLbMuvMOfcQ==} engines: {node: '>= 18.19.1'} peerDependencies: @@ -2032,10 +2035,10 @@ packages: '@warp-drive/core-types': 0.0.0-beta.4 ember-inflector: ^4.0.2 dependencies: - '@ember-data/private-build-infra': 5.3.3 + '@ember-data/private-build-infra': 5.3.3(@glint/template@1.3.0) '@ember/string': 3.1.1 '@embroider/macros': 1.15.0(@glint/template@1.3.0) - '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0) + '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0)(@glint/template@1.3.0) ember-cli-babel: 8.2.0(@babel/core@7.24.0) ember-cli-test-info: 1.0.0 ember-inflector: 4.0.2 @@ -2046,7 +2049,7 @@ packages: - supports-color dev: true - /@ember-data/store@5.3.3(@babel/core@7.24.0)(@ember-data/request@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4): + /@ember-data/store@5.3.3(@babel/core@7.24.0)(@ember-data/request@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4): resolution: {integrity: sha512-3a5yEKO/d7a9c9lTtqUUmgp3LBXeya099P4P7yZ3OpXLEkoH+ZZIogAkOoZX6Z/83lEv6b0NIXWqeUyhT6/Fxw==} engines: {node: '>= 18.19.1'} peerDependencies: @@ -2055,12 +2058,12 @@ packages: '@ember/string': ^3.1.1 '@warp-drive/core-types': 0.0.0-beta.4 dependencies: - '@ember-data/private-build-infra': 5.3.3 - '@ember-data/request': 5.3.3(@babel/core@7.24.0)(@warp-drive/core-types@0.0.0-beta.4) - '@ember-data/tracking': 5.3.3(@babel/core@7.24.0)(ember-source@5.7.0) + '@ember-data/private-build-infra': 5.3.3(@glint/template@1.3.0) + '@ember-data/request': 5.3.3(@babel/core@7.24.0)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/tracking': 5.3.3(@babel/core@7.24.0)(@glint/template@1.3.0)(ember-source@5.7.0) '@ember/string': 3.1.1 '@embroider/macros': 1.15.0(@glint/template@1.3.0) - '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0) + '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0)(@glint/template@1.3.0) ember-cli-babel: 8.2.0(@babel/core@7.24.0) pnpm-sync-dependencies-meta-injected: 0.0.10 transitivePeerDependencies: @@ -2069,13 +2072,13 @@ packages: - supports-color dev: true - /@ember-data/tracking@5.3.3(@babel/core@7.24.0)(ember-source@5.7.0): + /@ember-data/tracking@5.3.3(@babel/core@7.24.0)(@glint/template@1.3.0)(ember-source@5.7.0): resolution: {integrity: sha512-P55BYk/nG1x+PT1xkDQVVaMhoTFv0wDUvLuRIyrKOT3QylQGeCAuYbzWDyLe6aMjL/655ctcUoQxuNdLjcVzMQ==} engines: {node: '>= 18.19.1'} dependencies: - '@ember-data/private-build-infra': 5.3.3 + '@ember-data/private-build-infra': 5.3.3(@glint/template@1.3.0) '@embroider/macros': 1.15.0(@glint/template@1.3.0) - ember-cached-decorator-polyfill: 1.0.2(@babel/core@7.24.0)(ember-source@5.7.0) + ember-cached-decorator-polyfill: 1.0.2(@babel/core@7.24.0)(@glint/template@1.3.0)(ember-source@5.7.0) ember-cli-babel: 8.2.0(@babel/core@7.24.0) pnpm-sync-dependencies-meta-injected: 0.0.10 transitivePeerDependencies: @@ -2130,7 +2133,7 @@ packages: transitivePeerDependencies: - supports-color - /@ember/test-helpers@2.9.4(@babel/core@7.24.0)(ember-source@5.7.0): + /@ember/test-helpers@2.9.4(@babel/core@7.24.0)(@glint/template@1.3.0)(ember-source@5.7.0): resolution: {integrity: sha512-z+Qs1NYWyIVDmrY6WdmOS5mdG1lJ5CFfzh6dRhLfs9lq45deDaDrVNcaCYhnNeJZTvUBK2XR2SvPcZm0RloXdA==} engines: {node: 10.* || 12.* || 14.* || 15.* || >= 16.*} peerDependencies: @@ -2152,7 +2155,7 @@ packages: - supports-color dev: true - /@ember/test-helpers@3.3.0(ember-source@5.7.0)(webpack@5.90.3): + /@ember/test-helpers@3.3.0(@glint/template@1.3.0)(ember-source@5.7.0)(webpack@5.90.3): resolution: {integrity: sha512-HEI28wtjnQuEj9+DstHUEEKPtqPAEVN9AAVr4EifVCd3DyEDy0m6hFT4qbap1WxAIktLja2QXGJg50lVWzZc5g==} engines: {node: 16.* || >= 18} peerDependencies: @@ -4100,11 +4103,11 @@ packages: resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} dev: true - /@warp-drive/core-types@0.0.0-beta.4(@babel/core@7.24.0): + /@warp-drive/core-types@0.0.0-beta.4(@babel/core@7.24.0)(@glint/template@1.3.0): resolution: {integrity: sha512-DDvcM6FkJEw74RyAqfD0TZatJgYBfk9+J+dSrczFhpnJP9S2+uyu1fCoXePlTRUfssWTVzYwz1vGNFN61sJqBQ==} engines: {node: '>= 18.19.1'} dependencies: - '@ember-data/private-build-infra': 5.4.0-beta.4 + '@ember-data/private-build-infra': 5.4.0-beta.4(@glint/template@1.3.0) ember-cli-babel: 8.2.0(@babel/core@7.24.0) pnpm-sync-dependencies-meta-injected: 0.0.10 transitivePeerDependencies: @@ -7124,7 +7127,7 @@ packages: - supports-color dev: true - /ember-cached-decorator-polyfill@1.0.2(@babel/core@7.24.0)(ember-source@5.7.0): + /ember-cached-decorator-polyfill@1.0.2(@babel/core@7.24.0)(@glint/template@1.3.0)(ember-source@5.7.0): resolution: {integrity: sha512-hUX6OYTKltAPAu8vsVZK02BfMTV0OUXrPqvRahYPhgS7D0I6joLjlskd7mhqJMcaXLywqceIy8/s+x8bxF8bpQ==} engines: {node: 14.* || >= 16} peerDependencies: @@ -7832,30 +7835,29 @@ packages: transitivePeerDependencies: - '@babel/core' - supports-color - dev: false - /ember-data@5.3.3(@babel/core@7.24.0)(@ember/string@3.1.1)(ember-source@5.7.0): + /ember-data@5.3.3(@babel/core@7.24.0)(@ember/string@3.1.1)(@glint/template@1.3.0)(ember-source@5.7.0): resolution: {integrity: sha512-T8+cfFtkZ9hPZ+7t1SAjXkAqvW3dSpY83IuOzUZf7kgoiJkR0C3cQTBteULrseDR9GoKQOkmiWrTphRzyy9RFg==} engines: {node: '>= 18.19.1'} peerDependencies: '@ember/string': ^3.1.1 dependencies: - '@ember-data/adapter': 5.3.3(@babel/core@7.24.0)(@ember-data/legacy-compat@5.3.3)(@ember-data/store@5.3.3)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2) - '@ember-data/debug': 5.3.3(@ember-data/store@5.3.3)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4) - '@ember-data/graph': 5.3.3(@babel/core@7.24.0)(@ember-data/store@5.3.3)(@warp-drive/core-types@0.0.0-beta.4) - '@ember-data/json-api': 5.3.3(@babel/core@7.24.0)(@ember-data/graph@5.3.3)(@ember-data/request-utils@5.3.3)(@ember-data/store@5.3.3)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2) - '@ember-data/legacy-compat': 5.3.3(@babel/core@7.24.0)(@ember-data/graph@5.3.3)(@ember-data/json-api@5.3.3)(@ember-data/request@5.3.3)(@ember-data/store@5.3.3)(@warp-drive/core-types@0.0.0-beta.4) - '@ember-data/model': 5.3.3(@babel/core@7.24.0)(@ember-data/debug@5.3.3)(@ember-data/graph@5.3.3)(@ember-data/json-api@5.3.3)(@ember-data/legacy-compat@5.3.3)(@ember-data/store@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2) - '@ember-data/private-build-infra': 5.3.3 - '@ember-data/request': 5.3.3(@babel/core@7.24.0)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/adapter': 5.3.3(@babel/core@7.24.0)(@ember-data/legacy-compat@5.3.3)(@ember-data/store@5.3.3)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2) + '@ember-data/debug': 5.3.3(@ember-data/store@5.3.3)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/graph': 5.3.3(@babel/core@7.24.0)(@ember-data/store@5.3.3)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/json-api': 5.3.3(@babel/core@7.24.0)(@ember-data/graph@5.3.3)(@ember-data/request-utils@5.3.3)(@ember-data/store@5.3.3)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2) + '@ember-data/legacy-compat': 5.3.3(@babel/core@7.24.0)(@ember-data/graph@5.3.3)(@ember-data/json-api@5.3.3)(@ember-data/request@5.3.3)(@ember-data/store@5.3.3)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/model': 5.3.3(@babel/core@7.24.0)(@ember-data/debug@5.3.3)(@ember-data/graph@5.3.3)(@ember-data/json-api@5.3.3)(@ember-data/legacy-compat@5.3.3)(@ember-data/store@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2) + '@ember-data/private-build-infra': 5.3.3(@glint/template@1.3.0) + '@ember-data/request': 5.3.3(@babel/core@7.24.0)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) '@ember-data/request-utils': 5.3.3(@babel/core@7.24.0)(@warp-drive/core-types@0.0.0-beta.4) - '@ember-data/serializer': 5.3.3(@babel/core@7.24.0)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2) - '@ember-data/store': 5.3.3(@babel/core@7.24.0)(@ember-data/request@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4) - '@ember-data/tracking': 5.3.3(@babel/core@7.24.0)(ember-source@5.7.0) + '@ember-data/serializer': 5.3.3(@babel/core@7.24.0)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2) + '@ember-data/store': 5.3.3(@babel/core@7.24.0)(@ember-data/request@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/tracking': 5.3.3(@babel/core@7.24.0)(@glint/template@1.3.0)(ember-source@5.7.0) '@ember/edition-utils': 1.2.0 '@ember/string': 3.1.1 '@embroider/macros': 1.15.0(@glint/template@1.3.0) - '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0) + '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0)(@glint/template@1.3.0) broccoli-merge-trees: 4.2.0 ember-auto-import: 2.7.2(@glint/template@1.3.0)(webpack@5.90.3) ember-cli-babel: 8.2.0(@babel/core@7.24.0) @@ -8030,12 +8032,12 @@ packages: transitivePeerDependencies: - supports-color - /ember-mirage@0.3.0(@babel/core@7.24.0)(ember-source@5.7.0)(miragejs@0.1.48): + /ember-mirage@0.3.0(@babel/core@7.24.0)(@glint/template@1.3.0)(ember-source@5.7.0)(miragejs@0.1.48): resolution: {integrity: sha512-+jNSbWthGpQCVIvtMAok1WEBGGJDXG3hbdObaqEi4LiIuq2S6O2e/qZFlvgsn6LEy9QOCfuj9HuCys0rw0f1eA==} peerDependencies: miragejs: ^0.1.47 dependencies: - '@ember/test-helpers': 2.9.4(@babel/core@7.24.0)(ember-source@5.7.0) + '@ember/test-helpers': 2.9.4(@babel/core@7.24.0)(@glint/template@1.3.0)(ember-source@5.7.0) '@embroider/addon-shim': 1.8.7 active-inflector: 0.1.0 decorator-transforms: 1.1.0(@babel/core@7.24.0) @@ -8126,14 +8128,14 @@ packages: - webpack dev: false - /ember-qunit@8.0.2(@ember/test-helpers@3.3.0)(ember-source@5.7.0)(qunit@2.20.1): + /ember-qunit@8.0.2(@ember/test-helpers@3.3.0)(@glint/template@1.3.0)(ember-source@5.7.0)(qunit@2.20.1): resolution: {integrity: sha512-Rf60jeUTWNsF3Imf/FLujW/B/DFmKVXKmXO1lirTXjpertKfwRhp/3MnN8a/U/WyodTIsERkInGT1IqTtphCdQ==} peerDependencies: '@ember/test-helpers': '>=3.0.3' ember-source: '>=4.0.0' qunit: ^2.13.0 dependencies: - '@ember/test-helpers': 3.3.0(ember-source@5.7.0)(webpack@5.90.3) + '@ember/test-helpers': 3.3.0(@glint/template@1.3.0)(ember-source@5.7.0)(webpack@5.90.3) '@embroider/addon-shim': 1.8.7 '@embroider/macros': 1.15.0(@glint/template@1.3.0) ember-cli-test-loader: 3.1.0 diff --git a/test-app/package.json b/test-app/package.json index 54286cda..32690e14 100644 --- a/test-app/package.json +++ b/test-app/package.json @@ -47,6 +47,7 @@ "ember-cli-inject-live-reload": "^2.1.0", "ember-cli-sri": "^2.1.1", "ember-cli-terser": "^4.0.2", + "ember-concurrency": "^4.0.0", "ember-data": "~5.3.3", "ember-fetch": "^8.1.2", "ember-load-initializers": "^2.1.2", diff --git a/test-app/tests/integration/components/search-input-test.js b/test-app/tests/integration/components/search-input-test.js new file mode 100644 index 00000000..c7ee51fc --- /dev/null +++ b/test-app/tests/integration/components/search-input-test.js @@ -0,0 +1,76 @@ +import { module, test } from 'qunit'; +import { setupRenderingTest } from 'ember-qunit'; +import { render, fillIn, blur, waitFor } from '@ember/test-helpers'; +import { hbs } from 'ember-cli-htmlbars'; +import Service from '@ember/service'; +import mirageConfig from 'test-app/mirage/config'; +import { setupMirage } from 'ember-mirage/test-support'; + +// Stub page service +class PageStub extends Service { + pages = [ + { + id: 'examples', + title: 'Examples', + }, + { + id: 'index', + title: 'Home', + }, + ]; +} + +module('Integration | Component | search-input', function (hooks) { + setupRenderingTest(hooks); + setupMirage(hooks, { makeServer: mirageConfig }); + + hooks.beforeEach(async function () { + this.owner.register('service:page', PageStub); + }); + + test('it renders the inital search input without dropdown', async function (assert) { + await render(hbs``); + + assert.dom('[data-test-search-input]').exists(); + assert.dom('[data-test-search-dropdown]').doesNotExist(); + }); + + test('it renders the search dropdown while searching', async function (assert) { + await render(hbs``); + + await fillIn('[data-test-search-input]', 'query string'); + + assert.dom('[data-test-search-input]').hasValue('query string'); + assert.dom('[data-test-search-dropdown]').exists(); + }); + + test('it renders the search input with a closed dropdown after blur', async function (assert) { + await render(hbs``); + + await fillIn('[data-test-search-input]', 'query string'); + await waitFor('[data-test-search-result-item]'); + await blur('[data-test-search-input]'); + + assert.dom('[data-test-search-input]').hasValue('query string'); + assert.dom('[data-test-search-dropdown]').doesNotExist(); + }); + + test('it renders the results', async function (assert) { + await render(hbs``); + await fillIn('[data-test-search-input]', 'query string'); + + await waitFor('[data-test-search-result-item]'); + + assert.dom('[data-test-search-result-item]').exists({ count: 4 }); + }); + + test('it renders the no results message', async function (assert) { + this.searchService = this.owner.lookup('service:search'); + + await render(hbs``); + await fillIn('[data-test-search-input]', 'query string'); + this.searchService.results = []; + await waitFor('[data-test-search-noresults]'); + assert.dom('[data-test-search-noresults]').hasText('No results found.'); + }); +}); From 887a4089075fbe92d579192f5a936bedc7b524de Mon Sep 17 00:00:00 2001 From: Christoph Wiedenmann Date: Tue, 13 Aug 2024 15:10:02 +0200 Subject: [PATCH 3/6] fix: replace target _deprecations with _blank --- guidemaker-ember-template/src/components/search-input.hbs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/guidemaker-ember-template/src/components/search-input.hbs b/guidemaker-ember-template/src/components/search-input.hbs index 81f1d8ba..9c8b26fc 100644 --- a/guidemaker-ember-template/src/components/search-input.hbs +++ b/guidemaker-ember-template/src/components/search-input.hbs @@ -39,7 +39,8 @@ Try searching the deprecations guide . From 9e7d3b7e03885093a19aab9c113c2fbe7b58dec4 Mon Sep 17 00:00:00 2001 From: Christoph Wiedenmann Date: Tue, 13 Aug 2024 15:10:38 +0200 Subject: [PATCH 4/6] fix: set restartable on correct search task --- guidemaker-ember-template/src/components/search-input.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/guidemaker-ember-template/src/components/search-input.js b/guidemaker-ember-template/src/components/search-input.js index e6365880..ca38a56d 100644 --- a/guidemaker-ember-template/src/components/search-input.js +++ b/guidemaker-ember-template/src/components/search-input.js @@ -30,7 +30,7 @@ export default class SearchInputComponent extends Component { return this.query && this._focused; } - search = task(async (query) => { + search = task({ restartable: true }, async (query) => { await timeout(SEARCH_DEBOUNCE_PERIOD); this.query = query; @@ -46,7 +46,7 @@ export default class SearchInputComponent extends Component { await this.searchService.search.perform(query, this.args.projectVersion); }); - closeMenu = task({ restartable: true }, async () => { + closeMenu = task(async () => { await timeout(SEARCH_CLOSE_PERIOD); this._focused = false; From e9d28be7946e7b064dd052a14c9e5944f30cacd2 Mon Sep 17 00:00:00 2001 From: Christoph Wiedenmann Date: Sun, 16 Jun 2024 01:45:00 +0200 Subject: [PATCH 5/6] fix: remove ember-concurrency from test-app --- pnpm-lock.yaml | 158 +++++++++++++++++++++--------------------- test-app/package.json | 1 - 2 files changed, 78 insertions(+), 81 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 1c2ccf6a..29e65266 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -152,7 +152,7 @@ importers: version: 3.1.1 '@ember/test-helpers': specifier: ^3.3.0 - version: 3.3.0(@glint/template@1.3.0)(ember-source@5.7.0)(webpack@5.90.3) + version: 3.3.0(ember-source@5.7.0)(webpack@5.90.3) '@embroider/test-setup': specifier: ^3.0.1 version: 3.0.3 @@ -207,12 +207,9 @@ importers: ember-cli-terser: specifier: ^4.0.2 version: 4.0.2 - ember-concurrency: - specifier: ^4.0.0 - version: 4.0.0(@babel/core@7.24.0)(@glimmer/tracking@1.1.2)(@glint/template@1.3.0)(ember-source@5.7.0) ember-data: specifier: ~5.3.3 - version: 5.3.3(@babel/core@7.24.0)(@ember/string@3.1.1)(@glint/template@1.3.0)(ember-source@5.7.0) + version: 5.3.3(@babel/core@7.24.0)(@ember/string@3.1.1)(ember-source@5.7.0) ember-fetch: specifier: ^8.1.2 version: 8.1.2 @@ -221,7 +218,7 @@ importers: version: 2.1.2(@babel/core@7.24.0) ember-mirage: specifier: ^0.3.0 - version: 0.3.0(@babel/core@7.24.0)(@glint/template@1.3.0)(ember-source@5.7.0)(miragejs@0.1.48) + version: 0.3.0(@babel/core@7.24.0)(ember-source@5.7.0)(miragejs@0.1.48) ember-modifier: specifier: ^4.1.0 version: 4.1.0(ember-source@5.7.0) @@ -230,7 +227,7 @@ importers: version: 8.2.2(ember-source@5.7.0) ember-qunit: specifier: ^8.0.2 - version: 8.0.2(@ember/test-helpers@3.3.0)(@glint/template@1.3.0)(ember-source@5.7.0)(qunit@2.20.1) + version: 8.0.2(@ember/test-helpers@3.3.0)(ember-source@5.7.0)(qunit@2.20.1) ember-resolver: specifier: ^11.0.1 version: 11.0.1(ember-source@5.7.0) @@ -1751,7 +1748,7 @@ packages: postcss-selector-parser: 6.0.15 dev: true - /@ember-data/adapter@5.3.3(@babel/core@7.24.0)(@ember-data/legacy-compat@5.3.3)(@ember-data/store@5.3.3)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2): + /@ember-data/adapter@5.3.3(@babel/core@7.24.0)(@ember-data/legacy-compat@5.3.3)(@ember-data/store@5.3.3)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2): resolution: {integrity: sha512-lIOTYcOl2gVsoJ7Uh6MBwHrdwXBhRpnSZix4Wt0/DwBwlk3t3coujOTi06xi6LxN3F+wN+F++RZRkI1E5Jb+kQ==} engines: {node: '>= 18.19.1'} peerDependencies: @@ -1761,12 +1758,12 @@ packages: '@warp-drive/core-types': 0.0.0-beta.4 ember-inflector: ^4.0.2 dependencies: - '@ember-data/legacy-compat': 5.3.3(@babel/core@7.24.0)(@ember-data/graph@5.3.3)(@ember-data/json-api@5.3.3)(@ember-data/request@5.3.3)(@ember-data/store@5.3.3)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) - '@ember-data/private-build-infra': 5.3.3(@glint/template@1.3.0) - '@ember-data/store': 5.3.3(@babel/core@7.24.0)(@ember-data/request@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/legacy-compat': 5.3.3(@babel/core@7.24.0)(@ember-data/graph@5.3.3)(@ember-data/json-api@5.3.3)(@ember-data/request@5.3.3)(@ember-data/store@5.3.3)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/private-build-infra': 5.3.3 + '@ember-data/store': 5.3.3(@babel/core@7.24.0)(@ember-data/request@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4) '@ember/string': 3.1.1 '@embroider/macros': 1.15.0(@glint/template@1.3.0) - '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0)(@glint/template@1.3.0) + '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0) ember-cli-babel: 8.2.0(@babel/core@7.24.0) ember-cli-test-info: 1.0.0 ember-inflector: 4.0.2 @@ -1777,7 +1774,7 @@ packages: - supports-color dev: true - /@ember-data/debug@5.3.3(@ember-data/store@5.3.3)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4): + /@ember-data/debug@5.3.3(@ember-data/store@5.3.3)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4): resolution: {integrity: sha512-69o5rJC1FP3XurnYfFP3JYxcswHlp36fGYYp5YNG4VMHXk062ShJ6xZlqI/lKPioXFOHHf+8JKTYFDQJCz9s4g==} engines: {node: '>= 18.19.1'} peerDependencies: @@ -1786,12 +1783,12 @@ packages: '@warp-drive/core-types': 0.0.0-beta.4 dependencies: '@babel/core': 7.24.0 - '@ember-data/private-build-infra': 5.3.3(@glint/template@1.3.0) - '@ember-data/store': 5.3.3(@babel/core@7.24.0)(@ember-data/request@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/private-build-infra': 5.3.3 + '@ember-data/store': 5.3.3(@babel/core@7.24.0)(@ember-data/request@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4) '@ember/edition-utils': 1.2.0 '@ember/string': 3.1.1 '@embroider/macros': 1.15.0(@glint/template@1.3.0) - '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0)(@glint/template@1.3.0) + '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0) ember-auto-import: 2.7.2(@glint/template@1.3.0)(webpack@5.90.3) ember-cli-babel: 8.2.0(@babel/core@7.24.0) pnpm-sync-dependencies-meta-injected: 0.0.10 @@ -1805,18 +1802,18 @@ packages: - webpack-cli dev: true - /@ember-data/graph@5.3.3(@babel/core@7.24.0)(@ember-data/store@5.3.3)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4): + /@ember-data/graph@5.3.3(@babel/core@7.24.0)(@ember-data/store@5.3.3)(@warp-drive/core-types@0.0.0-beta.4): resolution: {integrity: sha512-GOIEHilq7X59fk0GTxKUX744XASvfnzwjtIy1JhcD9eNvWRgiaJVEdZD/UMFVmkrle+TckACMBsbwOoNyj/+9A==} engines: {node: '>= 18.19.1'} peerDependencies: '@ember-data/store': 5.3.3 '@warp-drive/core-types': 0.0.0-beta.4 dependencies: - '@ember-data/private-build-infra': 5.3.3(@glint/template@1.3.0) - '@ember-data/store': 5.3.3(@babel/core@7.24.0)(@ember-data/request@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/private-build-infra': 5.3.3 + '@ember-data/store': 5.3.3(@babel/core@7.24.0)(@ember-data/request@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4) '@ember/edition-utils': 1.2.0 '@embroider/macros': 1.15.0(@glint/template@1.3.0) - '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0)(@glint/template@1.3.0) + '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0) ember-cli-babel: 8.2.0(@babel/core@7.24.0) pnpm-sync-dependencies-meta-injected: 0.0.10 transitivePeerDependencies: @@ -1825,7 +1822,7 @@ packages: - supports-color dev: true - /@ember-data/json-api@5.3.3(@babel/core@7.24.0)(@ember-data/graph@5.3.3)(@ember-data/request-utils@5.3.3)(@ember-data/store@5.3.3)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2): + /@ember-data/json-api@5.3.3(@babel/core@7.24.0)(@ember-data/graph@5.3.3)(@ember-data/request-utils@5.3.3)(@ember-data/store@5.3.3)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2): resolution: {integrity: sha512-PoHdKuWNpHkZQYp3q1vt2Yx/j85vsRtzOFtM4hkmPPxaVViJkAfd21JgTML1/gOmLbbCaQrz8r8AxDWkPyemPA==} engines: {node: '>= 18.19.1'} peerDependencies: @@ -1838,13 +1835,13 @@ packages: '@ember-data/request-utils': optional: true dependencies: - '@ember-data/graph': 5.3.3(@babel/core@7.24.0)(@ember-data/store@5.3.3)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) - '@ember-data/private-build-infra': 5.3.3(@glint/template@1.3.0) + '@ember-data/graph': 5.3.3(@babel/core@7.24.0)(@ember-data/store@5.3.3)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/private-build-infra': 5.3.3 '@ember-data/request-utils': 5.3.3(@babel/core@7.24.0)(@warp-drive/core-types@0.0.0-beta.4) - '@ember-data/store': 5.3.3(@babel/core@7.24.0)(@ember-data/request@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/store': 5.3.3(@babel/core@7.24.0)(@ember-data/request@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4) '@ember/edition-utils': 1.2.0 '@embroider/macros': 1.15.0(@glint/template@1.3.0) - '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0)(@glint/template@1.3.0) + '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0) ember-cli-babel: 8.2.0(@babel/core@7.24.0) ember-inflector: 4.0.2 pnpm-sync-dependencies-meta-injected: 0.0.10 @@ -1854,7 +1851,7 @@ packages: - supports-color dev: true - /@ember-data/legacy-compat@5.3.3(@babel/core@7.24.0)(@ember-data/graph@5.3.3)(@ember-data/json-api@5.3.3)(@ember-data/request@5.3.3)(@ember-data/store@5.3.3)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4): + /@ember-data/legacy-compat@5.3.3(@babel/core@7.24.0)(@ember-data/graph@5.3.3)(@ember-data/json-api@5.3.3)(@ember-data/request@5.3.3)(@ember-data/store@5.3.3)(@warp-drive/core-types@0.0.0-beta.4): resolution: {integrity: sha512-VgGwFoa2Qv4wohAMzutvt1LtK9Gx9qwnuKzWQQzQikI438qYfTKbvtzLDei0GiABJwE6KRPD3EZUflw0xlm7xw==} engines: {node: '>= 18.19.1'} peerDependencies: @@ -1869,13 +1866,13 @@ packages: '@ember-data/json-api': optional: true dependencies: - '@ember-data/graph': 5.3.3(@babel/core@7.24.0)(@ember-data/store@5.3.3)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) - '@ember-data/json-api': 5.3.3(@babel/core@7.24.0)(@ember-data/graph@5.3.3)(@ember-data/request-utils@5.3.3)(@ember-data/store@5.3.3)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2) - '@ember-data/private-build-infra': 5.3.3(@glint/template@1.3.0) - '@ember-data/request': 5.3.3(@babel/core@7.24.0)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) - '@ember-data/store': 5.3.3(@babel/core@7.24.0)(@ember-data/request@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/graph': 5.3.3(@babel/core@7.24.0)(@ember-data/store@5.3.3)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/json-api': 5.3.3(@babel/core@7.24.0)(@ember-data/graph@5.3.3)(@ember-data/request-utils@5.3.3)(@ember-data/store@5.3.3)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2) + '@ember-data/private-build-infra': 5.3.3 + '@ember-data/request': 5.3.3(@babel/core@7.24.0)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/store': 5.3.3(@babel/core@7.24.0)(@ember-data/request@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4) '@embroider/macros': 1.15.0(@glint/template@1.3.0) - '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0)(@glint/template@1.3.0) + '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0) ember-cli-babel: 8.2.0(@babel/core@7.24.0) pnpm-sync-dependencies-meta-injected: 0.0.10 transitivePeerDependencies: @@ -1884,7 +1881,7 @@ packages: - supports-color dev: true - /@ember-data/model@5.3.3(@babel/core@7.24.0)(@ember-data/debug@5.3.3)(@ember-data/graph@5.3.3)(@ember-data/json-api@5.3.3)(@ember-data/legacy-compat@5.3.3)(@ember-data/store@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2): + /@ember-data/model@5.3.3(@babel/core@7.24.0)(@ember-data/debug@5.3.3)(@ember-data/graph@5.3.3)(@ember-data/json-api@5.3.3)(@ember-data/legacy-compat@5.3.3)(@ember-data/store@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2): resolution: {integrity: sha512-aP2wqSTmDFVBcY3x8kn1o54SYB7Gf8V6hFsYA497f46xbJA+FBj37NDdKsjepKIQaW0fqGFGUzVv2Le0zTaH2A==} engines: {node: '>= 18.19.1'} peerDependencies: @@ -1905,17 +1902,17 @@ packages: '@ember-data/json-api': optional: true dependencies: - '@ember-data/debug': 5.3.3(@ember-data/store@5.3.3)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) - '@ember-data/graph': 5.3.3(@babel/core@7.24.0)(@ember-data/store@5.3.3)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) - '@ember-data/json-api': 5.3.3(@babel/core@7.24.0)(@ember-data/graph@5.3.3)(@ember-data/request-utils@5.3.3)(@ember-data/store@5.3.3)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2) - '@ember-data/legacy-compat': 5.3.3(@babel/core@7.24.0)(@ember-data/graph@5.3.3)(@ember-data/json-api@5.3.3)(@ember-data/request@5.3.3)(@ember-data/store@5.3.3)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) - '@ember-data/private-build-infra': 5.3.3(@glint/template@1.3.0) - '@ember-data/store': 5.3.3(@babel/core@7.24.0)(@ember-data/request@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) - '@ember-data/tracking': 5.3.3(@babel/core@7.24.0)(@glint/template@1.3.0)(ember-source@5.7.0) + '@ember-data/debug': 5.3.3(@ember-data/store@5.3.3)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/graph': 5.3.3(@babel/core@7.24.0)(@ember-data/store@5.3.3)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/json-api': 5.3.3(@babel/core@7.24.0)(@ember-data/graph@5.3.3)(@ember-data/request-utils@5.3.3)(@ember-data/store@5.3.3)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2) + '@ember-data/legacy-compat': 5.3.3(@babel/core@7.24.0)(@ember-data/graph@5.3.3)(@ember-data/json-api@5.3.3)(@ember-data/request@5.3.3)(@ember-data/store@5.3.3)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/private-build-infra': 5.3.3 + '@ember-data/store': 5.3.3(@babel/core@7.24.0)(@ember-data/request@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/tracking': 5.3.3(@babel/core@7.24.0)(ember-source@5.7.0) '@ember/edition-utils': 1.2.0 '@ember/string': 3.1.1 '@embroider/macros': 1.15.0(@glint/template@1.3.0) - '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0)(@glint/template@1.3.0) + '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0) ember-cli-babel: 8.2.0(@babel/core@7.24.0) ember-cli-string-utils: 1.1.0 ember-cli-test-info: 1.0.0 @@ -1928,7 +1925,7 @@ packages: - supports-color dev: true - /@ember-data/private-build-infra@5.3.3(@glint/template@1.3.0): + /@ember-data/private-build-infra@5.3.3: resolution: {integrity: sha512-THWsVUVxkqiHvquGk1HSexSsYuMgDxCt/obOHNPnaC4vVMaL4CL++64LcnyZF+cEVfObA1W01h0zkp4+042UKg==} engines: {node: '>= 18.19.1'} dependencies: @@ -1960,7 +1957,7 @@ packages: - supports-color dev: true - /@ember-data/private-build-infra@5.4.0-beta.4(@glint/template@1.3.0): + /@ember-data/private-build-infra@5.4.0-beta.4: resolution: {integrity: sha512-xUh/YhgdNuWHgi2Y/9mmc53CnEw8bpXLpPoM+Rpdf6UTWbxLBBUXpwZqU43j+7K30MMt0+HwnRneu6YvFA0bMA==} engines: {node: '>= 18.19.1'} dependencies: @@ -1998,7 +1995,7 @@ packages: peerDependencies: '@warp-drive/core-types': 0.0.0-beta.4 dependencies: - '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0)(@glint/template@1.3.0) + '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0) ember-cli-babel: 8.2.0(@babel/core@7.24.0) pnpm-sync-dependencies-meta-injected: 0.0.10 transitivePeerDependencies: @@ -2006,16 +2003,16 @@ packages: - supports-color dev: true - /@ember-data/request@5.3.3(@babel/core@7.24.0)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4): + /@ember-data/request@5.3.3(@babel/core@7.24.0)(@warp-drive/core-types@0.0.0-beta.4): resolution: {integrity: sha512-M9KtskelSAGmtiHGYeB2sHpttksctrq2UYCKKGxNxMPCQ82E4s2jj1MHaLtxafD4o6gD46g/6FW3NjxxZlLXBw==} engines: {node: '>= 18.19.1'} peerDependencies: '@warp-drive/core-types': 0.0.0-beta.4 dependencies: - '@ember-data/private-build-infra': 5.3.3(@glint/template@1.3.0) + '@ember-data/private-build-infra': 5.3.3 '@ember/test-waiters': 3.1.0 '@embroider/macros': 1.15.0(@glint/template@1.3.0) - '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0)(@glint/template@1.3.0) + '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0) ember-cli-babel: 8.2.0(@babel/core@7.24.0) pnpm-sync-dependencies-meta-injected: 0.0.10 transitivePeerDependencies: @@ -2027,7 +2024,7 @@ packages: /@ember-data/rfc395-data@0.0.4: resolution: {integrity: sha512-tGRdvgC9/QMQSuSuJV45xoyhI0Pzjm7A9o/MVVA3HakXIImJbbzx/k/6dO9CUEQXIyS2y0fW6C1XaYOG7rY0FQ==} - /@ember-data/serializer@5.3.3(@babel/core@7.24.0)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2): + /@ember-data/serializer@5.3.3(@babel/core@7.24.0)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2): resolution: {integrity: sha512-UUjxAbo8FeMyGO0AFFuTPPj6wUIHo6yynbvyQz3qK7YDX+TrE4wVcYPKKgu04BQ0ntWaNUVxmX5eLbMuvMOfcQ==} engines: {node: '>= 18.19.1'} peerDependencies: @@ -2035,10 +2032,10 @@ packages: '@warp-drive/core-types': 0.0.0-beta.4 ember-inflector: ^4.0.2 dependencies: - '@ember-data/private-build-infra': 5.3.3(@glint/template@1.3.0) + '@ember-data/private-build-infra': 5.3.3 '@ember/string': 3.1.1 '@embroider/macros': 1.15.0(@glint/template@1.3.0) - '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0)(@glint/template@1.3.0) + '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0) ember-cli-babel: 8.2.0(@babel/core@7.24.0) ember-cli-test-info: 1.0.0 ember-inflector: 4.0.2 @@ -2049,7 +2046,7 @@ packages: - supports-color dev: true - /@ember-data/store@5.3.3(@babel/core@7.24.0)(@ember-data/request@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4): + /@ember-data/store@5.3.3(@babel/core@7.24.0)(@ember-data/request@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4): resolution: {integrity: sha512-3a5yEKO/d7a9c9lTtqUUmgp3LBXeya099P4P7yZ3OpXLEkoH+ZZIogAkOoZX6Z/83lEv6b0NIXWqeUyhT6/Fxw==} engines: {node: '>= 18.19.1'} peerDependencies: @@ -2058,12 +2055,12 @@ packages: '@ember/string': ^3.1.1 '@warp-drive/core-types': 0.0.0-beta.4 dependencies: - '@ember-data/private-build-infra': 5.3.3(@glint/template@1.3.0) - '@ember-data/request': 5.3.3(@babel/core@7.24.0)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) - '@ember-data/tracking': 5.3.3(@babel/core@7.24.0)(@glint/template@1.3.0)(ember-source@5.7.0) + '@ember-data/private-build-infra': 5.3.3 + '@ember-data/request': 5.3.3(@babel/core@7.24.0)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/tracking': 5.3.3(@babel/core@7.24.0)(ember-source@5.7.0) '@ember/string': 3.1.1 '@embroider/macros': 1.15.0(@glint/template@1.3.0) - '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0)(@glint/template@1.3.0) + '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0) ember-cli-babel: 8.2.0(@babel/core@7.24.0) pnpm-sync-dependencies-meta-injected: 0.0.10 transitivePeerDependencies: @@ -2072,13 +2069,13 @@ packages: - supports-color dev: true - /@ember-data/tracking@5.3.3(@babel/core@7.24.0)(@glint/template@1.3.0)(ember-source@5.7.0): + /@ember-data/tracking@5.3.3(@babel/core@7.24.0)(ember-source@5.7.0): resolution: {integrity: sha512-P55BYk/nG1x+PT1xkDQVVaMhoTFv0wDUvLuRIyrKOT3QylQGeCAuYbzWDyLe6aMjL/655ctcUoQxuNdLjcVzMQ==} engines: {node: '>= 18.19.1'} dependencies: - '@ember-data/private-build-infra': 5.3.3(@glint/template@1.3.0) + '@ember-data/private-build-infra': 5.3.3 '@embroider/macros': 1.15.0(@glint/template@1.3.0) - ember-cached-decorator-polyfill: 1.0.2(@babel/core@7.24.0)(@glint/template@1.3.0)(ember-source@5.7.0) + ember-cached-decorator-polyfill: 1.0.2(@babel/core@7.24.0)(ember-source@5.7.0) ember-cli-babel: 8.2.0(@babel/core@7.24.0) pnpm-sync-dependencies-meta-injected: 0.0.10 transitivePeerDependencies: @@ -2133,7 +2130,7 @@ packages: transitivePeerDependencies: - supports-color - /@ember/test-helpers@2.9.4(@babel/core@7.24.0)(@glint/template@1.3.0)(ember-source@5.7.0): + /@ember/test-helpers@2.9.4(@babel/core@7.24.0)(ember-source@5.7.0): resolution: {integrity: sha512-z+Qs1NYWyIVDmrY6WdmOS5mdG1lJ5CFfzh6dRhLfs9lq45deDaDrVNcaCYhnNeJZTvUBK2XR2SvPcZm0RloXdA==} engines: {node: 10.* || 12.* || 14.* || 15.* || >= 16.*} peerDependencies: @@ -2155,7 +2152,7 @@ packages: - supports-color dev: true - /@ember/test-helpers@3.3.0(@glint/template@1.3.0)(ember-source@5.7.0)(webpack@5.90.3): + /@ember/test-helpers@3.3.0(ember-source@5.7.0)(webpack@5.90.3): resolution: {integrity: sha512-HEI28wtjnQuEj9+DstHUEEKPtqPAEVN9AAVr4EifVCd3DyEDy0m6hFT4qbap1WxAIktLja2QXGJg50lVWzZc5g==} engines: {node: 16.* || >= 18} peerDependencies: @@ -4103,11 +4100,11 @@ packages: resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} dev: true - /@warp-drive/core-types@0.0.0-beta.4(@babel/core@7.24.0)(@glint/template@1.3.0): + /@warp-drive/core-types@0.0.0-beta.4(@babel/core@7.24.0): resolution: {integrity: sha512-DDvcM6FkJEw74RyAqfD0TZatJgYBfk9+J+dSrczFhpnJP9S2+uyu1fCoXePlTRUfssWTVzYwz1vGNFN61sJqBQ==} engines: {node: '>= 18.19.1'} dependencies: - '@ember-data/private-build-infra': 5.4.0-beta.4(@glint/template@1.3.0) + '@ember-data/private-build-infra': 5.4.0-beta.4 ember-cli-babel: 8.2.0(@babel/core@7.24.0) pnpm-sync-dependencies-meta-injected: 0.0.10 transitivePeerDependencies: @@ -7127,7 +7124,7 @@ packages: - supports-color dev: true - /ember-cached-decorator-polyfill@1.0.2(@babel/core@7.24.0)(@glint/template@1.3.0)(ember-source@5.7.0): + /ember-cached-decorator-polyfill@1.0.2(@babel/core@7.24.0)(ember-source@5.7.0): resolution: {integrity: sha512-hUX6OYTKltAPAu8vsVZK02BfMTV0OUXrPqvRahYPhgS7D0I6joLjlskd7mhqJMcaXLywqceIy8/s+x8bxF8bpQ==} engines: {node: 14.* || >= 16} peerDependencies: @@ -7835,29 +7832,30 @@ packages: transitivePeerDependencies: - '@babel/core' - supports-color + dev: false - /ember-data@5.3.3(@babel/core@7.24.0)(@ember/string@3.1.1)(@glint/template@1.3.0)(ember-source@5.7.0): + /ember-data@5.3.3(@babel/core@7.24.0)(@ember/string@3.1.1)(ember-source@5.7.0): resolution: {integrity: sha512-T8+cfFtkZ9hPZ+7t1SAjXkAqvW3dSpY83IuOzUZf7kgoiJkR0C3cQTBteULrseDR9GoKQOkmiWrTphRzyy9RFg==} engines: {node: '>= 18.19.1'} peerDependencies: '@ember/string': ^3.1.1 dependencies: - '@ember-data/adapter': 5.3.3(@babel/core@7.24.0)(@ember-data/legacy-compat@5.3.3)(@ember-data/store@5.3.3)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2) - '@ember-data/debug': 5.3.3(@ember-data/store@5.3.3)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) - '@ember-data/graph': 5.3.3(@babel/core@7.24.0)(@ember-data/store@5.3.3)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) - '@ember-data/json-api': 5.3.3(@babel/core@7.24.0)(@ember-data/graph@5.3.3)(@ember-data/request-utils@5.3.3)(@ember-data/store@5.3.3)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2) - '@ember-data/legacy-compat': 5.3.3(@babel/core@7.24.0)(@ember-data/graph@5.3.3)(@ember-data/json-api@5.3.3)(@ember-data/request@5.3.3)(@ember-data/store@5.3.3)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) - '@ember-data/model': 5.3.3(@babel/core@7.24.0)(@ember-data/debug@5.3.3)(@ember-data/graph@5.3.3)(@ember-data/json-api@5.3.3)(@ember-data/legacy-compat@5.3.3)(@ember-data/store@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2) - '@ember-data/private-build-infra': 5.3.3(@glint/template@1.3.0) - '@ember-data/request': 5.3.3(@babel/core@7.24.0)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/adapter': 5.3.3(@babel/core@7.24.0)(@ember-data/legacy-compat@5.3.3)(@ember-data/store@5.3.3)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2) + '@ember-data/debug': 5.3.3(@ember-data/store@5.3.3)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/graph': 5.3.3(@babel/core@7.24.0)(@ember-data/store@5.3.3)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/json-api': 5.3.3(@babel/core@7.24.0)(@ember-data/graph@5.3.3)(@ember-data/request-utils@5.3.3)(@ember-data/store@5.3.3)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2) + '@ember-data/legacy-compat': 5.3.3(@babel/core@7.24.0)(@ember-data/graph@5.3.3)(@ember-data/json-api@5.3.3)(@ember-data/request@5.3.3)(@ember-data/store@5.3.3)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/model': 5.3.3(@babel/core@7.24.0)(@ember-data/debug@5.3.3)(@ember-data/graph@5.3.3)(@ember-data/json-api@5.3.3)(@ember-data/legacy-compat@5.3.3)(@ember-data/store@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2) + '@ember-data/private-build-infra': 5.3.3 + '@ember-data/request': 5.3.3(@babel/core@7.24.0)(@warp-drive/core-types@0.0.0-beta.4) '@ember-data/request-utils': 5.3.3(@babel/core@7.24.0)(@warp-drive/core-types@0.0.0-beta.4) - '@ember-data/serializer': 5.3.3(@babel/core@7.24.0)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2) - '@ember-data/store': 5.3.3(@babel/core@7.24.0)(@ember-data/request@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@glint/template@1.3.0)(@warp-drive/core-types@0.0.0-beta.4) - '@ember-data/tracking': 5.3.3(@babel/core@7.24.0)(@glint/template@1.3.0)(ember-source@5.7.0) + '@ember-data/serializer': 5.3.3(@babel/core@7.24.0)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4)(ember-inflector@4.0.2) + '@ember-data/store': 5.3.3(@babel/core@7.24.0)(@ember-data/request@5.3.3)(@ember-data/tracking@5.3.3)(@ember/string@3.1.1)(@warp-drive/core-types@0.0.0-beta.4) + '@ember-data/tracking': 5.3.3(@babel/core@7.24.0)(ember-source@5.7.0) '@ember/edition-utils': 1.2.0 '@ember/string': 3.1.1 '@embroider/macros': 1.15.0(@glint/template@1.3.0) - '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0)(@glint/template@1.3.0) + '@warp-drive/core-types': 0.0.0-beta.4(@babel/core@7.24.0) broccoli-merge-trees: 4.2.0 ember-auto-import: 2.7.2(@glint/template@1.3.0)(webpack@5.90.3) ember-cli-babel: 8.2.0(@babel/core@7.24.0) @@ -8032,12 +8030,12 @@ packages: transitivePeerDependencies: - supports-color - /ember-mirage@0.3.0(@babel/core@7.24.0)(@glint/template@1.3.0)(ember-source@5.7.0)(miragejs@0.1.48): + /ember-mirage@0.3.0(@babel/core@7.24.0)(ember-source@5.7.0)(miragejs@0.1.48): resolution: {integrity: sha512-+jNSbWthGpQCVIvtMAok1WEBGGJDXG3hbdObaqEi4LiIuq2S6O2e/qZFlvgsn6LEy9QOCfuj9HuCys0rw0f1eA==} peerDependencies: miragejs: ^0.1.47 dependencies: - '@ember/test-helpers': 2.9.4(@babel/core@7.24.0)(@glint/template@1.3.0)(ember-source@5.7.0) + '@ember/test-helpers': 2.9.4(@babel/core@7.24.0)(ember-source@5.7.0) '@embroider/addon-shim': 1.8.7 active-inflector: 0.1.0 decorator-transforms: 1.1.0(@babel/core@7.24.0) @@ -8128,14 +8126,14 @@ packages: - webpack dev: false - /ember-qunit@8.0.2(@ember/test-helpers@3.3.0)(@glint/template@1.3.0)(ember-source@5.7.0)(qunit@2.20.1): + /ember-qunit@8.0.2(@ember/test-helpers@3.3.0)(ember-source@5.7.0)(qunit@2.20.1): resolution: {integrity: sha512-Rf60jeUTWNsF3Imf/FLujW/B/DFmKVXKmXO1lirTXjpertKfwRhp/3MnN8a/U/WyodTIsERkInGT1IqTtphCdQ==} peerDependencies: '@ember/test-helpers': '>=3.0.3' ember-source: '>=4.0.0' qunit: ^2.13.0 dependencies: - '@ember/test-helpers': 3.3.0(@glint/template@1.3.0)(ember-source@5.7.0)(webpack@5.90.3) + '@ember/test-helpers': 3.3.0(ember-source@5.7.0)(webpack@5.90.3) '@embroider/addon-shim': 1.8.7 '@embroider/macros': 1.15.0(@glint/template@1.3.0) ember-cli-test-loader: 3.1.0 diff --git a/test-app/package.json b/test-app/package.json index 32690e14..54286cda 100644 --- a/test-app/package.json +++ b/test-app/package.json @@ -47,7 +47,6 @@ "ember-cli-inject-live-reload": "^2.1.0", "ember-cli-sri": "^2.1.1", "ember-cli-terser": "^4.0.2", - "ember-concurrency": "^4.0.0", "ember-data": "~5.3.3", "ember-fetch": "^8.1.2", "ember-load-initializers": "^2.1.2", From 4443b0b61d0d5d7c0147e49420215654215df914 Mon Sep 17 00:00:00 2001 From: Katie Gengler Date: Tue, 3 Dec 2024 13:44:27 -0500 Subject: [PATCH 6/6] Kick CI