diff --git a/app/models/index.js b/app/models/index.js index f2cf86d..5dab0eb 100644 --- a/app/models/index.js +++ b/app/models/index.js @@ -1,7 +1,35 @@ +import query from '../utils/query'; +import { TrackedArray } from 'tracked-built-ins'; + export default class Index { constructor(data) { for (const key in data) { this[key] = data[key]; } } + + get indexPath() { + return `indexes/${this.uid}`; + } + + getSortableAttributes() { + return query(`${this.indexPath}/settings/sortable-attributes`).then( + (result) => new TrackedArray(result) + ); + } + + getStats() { + return query(`${this.indexPath}/stats`); + } + + getSettings() { + return query(`${this.indexPath}/settings`); + } + + search(q) { + return query(`${this.indexPath}/search`, { + method: 'POST', + body: JSON.stringify({ q }), + }); + } } diff --git a/app/services/meilisearch.js b/app/services/meilisearch.js index 3922b21..1b2a87d 100644 --- a/app/services/meilisearch.js +++ b/app/services/meilisearch.js @@ -1,23 +1,10 @@ import Service from '@ember/service'; import Index from '../models/index'; +import query from '../utils/query'; export default class MeilisearchService extends Service { - query(path, options) { - const host = 'http://127.0.0.1:7700'; - const url = `${host}/${path}`; - const defaultOptions = { - headers: { - 'Content-Type': 'application/json', - }, - }; - - return fetch(url, Object.assign(defaultOptions, options)).then((response) => - response.json() - ); - } - getIndexes() { - return this.query('indexes').then((indexes) => + return query('indexes').then((indexes) => indexes.map((item) => new Index(item)) ); } diff --git a/app/utils/query.js b/app/utils/query.js new file mode 100644 index 0000000..5cc8e29 --- /dev/null +++ b/app/utils/query.js @@ -0,0 +1,14 @@ +const host = 'http://127.0.0.1:7700'; + +export default function query(path, options) { + const url = `${host}/${path}`; + const defaultOptions = { + headers: { + 'Content-Type': 'application/json', + }, + }; + + return fetch(url, Object.assign(defaultOptions, options)).then((response) => + response.json() + ); +} diff --git a/package-lock.json b/package-lock.json index 645aa77..badc78b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -75,6 +75,7 @@ "qunit": "^2.18.0", "qunit-dom": "^2.0.0", "tailwindcss": "^3.0.23", + "tracked-built-ins": "^2.0.1", "webpack": "^5.72.0" }, "engines": { @@ -17594,6 +17595,237 @@ "node": "8.* || >= 10.*" } }, + "node_modules/ember-tracked-storage-polyfill": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/ember-tracked-storage-polyfill/-/ember-tracked-storage-polyfill-1.0.0.tgz", + "integrity": "sha512-eL7lZat68E6P/D7b9UoTB5bB5Oh/0aju0Z7PCMi3aTwhaydRaxloE7TGrTRYU+NdJuyNVZXeGyxFxn2frvd3TA==", + "dev": true, + "dependencies": { + "ember-cli-babel": "^7.26.3", + "ember-cli-htmlbars": "^5.7.1" + }, + "engines": { + "node": "12.* || >= 14" + } + }, + "node_modules/ember-tracked-storage-polyfill/node_modules/async-disk-cache": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/async-disk-cache/-/async-disk-cache-2.1.0.tgz", + "integrity": "sha512-iH+boep2xivfD9wMaZWkywYIURSmsL96d6MoqrC94BnGSvXE4Quf8hnJiHGFYhw/nLeIa1XyRaf4vvcvkwAefg==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "heimdalljs": "^0.2.3", + "istextorbinary": "^2.5.1", + "mkdirp": "^0.5.0", + "rimraf": "^3.0.0", + "rsvp": "^4.8.5", + "username-sync": "^1.0.2" + }, + "engines": { + "node": "8.* || >= 10.*" + } + }, + "node_modules/ember-tracked-storage-polyfill/node_modules/broccoli-persistent-filter": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/broccoli-persistent-filter/-/broccoli-persistent-filter-3.1.2.tgz", + "integrity": "sha512-CbU95RXXVyy+eJV9XTiHUC7NnsY3EvdVrGzp3YgyvO2bzXZFE5/GzDp4X/VQqX+jsk4qyT1HvMOF0sD1DX68TQ==", + "dev": true, + "dependencies": { + "async-disk-cache": "^2.0.0", + "async-promise-queue": "^1.0.3", + "broccoli-plugin": "^4.0.3", + "fs-tree-diff": "^2.0.0", + "hash-for-dep": "^1.5.0", + "heimdalljs": "^0.2.1", + "heimdalljs-logger": "^0.1.7", + "promise-map-series": "^0.2.1", + "rimraf": "^3.0.0", + "symlink-or-copy": "^1.0.1", + "sync-disk-cache": "^2.0.0" + }, + "engines": { + "node": "10.* || >= 12.*" + } + }, + "node_modules/ember-tracked-storage-polyfill/node_modules/broccoli-plugin": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/broccoli-plugin/-/broccoli-plugin-4.0.7.tgz", + "integrity": "sha512-a4zUsWtA1uns1K7p9rExYVYG99rdKeGRymW0qOCNkvDPHQxVi3yVyJHhQbM3EZwdt2E0mnhr5e0c/bPpJ7p3Wg==", + "dev": true, + "dependencies": { + "broccoli-node-api": "^1.7.0", + "broccoli-output-wrapper": "^3.2.5", + "fs-merger": "^3.2.1", + "promise-map-series": "^0.3.0", + "quick-temp": "^0.1.8", + "rimraf": "^3.0.2", + "symlink-or-copy": "^1.3.1" + }, + "engines": { + "node": "10.* || >= 12.*" + } + }, + "node_modules/ember-tracked-storage-polyfill/node_modules/broccoli-plugin/node_modules/promise-map-series": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/promise-map-series/-/promise-map-series-0.3.0.tgz", + "integrity": "sha512-3npG2NGhTc8BWBolLLf8l/92OxMGaRLbqvIh9wjCHhDXNvk4zsxaTaCpiCunW09qWPrN2zeNSNwRLVBrQQtutA==", + "dev": true, + "engines": { + "node": "10.* || >= 12.*" + } + }, + "node_modules/ember-tracked-storage-polyfill/node_modules/editions": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/editions/-/editions-2.3.1.tgz", + "integrity": "sha512-ptGvkwTvGdGfC0hfhKg0MT+TRLRKGtUiWGBInxOm5pz7ssADezahjCUaYuZ8Dr+C05FW0AECIIPt4WBxVINEhA==", + "dev": true, + "dependencies": { + "errlop": "^2.0.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=0.8" + }, + "funding": { + "url": "https://bevry.me/fund" + } + }, + "node_modules/ember-tracked-storage-polyfill/node_modules/editions/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/ember-tracked-storage-polyfill/node_modules/ember-cli-htmlbars": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/ember-cli-htmlbars/-/ember-cli-htmlbars-5.7.2.tgz", + "integrity": "sha512-Uj6R+3TtBV5RZoJY14oZn/sNPnc+UgmC8nb5rI4P3fR/gYoyTFIZSXiIM7zl++IpMoIrocxOrgt+mhonKphgGg==", + "dev": true, + "dependencies": { + "@ember/edition-utils": "^1.2.0", + "babel-plugin-htmlbars-inline-precompile": "^5.0.0", + "broccoli-debug": "^0.6.5", + "broccoli-persistent-filter": "^3.1.2", + "broccoli-plugin": "^4.0.3", + "common-tags": "^1.8.0", + "ember-cli-babel-plugin-helpers": "^1.1.1", + "ember-cli-version-checker": "^5.1.2", + "fs-tree-diff": "^2.0.1", + "hash-for-dep": "^1.5.1", + "heimdalljs-logger": "^0.1.10", + "json-stable-stringify": "^1.0.1", + "semver": "^7.3.4", + "silent-error": "^1.1.1", + "strip-bom": "^4.0.0", + "walk-sync": "^2.2.0" + }, + "engines": { + "node": "10.* || >= 12.*" + } + }, + "node_modules/ember-tracked-storage-polyfill/node_modules/fs-tree-diff": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fs-tree-diff/-/fs-tree-diff-2.0.1.tgz", + "integrity": "sha512-x+CfAZ/lJHQqwlD64pYM5QxWjzWhSjroaVsr8PW831zOApL55qPibed0c+xebaLWVr2BnHFoHdrwOv8pzt8R5A==", + "dev": true, + "dependencies": { + "@types/symlink-or-copy": "^1.2.0", + "heimdalljs-logger": "^0.1.7", + "object-assign": "^4.1.0", + "path-posix": "^1.0.0", + "symlink-or-copy": "^1.1.8" + }, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/ember-tracked-storage-polyfill/node_modules/istextorbinary": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/istextorbinary/-/istextorbinary-2.6.0.tgz", + "integrity": "sha512-+XRlFseT8B3L9KyjxxLjfXSLMuErKDsd8DBNrsaxoViABMEZlOSCstwmw0qpoFX3+U6yWU1yhLudAe6/lETGGA==", + "dev": true, + "dependencies": { + "binaryextensions": "^2.1.2", + "editions": "^2.2.0", + "textextensions": "^2.5.0" + }, + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://bevry.me/fund" + } + }, + "node_modules/ember-tracked-storage-polyfill/node_modules/minimist": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", + "dev": true + }, + "node_modules/ember-tracked-storage-polyfill/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/ember-tracked-storage-polyfill/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/ember-tracked-storage-polyfill/node_modules/rsvp": { + "version": "4.8.5", + "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz", + "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==", + "dev": true, + "engines": { + "node": "6.* || >= 7.*" + } + }, + "node_modules/ember-tracked-storage-polyfill/node_modules/strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ember-tracked-storage-polyfill/node_modules/walk-sync": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/walk-sync/-/walk-sync-2.2.0.tgz", + "integrity": "sha512-IC8sL7aB4/ZgFcGI2T1LczZeFWZ06b3zoHH7jBPyHxOtIIz1jppWHjjEXkOFvFojBVAK9pV7g47xOZ4LW3QLfg==", + "dev": true, + "dependencies": { + "@types/minimatch": "^3.0.3", + "ensure-posix-path": "^1.1.0", + "matcher-collection": "^2.0.0", + "minimatch": "^3.0.4" + }, + "engines": { + "node": "8.* || >= 10.*" + } + }, "node_modules/ember-truth-helpers": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/ember-truth-helpers/-/ember-truth-helpers-3.0.0.tgz", @@ -27693,6 +27925,36 @@ "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=", "dev": true }, + "node_modules/tracked-built-ins": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/tracked-built-ins/-/tracked-built-ins-2.0.1.tgz", + "integrity": "sha512-v0DwPVNm3zA4cmJLpcBJxJfKefN6ldhkc8l5YA+cWHq7kI8WMUcXjIXgl/AIxmt1SoO1bwPdpikPRHHrIBDtFQ==", + "dev": true, + "dependencies": { + "ember-cli-babel": "^7.26.10", + "ember-cli-typescript": "^4.1.0", + "ember-tracked-storage-polyfill": "^1.0.0", + "tracked-maps-and-sets": "^3.0.2" + }, + "engines": { + "node": "12.* || >= 14.*" + } + }, + "node_modules/tracked-maps-and-sets": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/tracked-maps-and-sets/-/tracked-maps-and-sets-3.0.2.tgz", + "integrity": "sha512-UIRcWsX1kDOcC/Q2R58weYWlw01EnmWWBwUv3okWS+zMBvsgIfYoO6veHhuNE3hgzWCEImNp46QS5CyKnw5QUA==", + "dev": true, + "dependencies": { + "@glimmer/tracking": "^1.0.0", + "ember-cli-babel": "^7.26.6", + "ember-cli-typescript": "^4.2.1", + "ember-tracked-storage-polyfill": "1.0.0" + }, + "engines": { + "node": "12.* || >= 14" + } + }, "node_modules/tree-sync": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/tree-sync/-/tree-sync-1.4.0.tgz", @@ -43660,6 +43922,189 @@ } } }, + "ember-tracked-storage-polyfill": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/ember-tracked-storage-polyfill/-/ember-tracked-storage-polyfill-1.0.0.tgz", + "integrity": "sha512-eL7lZat68E6P/D7b9UoTB5bB5Oh/0aju0Z7PCMi3aTwhaydRaxloE7TGrTRYU+NdJuyNVZXeGyxFxn2frvd3TA==", + "dev": true, + "requires": { + "ember-cli-babel": "^7.26.3", + "ember-cli-htmlbars": "^5.7.1" + }, + "dependencies": { + "async-disk-cache": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/async-disk-cache/-/async-disk-cache-2.1.0.tgz", + "integrity": "sha512-iH+boep2xivfD9wMaZWkywYIURSmsL96d6MoqrC94BnGSvXE4Quf8hnJiHGFYhw/nLeIa1XyRaf4vvcvkwAefg==", + "dev": true, + "requires": { + "debug": "^4.1.1", + "heimdalljs": "^0.2.3", + "istextorbinary": "^2.5.1", + "mkdirp": "^0.5.0", + "rimraf": "^3.0.0", + "rsvp": "^4.8.5", + "username-sync": "^1.0.2" + } + }, + "broccoli-persistent-filter": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/broccoli-persistent-filter/-/broccoli-persistent-filter-3.1.2.tgz", + "integrity": "sha512-CbU95RXXVyy+eJV9XTiHUC7NnsY3EvdVrGzp3YgyvO2bzXZFE5/GzDp4X/VQqX+jsk4qyT1HvMOF0sD1DX68TQ==", + "dev": true, + "requires": { + "async-disk-cache": "^2.0.0", + "async-promise-queue": "^1.0.3", + "broccoli-plugin": "^4.0.3", + "fs-tree-diff": "^2.0.0", + "hash-for-dep": "^1.5.0", + "heimdalljs": "^0.2.1", + "heimdalljs-logger": "^0.1.7", + "promise-map-series": "^0.2.1", + "rimraf": "^3.0.0", + "symlink-or-copy": "^1.0.1", + "sync-disk-cache": "^2.0.0" + } + }, + "broccoli-plugin": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/broccoli-plugin/-/broccoli-plugin-4.0.7.tgz", + "integrity": "sha512-a4zUsWtA1uns1K7p9rExYVYG99rdKeGRymW0qOCNkvDPHQxVi3yVyJHhQbM3EZwdt2E0mnhr5e0c/bPpJ7p3Wg==", + "dev": true, + "requires": { + "broccoli-node-api": "^1.7.0", + "broccoli-output-wrapper": "^3.2.5", + "fs-merger": "^3.2.1", + "promise-map-series": "^0.3.0", + "quick-temp": "^0.1.8", + "rimraf": "^3.0.2", + "symlink-or-copy": "^1.3.1" + }, + "dependencies": { + "promise-map-series": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/promise-map-series/-/promise-map-series-0.3.0.tgz", + "integrity": "sha512-3npG2NGhTc8BWBolLLf8l/92OxMGaRLbqvIh9wjCHhDXNvk4zsxaTaCpiCunW09qWPrN2zeNSNwRLVBrQQtutA==", + "dev": true + } + } + }, + "editions": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/editions/-/editions-2.3.1.tgz", + "integrity": "sha512-ptGvkwTvGdGfC0hfhKg0MT+TRLRKGtUiWGBInxOm5pz7ssADezahjCUaYuZ8Dr+C05FW0AECIIPt4WBxVINEhA==", + "dev": true, + "requires": { + "errlop": "^2.0.0", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "ember-cli-htmlbars": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/ember-cli-htmlbars/-/ember-cli-htmlbars-5.7.2.tgz", + "integrity": "sha512-Uj6R+3TtBV5RZoJY14oZn/sNPnc+UgmC8nb5rI4P3fR/gYoyTFIZSXiIM7zl++IpMoIrocxOrgt+mhonKphgGg==", + "dev": true, + "requires": { + "@ember/edition-utils": "^1.2.0", + "babel-plugin-htmlbars-inline-precompile": "^5.0.0", + "broccoli-debug": "^0.6.5", + "broccoli-persistent-filter": "^3.1.2", + "broccoli-plugin": "^4.0.3", + "common-tags": "^1.8.0", + "ember-cli-babel-plugin-helpers": "^1.1.1", + "ember-cli-version-checker": "^5.1.2", + "fs-tree-diff": "^2.0.1", + "hash-for-dep": "^1.5.1", + "heimdalljs-logger": "^0.1.10", + "json-stable-stringify": "^1.0.1", + "semver": "^7.3.4", + "silent-error": "^1.1.1", + "strip-bom": "^4.0.0", + "walk-sync": "^2.2.0" + } + }, + "fs-tree-diff": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fs-tree-diff/-/fs-tree-diff-2.0.1.tgz", + "integrity": "sha512-x+CfAZ/lJHQqwlD64pYM5QxWjzWhSjroaVsr8PW831zOApL55qPibed0c+xebaLWVr2BnHFoHdrwOv8pzt8R5A==", + "dev": true, + "requires": { + "@types/symlink-or-copy": "^1.2.0", + "heimdalljs-logger": "^0.1.7", + "object-assign": "^4.1.0", + "path-posix": "^1.0.0", + "symlink-or-copy": "^1.1.8" + } + }, + "istextorbinary": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/istextorbinary/-/istextorbinary-2.6.0.tgz", + "integrity": "sha512-+XRlFseT8B3L9KyjxxLjfXSLMuErKDsd8DBNrsaxoViABMEZlOSCstwmw0qpoFX3+U6yWU1yhLudAe6/lETGGA==", + "dev": true, + "requires": { + "binaryextensions": "^2.1.2", + "editions": "^2.2.0", + "textextensions": "^2.5.0" + } + }, + "minimist": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", + "dev": true + }, + "mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "requires": { + "minimist": "^1.2.6" + } + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "rsvp": { + "version": "4.8.5", + "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz", + "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==", + "dev": true + }, + "strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "dev": true + }, + "walk-sync": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/walk-sync/-/walk-sync-2.2.0.tgz", + "integrity": "sha512-IC8sL7aB4/ZgFcGI2T1LczZeFWZ06b3zoHH7jBPyHxOtIIz1jppWHjjEXkOFvFojBVAK9pV7g47xOZ4LW3QLfg==", + "dev": true, + "requires": { + "@types/minimatch": "^3.0.3", + "ensure-posix-path": "^1.1.0", + "matcher-collection": "^2.0.0", + "minimatch": "^3.0.4" + } + } + } + }, "ember-truth-helpers": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/ember-truth-helpers/-/ember-truth-helpers-3.0.0.tgz", @@ -51661,6 +52106,30 @@ "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=", "dev": true }, + "tracked-built-ins": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/tracked-built-ins/-/tracked-built-ins-2.0.1.tgz", + "integrity": "sha512-v0DwPVNm3zA4cmJLpcBJxJfKefN6ldhkc8l5YA+cWHq7kI8WMUcXjIXgl/AIxmt1SoO1bwPdpikPRHHrIBDtFQ==", + "dev": true, + "requires": { + "ember-cli-babel": "^7.26.10", + "ember-cli-typescript": "^4.1.0", + "ember-tracked-storage-polyfill": "^1.0.0", + "tracked-maps-and-sets": "^3.0.2" + } + }, + "tracked-maps-and-sets": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/tracked-maps-and-sets/-/tracked-maps-and-sets-3.0.2.tgz", + "integrity": "sha512-UIRcWsX1kDOcC/Q2R58weYWlw01EnmWWBwUv3okWS+zMBvsgIfYoO6veHhuNE3hgzWCEImNp46QS5CyKnw5QUA==", + "dev": true, + "requires": { + "@glimmer/tracking": "^1.0.0", + "ember-cli-babel": "^7.26.6", + "ember-cli-typescript": "^4.2.1", + "ember-tracked-storage-polyfill": "1.0.0" + } + }, "tree-sync": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/tree-sync/-/tree-sync-1.4.0.tgz", diff --git a/package.json b/package.json index b834ee4..a09b5c4 100644 --- a/package.json +++ b/package.json @@ -95,6 +95,7 @@ "qunit": "^2.18.0", "qunit-dom": "^2.0.0", "tailwindcss": "^3.0.23", + "tracked-built-ins": "^2.0.1", "webpack": "^5.72.0" }, "engines": { diff --git a/tests/unit/utils/query-test.js b/tests/unit/utils/query-test.js new file mode 100644 index 0000000..df94e5b --- /dev/null +++ b/tests/unit/utils/query-test.js @@ -0,0 +1,10 @@ +import query from 'meilisearch-admin/utils/query'; +import { module, test } from 'qunit'; + +module('Unit | Utility | query', function () { + // TODO: Replace this with your real tests. + test('it works', function (assert) { + let result = query(); + assert.ok(result); + }); +});