From 80c9d470e9d2f0bb809e002c6e91b83c19f326e4 Mon Sep 17 00:00:00 2001 From: dvonanderson Date: Tue, 16 Apr 2024 12:30:15 -0400 Subject: [PATCH 01/16] v3.15.0...v3.28.6 upgraded with all of warnings. --- .editorconfig | 1 - .eslintrc.js | 53 +- .prettierignore | 21 + .prettierrc.js | 5 + .template-lintrc.js | 2 +- .travis.yml | 14 +- app/app.js | 2 +- app/router.js | 2 +- app/services/schemas.js | 2 +- app/templates/application.hbs | 2 +- config/ember-cli-update.json | 2 +- config/environment.js | 4 +- config/targets.js | 31 +- ember-cli-build.js | 12 +- package.json | 71 +- testem.js | 19 +- tests/index.html | 9 +- tests/test-helper.js | 8 +- yarn.lock | 3551 +++++++++++++++++++-------------- 19 files changed, 2190 insertions(+), 1621 deletions(-) create mode 100644 .prettierignore create mode 100644 .prettierrc.js diff --git a/.editorconfig b/.editorconfig index 47c543840..5506714b0 100644 --- a/.editorconfig +++ b/.editorconfig @@ -4,7 +4,6 @@ root = true - [*] end_of_line = lf charset = utf-8 diff --git a/.eslintrc.js b/.eslintrc.js index 9457200c3..e2827b9a2 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -2,23 +2,22 @@ module.exports = { root: true, - parser: 'babel-eslint', + parser: '@babel/eslint-parser', parserOptions: { ecmaVersion: 2018, sourceType: 'module', ecmaFeatures: { - legacyDecorators: true - } + legacyDecorators: true, + }, }, - plugins: [ - 'ember' - ], + plugins: ['ember'], extends: [ 'eslint:recommended', - 'plugin:ember/recommended' + 'plugin:ember/recommended', + 'plugin:prettier/recommended', ], env: { - browser: true + browser: true, }, rules: { //'ember/new-module-imports': 'off', @@ -29,31 +28,35 @@ module.exports = { // node files { files: [ - '.eslintrc.js', - '.template-lintrc.js', - 'ember-cli-build.js', - 'testem.js', - 'blueprints/*/index.js', - 'config/**/*.js', - 'lib/*/index.js', - 'server/**/*.js' + './.eslintrc.js', + './.prettierrc.js', + './.template-lintrc.js', + './ember-cli-build.js', + './testem.js', + './blueprints/*/index.js', + './config/**/*.js', + './lib/*/index.js', + './server/**/*.js', ], parserOptions: { - sourceType: 'script' + sourceType: 'script', }, env: { browser: false, node: true, - es6: true }, plugins: ['node'], - rules: Object.assign({}, require('eslint-plugin-node').configs.recommended.rules, { - // add your custom rules and overrides for node files here - + extends: ['plugin:node/recommended'], + rules: { // this can be removed once the following is fixed // https://github.com/mysticatea/eslint-plugin-node/issues/77 - 'node/no-unpublished-require': 'off' - }) - } - ] + 'node/no-unpublished-require': 'off', + }, + }, + { + // Test files: + files: ['tests/**/*-test.{js,ts}'], + extends: ['plugin:qunit/recommended'], + }, + ], }; diff --git a/.prettierignore b/.prettierignore new file mode 100644 index 000000000..922165552 --- /dev/null +++ b/.prettierignore @@ -0,0 +1,21 @@ +# unconventional js +/blueprints/*/files/ +/vendor/ + +# compiled output +/dist/ +/tmp/ + +# dependencies +/bower_components/ +/node_modules/ + +# misc +/coverage/ +!.* +.eslintcache + +# ember-try +/.node_modules.ember-try/ +/bower.json.ember-try +/package.json.ember-try diff --git a/.prettierrc.js b/.prettierrc.js new file mode 100644 index 000000000..534e6d35a --- /dev/null +++ b/.prettierrc.js @@ -0,0 +1,5 @@ +'use strict'; + +module.exports = { + singleQuote: true, +}; diff --git a/.template-lintrc.js b/.template-lintrc.js index 3b0b9af95..f35f61c7b 100644 --- a/.template-lintrc.js +++ b/.template-lintrc.js @@ -1,5 +1,5 @@ 'use strict'; module.exports = { - extends: 'octane', + extends: 'recommended', }; diff --git a/.travis.yml b/.travis.yml index 9d943a70e..30ce7d99b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,10 +1,9 @@ --- language: node_js node_js: - - "8" + - "12" -sudo: false -dist: bionic +dist: xenial addons: chrome: stable @@ -26,10 +25,5 @@ before_install: - export PATH=$HOME/.yarn/bin:$PATH - export TZ=America/Anchorage -install: - - yarn install --non-interactive -# -# script: -# - yarn lint:hbs -# - yarn lint:js -# - yarn test +script: + # - yarn test diff --git a/app/app.js b/app/app.js index 1da6351e7..17864be89 100644 --- a/app/app.js +++ b/app/app.js @@ -25,7 +25,7 @@ import { } from '@ember/debug'; // import Resolver from './resolver'; import loadInitializers from 'ember-load-initializers'; -import config from './config/environment'; +import config from 'mdeditor/config/environment'; let events = { // add support for the blur event diff --git a/app/router.js b/app/router.js index 676413a28..3a6fe7f27 100644 --- a/app/router.js +++ b/app/router.js @@ -1,5 +1,5 @@ import EmberRouter from '@ember/routing/router'; -import config from './config/environment'; +import config from 'mdeditor/config/environment'; export default class Router extends EmberRouter { location = config.locationType; diff --git a/app/services/schemas.js b/app/services/schemas.js index 3d3fcc8cd..50e1bb58c 100644 --- a/app/services/schemas.js +++ b/app/services/schemas.js @@ -1,5 +1,5 @@ import Service, { inject as service } from '@ember/service'; -import RefParser from 'json-schema-ref-parser'; +import RefParser from '@apidevtools/json-schema-ref-parser'; import request from 'ember-ajax/request'; import { task, all, timeout } from 'ember-concurrency'; import { filterBy } from '@ember/object/computed'; diff --git a/app/templates/application.hbs b/app/templates/application.hbs index dbfb1e8fd..1d304913b 100644 --- a/app/templates/application.hbs +++ b/app/templates/application.hbs @@ -1,4 +1,4 @@ - +{{head-layout}}
diff --git a/config/ember-cli-update.json b/config/ember-cli-update.json index 101de67a9..ca06f88e7 100644 --- a/config/ember-cli-update.json +++ b/config/ember-cli-update.json @@ -3,7 +3,7 @@ "packages": [ { "name": "ember-cli", - "version": "3.15.0", + "version": "3.28.6", "blueprints": [ { "name": "app", diff --git a/config/environment.js b/config/environment.js index 8c226b17f..f7410bb17 100644 --- a/config/environment.js +++ b/config/environment.js @@ -1,8 +1,8 @@ "use strict"; module.exports = function (environment) { - var deployTarget = process.env.DEPLOY_TARGET; - var ENV = { + let deployTarget = process.env.DEPLOY_TARGET; + let ENV = { contentSecurityPolicy: { "style-src": "'self' 'unsafe-inline'", }, diff --git a/config/targets.js b/config/targets.js index 09b4d22b9..16598e814 100644 --- a/config/targets.js +++ b/config/targets.js @@ -3,22 +3,25 @@ const browsers = [ 'last 1 Chrome versions', 'last 1 Firefox versions', - 'last 1 Safari versions' + 'last 1 Safari versions', + 'last 1 Edge versions', ]; -const isCI = !!process.env.CI; -const isProduction = process.env.EMBER_ENV === 'production'; - -if (isCI || isProduction) { - browsers.push('ie 11'); -} +// Ember's browser support policy is changing, and IE11 support will end in +// v4.0 onwards. +// +// See https://deprecations.emberjs.com/v3.x#toc_3-0-browser-support-policy +// +// If you need IE11 support on a version of Ember that still offers support +// for it, uncomment the code block below. +// +// const isCI = Boolean(process.env.CI); +// const isProduction = process.env.EMBER_ENV === 'production'; +// +// if (isCI || isProduction) { +// browsers.push('ie 11'); +// } module.exports = { - browsers: [ - //'ie 9', - 'last 1 edge versions', - 'last 1 Chrome versions', - 'last 1 Firefox versions', - 'last 1 Safari versions' - ] + browsers, }; diff --git a/ember-cli-build.js b/ember-cli-build.js index e4d6403d4..7dddc2bed 100644 --- a/ember-cli-build.js +++ b/ember-cli-build.js @@ -35,11 +35,15 @@ module.exports = function (defaults) { autoImport: { webpack: { - node: { - http: true, - //https: true + resolve: { + fallback: { + "path": require.resolve("path-browserify"), + "http": require.resolve("http-browserify"), + "https": require.resolve("https-browserify"), + "stream": require.resolve("stream-browserify"), + } } - } + }, }, 'ember-models-table': { diff --git a/package.json b/package.json index fe955856f..d7bf21d86 100644 --- a/package.json +++ b/package.json @@ -15,12 +15,12 @@ "scripts": { "doc:toc": "doctoc README.md", "build:development": "ember build", - "build": "ember build --environment=production && cp dist/index.html dist/404.html", + "build": "ember build --environment=production", "lint": "npm-run-all --aggregate-output --continue-on-error --parallel \"lint:!(fix)\"", "lint:fix": "npm-run-all --aggregate-output --continue-on-error --parallel lint:*:fix", "lint:hbs": "ember-template-lint .", "lint:hbs:fix": "ember-template-lint . --fix", - "lint:js": "eslint .", + "lint:js": "eslint . --cache", "lint:sass": "stylelint 'app/styles/**/*.scss'", "lint:sass:fix": "stylelint 'app/styles/**/*.scss' --fix", "format": "npm-run-all format:*", @@ -29,7 +29,8 @@ "format:sass": "prettier --write app/**/*.scss", "lint:js:fix": "eslint . --fix", "start": "ember serve", - "test": "ember try:each --skip-cleanup=true", + "test": "npm-run-all lint test:*", + "test:ember": "ember test", "deploy": "gh-pages -d dist" }, "homepage": "https://github.com/adiwg/mdEditor", @@ -41,87 +42,88 @@ "@babel/core": "^7.0", "leaflet": "^0.7.0", "postcss": "^8.4.19", - "marked": "0.6.1" + "marked": "0.6.1", + "@ember/string": "^3.0.1" }, "engines": { - "node": "8.* || >= 10.* || >=12.*" + "node": "12.* || 14.* || >= 16" }, "ember": { "edition": "octane" }, "devDependencies": { "@ember/jquery": "^0.6.0", - "@ember/optional-features": "^1.1.0", - "@glimmer/component": "^1.0.0", + "@ember/optional-features": "^2.0.0", + "@ember/test-helpers": "^2.6.0", + "@glimmer/component": "^1.0.4", + "@glimmer/tracking": "^1.0.4", "@mapbox/togeojson": "^0.16.0", "Leaflet.vector-markers": "^0.0.6", "ajv": "^6.10.2", "ajv-errors": "^1.0.1", "axios": "^1.6.0", - "babel-eslint": "^8.0.0", "bootstrap-3-card": "^0.2.0", "bootstrap-sass": "~3.4.1", "broccoli-asset-rev": "^3.0.0", "csv2geojson": "^5.0.2", "doctoc": "^2.2.0", "ember-ajax": "^5.0.0", - "ember-auto-import": "^1.5.3", - "ember-classic-decorator": "^3.0.1", + "ember-auto-import": "^2.2.4", "ember-autoresize": "jlblcc/ember-autoresize#latest", - "ember-cli": "~3.15.0", - "ember-cli-app-version": "^3.2.0", - "ember-cli-babel": "^7.13.0", + "ember-classic-decorator": "^3.0.1", + "ember-cli": "~3.28.6", + "ember-cli-app-version": "^5.0.0", + "ember-cli-babel": "^7.26.10", "ember-cli-bootstrap-datetimepicker": "~0.9", "ember-cli-dependency-checker": "^3.2.0", "ember-cli-deploy": "^1.0", "ember-cli-deploy-build": "^2.0.0", "ember-cli-deploy-git": "^1.3.4", "ember-cli-deprecation-workflow": "^1.0.1", - "ember-cli-eslint": "^5.1.0", "ember-cli-file-picker": "^0.0.12", "ember-cli-flash": "^1.3.16", - "ember-cli-htmlbars": "^4.2.0", - "ember-cli-inject-live-reload": "^2.0.1", + "ember-cli-htmlbars": "^5.7.2", + "ember-cli-inject-live-reload": "^2.1.0", "ember-cli-moment-shim": "^3.8.0", "ember-cli-release": "^0.2.9", "ember-cli-sass": "~10.0.0", "ember-cli-sri": "^2.1.1", "ember-cli-string-helpers": "4.0.6", - "ember-cli-template-lint": "^1.0.0-beta.3", "ember-cli-terser": "^4.0.2", "ember-composable-helpers": "^2.4.0", "ember-concurrency": "^1.1.2", "ember-copy": "^1.0.0", "ember-cp-validations": "^4.0.0-beta.10", "ember-crumbly": "^3.0.1", - "ember-data": "~3.15.0", + "ember-data": "~3.28.6", "ember-decorators": "^6.1.1", "ember-drag-drop": "^0.7.0", "ember-elsewhere": "^1.0.2", "ember-export-application-global": "^2.0.1", - "ember-fetch": "^7.0.0", + "ember-fetch": "^8.1.1", "ember-font-awesome": "^3.1", "ember-in-viewport": "^3.7.2", "ember-leaflet": "~4.0.0", "ember-leaflet-layer-control": "~0.2.1", "ember-load": "0.0.17", - "ember-load-initializers": "^2.1.1", + "ember-load-initializers": "^2.1.2", "ember-local-storage": "^1.7.1", "ember-math-helpers": "^2.12.0", "ember-maybe-import-regenerator": "^0.1.6", "ember-modal-dialog": "^3.0.0-beta.3", "ember-models-table": "2", "ember-moment": "^7.5.0", - "ember-page-title": "^5.1.0", - "ember-power-select": "^3.0.4", - "ember-power-select-with-create": "~0.7.0", - "ember-qunit": "^4.6.0", + "ember-page-title": "^6.2.2", + "ember-power-select": "^5.0.4", + "ember-power-select-with-create": "~1.0.0", + "ember-qunit": "^5.1.5", "ember-resize": "^0.3.4", - "ember-resolver": "^7.0.0", + "ember-resolver": "^8.0.3", "ember-route-action-helper": "^2.0.6", "ember-simplemde": "^1.3.1", - "ember-source": "~3.15.0", + "ember-source": "~3.28.8", "ember-source-channel-url": "^2.0.1", + "ember-template-lint": "^3.15.0", "ember-tether": "^1.0.0", "ember-toggle": "^6.0.1", "ember-tooltips": "^3.4.0", @@ -131,12 +133,12 @@ "eslint-config-prettier": "^8.5.0", "eslint-plugin-ember": "^10.6.1", "eslint-plugin-node": "^11.1.0", + "eslint-plugin-prettier": "^3.4.1", "eslint-plugin-qunit": "^7.3.0", "font-awesome": "~4.7.0", "geojson-coords": "0.0.0", "gh-pages": "^6.1.1", "jquery-jsonview": "^1.2.3", - "json-schema-ref-parser": "^7.1.4", "keycloak-js": "^22.0.3", "leaflet": "~1.6.0", "leaflet-draw": "~1.0.4", @@ -146,10 +148,12 @@ "mdjson-schemas": "2.9.1", "moment": "^2", "moment-timezone": "^0.5.27", + "npm-run-all": "^4.1.5", "object-hash": "^2.0.1", "papaparse": "^4.6.3", "prettier": "^2.7.1", - "qunit-dom": "^0.9.2", + "qunit": "^2.17.2", + "qunit-dom": "^1.6.0", "sass": "^1.26.3", "scroll-into-view-if-needed": "^2.2.20", "semver": "^7.5.2", @@ -157,7 +161,8 @@ "static-module": "3.0.3", "text-encoding": "^0.7.0", "uuid": "^3.3.3", - "validator": "^12.1.0" + "validator": "^12.1.0", + "webpack": "^5.0.0" }, "config": { "commitizen": { @@ -172,6 +177,12 @@ ] }, "dependencies": { - "@babel/core": "7.24.4" + "@apidevtools/json-schema-ref-parser": "^11.5.5", + "@babel/core": "7.24.4", + "@babel/eslint-parser": "^7.24.1", + "http-browserify": "^1.7.0", + "https-browserify": "^1.0.0", + "path-browserify": "^1.0.1", + "stream-browserify": "^3.0.0" } } diff --git a/testem.js b/testem.js index 367f5659c..ed2f37124 100644 --- a/testem.js +++ b/testem.js @@ -1,12 +1,11 @@ +'use strict'; + module.exports = { test_page: 'tests/index.html?hidepassed', disable_watching: true, - launch_in_ci: [ - 'Chrome' - ], - launch_in_dev: [ - 'Chrome' - ], + launch_in_ci: ['Chrome'], + launch_in_dev: ['Chrome'], + browser_start_timeout: 120, browser_args: { Chrome: { ci: [ @@ -17,8 +16,8 @@ module.exports = { '--disable-software-rasterizer', '--mute-audio', '--remote-debugging-port=0', - '--window-size=1440,900' - ].filter(Boolean) - } - } + '--window-size=1440,900', + ].filter(Boolean), + }, + }, }; diff --git a/tests/index.html b/tests/index.html index 134c0360f..fe3998bd7 100644 --- a/tests/index.html +++ b/tests/index.html @@ -21,7 +21,14 @@ {{content-for "body"}} {{content-for "test-body"}} - +
+
+
+
+
+
+ + diff --git a/tests/test-helper.js b/tests/test-helper.js index 0382a848d..45e30ecbd 100644 --- a/tests/test-helper.js +++ b/tests/test-helper.js @@ -1,8 +1,12 @@ -import Application from '../app'; -import config from '../config/environment'; +import Application from 'mdeditor/app'; +import config from 'mdeditor/config/environment'; +import * as QUnit from 'qunit'; import { setApplication } from '@ember/test-helpers'; +import { setup } from 'qunit-dom'; import { start } from 'ember-qunit'; setApplication(Application.create(config.APP)); +setup(QUnit.assert); + start(); diff --git a/yarn.lock b/yarn.lock index f06187fd6..581082181 100644 --- a/yarn.lock +++ b/yarn.lock @@ -15,12 +15,14 @@ "@jridgewell/gen-mapping" "^0.3.5" "@jridgewell/trace-mapping" "^0.3.24" -"@babel/code-frame@7.0.0-beta.44": - version "7.0.0-beta.44" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0-beta.44.tgz#2a02643368de80916162be70865c97774f3adbd9" - integrity sha512-cuAuTTIQ9RqcFRJ/Y8PvTh+paepNcaGxwQwjIDRWPXmzzyAeCO4KqS9ikMvq0MCbRk6GlYKwfzStrcP3/jSL8g== +"@apidevtools/json-schema-ref-parser@^11.5.5": + version "11.5.5" + resolved "https://registry.yarnpkg.com/@apidevtools/json-schema-ref-parser/-/json-schema-ref-parser-11.5.5.tgz#05db5722e3a794e35565bab41dc1a3f94fbd6bb5" + integrity sha512-hv/aXDILyroHioVW27etFMV+IX6FyNn41YwbeGIAt5h/7fUTQvHI5w3ols8qYAT8aQt3kzexq5ZwxFDxNHIhdQ== dependencies: - "@babel/highlight" "7.0.0-beta.44" + "@jsdevtools/ono" "^7.1.3" + "@types/json-schema" "^7.0.15" + js-yaml "^4.1.0" "@babel/code-frame@^7.0.0", "@babel/code-frame@^7.23.5", "@babel/code-frame@^7.24.1", "@babel/code-frame@^7.24.2": version "7.24.2" @@ -35,7 +37,7 @@ resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.24.4.tgz#6f102372e9094f25d908ca0d34fc74c74606059a" integrity sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ== -"@babel/core@7.24.4", "@babel/core@^7.0", "@babel/core@^7.0.0", "@babel/core@^7.1.6", "@babel/core@^7.12.0", "@babel/core@^7.24.0", "@babel/core@^7.3.4", "@babel/core@^7.7.2": +"@babel/core@7.24.4", "@babel/core@^7.0", "@babel/core@^7.0.0", "@babel/core@^7.1.6", "@babel/core@^7.12.0", "@babel/core@^7.13.8", "@babel/core@^7.16.7", "@babel/core@^7.24.0", "@babel/core@^7.3.4": version "7.24.4" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.4.tgz#1f758428e88e0d8c563874741bc4ffc4f71a4717" integrity sha512-MBVlMXP+kkl5394RBLSxxk/iLTeVGuXTV3cIDXavPpMMqnSnt6apKgan/U8O3USWZCWZT/TbgfEpKa4uMgN4Dg== @@ -56,16 +58,14 @@ json5 "^2.2.3" semver "^6.3.1" -"@babel/generator@7.0.0-beta.44": - version "7.0.0-beta.44" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.0.0-beta.44.tgz#c7e67b9b5284afcf69b309b50d7d37f3e5033d42" - integrity sha512-5xVb7hlhjGcdkKpMXgicAVgx8syK5VJz193k0i/0sLP6DzE6lRrU1K3B/rFefgdo9LPGMAOOOAWW4jycj07ShQ== +"@babel/eslint-parser@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.24.1.tgz#e27eee93ed1d271637165ef3a86e2b9332395c32" + integrity sha512-d5guuzMlPeDfZIbpQ8+g1NaCNuAGBBGNECh0HVqz1sjOeVLh2CEaifuOysCH18URW6R7pqXINvf5PaR/dC6jLQ== dependencies: - "@babel/types" "7.0.0-beta.44" - jsesc "^2.5.1" - lodash "^4.2.0" - source-map "^0.5.0" - trim-right "^1.0.1" + "@nicolo-ribaudo/eslint-scope-5-internals" "5.1.1-v1" + eslint-visitor-keys "^2.1.0" + semver "^6.3.1" "@babel/generator@^7.24.1", "@babel/generator@^7.24.4": version "7.24.4" @@ -142,15 +142,6 @@ resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz#96159db61d34a29dba454c959f5ae4a649ba9167" integrity sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA== -"@babel/helper-function-name@7.0.0-beta.44": - version "7.0.0-beta.44" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.0.0-beta.44.tgz#e18552aaae2231100a6e485e03854bc3532d44dd" - integrity sha512-MHRG2qZMKMFaBavX0LWpfZ2e+hLloT++N7rfM3DYOMUOGCD8cVjqZpwiL8a0bOX3IYcQev1ruciT0gdFFRTxzg== - dependencies: - "@babel/helper-get-function-arity" "7.0.0-beta.44" - "@babel/template" "7.0.0-beta.44" - "@babel/types" "7.0.0-beta.44" - "@babel/helper-function-name@^7.22.5", "@babel/helper-function-name@^7.23.0": version "7.23.0" resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz#1f9a3cdbd5b2698a670c30d2735f9af95ed52759" @@ -159,13 +150,6 @@ "@babel/template" "^7.22.15" "@babel/types" "^7.23.0" -"@babel/helper-get-function-arity@7.0.0-beta.44": - version "7.0.0-beta.44" - resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0-beta.44.tgz#d03ca6dd2b9f7b0b1e6b32c56c72836140db3a15" - integrity sha512-w0YjWVwrM2HwP6/H3sEgrSQdkCaxppqFeJtAnB23pRiJB5E/O9Yp7JAAeWBl+gGEgmBFinnTyOv2RN7rcSmMiw== - dependencies: - "@babel/types" "7.0.0-beta.44" - "@babel/helper-hoist-variables@^7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz#c01a007dac05c085914e8fb652b339db50d823bb" @@ -180,7 +164,7 @@ dependencies: "@babel/types" "^7.23.0" -"@babel/helper-module-imports@^7.0.0", "@babel/helper-module-imports@^7.22.15", "@babel/helper-module-imports@^7.24.1", "@babel/helper-module-imports@^7.24.3": +"@babel/helper-module-imports@^7.22.15", "@babel/helper-module-imports@^7.24.1", "@babel/helper-module-imports@^7.24.3", "@babel/helper-module-imports@^7.8.3": version "7.24.3" resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz#6ac476e6d168c7c23ff3ba3cf4f7841d46ac8128" integrity sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg== @@ -242,13 +226,6 @@ dependencies: "@babel/types" "^7.22.5" -"@babel/helper-split-export-declaration@7.0.0-beta.44": - version "7.0.0-beta.44" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0-beta.44.tgz#c0b351735e0fbcb3822c8ad8db4e583b05ebd9dc" - integrity sha512-aQ7QowtkgKKzPGf0j6u77kBMdUFVBKNHw2p/3HX/POt5/oz8ec5cs0GwlgM8Hz7ui5EwJnzyfRmkNF1Nx1N7aA== - dependencies: - "@babel/types" "7.0.0-beta.44" - "@babel/helper-split-export-declaration@^7.22.6": version "7.22.6" resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz#322c61b7310c0997fe4c323955667f18fcefb91c" @@ -289,15 +266,6 @@ "@babel/traverse" "^7.24.1" "@babel/types" "^7.24.0" -"@babel/highlight@7.0.0-beta.44": - version "7.0.0-beta.44" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.0.0-beta.44.tgz#18c94ce543916a80553edcdcf681890b200747d5" - integrity sha512-Il19yJvy7vMFm8AVAh6OZzaFoAd0hbkeMZiX3P5HGD+z7dyI7RzndHB0dg6Urh/VAFfHtpOIzDUSxmY6coyZWQ== - dependencies: - chalk "^2.0.0" - esutils "^2.0.2" - js-tokens "^3.0.0" - "@babel/highlight@^7.24.2": version "7.24.2" resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.24.2.tgz#3f539503efc83d3c59080a10e6634306e0370d26" @@ -345,7 +313,7 @@ "@babel/helper-environment-visitor" "^7.22.20" "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-proposal-class-properties@^7.1.0", "@babel/plugin-proposal-class-properties@^7.16.5": +"@babel/plugin-proposal-class-properties@^7.1.0", "@babel/plugin-proposal-class-properties@^7.16.5", "@babel/plugin-proposal-class-properties@^7.16.7": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz#b110f59741895f7ec21a6fff696ec46265c446a3" integrity sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ== @@ -353,7 +321,7 @@ "@babel/helper-create-class-features-plugin" "^7.18.6" "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-proposal-decorators@^7.13.5", "@babel/plugin-proposal-decorators@^7.20.13": +"@babel/plugin-proposal-decorators@^7.13.5", "@babel/plugin-proposal-decorators@^7.16.7", "@babel/plugin-proposal-decorators@^7.20.13": version "7.24.1" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.24.1.tgz#bab2b9e174a2680f0a80f341f3ec70f809f8bb4b" integrity sha512-zPEvzFijn+hRvJuX2Vu3KbEBN39LN3f7tW3MQO2LsIs57B26KU+kUc82BdAktS1VCM6libzh45eKGI65lg0cpA== @@ -379,7 +347,7 @@ "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0" "@babel/plugin-syntax-optional-chaining" "^7.8.3" -"@babel/plugin-proposal-private-methods@^7.16.5": +"@babel/plugin-proposal-private-methods@^7.16.5", "@babel/plugin-proposal-private-methods@^7.16.7": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz#5209de7d213457548a98436fa2882f52f4be6bea" integrity sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA== @@ -576,7 +544,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-block-scoping@^7.24.4", "@babel/plugin-transform-block-scoping@^7.6.2", "@babel/plugin-transform-block-scoping@^7.6.3": +"@babel/plugin-transform-block-scoping@^7.24.4", "@babel/plugin-transform-block-scoping@^7.8.3": version "7.24.4" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.24.4.tgz#28f5c010b66fbb8ccdeef853bef1935c434d7012" integrity sha512-nIFUZIpGKDf9O9ttyRXpHFpKC+X3Y5mtshZONuEUYBomAKoM4y029Jr+uB1bHGPhNmK8YXHevDtKDOLmtRrp6g== @@ -591,7 +559,7 @@ "@babel/helper-create-class-features-plugin" "^7.24.1" "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-class-static-block@^7.22.11", "@babel/plugin-transform-class-static-block@^7.24.4": +"@babel/plugin-transform-class-static-block@^7.16.7", "@babel/plugin-transform-class-static-block@^7.22.11", "@babel/plugin-transform-class-static-block@^7.24.4": version "7.24.4" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.24.4.tgz#1a4653c0cf8ac46441ec406dece6e9bc590356a4" integrity sha512-B8q7Pz870Hz/q9UgP8InNpY01CSLDSCyqX7zcRuv3FcPl87A2G17lASroHWaCtbdIcbYzOZ7kWmXFKbijMSmFg== @@ -715,7 +683,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-modules-amd@^7.13.0", "@babel/plugin-transform-modules-amd@^7.20.11", "@babel/plugin-transform-modules-amd@^7.24.1", "@babel/plugin-transform-modules-amd@^7.5.0": +"@babel/plugin-transform-modules-amd@^7.12.1", "@babel/plugin-transform-modules-amd@^7.13.0", "@babel/plugin-transform-modules-amd@^7.20.11", "@babel/plugin-transform-modules-amd@^7.24.1": version "7.24.1" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.24.1.tgz#b6d829ed15258536977e9c7cc6437814871ffa39" integrity sha512-lAxNHi4HVtjnHd5Rxg3D5t99Xm6H7b04hUS7EHIXcUl2EV4yl1gWdqZrNzXnSrHveL9qMdbODlLF55mvgjAfaQ== @@ -781,7 +749,7 @@ "@babel/helper-plugin-utils" "^7.24.0" "@babel/plugin-syntax-numeric-separator" "^7.10.4" -"@babel/plugin-transform-object-assign@^7.2.0": +"@babel/plugin-transform-object-assign@^7.8.3": version "7.24.1" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-assign/-/plugin-transform-object-assign-7.24.1.tgz#46a70169e56970aafd13a6ae677d5b497fc227e7" integrity sha512-I1kctor9iKtupb7jv7FyjApHCuKLBKCblVAeHVK9PB6FW7GI0ac6RtobC3MwwJy8CZ1JxuhQmnbrsqI5G8hAIg== @@ -993,7 +961,7 @@ core-js "^2.6.5" regenerator-runtime "^0.13.4" -"@babel/preset-env@^7.10.2", "@babel/preset-env@^7.16.5", "@babel/preset-env@^7.20.2": +"@babel/preset-env@^7.10.2", "@babel/preset-env@^7.16.5", "@babel/preset-env@^7.16.7", "@babel/preset-env@^7.20.2": version "7.24.4" resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.24.4.tgz#46dbbcd608771373b88f956ffb67d471dce0d23b" integrity sha512-7Kl6cSmYkak0FK/FXjSEnLJ1N9T/WA2RkMhu17gZ/dsxKJUuTYNIylahPTzqpLyJN4WhDif8X0XK1R8Wsguo/A== @@ -1101,23 +1069,13 @@ dependencies: regenerator-runtime "^0.13.4" -"@babel/runtime@^7.8.4": +"@babel/runtime@^7.21.0", "@babel/runtime@^7.8.4": version "7.24.4" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.24.4.tgz#de795accd698007a66ba44add6cc86542aff1edd" integrity sha512-dkxf7+hn8mFBwKjs9bvBlArzLVxVbS8usaPUDd5p2a9JCL9tB8OaOVN1isD4+Xyk4ns89/xeOmbQvgdK7IIVdA== dependencies: regenerator-runtime "^0.14.0" -"@babel/template@7.0.0-beta.44": - version "7.0.0-beta.44" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.0.0-beta.44.tgz#f8832f4fdcee5d59bf515e595fc5106c529b394f" - integrity sha512-w750Sloq0UNifLx1rUqwfbnC6uSUk0mfwwgGRfdLiaUzfAOiH0tHJE6ILQIUi3KYkjiCDTskoIsnfqZvWLBDng== - dependencies: - "@babel/code-frame" "7.0.0-beta.44" - "@babel/types" "7.0.0-beta.44" - babylon "7.0.0-beta.44" - lodash "^4.2.0" - "@babel/template@^7.22.15", "@babel/template@^7.24.0": version "7.24.0" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.24.0.tgz#c6a524aa93a4a05d66aaf31654258fae69d87d50" @@ -1127,22 +1085,6 @@ "@babel/parser" "^7.24.0" "@babel/types" "^7.24.0" -"@babel/traverse@7.0.0-beta.44": - version "7.0.0-beta.44" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.0.0-beta.44.tgz#a970a2c45477ad18017e2e465a0606feee0d2966" - integrity sha512-UHuDz8ukQkJCDASKHf+oDt3FVUzFd+QYfuBIsiNu/4+/ix6pP/C+uQZJ6K1oEfbCMv/IKWbgDEh7fcsnIE5AtA== - dependencies: - "@babel/code-frame" "7.0.0-beta.44" - "@babel/generator" "7.0.0-beta.44" - "@babel/helper-function-name" "7.0.0-beta.44" - "@babel/helper-split-export-declaration" "7.0.0-beta.44" - "@babel/types" "7.0.0-beta.44" - babylon "7.0.0-beta.44" - debug "^3.1.0" - globals "^11.1.0" - invariant "^2.2.0" - lodash "^4.2.0" - "@babel/traverse@^7.1.6", "@babel/traverse@^7.24.1", "@babel/traverse@^7.4.5": version "7.24.1" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.1.tgz#d65c36ac9dd17282175d1e4a3c49d5b7988f530c" @@ -1159,16 +1101,7 @@ debug "^4.3.1" globals "^11.1.0" -"@babel/types@7.0.0-beta.44": - version "7.0.0-beta.44" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.0.0-beta.44.tgz#6b1b164591f77dec0a0342aca995f2d046b3a757" - integrity sha512-5eTV4WRmqbaFM3v9gHAIljEQJU4Ssc6fxL61JN+Oe2ga/BwyjzjamwkCVVAQjHGuAX8i0BWo42dshL8eO5KfLQ== - dependencies: - esutils "^2.0.2" - lodash "^4.2.0" - to-fast-properties "^2.0.0" - -"@babel/types@^7.1.6", "@babel/types@^7.22.15", "@babel/types@^7.22.19", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.24.0", "@babel/types@^7.4.0", "@babel/types@^7.4.4", "@babel/types@^7.7.2": +"@babel/types@^7.1.6", "@babel/types@^7.12.13", "@babel/types@^7.22.15", "@babel/types@^7.22.19", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.24.0", "@babel/types@^7.4.4", "@babel/types@^7.7.2": version "7.24.0" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.0.tgz#3b951f435a92e7333eba05b7566fd297960ea1bf" integrity sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w== @@ -1249,126 +1182,133 @@ style-mod "^4.1.0" w3c-keyname "^2.2.4" -"@ember-data/adapter@3.15.1": - version "3.15.1" - resolved "https://registry.yarnpkg.com/@ember-data/adapter/-/adapter-3.15.1.tgz#947f13a186b079b3629210b7a0fbfc9652182659" - integrity sha512-oj/a2kEVvSwI5F1AoSJohRBtnEUHn9CpCBQyPKwrCBUQWhfAsaj5FcE7/eOCpd+dSlH3c22mcsCSwr6gTE0E7g== +"@ember-data/adapter@3.28.13": + version "3.28.13" + resolved "https://registry.yarnpkg.com/@ember-data/adapter/-/adapter-3.28.13.tgz#3b921365046a329f3eb1c72fc4964c6aff06e53b" + integrity sha512-AwLJTs+GvxX72vfP3edV0hoMLD9oPWJNbnqxakXVN9xGTuk6/TeGQLMrVU3222GCoMMNrJ357Nip7kZeFo4IdA== dependencies: - "@ember-data/private-build-infra" "3.15.1" - "@ember-data/store" "3.15.1" - "@ember/edition-utils" "^1.1.1" - ember-cli-babel "^7.12.0" + "@ember-data/private-build-infra" "3.28.13" + "@ember-data/store" "3.28.13" + "@ember/edition-utils" "^1.2.0" + "@ember/string" "^3.0.0" + ember-cli-babel "^7.26.6" ember-cli-test-info "^1.0.0" - ember-cli-typescript "^3.1.3" + ember-cli-typescript "^4.1.0" -"@ember-data/canary-features@3.15.1": - version "3.15.1" - resolved "https://registry.yarnpkg.com/@ember-data/canary-features/-/canary-features-3.15.1.tgz#cff2e76ed6e5980ae1f5099cfe7a1b7dd8ec9603" - integrity sha512-FW8kHvqOosaVPj7Az4xwC3hdwpiY/C8BjXT/hoVQd3oIxXDbySmxF8LXp/cDTJUQEenr5T+ast0lmp259xPYmw== +"@ember-data/canary-features@3.28.13": + version "3.28.13" + resolved "https://registry.yarnpkg.com/@ember-data/canary-features/-/canary-features-3.28.13.tgz#59cd75b94bfff86f85affb42e66016c71f45f02e" + integrity sha512-fgpcB0wmtUjZeqcIKkfP/MclQjY5r8ft8YZhPlvQh2MIx+3d3nCNRXB6lEUdRdQphFEag2towONFEIsiOAgs3Q== dependencies: - ember-cli-babel "^7.12.0" - ember-cli-typescript "^3.1.3" + ember-cli-babel "^7.26.6" + ember-cli-typescript "^4.1.0" -"@ember-data/debug@3.15.1": - version "3.15.1" - resolved "https://registry.yarnpkg.com/@ember-data/debug/-/debug-3.15.1.tgz#6c5a020d81d3fb2b3d5dcaed1ee982a1c874c7b9" - integrity sha512-6RBA6PpxILg2RwsfriYDBVRFsmxHmC7RI4A5tO/XA1ntqt9SGWJp7DyjCB/NpFTskVsEfl+OiMnf8c2w+ZYzmw== +"@ember-data/debug@3.28.13": + version "3.28.13" + resolved "https://registry.yarnpkg.com/@ember-data/debug/-/debug-3.28.13.tgz#eb20779de83429f5d493d3c8e81ced468fa5974d" + integrity sha512-ofny/Grpqx1lM6KWy5q75/b2/B+zQ4B4Ynk7SrQ//sFvpX3gjuP8iN07SKTHSN07vedlC+7QNhNJdCQwyqK1Fg== dependencies: - "@ember-data/private-build-infra" "3.15.1" - "@ember/edition-utils" "^1.1.1" - ember-cli-babel "^7.12.0" + "@ember-data/private-build-infra" "3.28.13" + "@ember/edition-utils" "^1.2.0" + "@ember/string" "^3.0.0" + ember-cli-babel "^7.26.6" ember-cli-test-info "^1.0.0" - ember-cli-typescript "^3.1.3" + ember-cli-typescript "^4.1.0" -"@ember-data/model@3.15.1": - version "3.15.1" - resolved "https://registry.yarnpkg.com/@ember-data/model/-/model-3.15.1.tgz#65f12b9e8bc0b5442ec712582b5dc7f0fdafa205" - integrity sha512-Rb+ECSxzsOHmLLCKNVrkW0kNi1TnI8qPYINbUHdQAZ0a9j205iAawwidLSio7j0Z+KgNxhKU52q5BntgNzH3Fg== +"@ember-data/model@3.28.13": + version "3.28.13" + resolved "https://registry.yarnpkg.com/@ember-data/model/-/model-3.28.13.tgz#50ac1bd5783e7cc51344767d5ff46f84198f4d1a" + integrity sha512-V5Hgzz5grNWTSrKGksY9xeOsTDLN/d3qsVMu26FWWHP5uqyWT0Cd4LSRpNxs14PsTFDcbrtGKaZv3YVksZfFEQ== dependencies: - "@ember-data/canary-features" "3.15.1" - "@ember-data/private-build-infra" "3.15.1" - "@ember-data/store" "3.15.1" - "@ember/edition-utils" "^1.1.1" - ember-cli-babel "^7.12.0" + "@ember-data/canary-features" "3.28.13" + "@ember-data/private-build-infra" "3.28.13" + "@ember-data/store" "3.28.13" + "@ember/edition-utils" "^1.2.0" + "@ember/string" "^3.0.0" + ember-cached-decorator-polyfill "^0.1.4" + ember-cli-babel "^7.26.6" ember-cli-string-utils "^1.1.0" ember-cli-test-info "^1.0.0" - ember-cli-typescript "^3.1.3" + ember-cli-typescript "^4.1.0" ember-compatibility-helpers "^1.2.0" - inflection "1.12.0" + inflection "~1.13.1" -"@ember-data/private-build-infra@3.15.1": - version "3.15.1" - resolved "https://registry.yarnpkg.com/@ember-data/private-build-infra/-/private-build-infra-3.15.1.tgz#8a45554ca980aa9435fcce3167996a47faf4b5f3" - integrity sha512-qXyABiu9GKhWhAcR80s0Ct0hRpKUalGdX14R0ZPxaNBQK8+i/W55jQoxJb6vupyngXhO3+Pm5Q0LHPF3y7ERJw== +"@ember-data/private-build-infra@3.28.13": + version "3.28.13" + resolved "https://registry.yarnpkg.com/@ember-data/private-build-infra/-/private-build-infra-3.28.13.tgz#828a27e724240b1ef70ae5dd8ab8be1f61275929" + integrity sha512-8gT3/gnmbNgFIMVdHBpl3xFGJefJE26VUIidFHTF1/N1aumVUlEhnXH0BSPxvxTnFXz/klGSTOMs+sDsx3jw6A== dependencies: - "@babel/plugin-transform-block-scoping" "^7.6.3" - "@ember-data/canary-features" "3.15.1" - "@ember/edition-utils" "^1.1.1" + "@babel/plugin-transform-block-scoping" "^7.8.3" + "@ember-data/canary-features" "3.28.13" + "@ember/edition-utils" "^1.2.0" babel-plugin-debug-macros "^0.3.3" - babel-plugin-feature-flags "^0.3.1" - babel-plugin-filter-imports "^3.0.0" + babel-plugin-filter-imports "^4.0.0" babel6-plugin-strip-class-callcheck "^6.0.0" broccoli-debug "^0.6.5" broccoli-file-creator "^2.1.1" - broccoli-funnel "^2.0.2" - broccoli-merge-trees "^3.0.2" - broccoli-rollup "^4.1.1" + broccoli-funnel "^3.0.3" + broccoli-merge-trees "^4.2.0" + broccoli-rollup "^5.0.0" calculate-cache-key-for-tree "^2.0.0" - chalk "^2.4.1" + chalk "^4.0.0" + ember-cli-babel "^7.26.6" ember-cli-path-utils "^1.0.0" ember-cli-string-utils "^1.1.0" - ember-cli-version-checker "^3.1.2" + ember-cli-typescript "^4.1.0" + ember-cli-version-checker "^5.1.1" esm "^3.2.25" git-repo-info "^2.1.1" - glob "^7.1.5" + glob "^7.1.6" npm-git-info "^1.0.3" - rimraf "^3.0.0" + rimraf "^3.0.2" rsvp "^4.8.5" + semver "^7.1.3" silent-error "^1.1.1" -"@ember-data/record-data@3.15.1": - version "3.15.1" - resolved "https://registry.yarnpkg.com/@ember-data/record-data/-/record-data-3.15.1.tgz#7508fafa597e5799078b0e82646ae5560943b61e" - integrity sha512-9uiThYXzHhDq5dD3Vi3ZQiEsRMbIggQgPSNKn1U+67i7eY4jR8p+g465K8J5kGEIftNh33xOuvieo/+iIBeaqg== - dependencies: - "@ember-data/canary-features" "3.15.1" - "@ember-data/private-build-infra" "3.15.1" - "@ember-data/store" "3.15.1" - "@ember/edition-utils" "^1.1.1" - "@ember/ordered-set" "^2.0.3" - ember-cli-babel "^7.12.0" +"@ember-data/record-data@3.28.13": + version "3.28.13" + resolved "https://registry.yarnpkg.com/@ember-data/record-data/-/record-data-3.28.13.tgz#2bf169404732e126489d3b3a8dc6c0dfca8b5f5f" + integrity sha512-0qYOxQr901eZ0JoYVt/IiszZYuNefqO6yiwKw0VH2dmWhVniQSp+Da9YnoKN9U2KgR4NdxKiUs2j9ZLNZ+bH7g== + dependencies: + "@ember-data/canary-features" "3.28.13" + "@ember-data/private-build-infra" "3.28.13" + "@ember-data/store" "3.28.13" + "@ember/edition-utils" "^1.2.0" + ember-cli-babel "^7.26.6" ember-cli-test-info "^1.0.0" - ember-cli-typescript "^3.1.3" + ember-cli-typescript "^4.1.0" "@ember-data/rfc395-data@^0.0.4": version "0.0.4" resolved "https://registry.yarnpkg.com/@ember-data/rfc395-data/-/rfc395-data-0.0.4.tgz#ecb86efdf5d7733a76ff14ea651a1b0ed1f8a843" integrity sha512-tGRdvgC9/QMQSuSuJV45xoyhI0Pzjm7A9o/MVVA3HakXIImJbbzx/k/6dO9CUEQXIyS2y0fW6C1XaYOG7rY0FQ== -"@ember-data/serializer@3.15.1": - version "3.15.1" - resolved "https://registry.yarnpkg.com/@ember-data/serializer/-/serializer-3.15.1.tgz#d55a6073cbe05c8ed1c6c1bc42585dc62a0d6dd6" - integrity sha512-HemY7wTwDhLkwL9ga2vHqpDypQuSot567Q1jhINmooSwFJZrT3lIz5KSqZQuhLyK3PG2SlmLV09u7JrDxIZNrw== +"@ember-data/serializer@3.28.13": + version "3.28.13" + resolved "https://registry.yarnpkg.com/@ember-data/serializer/-/serializer-3.28.13.tgz#6dfa8ba17c0ea192313134643dbe56adf45a722a" + integrity sha512-BlYXi8ObH0B5G7QeWtkf9u8PrhdlfAxOAsOuOPZPCTzWsQlmyzV6M9KvBmIAvJtM2IQ3a5BX2o71eP6/7MJDUg== dependencies: - "@ember-data/private-build-infra" "3.15.1" - "@ember-data/store" "3.15.1" - ember-cli-babel "^7.12.0" + "@ember-data/private-build-infra" "3.28.13" + "@ember-data/store" "3.28.13" + ember-cli-babel "^7.26.6" ember-cli-test-info "^1.0.0" - ember-cli-typescript "^3.1.3" - -"@ember-data/store@3.15.1": - version "3.15.1" - resolved "https://registry.yarnpkg.com/@ember-data/store/-/store-3.15.1.tgz#d292ec577dfef804fc198d7e74974ca690462b23" - integrity sha512-DWtFKs5nbWTSgdOXjzHScAnoZkorZm1AOt3s9D8pPN+cnvQhDDgxCfmXpxKcMTxZZ2U9r/reh2/1ILbvriB9lQ== - dependencies: - "@ember-data/canary-features" "3.15.1" - "@ember-data/private-build-infra" "3.15.1" - ember-cli-babel "^7.13.2" + ember-cli-typescript "^4.1.0" + +"@ember-data/store@3.28.13": + version "3.28.13" + resolved "https://registry.yarnpkg.com/@ember-data/store/-/store-3.28.13.tgz#be3c3fca03d155767af72422f6a3c6dcd6147be8" + integrity sha512-y1ddWLfR20l3NN9fNfIAFWCmREnC6hjKCZERDgkvBgZOCAKcs+6bVJGyMmKBcsp4W7kanqKn71tX7Y63jp+jXQ== + dependencies: + "@ember-data/canary-features" "3.28.13" + "@ember-data/private-build-infra" "3.28.13" + "@ember/string" "^3.0.0" + "@glimmer/tracking" "^1.0.4" + ember-cached-decorator-polyfill "^0.1.4" + ember-cli-babel "^7.26.6" ember-cli-path-utils "^1.0.0" - ember-cli-typescript "^3.1.3" - heimdalljs "^0.3.0" + ember-cli-typescript "^4.1.0" -"@ember-decorators/component@^6.1.0", "@ember-decorators/component@^6.1.1": +"@ember-decorators/component@^6.1.1": version "6.1.1" resolved "https://registry.yarnpkg.com/@ember-decorators/component/-/component-6.1.1.tgz#b360dc4fa8e576ee1c840879399ef1745fd96e06" integrity sha512-Cj8tY/c0MC/rsipqsiWLh3YVN72DK92edPYamD/HzvftwzC6oDwawWk8RmStiBnG9PG/vntAt41l3S7HSSA+1Q== @@ -1384,14 +1324,24 @@ "@ember-decorators/utils" "^6.1.1" ember-cli-babel "^7.1.3" -"@ember-decorators/utils@^6.1.1": +"@ember-decorators/utils@^6.1.0", "@ember-decorators/utils@^6.1.1": version "6.1.1" resolved "https://registry.yarnpkg.com/@ember-decorators/utils/-/utils-6.1.1.tgz#6b619814942b4fb3747cfa9f540c9f05283d7c5e" integrity sha512-0KqnoeoLKb6AyoSU65TRF5T85wmS4uDn06oARddwNPxxf/lt5jQlh41uX3W7V/fWL9tPu8x1L1Vvpc80MN1+YA== dependencies: ember-cli-babel "^7.1.3" -"@ember/edition-utils@^1.1.1", "@ember/edition-utils@^1.2.0": +"@ember-template-lint/todo-utils@^10.0.0": + version "10.0.0" + resolved "https://registry.yarnpkg.com/@ember-template-lint/todo-utils/-/todo-utils-10.0.0.tgz#085aafcf31ca04ba4d3a9460f088aed752b90ea8" + integrity sha512-US8VKnetBOl8KfKz+rXGsosz6rIETNwSz2F2frM8hIoJfF/d6ME1Iz1K7tPYZEE6SoKqZFlBs5XZPSmzRnabjA== + dependencies: + "@types/eslint" "^7.2.13" + fs-extra "^9.1.0" + slash "^3.0.0" + tslib "^2.2.0" + +"@ember/edition-utils@^1.2.0": version "1.2.0" resolved "https://registry.yarnpkg.com/@ember/edition-utils/-/edition-utils-1.2.0.tgz#a039f542dc14c8e8299c81cd5abba95e2459cfa6" integrity sha512-VmVq/8saCaPdesQmftPqbFtxJWrzxNGSQ+e8x8LLe3Hjm36pJ04Q8LeORGZkAeOhldoUX9seLGmSaHeXkIqoog== @@ -1408,48 +1358,68 @@ jquery "^3.4.1" resolve "^1.11.1" -"@ember/optional-features@^1.1.0": - version "1.3.0" - resolved "https://registry.yarnpkg.com/@ember/optional-features/-/optional-features-1.3.0.tgz#d7da860417b85a56cec88419f30da5ee1dde2756" - integrity sha512-Lrfojy4xKwTX+J4EAylmxZY2TO6bQtP4Lg5C8/z2priVqiT0X5fVB1+4WQCJbRBetctO1lMDnqjmhWCVKB8bmQ== +"@ember/optional-features@^2.0.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@ember/optional-features/-/optional-features-2.1.0.tgz#8e15672ca342b5ca6d4d8a00558dc696db0d6f16" + integrity sha512-IXjDpTFhsjPk9h3OXwXjlRfhM/Wjtw2E71Xos/81ZsTTwZMB9H+DWhsxePXOkzYy7Jvw4TIzKbMfcnT8mrtwWQ== dependencies: - chalk "^3.0.0" - ember-cli-version-checker "^3.1.3" - glob "^7.1.6" - inquirer "^7.0.1" - mkdirp "^0.5.1" + chalk "^4.1.2" + ember-cli-version-checker "^5.1.2" + glob "^7.1.7" + inquirer "^7.3.3" + mkdirp "^1.0.4" silent-error "^1.1.1" - util.promisify "^1.0.0" -"@ember/ordered-set@^2.0.3": - version "2.0.3" - resolved "https://registry.yarnpkg.com/@ember/ordered-set/-/ordered-set-2.0.3.tgz#2ac1ca73b3bd116063cae814898832ef434a57f9" - integrity sha512-F4yfVk6WMc4AUHxeZsC3CaKyTvO0qSZJy7WWHCFTlVDQw6vubn+FvnGdhzpN1F00EiXMI4Tv1tJdSquHcCnYrA== +"@ember/render-modifiers@^2.0.4": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@ember/render-modifiers/-/render-modifiers-2.1.0.tgz#f4fff95a8b5cfbe947ec46644732d511711c5bf9" + integrity sha512-LruhfoDv2itpk0fA0IC76Sxjcnq/7BC6txpQo40hOko8Dn6OxwQfxkPIbZGV0Cz7df+iX+VJrcYzNIvlc3w2EQ== dependencies: - ember-cli-babel "^6.16.0" - ember-compatibility-helpers "^1.1.1" + "@embroider/macros" "^1.0.0" + ember-cli-babel "^7.26.11" + ember-modifier-manager-polyfill "^1.2.0" -"@ember/render-modifiers@^1.0.2": - version "1.0.2" - resolved "https://registry.yarnpkg.com/@ember/render-modifiers/-/render-modifiers-1.0.2.tgz#2e87c48db49d922ce4850d707215caaac60d8444" - integrity sha512-6tEnHl5+62NTSAG2mwhGMFPhUrJQjoVqV+slsn+rlTknm2Zik+iwxBQEbwaiQOU1FUYxkS8RWcieovRNMR8inQ== +"@ember/string@^3.0.0", "@ember/string@^3.0.1": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@ember/string/-/string-3.1.1.tgz#0a5ac0d1e4925259e41d5c8d55ef616117d47ff0" + integrity sha512-UbXJ+k3QOrYN4SRPHgXCqYIJ+yWWUg1+vr0H4DhdQPTy8LJfyqwZ2tc5uqpSSnEXE+/1KopHBE5J8GDagAg5cg== dependencies: - ember-cli-babel "^7.10.0" - ember-modifier-manager-polyfill "^1.1.0" + ember-cli-babel "^7.26.6" -"@ember/test-helpers@^1.7.1": - version "1.7.3" - resolved "https://registry.yarnpkg.com/@ember/test-helpers/-/test-helpers-1.7.3.tgz#d06b36cb579b172186b11b236b90f0a1aba15ab0" - integrity sha512-0NwxM9rtl/vD/Zqv8cHefLxojL3l2xuRs6pEppff/Fe39ybXz5H7hm5ZvnpRO/lpSsIeX7tivht9ko6/V+sShw== +"@ember/test-helpers@^2.6.0": + version "2.9.4" + resolved "https://registry.yarnpkg.com/@ember/test-helpers/-/test-helpers-2.9.4.tgz#985022e9ba05cfc918bcf08b77cbb355f85b723e" + integrity sha512-z+Qs1NYWyIVDmrY6WdmOS5mdG1lJ5CFfzh6dRhLfs9lq45deDaDrVNcaCYhnNeJZTvUBK2XR2SvPcZm0RloXdA== dependencies: + "@ember/test-waiters" "^3.0.0" + "@embroider/macros" "^1.10.0" + "@embroider/util" "^1.9.0" broccoli-debug "^0.6.5" - broccoli-funnel "^2.0.2" - ember-assign-polyfill "^2.6.0" - ember-cli-babel "^7.26.2" - ember-cli-htmlbars-inline-precompile "^2.1.0" - ember-test-waiters "^1.1.1" + broccoli-funnel "^3.0.8" + ember-cli-babel "^7.26.11" + ember-cli-htmlbars "^6.1.1" + ember-destroyable-polyfill "^2.0.3" + +"@ember/test-waiters@^3.0.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@ember/test-waiters/-/test-waiters-3.1.0.tgz#61399919cbf793978da0b8bfdfdb7bca0cb80e9e" + integrity sha512-bb9h95ktG2wKY9+ja1sdsFBdOms2lB19VWs8wmNpzgHv1NCetonBoV5jHBV4DHt0uS1tg9z66cZqhUVlYs96KQ== + dependencies: + calculate-cache-key-for-tree "^2.0.0" + ember-cli-babel "^7.26.6" + ember-cli-version-checker "^5.1.2" + semver "^7.3.5" -"@embroider/macros@^0.50.0 || ^1.0.0", "@embroider/macros@^1.0.0", "@embroider/macros@^1.8.0": +"@embroider/addon-shim@^1.8.3", "@embroider/addon-shim@^1.8.4", "@embroider/addon-shim@^1.8.6": + version "1.8.7" + resolved "https://registry.yarnpkg.com/@embroider/addon-shim/-/addon-shim-1.8.7.tgz#ba2dcb0647ed2cb0c500c835326266b89ceec595" + integrity sha512-JGOQNRj3UR0NdWEg8MsM2eqPLncEwSB1IX+rwntIj22TEKj8biqx7GDgSbeH+ZedijmCh354Hf2c5rthrdzUAw== + dependencies: + "@embroider/shared-internals" "^2.5.1" + broccoli-funnel "^3.0.8" + semver "^7.3.8" + +"@embroider/macros@^0.50.0 || ^1.0.0", "@embroider/macros@^1.0.0", "@embroider/macros@^1.10.0", "@embroider/macros@^1.12.0", "@embroider/macros@^1.15.0", "@embroider/macros@^1.2.0", "@embroider/macros@^1.8.0": version "1.15.1" resolved "https://registry.yarnpkg.com/@embroider/macros/-/macros-1.15.1.tgz#fbcd10f5df47243a1561445ec066f97e1a87649a" integrity sha512-l6rv4UVyQ+0XZbabpGXXUNpm7vMEVFzFwWnBeyKFLmmxuEQ4tgxEgR9qDRF/IWJXGS6na6pXN3jTk/cOaQiCpw== @@ -1464,7 +1434,7 @@ resolve "^1.20.0" semver "^7.3.2" -"@embroider/shared-internals@2.6.0": +"@embroider/shared-internals@2.6.0", "@embroider/shared-internals@^2.0.0", "@embroider/shared-internals@^2.5.1": version "2.6.0" resolved "https://registry.yarnpkg.com/@embroider/shared-internals/-/shared-internals-2.6.0.tgz#851fd8d051fd4f7f93b2b7130e2ae5cdd537c5d6" integrity sha512-A2BYQkhotdKOXuTaxvo9dqOIMbk+2LqFyqvfaaePkZcFJvtCkvTaD31/sSzqvRF6rdeBHjdMwU9Z2baPZ55fEQ== @@ -1494,6 +1464,16 @@ semver "^7.3.5" typescript-memoize "^1.0.1" +"@embroider/util@^0.39.1 || ^0.40.0 || ^0.41.0 || ^1.0.0", "@embroider/util@^1.0.0", "@embroider/util@^1.11.0", "@embroider/util@^1.2.0", "@embroider/util@^1.9.0": + version "1.13.0" + resolved "https://registry.yarnpkg.com/@embroider/util/-/util-1.13.0.tgz#075c0be2955505677e7fd834847b1e7b30b5e11a" + integrity sha512-29NeyZ8jvcQXCZThaARpbU9nBNMXj/5dCuQmFmxyEC2AcHFzBBhhL0ebv6VI2e3f44g+pAFbCMbN434VBh2xqQ== + dependencies: + "@babel/core" "^7.24.0" + "@embroider/macros" "^1.15.0" + broccoli-funnel "^3.0.5" + ember-cli-babel "^8.2.0" + "@eslint-community/eslint-utils@^4.2.0": version "4.4.0" resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz#a23514e8fb9af1269d5f7788aa556798d61c6b59" @@ -1526,7 +1506,7 @@ resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.57.0.tgz#a5417ae8427873f1dd08b70b3574b453e67b5f7f" integrity sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g== -"@glimmer/component@^1.0.0": +"@glimmer/component@^1.0.4", "@glimmer/component@^1.1.2": version "1.1.2" resolved "https://registry.yarnpkg.com/@glimmer/component/-/component-1.1.2.tgz#892ec0c9f0b6b3e41c112be502fde073cf24d17c" integrity sha512-XyAsEEa4kWOPy+gIdMjJ8XlzA3qrGH55ZDv6nA16ibalCR17k74BI0CztxuRds+Rm6CtbUVgheCVlcCULuqD7A== @@ -1556,6 +1536,20 @@ resolved "https://registry.yarnpkg.com/@glimmer/env/-/env-0.1.7.tgz#fd2d2b55a9029c6b37a6c935e8c8871ae70dfa07" integrity sha512-JKF/a9I9jw6fGoz8kA7LEQslrwJ5jms5CXhu/aqkBWk+PmZ6pTl8mlb/eJ/5ujBGTiQzBhy5AIWF712iA+4/mw== +"@glimmer/global-context@0.65.4": + version "0.65.4" + resolved "https://registry.yarnpkg.com/@glimmer/global-context/-/global-context-0.65.4.tgz#1da1d59dd4260ce912c40e474cd39c2e82de51b8" + integrity sha512-RSYCPG/uVR5XCDcPREBclncU7R0zkjACbADP+n3FWAH1TfWbXRMDIkvO/ZlwHkjHoCZf6tIM6p5S/MoFzfJEJA== + dependencies: + "@glimmer/env" "^0.1.7" + +"@glimmer/interfaces@0.65.4": + version "0.65.4" + resolved "https://registry.yarnpkg.com/@glimmer/interfaces/-/interfaces-0.65.4.tgz#d298cc2b12b8ebcf269f39246ca7ab92816f6680" + integrity sha512-R0kby79tGNKZOojVJa/7y0JH9Eq4SV+L1s6GcZy30QUZ1g1AAGS5XwCIXc9Sc09coGcv//q+6NLeSw7nlx1y4A== + dependencies: + "@simple-dom/interface" "^1.4.0" + "@glimmer/interfaces@0.84.3": version "0.84.3" resolved "https://registry.yarnpkg.com/@glimmer/interfaces/-/interfaces-0.84.3.tgz#629777a4abe373b0785656f6c8d08989f5784805" @@ -1563,22 +1557,26 @@ dependencies: "@simple-dom/interface" "^1.4.0" -"@glimmer/interfaces@^0.47.9": - version "0.47.9" - resolved "https://registry.yarnpkg.com/@glimmer/interfaces/-/interfaces-0.47.9.tgz#4c50b5343815045318bba38915f780ae39f14590" - integrity sha512-xne80DHkPC70u08LKV9g0+PboAmIw0A+vDXjJXMrDoRcNzCR4dXR6nvKD/Een+wbwwBaRawCIn45Rnk5+Dyvrg== +"@glimmer/reference@^0.65.0": + version "0.65.4" + resolved "https://registry.yarnpkg.com/@glimmer/reference/-/reference-0.65.4.tgz#bbc8becd6a1bf01fc189b6489e27446437194711" + integrity sha512-yuRVE4qyqrlCndDMrHKDWUbDmGDCjPzsFtlTmxxnhDMJAdQsnr2cRLITHvQRDm1tXfigVvyKnomeuYhRRbBqYQ== dependencies: - "@simple-dom/interface" "^1.4.0" + "@glimmer/env" "^0.1.7" + "@glimmer/global-context" "0.65.4" + "@glimmer/interfaces" "0.65.4" + "@glimmer/util" "0.65.4" + "@glimmer/validator" "0.65.4" -"@glimmer/syntax@^0.47.9": - version "0.47.9" - resolved "https://registry.yarnpkg.com/@glimmer/syntax/-/syntax-0.47.9.tgz#f3d141efc97f601928335771721d1f27eb1ed7d2" - integrity sha512-ld3x2bTkAr/BXOkI1b3cDVBwMl0BTYtBNKODks0Fi/1DLx+F1jl4abpKJ5cww1k2iQ75jgG31IhBwb7YC2PmFA== +"@glimmer/syntax@^0.65.0": + version "0.65.4" + resolved "https://registry.yarnpkg.com/@glimmer/syntax/-/syntax-0.65.4.tgz#49164de5dc9e8b67084ec009bdd865e379d8a971" + integrity sha512-y+/C3e8w96efk3a/Z5If9o4ztKJwrr8RtDpbhV2J8X+DUsn5ic2N3IIdlThbt/Zn6tkP1K3dY6uaFUx3pGTvVQ== dependencies: - "@glimmer/interfaces" "^0.47.9" - "@glimmer/util" "^0.47.9" - handlebars "^4.5.1" - simple-html-tokenizer "^0.5.9" + "@glimmer/interfaces" "0.65.4" + "@glimmer/util" "0.65.4" + "@handlebars/parser" "^1.1.0" + simple-html-tokenizer "^0.5.10" "@glimmer/syntax@^0.84.3": version "0.84.3" @@ -1590,6 +1588,23 @@ "@handlebars/parser" "~2.0.0" simple-html-tokenizer "^0.5.11" +"@glimmer/tracking@^1.0.4", "@glimmer/tracking@^1.1.2": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@glimmer/tracking/-/tracking-1.1.2.tgz#74e71be07b0a7066518d24044d2665d0cf8281eb" + integrity sha512-cyV32zsHh+CnftuRX84ALZpd2rpbDrhLhJnTXn9W//QpqdRZ5rdMsxSY9fOsj0CKEc706tmEU299oNnDc0d7tA== + dependencies: + "@glimmer/env" "^0.1.7" + "@glimmer/validator" "^0.44.0" + +"@glimmer/util@0.65.4": + version "0.65.4" + resolved "https://registry.yarnpkg.com/@glimmer/util/-/util-0.65.4.tgz#e464145078f3f40da9013ff2590a6016515455d2" + integrity sha512-aofe+rdBhkREKP2GZta6jy1UcbRRMfWx7M18zxGxspPoeD08NscD04Kx+WiOKXmC1TcrfITr8jvqMfrKrMzYWQ== + dependencies: + "@glimmer/env" "0.1.7" + "@glimmer/interfaces" "0.65.4" + "@simple-dom/interface" "^1.4.0" + "@glimmer/util@0.84.3": version "0.84.3" resolved "https://registry.yarnpkg.com/@glimmer/util/-/util-0.84.3.tgz#9ae0166982c0b48aa94b02d6ba8c2c81976ade4b" @@ -1604,13 +1619,30 @@ resolved "https://registry.yarnpkg.com/@glimmer/util/-/util-0.44.0.tgz#45df98d73812440206ae7bda87cfe04aaae21ed9" integrity sha512-duAsm30uVK9jSysElCbLyU6QQYO2X9iLDLBIBUcCqck9qN1o3tK2qWiHbGK5d6g8E2AJ4H88UrfElkyaJlGrwg== -"@glimmer/util@^0.47.9": - version "0.47.9" - resolved "https://registry.yarnpkg.com/@glimmer/util/-/util-0.47.9.tgz#ad3085eba3975bcbc74d28aefc871becbe800417" - integrity sha512-MJEumozi3TKmx+kzTpqPdC0jLEIuWSS3JNdBXceqTGRZQGmE5Zxqd8ydH5KOYpsKSfURHGCi2vU6+X/Q4z2b6g== +"@glimmer/validator@0.65.4", "@glimmer/validator@^0.65.0": + version "0.65.4" + resolved "https://registry.yarnpkg.com/@glimmer/validator/-/validator-0.65.4.tgz#12c27a9a63706c60e6499fd687940e9d1affb32c" + integrity sha512-0YUjAyo45DF5JkQxdv5kHn96nMNhvZiEwsAD4Jme0kk5Q9MQcPOUtN76pQAS4f+C6GdF9DeUr2yGXZLFMmb+LA== dependencies: - "@glimmer/env" "0.1.7" - "@simple-dom/interface" "^1.4.0" + "@glimmer/env" "^0.1.7" + "@glimmer/global-context" "0.65.4" + +"@glimmer/validator@^0.44.0": + version "0.44.0" + resolved "https://registry.yarnpkg.com/@glimmer/validator/-/validator-0.44.0.tgz#03d127097dc9cb23052cdb7fcae59d0a9dca53e1" + integrity sha512-i01plR0EgFVz69GDrEuFgq1NheIjZcyTy3c7q+w7d096ddPVeVcRzU3LKaqCfovvLJ+6lJx40j45ecycASUUyw== + +"@glimmer/vm-babel-plugins@0.80.3": + version "0.80.3" + resolved "https://registry.yarnpkg.com/@glimmer/vm-babel-plugins/-/vm-babel-plugins-0.80.3.tgz#434b62172318cac43830d3ac29818cf2c5f111c1" + integrity sha512-9ej6xlm5MzHBJ5am2l0dbbn8Z0wJoYoMpM8FcrGMlUP6SPMLWxvxpMsApgQo8u6dvZRCjR3/bw3fdf7GOy0AFw== + dependencies: + babel-plugin-debug-macros "^0.3.4" + +"@handlebars/parser@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@handlebars/parser/-/parser-1.1.0.tgz#d6dbc7574774b238114582410e8fee0dc3532bdf" + integrity sha512-rR7tJoSwJ2eooOpYGxGGW95sLq6GXUaS1UtWvN7pei6n2/okYvCGld9vsUTvkl2migxbkszsycwtMf/GEc1k1A== "@handlebars/parser@~2.0.0": version "2.0.0" @@ -1668,7 +1700,7 @@ resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32" integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== -"@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25": +"@jridgewell/trace-mapping@^0.3.20", "@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25": version "0.3.25" resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz#15f190e98895f3fc23276ee14bc76b675c2e50f0" integrity sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ== @@ -1676,6 +1708,11 @@ "@jridgewell/resolve-uri" "^3.1.0" "@jridgewell/sourcemap-codec" "^1.4.14" +"@jsdevtools/ono@^7.1.3": + version "7.1.3" + resolved "https://registry.yarnpkg.com/@jsdevtools/ono/-/ono-7.1.3.tgz#9df03bbd7c696a5c58885c34aa06da41c8543796" + integrity sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg== + "@lezer/common@^1.0.0", "@lezer/common@^1.1.0": version "1.2.1" resolved "https://registry.yarnpkg.com/@lezer/common/-/common-1.2.1.tgz#198b278b7869668e1bebbe687586e12a42731049" @@ -1709,13 +1746,12 @@ concat-stream "~2.0.0" minimist "1.2.8" -"@mrmlnc/readdir-enhanced@^2.2.1": - version "2.2.1" - resolved "https://registry.yarnpkg.com/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz#524af240d1a360527b730475ecfa1344aa540dde" - integrity sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g== +"@nicolo-ribaudo/eslint-scope-5-internals@5.1.1-v1": + version "5.1.1-v1" + resolved "https://registry.yarnpkg.com/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz#dbf733a965ca47b1973177dc0bb6c889edcfb129" + integrity sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg== dependencies: - call-me-maybe "^1.0.1" - glob-to-regexp "^0.3.0" + eslint-scope "5.1.1" "@nodelib/fs.scandir@2.1.5": version "2.1.5" @@ -1730,11 +1766,6 @@ resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== -"@nodelib/fs.stat@^1.1.2": - version "1.1.3" - resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz#2b5a3ab3f918cca48a8c754c08168e3f03eba61b" - integrity sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw== - "@nodelib/fs.walk@^1.2.3", "@nodelib/fs.walk@^1.2.8": version "1.2.8" resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" @@ -1753,6 +1784,11 @@ resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.7.0.tgz#9a06f4f137ee84d7df0460c1fdb1135ffa6c50fd" integrity sha512-ONhaKPIufzzrlNbqtWFFd+jlnemX6lJAgq9ZeiZtS7I1PIf/la7CW4m83rTXRnVnsMbW2k56pGYu7AUFJD9Pow== +"@socket.io/component-emitter@~3.1.0": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@socket.io/component-emitter/-/component-emitter-3.1.1.tgz#621270c02c0a5d4f4669eb1caa9723c91cf201de" + integrity sha512-dzJtaDAAoXx4GCOJpbB2eG/Qj8VDpdwkLsWGzGm+0L7E8/434RyMbAHmk9ubXWVAb9nXmc44jUf8GKqVDiKezg== + "@textlint/ast-node-types@^12.6.1": version "12.6.1" resolved "https://registry.yarnpkg.com/@textlint/ast-node-types/-/ast-node-types-12.6.1.tgz#35ecefe74e701d7f632c083d4fda89cab1b89012" @@ -1788,10 +1824,12 @@ "@types/connect" "*" "@types/node" "*" -"@types/broccoli-plugin@^1.3.0": - version "1.3.0" - resolved "https://registry.yarnpkg.com/@types/broccoli-plugin/-/broccoli-plugin-1.3.0.tgz#38f8462fecaebc4e09a32e4d4ed1b9808f75bbca" - integrity sha512-SLk4/hFc2kGvgwNFrpn2O1juxFOllcHAywvlo7VwxfExLzoz1GGJ0oIZCwj5fwSpvHw4AWpZjJ1fUvb62PDayQ== +"@types/broccoli-plugin@^3.0.0": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@types/broccoli-plugin/-/broccoli-plugin-3.0.0.tgz#290fda2270c47a568edfd0cefab8bb840d8bb7b2" + integrity sha512-f+TcsARR2PovfFRKFdCX0kfH/QoM3ZVD2h1rl2mNvrKO0fq2uBNCBsTU3JanfU4COCt5cXpTfARyUsERlC8vIw== + dependencies: + broccoli-plugin "*" "@types/chai-as-promised@^7.1.2": version "7.1.8" @@ -1812,7 +1850,43 @@ dependencies: "@types/node" "*" -"@types/estree@*": +"@types/cookie@^0.4.1": + version "0.4.1" + resolved "https://registry.yarnpkg.com/@types/cookie/-/cookie-0.4.1.tgz#bfd02c1f2224567676c1545199f87c3a861d878d" + integrity sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q== + +"@types/cors@^2.8.12": + version "2.8.17" + resolved "https://registry.yarnpkg.com/@types/cors/-/cors-2.8.17.tgz#5d718a5e494a8166f569d986794e49c48b216b2b" + integrity sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA== + dependencies: + "@types/node" "*" + +"@types/eslint-scope@^3.7.3": + version "3.7.7" + resolved "https://registry.yarnpkg.com/@types/eslint-scope/-/eslint-scope-3.7.7.tgz#3108bd5f18b0cdb277c867b3dd449c9ed7079ac5" + integrity sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg== + dependencies: + "@types/eslint" "*" + "@types/estree" "*" + +"@types/eslint@*": + version "8.56.9" + resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-8.56.9.tgz#403e9ced04a34e63f1c383c5b8ee1a94442c8cc4" + integrity sha512-W4W3KcqzjJ0sHg2vAq9vfml6OhsJ53TcUjUqfzzZf/EChUtwspszj/S0pzMxnfRcO55/iGq47dscXw71Fxc4Zg== + dependencies: + "@types/estree" "*" + "@types/json-schema" "*" + +"@types/eslint@^7.2.13": + version "7.29.0" + resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-7.29.0.tgz#e56ddc8e542815272720bb0b4ccc2aff9c3e1c78" + integrity sha512-VNcvioYDH8/FxaeTKkM4/TiTwt6pBV9E3OfGmvaw8tPl0rrHCJ4Ll15HRT+pMiFAf/MLQvAzC+6RzUMEL9Ceng== + dependencies: + "@types/estree" "*" + "@types/json-schema" "*" + +"@types/estree@*", "@types/estree@^1.0.5": version "1.0.5" resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.5.tgz#a6ce3e556e00fd9895dd872dd172ad0d4bd687f4" integrity sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw== @@ -1844,6 +1918,13 @@ dependencies: "@types/node" "*" +"@types/fs-extra@^8.1.0": + version "8.1.5" + resolved "https://registry.yarnpkg.com/@types/fs-extra/-/fs-extra-8.1.5.tgz#33aae2962d3b3ec9219b5aca2555ee00274f5927" + integrity sha512-0dzKcwO+S8s2kuF5Z9oUWatQJj5Uq/iqphEtE3GQJVRRYm/tD1LglU2UnXi2A8jLq5umkGouOXOR9y0n613ZwQ== + dependencies: + "@types/node" "*" + "@types/glob@*": version "8.1.0" resolved "https://registry.yarnpkg.com/@types/glob/-/glob-8.1.0.tgz#b63e70155391b0584dce44e7ea25190bbc38f2fc" @@ -1865,7 +1946,7 @@ resolved "https://registry.yarnpkg.com/@types/http-errors/-/http-errors-2.0.4.tgz#7eb47726c391b7345a6ec35ad7f4de469cf5ba4f" integrity sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA== -"@types/json-schema@^7.0.5": +"@types/json-schema@*", "@types/json-schema@^7.0.15", "@types/json-schema@^7.0.5", "@types/json-schema@^7.0.8", "@types/json-schema@^7.0.9": version "7.0.15" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== @@ -1887,7 +1968,7 @@ resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-5.1.2.tgz#07508b45797cb81ec3f273011b054cd0755eddca" integrity sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA== -"@types/minimatch@^3.0.3": +"@types/minimatch@^3.0.3", "@types/minimatch@^3.0.4": version "3.0.5" resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.5.tgz#1001cc5e6a3704b83c236027e77f2f58ea010f40" integrity sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ== @@ -1897,7 +1978,7 @@ resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.5.tgz#ec10755e871497bcd83efe927e43ec46e8c0747e" integrity sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag== -"@types/node@*": +"@types/node@*", "@types/node@>=10.0.0": version "20.12.7" resolved "https://registry.yarnpkg.com/@types/node/-/node-20.12.7.tgz#04080362fa3dd6c5822061aa3124f5c152cff384" integrity sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg== @@ -1924,7 +2005,7 @@ resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.7.tgz#50ae4353eaaddc04044279812f52c8c65857dbcb" integrity sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ== -"@types/rimraf@^2.0.2": +"@types/rimraf@^2.0.2", "@types/rimraf@^2.0.3": version "2.0.5" resolved "https://registry.yarnpkg.com/@types/rimraf/-/rimraf-2.0.5.tgz#368fb04d59630b727fc05a74d2ca557f64a8ef98" integrity sha512-YyP+VfeaqAyFmXoTh3HChxOQMyjByRMsHU7kc5KOJkSlXudhMhQIALbYV7rHh/l8d2lX3VUQzprrcAgWdRuU8g== @@ -1964,6 +2045,14 @@ resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.2.0.tgz#756641adb587851b5ccb3e095daf27ae581c8406" integrity sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ== +"@webassemblyjs/ast@1.12.1", "@webassemblyjs/ast@^1.12.1": + version "1.12.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.12.1.tgz#bb16a0e8b1914f979f45864c23819cc3e3f0d4bb" + integrity sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg== + dependencies: + "@webassemblyjs/helper-numbers" "1.11.6" + "@webassemblyjs/helper-wasm-bytecode" "1.11.6" + "@webassemblyjs/ast@1.9.0": version "1.9.0" resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.9.0.tgz#bd850604b4042459a5a41cd7d338cbed695ed964" @@ -1973,16 +2062,31 @@ "@webassemblyjs/helper-wasm-bytecode" "1.9.0" "@webassemblyjs/wast-parser" "1.9.0" +"@webassemblyjs/floating-point-hex-parser@1.11.6": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz#dacbcb95aff135c8260f77fa3b4c5fea600a6431" + integrity sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw== + "@webassemblyjs/floating-point-hex-parser@1.9.0": version "1.9.0" resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz#3c3d3b271bddfc84deb00f71344438311d52ffb4" integrity sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA== +"@webassemblyjs/helper-api-error@1.11.6": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz#6132f68c4acd59dcd141c44b18cbebbd9f2fa768" + integrity sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q== + "@webassemblyjs/helper-api-error@1.9.0": version "1.9.0" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz#203f676e333b96c9da2eeab3ccef33c45928b6a2" integrity sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw== +"@webassemblyjs/helper-buffer@1.12.1": + version "1.12.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz#6df20d272ea5439bf20ab3492b7fb70e9bfcb3f6" + integrity sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw== + "@webassemblyjs/helper-buffer@1.9.0": version "1.9.0" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz#a1442d269c5feb23fcbc9ef759dac3547f29de00" @@ -2007,11 +2111,35 @@ dependencies: "@webassemblyjs/ast" "1.9.0" +"@webassemblyjs/helper-numbers@1.11.6": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz#cbce5e7e0c1bd32cf4905ae444ef64cea919f1b5" + integrity sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g== + dependencies: + "@webassemblyjs/floating-point-hex-parser" "1.11.6" + "@webassemblyjs/helper-api-error" "1.11.6" + "@xtuc/long" "4.2.2" + +"@webassemblyjs/helper-wasm-bytecode@1.11.6": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz#bb2ebdb3b83aa26d9baad4c46d4315283acd51e9" + integrity sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA== + "@webassemblyjs/helper-wasm-bytecode@1.9.0": version "1.9.0" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz#4fed8beac9b8c14f8c58b70d124d549dd1fe5790" integrity sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw== +"@webassemblyjs/helper-wasm-section@1.12.1": + version "1.12.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz#3da623233ae1a60409b509a52ade9bc22a37f7bf" + integrity sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g== + dependencies: + "@webassemblyjs/ast" "1.12.1" + "@webassemblyjs/helper-buffer" "1.12.1" + "@webassemblyjs/helper-wasm-bytecode" "1.11.6" + "@webassemblyjs/wasm-gen" "1.12.1" + "@webassemblyjs/helper-wasm-section@1.9.0": version "1.9.0" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz#5a4138d5a6292ba18b04c5ae49717e4167965346" @@ -2022,6 +2150,13 @@ "@webassemblyjs/helper-wasm-bytecode" "1.9.0" "@webassemblyjs/wasm-gen" "1.9.0" +"@webassemblyjs/ieee754@1.11.6": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz#bb665c91d0b14fffceb0e38298c329af043c6e3a" + integrity sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg== + dependencies: + "@xtuc/ieee754" "^1.2.0" + "@webassemblyjs/ieee754@1.9.0": version "1.9.0" resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz#15c7a0fbaae83fb26143bbacf6d6df1702ad39e4" @@ -2029,6 +2164,13 @@ dependencies: "@xtuc/ieee754" "^1.2.0" +"@webassemblyjs/leb128@1.11.6": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.11.6.tgz#70e60e5e82f9ac81118bc25381a0b283893240d7" + integrity sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ== + dependencies: + "@xtuc/long" "4.2.2" + "@webassemblyjs/leb128@1.9.0": version "1.9.0" resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.9.0.tgz#f19ca0b76a6dc55623a09cffa769e838fa1e1c95" @@ -2036,6 +2178,11 @@ dependencies: "@xtuc/long" "4.2.2" +"@webassemblyjs/utf8@1.11.6": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.11.6.tgz#90f8bc34c561595fe156603be7253cdbcd0fab5a" + integrity sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA== + "@webassemblyjs/utf8@1.9.0": version "1.9.0" resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.9.0.tgz#04d33b636f78e6a6813227e82402f7637b6229ab" @@ -2055,6 +2202,31 @@ "@webassemblyjs/wasm-parser" "1.9.0" "@webassemblyjs/wast-printer" "1.9.0" +"@webassemblyjs/wasm-edit@^1.12.1": + version "1.12.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz#9f9f3ff52a14c980939be0ef9d5df9ebc678ae3b" + integrity sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g== + dependencies: + "@webassemblyjs/ast" "1.12.1" + "@webassemblyjs/helper-buffer" "1.12.1" + "@webassemblyjs/helper-wasm-bytecode" "1.11.6" + "@webassemblyjs/helper-wasm-section" "1.12.1" + "@webassemblyjs/wasm-gen" "1.12.1" + "@webassemblyjs/wasm-opt" "1.12.1" + "@webassemblyjs/wasm-parser" "1.12.1" + "@webassemblyjs/wast-printer" "1.12.1" + +"@webassemblyjs/wasm-gen@1.12.1": + version "1.12.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz#a6520601da1b5700448273666a71ad0a45d78547" + integrity sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w== + dependencies: + "@webassemblyjs/ast" "1.12.1" + "@webassemblyjs/helper-wasm-bytecode" "1.11.6" + "@webassemblyjs/ieee754" "1.11.6" + "@webassemblyjs/leb128" "1.11.6" + "@webassemblyjs/utf8" "1.11.6" + "@webassemblyjs/wasm-gen@1.9.0": version "1.9.0" resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz#50bc70ec68ded8e2763b01a1418bf43491a7a49c" @@ -2066,6 +2238,16 @@ "@webassemblyjs/leb128" "1.9.0" "@webassemblyjs/utf8" "1.9.0" +"@webassemblyjs/wasm-opt@1.12.1": + version "1.12.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz#9e6e81475dfcfb62dab574ac2dda38226c232bc5" + integrity sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg== + dependencies: + "@webassemblyjs/ast" "1.12.1" + "@webassemblyjs/helper-buffer" "1.12.1" + "@webassemblyjs/wasm-gen" "1.12.1" + "@webassemblyjs/wasm-parser" "1.12.1" + "@webassemblyjs/wasm-opt@1.9.0": version "1.9.0" resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz#2211181e5b31326443cc8112eb9f0b9028721a61" @@ -2076,6 +2258,18 @@ "@webassemblyjs/wasm-gen" "1.9.0" "@webassemblyjs/wasm-parser" "1.9.0" +"@webassemblyjs/wasm-parser@1.12.1", "@webassemblyjs/wasm-parser@^1.12.1": + version "1.12.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz#c47acb90e6f083391e3fa61d113650eea1e95937" + integrity sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ== + dependencies: + "@webassemblyjs/ast" "1.12.1" + "@webassemblyjs/helper-api-error" "1.11.6" + "@webassemblyjs/helper-wasm-bytecode" "1.11.6" + "@webassemblyjs/ieee754" "1.11.6" + "@webassemblyjs/leb128" "1.11.6" + "@webassemblyjs/utf8" "1.11.6" + "@webassemblyjs/wasm-parser@1.9.0": version "1.9.0" resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz#9d48e44826df4a6598294aa6c87469d642fff65e" @@ -2100,6 +2294,14 @@ "@webassemblyjs/helper-fsm" "1.9.0" "@xtuc/long" "4.2.2" +"@webassemblyjs/wast-printer@1.12.1": + version "1.12.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz#bcecf661d7d1abdaf989d8341a4833e33e2b31ac" + integrity sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA== + dependencies: + "@webassemblyjs/ast" "1.12.1" + "@xtuc/long" "4.2.2" + "@webassemblyjs/wast-printer@1.9.0": version "1.9.0" resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz#4935d54c85fef637b00ce9f52377451d00d47899" @@ -2109,7 +2311,7 @@ "@webassemblyjs/wast-parser" "1.9.0" "@xtuc/long" "4.2.2" -"@xmldom/xmldom@^0.8.10": +"@xmldom/xmldom@^0.8.0", "@xmldom/xmldom@^0.8.10": version "0.8.10" resolved "https://registry.yarnpkg.com/@xmldom/xmldom/-/xmldom-0.8.10.tgz#a1337ca426aa61cef9fe15b5b28e340a72f6fa99" integrity sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw== @@ -2124,6 +2326,11 @@ resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d" integrity sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ== +Base64@~0.2.0: + version "0.2.1" + resolved "https://registry.yarnpkg.com/Base64/-/Base64-0.2.1.tgz#ba3a4230708e186705065e66babdd4c35cf60028" + integrity sha512-reGEWshDmTDQDsCec/HduOO9Wyj6yMOupMfhIf3ugN1TDlK2NQW4DDJSqNNtp380SNcvRfXtO8HSCQot0d0SMw== + Leaflet.vector-markers@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/Leaflet.vector-markers/-/Leaflet.vector-markers-0.0.6.tgz#d1d25b158a0f5d0a0353d662362b46b1d59b87f0" @@ -2138,7 +2345,7 @@ abbrev@1: resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== -abortcontroller-polyfill@^1.4.0: +abortcontroller-polyfill@^1.7.3: version "1.7.5" resolved "https://registry.yarnpkg.com/abortcontroller-polyfill/-/abortcontroller-polyfill-1.7.5.tgz#6738495f4e901fbb57b6c0611d0c75f76c485bed" integrity sha512-JMJ5soJWP18htbbxJjG7bG6yuI6pRhgJ0scHHTfkUjf6wjP912xZWvM+A4sJK3gqd9E8fcPbDnOefbA9Th/FIQ== @@ -2158,7 +2365,12 @@ acorn-dynamic-import@^3.0.0: dependencies: acorn "^5.0.0" -acorn-jsx@^5.0.0, acorn-jsx@^5.3.2: +acorn-import-assertions@^1.9.0: + version "1.9.0" + resolved "https://registry.yarnpkg.com/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz#507276249d684797c84e0734ef84860334cfb1ac" + integrity sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA== + +acorn-jsx@^5.3.2: version "5.3.2" resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== @@ -2182,37 +2394,46 @@ acorn@^5.0.0, acorn@^5.5.3: resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.7.4.tgz#3e8d8a9947d0599a1796d10225d7432f4a4acf5e" integrity sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg== -acorn@^6.0.7, acorn@^6.4.1: +acorn@^6.4.1: version "6.4.2" resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.2.tgz#35866fd710528e92de10cf06016498e47e39e1e6" integrity sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ== -acorn@^7.0.0, acorn@^7.1.0: +acorn@^7.0.0: version "7.4.1" resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== -acorn@^8.8.2, acorn@^8.9.0: +acorn@^8.7.1, acorn@^8.8.2, acorn@^8.9.0: version "8.11.3" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.11.3.tgz#71e0b14e13a4ec160724b38fb7b0f233b1b81d7a" integrity sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg== -after@0.8.2: - version "0.8.2" - resolved "https://registry.yarnpkg.com/after/-/after-0.8.2.tgz#fedb394f9f0e02aa9768e702bda23b505fae7e1f" - integrity sha512-QbJ0NTQ/I9DI3uSJA4cbexiwQeRAfjPScqIbSjUDd9TOrcg6pTkdgziesOqxBMBzit8vFCTwrP27t13vFOORRA== - ajv-errors@^1.0.0, ajv-errors@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d" integrity sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ== +ajv-formats@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ajv-formats/-/ajv-formats-2.1.1.tgz#6e669400659eb74973bbf2e33327180a0996b520" + integrity sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA== + dependencies: + ajv "^8.0.0" + ajv-keywords@^3.1.0, ajv-keywords@^3.4.1, ajv-keywords@^3.5.2: version "3.5.2" resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ== -ajv@^6.1.0, ajv@^6.10.2, ajv@^6.12.4, ajv@^6.9.1: +ajv-keywords@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-5.1.0.tgz#69d4d385a4733cdbeab44964a1170a88f87f0e16" + integrity sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw== + dependencies: + fast-deep-equal "^3.1.3" + +ajv@^6.1.0, ajv@^6.10.2, ajv@^6.12.4, ajv@^6.12.5: version "6.12.6" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== @@ -2222,6 +2443,16 @@ ajv@^6.1.0, ajv@^6.10.2, ajv@^6.12.4, ajv@^6.9.1: json-schema-traverse "^0.4.1" uri-js "^4.2.2" +ajv@^8.0.0, ajv@^8.9.0: + version "8.12.0" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.12.0.tgz#d1a0527323e22f53562c567c00991577dfbe19d1" + integrity sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA== + dependencies: + fast-deep-equal "^3.1.1" + json-schema-traverse "^1.0.0" + require-from-string "^2.0.2" + uri-js "^4.2.2" + amd-name-resolver@1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/amd-name-resolver/-/amd-name-resolver-1.2.0.tgz#fc41b3848824b557313897d71f8d5a0184fbe679" @@ -2296,21 +2527,21 @@ ansi-styles@^2.2.1: resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" integrity sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA== -ansi-styles@^3.0.0, ansi-styles@^3.2.0, ansi-styles@^3.2.1: +ansi-styles@^3.0.0, ansi-styles@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== dependencies: color-convert "^1.9.0" -ansi-styles@^4.1.0: +ansi-styles@^4.0.0, ansi-styles@^4.1.0: version "4.3.0" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== dependencies: color-convert "^2.0.1" -ansi-to-html@^0.6.6: +ansi-to-html@^0.6.15, ansi-to-html@^0.6.6: version "0.6.15" resolved "https://registry.yarnpkg.com/ansi-to-html/-/ansi-to-html-0.6.15.tgz#ac6ad4798a00f6aa045535d7f6a9cb9294eebea7" integrity sha512-28ijx2aHJGdzbs+O5SNQF65r6rrKYnkuwTYm8lZlChuoJ9P1vVzIpWO20sQTqTPDXYp6NFwk326vApTtLVFXpQ== @@ -2338,25 +2569,23 @@ anymatch@~3.1.2: normalize-path "^3.0.0" picomatch "^2.0.4" -aot-test-generators@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/aot-test-generators/-/aot-test-generators-0.1.0.tgz#43f0f615f97cb298d7919c1b0b4e6b7310b03cd0" - integrity sha512-PKyBQsPgkrCbUZS0PexdnyS3pVfYe4U1dLLQOf3is5RcYSaxbA7fsnnj6i8hcubsz+iS0miGPSJlONv/tXjfiA== - dependencies: - jsesc "^2.5.0" +"aproba@^1.0.3 || ^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/aproba/-/aproba-2.0.0.tgz#52520b8ae5b569215b354efc0caa3fe1e45a8adc" + integrity sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ== -aproba@^1.0.3, aproba@^1.1.1: +aproba@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== -are-we-there-yet@~1.1.2: - version "1.1.7" - resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz#b15474a932adab4ff8a50d9adfa7e4e926f21146" - integrity sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g== +are-we-there-yet@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz#679df222b278c64f2cdba1175cdc00b0d96164bd" + integrity sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg== dependencies: delegates "^1.0.0" - readable-stream "^2.0.6" + readable-stream "^3.6.0" argparse@^1.0.7: version "1.0.10" @@ -2425,7 +2654,7 @@ array-to-sentence@^1.1.0: resolved "https://registry.yarnpkg.com/array-to-sentence/-/array-to-sentence-1.1.0.tgz#c804956dafa53232495b205a9452753a258d39fc" integrity sha512-YkwkMmPA2+GSGvXj1s9NZ6cc2LBtR+uSeWTy2IGi5MR1Wag4DdrcjTxA/YV/Fw+qKlBeXomneZgThEbm/wvZbw== -array-union@^1.0.1, array-union@^1.0.2: +array-union@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" integrity sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng== @@ -2447,19 +2676,6 @@ array-unique@^0.3.2: resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" integrity sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ== -array.prototype.reduce@^1.0.6: - version "1.0.7" - resolved "https://registry.yarnpkg.com/array.prototype.reduce/-/array.prototype.reduce-1.0.7.tgz#6aadc2f995af29cb887eb866d981dc85ab6f7dc7" - integrity sha512-mzmiUCVwtiD4lgxYP8g7IYy8El8p2CSMePvIbTS7gchKir/L1fgJrk0yDKmAX6mnRQFKNADYIk8nNlTris5H1Q== - dependencies: - call-bind "^1.0.7" - define-properties "^1.2.1" - es-abstract "^1.23.2" - es-array-method-boxes-properly "^1.0.0" - es-errors "^1.3.0" - es-object-atoms "^1.0.0" - is-string "^1.0.7" - arraybuffer.prototype.slice@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz#097972f4255e41bc3425e37dc3f6421cf9aefde6" @@ -2474,11 +2690,6 @@ arraybuffer.prototype.slice@^1.0.3: is-array-buffer "^3.0.4" is-shared-array-buffer "^1.0.2" -arraybuffer.slice@~0.0.7: - version "0.0.7" - resolved "https://registry.yarnpkg.com/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz#3bbc4275dd584cc1b10809b89d4e8b63a69e7675" - integrity sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog== - arrify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" @@ -2516,11 +2727,6 @@ ast-types@0.13.3: resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.13.3.tgz#50da3f28d17bdbc7969a3a2d83a0e4a72ae755a7" integrity sha512-XTZ7xGML849LkQP86sWdQzfhwbt3YwIO6MqbX9mUNYY98VKaaVZP7YNNm70IpwecbkkxmfC5IYAzOQ/2p29zRA== -astral-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9" - integrity sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg== - async-disk-cache@^1.2.1: version "1.3.5" resolved "https://registry.yarnpkg.com/async-disk-cache/-/async-disk-cache-1.3.5.tgz#cc6206ed79bb6982b878fc52e0505e4f52b62a02" @@ -2654,18 +2860,6 @@ babel-core@^6.26.0, babel-core@^6.26.3: slash "^1.0.0" source-map "^0.5.7" -babel-eslint@^8.0.0: - version "8.2.6" - resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-8.2.6.tgz#6270d0c73205628067c0f7ae1693a9e797acefd9" - integrity sha512-aCdHjhzcILdP8c9lej7hvXKvQieyRt20SF102SIGyY4cUIiw6UaAtK4j2o3dXX74jEmy0TJ0CEhv4fTIM3SzcA== - dependencies: - "@babel/code-frame" "7.0.0-beta.44" - "@babel/traverse" "7.0.0-beta.44" - "@babel/types" "7.0.0-beta.44" - babylon "7.0.0-beta.44" - eslint-scope "3.7.1" - eslint-visitor-keys "^1.0.0" - babel-generator@^6.26.0: version "6.26.1" resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.1.tgz#1844408d3b8f0d35a404ea7ac180f087a601bd90" @@ -2862,7 +3056,7 @@ babel-plugin-ember-modules-api-polyfill@^3.5.0: dependencies: ember-rfc176-data "^0.3.17" -babel-plugin-ember-template-compilation@^2.0.0: +babel-plugin-ember-template-compilation@^2.0.0, babel-plugin-ember-template-compilation@^2.0.1: version "2.2.1" resolved "https://registry.yarnpkg.com/babel-plugin-ember-template-compilation/-/babel-plugin-ember-template-compilation-2.2.1.tgz#81ad03f572e94bda92ebc2c0005d5179e3f7c980" integrity sha512-alinprIQcLficqkuIyeKKfD4HQOpMOiHK6pt6Skj/yjoPoQYBuwAJ2BoPAlRe9k/URPeVkpMefbN3m6jEp7RsA== @@ -2870,19 +3064,6 @@ babel-plugin-ember-template-compilation@^2.0.0: "@glimmer/syntax" "^0.84.3" babel-import-util "^2.0.0" -babel-plugin-feature-flags@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/babel-plugin-feature-flags/-/babel-plugin-feature-flags-0.3.1.tgz#9c827cf9a4eb9a19f725ccb239e85cab02036fc1" - integrity sha512-EwkIiwYz35t3nyIyBc3yNR726EFXXoDDN14xTg0W4/c0kpnhilB9NZ1YE19VgJ5BbdSG7oDqM5aG97iGYgpACQ== - -babel-plugin-filter-imports@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/babel-plugin-filter-imports/-/babel-plugin-filter-imports-3.0.0.tgz#a849683837ad29960da17492fb32789ab6b09a11" - integrity sha512-p/chjzVTgCxUqyLM0q/pfWVZS7IJTwGQMwNg0LOvuQpKiTftQgZDtkGB8XvETnUw19rRcL7bJCTopSwibTN2tA== - dependencies: - "@babel/types" "^7.4.0" - lodash "^4.17.11" - babel-plugin-filter-imports@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/babel-plugin-filter-imports/-/babel-plugin-filter-imports-4.0.0.tgz#068f8da15236a96a9602c36dc6f4a6eeca70a4f4" @@ -2891,17 +3072,12 @@ babel-plugin-filter-imports@^4.0.0: "@babel/types" "^7.7.2" lodash "^4.17.15" -babel-plugin-htmlbars-inline-precompile@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/babel-plugin-htmlbars-inline-precompile/-/babel-plugin-htmlbars-inline-precompile-1.0.0.tgz#a9d2f6eaad8a3f3d361602de593a8cbef8179c22" - integrity sha512-4jvKEHR1bAX03hBDZ94IXsYCj3bwk9vYsn6ux6JZNL2U5pvzCWjqyrGahfsGNrhERyxw8IqcirOi9Q6WCo3dkQ== - babel-plugin-htmlbars-inline-precompile@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/babel-plugin-htmlbars-inline-precompile/-/babel-plugin-htmlbars-inline-precompile-3.2.0.tgz#c4882ea875d0f5683f0d91c1f72e29a4f14b5606" integrity sha512-IUeZmgs9tMUGXYu1vfke5I18yYJFldFGdNFQOWslXTnDWXzpwPih7QFduUqvT+awDpDuNtXpdt5JAf43Q1Hhzg== -babel-plugin-htmlbars-inline-precompile@^5.0.0, babel-plugin-htmlbars-inline-precompile@^5.3.0: +babel-plugin-htmlbars-inline-precompile@^5.0.0, babel-plugin-htmlbars-inline-precompile@^5.2.1, babel-plugin-htmlbars-inline-precompile@^5.3.0: version "5.3.1" resolved "https://registry.yarnpkg.com/babel-plugin-htmlbars-inline-precompile/-/babel-plugin-htmlbars-inline-precompile-5.3.1.tgz#5ba272e2e4b6221522401f5f1d98a73b1de38787" integrity sha512-QWjjFgSKtSRIcsBhJmEwS2laIdrA6na8HAlc/pEAhjHgQsah/gMiBFRZvbQTy//hWxR4BMwV7/Mya7q5H8uHeA== @@ -2923,6 +3099,17 @@ babel-plugin-module-resolver@^3.2.0: reselect "^3.0.1" resolve "^1.4.0" +babel-plugin-module-resolver@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/babel-plugin-module-resolver/-/babel-plugin-module-resolver-4.1.0.tgz#22a4f32f7441727ec1fbf4967b863e1e3e9f33e2" + integrity sha512-MlX10UDheRr3lb3P0WcaIdtCSRlxdQsB1sBqL7W0raF070bGl1HQQq5K3T2vf2XAYie+ww+5AKC/WrkjRO2knA== + dependencies: + find-babel-config "^1.2.0" + glob "^7.1.6" + pkg-up "^3.1.0" + reselect "^4.0.0" + resolve "^1.13.1" + babel-plugin-module-resolver@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/babel-plugin-module-resolver/-/babel-plugin-module-resolver-5.0.0.tgz#2b7fc176bd55da25f516abf96015617b4f70fc73" @@ -3308,11 +3495,6 @@ babel6-plugin-strip-class-callcheck@^6.0.0: resolved "https://registry.yarnpkg.com/babel6-plugin-strip-class-callcheck/-/babel6-plugin-strip-class-callcheck-6.0.0.tgz#de841c1abebbd39f78de0affb2c9a52ee228fddf" integrity sha512-biNFJ7JAK4+9BwswDGL0dmYpvXHvswOFR/iKg3Q/f+pNxPEa5bWZkLHI1fW4spPytkHGMe7f/XtYyhzml9hiWg== -babylon@7.0.0-beta.44: - version "7.0.0-beta.44" - resolved "https://registry.yarnpkg.com/babylon/-/babylon-7.0.0-beta.44.tgz#89159e15e6e30c5096e22d738d8c0af8a0e8ca1d" - integrity sha512-5Hlm13BJVAioCHpImtFqNOF2H3ieTOHd0fmFGMxOJ9jgeFqeAwsv3u5P5cR7CSeFrkgHsT19DgFJkHV0/Mcd8g== - babylon@^6.18.0: version "6.18.0" resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" @@ -3325,11 +3507,6 @@ backbone@^1.1.2: dependencies: underscore ">=1.8.3" -backo2@1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/backo2/-/backo2-1.0.2.tgz#31ab1ac8b129363463e35b3ebb69f4dfcfba7947" - integrity sha512-zj6Z6M7Eq+PBZ7PQxl5NT665MvJdAkzp0f60nAJ+sLaSCBPMwVak5ZegFbgVCzFcCJTKFoMizvM5Ld7+JrRJHA== - bail@^1.0.0: version "1.0.5" resolved "https://registry.yarnpkg.com/bail/-/bail-1.0.5.tgz#b6fa133404a392cbc1f8c4bf63f5953351e7a776" @@ -3340,22 +3517,17 @@ balanced-match@^1.0.0: resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== -base64-arraybuffer@0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/base64-arraybuffer/-/base64-arraybuffer-0.1.4.tgz#9818c79e059b1355f97e0428a017c838e90ba812" - integrity sha512-a1eIFi4R9ySrbiMuyTGx5e92uRH5tQY6kArNcFaKBUleIoLjdjBg7Zxm3Mqm3Kmkf27HLR/1fnxX9q8GQ7Iavg== - base64-js@0.0.2: version "0.0.2" resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-0.0.2.tgz#024f0f72afa25b75f9c0ee73cd4f55ec1bed9784" integrity sha512-Pj9L87dCdGcKlSqPVUjD+q96pbIx1zQQLb2CUiWURfjiBELv84YX+0nGnKmyT/9KkC7PQk7UN1w+Al8bBozaxQ== -base64-js@^1.0.2, base64-js@^1.5.1: +base64-js@^1.0.2, base64-js@^1.3.1, base64-js@^1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== -base64id@2.0.0: +base64id@2.0.0, base64id@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/base64id/-/base64id-2.0.0.tgz#2770ac6bc47d312af97a8bf9a634342e0cd25cb6" integrity sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog== @@ -3412,6 +3584,15 @@ bindings@^1.5.0: dependencies: file-uri-to-path "1.0.0" +bl@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/bl/-/bl-4.1.0.tgz#451535264182bec2fbbc83a62ab98cf11d9f7b3a" + integrity sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w== + dependencies: + buffer "^5.5.0" + inherits "^2.0.4" + readable-stream "^3.4.0" + blank-object@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/blank-object/-/blank-object-1.0.2.tgz#f990793fbe9a8c8dd013fb3219420bec81d5f4b9" @@ -3422,12 +3603,7 @@ blob-polyfill@^2.0.20171115: resolved "https://registry.yarnpkg.com/blob-polyfill/-/blob-polyfill-2.0.20171115.tgz#8e5c2659dda443365fafd6dd421517653f1d5ffd" integrity sha512-qHpuIpWlDLdOzSI9n1+423JL8c60Tbyyu/w4+zQIPCazvKBjf0sqQWiUS2QtyHph3S1C8m17T/jKyhv/DnnQFA== -blob@0.0.5: - version "0.0.5" - resolved "https://registry.yarnpkg.com/blob/-/blob-0.0.5.tgz#d680eeef25f8cd91ad533f5b01eed48e64caf683" - integrity sha512-gaqbzQPqOoamawKg0LGVd7SzLgXS+JH61oWprSLH+P+abTczqJbhTR8CmJ2u9/bUYNmHTGJx/UEmn6doAvvuig== - -bluebird@^3.1.1, bluebird@^3.4.6, bluebird@^3.5.5: +bluebird@^3.4.6, bluebird@^3.5.5, bluebird@^3.7.2: version "3.7.2" resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg== @@ -3498,7 +3674,7 @@ bops@0.0.6: base64-js "0.0.2" to-utf8 "0.0.1" -bower-config@^1.4.1: +bower-config@^1.4.3: version "1.4.3" resolved "https://registry.yarnpkg.com/bower-config/-/bower-config-1.4.3.tgz#3454fecdc5f08e7aa9cc6d556e492be0669689ae" integrity sha512-MVyyUk3d1S7d2cl6YISViwJBc2VXCkxF5AUFykvN0PQj5FsUiMNSgAYTso18oRFfyZ6XEtjrgg9MAaufHbOwNw== @@ -3596,7 +3772,7 @@ broccoli-babel-transpiler@^6.5.0: rsvp "^4.8.2" workerpool "^2.3.0" -broccoli-babel-transpiler@^7.3.0, broccoli-babel-transpiler@^7.8.0: +broccoli-babel-transpiler@^7.8.0: version "7.8.1" resolved "https://registry.yarnpkg.com/broccoli-babel-transpiler/-/broccoli-babel-transpiler-7.8.1.tgz#a5dc04cf4f59de98124fc128683ab2b83e5d28c1" integrity sha512-6IXBgfRt7HZ61g67ssBc6lBb3Smw3DPZ9dEYirgtvXWpRZ2A9M22nxy6opEwJDgDJzlu/bB7ToppW33OFkA1gA== @@ -3675,23 +3851,22 @@ broccoli-clean-css@^1.1.0: inline-source-map-comment "^1.0.5" json-stable-stringify "^1.0.0" -broccoli-concat@^3.2.2, broccoli-concat@^3.7.1, broccoli-concat@^3.7.4, broccoli-concat@^3.7.5: - version "3.7.5" - resolved "https://registry.yarnpkg.com/broccoli-concat/-/broccoli-concat-3.7.5.tgz#223beda8c1184252cf08ae020a3d45ffa6a48218" - integrity sha512-rDs1Mej3Ej0Cy5yIO9oIQq5+BCv0opAwS2NW7M0BeCsAMeFM42Z/zacDUC6jKc5OV5wiHvGTyCPLnZkMe0h6kQ== +broccoli-concat@^4.2.4, broccoli-concat@^4.2.5: + version "4.2.5" + resolved "https://registry.yarnpkg.com/broccoli-concat/-/broccoli-concat-4.2.5.tgz#d578f00094048b5fc87195e82fbdbde20d838d29" + integrity sha512-dFB5ATPwOyV8S2I7a07HxCoutoq23oY//LhM6Mou86cWUTB174rND5aQLR7Fu8FjFFLxoTbkk7y0VPITJ1IQrw== dependencies: broccoli-debug "^0.6.5" broccoli-kitchen-sink-helpers "^0.3.1" - broccoli-plugin "^1.3.0" + broccoli-plugin "^4.0.2" ensure-posix-path "^1.0.2" - fast-sourcemap-concat "^1.4.0" + fast-sourcemap-concat "^2.1.0" find-index "^1.1.0" - fs-extra "^4.0.3" - fs-tree-diff "^0.5.7" + fs-extra "^8.1.0" + fs-tree-diff "^2.0.1" lodash.merge "^4.6.2" lodash.omit "^4.1.0" lodash.uniq "^4.2.0" - walk-sync "^0.3.2" broccoli-config-loader@^1.0.1: version "1.0.1" @@ -3816,7 +3991,7 @@ broccoli-funnel@^2.0.0, broccoli-funnel@^2.0.1, broccoli-funnel@^2.0.2: symlink-or-copy "^1.0.0" walk-sync "^0.3.1" -broccoli-funnel@^3.0.8: +broccoli-funnel@^3.0.3, broccoli-funnel@^3.0.5, broccoli-funnel@^3.0.8: version "3.0.8" resolved "https://registry.yarnpkg.com/broccoli-funnel/-/broccoli-funnel-3.0.8.tgz#f5b62e2763c3918026a15a3c833edc889971279b" integrity sha512-ng4eIhPYiXqMw6SyGoxPHR3YAwEd2lr9FgBI1CyTbspl4txZovOsmzFkMkGAlu88xyvYXJqHiM2crfLa65T1BQ== @@ -3845,19 +4020,6 @@ broccoli-kitchen-sink-helpers@^0.3.1: glob "^5.0.10" mkdirp "^0.5.1" -broccoli-lint-eslint@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/broccoli-lint-eslint/-/broccoli-lint-eslint-5.0.0.tgz#05365879d597dd78496a1c718db0e5ea5d4a2bde" - integrity sha512-V7M6U4th21bf1X4u3KoZa0xkcPq9JCSyKxB/nCWCBFMI3rkrB8nlyDLd8DKIUTqL+ojlFOGV5lohPZwndw0sZw== - dependencies: - aot-test-generators "^0.1.0" - broccoli-concat "^3.2.2" - broccoli-persistent-filter "^2.1.0" - eslint "^5.6.0" - json-stable-stringify "^1.0.1" - lodash.defaultsdeep "^4.6.0" - md5-hex "^2.0.0" - broccoli-merge-trees@^1.0.0, broccoli-merge-trees@^1.1.1: version "1.2.4" resolved "https://registry.yarnpkg.com/broccoli-merge-trees/-/broccoli-merge-trees-1.2.4.tgz#a001519bb5067f06589d91afa2942445a2d0fdb5" @@ -3880,7 +4042,7 @@ broccoli-merge-trees@^2.0.0: broccoli-plugin "^1.3.0" merge-trees "^1.0.1" -broccoli-merge-trees@^3.0.0, broccoli-merge-trees@^3.0.1, broccoli-merge-trees@^3.0.2: +broccoli-merge-trees@^3.0.1, broccoli-merge-trees@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/broccoli-merge-trees/-/broccoli-merge-trees-3.0.2.tgz#f33b451994225522b5c9bcf27d59decfd8ba537d" integrity sha512-ZyPAwrOdlCddduFbsMyyFzJUrvW6b04pMvDiAQZrCwghlvgowJDY+EfoXn+eR1RRA5nmGHJ+B68T63VnpRiT1A== @@ -3896,7 +4058,7 @@ broccoli-merge-trees@^4.2.0: broccoli-plugin "^4.0.2" merge-trees "^2.0.0" -broccoli-middleware@^2.1.0: +broccoli-middleware@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/broccoli-middleware/-/broccoli-middleware-2.1.1.tgz#183635bbef4dc1241533ee001a162f013d776cb9" integrity sha512-BK8aPhQpOLsHWiftrqXQr84XsvzUqeaN4PlCQOYg5yM0M+WKAHtX2WFXmicSQZOVgKDyh5aeoNTFkHjBAEBzwQ== @@ -3913,29 +4075,10 @@ broccoli-module-alchemist-install@^0.1.6: dependencies: debug "^2.2.0" -broccoli-module-normalizer@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/broccoli-module-normalizer/-/broccoli-module-normalizer-1.3.0.tgz#f9982d9cbb776b4ed754161cc6547784d3eb19de" - integrity sha512-0idZCOtdVG6xXoQ36Psc1ApMCr3lW5DB+WEAOEwHcUoESIBHzwcRPQTxheGIjZ5o0hxpsRYAUH5x0ErtNezbrQ== - dependencies: - broccoli-plugin "^1.3.0" - merge-trees "^1.0.1" - rimraf "^2.6.2" - symlink-or-copy "^1.1.8" - -broccoli-module-unification-reexporter@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/broccoli-module-unification-reexporter/-/broccoli-module-unification-reexporter-1.0.0.tgz#031909c5d3f159ec11d5f9e2346f2861db8acb3e" - integrity sha512-HTi9ua520M20aBZomaiBopsSt3yjL7J/paR3XPjieygK7+ShATBiZdn0B+ZPiniBi4I8JuMn1q0fNFUevtP//A== - dependencies: - broccoli-plugin "^1.3.0" - mkdirp "^0.5.1" - walk-sync "^0.3.2" - -broccoli-node-api@^1.6.0, broccoli-node-api@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/broccoli-node-api/-/broccoli-node-api-1.7.0.tgz#391aa6edecd2a42c63c111b4162956b2fa288cb6" - integrity sha512-QIqLSVJWJUVOhclmkmypJJH9u9s/aWH4+FH6Q6Ju5l+Io4dtwqdPUNmDfw40o6sxhbZHhqGujDJuHTML1wG8Yw== +broccoli-node-api@^1.6.0, broccoli-node-api@^1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/broccoli-node-api/-/broccoli-node-api-1.7.0.tgz#391aa6edecd2a42c63c111b4162956b2fa288cb6" + integrity sha512-QIqLSVJWJUVOhclmkmypJJH9u9s/aWH4+FH6Q6Ju5l+Io4dtwqdPUNmDfw40o6sxhbZHhqGujDJuHTML1wG8Yw== broccoli-node-info@^1.1.0: version "1.1.0" @@ -3982,7 +4125,7 @@ broccoli-persistent-filter@^1.0.3, broccoli-persistent-filter@^1.1.6, broccoli-p symlink-or-copy "^1.0.1" walk-sync "^0.3.1" -broccoli-persistent-filter@^2.1.0, broccoli-persistent-filter@^2.1.1, broccoli-persistent-filter@^2.2.1, broccoli-persistent-filter@^2.3.0, broccoli-persistent-filter@^2.3.1: +broccoli-persistent-filter@^2.1.1, broccoli-persistent-filter@^2.2.1, broccoli-persistent-filter@^2.3.0, broccoli-persistent-filter@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/broccoli-persistent-filter/-/broccoli-persistent-filter-2.3.1.tgz#4a052e0e0868b344c3a2977e35a3d497aa9eca72" integrity sha512-hVsmIgCDrl2NFM+3Gs4Cr2TA6UPaIZip99hN8mtkaUPgM8UeVnCbxelCvBjUBHo0oaaqP5jzqqnRVvb568Yu5g== @@ -4019,6 +4162,19 @@ broccoli-persistent-filter@^3.0.0, broccoli-persistent-filter@^3.1.2: symlink-or-copy "^1.0.1" sync-disk-cache "^2.0.0" +broccoli-plugin@*, broccoli-plugin@^4.0.0, broccoli-plugin@^4.0.2, broccoli-plugin@^4.0.3, broccoli-plugin@^4.0.7: + version "4.0.7" + resolved "https://registry.yarnpkg.com/broccoli-plugin/-/broccoli-plugin-4.0.7.tgz#dd176a85efe915ed557d913744b181abe05047db" + integrity sha512-a4zUsWtA1uns1K7p9rExYVYG99rdKeGRymW0qOCNkvDPHQxVi3yVyJHhQbM3EZwdt2E0mnhr5e0c/bPpJ7p3Wg== + 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" + broccoli-plugin@1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/broccoli-plugin/-/broccoli-plugin-1.1.0.tgz#73e2cfa05f8ea1e3fc1420c40c3d9e7dc724bf02" @@ -4039,7 +4195,7 @@ broccoli-plugin@^1.0.0, broccoli-plugin@^1.1.0, broccoli-plugin@^1.2.0, broccoli rimraf "^2.3.4" symlink-or-copy "^1.1.8" -broccoli-plugin@^2.0.0, broccoli-plugin@^2.1.0: +broccoli-plugin@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/broccoli-plugin/-/broccoli-plugin-2.1.0.tgz#2fab6c578219cfcc64f773e9616073313fc8b334" integrity sha512-ElE4caljW4slapyEhSD9jU9Uayc8SoSABWdmY9SqbV8DHNxU6xg1jJsPcMm+cXOvggR3+G+OXAYQeFjWVnznaw== @@ -4062,19 +4218,6 @@ broccoli-plugin@^3.1.0: rimraf "^2.3.4" symlink-or-copy "^1.1.8" -broccoli-plugin@^4.0.0, broccoli-plugin@^4.0.2, broccoli-plugin@^4.0.3, broccoli-plugin@^4.0.7: - version "4.0.7" - resolved "https://registry.yarnpkg.com/broccoli-plugin/-/broccoli-plugin-4.0.7.tgz#dd176a85efe915ed557d913744b181abe05047db" - integrity sha512-a4zUsWtA1uns1K7p9rExYVYG99rdKeGRymW0qOCNkvDPHQxVi3yVyJHhQbM3EZwdt2E0mnhr5e0c/bPpJ7p3Wg== - 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" - broccoli-rollup@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/broccoli-rollup/-/broccoli-rollup-2.1.1.tgz#0b77dc4b7560a53e998ea85f3b56772612d4988d" @@ -4092,20 +4235,20 @@ broccoli-rollup@^2.1.1: symlink-or-copy "^1.1.8" walk-sync "^0.3.1" -broccoli-rollup@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/broccoli-rollup/-/broccoli-rollup-4.1.1.tgz#7531a24d88ddab9f1bace1c6ee6e6ca74a38d36f" - integrity sha512-hkp0dB5chiemi32t6hLe5bJvxuTOm1TU+SryFlZIs95KT9+94uj0C8w6k6CsZ2HuIdIZg6D252t4gwOlcTXrpA== +broccoli-rollup@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/broccoli-rollup/-/broccoli-rollup-5.0.0.tgz#a77b53bcef1b70e988913fee82265c0a4ca530da" + integrity sha512-QdMuXHwsdz/LOS8zu4HP91Sfi4ofimrOXoYP/lrPdRh7lJYD87Lfq4WzzUhGHsxMfzANIEvl/7qVHKD3cFJ4tA== dependencies: - "@types/broccoli-plugin" "^1.3.0" - broccoli-plugin "^2.0.0" + "@types/broccoli-plugin" "^3.0.0" + broccoli-plugin "^4.0.7" fs-tree-diff "^2.0.1" heimdalljs "^0.2.6" node-modules-path "^1.0.1" - rollup "^1.12.0" + rollup "^2.50.0" rollup-pluginutils "^2.8.1" symlink-or-copy "^1.2.0" - walk-sync "^1.1.3" + walk-sync "^2.2.0" broccoli-sass-source-maps@^4.0.0: version "4.2.4" @@ -4116,7 +4259,7 @@ broccoli-sass-source-maps@^4.0.0: include-path-searcher "^0.1.0" rsvp "^4.8.5" -broccoli-slow-trees@^3.0.1: +broccoli-slow-trees@^3.0.1, broccoli-slow-trees@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/broccoli-slow-trees/-/broccoli-slow-trees-3.1.0.tgz#8e48903f59e061bf1213963733b9e61dec2ee5d7" integrity sha512-FRI7mRTk2wjIDrdNJd6znS7Kmmne4VkAkl8Ix1R/VoePFMD0g0tEl671xswzFqaRjpT9Qu+CC4hdXDLDJBuzMw== @@ -4238,7 +4381,7 @@ broccoli-terser-sourcemap@^4.1.0: walk-sync "^2.2.0" workerpool "^6.1.5" -broccoli@^3.2.0: +broccoli@^3.5.1: version "3.5.2" resolved "https://registry.yarnpkg.com/broccoli/-/broccoli-3.5.2.tgz#60921167d57b43fb5bad527420d62fe532595ef4" integrity sha512-sWi3b3fTUSVPDsz5KsQ5eCQNVAtLgkIE/HYFkEZXR/07clqmd4E/gFiuwSaqa9b+QTXc1Uemfb7TVWbEIURWDg== @@ -4351,7 +4494,7 @@ browserslist@^3.1.1, browserslist@^3.2.6: caniuse-lite "^1.0.30000844" electron-to-chromium "^1.3.47" -browserslist@^4.0.0, browserslist@^4.22.2, browserslist@^4.23.0: +browserslist@^4.0.0, browserslist@^4.21.10, browserslist@^4.22.2, browserslist@^4.23.0: version "4.23.0" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.23.0.tgz#8f3acc2bbe73af7213399430890f86c63a5674ab" integrity sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ== @@ -4373,24 +4516,6 @@ btecu-eonasdan-bootstrap-datetimepicker@4.17.50: resolved "https://registry.yarnpkg.com/btecu-eonasdan-bootstrap-datetimepicker/-/btecu-eonasdan-bootstrap-datetimepicker-4.17.50.tgz#11e2e9da200638d2634857303d5f1653abe794e3" integrity sha512-/5Cp+sAYCRpxs6ExmYH5DkGOfvZ7uSDWRazQ8DzIezUE5YTNdg98rpQdYhh2lpnS9SuBYs9xpGXwAAw3GZj/kw== -buffer-alloc-unsafe@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz#bd7dc26ae2972d0eda253be061dba992349c19f0" - integrity sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg== - -buffer-alloc@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/buffer-alloc/-/buffer-alloc-1.2.0.tgz#890dd90d923a873e08e10e5fd51a57e5b7cce0ec" - integrity sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow== - dependencies: - buffer-alloc-unsafe "^1.1.0" - buffer-fill "^1.0.0" - -buffer-fill@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/buffer-fill/-/buffer-fill-1.0.0.tgz#f8f78b76789888ef39f205cd637f68e702122b2c" - integrity sha512-T7zexNBwiiaCOGDg9xNX9PBmjrubblRkENuptryuI64URkXDFum9il/JGL8Lm8wYfAXpredVXXZz7eMHilimiQ== - buffer-from@^1.0.0: version "1.1.2" resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" @@ -4410,6 +4535,14 @@ buffer@^4.3.0: ieee754 "^1.1.4" isarray "^1.0.0" +buffer@^5.5.0: + version "5.7.1" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0" + integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ== + dependencies: + base64-js "^1.3.1" + ieee754 "^1.1.13" + "buildify@github:powmedia/buildify#20458a121411f759dcc5ec1b441695eb7fc2b3b7": version "0.4.0" resolved "https://codeload.github.com/powmedia/buildify/tar.gz/20458a121411f759dcc5ec1b441695eb7fc2b3b7" @@ -4511,12 +4644,7 @@ call-bind@^1.0.2, call-bind@^1.0.5, call-bind@^1.0.6, call-bind@^1.0.7: get-intrinsic "^1.2.4" set-function-length "^1.2.1" -call-me-maybe@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.2.tgz#03f964f19522ba643b1b0693acb9152fe2074baa" - integrity sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ== - -callsites@^3.0.0: +callsites@^3.0.0, callsites@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== @@ -4615,15 +4743,7 @@ chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.3.0, chalk@^2.4.1, chalk@^2.4 escape-string-regexp "^1.0.5" supports-color "^5.3.0" -chalk@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-3.0.0.tgz#3f73c2bf526591f574cc492c51e2456349f844e4" - integrity sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg== - dependencies: - ansi-styles "^4.1.0" - supports-color "^7.1.0" - -chalk@^4.0.0, chalk@^4.1.0: +chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== @@ -4707,6 +4827,11 @@ ci-info@^2.0.0: resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== +ci-info@^3.3.0: + version "3.9.0" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.9.0.tgz#4279a62028a7b1f262f3473fc9605f5e218c59b4" + integrity sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ== + cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: version "1.0.4" resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de" @@ -4754,6 +4879,11 @@ clean-css@^3.4.5: commander "2.8.x" source-map "0.4.x" +clean-stack@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" + integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== + clean-up-path@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/clean-up-path/-/clean-up-path-1.0.0.tgz#de9e8196519912e749c9eaf67c13d64fac72a3e5" @@ -4773,7 +4903,7 @@ cli-cursor@^3.1.0: dependencies: restore-cursor "^3.1.0" -cli-spinners@^2.0.0: +cli-spinners@^2.0.0, cli-spinners@^2.5.0: version "2.9.2" resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.9.2.tgz#1773a8f4b9c4d6ac31563df53b3fc1d79462fe41" integrity sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg== @@ -4805,6 +4935,15 @@ cli-width@^3.0.0: resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-3.0.0.tgz#a2f48437a2caa9a22436e794bf071ec9e61cedf6" integrity sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw== +cliui@^7.0.2: + version "7.0.4" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" + integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.0" + wrap-ansi "^7.0.0" + clone-response@1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/clone-response/-/clone-response-1.0.2.tgz#d1dc973920314df67fbeb94223b4ee350239e96b" @@ -4822,11 +4961,6 @@ clone@^2.0.0, clone@^2.1.2: resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f" integrity sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w== -code-point-at@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" - integrity sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA== - codemirror-spell-checker@*: version "1.1.2" resolved "https://registry.yarnpkg.com/codemirror-spell-checker/-/codemirror-spell-checker-1.1.2.tgz#1c660f9089483ccb5113b9ba9ca19c3f4993371e" @@ -4879,12 +5013,17 @@ color-name@~1.1.4: resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== +color-support@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2" + integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg== + colors@1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/colors/-/colors-1.0.3.tgz#0433f44d809680fdeb60ed260f1b0c262e82a40b" integrity sha512-pFGrxThWcWQ2MsAz6RtgeWe4NK2kUE1WfsrvvlctdII745EW9I0yflqhe7++M5LEc7bV2c/9/5zc8sFcpL0Drw== -colors@^1.1.2: +colors@^1.1.2, colors@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/colors/-/colors-1.4.0.tgz#c50491479d4c1bdaed2c9ced32cf7c7dc2360f78" integrity sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA== @@ -4923,6 +5062,11 @@ commander@^4.1.1: resolved "https://registry.yarnpkg.com/commander/-/commander-4.1.1.tgz#9fd602bd936294e9e9ef46a3f4d6964044b18068" integrity sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA== +commander@^6.2.1: + version "6.2.1" + resolved "https://registry.yarnpkg.com/commander/-/commander-6.2.1.tgz#0792eb682dfbc325999bb2b84fddddba110ac73c" + integrity sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA== + commander@~2.9.0: version "2.9.0" resolved "https://registry.yarnpkg.com/commander/-/commander-2.9.0.tgz#9c99094176e12240cb22d6c5146098400fe0f7d4" @@ -4930,7 +5074,7 @@ commander@~2.9.0: dependencies: graceful-readlink ">= 1.0.0" -common-tags@^1.4.0, common-tags@^1.8.0: +common-tags@^1.8.0: version "1.8.2" resolved "https://registry.yarnpkg.com/common-tags/-/common-tags-1.8.2.tgz#94ebb3c076d26032745fd54face7f688ef5ac9c6" integrity sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA== @@ -4940,26 +5084,11 @@ commondir@^1.0.1: resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" integrity sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg== -component-bind@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/component-bind/-/component-bind-1.0.0.tgz#00c608ab7dcd93897c0009651b1d3a8e1e73bbd1" - integrity sha512-WZveuKPeKAG9qY+FkYDeADzdHyTYdIboXS59ixDeRJL5ZhxpqUnxSOwop4FQjMsiYm3/Or8cegVbpAHNA7pHxw== - -component-emitter@1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6" - integrity sha512-jPatnhd33viNplKjqXKRkGU345p263OIWzDL2wH3LGIGp5Kojo+uXizHmOADRvhGFFTnJqX3jBAKP6vvmSDKcA== - -component-emitter@^1.2.1, component-emitter@~1.3.0: +component-emitter@^1.2.1: version "1.3.1" resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.1.tgz#ef1d5796f7d93f135ee6fb684340b26403c97d17" integrity sha512-T0+barUSQRTUQASh8bx02dl+DhF54GtIDY13Y3m9oWTklKbb3Wv974meRpeZ3lp1JpLVECWWNHC4vaG2XHXouQ== -component-inherit@0.0.3: - version "0.0.3" - resolved "https://registry.yarnpkg.com/component-inherit/-/component-inherit-0.0.3.tgz#645fc4adf58b72b649d5cae65135619db26ff143" - integrity sha512-w+LhYREhatpVqTESyGFg3NlP6Iu0kEKUHETY9GoZP/pQyW4mHFZuFWRUCIqVPZ36ueVLtoOEZaAqbCF2RDndaA== - compressible@~2.0.16: version "2.0.18" resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.18.tgz#af53cca6b070d4c3c0750fbd77286a6d7cc46fba" @@ -5026,7 +5155,7 @@ concat-stream@~2.0.0: readable-stream "^3.0.2" typedarray "^0.0.6" -configstore@^5.0.0: +configstore@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/configstore/-/configstore-5.0.1.tgz#d365021b5df4b98cdd187d6a3b0e3f6a7cc5ed96" integrity sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA== @@ -5053,12 +5182,12 @@ console-browserify@^1.1.0: resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.2.0.tgz#67063cef57ceb6cf4993a2ab3a55840ae8c49336" integrity sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA== -console-control-strings@^1.0.0, console-control-strings@~1.1.0: +console-control-strings@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" integrity sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ== -console-ui@^3.0.4, console-ui@^3.1.1: +console-ui@^3.0.4, console-ui@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/console-ui/-/console-ui-3.1.2.tgz#51aef616ff02013c85ccee6a6d77ef7a94202e7a" integrity sha512-+5j3R4wZJcEYZeXk30whc4ZU/+fWW9JMTNntVuMYpjZJ9n26Cxr0tUBXco1NRjVZRpRVvZ4DDKKKIHNYeUG9Dw== @@ -5069,12 +5198,12 @@ console-ui@^3.0.4, console-ui@^3.1.1: ora "^3.4.0" through2 "^3.0.1" -consolidate@^0.15.1: - version "0.15.1" - resolved "https://registry.yarnpkg.com/consolidate/-/consolidate-0.15.1.tgz#21ab043235c71a07d45d9aad98593b0dba56bab7" - integrity sha512-DW46nrsMJgy9kqAbPt5rKaCr7uFtpo4mSUvLHIUbJEjm0vo+aY5QLwBUq3FK4tRnJr/X0Psc0C4jf/h+HtXSMw== +consolidate@^0.16.0: + version "0.16.0" + resolved "https://registry.yarnpkg.com/consolidate/-/consolidate-0.16.0.tgz#a11864768930f2f19431660a65906668f5fbdc16" + integrity sha512-Nhl1wzCslqXYTJVDyJCu3ODohy9OfBMB5uD2BiBTzd7w+QY0lBzafkR8y8755yMYHAaMD4NuzbAw03/xzfw+eQ== dependencies: - bluebird "^3.1.1" + bluebird "^3.7.2" constants-browserify@^1.0.0: version "1.0.0" @@ -5183,6 +5312,14 @@ core-util-is@~1.0.0: resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== +cors@~2.8.5: + version "2.8.5" + resolved "https://registry.yarnpkg.com/cors/-/cors-2.8.5.tgz#eac11da51592dd86b9f06f6e7ac293b3df875d29" + integrity sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g== + dependencies: + object-assign "^4" + vary "^1" + create-ecdh@^4.0.0: version "4.0.4" resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.4.tgz#d6e7f4bffa66736085a0762fd3a632684dabcc4e" @@ -5237,7 +5374,7 @@ cross-spawn@^6.0.0, cross-spawn@^6.0.5: shebang-command "^1.2.0" which "^1.2.9" -cross-spawn@^7.0.0, cross-spawn@^7.0.2: +cross-spawn@^7.0.0, cross-spawn@^7.0.2, cross-spawn@^7.0.3: version "7.0.3" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== @@ -5268,6 +5405,22 @@ crypto-random-string@^2.0.0: resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-2.0.0.tgz#ef2a7a966ec11083388369baa02ebead229b30d5" integrity sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA== +css-loader@^5.2.0: + version "5.2.7" + resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-5.2.7.tgz#9b9f111edf6fb2be5dc62525644cbc9c232064ae" + integrity sha512-Q7mOvpBNBG7YrVGMxRxcBJZFL75o+cH2abNASdibkj/fffYD8qWbInZrD0S9ccI6vZclF3DsHE7njGlLtaHbhg== + dependencies: + icss-utils "^5.1.0" + loader-utils "^2.0.0" + postcss "^8.2.15" + postcss-modules-extract-imports "^3.0.0" + postcss-modules-local-by-default "^4.0.0" + postcss-modules-scope "^3.0.0" + postcss-modules-values "^4.0.0" + postcss-value-parser "^4.1.0" + schema-utils "^3.0.0" + semver "^7.3.5" + css-tree@^2.0.4: version "2.3.1" resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-2.3.1.tgz#10264ce1e5442e8572fc82fbe490644ff54b5c20" @@ -5276,6 +5429,11 @@ css-tree@^2.0.4: mdn-data "2.0.30" source-map-js "^1.0.1" +cssesc@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" + integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== + csv2geojson@^5.0.2: version "5.1.2" resolved "https://registry.yarnpkg.com/csv2geojson/-/csv2geojson-5.1.2.tgz#4869e48d26f849fbbe93f90b76094fb1861b7c72" @@ -5343,6 +5501,13 @@ data-view-byte-offset@^1.0.0: es-errors "^1.3.0" is-data-view "^1.0.1" +date-fns@^2.28.0: + version "2.30.0" + resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-2.30.0.tgz#f367e644839ff57894ec6ac480de40cae4b0f4d0" + integrity sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw== + dependencies: + "@babel/runtime" "^7.21.0" + date-time@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/date-time/-/date-time-2.1.0.tgz#0286d1b4c769633b3ca13e1e62558d2dbdc2eba2" @@ -5364,27 +5529,13 @@ debug@^3.0.1, debug@^3.1.0, debug@^3.2.7: dependencies: ms "^2.1.1" -debug@^4.0.0, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4: +debug@^4.0.0, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@~4.3.1, debug@~4.3.2, debug@~4.3.4: version "4.3.4" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== dependencies: ms "2.1.2" -debug@~3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" - integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g== - dependencies: - ms "2.0.0" - -debug@~4.1.0: - version "4.1.1" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" - integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw== - dependencies: - ms "^2.1.1" - decamelize-keys@^1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.1.tgz#04a2d523b2f18d80d0158a43b895d56dff8d19d8" @@ -5522,10 +5673,10 @@ detect-newline@3.1.0: resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== -diff@^4.0.1: - version "4.0.2" - resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d" - integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A== +diff@^5.0.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/diff/-/diff-5.2.0.tgz#26ded047cd1179b78b9537d5ef725503ce1ae531" + integrity sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A== diffie-hellman@^5.0.0: version "5.0.3" @@ -5536,13 +5687,6 @@ diffie-hellman@^5.0.0: miller-rabin "^4.0.0" randombytes "^2.0.0" -dir-glob@^2.2.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-2.2.2.tgz#fa09f0694153c8918b18ba0deafae94769fc50c4" - integrity sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw== - dependencies: - path-type "^3.0.0" - dir-glob@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" @@ -5707,6 +5851,14 @@ ember-ajax@^5.0.0: ember-cli-babel "^7.5.0" najax "^1.0.7" +ember-assign-helper@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/ember-assign-helper/-/ember-assign-helper-0.4.0.tgz#f0a313033656c0d2cbbcb29d55b9cd13f04bc7c1" + integrity sha512-GKHhT4HD2fhtDnuBk6eCdCA8XGew9hY7TVs8zjrykegiI7weC0CGtpJscmIG3O0gEEb0d07UTkF2pjfNGLx4Nw== + dependencies: + ember-cli-babel "^7.26.0" + ember-cli-htmlbars "^6.0.0" + ember-assign-polyfill@2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/ember-assign-polyfill/-/ember-assign-polyfill-2.0.2.tgz#95e37513beaabc4356d56a844c742509b0b7e7f1" @@ -5715,15 +5867,7 @@ ember-assign-polyfill@2.0.2: ember-cli-babel "^6.6.0" ember-cli-version-checker "^1.2.0" -ember-assign-polyfill@^2.6.0: - version "2.7.3" - resolved "https://registry.yarnpkg.com/ember-assign-polyfill/-/ember-assign-polyfill-2.7.3.tgz#bfd7b5041061753a2af3865ca8456868debe041d" - integrity sha512-PINAtHOQf5DKniyecOBZSz8VZVmtIKFvp67853+aw+TL+LWUCji5OjQ13PrAV/GIl3Fp2sZ7IbEPyTobDL7Y8Q== - dependencies: - ember-cli-babel ">= 6.17.2" - ember-cli-version-checker "^2.0.0" - -ember-auto-import@^1.11.2, ember-auto-import@^1.11.3, ember-auto-import@^1.5.3: +ember-auto-import@^1.11.2, ember-auto-import@^1.11.3: version "1.12.2" resolved "https://registry.yarnpkg.com/ember-auto-import/-/ember-auto-import-1.12.2.tgz#cc7298ee5c0654b0249267de68fb27a2861c3579" integrity sha512-gLqML2k77AuUiXxWNon1FSzuG1DV7PEPpCLCU5aJvf6fdL6rmFfElsZRh+8ELEB/qP9dT+LHjNEunVzd2dYc8A== @@ -5758,6 +5902,46 @@ ember-auto-import@^1.11.2, ember-auto-import@^1.11.3, ember-auto-import@^1.5.3: walk-sync "^0.3.3" webpack "^4.43.0" +ember-auto-import@^2.2.4, ember-auto-import@^2.5.0, ember-auto-import@^2.6.3: + version "2.7.2" + resolved "https://registry.yarnpkg.com/ember-auto-import/-/ember-auto-import-2.7.2.tgz#5e74b6a8839fab25e23af6cff6f74b1b424d8f25" + integrity sha512-pkWIljmJClYL17YBk8FjO7NrZPQoY9v0b+FooJvaHf/xlDQIBYVP7OaDHbNuNbpj7+wAwSDAnnwxjCoLsmm4cw== + dependencies: + "@babel/core" "^7.16.7" + "@babel/plugin-proposal-class-properties" "^7.16.7" + "@babel/plugin-proposal-decorators" "^7.16.7" + "@babel/plugin-proposal-private-methods" "^7.16.7" + "@babel/plugin-transform-class-static-block" "^7.16.7" + "@babel/preset-env" "^7.16.7" + "@embroider/macros" "^1.0.0" + "@embroider/shared-internals" "^2.0.0" + babel-loader "^8.0.6" + babel-plugin-ember-modules-api-polyfill "^3.5.0" + babel-plugin-ember-template-compilation "^2.0.1" + babel-plugin-htmlbars-inline-precompile "^5.2.1" + babel-plugin-syntax-dynamic-import "^6.18.0" + broccoli-debug "^0.6.4" + broccoli-funnel "^3.0.8" + broccoli-merge-trees "^4.2.0" + broccoli-plugin "^4.0.0" + broccoli-source "^3.0.0" + css-loader "^5.2.0" + debug "^4.3.1" + fs-extra "^10.0.0" + fs-tree-diff "^2.0.0" + handlebars "^4.3.1" + js-string-escape "^1.0.1" + lodash "^4.17.19" + mini-css-extract-plugin "^2.5.2" + minimatch "^3.0.0" + parse5 "^6.0.1" + resolve "^1.20.0" + resolve-package-path "^4.0.3" + semver "^7.3.4" + style-loader "^2.0.0" + typescript-memoize "^1.0.0-alpha.3" + walk-sync "^3.0.0" + ember-autoresize@jlblcc/ember-autoresize#latest: version "1.3.2" resolved "https://codeload.github.com/jlblcc/ember-autoresize/tar.gz/77fd177d7dcc15602c03d197f763cfce29f57c35" @@ -5768,18 +5952,64 @@ ember-autoresize@jlblcc/ember-autoresize#latest: ember-copy "^1.0.0" ember-get-config "^0.2.4" -ember-basic-dropdown@^2.0.13: - version "2.0.15" - resolved "https://registry.yarnpkg.com/ember-basic-dropdown/-/ember-basic-dropdown-2.0.15.tgz#f86600cfa22ff67de6599fcfb701ad851cc3c6a0" - integrity sha512-gRUCoFLZJ+qu758xDZpfE20LtBRRZWOShtGrPPd18iuseK+6SLkM/uzsL+nANQp3F8hD9kW+aLjsK7E8Khd2Wg== +"ember-basic-dropdown@^3.1.0 || ^4.0.2": + version "4.0.5" + resolved "https://registry.yarnpkg.com/ember-basic-dropdown/-/ember-basic-dropdown-4.0.5.tgz#7369fc3d3cd774223510b89ba2ace44b62da5112" + integrity sha512-cD0cnL4gjoNNGJ+kMNtGlsikan5v5aVWp5Mkv8fgnLS96EGhmAMlTiRBexmyzK+4Zbe+xOlZKNQva4bZ7FrQGQ== + dependencies: + "@ember/render-modifiers" "^2.0.4" + "@embroider/macros" "^1.2.0" + "@embroider/util" "^1.2.0" + "@glimmer/component" "^1.0.4" + "@glimmer/tracking" "^1.0.4" + ember-cli-babel "^7.26.11" + ember-cli-htmlbars "^6.0.1" + ember-cli-typescript "^4.2.1" + ember-element-helper "^0.6.0" + ember-get-config "^1.0.2" + ember-maybe-in-element "^2.0.3" + ember-style-modifier "^0.7.0" + ember-truth-helpers "^2.1.0 || ^3.0.0" + +ember-basic-dropdown@^7.0.1: + version "7.3.0" + resolved "https://registry.yarnpkg.com/ember-basic-dropdown/-/ember-basic-dropdown-7.3.0.tgz#981e2be5d2c40e49d44bad33eafb89fab05fd7dc" + integrity sha512-XzLd1noCrHjG7O35HpZ+ljj7VwPPqon7svbvNJ2U7421e00eXBUVcCioGJFo1NnnPkjc14FTDc5UwktbGSbJdQ== + dependencies: + "@embroider/macros" "^1.12.0" + "@embroider/util" "^1.11.0" + "@glimmer/component" "^1.1.2" + "@glimmer/tracking" "^1.1.2" + ember-auto-import "^2.6.3" + ember-cli-babel "^7.26.11" + ember-cli-htmlbars "^6.2.0" + ember-cli-typescript "^5.2.1" + ember-element-helper "^0.8.5" + ember-get-config "^2.1.1" + ember-maybe-in-element "^2.1.0" + ember-modifier "^3.2.7 || ^4.0.0" + ember-style-modifier "^0.8.0 || ^1.0.0 || ^2.0.0 || ^3.0.0" + ember-truth-helpers "^2.1.0 || ^3.0.0 || ^4.0.0" + +ember-cache-primitive-polyfill@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/ember-cache-primitive-polyfill/-/ember-cache-primitive-polyfill-1.0.1.tgz#a27075443bd87e5af286c1cd8a7df24e3b9f6715" + integrity sha512-hSPcvIKarA8wad2/b6jDd/eU+OtKmi6uP+iYQbzi5TQpjsqV6b4QdRqrLk7ClSRRKBAtdTuutx+m+X+WlEd2lw== dependencies: - "@ember-decorators/component" "^6.1.0" - "@ember/render-modifiers" "^1.0.2" - ember-cli-babel "^7.11.0" - ember-cli-htmlbars "^4.0.8" - ember-element-helper "^0.2.0" - ember-maybe-in-element "^0.4.0" - ember-truth-helpers "2.1.0" + ember-cli-babel "^7.22.1" + ember-cli-version-checker "^5.1.1" + ember-compatibility-helpers "^1.2.1" + silent-error "^1.1.1" + +ember-cached-decorator-polyfill@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/ember-cached-decorator-polyfill/-/ember-cached-decorator-polyfill-0.1.4.tgz#f1e2c65cc78d0d9c4ac0e047e643af477eb85ace" + integrity sha512-JOK7kBCWsTVCzmCefK4nr9BACDJk0owt9oIUaVt6Q0UtQ4XeAHmoK5kQ/YtDcxQF1ZevHQFdGhsTR3JLaHNJgA== + dependencies: + "@glimmer/tracking" "^1.0.4" + ember-cache-primitive-polyfill "^1.0.1" + ember-cli-babel "^7.21.0" + ember-cli-babel-plugin-helpers "^1.1.1" ember-class-based-modifier@^0.10.0: version "0.10.0" @@ -5799,53 +6029,20 @@ ember-classic-decorator@^3.0.1: ember-cli-babel "^7.26.11" ember-cli-htmlbars "^6.0.1" -ember-cli-app-version@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/ember-cli-app-version/-/ember-cli-app-version-3.2.0.tgz#7b9ad0e1b63ae0518648356ee24c703e922bc26e" - integrity sha512-fHWOJElSw8JL03FNCHrT0RdWhGpWEQ4VQ10unEwwhVZ+OANNcOLz8O2dA3D5iuB4bb0fMLwjEwYZGM62+TBs1Q== +ember-cli-app-version@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/ember-cli-app-version/-/ember-cli-app-version-5.0.0.tgz#adad17c6f706f419b223707eec66dd1cd28530c3" + integrity sha512-afhx/CXDOMNXzoe4NDPy5WUfxWmYYHUzMCiTyvPBxCDBXYcMrtxNWxvgaSaeqcoHVEmqzeyBj8V82tzmT1dcyw== dependencies: - ember-cli-babel "^6.12.0" - git-repo-version "^1.0.2" + ember-cli-babel "^7.23.1" + git-repo-info "^2.1.1" ember-cli-babel-plugin-helpers@^1.0.0, ember-cli-babel-plugin-helpers@^1.1.0, ember-cli-babel-plugin-helpers@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/ember-cli-babel-plugin-helpers/-/ember-cli-babel-plugin-helpers-1.1.1.tgz#5016b80cdef37036c4282eef2d863e1d73576879" integrity sha512-sKvOiPNHr5F/60NLd7SFzMpYPte/nnGkq/tMIfXejfKHIhaiIkYFqX8Z9UFTKWLLn+V7NOaby6niNPZUdvKCRw== -"ember-cli-babel@>= 6.17.2", ember-cli-babel@^8.2.0: - version "8.2.0" - resolved "https://registry.yarnpkg.com/ember-cli-babel/-/ember-cli-babel-8.2.0.tgz#91e14c22ac22956177002385947724174553d41c" - integrity sha512-8H4+jQElCDo6tA7CamksE66NqBXWs7VNpS3a738L9pZCjg2kXIX4zoyHzkORUqCtr0Au7YsCnrlAMi1v2ALo7A== - dependencies: - "@babel/helper-compilation-targets" "^7.20.7" - "@babel/plugin-proposal-class-properties" "^7.16.5" - "@babel/plugin-proposal-decorators" "^7.20.13" - "@babel/plugin-proposal-private-methods" "^7.16.5" - "@babel/plugin-proposal-private-property-in-object" "^7.20.5" - "@babel/plugin-transform-class-static-block" "^7.22.11" - "@babel/plugin-transform-modules-amd" "^7.20.11" - "@babel/plugin-transform-runtime" "^7.13.9" - "@babel/plugin-transform-typescript" "^7.20.13" - "@babel/preset-env" "^7.20.2" - "@babel/runtime" "7.12.18" - amd-name-resolver "^1.3.1" - babel-plugin-debug-macros "^0.3.4" - babel-plugin-ember-data-packages-polyfill "^0.1.2" - babel-plugin-ember-modules-api-polyfill "^3.5.0" - babel-plugin-module-resolver "^5.0.0" - broccoli-babel-transpiler "^8.0.0" - broccoli-debug "^0.6.4" - broccoli-funnel "^3.0.8" - broccoli-source "^3.0.1" - calculate-cache-key-for-tree "^2.0.0" - clone "^2.1.2" - ember-cli-babel-plugin-helpers "^1.1.1" - ember-cli-version-checker "^5.1.2" - ensure-posix-path "^1.0.2" - resolve-package-path "^4.0.3" - semver "^7.3.8" - -ember-cli-babel@^6.0.0-beta.4, ember-cli-babel@^6.1.0, ember-cli-babel@^6.10.0, ember-cli-babel@^6.11.0, ember-cli-babel@^6.12.0, ember-cli-babel@^6.16.0, ember-cli-babel@^6.18.0, ember-cli-babel@^6.3.0, ember-cli-babel@^6.6.0, ember-cli-babel@^6.7.2, ember-cli-babel@^6.8.1, ember-cli-babel@^6.8.2, ember-cli-babel@^6.9.0: +ember-cli-babel@^6.0.0-beta.4, ember-cli-babel@^6.1.0, ember-cli-babel@^6.10.0, ember-cli-babel@^6.11.0, ember-cli-babel@^6.16.0, ember-cli-babel@^6.18.0, ember-cli-babel@^6.3.0, ember-cli-babel@^6.6.0, ember-cli-babel@^6.7.2, ember-cli-babel@^6.8.1, ember-cli-babel@^6.8.2, ember-cli-babel@^6.9.0: version "6.18.0" resolved "https://registry.yarnpkg.com/ember-cli-babel/-/ember-cli-babel-6.18.0.tgz#3f6435fd275172edeff2b634ee7b29ce74318957" integrity sha512-7ceC8joNYxY2wES16iIBlbPSxwKDBhYwC8drU3ZEvuPDMwVv1KzxCNu1fvxyFEBWhwaRNTUxSCsEVoTd9nosGA== @@ -5864,7 +6061,7 @@ ember-cli-babel@^6.0.0-beta.4, ember-cli-babel@^6.1.0, ember-cli-babel@^6.10.0, ember-cli-version-checker "^2.1.2" semver "^5.5.0" -ember-cli-babel@^7.0.0, ember-cli-babel@^7.1.0, ember-cli-babel@^7.1.2, ember-cli-babel@^7.1.3, ember-cli-babel@^7.10.0, ember-cli-babel@^7.11.0, ember-cli-babel@^7.11.1, ember-cli-babel@^7.12.0, ember-cli-babel@^7.13.0, ember-cli-babel@^7.13.2, ember-cli-babel@^7.20.5, ember-cli-babel@^7.22.1, ember-cli-babel@^7.23.0, ember-cli-babel@^7.23.1, ember-cli-babel@^7.26.10, ember-cli-babel@^7.26.11, ember-cli-babel@^7.26.2, ember-cli-babel@^7.26.3, ember-cli-babel@^7.26.6, ember-cli-babel@^7.4.1, ember-cli-babel@^7.5.0, ember-cli-babel@^7.7.0, ember-cli-babel@^7.7.3, ember-cli-babel@^7.8.0: +ember-cli-babel@^7.0.0, ember-cli-babel@^7.1.0, ember-cli-babel@^7.1.2, ember-cli-babel@^7.1.3, ember-cli-babel@^7.10.0, ember-cli-babel@^7.11.1, ember-cli-babel@^7.13.0, ember-cli-babel@^7.19.0, ember-cli-babel@^7.20.5, ember-cli-babel@^7.21.0, ember-cli-babel@^7.22.1, ember-cli-babel@^7.23.0, ember-cli-babel@^7.23.1, ember-cli-babel@^7.26.0, ember-cli-babel@^7.26.10, ember-cli-babel@^7.26.11, ember-cli-babel@^7.26.3, ember-cli-babel@^7.26.5, ember-cli-babel@^7.26.6, ember-cli-babel@^7.4.1, ember-cli-babel@^7.5.0, ember-cli-babel@^7.7.0, ember-cli-babel@^7.7.3, ember-cli-babel@^7.8.0: version "7.26.11" resolved "https://registry.yarnpkg.com/ember-cli-babel/-/ember-cli-babel-7.26.11.tgz#50da0fe4dcd99aada499843940fec75076249a9f" integrity sha512-JJYeYjiz/JTn34q7F5DSOjkkZqy8qwFOOxXfE6pe9yEJqWGu4qErKxlz8I22JoVEQ/aBUO+OcKTpmctvykM9YA== @@ -5900,6 +6097,39 @@ ember-cli-babel@^7.0.0, ember-cli-babel@^7.1.0, ember-cli-babel@^7.1.2, ember-cl rimraf "^3.0.1" semver "^5.5.0" +ember-cli-babel@^8.2.0: + version "8.2.0" + resolved "https://registry.yarnpkg.com/ember-cli-babel/-/ember-cli-babel-8.2.0.tgz#91e14c22ac22956177002385947724174553d41c" + integrity sha512-8H4+jQElCDo6tA7CamksE66NqBXWs7VNpS3a738L9pZCjg2kXIX4zoyHzkORUqCtr0Au7YsCnrlAMi1v2ALo7A== + dependencies: + "@babel/helper-compilation-targets" "^7.20.7" + "@babel/plugin-proposal-class-properties" "^7.16.5" + "@babel/plugin-proposal-decorators" "^7.20.13" + "@babel/plugin-proposal-private-methods" "^7.16.5" + "@babel/plugin-proposal-private-property-in-object" "^7.20.5" + "@babel/plugin-transform-class-static-block" "^7.22.11" + "@babel/plugin-transform-modules-amd" "^7.20.11" + "@babel/plugin-transform-runtime" "^7.13.9" + "@babel/plugin-transform-typescript" "^7.20.13" + "@babel/preset-env" "^7.20.2" + "@babel/runtime" "7.12.18" + amd-name-resolver "^1.3.1" + babel-plugin-debug-macros "^0.3.4" + babel-plugin-ember-data-packages-polyfill "^0.1.2" + babel-plugin-ember-modules-api-polyfill "^3.5.0" + babel-plugin-module-resolver "^5.0.0" + broccoli-babel-transpiler "^8.0.0" + broccoli-debug "^0.6.4" + broccoli-funnel "^3.0.8" + broccoli-source "^3.0.1" + calculate-cache-key-for-tree "^2.0.0" + clone "^2.1.2" + ember-cli-babel-plugin-helpers "^1.1.1" + ember-cli-version-checker "^5.1.2" + ensure-posix-path "^1.0.2" + resolve-package-path "^4.0.3" + semver "^7.3.8" + ember-cli-bootstrap-datetimepicker@~0.9: version "0.9.4" resolved "https://registry.yarnpkg.com/ember-cli-bootstrap-datetimepicker/-/ember-cli-bootstrap-datetimepicker-0.9.4.tgz#49eed65817526b0ff5d7ddbb2d75e84069a783b9" @@ -5978,16 +6208,6 @@ ember-cli-deprecation-workflow@^1.0.1: broccoli-plugin "^1.3.1" ember-debug-handlers-polyfill "^1.1.1" -ember-cli-eslint@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/ember-cli-eslint/-/ember-cli-eslint-5.1.0.tgz#acdb9b072911e04b07c313b610f514db4086d21a" - integrity sha512-o6787b0tgkRNp+KJo5BiQxtkLuz/yyYqVWF31LPrh+ZCC8jETrfyjsuk8VPDxKLGq7qEiQNJUgOEW87HTad7Vg== - dependencies: - broccoli-lint-eslint "^5.0.0" - ember-cli-version-checker "^3.0.0" - rsvp "^4.6.1" - walk-sync "^1.0.0" - ember-cli-file-picker@^0.0.12: version "0.0.12" resolved "https://registry.yarnpkg.com/ember-cli-file-picker/-/ember-cli-file-picker-0.0.12.tgz#24cf889c8a7f753f4ebe0e40bf9512e799704fa5" @@ -6009,25 +6229,6 @@ ember-cli-get-component-path-option@^1.0.0: resolved "https://registry.yarnpkg.com/ember-cli-get-component-path-option/-/ember-cli-get-component-path-option-1.0.0.tgz#0d7b595559e2f9050abed804f1d8eff1b08bc771" integrity sha512-k47TDwcJ2zPideBCZE8sCiShSxQSpebY2BHcX2DdipMmBox5gsfyVrbKJWIHeSTTKyEUgmBIvQkqTOozEziCZA== -ember-cli-head@^0.4.0: - version "0.4.1" - resolved "https://registry.yarnpkg.com/ember-cli-head/-/ember-cli-head-0.4.1.tgz#28b7ee86439746640834b232a3b34ab1329f3cf3" - integrity sha512-MIgshw5nGil7Q/TU4SDRCsgsiA3wPC9WqOig/g1LlHTNXjR4vH7s/ddG7GTfK5Kt4ZQHJEUDXpd/lIbdBkIQ/Q== - dependencies: - ember-cli-babel "^6.11.0" - ember-cli-htmlbars "^2.0.3" - -ember-cli-htmlbars-inline-precompile@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/ember-cli-htmlbars-inline-precompile/-/ember-cli-htmlbars-inline-precompile-2.1.0.tgz#61b91ff1879d44ae504cadb46fb1f2604995ae08" - integrity sha512-BylIHduwQkncPhnj0ZyorBuljXbTzLgRo6kuHf1W+IHFxThFl2xG+r87BVwsqx4Mn9MTgW9SE0XWjwBJcSWd6Q== - dependencies: - babel-plugin-htmlbars-inline-precompile "^1.0.0" - ember-cli-version-checker "^2.1.2" - hash-for-dep "^1.2.3" - heimdalljs-logger "^0.1.9" - silent-error "^1.1.0" - ember-cli-htmlbars@2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/ember-cli-htmlbars/-/ember-cli-htmlbars-2.0.3.tgz#e116e1500dba12f29c94b05b9ec90f52cb8bb042" @@ -6049,7 +6250,7 @@ ember-cli-htmlbars@^1.0.1: json-stable-stringify "^1.0.0" strip-bom "^2.0.0" -ember-cli-htmlbars@^2.0.1, ember-cli-htmlbars@^2.0.2, ember-cli-htmlbars@^2.0.3: +ember-cli-htmlbars@^2.0.1, ember-cli-htmlbars@^2.0.2: version "2.0.5" resolved "https://registry.yarnpkg.com/ember-cli-htmlbars/-/ember-cli-htmlbars-2.0.5.tgz#b5a105429a6bce4f7c9c97b667e3b8926e31397f" integrity sha512-3f3PAxdnQ/fhQa8XP/3z4RLRgLHxV8j4Ln75aHbRdemOCjBa048KxL9l+acRLhCulbGQCMnLiIUIC89PAzLrcA== @@ -6069,7 +6270,7 @@ ember-cli-htmlbars@^3.0.0, ember-cli-htmlbars@^3.0.1, ember-cli-htmlbars@^3.1.0: json-stable-stringify "^1.0.1" strip-bom "^3.0.0" -ember-cli-htmlbars@^4.0.8, ember-cli-htmlbars@^4.2.0: +ember-cli-htmlbars@^4.0.8, ember-cli-htmlbars@^4.2.0, ember-cli-htmlbars@^4.3.1: version "4.5.0" resolved "https://registry.yarnpkg.com/ember-cli-htmlbars/-/ember-cli-htmlbars-4.5.0.tgz#d299e4f7eba6f30dc723ee086906cc550beb252e" integrity sha512-bYJpK1pqFu9AadDAGTw05g2LMNzY8xTCIqQm7dMJmKEoUpLRFbPf4SfHXrktzDh7Q5iggl6Skzf1M0bPlIxARw== @@ -6089,7 +6290,7 @@ ember-cli-htmlbars@^4.0.8, ember-cli-htmlbars@^4.2.0: strip-bom "^4.0.0" walk-sync "^2.0.2" -ember-cli-htmlbars@^5.1.2, ember-cli-htmlbars@^5.3.1, ember-cli-htmlbars@^5.7.1: +ember-cli-htmlbars@^5.1.2, ember-cli-htmlbars@^5.3.1, ember-cli-htmlbars@^5.7.1, ember-cli-htmlbars@^5.7.2: version "5.7.2" resolved "https://registry.yarnpkg.com/ember-cli-htmlbars/-/ember-cli-htmlbars-5.7.2.tgz#e0cd2fb3c20d85fe4c3e228e6f0590ee1c645ba8" integrity sha512-Uj6R+3TtBV5RZoJY14oZn/sNPnc+UgmC8nb5rI4P3fR/gYoyTFIZSXiIM7zl++IpMoIrocxOrgt+mhonKphgGg== @@ -6111,7 +6312,7 @@ ember-cli-htmlbars@^5.1.2, ember-cli-htmlbars@^5.3.1, ember-cli-htmlbars@^5.7.1: strip-bom "^4.0.0" walk-sync "^2.2.0" -ember-cli-htmlbars@^6.0.1: +ember-cli-htmlbars@^6.0.0, ember-cli-htmlbars@^6.0.1, ember-cli-htmlbars@^6.1.0, ember-cli-htmlbars@^6.1.1, ember-cli-htmlbars@^6.2.0: version "6.3.0" resolved "https://registry.yarnpkg.com/ember-cli-htmlbars/-/ember-cli-htmlbars-6.3.0.tgz#ac85f2bbd09788992ab7f9ca832cd044fb8e5798" integrity sha512-N9Y80oZfcfWLsqickMfRd9YByVcTGyhYRnYQ2XVPVrp6jyUyOeRWmEAPh7ERSXpp8Ws4hr/JB9QVQrn/yZa+Ag== @@ -6136,7 +6337,7 @@ ember-cli-import-polyfill@^0.2.0: resolved "https://registry.yarnpkg.com/ember-cli-import-polyfill/-/ember-cli-import-polyfill-0.2.0.tgz#c1a08a8affb45c97b675926272fe78cf4ca166f2" integrity sha512-vq19edejqzNN3u4ZtETSPqppLrDHSh7LwC6nHaqV7gddJQMVgCtu/fZzPAGM6WfrFK/4vwPMLYyu0c+3MbATvQ== -ember-cli-inject-live-reload@^2.0.1: +ember-cli-inject-live-reload@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/ember-cli-inject-live-reload/-/ember-cli-inject-live-reload-2.1.0.tgz#ef63c733c133024d5726405a3c247fa12e88a385" integrity sha512-YV5wYRD5PJHmxaxaJt18u6LE6Y+wo455BnmcpN+hGNlChy2piM9/GMvYgTAz/8Vin8RJ5KekqP/w/NEaRndc/A== @@ -6250,23 +6451,6 @@ ember-cli-string-utils@^1.0.0, ember-cli-string-utils@^1.1.0: resolved "https://registry.yarnpkg.com/ember-cli-string-utils/-/ember-cli-string-utils-1.1.0.tgz#39b677fc2805f55173735376fcef278eaa4452a1" integrity sha512-PlJt4fUDyBrC/0X+4cOpaGCiMawaaB//qD85AXmDRikxhxVzfVdpuoec02HSiTGTTB85qCIzWBIh8lDOiMyyFg== -ember-cli-template-lint@^1.0.0-beta.3: - version "1.0.0" - resolved "https://registry.yarnpkg.com/ember-cli-template-lint/-/ember-cli-template-lint-1.0.0.tgz#8ca8f5f05fdcad35c13f26b65fb93c016196bdc9" - integrity sha512-acWyJUvRFo2aA/0kqeUxfCPwLtPk3ckZ/1I0BzBX9qW/Gi8qWqYnwnI/vEotIqmsQl+npbl0/SXeQHFrUdyB0g== - dependencies: - aot-test-generators "^0.1.0" - broccoli-concat "^3.7.1" - broccoli-persistent-filter "^2.1.0" - chalk "^2.4.1" - debug "^4.0.1" - ember-cli-version-checker "^3.0.1" - ember-template-lint "^1.2.0" - json-stable-stringify "^1.0.1" - md5-hex "^2.0.0" - strip-ansi "^4.0.0" - walk-sync "^1.1.3" - ember-cli-terser@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/ember-cli-terser/-/ember-cli-terser-4.0.2.tgz#c436a9e4159f76a615b051cba0584844652b7dcd" @@ -6281,12 +6465,12 @@ ember-cli-test-info@^1.0.0: dependencies: ember-cli-string-utils "^1.0.0" -ember-cli-test-loader@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/ember-cli-test-loader/-/ember-cli-test-loader-2.2.0.tgz#3fb8d5d1357e4460d3f0a092f5375e71b6f7c243" - integrity sha512-mlSXX9SciIRwGkFTX6XGyJYp4ry6oCFZRxh5jJ7VH8UXLTNx2ZACtDTwaWtNhYrWXgKyiDUvmD8enD56aePWRA== +ember-cli-test-loader@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/ember-cli-test-loader/-/ember-cli-test-loader-3.1.0.tgz#13abd43b7e07e2266a9f0fc5b9dc5455883b18ff" + integrity sha512-0aocZV9SIoOHiU3hrH3IuLR6busWhTX6UVXgd490hmJkIymmOXNH2+jJoC7Ebkeo3PiOfAdjqhb765QDlHSJOw== dependencies: - ember-cli-babel "^6.8.1" + ember-cli-babel "^7.23.0" ember-cli-typescript@3.0.0: version "3.0.0" @@ -6323,7 +6507,7 @@ ember-cli-typescript@^2.0.2: stagehand "^1.0.0" walk-sync "^1.0.0" -ember-cli-typescript@^3.1.3: +ember-cli-typescript@^3.1.3, ember-cli-typescript@^3.1.4: version "3.1.4" resolved "https://registry.yarnpkg.com/ember-cli-typescript/-/ember-cli-typescript-3.1.4.tgz#21d6ccd670d1f2e34c9cce68c6e32c442f46806b" integrity sha512-HJ73kL45OGRmIkPhBNFt31I1SGUvdZND+LCH21+qpq3pPlFpJG8GORyXpP+2ze8PbnITNLzwe5AwUrpyuRswdQ== @@ -6343,6 +6527,38 @@ ember-cli-typescript@^3.1.3: stagehand "^1.0.0" walk-sync "^2.0.0" +ember-cli-typescript@^4.1.0, ember-cli-typescript@^4.2.0, ember-cli-typescript@^4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/ember-cli-typescript/-/ember-cli-typescript-4.2.1.tgz#54d08fc90318cc986f3ea562f93ce58a6cc4c24d" + integrity sha512-0iKTZ+/wH6UB/VTWKvGuXlmwiE8HSIGcxHamwNhEC5x1mN3z8RfvsFZdQWYUzIWFN2Tek0gmepGRPTwWdBYl/A== + dependencies: + ansi-to-html "^0.6.15" + broccoli-stew "^3.0.0" + debug "^4.0.0" + execa "^4.0.0" + fs-extra "^9.0.1" + resolve "^1.5.0" + rsvp "^4.8.1" + semver "^7.3.2" + stagehand "^1.0.0" + walk-sync "^2.2.0" + +ember-cli-typescript@^5.0.0, ember-cli-typescript@^5.2.1: + version "5.3.0" + resolved "https://registry.yarnpkg.com/ember-cli-typescript/-/ember-cli-typescript-5.3.0.tgz#c0f726c61e4309aa9ff49b388219c6729ea986cd" + integrity sha512-gFA+ZwmsvvFwo2Jz/B9GMduEn+fPoGb69qWGP0Tp3+Tu5xypDtIKVSZ5086I3Cr19cLXD4HkrOR3YQvdUKzAkQ== + dependencies: + ansi-to-html "^0.6.15" + broccoli-stew "^3.0.0" + debug "^4.0.0" + execa "^4.0.0" + fs-extra "^9.0.1" + resolve "^1.5.0" + rsvp "^4.8.1" + semver "^7.3.2" + stagehand "^1.0.0" + walk-sync "^2.2.0" + ember-cli-version-checker@^1.0.2, ember-cli-version-checker@^1.2.0: version "1.3.1" resolved "https://registry.yarnpkg.com/ember-cli-version-checker/-/ember-cli-version-checker-1.3.1.tgz#0bc2d134c830142da64bf9627a0eded10b61ae72" @@ -6350,7 +6566,7 @@ ember-cli-version-checker@^1.0.2, ember-cli-version-checker@^1.2.0: dependencies: semver "^5.3.0" -ember-cli-version-checker@^2.0.0, ember-cli-version-checker@^2.1.0, ember-cli-version-checker@^2.1.2: +ember-cli-version-checker@^2.1.0, ember-cli-version-checker@^2.1.2: version "2.2.0" resolved "https://registry.yarnpkg.com/ember-cli-version-checker/-/ember-cli-version-checker-2.2.0.tgz#47771b731fe0962705e27c8199a9e3825709f3b3" integrity sha512-G+KtYIVlSOWGcNaTFHk76xR4GdzDLzAS4uxZUKdASuFX0KJE43C6DaqL+y3VTpUFLI2FIkAS6HZ4I1YBi+S3hg== @@ -6358,7 +6574,7 @@ ember-cli-version-checker@^2.0.0, ember-cli-version-checker@^2.1.0, ember-cli-ve resolve "^1.3.3" semver "^5.3.0" -ember-cli-version-checker@^3.0.0, ember-cli-version-checker@^3.0.1, ember-cli-version-checker@^3.1.2, ember-cli-version-checker@^3.1.3: +ember-cli-version-checker@^3.0.0, ember-cli-version-checker@^3.0.1, ember-cli-version-checker@^3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/ember-cli-version-checker/-/ember-cli-version-checker-3.1.3.tgz#7c9b4f5ff30fdebcd480b1c06c4de43bb51c522c" integrity sha512-PZNSvpzwWgv68hcXxyjREpj3WWb81A7rtYNQq1lLEgrWIchF8ApKJjWP3NBpHjaatwILkZAV8klair5WFlXAKg== @@ -6384,104 +6600,104 @@ ember-cli-version-checker@^5.1.1, ember-cli-version-checker@^5.1.2: semver "^7.3.4" silent-error "^1.1.1" -ember-cli@~3.15.0: - version "3.15.2" - resolved "https://registry.yarnpkg.com/ember-cli/-/ember-cli-3.15.2.tgz#c2a5871850da7537e0cb3cd0e7d59fd76cd3184e" - integrity sha512-ciuFaLokZDJfEzltH3QUxZYnQcigCzNrjyyVbeNtr3qUMICHZEzrreQjqIdmuOzmog+BOFddgAB2i/b7ewmV0Q== +ember-cli@~3.28.6: + version "3.28.6" + resolved "https://registry.yarnpkg.com/ember-cli/-/ember-cli-3.28.6.tgz#477a6a134501639d6cb03da6746158501c41efce" + integrity sha512-aGHIDXM5KujhU+tHyfp1X5bUp3yj47sIWI0zgybyIw6vv6ErAu/eKWWMSib5PF8cQDdXG9vttBcXnvQ4QBNIPQ== dependencies: - "@babel/core" "^7.7.2" - "@babel/plugin-transform-modules-amd" "^7.5.0" + "@babel/core" "^7.13.8" + "@babel/plugin-transform-modules-amd" "^7.12.1" amd-name-resolver "^1.3.1" - babel-plugin-module-resolver "^3.2.0" - bower-config "^1.4.1" + babel-plugin-module-resolver "^4.1.0" + bower-config "^1.4.3" bower-endpoint-parser "0.2.2" - broccoli "^3.2.0" + broccoli "^3.5.1" broccoli-amd-funnel "^2.0.1" - broccoli-babel-transpiler "^7.3.0" + broccoli-babel-transpiler "^7.8.0" broccoli-builder "^0.18.14" - broccoli-concat "^3.7.4" + broccoli-concat "^4.2.5" broccoli-config-loader "^1.0.1" broccoli-config-replace "^1.1.2" broccoli-debug "^0.6.5" - broccoli-funnel "^2.0.2" + broccoli-funnel "^3.0.5" broccoli-funnel-reducer "^1.0.0" broccoli-merge-trees "^3.0.2" - broccoli-middleware "^2.1.0" - broccoli-module-normalizer "^1.3.0" - broccoli-module-unification-reexporter "^1.0.0" - broccoli-slow-trees "^3.0.1" + broccoli-middleware "^2.1.1" + broccoli-slow-trees "^3.1.0" broccoli-source "^3.0.0" broccoli-stew "^3.0.0" calculate-cache-key-for-tree "^2.0.0" capture-exit "^2.0.0" - chalk "^2.4.2" + chalk "^4.1.0" ci-info "^2.0.0" clean-base-url "^1.0.0" compression "^1.7.4" - configstore "^5.0.0" - console-ui "^3.1.1" + configstore "^5.0.1" + console-ui "^3.1.2" core-object "^3.1.5" dag-map "^2.0.2" - diff "^4.0.1" + diff "^5.0.0" ember-cli-is-package-missing "^1.0.0" ember-cli-lodash-subset "^2.0.1" ember-cli-normalize-entity-name "^1.0.0" ember-cli-preprocess-registry "^3.3.0" ember-cli-string-utils "^1.1.0" - ember-source-channel-url "^2.0.1" - ensure-posix-path "^1.0.2" - execa "^1.0.0" + ember-source-channel-url "^3.0.0" + ensure-posix-path "^1.1.1" + execa "^5.0.0" exit "^0.1.2" - express "^4.16.4" - filesize "^4.2.0" - find-up "^4.1.0" - find-yarn-workspace-root "^1.2.1" - fs-extra "^8.1.0" + express "^4.17.1" + filesize "^6.1.0" + find-up "^5.0.0" + find-yarn-workspace-root "^2.0.0" + fixturify-project "^2.1.1" + fs-extra "^9.1.0" fs-tree-diff "^2.0.1" get-caller-file "^2.0.5" - git-repo-info "^2.1.0" - glob "^7.1.4" + git-repo-info "^2.1.1" + glob "^7.1.6" heimdalljs "^0.2.6" - heimdalljs-fs-monitor "^0.2.3" + heimdalljs-fs-monitor "^1.1.0" heimdalljs-graph "^1.0.0" heimdalljs-logger "^0.1.10" - http-proxy "^1.18.0" + http-proxy "^1.18.1" inflection "^1.12.0" is-git-url "^1.0.0" - isbinaryfile "^3.0.3" - js-yaml "^3.13.1" + is-language-code "^2.0.0" + isbinaryfile "^4.0.6" + js-yaml "^3.14.0" json-stable-stringify "^1.0.1" leek "0.0.24" lodash.template "^4.5.0" - markdown-it "^9.1.0" - markdown-it-terminal "0.1.0" + markdown-it "^12.0.4" + markdown-it-terminal "0.2.1" minimatch "^3.0.4" - morgan "^1.9.1" + morgan "^1.10.0" nopt "^3.0.6" - npm-package-arg "^6.1.1" + npm-package-arg "^8.1.1" p-defer "^3.0.0" - portfinder "^1.0.25" - promise-map-series "^0.2.3" - promise.prototype.finally "^3.1.1" + portfinder "^1.0.28" + promise-map-series "^0.3.0" + promise.hash.helper "^1.0.7" quick-temp "^0.1.8" - resolve "^1.12.0" - resolve-package-path "^1.2.7" - rsvp "^4.8.5" + resolve "^1.20.0" + resolve-package-path "^3.1.0" sane "^4.1.0" - semver "^6.3.0" + semver "^7.3.4" silent-error "^1.1.1" - sort-package-json "^1.23.1" - symlink-or-copy "^1.2.0" - temp "0.9.0" - testem "^2.17.0" - tiny-lr "^1.1.1" - tree-sync "^2.0.0" - uuid "^3.3.3" - walk-sync "^2.0.2" + sort-package-json "^1.49.0" + symlink-or-copy "^1.3.1" + temp "0.9.4" + testem "^3.2.0" + tiny-lr "^2.0.0" + tree-sync "^2.1.0" + uuid "^8.3.2" + walk-sync "^2.2.0" watch-detector "^1.0.0" + workerpool "^6.1.4" yam "^1.0.0" -ember-compatibility-helpers@^1.1.1, ember-compatibility-helpers@^1.1.2, ember-compatibility-helpers@^1.2.0, ember-compatibility-helpers@^1.2.1, ember-compatibility-helpers@^1.2.4: +ember-compatibility-helpers@^1.1.2, ember-compatibility-helpers@^1.2.0, ember-compatibility-helpers@^1.2.1, ember-compatibility-helpers@^1.2.4, ember-compatibility-helpers@^1.2.5: version "1.2.7" resolved "https://registry.yarnpkg.com/ember-compatibility-helpers/-/ember-compatibility-helpers-1.2.7.tgz#b4f138bba844f8f38f0b8f4d7e928841cd5e6591" integrity sha512-BtkjulweiXo9c3yVWrtexw2dTmBrvavD/xixNC6TKOBdrixUwU+6nuOO9dufDWsMxoid7MvtmDpzc9+mE8PdaA== @@ -6530,7 +6746,31 @@ ember-composable-helpers@^3.0.2: ember-cli-babel "^7.1.0" resolve "^1.10.0" -ember-concurrency@^1.0.0, ember-concurrency@^1.1.2: +ember-concurrency-decorators@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/ember-concurrency-decorators/-/ember-concurrency-decorators-2.0.3.tgz#2816c9a0283b90ba5340fc5b4e0b92ea91f7d6e3" + integrity sha512-r6O34YKI/slyYapVsuOPnmaKC4AsmBSwvgcadbdy+jHNj+mnryXPkm+3hhhRnFdlsKUKdEuXvl43lhjhYRLhhA== + dependencies: + "@ember-decorators/utils" "^6.1.0" + ember-cli-babel "^7.19.0" + ember-cli-htmlbars "^4.3.1" + ember-cli-typescript "^3.1.4" + +"ember-concurrency@>=1.0.0 <3", ember-concurrency@^2.0.0: + version "2.3.7" + resolved "https://registry.yarnpkg.com/ember-concurrency/-/ember-concurrency-2.3.7.tgz#52d786e37704b9054da1952638797e23714ec0e1" + integrity sha512-sz6sTIXN/CuLb5wdpauFa+rWXuvXXSnSHS4kuNzU5GSMDX1pLBWSuovoUk61FUe6CYRqBmT1/UushObwBGickQ== + dependencies: + "@babel/helper-plugin-utils" "^7.12.13" + "@babel/types" "^7.12.13" + "@glimmer/tracking" "^1.0.4" + ember-cli-babel "^7.26.11" + ember-cli-babel-plugin-helpers "^1.1.1" + ember-cli-htmlbars "^5.7.1" + ember-compatibility-helpers "^1.2.0" + ember-destroyable-polyfill "^2.0.2" + +ember-concurrency@^1.1.2: version "1.3.0" resolved "https://registry.yarnpkg.com/ember-concurrency/-/ember-concurrency-1.3.0.tgz#66f90fb792687470bcee1172adc0ebf33f5e8b9c" integrity sha512-DwGlfWFpYyAkTwsedlEtK4t1DznJSculAW6Vq5S1C0shVPc5b6tTpHB2FFYisannSYkm+wpm1f1Pd40qiNPtOQ== @@ -6564,25 +6804,25 @@ ember-crumbly@^3.0.1: ember-cli-htmlbars "^2.0.1" ember-copy "^1.0.0" -ember-data@~3.15.0: - version "3.15.1" - resolved "https://registry.yarnpkg.com/ember-data/-/ember-data-3.15.1.tgz#cec28afa80b15b752948e6dacf6408618e92a4c1" - integrity sha512-4l9m3C4FGQQOG1yQPmGiwJSQ1NZAwvURcvGYiJia0ap58P6Bml2O8Wst6fffKH7KbTYW+MnW6hw38ve/sblikg== - dependencies: - "@ember-data/adapter" "3.15.1" - "@ember-data/debug" "3.15.1" - "@ember-data/model" "3.15.1" - "@ember-data/private-build-infra" "3.15.1" - "@ember-data/record-data" "3.15.1" - "@ember-data/serializer" "3.15.1" - "@ember-data/store" "3.15.1" - "@ember/edition-utils" "^1.1.1" - "@ember/ordered-set" "^2.0.3" +ember-data@~3.28.6: + version "3.28.13" + resolved "https://registry.yarnpkg.com/ember-data/-/ember-data-3.28.13.tgz#68668d84924453c2baeeb0cf7d25f75b2c07e8b9" + integrity sha512-j1YjPl2JNHxQwQW6Bgfis44XSr4WCtdwMXr/SPpLsF1oVeTWIn3kwefcDnbuCI8Spmt1B9ab3ZLKzf2KkGN/7g== + dependencies: + "@ember-data/adapter" "3.28.13" + "@ember-data/debug" "3.28.13" + "@ember-data/model" "3.28.13" + "@ember-data/private-build-infra" "3.28.13" + "@ember-data/record-data" "3.28.13" + "@ember-data/serializer" "3.28.13" + "@ember-data/store" "3.28.13" + "@ember/edition-utils" "^1.2.0" + "@ember/string" "^3.0.0" "@glimmer/env" "^0.1.7" - broccoli-merge-trees "^3.0.2" - ember-cli-babel "^7.12.0" - ember-cli-typescript "^3.1.3" - ember-inflector "^3.0.1" + broccoli-merge-trees "^4.2.0" + ember-cli-babel "^7.26.6" + ember-cli-typescript "^4.1.0" + ember-inflector "^4.0.1" ember-debug-handlers-polyfill@^1.1.1: version "1.1.1" @@ -6598,7 +6838,7 @@ ember-decorators@^6.1.1: "@ember-decorators/object" "^6.1.1" ember-cli-babel "^7.7.3" -ember-destroyable-polyfill@^2.0.2: +ember-destroyable-polyfill@^2.0.2, ember-destroyable-polyfill@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/ember-destroyable-polyfill/-/ember-destroyable-polyfill-2.0.3.tgz#1673ed66609a82268ef270a7d917ebd3647f11e1" integrity sha512-TovtNqCumzyAiW0/OisSkkVK93xnVF4NRU6+FN0ubpfwEOpRrmM2RqDwXI6YAChCgSHON1cz0DfQStpA1Gjuuw== @@ -6614,12 +6854,22 @@ ember-drag-drop@^0.7.0: dependencies: ember-cli-babel "^7.1.3" -ember-element-helper@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/ember-element-helper/-/ember-element-helper-0.2.0.tgz#eacdf4d8507d6708812623206e24ad37bad487e7" - integrity sha512-/WV0PNLyxDvLX/YETb/8KICFTr719OYqFWXqV5XUkh9YhhBGDU/mr1OtlQaWOlsx+sHm42HD2UAICecqex8ziw== +ember-element-helper@^0.6.0: + version "0.6.1" + resolved "https://registry.yarnpkg.com/ember-element-helper/-/ember-element-helper-0.6.1.tgz#a6fbc5be5f875b5c864ae61bf5c5f81d6de6d936" + integrity sha512-YiOdAMlzYul4ulkIoNp8z7iHDfbT1fbut/9xGFRfxDwU/FmF8HtAUB2f1veu/w50HTeZNopa1OV2PCloZ76XlQ== dependencies: - ember-cli-babel "^6.16.0" + "@embroider/util" "^0.39.1 || ^0.40.0 || ^0.41.0 || ^1.0.0" + ember-cli-babel "^7.26.11" + ember-cli-htmlbars "^6.0.1" + +ember-element-helper@^0.8.5: + version "0.8.6" + resolved "https://registry.yarnpkg.com/ember-element-helper/-/ember-element-helper-0.8.6.tgz#564d63dbbb6130e4c69ff06b3bd8fbfb9cb4787a" + integrity sha512-WcbkJKgBZypRGwujeiPrQfZRhETVFLR0wvH2UxDaNBhLWncapt6KK+M/2i/eODoAQwgGxziejhXC6Cbqa9zA8g== + dependencies: + "@embroider/addon-shim" "^1.8.3" + "@embroider/util" "^1.0.0" ember-elsewhere@^1.0.2: version "1.2.2" @@ -6642,24 +6892,25 @@ ember-factory-for-polyfill@^1.3.1: dependencies: ember-cli-version-checker "^2.1.0" -ember-fetch@^7.0.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/ember-fetch/-/ember-fetch-7.1.0.tgz#17549e0df0f8c402b68612aa87f77957fa956ebf" - integrity sha512-FF2uEE7MXahNpXsQt9J3iJdPJDu27WL/ZD4NLuIWKgSAnFEvOxrjqhrU0fNMbkmJmlMBwGykbNiZVXDMpHbuLg== +ember-fetch@^8.1.1: + version "8.1.2" + resolved "https://registry.yarnpkg.com/ember-fetch/-/ember-fetch-8.1.2.tgz#651839780519319309127054786bf35cd4b84543" + integrity sha512-TVx24/jrvDIuPL296DV0hBwp7BWLcSMf0I8464KGz01sPytAB+ZAePbc9ooBTJDkKZEGFgatJa4nj3yF1S9Bpw== dependencies: - abortcontroller-polyfill "^1.4.0" - broccoli-concat "^3.7.5" + abortcontroller-polyfill "^1.7.3" + broccoli-concat "^4.2.5" broccoli-debug "^0.6.5" - broccoli-merge-trees "^3.0.0" + broccoli-merge-trees "^4.2.0" broccoli-rollup "^2.1.1" broccoli-stew "^3.0.0" broccoli-templater "^2.0.1" calculate-cache-key-for-tree "^2.0.0" caniuse-api "^3.0.0" - ember-cli-babel "^7.13.2" - ember-cli-typescript "^3.1.3" - node-fetch "^2.6.0" - whatwg-fetch "^3.0.0" + ember-cli-babel "^7.23.1" + ember-cli-typescript "^4.1.0" + ember-cli-version-checker "^5.1.2" + node-fetch "^2.6.1" + whatwg-fetch "^3.6.2" ember-font-awesome@^3.1: version "3.1.1" @@ -6672,6 +6923,15 @@ ember-font-awesome@^3.1: ember-cli-htmlbars "^2.0.2" font-awesome "^4.7.0" +ember-functions-as-helper-polyfill@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/ember-functions-as-helper-polyfill/-/ember-functions-as-helper-polyfill-2.1.2.tgz#5f7a7c7f87b87d4df785c53d1ee0810693c89b6b" + integrity sha512-yvW6xykvZEIYzzwlrC/g9yu6LtLkkj5F+ho6U+BDxN1uREMgoMOZnji7sSILn5ITVpaJ055DPcO+utEFD7IZOA== + dependencies: + ember-cli-babel "^7.26.11" + ember-cli-typescript "^5.0.0" + ember-cli-version-checker "^5.1.2" + ember-gestures@^1.1.1: version "1.1.5" resolved "https://registry.yarnpkg.com/ember-gestures/-/ember-gestures-1.1.5.tgz#0d82f721c8606694f113f1cc7eb04e28d448989d" @@ -6689,7 +6949,7 @@ ember-gestures@^1.1.1: hammerjs "^2.0.8" resolve "^1.10.0" -ember-get-config@: +ember-get-config@, ember-get-config@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/ember-get-config/-/ember-get-config-2.1.1.tgz#bede76c25d95dbefab8d30064abf7aa00bc19235" integrity sha512-uNmv1cPG/4qsac8oIf5txJ2FZ8p88LEpG4P3dNcjsJS98Y8hd0GPMFwVqpnzI78Lz7VYRGQWY4jnE4qm5R3j4g== @@ -6705,6 +6965,14 @@ ember-get-config@^0.2.4: broccoli-file-creator "^1.1.1" ember-cli-babel "^6.3.0" +ember-get-config@^1.0.2: + version "1.1.0" + resolved "https://registry.yarnpkg.com/ember-get-config/-/ember-get-config-1.1.0.tgz#731e192f1fe8022e06c0dbcbe5622fb8c4c78b87" + integrity sha512-diD+HwwY8QqpEk5DnDYfH7onYwl6NOgr1qv1ENbXih+/iiWYUVS/e0S/PlM7A4gdorD9spn1bnisnTLTf49Wpw== + dependencies: + "@embroider/macros" "^0.50.0 || ^1.0.0" + ember-cli-babel "^7.26.6" + ember-getowner-polyfill@^2.0.0, ember-getowner-polyfill@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/ember-getowner-polyfill/-/ember-getowner-polyfill-2.2.0.tgz#38e7dccbcac69d5ec694000329ec0b2be651d2b2" @@ -6762,12 +7030,12 @@ ember-in-viewport@^3.7.2: intersection-observer-admin "~0.3.2" raf-pool "~0.1.4" -ember-inflector@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/ember-inflector/-/ember-inflector-3.0.1.tgz#04be6df4d7e4000f6d6bd70787cdc995f77be4ab" - integrity sha512-fngrwMsnhkBt51KZgwNwQYxgURwV4lxtoHdjxf7RueGZ5zM7frJLevhHw7pbQNGqXZ3N+MRkhfNOLkdDK9kFdA== +ember-inflector@^4.0.1: + version "4.0.2" + resolved "https://registry.yarnpkg.com/ember-inflector/-/ember-inflector-4.0.2.tgz#4494f1a5f61c1aca7702d59d54024cc92211d8ec" + integrity sha512-+oRstEa52mm0jAFzhr51/xtEWpCEykB3SEBr7vUg8YnXUZJ5hKNBppP938q8Zzr9XfJEbzrtDSGjhKwJCJv6FQ== dependencies: - ember-cli-babel "^6.6.0" + ember-cli-babel "^7.26.5" ember-invoke-action@^1.5.1: version "1.5.1" @@ -6828,7 +7096,7 @@ ember-let-polyfill@^0.1.0: ember-cli-babel "^6.16.0" ember-cli-version-checker "^2.1.2" -ember-load-initializers@^2.1.1: +ember-load-initializers@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/ember-load-initializers/-/ember-load-initializers-2.1.2.tgz#8a47a656c1f64f9b10cecdb4e22a9d52ad9c7efa" integrity sha512-CYR+U/wRxLbrfYN3dh+0Tb6mFaxJKfdyz+wNql6cqTrA0BBi9k6J3AaKXj273TqvEpyyXegQFFkZEiuZdYtgJw== @@ -6889,12 +7157,14 @@ ember-maybe-import-regenerator@^0.1.6: ember-cli-babel "^6.0.0-beta.4" regenerator-runtime "^0.9.5" -ember-maybe-in-element@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/ember-maybe-in-element/-/ember-maybe-in-element-0.4.0.tgz#fe1994c60ee64527d2b2f3b4479ebf8806928bd8" - integrity sha512-ADQ9jewz46Y2MWiTAKrheIukHiU6p0QHn3xqz1BBDDOmubW1WdAjSrvtkEWsJQ08DyxIn3RdMuNDzAUo6HN6qw== +ember-maybe-in-element@^2.0.3, ember-maybe-in-element@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/ember-maybe-in-element/-/ember-maybe-in-element-2.1.0.tgz#f7bd8e41ca90a4f8038d919a9c135cbe7a7f271b" + integrity sha512-6WAzPbf4BNQIQzkur2+zRJJJ/PKQoujIYgFjrpj3fOPy8iRlxVUm0/B41qbFyg1LE6bVbg0cWbuESWEvJ9Rswg== dependencies: - ember-cli-babel "^7.1.0" + ember-cli-babel "^7.26.11" + ember-cli-htmlbars "^6.1.1" + ember-cli-version-checker "^5.1.2" ember-modal-dialog@^3.0.0-beta.3: version "3.0.3" @@ -6916,7 +7186,7 @@ ember-models-table@2: ember-cli-htmlbars "^5.1.2" ember-composable-helpers "^3.0.2" -ember-modifier-manager-polyfill@^1.1.0, ember-modifier-manager-polyfill@^1.2.0: +ember-modifier-manager-polyfill@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/ember-modifier-manager-polyfill/-/ember-modifier-manager-polyfill-1.2.0.tgz#cf4444e11a42ac84f5c8badd85e635df57565dda" integrity sha512-bnaKF1LLKMkBNeDoetvIJ4vhwRPKIIumWr6dbVuW6W6p4QV8ZiO+GdF8J7mxDNlog9CeL9Z/7wam4YS86G8BYA== @@ -6938,6 +7208,26 @@ ember-modifier@^2.1.0: ember-destroyable-polyfill "^2.0.2" ember-modifier-manager-polyfill "^1.2.0" +ember-modifier@^3.0.0: + version "3.2.7" + resolved "https://registry.yarnpkg.com/ember-modifier/-/ember-modifier-3.2.7.tgz#f2d35b7c867cbfc549e1acd8d8903c5ecd02ea4b" + integrity sha512-ezcPQhH8jUfcJQbbHji4/ZG/h0yyj1jRDknfYue/ypQS8fM8LrGcCMo0rjDZLzL1Vd11InjNs3BD7BdxFlzGoA== + dependencies: + ember-cli-babel "^7.26.6" + ember-cli-normalize-entity-name "^1.0.0" + ember-cli-string-utils "^1.1.0" + ember-cli-typescript "^5.0.0" + ember-compatibility-helpers "^1.2.5" + +"ember-modifier@^3.2.7 || ^4.0.0": + version "4.1.0" + resolved "https://registry.yarnpkg.com/ember-modifier/-/ember-modifier-4.1.0.tgz#cb91efbf8ca4ff4a1a859767afa42dddba5a2bbd" + integrity sha512-YFCNpEYj6jdyy3EjslRb2ehNiDvaOrXTilR9+ngq+iUqSHYto2zKV0rleiA1XJQ27ELM1q8RihT29U6Lq5EyqQ== + dependencies: + "@embroider/addon-shim" "^1.8.4" + ember-cli-normalize-entity-name "^1.0.0" + ember-cli-string-utils "^1.1.0" + ember-moment@^7.5.0: version "7.8.1" resolved "https://registry.yarnpkg.com/ember-moment/-/ember-moment-7.8.1.tgz#6f77cf941d1a92e231b2f4b810e113b2fae50c5f" @@ -6947,50 +7237,72 @@ ember-moment@^7.5.0: ember-getowner-polyfill "^2.2.0" ember-macro-helpers "^2.1.0" -ember-page-title@^5.1.0: - version "5.2.3" - resolved "https://registry.yarnpkg.com/ember-page-title/-/ember-page-title-5.2.3.tgz#63b039d70d4a5d7db9c00de5b2108823fb90bb9d" - integrity sha512-2ErWCJsTawaKJy7fzZqIsrUTNaNtDgEboiiL4OcqEg2A3gKmuuaDFSWz0w9njFRxWISvfPfRw1df0kpYAr98ng== - dependencies: - ember-cli-babel "^7.7.3" - ember-cli-head "^0.4.0" - ember-cli-htmlbars "^3.0.1" - ember-copy "^1.0.0" - -ember-power-select-with-create@~0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/ember-power-select-with-create/-/ember-power-select-with-create-0.7.0.tgz#58ba3817e4d5f9842e449c00ebedf2d85b3cb5ea" - integrity sha512-Vt6pTHcOAtXnLJa5PjLNI4ENpIGuIeRAEpXYEldxBrazEUVQtC5v1Oq6ZOeJ6x45BBc8q8eq2bDgGyblqCw+rg== +ember-page-title@^6.2.2: + version "6.2.2" + resolved "https://registry.yarnpkg.com/ember-page-title/-/ember-page-title-6.2.2.tgz#980838c44e96cba1d00f42435d707936af627324" + integrity sha512-YTXA+cylZrh9zO0zwjlaAGReT2MVOxAMnVO1OOygFrs1JBs4D6CKV3tImoilg3AvIXFBeJfFNNUbJOdRd9IGGg== dependencies: - ember-cli-babel "^7.7.3" - ember-cli-htmlbars "^3.0.1" - ember-power-select "^3.0.4" + ember-cli-babel "^7.23.1" -ember-power-select@^3.0.4: - version "3.0.6" - resolved "https://registry.yarnpkg.com/ember-power-select/-/ember-power-select-3.0.6.tgz#97dcbaf04e6afd9bd4c75cbb150c3a8d5fe50fec" - integrity sha512-osS+fbwfaxPo5RCCKDOWzJfaNc+toMmg3MMGmLz3h73Uqd3burRSUBo3DAkEHyYVHCy+oMas4+eZtRcjUrLWjg== +ember-power-select-with-create@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/ember-power-select-with-create/-/ember-power-select-with-create-1.0.0.tgz#8188f92ba9838ecf08c4a0270462b109106bb735" + integrity sha512-kks9Jd6PWqZzgSZcHiiu9I0c7W9iBO2KbKMjJA+AwV6Pb+GB0STUBAhIVpbFdFO40+6bekgjnzfdLDgmJhZFFw== dependencies: - "@ember-decorators/component" "^6.1.0" - ember-basic-dropdown "^2.0.13" - ember-cli-babel "^7.11.0" - ember-cli-htmlbars "^3.1.0" - ember-concurrency "^1.0.0" - ember-text-measurer "^0.5.0" - ember-truth-helpers "^2.1.0" + "@embroider/util" "^1.0.0" + ember-cli-babel "^7.26.11" + ember-cli-htmlbars "^6.1.0" + ember-power-select "^6.0.0" + +ember-power-select@^5.0.4: + version "5.0.4" + resolved "https://registry.yarnpkg.com/ember-power-select/-/ember-power-select-5.0.4.tgz#4af485fb7e1e1eca1bedd523892c82c672935dac" + integrity sha512-FLVShZr3cYdLzymP+/0rXkfH5tD/FD958kynY86MWvn7ZyL2tXowlgVKY08n+PJHdo/vCrzqubRYckvXRSH6Bg== + dependencies: + "@embroider/util" "^1.0.0" + "@glimmer/component" "^1.0.4" + "@glimmer/tracking" "^1.0.4" + ember-assign-helper "^0.4.0" + ember-basic-dropdown "^3.1.0 || ^4.0.2" + ember-cli-babel "^7.26.0" + ember-cli-htmlbars "^6.0.0" + ember-cli-typescript "^4.2.0" + ember-concurrency ">=1.0.0 <3" + ember-concurrency-decorators "^2.0.0" + ember-text-measurer "^0.6.0" + ember-truth-helpers "^2.1.0 || ^3.0.0" + +ember-power-select@^6.0.0: + version "6.0.2" + resolved "https://registry.yarnpkg.com/ember-power-select/-/ember-power-select-6.0.2.tgz#b4adaeac14f56b21e289f19ef9600786279e4b26" + integrity sha512-ntOFm7tlFGI5nSgaEg1lVL44t+oaSZwG2Ir7x8oP+SbfDClKW8kqTYrbTdOMkn2JBygkJ0d1KkxV1NxwF2B4dQ== + dependencies: + "@embroider/util" "^1.0.0" + "@glimmer/component" "^1.1.2" + "@glimmer/tracking" "^1.1.2" + ember-assign-helper "^0.4.0" + ember-basic-dropdown "^7.0.1" + ember-cli-babel "^7.26.11" + ember-cli-htmlbars "^6.1.0" + ember-cli-typescript "^5.0.0" + ember-concurrency "^2.0.0" + ember-text-measurer "^0.6.0" + ember-truth-helpers "^3.1.0" -ember-qunit@^4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/ember-qunit/-/ember-qunit-4.6.0.tgz#ad79fd3ff00073a8779400cc5a4b44829517590f" - integrity sha512-i5VOGn0RP8XH+5qkYDOZshbqAvO6lHgF65D0gz8vRx4DszCIvJMJO+bbftBTfYMxp6rqG85etAA6pfNxE0DqsQ== +ember-qunit@^5.1.5: + version "5.1.5" + resolved "https://registry.yarnpkg.com/ember-qunit/-/ember-qunit-5.1.5.tgz#24a7850f052be24189ff597dfc31b923e684c444" + integrity sha512-2cFA4oMygh43RtVcMaBrr086Tpdhgbn3fVZ2awLkzF/rnSN0D0PSRpd7hAD7OdBPerC/ZYRwzVyGXLoW/Zes4A== dependencies: - "@ember/test-helpers" "^1.7.1" - broccoli-funnel "^2.0.2" + broccoli-funnel "^3.0.8" broccoli-merge-trees "^3.0.2" - common-tags "^1.4.0" - ember-cli-babel "^7.12.0" - ember-cli-test-loader "^2.2.0" - qunit "^2.9.3" + common-tags "^1.8.0" + ember-auto-import "^1.11.3" + ember-cli-babel "^7.26.6" + ember-cli-test-loader "^3.0.0" + resolve-package-path "^3.1.0" + silent-error "^1.1.1" + validate-peer-dependencies "^1.2.0" ember-require-module@^0.4.0: version "0.4.0" @@ -7007,17 +7319,17 @@ ember-resize@^0.3.4: ember-cli-babel "^7.1.0" ember-cli-htmlbars "^3.0.0" -ember-resolver@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/ember-resolver/-/ember-resolver-7.0.0.tgz#07ca86b3bae373395b44bba784b8c133f75d61c2" - integrity sha512-tqyWk9E1P5LL42x7AnVoE25a/YWe0WcwAr8LXasm5V7Az3vFR/zbFtwN0oI3tpoSP/nCoGWDct6dRYlXrQjqBQ== +ember-resolver@^8.0.3: + version "8.1.0" + resolved "https://registry.yarnpkg.com/ember-resolver/-/ember-resolver-8.1.0.tgz#8ada162746fde3e6ea6a703bbb9910fbe62ab1e5" + integrity sha512-MGD7X2ztZVswGqs1mLgzhZJRhG7XiF6Mg4DgC7xJFWRYQQUHyGJpGdNWY9nXyrYnRIsCrQoL1do41zpxbrB/cg== dependencies: - babel-plugin-debug-macros "^0.3.3" - broccoli-funnel "^2.0.2" - broccoli-merge-trees "^3.0.0" - ember-cli-babel "^7.13.2" - ember-cli-version-checker "^3.1.3" - resolve "^1.14.0" + babel-plugin-debug-macros "^0.3.4" + broccoli-funnel "^3.0.8" + broccoli-merge-trees "^4.2.0" + ember-cli-babel "^7.26.6" + ember-cli-version-checker "^5.1.2" + resolve "^1.20.0" ember-rfc176-data@^0.3.13, ember-rfc176-data@^0.3.15, ember-rfc176-data@^0.3.17: version "0.3.18" @@ -7074,54 +7386,99 @@ ember-source-channel-url@^2.0.1: dependencies: got "^8.0.1" -ember-source@~3.15.0: - version "3.15.0" - resolved "https://registry.yarnpkg.com/ember-source/-/ember-source-3.15.0.tgz#f6500c6d289ce58231bf1e6695c4974df2be7390" - integrity sha512-daTELJBDMGqAmQb/Puxdk1YR204/zs1DEiEMQWlqbtmhphAoDUbGi9ifJu20ajP/IcOCWw9Vp7aPzguTohWF7w== +ember-source-channel-url@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/ember-source-channel-url/-/ember-source-channel-url-3.0.0.tgz#bcd5be72c63fa0b8c390b3121783b462063e2a1b" + integrity sha512-vF/8BraOc66ZxIDo3VuNP7iiDrnXEINclJgSJmqwAAEpg84Zb1DHPI22XTXSDA+E8fW5btPUxu65c3ZXi8AQFA== dependencies: - "@babel/helper-module-imports" "^7.0.0" - "@babel/plugin-transform-block-scoping" "^7.6.2" - "@babel/plugin-transform-object-assign" "^7.2.0" - "@ember/edition-utils" "^1.1.1" - babel-plugin-debug-macros "^0.3.3" - babel-plugin-filter-imports "^3.0.0" - broccoli-concat "^3.7.4" + node-fetch "^2.6.0" + +ember-source@~3.28.8: + version "3.28.12" + resolved "https://registry.yarnpkg.com/ember-source/-/ember-source-3.28.12.tgz#d8bb33d665d9c5adc858dce9d2d18be5ce58b2c0" + integrity sha512-HGrBpY6TN+MAi7F6BS8XYtNFG6vtbKE9ttPcyj0Ps+76kP7isCHyN0hk8ecKciLq7JYDqiPDNWjdIXAn2JfhZA== + dependencies: + "@babel/helper-module-imports" "^7.8.3" + "@babel/plugin-transform-block-scoping" "^7.8.3" + "@babel/plugin-transform-object-assign" "^7.8.3" + "@ember/edition-utils" "^1.2.0" + "@glimmer/vm-babel-plugins" "0.80.3" + babel-plugin-debug-macros "^0.3.4" + babel-plugin-filter-imports "^4.0.0" + broccoli-concat "^4.2.4" + broccoli-debug "^0.6.4" + broccoli-file-creator "^2.1.1" broccoli-funnel "^2.0.2" - broccoli-merge-trees "^3.0.2" - chalk "^2.4.2" - ember-cli-babel "^7.11.0" + broccoli-merge-trees "^4.2.0" + chalk "^4.0.0" + ember-cli-babel "^7.23.0" ember-cli-get-component-path-option "^1.0.0" ember-cli-is-package-missing "^1.0.0" ember-cli-normalize-entity-name "^1.0.0" ember-cli-path-utils "^1.0.0" ember-cli-string-utils "^1.1.0" - ember-cli-version-checker "^3.1.3" + ember-cli-version-checker "^5.1.1" ember-router-generator "^2.0.0" inflection "^1.12.0" - jquery "^3.4.1" - resolve "^1.11.1" - semver "^6.1.1" + jquery "^3.5.1" + resolve "^1.17.0" + semver "^7.3.4" silent-error "^1.1.1" -ember-template-lint@^1.2.0: - version "1.14.0" - resolved "https://registry.yarnpkg.com/ember-template-lint/-/ember-template-lint-1.14.0.tgz#fd3e8ec600b0b3de16b5701bf02acc99d192008e" - integrity sha512-M4CebpUZ6G8NEX05FsvlB6nFRO9Xi3eJWbGbnHI1Sakyp5Hl739fTPR5yPn/Gscc/sgNU25Rq1RSm0hoevrYGA== +ember-style-modifier@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/ember-style-modifier/-/ember-style-modifier-0.7.0.tgz#85b3dfd7e4bc2bd546df595f2dab4fb141cf7d87" + integrity sha512-iDzffiwJcb9j6gu3g8CxzZOTvRZ0BmLMEFl+uyqjiaj72VVND9+HbLyQRw1/ewPAtinhSktxxTTdwU/JO+stLw== dependencies: - "@glimmer/syntax" "^0.47.9" - chalk "^2.4.2" - globby "^9.2.0" - minimatch "^3.0.4" - resolve "^1.15.1" - strip-bom "^3.0.0" + ember-cli-babel "^7.26.6" + ember-modifier "^3.0.0" -ember-test-waiters@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/ember-test-waiters/-/ember-test-waiters-1.2.0.tgz#c12ead4313934c24cff41857020cacdbf8e6effe" - integrity sha512-aEw7YuutLuJT4NUuPTNiGFwgTYl23ThqmBxSkfFimQAn+keWjAftykk3dlFELuhsJhYW/S8YoVjN0bSAQRLNtw== +"ember-style-modifier@^0.8.0 || ^1.0.0 || ^2.0.0 || ^3.0.0": + version "3.1.1" + resolved "https://registry.yarnpkg.com/ember-style-modifier/-/ember-style-modifier-3.1.1.tgz#313269708552c42255806586160411840adc98c5" + integrity sha512-J91YLKVp3/m7LrcLEWNSG2sJlSFhE5Ny75empU048qYJtdJMe788Ks/EpKEi953o1mJujVRg792YGrwbrpTzNA== dependencies: - ember-cli-babel "^7.11.0" - semver "^6.3.0" + ember-auto-import "^2.5.0" + ember-cli-babel "^7.26.11" + ember-modifier "^3.2.7 || ^4.0.0" + +ember-template-lint@^3.15.0: + version "3.16.0" + resolved "https://registry.yarnpkg.com/ember-template-lint/-/ember-template-lint-3.16.0.tgz#7af2ec8d4386f4726be08c14c39ba121c56f0896" + integrity sha512-hbP4JefkOLx9tMkrZ3UIvdBNoEnrT7rg6c70tIxpB9F+KpPneDbmpGMBsQVhhK4BirTXIFwAIfnwKcwkIk3bPQ== + dependencies: + "@ember-template-lint/todo-utils" "^10.0.0" + chalk "^4.1.2" + ci-info "^3.3.0" + date-fns "^2.28.0" + ember-template-recast "^5.0.3" + find-up "^5.0.0" + fuse.js "^6.5.3" + get-stdin "^8.0.0" + globby "^11.0.4" + is-glob "^4.0.3" + micromatch "^4.0.4" + requireindex "^1.2.0" + resolve "^1.20.0" + v8-compile-cache "^2.3.0" + yargs "^16.2.0" + +ember-template-recast@^5.0.3: + version "5.0.3" + resolved "https://registry.yarnpkg.com/ember-template-recast/-/ember-template-recast-5.0.3.tgz#79df27a70bdce7be17f14db13886afde1e9d02d6" + integrity sha512-qsJYQhf29Dk6QMfviXhUPE+byMOs6iRQxUDHgkj8yqjeppvjHaFG96hZi/NAXJTm/M7o3PpfF5YlmeaKtI9UeQ== + dependencies: + "@glimmer/reference" "^0.65.0" + "@glimmer/syntax" "^0.65.0" + "@glimmer/validator" "^0.65.0" + async-promise-queue "^1.0.5" + colors "^1.4.0" + commander "^6.2.1" + globby "^11.0.3" + ora "^5.4.0" + slash "^3.0.0" + tmp "^0.2.1" + workerpool "^6.1.4" ember-tether@^1.0.0: version "1.0.0" @@ -7132,12 +7489,13 @@ ember-tether@^1.0.0: ember-cli-node-assets "^0.2.2" tether "^1.4.0" -ember-text-measurer@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/ember-text-measurer/-/ember-text-measurer-0.5.0.tgz#b907aeb8cbc04560e5070dc0347cdd35d0040d0d" - integrity sha512-YhcOcce8kaHp4K0frKW7xlPJxz82RegGQCVNTcFftEL/jpEflZyFJx17FWVINfDFRL4K8wXtlzDXFgMOg8vmtQ== +ember-text-measurer@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/ember-text-measurer/-/ember-text-measurer-0.6.0.tgz#140eda044fd7d4d7f60f654dd30da79c06922b2e" + integrity sha512-/aZs2x2i6kT4a5tAW+zenH2wg8AbRK9jKxLkbVsKl/1ublNl27idVRdov1gJ+zgWu3DNK7whcfVycXtlaybYQw== dependencies: - ember-cli-babel "^7.1.0" + ember-cli-babel "^7.19.0" + ember-cli-htmlbars "^4.3.1" ember-toggle@^6.0.1: version "6.0.3" @@ -7165,13 +7523,28 @@ ember-tooltips@^3.4.0: resolve "^1.10.1" tooltip.js "^1.1.5" -ember-truth-helpers@2.1.0, ember-truth-helpers@^2.1.0: +ember-truth-helpers@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/ember-truth-helpers/-/ember-truth-helpers-2.1.0.tgz#d4dab4eee7945aa2388126485977baeb33ca0798" integrity sha512-BQlU8aTNl1XHKTYZ243r66yqtR9JU7XKWQcmMA+vkqfkE/c9WWQ9hQZM8YABihCmbyxzzZsngvldokmeX5GhAw== dependencies: ember-cli-babel "^6.6.0" +"ember-truth-helpers@^2.1.0 || ^3.0.0", ember-truth-helpers@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/ember-truth-helpers/-/ember-truth-helpers-3.1.1.tgz#434715926d72bcc63b8a115dec09745fda4474dc" + integrity sha512-FHwJAx77aA5q27EhdaaiBFuy9No+8yaWNT5A7zs0sIFCmf14GbcLn69vJEp6mW7vkITezizGAWhw7gL0Wbk7DA== + dependencies: + ember-cli-babel "^7.22.1" + +"ember-truth-helpers@^2.1.0 || ^3.0.0 || ^4.0.0": + version "4.0.3" + resolved "https://registry.yarnpkg.com/ember-truth-helpers/-/ember-truth-helpers-4.0.3.tgz#02705dc36f2d68f1d4cff0d8226396c8ae5dee2e" + integrity sha512-T6Ogd3pk9FxYiZfSxdjgn3Hb3Ksqgw7CD23V9qfig9jktNdkNEHo4+3PA3cSD/+3a2kdH3KmNvKyarVuzdtEkA== + dependencies: + "@embroider/addon-shim" "^1.8.6" + ember-functions-as-helper-polyfill "^2.1.2" + ember-try-config@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/ember-try-config/-/ember-try-config-3.0.0.tgz#012d8c90cae9eb624e2b62040bf7e76a1aa58edc" @@ -7233,11 +7606,6 @@ emit-function@0.0.2: resolved "https://registry.yarnpkg.com/emit-function/-/emit-function-0.0.2.tgz#e3a50b3d61be1bf8ca88b924bf713157a5bec124" integrity sha512-WRHUvrW3lcV45D+IQ9F3Wro5jFjnJcX82IQHo0r47gkajeMEKpJPUeQ4BgbyUb1T1dT17XFkgPwwrg4owU0fRw== -emoji-regex@^7.0.1: - version "7.0.3" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" - integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== - emoji-regex@^8.0.0: version "8.0.0" resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" @@ -7270,45 +7638,26 @@ end-of-stream@^1.0.0, end-of-stream@^1.1.0: dependencies: once "^1.4.0" -engine.io-client@~3.5.0: - version "3.5.3" - resolved "https://registry.yarnpkg.com/engine.io-client/-/engine.io-client-3.5.3.tgz#3254f61fdbd53503dc9a6f9d46a52528871ca0d7" - integrity sha512-qsgyc/CEhJ6cgMUwxRRtOndGVhIu5hpL5tR4umSpmX/MvkFoIxUTM7oFMDQumHNzlNLwSVy6qhstFPoWTf7dOw== - dependencies: - component-emitter "~1.3.0" - component-inherit "0.0.3" - debug "~3.1.0" - engine.io-parser "~2.2.0" - has-cors "1.1.0" - indexof "0.0.1" - parseqs "0.0.6" - parseuri "0.0.6" - ws "~7.4.2" - xmlhttprequest-ssl "~1.6.2" - yeast "0.1.2" - -engine.io-parser@~2.2.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/engine.io-parser/-/engine.io-parser-2.2.1.tgz#57ce5611d9370ee94f99641b589f94c97e4f5da7" - integrity sha512-x+dN/fBH8Ro8TFwJ+rkB2AmuVw9Yu2mockR/p3W8f8YtExwFgDvBDi0GWyb4ZLkpahtDGZgtr3zLovanJghPqg== - dependencies: - after "0.8.2" - arraybuffer.slice "~0.0.7" - base64-arraybuffer "0.1.4" - blob "0.0.5" - has-binary2 "~1.0.2" +engine.io-parser@~5.2.1: + version "5.2.2" + resolved "https://registry.yarnpkg.com/engine.io-parser/-/engine.io-parser-5.2.2.tgz#37b48e2d23116919a3453738c5720455e64e1c49" + integrity sha512-RcyUFKA93/CXH20l4SoVvzZfrSDMOTUS3bWVpTt2FuFP+XYrL8i8oonHP7WInRyVHXh0n/ORtoeiE1os+8qkSw== -engine.io@~3.6.0: - version "3.6.1" - resolved "https://registry.yarnpkg.com/engine.io/-/engine.io-3.6.1.tgz#7ca4c7779c20865e30d208751bde08ca1e800256" - integrity sha512-dfs8EVg/i7QjFsXxn7cCRQ+Wai1G1TlEvHhdYEi80fxn5R1vZ2K661O6v/rezj1FP234SZ14r9CmJke99iYDGg== +engine.io@~6.5.2: + version "6.5.4" + resolved "https://registry.yarnpkg.com/engine.io/-/engine.io-6.5.4.tgz#6822debf324e781add2254e912f8568508850cdc" + integrity sha512-KdVSDKhVKyOi+r5uEabrDLZw2qXStVvCsEB/LN3mw4WFi6Gx50jTyuxYVCwAAC0U46FdnzP/ScKRBTXb/NiEOg== dependencies: + "@types/cookie" "^0.4.1" + "@types/cors" "^2.8.12" + "@types/node" ">=10.0.0" accepts "~1.3.4" base64id "2.0.0" cookie "~0.4.1" - debug "~4.1.0" - engine.io-parser "~2.2.0" - ws "~7.4.2" + cors "~2.8.5" + debug "~4.3.1" + engine.io-parser "~5.2.1" + ws "~8.11.0" enhanced-resolve@^4.0.0, enhanced-resolve@^4.5.0: version "4.5.0" @@ -7319,7 +7668,15 @@ enhanced-resolve@^4.0.0, enhanced-resolve@^4.5.0: memory-fs "^0.5.0" tapable "^1.0.0" -ensure-posix-path@^1.0.0, ensure-posix-path@^1.0.1, ensure-posix-path@^1.0.2, ensure-posix-path@^1.1.0: +enhanced-resolve@^5.16.0: + version "5.16.0" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.16.0.tgz#65ec88778083056cb32487faa9aef82ed0864787" + integrity sha512-O+QWCviPNSSLAD9Ucn8Awv+poAkqn3T1XY5/N7kR7rQO9yfSGWkYZDwpJ+iKF7B8rxaQKWngSqACpgzeapSyoA== + dependencies: + graceful-fs "^4.2.4" + tapable "^2.2.0" + +ensure-posix-path@^1.0.0, ensure-posix-path@^1.0.1, ensure-posix-path@^1.0.2, ensure-posix-path@^1.1.0, ensure-posix-path@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/ensure-posix-path/-/ensure-posix-path-1.1.1.tgz#3c62bdb19fa4681544289edb2b382adc029179ce" integrity sha512-VWU0/zXzVbeJNXvME/5EmLuEj2TauvoaTz6aFYK1Z92JCBlDlZ3Gu0tuGR42kpW1754ywTs+QB0g5TP0oj9Zaw== @@ -7339,6 +7696,11 @@ entities@~1.1.1: resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56" integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w== +entities@~2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/entities/-/entities-2.1.0.tgz#992d3129cf7df6870b96c57858c249a120f8b8b5" + integrity sha512-hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w== + errlop@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/errlop/-/errlop-2.2.0.tgz#1ff383f8f917ae328bebb802d6ca69666a42d21b" @@ -7417,11 +7779,6 @@ es-abstract@^1.22.1, es-abstract@^1.22.3, es-abstract@^1.23.0, es-abstract@^1.23 unbox-primitive "^1.0.2" which-typed-array "^1.1.15" -es-array-method-boxes-properly@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz#873f3e84418de4ee19c5be752990b2e44718d09e" - integrity sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA== - es-define-property@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.0.tgz#c7faefbdff8b2696cf5f46921edfb77cc4ba3845" @@ -7429,11 +7786,16 @@ es-define-property@^1.0.0: dependencies: get-intrinsic "^1.2.4" -es-errors@^1.0.0, es-errors@^1.2.1, es-errors@^1.3.0: +es-errors@^1.2.1, es-errors@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f" integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== +es-module-lexer@^1.2.1: + version "1.5.0" + resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-1.5.0.tgz#4878fee3789ad99e065f975fdd3c645529ff0236" + integrity sha512-pqrTKmwEIgafsYZAGw9kszYzmagcE/n4dbgwGWLEXg7J4QFJVQRBld8j3Q3GNez79jzxZshq0bcT962QHOghjw== + es-object-atoms@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/es-object-atoms/-/es-object-atoms-1.0.0.tgz#ddb55cd47ac2e240701260bc2a8e31ecb643d941" @@ -7592,6 +7954,13 @@ eslint-plugin-node@^11.1.0: resolve "^1.10.1" semver "^6.1.0" +eslint-plugin-prettier@^3.4.1: + version "3.4.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-3.4.1.tgz#e9ddb200efb6f3d05ffe83b1665a716af4a387e5" + integrity sha512-htg25EUYUeIhKHXjOinK4BgCcDwtLHjqaxCDsMy5nbnUMkKFvIhMVCp+5GFUXQ4Nr8lBsPqtGAqBenbpFqAA2g== + dependencies: + prettier-linter-helpers "^1.0.0" + eslint-plugin-qunit@^7.3.0: version "7.3.4" resolved "https://registry.yarnpkg.com/eslint-plugin-qunit/-/eslint-plugin-qunit-7.3.4.tgz#2465b6f29ff56fbe9b741bde2740dec109ee9bec" @@ -7600,12 +7969,12 @@ eslint-plugin-qunit@^7.3.0: eslint-utils "^3.0.0" requireindex "^1.2.0" -eslint-scope@3.7.1: - version "3.7.1" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-3.7.1.tgz#3d63c3edfda02e06e01a452ad88caacc7cdcb6e8" - integrity sha512-ivpbtpUgg9SJS4TLjK7KdcDhqc/E3CGItsvQbBNLkNGUeMhd5qnJcryba/brESS+dg3vrLqPuc/UcS7jRJdN5A== +eslint-scope@5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" + integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== dependencies: - esrecurse "^4.1.0" + esrecurse "^4.3.0" estraverse "^4.1.1" eslint-scope@^4.0.3: @@ -7624,13 +7993,6 @@ eslint-scope@^7.2.2: esrecurse "^4.3.0" estraverse "^5.2.0" -eslint-utils@^1.3.1: - version "1.4.3" - resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.4.3.tgz#74fec7c54d0776b6f67e0251040b5806564e981f" - integrity sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q== - dependencies: - eslint-visitor-keys "^1.1.0" - eslint-utils@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.1.0.tgz#d2de5e03424e707dc10c74068ddedae708741b27" @@ -7645,12 +8007,12 @@ eslint-utils@^3.0.0: dependencies: eslint-visitor-keys "^2.0.0" -eslint-visitor-keys@^1.0.0, eslint-visitor-keys@^1.1.0: +eslint-visitor-keys@^1.1.0: version "1.3.0" resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== -eslint-visitor-keys@^2.0.0: +eslint-visitor-keys@^2.0.0, eslint-visitor-keys@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303" integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== @@ -7660,48 +8022,6 @@ eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4 resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800" integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag== -eslint@^5.6.0: - version "5.16.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-5.16.0.tgz#a1e3ac1aae4a3fbd8296fcf8f7ab7314cbb6abea" - integrity sha512-S3Rz11i7c8AA5JPv7xAH+dOyq/Cu/VXHiHXBPOU1k/JAM5dXqQPt3qcrhpHSorXmrpu2g0gkIBVXAqCpzfoZIg== - dependencies: - "@babel/code-frame" "^7.0.0" - ajv "^6.9.1" - chalk "^2.1.0" - cross-spawn "^6.0.5" - debug "^4.0.1" - doctrine "^3.0.0" - eslint-scope "^4.0.3" - eslint-utils "^1.3.1" - eslint-visitor-keys "^1.0.0" - espree "^5.0.1" - esquery "^1.0.1" - esutils "^2.0.2" - file-entry-cache "^5.0.1" - functional-red-black-tree "^1.0.1" - glob "^7.1.2" - globals "^11.7.0" - ignore "^4.0.6" - import-fresh "^3.0.0" - imurmurhash "^0.1.4" - inquirer "^6.2.2" - js-yaml "^3.13.0" - json-stable-stringify-without-jsonify "^1.0.1" - levn "^0.3.0" - lodash "^4.17.11" - minimatch "^3.0.4" - mkdirp "^0.5.1" - natural-compare "^1.4.0" - optionator "^0.8.2" - path-is-inside "^1.0.2" - progress "^2.0.0" - regexpp "^2.0.1" - semver "^5.5.1" - strip-ansi "^4.0.0" - strip-json-comments "^2.0.1" - table "^5.2.3" - text-table "^0.2.0" - eslint@^8.18.0: version "8.57.0" resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.57.0.tgz#c786a6fd0e0b68941aaf624596fb987089195668" @@ -7761,15 +8081,6 @@ esniff@^2.0.1: event-emitter "^0.3.5" type "^2.7.2" -espree@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/espree/-/espree-5.0.1.tgz#5d6526fa4fc7f0788a5cf75b15f30323e2f81f7a" - integrity sha512-qWAZcWh4XE/RwzLJejfcofscgMc9CamR6Tn1+XRXNzrvUSSbiAjGOI/fggztjIi7y9VLPqnICMIPiGyr8JaZ0A== - dependencies: - acorn "^6.0.7" - acorn-jsx "^5.0.0" - eslint-visitor-keys "^1.0.0" - espree@^9.6.0, espree@^9.6.1: version "9.6.1" resolved "https://registry.yarnpkg.com/espree/-/espree-9.6.1.tgz#a2a17b8e434690a5432f2f8018ce71d331a48c6f" @@ -7799,7 +8110,7 @@ esprima@~3.0.0: resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.0.0.tgz#53cf247acda77313e551c3aa2e73342d3fb4f7d9" integrity sha512-xoBq/MIShSydNZOkjkoCEjqod963yHNXTLC40ypBhop6yPqflPz/vTinmCfSrGcywVLnSftRf6a0kJLdFdzemw== -esquery@^1.0.1, esquery@^1.4.2: +esquery@^1.4.2: version "1.5.0" resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.5.0.tgz#6ce17738de8577694edd7361c57182ac8cb0db0b" integrity sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg== @@ -7861,7 +8172,7 @@ events-to-array@^1.0.1: resolved "https://registry.yarnpkg.com/events-to-array/-/events-to-array-1.1.2.tgz#2d41f563e1fe400ed4962fe1a4d5c6a7539df7f6" integrity sha512-inRWzRY7nG+aXZxBzEqYKB3HPgwflZRopAjDCHv0whhRx+MTUr1ei0ICZUypdyE0HRm4L2d5VEcIqLD6yl+BFA== -events@^3.0.0: +events@^3.0.0, events@^3.2.0: version "3.3.0" resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== @@ -7923,6 +8234,36 @@ execa@^3.0.0: signal-exit "^3.0.2" strip-final-newline "^2.0.0" +execa@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-4.1.0.tgz#4e5491ad1572f2f17a77d388c6c857135b22847a" + integrity sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA== + dependencies: + cross-spawn "^7.0.0" + get-stream "^5.0.0" + human-signals "^1.1.1" + is-stream "^2.0.0" + merge-stream "^2.0.0" + npm-run-path "^4.0.0" + onetime "^5.1.0" + signal-exit "^3.0.2" + strip-final-newline "^2.0.0" + +execa@^5.0.0: + version "5.1.1" + resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" + integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg== + dependencies: + cross-spawn "^7.0.3" + get-stream "^6.0.0" + human-signals "^2.1.0" + is-stream "^2.0.0" + merge-stream "^2.0.0" + npm-run-path "^4.0.1" + onetime "^5.1.2" + signal-exit "^3.0.3" + strip-final-newline "^2.0.0" + exists-sync@0.0.4: version "0.0.4" resolved "https://registry.yarnpkg.com/exists-sync/-/exists-sync-0.0.4.tgz#9744c2c428cc03b01060db454d4b12f0ef3c8879" @@ -7953,7 +8294,7 @@ expand-tilde@^2.0.0, expand-tilde@^2.0.2: dependencies: homedir-polyfill "^1.0.1" -express@^4.10.7, express@^4.16.4: +express@^4.10.7, express@^4.17.1: version "4.19.2" resolved "https://registry.yarnpkg.com/express/-/express-4.19.2.tgz#e25437827a3aa7f2a827bc8171bbbb664a356465" integrity sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q== @@ -8040,6 +8381,11 @@ extglob@^2.0.4: snapdragon "^0.8.1" to-regex "^3.0.1" +extract-stack@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/extract-stack/-/extract-stack-2.0.0.tgz#11367bc865bfcd9bc0db3123e5edb57786f11f9b" + integrity sha512-AEo4zm+TenK7zQorGK1f9mJ8L14hnTDi2ZQPR+Mub1NX8zimka1mXpV5LpH8x9HoUmFSHZCfLHqWvp0Y4FxxzQ== + fast-deep-equal@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz#7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49" @@ -8050,19 +8396,12 @@ fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== -fast-glob@^2.2.6: - version "2.2.7" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-2.2.7.tgz#6953857c3afa475fff92ee6015d52da70a4cd39d" - integrity sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw== - dependencies: - "@mrmlnc/readdir-enhanced" "^2.2.1" - "@nodelib/fs.stat" "^1.1.2" - glob-parent "^3.1.0" - is-glob "^4.0.0" - merge2 "^1.2.3" - micromatch "^3.1.10" +fast-diff@^1.1.2: + version "1.3.0" + resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.3.0.tgz#ece407fa550a64d638536cd727e129c61616e0f0" + integrity sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw== -fast-glob@^3.0.3: +fast-glob@^3.0.3, fast-glob@^3.2.9: version "3.3.2" resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129" integrity sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow== @@ -8090,10 +8429,10 @@ fast-ordered-set@^1.0.0, fast-ordered-set@^1.0.2: dependencies: blank-object "^1.0.1" -fast-sourcemap-concat@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/fast-sourcemap-concat/-/fast-sourcemap-concat-1.4.0.tgz#122c330d4a2afaff16ad143bc9674b87cd76c8ad" - integrity sha512-x90Wlx/2C83lfyg7h4oguTZN4MyaVfaiUSJQNpU+YEA0Odf9u659Opo44b0LfoVg9G/bOE++GdID/dkyja+XcA== +fast-sourcemap-concat@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/fast-sourcemap-concat/-/fast-sourcemap-concat-2.1.1.tgz#3647fd5876deace53d9a1c418061199417911801" + integrity sha512-7h9/x25c6AQwdU3mA8MZDUMR3UCy50f237egBrBkuwjnUZSmfu4ptCf91PZSKzON2Uh5VvIHozYKWcPPgcjxIw== dependencies: chalk "^2.0.0" fs-extra "^5.0.0" @@ -8102,7 +8441,6 @@ fast-sourcemap-concat@^1.4.0: mkdirp "^0.5.0" source-map "^0.4.2" source-map-url "^0.3.0" - sourcemap-validator "^1.1.0" fastboot-transform@^0.1.3: version "0.1.3" @@ -8126,10 +8464,10 @@ fault@^1.0.0: dependencies: format "^0.2.0" -faye-websocket@~0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.10.0.tgz#4e492f8d04dfb6f89003507f6edbf2d501e7c6f4" - integrity sha512-Xhj93RXbMSq8urNCUq4p9l0P6hnySJ/7YNRhYNug0bLOuii7pKO7xQFb5mx9xZXWCar88pLPb805PvUkwrLZpQ== +faye-websocket@^0.11.3: + version "0.11.4" + resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.4.tgz#7f0d9275cfdd86a1c963dc8b65fcc451edcbb1da" + integrity sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g== dependencies: websocket-driver ">=0.5.1" @@ -8159,13 +8497,6 @@ figures@^3.0.0: dependencies: escape-string-regexp "^1.0.5" -file-entry-cache@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-5.0.1.tgz#ca0f6efa6dd3d561333fb14515065c2fafdf439c" - integrity sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g== - dependencies: - flat-cache "^2.0.1" - file-entry-cache@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" @@ -8199,10 +8530,10 @@ filenamify@^4.3.0: strip-outer "^1.0.1" trim-repeated "^1.0.0" -filesize@^4.2.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/filesize/-/filesize-4.2.1.tgz#ab1cb2069db5d415911c1a13e144c0e743bc89bc" - integrity sha512-bP82Hi8VRZX/TUBKfE24iiUGsB/sfm2WUrwTQyAzQrhO3V9IhcBBNBXMyzLY5orACxRyYJ3d2HeRVX+eFv4lmA== +filesize@^6.1.0: + version "6.4.0" + resolved "https://registry.yarnpkg.com/filesize/-/filesize-6.4.0.tgz#914f50471dd66fdca3cefe628bd0cde4ef769bcd" + integrity sha512-mjFIpOHC4jbfcTfoh4rkWpI31mF7viw9ikj/JyLoKzqlwG/YsefKfvYlYhdYdg/9mtK2z1AzgN/0LvVQ3zdlSQ== fill-range@^4.0.0: version "4.0.0" @@ -8247,7 +8578,7 @@ finalhandler@1.2.0: statuses "2.0.1" unpipe "~1.0.0" -find-babel-config@^1.1.0: +find-babel-config@^1.1.0, find-babel-config@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/find-babel-config/-/find-babel-config-1.2.0.tgz#a9b7b317eb5b9860cda9d54740a8c8337a2283a2" integrity sha512-jB2CHJeqy6a820ssiqwrKMeyC6nNdmrcgkKWJWmpoxpE8RKciYJXCcXRq1h2AzCo5I5BJeN2tkGEO3hLTuePRA== @@ -8324,6 +8655,13 @@ find-yarn-workspace-root@^1.2.1: fs-extra "^4.0.3" micromatch "^3.1.4" +find-yarn-workspace-root@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/find-yarn-workspace-root/-/find-yarn-workspace-root-2.0.0.tgz#f47fb8d239c900eb78179aa81b66673eac88f7bd" + integrity sha512-1IMnbjt4KzsQfnhnzNd8wUEgXZ44IzZaZmnLYx7D5FZlaHt2gW20Cri8Q+E/t5tIj4+epTBub+2Zxu/vNILzqQ== + dependencies: + micromatch "^4.0.2" + findup-sync@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-4.0.0.tgz#956c9cdde804052b881b428512905c4a5f2cdef0" @@ -8353,6 +8691,15 @@ fixturify-project@^1.10.0: fixturify "^1.2.0" tmp "^0.0.33" +fixturify-project@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/fixturify-project/-/fixturify-project-2.1.1.tgz#a511dd26700c6b64ac271ef4393e7124f153c81f" + integrity sha512-sP0gGMTr4iQ8Kdq5Ez0CVJOZOGWqzP5dv/veOTdFNywioKjkNWCHBi1q65DMpcNGUGeoOUWehyji274Q2wRgxA== + dependencies: + fixturify "^2.1.0" + tmp "^0.0.33" + type-fest "^0.11.0" + fixturify@^1.2.0: version "1.3.0" resolved "https://registry.yarnpkg.com/fixturify/-/fixturify-1.3.0.tgz#163c468093c7c4d90b70cde39fd6325f6528b25d" @@ -8364,14 +8711,17 @@ fixturify@^1.2.0: fs-extra "^7.0.1" matcher-collection "^2.0.0" -flat-cache@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-2.0.1.tgz#5d296d6f04bda44a4630a301413bdbc2ec085ec0" - integrity sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA== +fixturify@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/fixturify/-/fixturify-2.1.1.tgz#e962d72f062600cb81a9651086f60d822c72d998" + integrity sha512-SRgwIMXlxkb6AUgaVjIX+jCEqdhyXu9hah7mcK+lWynjKtX73Ux1TDv71B7XyaQ+LJxkYRHl5yCL8IycAvQRUw== dependencies: - flatted "^2.0.0" - rimraf "2.6.3" - write "1.0.3" + "@types/fs-extra" "^8.1.0" + "@types/minimatch" "^3.0.3" + "@types/rimraf" "^2.0.3" + fs-extra "^8.1.0" + matcher-collection "^2.0.1" + walk-sync "^2.0.2" flat-cache@^3.0.4: version "3.2.0" @@ -8382,11 +8732,6 @@ flat-cache@^3.0.4: keyv "^4.5.3" rimraf "^3.0.2" -flatted@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/flatted/-/flatted-2.0.2.tgz#4575b21e2bcee7434aa9be662f4b7b5f9c2b5138" - integrity sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA== - flatted@^3.2.9: version "3.3.1" resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.3.1.tgz#21db470729a6734d4997002f439cb308987f567a" @@ -8471,6 +8816,15 @@ fs-extra@^0.24.0: path-is-absolute "^1.0.0" rimraf "^2.2.8" +fs-extra@^10.0.0: + version "10.1.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.1.0.tgz#02873cfbc4084dde127eaa5f9905eef2325d1abf" + integrity sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ== + dependencies: + graceful-fs "^4.2.0" + jsonfile "^6.0.1" + universalify "^2.0.0" + fs-extra@^11.1.1: version "11.2.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-11.2.0.tgz#e70e17dfad64232287d01929399e0ea7c86b0e5b" @@ -8525,7 +8879,7 @@ fs-extra@^8.0.0, fs-extra@^8.0.1, fs-extra@^8.1.0: jsonfile "^4.0.0" universalify "^0.1.0" -fs-extra@^9.1.0: +fs-extra@^9.0.1, fs-extra@^9.1.0: version "9.1.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.1.0.tgz#5954460c764a8da2094ba3554bf839e6b9a7c86d" integrity sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ== @@ -8546,7 +8900,7 @@ fs-merger@^3.0.1, fs-merger@^3.2.1: fs-tree-diff "^2.0.1" walk-sync "^2.2.0" -fs-tree-diff@^0.5.2, fs-tree-diff@^0.5.3, fs-tree-diff@^0.5.4, fs-tree-diff@^0.5.6, fs-tree-diff@^0.5.7, fs-tree-diff@^0.5.9: +fs-tree-diff@^0.5.2, fs-tree-diff@^0.5.3, fs-tree-diff@^0.5.4, fs-tree-diff@^0.5.6, fs-tree-diff@^0.5.9: version "0.5.9" resolved "https://registry.yarnpkg.com/fs-tree-diff/-/fs-tree-diff-0.5.9.tgz#a4ec6182c2f5bd80b9b83c8e23e4522e6f5fd946" integrity sha512-872G8ax0kHh01m9n/2KDzgYwouKza0Ad9iFltBpNykvROvf2AGtoOzPJgGx125aolGPER3JuC7uZFrQ7bG1AZw== @@ -8621,29 +8975,29 @@ function.prototype.name@^1.1.6: es-abstract "^1.22.1" functions-have-names "^1.2.3" -functional-red-black-tree@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" - integrity sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g== - functions-have-names@^1.2.3: version "1.2.3" resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834" integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ== -gauge@~2.7.3: - version "2.7.4" - resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" - integrity sha512-14x4kjc6lkD3ltw589k0NrPD6cCNTD6CWoVUNpB85+DrtONoZn+Rug6xZU5RvSC4+TZPxA5AnBibQYAvZn41Hg== - dependencies: - aproba "^1.0.3" - console-control-strings "^1.0.0" - has-unicode "^2.0.0" - object-assign "^4.1.0" - signal-exit "^3.0.0" - string-width "^1.0.1" - strip-ansi "^3.0.1" - wide-align "^1.1.0" +fuse.js@^6.5.3: + version "6.6.2" + resolved "https://registry.yarnpkg.com/fuse.js/-/fuse.js-6.6.2.tgz#fe463fed4b98c0226ac3da2856a415576dc9a111" + integrity sha512-cJaJkxCCxC8qIIcPBF9yGxY0W/tVZS3uEISDxhYIdtk8OL93pe+6Zj7LjCqVV4dzbqcriOZ+kQ/NE4RXZHsIGA== + +gauge@^4.0.3: + version "4.0.4" + resolved "https://registry.yarnpkg.com/gauge/-/gauge-4.0.4.tgz#52ff0652f2bbf607a989793d53b751bef2328dce" + integrity sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg== + dependencies: + aproba "^1.0.3 || ^2.0.0" + color-support "^1.1.3" + console-control-strings "^1.1.0" + has-unicode "^2.0.1" + signal-exit "^3.0.7" + string-width "^4.2.3" + strip-ansi "^6.0.1" + wide-align "^1.1.5" gensync@^1.0.0-beta.2: version "1.0.0-beta.2" @@ -8698,6 +9052,11 @@ get-stdin@^4.0.1: resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" integrity sha512-F5aQMywwJ2n85s4hJPTT9RPxGmubonuB10MNYo17/xph174n2MIR33HRguhzVag10O/npM7SPk73LMZNP+FaWw== +get-stdin@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-8.0.0.tgz#cbad6a73feb75f6eeb22ba9e01f89aa28aa97a53" + integrity sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg== + get-stream@3.0.0, get-stream@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" @@ -8717,6 +9076,11 @@ get-stream@^5.0.0: dependencies: pump "^3.0.0" +get-stream@^6.0.0: + version "6.0.1" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" + integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== + get-symbol-description@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/get-symbol-description/-/get-symbol-description-1.0.2.tgz#533744d5aa20aca4e079c8e5daf7fd44202821f5" @@ -8775,23 +9139,11 @@ git-read-pkt-line@0.0.8: bops "0.0.3" through "~2.2.7" -git-repo-info@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/git-repo-info/-/git-repo-info-1.4.1.tgz#2a072823254aaf62fcf0766007d7b6651bd41943" - integrity sha512-oqzBH6cNvE8Cq3p61ps4m0POZrVMKlARntc2BxLnuqTK+HeWpKfUMJQ7H1CvescHRINj+0a7TKA+Pp/bOq5F1Q== - -git-repo-info@^2.1.0, git-repo-info@^2.1.1: +git-repo-info@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/git-repo-info/-/git-repo-info-2.1.1.tgz#220ffed8cbae74ef8a80e3052f2ccb5179aed058" integrity sha512-8aCohiDo4jwjOwma4FmYFd3i97urZulL8XL24nIPxuE+GZnfsAyy/g2Shqx6OjUiFKUXZM+Yy+KHnOmmA3FVcg== -git-repo-version@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/git-repo-version/-/git-repo-version-1.0.2.tgz#2c8e9bee5d970cafc0dd58480f9dc56d9afe8e4f" - integrity sha512-OPtwtHx9E8/rTMcWT+BU6GNj6Kq/O40bHJZaZAGy+pN2RXGmeKcfr0ix4M+SQuFY8vl5L/wfPSGOAtvUT/e3Qg== - dependencies: - git-repo-info "^1.4.1" - git-tools@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/git-tools/-/git-tools-0.1.4.tgz#5e43e59443b8a5dedb39dba663da49e79f943978" @@ -8840,10 +9192,10 @@ glob-parent@^6.0.2: dependencies: is-glob "^4.0.3" -glob-to-regexp@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz#8c5a1494d2066c570cc3bfe4496175acc4d502ab" - integrity sha512-Iozmtbqv0noj0uDDqoL0zNq0VBEfK2YFoMAZoxJe4cwphvLR+JskfF30QhXHOR4m3KrE6NLRYw+U9MRXvifyig== +glob-to-regexp@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" + integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== glob@^5.0.10: version "5.0.15" @@ -8856,7 +9208,7 @@ glob@^5.0.10: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^7.0.3, glob@^7.0.4, glob@^7.1.0, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.5, glob@^7.1.6: +glob@^7.0.3, glob@^7.0.4, glob@^7.1.0, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6, glob@^7.1.7: version "7.2.3" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== @@ -8899,7 +9251,7 @@ global-prefix@^1.0.1: is-windows "^1.0.1" which "^1.2.14" -globals@^11.1.0, globals@^11.7.0: +globals@^11.1.0: version "11.12.0" resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== @@ -8942,6 +9294,18 @@ globby@10.0.0: merge2 "^1.2.3" slash "^3.0.0" +globby@^11.0.3, globby@^11.0.4: + version "11.1.0" + resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" + integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== + dependencies: + array-union "^2.1.0" + dir-glob "^3.0.1" + fast-glob "^3.2.9" + ignore "^5.2.0" + merge2 "^1.4.1" + slash "^3.0.0" + globby@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz#f5a6d70e8395e21c858fb0489d64df02424d506c" @@ -8953,20 +9317,6 @@ globby@^6.1.0: pify "^2.0.0" pinkie-promise "^2.0.0" -globby@^9.2.0: - version "9.2.0" - resolved "https://registry.yarnpkg.com/globby/-/globby-9.2.0.tgz#fd029a706c703d29bdd170f4b6db3a3f7a7cb63d" - integrity sha512-ollPHROa5mcxDEkwg6bPt3QbEf4pDQSNtd6JPL1YvOvAo/7/0VAm9TccUeoTmarjPw4pfUthSCqcyfNB1I3ZSg== - dependencies: - "@types/glob" "^7.1.1" - array-union "^1.0.2" - dir-glob "^2.2.2" - fast-glob "^2.2.6" - glob "^7.1.3" - ignore "^4.0.3" - pify "^4.0.1" - slash "^2.0.0" - globrex@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/globrex/-/globrex-0.1.2.tgz#dd5d9ec826232730cd6793a5e33a9302985e6098" @@ -9019,7 +9369,7 @@ got@^8.0.1: url-parse-lax "^3.0.0" url-to-options "^1.0.1" -graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.3, graceful-fs@^4.1.6, graceful-fs@^4.2.0: +graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.3, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.11, graceful-fs@^4.2.4: version "4.2.11" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== @@ -9044,7 +9394,7 @@ hammerjs@^2.0.8: resolved "https://registry.yarnpkg.com/hammerjs/-/hammerjs-2.0.8.tgz#04ef77862cff2bb79d30f7692095930222bf60f1" integrity sha512-tSQXBXS/MWQOn/RKckawJ61vvsDpCom87JgxiYdGwHdOa0ht0vzUWDlfioofFCRU0L+6NGDt6XzbgoJvZkMeRQ== -handlebars@^4.0.4, handlebars@^4.3.1, handlebars@^4.5.1, handlebars@^4.7.3: +handlebars@^4.0.4, handlebars@^4.3.1, handlebars@^4.7.3: version "4.7.8" resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.7.8.tgz#41c42c18b1be2365439188c77c6afae71c0cd9e9" integrity sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ== @@ -9080,18 +9430,6 @@ has-bigints@^1.0.1, has-bigints@^1.0.2: resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.2.tgz#0871bd3e3d51626f6ca0966668ba35d5602d6eaa" integrity sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ== -has-binary2@~1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/has-binary2/-/has-binary2-1.0.3.tgz#7776ac627f3ea77250cfc332dab7ddf5e4f5d11d" - integrity sha512-G1LWKhDSvhGeAQ8mPVQlqNcOB2sJdwATtZKl2pDKKHfpf/rYj24lkinxf69blJbnsvtqqNU+L3SL50vzZhXOnw== - dependencies: - isarray "2.0.1" - -has-cors@1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/has-cors/-/has-cors-1.1.0.tgz#5e474793f7ea9843d1bb99c23eef49ff126fff39" - integrity sha512-g5VNKdkFuUuVCP9gYfDJHjK2nqdQJ7aDLTnycnc2+RvsOQbuLdF5pm7vuE5J76SEBIQjs4kQY/BWq74JUmjbXA== - has-flag@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" @@ -9138,7 +9476,7 @@ has-tostringtag@^1.0.0, has-tostringtag@^1.0.2: dependencies: has-symbols "^1.0.3" -has-unicode@^2.0.0: +has-unicode@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" integrity sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ== @@ -9223,11 +9561,14 @@ hasown@^2.0.0, hasown@^2.0.1, hasown@^2.0.2: dependencies: function-bind "^1.1.2" -heimdalljs-fs-monitor@^0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/heimdalljs-fs-monitor/-/heimdalljs-fs-monitor-0.2.3.tgz#1aedd4b1c61d86c51f6141fb75c5a3350dc41b15" - integrity sha512-fYAvqSP0CxeOjLrt61B4wux/jqZzdZnS2xfb2oc14NP6BTZ8gtgtR2op6gKFakOR8lm8GN9Xhz1K4A1ZvJ4RQw== +heimdalljs-fs-monitor@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/heimdalljs-fs-monitor/-/heimdalljs-fs-monitor-1.1.1.tgz#bb4021007e88484202402cdf594e3962d70dc4f4" + integrity sha512-BHB8oOXLRlrIaON0MqJSEjGVPDyqt2Y6gu+w2PaEZjrCxeVtZG7etEZp7M4ZQ80HNvnr66KIQ2lot2qdeG8HgQ== dependencies: + callsites "^3.1.0" + clean-stack "^2.2.0" + extract-stack "^2.0.0" heimdalljs "^0.2.3" heimdalljs-logger "^0.1.7" @@ -9251,13 +9592,6 @@ heimdalljs@^0.2.0, heimdalljs@^0.2.1, heimdalljs@^0.2.3, heimdalljs@^0.2.5, heim dependencies: rsvp "~3.2.1" -heimdalljs@^0.3.0: - version "0.3.3" - resolved "https://registry.yarnpkg.com/heimdalljs/-/heimdalljs-0.3.3.tgz#e92d2c6f77fd46d5bf50b610d28ad31755054d0b" - integrity sha512-xRlqDhgaXW4WccsiQlv6avDMKVN9Jk+FyMopDRPkmdf92TqfGSd2Osd/PKrK9sbM1AKcj8OpPlCzNlCWaLagCw== - dependencies: - rsvp "~3.2.1" - hmac-drbg@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" @@ -9282,7 +9616,7 @@ homedir-polyfill@^1.0.1: dependencies: parse-passwd "^1.0.0" -hosted-git-info@^2.1.4, hosted-git-info@^2.7.1: +hosted-git-info@^2.1.4: version "2.8.9" resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== @@ -9304,6 +9638,14 @@ htmlparser2@^7.2.0: domutils "^2.8.0" entities "^3.0.1" +http-browserify@^1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/http-browserify/-/http-browserify-1.7.0.tgz#33795ade72df88acfbfd36773cefeda764735b20" + integrity sha512-Irf/LJXmE3cBzU1eaR4+NEX6bmVLqt1wkmDiA7kBwH7zmb0D8kBAXsDmQ88hhj/qv9iEZKlyGx/hrMcFi8sOHw== + dependencies: + Base64 "~0.2.0" + inherits "~2.0.1" + http-cache-semantics@3.8.1: version "3.8.1" resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz#39b0e16add9b605bf0a9ef3d9daaf4843b4cacd2" @@ -9335,7 +9677,7 @@ http-parser-js@>=0.5.1: resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.5.8.tgz#af23090d9ac4e24573de6f6aecc9d84a48bf20e3" integrity sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q== -http-proxy@^1.13.1, http-proxy@^1.18.0: +http-proxy@^1.13.1, http-proxy@^1.18.1: version "1.18.1" resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.18.1.tgz#401541f0534884bbf95260334e72f88ee3976549" integrity sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ== @@ -9359,6 +9701,11 @@ human-signals@^1.1.1: resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3" integrity sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw== +human-signals@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" + integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== + iconv-lite@0.4.24, iconv-lite@^0.4.24: version "0.4.24" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" @@ -9366,7 +9713,12 @@ iconv-lite@0.4.24, iconv-lite@^0.4.24: dependencies: safer-buffer ">= 2.1.2 < 3" -ieee754@^1.1.4: +icss-utils@^5.0.0, icss-utils@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-5.1.0.tgz#c6be6858abd013d768e98366ae47e25d5887b1ae" + integrity sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA== + +ieee754@^1.1.13, ieee754@^1.1.4: version "1.2.1" resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== @@ -9376,11 +9728,6 @@ iferr@^0.1.5: resolved "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501" integrity sha512-DUNFN5j7Tln0D+TxzloUjKB+CtVu6myn0JEFak6dG18mNt9YkQ6lzGCdafwofISZ1lLF3xRHJ98VKy9ynkcFaA== -ignore@^4.0.3, ignore@^4.0.6: - version "4.0.6" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" - integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== - ignore@^5.1.1, ignore@^5.2.0: version "5.3.1" resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.1.tgz#5073e554cd42c5b33b394375f538b8593e34d4ef" @@ -9391,7 +9738,7 @@ immutable@^4.0.0: resolved "https://registry.yarnpkg.com/immutable/-/immutable-4.3.5.tgz#f8b436e66d59f99760dc577f5c99a4fd2a5cc5a0" integrity sha512-8eabxkth9gZatlwl5TBuJnCsoTADlL6ftEr7A4qgdaTsPyreilDSnUk57SO+jfKcNtxPa22U5KK6DSeAYhpBJw== -import-fresh@^3.0.0, import-fresh@^3.2.1: +import-fresh@^3.2.1: version "3.3.0" resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== @@ -9414,22 +9761,12 @@ indent-string@^4.0.0: resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== -indexof@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/indexof/-/indexof-0.0.1.tgz#82dc336d232b9062179d05ab3293a66059fd435d" - integrity sha512-i0G7hLJ1z0DE8dsqJa2rycj9dBmNKgXBvotXtZYXakU9oivfB9Uj2ZBC27qqef2U58/ZLwalxa1X/RDCdkHtVg== - infer-owner@^1.0.3: version "1.0.4" resolved "https://registry.yarnpkg.com/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467" integrity sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A== -inflection@1.12.0: - version "1.12.0" - resolved "https://registry.yarnpkg.com/inflection/-/inflection-1.12.0.tgz#a200935656d6f5f6bc4dc7502e1aecb703228416" - integrity sha512-lRy4DxuIFWXlJU7ed8UiTJOSTqStqYdEb4CEbtXfNbkdj3nH1L+reUWiE10VWcJS2yR7tge8Z74pJjtBjNwj0w== - -inflection@^1.12.0: +inflection@^1.12.0, inflection@~1.13.1: version "1.13.4" resolved "https://registry.yarnpkg.com/inflection/-/inflection-1.13.4.tgz#65aa696c4e2da6225b148d7a154c449366633a32" integrity sha512-6I/HUDeYFfuNCVS3td055BaXBwKYuzw7K3ExVMStBowKo9oOAMJIXIHvdyR3iboTCp1b+1i5DSkIZTcwIktuDw== @@ -9442,7 +9779,7 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3: +inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3, inherits@~2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== @@ -9468,7 +9805,7 @@ inline-source-map-comment@^1.0.5: sum-up "^1.0.1" xtend "^4.0.0" -inquirer@^6, inquirer@^6.2.2: +inquirer@^6: version "6.5.2" resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-6.5.2.tgz#ad50942375d036d327ff528c08bd5fab089928ca" integrity sha512-cntlB5ghuB0iuO65Ovoi8ogLHiWGs/5yNrtUcKjFhSSiVeAIVpD7koaSU9RM8mpXw5YDi9RdYXGQMaOURB7ycQ== @@ -9487,7 +9824,7 @@ inquirer@^6, inquirer@^6.2.2: strip-ansi "^5.1.0" through "^2.3.6" -inquirer@^7.0.1: +inquirer@^7.3.3: version "7.3.3" resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.3.3.tgz#04d176b2af04afc157a83fd7c100e98ee0aad003" integrity sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA== @@ -9528,7 +9865,7 @@ into-stream@^3.1.0: from2 "^2.1.1" p-is-promise "^1.1.0" -invariant@^2.2.0, invariant@^2.2.2: +invariant@^2.2.2: version "2.2.4" resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA== @@ -9666,6 +10003,11 @@ is-descriptor@^1.0.0, is-descriptor@^1.0.2: is-accessor-descriptor "^1.0.1" is-data-descriptor "^1.0.1" +is-docker@^2.0.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" + integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== + is-extendable@^0.1.0, is-extendable@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" @@ -9688,13 +10030,6 @@ is-finite@^1.0.0: resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.1.0.tgz#904135c77fb42c0641d6aa1bcdbc4daa8da082f3" integrity sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w== -is-fullwidth-code-point@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" - integrity sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw== - dependencies: - number-is-nan "^1.0.0" - is-fullwidth-code-point@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" @@ -9729,6 +10064,16 @@ is-hexadecimal@^1.0.0: resolved "https://registry.yarnpkg.com/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz#cc35c97588da4bd49a8eedd6bc4082d44dcb23a7" integrity sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw== +is-interactive@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-interactive/-/is-interactive-1.0.0.tgz#cea6e6ae5c870a7b0a0004070b7b587e0252912e" + integrity sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w== + +is-language-code@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-language-code/-/is-language-code-2.0.0.tgz#6f4d59c551d73b98c45cf9f1d3ce65cee060e65b" + integrity sha512-6xKmRRcP2YdmMBZMVS3uiJRPQgcMYolkD6hFw2Y4KjqyIyaJlCGxUt56tuu0iIV8q9r8kMEo0Gjd/GFwKrgjbw== + is-negative-zero@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.3.tgz#ced903a027aca6381b777a5743069d7376a49747" @@ -9860,6 +10205,11 @@ is-typedarray@^1.0.0: resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" integrity sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA== +is-unicode-supported@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz#3f26c76a809593b52bfa2ecb5710ed2779b522a7" + integrity sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw== + is-utf8@^0.2.0: version "0.2.1" resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" @@ -9882,6 +10232,13 @@ is-wsl@^1.1.0: resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" integrity sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw== +is-wsl@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271" + integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww== + dependencies: + is-docker "^2.0.0" + isarray@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" @@ -9892,22 +10249,15 @@ isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== -isarray@2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.1.tgz#a37d94ed9cda2d59865c9f76fe596ee1f338741e" - integrity sha512-c2cu3UxbI+b6kR3fy0nRnAhodsvR9dx7U5+znCOzdj6IfP3upFURTr0Xl5BlQZNKZjEtxrmVyfSdeE3O57smoQ== - isarray@^2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.5.tgz#8af1e4c1221244cc62459faf38940d4e644a5723" integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw== -isbinaryfile@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/isbinaryfile/-/isbinaryfile-3.0.3.tgz#5d6def3edebf6e8ca8cae9c30183a804b5f8be80" - integrity sha512-8cJBL5tTd2OS0dM4jz07wQd5g0dCCqIhUxPIGtZfa5L6hWlvV5MHTITy/DBAsF+Oe2LS1X3krBUhNwaGUWpWxw== - dependencies: - buffer-alloc "^1.2.0" +isbinaryfile@^4.0.6: + version "4.0.10" + resolved "https://registry.yarnpkg.com/isbinaryfile/-/isbinaryfile-4.0.10.tgz#0c5b5e30c2557a2f06febd37b7322946aaee42b3" + integrity sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw== isexe@^2.0.0: version "2.0.0" @@ -9952,6 +10302,15 @@ isurl@^1.0.0-alpha5: has-to-string-tag-x "^1.2.0" is-object "^1.0.1" +jest-worker@^27.4.5: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.5.1.tgz#8d146f0900e8973b106b6f73cc1e9a8cb86f8db0" + integrity sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg== + dependencies: + "@types/node" "*" + merge-stream "^2.0.0" + supports-color "^8.0.0" + jquery-deferred@^0.3.0: version "0.3.1" resolved "https://registry.yarnpkg.com/jquery-deferred/-/jquery-deferred-0.3.1.tgz#596eca1caaff54f61b110962b23cafea74c35355" @@ -9962,7 +10321,7 @@ jquery-jsonview@^1.2.3: resolved "https://registry.yarnpkg.com/jquery-jsonview/-/jquery-jsonview-1.2.3.tgz#6a24ce73357368e00ee32fb605950a4083ad6b7a" integrity sha512-f7nbWtNbhb/xIa9lTTw4rGkrlLVxqkfoi6bO+Dy5IK+9UGwM/vbEJZdfQgRnwj38nUXMbdMQUSWqaIhBCe71dQ== -jquery@^3.4.1: +jquery@^3.4.1, jquery@^3.5.1: version "3.7.1" resolved "https://registry.yarnpkg.com/jquery/-/jquery-3.7.1.tgz#083ef98927c9a6a74d05a6af02806566d16274de" integrity sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg== @@ -9977,17 +10336,17 @@ js-string-escape@^1.0.1: resolved "https://registry.yarnpkg.com/js-string-escape/-/js-string-escape-1.0.1.tgz#e2625badbc0d67c7533e9edc1068c587ae4137ef" integrity sha512-Smw4xcfIQ5LVjAOuJCvN/zIodzA/BBSsluuoSykP+lUvScIi4U6RJLfwHet5cxFnCswUjISV8oAXaqaJDY3chg== -js-tokens@^3.0.0, js-tokens@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" - integrity sha512-RjTcuD4xjtthQkaWH7dFlH85L+QaVtSoOyGdZ3g6HFhS9dFNDfLyqgm2NFe2X6cQpeFmt0452FJjFG5UameExg== - "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== -js-yaml@^3.13.0, js-yaml@^3.13.1, js-yaml@^3.2.5, js-yaml@^3.2.7: +js-tokens@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" + integrity sha512-RjTcuD4xjtthQkaWH7dFlH85L+QaVtSoOyGdZ3g6HFhS9dFNDfLyqgm2NFe2X6cQpeFmt0452FJjFG5UameExg== + +js-yaml@^3.14.0, js-yaml@^3.2.5, js-yaml@^3.2.7: version "3.14.1" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== @@ -10007,16 +10366,11 @@ jsesc@^1.3.0: resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" integrity sha512-Mke0DA0QjUWuJlhsE0ZPPhYiJkRap642SmI/4ztCFaUs6V2AiH1sfecc+57NgaryfAA2VR3v6O+CSjC1jZJKOA== -jsesc@^2.5.0, jsesc@^2.5.1: +jsesc@^2.5.1: version "2.5.2" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== -jsesc@~0.3.x: - version "0.3.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.3.0.tgz#1bf5ee63b4539fe2e26d0c1e99c240b97a457972" - integrity sha512-UHQmAeTXV+iwEk0aHheJRqo6Or90eDxI6KIYpHSjKLXKuKlPt1CQ7tGBerFcFA8uKU5mYxiPMlckmFptd5XZzA== - jsesc@~0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" @@ -10032,30 +10386,26 @@ json-buffer@3.0.1: resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13" integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ== -json-parse-better-errors@^1.0.2: +json-parse-better-errors@^1.0.1, json-parse-better-errors@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== -json-parse-even-better-errors@^2.3.0: +json-parse-even-better-errors@^2.3.0, json-parse-even-better-errors@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== -json-schema-ref-parser@^7.1.4: - version "7.1.4" - resolved "https://registry.yarnpkg.com/json-schema-ref-parser/-/json-schema-ref-parser-7.1.4.tgz#abb3f2613911e9060dc2268477b40591753facf0" - integrity sha512-AD7bvav0vak1/63w3jH8F7eHId/4E4EPdMAEZhGxtjktteUv9dnNB/cJy6nVnMyoTPBJnLwFK6tiQPSTeleCtQ== - dependencies: - call-me-maybe "^1.0.1" - js-yaml "^3.13.1" - ono "^6.0.0" - json-schema-traverse@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== +json-schema-traverse@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" + integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== + json-stable-stringify-without-jsonify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" @@ -10181,14 +10531,6 @@ leek@0.0.24: lodash.assign "^3.2.0" rsvp "^3.0.21" -levn@^0.3.0, levn@~0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" - integrity sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA== - dependencies: - prelude-ls "~1.1.2" - type-check "~0.3.2" - levn@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" @@ -10197,6 +10539,14 @@ levn@^0.4.1: prelude-ls "^1.2.1" type-check "~0.4.0" +levn@~0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" + integrity sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA== + dependencies: + prelude-ls "~1.1.2" + type-check "~0.3.2" + line-column@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/line-column/-/line-column-1.0.2.tgz#d25af2936b6f4849172b312e4792d1d987bc34a2" @@ -10224,6 +10574,13 @@ linkify-it@^2.0.0: dependencies: uc.micro "^1.0.1" +linkify-it@^3.0.1: + version "3.0.3" + resolved "https://registry.yarnpkg.com/linkify-it/-/linkify-it-3.0.3.tgz#a98baf44ce45a550efb4d49c769d07524cc2fa2e" + integrity sha512-ynTsyrFSdE5oZ/O9GEf00kPngmOfVwazR5GKDq6EYfhlpFug3J2zybX56a2PRRpc9P+FuSoGNAwjlbDs9jJBPQ== + dependencies: + uc.micro "^1.0.1" + liquid-fire@~0.31.0: version "0.31.0" resolved "https://registry.yarnpkg.com/liquid-fire/-/liquid-fire-0.31.0.tgz#6dc9f4785b5a06dcbe1a7ca4e8b130ac595ee2f5" @@ -10238,16 +10595,31 @@ liquid-fire@~0.31.0: match-media "^0.2.0" velocity-animate "^1.5.2" -livereload-js@^2.3.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/livereload-js/-/livereload-js-2.4.0.tgz#447c31cf1ea9ab52fc20db615c5ddf678f78009c" - integrity sha512-XPQH8Z2GDP/Hwz2PCDrh2mth4yFejwA1OZ/81Ti3LgKyhDcEjsSsqFWZojHG0va/duGd+WyosY7eXLDoOyqcPw== +livereload-js@^3.3.1: + version "3.4.1" + resolved "https://registry.yarnpkg.com/livereload-js/-/livereload-js-3.4.1.tgz#ba90fbc708ed1b9a024bb89c4ee12c96ea03d66f" + integrity sha512-5MP0uUeVCec89ZbNOT/i97Mc+q3SxXmiUGhRFOTmhrGPn//uWVQdCvcLJDy64MSBR5MidFdOR7B9viumoavy6g== + +load-json-file@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b" + integrity sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw== + dependencies: + graceful-fs "^4.1.2" + parse-json "^4.0.0" + pify "^3.0.0" + strip-bom "^3.0.0" loader-runner@^2.4.0: version "2.4.0" resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.4.0.tgz#ed47066bfe534d7e84c4c7b9998c2a75607d9357" integrity sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw== +loader-runner@^4.2.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-4.3.0.tgz#c1b4a163b99f614830353b16755e7149ac2314e1" + integrity sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg== + loader-utils@^0.2.14: version "0.2.17" resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-0.2.17.tgz#f86e6374d43205a6e6c60e9196f17c0299bfb348" @@ -10407,7 +10779,7 @@ lodash.defaults@^4.2.0: resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-4.2.0.tgz#d09178716ffea4dde9e5fb7b37f6f0802274580c" integrity sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ== -lodash.defaultsdeep@^4.6.0, lodash.defaultsdeep@^4.6.1: +lodash.defaultsdeep@^4.6.1: version "4.6.1" resolved "https://registry.yarnpkg.com/lodash.defaultsdeep/-/lodash.defaultsdeep-4.6.1.tgz#512e9bd721d272d94e3d3a63653fa17516741ca6" integrity sha512-3j8wdDzYuWO3lM3Reg03MuQR957t287Rpcxp1njpEa8oDrikb+FwGdW3n+FELh/A6qib6yPit0j/pv9G/yeAqA== @@ -10425,11 +10797,6 @@ lodash.flatten@^3.0.2: lodash._baseflatten "^3.0.0" lodash._isiterateecall "^3.0.0" -lodash.foreach@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.foreach/-/lodash.foreach-4.5.0.tgz#1a6a35eace401280c7f06dddec35165ab27e3e53" - integrity sha512-aEXTF4d+m05rVOAUG3z4vZZ4xVexLKZGF0lIxuHZ1Hplpk/3B6Z1+/ICICYRLm7c41Z2xiejbkCkJoTlypoXhQ== - lodash.isarguments@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz#2f573d85c6a24289ff00663b491c1d338ff3458a" @@ -10499,7 +10866,7 @@ lodash.uniqby@^4.7.0: resolved "https://registry.yarnpkg.com/lodash.uniqby/-/lodash.uniqby-4.7.0.tgz#d99c07a669e9e6d24e1362dfe266c67616af1302" integrity sha512-e/zcLx6CSbmaEgFHCA7BnoQKyCtKMxnuWrJygbwPs/AIn+IMKl66L8/s+wBUn5LRw2pZx3bUHibiV1b6aTWIww== -lodash@^4.0.0, lodash@^4.17.11, lodash@^4.17.12, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.21, lodash@^4.17.4, lodash@^4.2.0, lodash@^4.5.1, lodash@^4.6.1: +lodash@^4.0.0, lodash@^4.17.12, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.21, lodash@^4.17.4, lodash@^4.5.1, lodash@^4.6.1: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== @@ -10511,6 +10878,14 @@ log-symbols@^2.2.0: dependencies: chalk "^2.0.1" +log-symbols@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.1.0.tgz#3fbdbb95b4683ac9fc785111e792e558d4abd503" + integrity sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg== + dependencies: + chalk "^4.1.0" + is-unicode-supported "^0.1.0" + longest-streak@^2.0.0: version "2.0.4" resolved "https://registry.yarnpkg.com/longest-streak/-/longest-streak-2.0.4.tgz#b8599957da5b5dab64dee3fe316fa774597d90e4" @@ -10624,32 +10999,32 @@ map-visit@^1.0.0: dependencies: object-visit "^1.0.0" -markdown-it-terminal@0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/markdown-it-terminal/-/markdown-it-terminal-0.1.0.tgz#545abd8dd01c3d62353bfcea71db580b51d22bd9" - integrity sha512-Pq9BTUtEzuO6ZxNU7xYczEUHWkkCS6mE5FjpV6VnmbT56re1RCnO5nAE2ZehzY5H+uvVSNuwiqvoHaJj8+tssA== +markdown-it-terminal@0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/markdown-it-terminal/-/markdown-it-terminal-0.2.1.tgz#670fd5ea824a7dcaa1591dcbeef28bf70aff1705" + integrity sha512-e8hbK9L+IyFac2qY05R7paP+Fqw1T4pSQW3miK3VeG9QmpqBjg5Qzjv/v6C7YNxSNRS2Kp8hUFtm5lWU9eK4lw== dependencies: ansi-styles "^3.0.0" cardinal "^1.0.0" cli-table "^0.3.1" - lodash.merge "^4.6.0" + lodash.merge "^4.6.2" markdown-it "^8.3.1" -markdown-it@^8.3.1: - version "8.4.2" - resolved "https://registry.yarnpkg.com/markdown-it/-/markdown-it-8.4.2.tgz#386f98998dc15a37722aa7722084f4020bdd9b54" - integrity sha512-GcRz3AWTqSUphY3vsUqQSFMbgR38a4Lh3GWlHRh/7MRwz8mcu9n2IO7HOh+bXHrR9kOPDl5RNCaEsrneb+xhHQ== +markdown-it@^12.0.4: + version "12.3.2" + resolved "https://registry.yarnpkg.com/markdown-it/-/markdown-it-12.3.2.tgz#bf92ac92283fe983fe4de8ff8abfb5ad72cd0c90" + integrity sha512-TchMembfxfNVpHkbtriWltGWc+m3xszaRD0CZup7GFFhzIgQqxIfn3eGj1yZpfuflzPvfkt611B2Q/Bsk1YnGg== dependencies: - argparse "^1.0.7" - entities "~1.1.1" - linkify-it "^2.0.0" + argparse "^2.0.1" + entities "~2.1.0" + linkify-it "^3.0.1" mdurl "^1.0.1" uc.micro "^1.0.5" -markdown-it@^9.1.0: - version "9.1.0" - resolved "https://registry.yarnpkg.com/markdown-it/-/markdown-it-9.1.0.tgz#df9601c168568704d554b1fff9af0c5b561168d9" - integrity sha512-xHKG4C8iPriyfu/jc2hsCC045fKrMQ0VexX2F1FGYiRxDxqMB2aAhF8WauJ3fltn2kb90moGBkiiEdooGIg55w== +markdown-it@^8.3.1: + version "8.4.2" + resolved "https://registry.yarnpkg.com/markdown-it/-/markdown-it-8.4.2.tgz#386f98998dc15a37722aa7722084f4020bdd9b54" + integrity sha512-GcRz3AWTqSUphY3vsUqQSFMbgR38a4Lh3GWlHRh/7MRwz8mcu9n2IO7HOh+bXHrR9kOPDl5RNCaEsrneb+xhHQ== dependencies: argparse "^1.0.7" entities "~1.1.1" @@ -10689,18 +11064,6 @@ matcher-collection@^2.0.0, matcher-collection@^2.0.1: "@types/minimatch" "^3.0.3" minimatch "^3.0.2" -md5-hex@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/md5-hex/-/md5-hex-2.0.0.tgz#d0588e9f1c74954492ecd24ac0ac6ce997d92e33" - integrity sha512-0HLfzJTZ7707VBNM1ydr5sTb+IZLhmU4u2TVA+Eenfn/Ed42/gn10smbAPiuEm/jNgjvWKUiMNihqJQ6flus9w== - dependencies: - md5-o-matic "^0.1.1" - -md5-o-matic@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/md5-o-matic/-/md5-o-matic-0.1.1.tgz#822bccd65e117c514fab176b25945d54100a03c3" - integrity sha512-QBJSFpsedXUl/Lgs4ySdB2XCzUEcJ3ujpbagdZCkRaYIaC0kFnID8jhc84KEiVv6dNFtIrmW7bqow0lDxgJi6A== - md5.js@^1.3.4: version "1.3.5" resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f" @@ -10856,6 +11219,11 @@ memory-streams@^0.1.3: dependencies: readable-stream "~1.0.2" +memorystream@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/memorystream/-/memorystream-0.3.1.tgz#86d7090b30ce455d63fbae12dda51a47ddcaf9b2" + integrity sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw== + meow@^9.0.0: version "9.0.0" resolved "https://registry.yarnpkg.com/meow/-/meow-9.0.0.tgz#cd9510bc5cac9dee7d03c73ee1f9ad959f4ea364" @@ -10911,7 +11279,7 @@ merge-trees@^2.0.0: fs-updater "^1.0.4" heimdalljs "^0.2.5" -merge2@^1.2.3, merge2@^1.3.0: +merge2@^1.2.3, merge2@^1.3.0, merge2@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== @@ -11033,7 +11401,7 @@ mime-db@1.52.0, "mime-db@>= 1.43.0 < 2": resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== -mime-types@^2.1.12, mime-types@^2.1.18, mime-types@^2.1.26, mime-types@~2.1.24, mime-types@~2.1.34: +mime-types@^2.1.12, mime-types@^2.1.18, mime-types@^2.1.26, mime-types@^2.1.27, mime-types@~2.1.24, mime-types@~2.1.34: version "2.1.35" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== @@ -11065,6 +11433,14 @@ min-indent@^1.0.0: resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== +mini-css-extract-plugin@^2.5.2: + version "2.8.1" + resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-2.8.1.tgz#75245f3f30ce3a56dbdd478084df6fe475f02dc7" + integrity sha512-/1HDlyFRxWIZPI1ZpgqlZ8jMw/1Dp/dl3P0L1jtZ+zVcHqwPhGwaJwKL00WVgfnBy6PWCde9W65or7IIETImuA== + dependencies: + schema-utils "^4.0.0" + tapable "^2.2.1" + minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" @@ -11157,6 +11533,16 @@ mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@^0.5.5, mkdirp@^0.5.6: dependencies: minimist "^1.2.6" +mkdirp@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" + integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== + +mkdirp@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-3.0.1.tgz#e44e4c5607fb279c168241713cc6e0fea9adcb50" + integrity sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg== + mktemp@~0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/mktemp/-/mktemp-0.4.0.tgz#6d0515611c8a8c84e484aa2000129b98e981ff0b" @@ -11181,7 +11567,7 @@ moment-timezone@^0.5.13, moment-timezone@^0.5.27: resolved "https://registry.yarnpkg.com/moment/-/moment-2.30.1.tgz#f8c91c07b7a786e30c59926df530b4eac96974ae" integrity sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how== -morgan@^1.9.1: +morgan@^1.10.0: version "1.10.0" resolved "https://registry.yarnpkg.com/morgan/-/morgan-1.10.0.tgz#091778abc1fc47cd3509824653dae1faab6b17d7" integrity sha512-AbegBVI4sh6El+1gNwvD5YIck7nSA36weD7xvIxG4in80j/UoK8AEGaWnnz8v1GxonMCltmlNs5ZKbGvl9b1XQ== @@ -11224,10 +11610,10 @@ ms@2.1.3, ms@^2.1.1: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== -mustache@^3.0.0: - version "3.2.1" - resolved "https://registry.yarnpkg.com/mustache/-/mustache-3.2.1.tgz#89e78a9d207d78f2799b1e95764a25bf71a28322" - integrity sha512-RERvMFdLpaFfSRIEe632yDm5nsd0SDKn8hGmcUwswnyiE5mtdZLDybtHAz6hjJhawokF0hXvGLtx9mrQfm6FkA== +mustache@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/mustache/-/mustache-4.2.0.tgz#e5892324d60a12ec9c2a73359edca52972bf6f64" + integrity sha512-71ippSywq5Yb7/tVYyGbkBggbU8H3u5Rz56fH60jGFgr8uHwxs+aSKeqmluIVzM0m0kB7xQjKS6qPfd0b2ZoqQ== mute-stream@0.0.7: version "0.0.7" @@ -11308,7 +11694,7 @@ no-case@^3.0.4: lower-case "^2.0.2" tslib "^2.0.3" -node-fetch@^2.6.0: +node-fetch@^2.6.0, node-fetch@^2.6.1: version "2.7.0" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d" integrity sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A== @@ -11354,16 +11740,17 @@ node-modules-path@^1.0.0, node-modules-path@^1.0.1: resolved "https://registry.yarnpkg.com/node-modules-path/-/node-modules-path-1.0.2.tgz#e3acede9b7baf4bc336e3496b58e5b40d517056e" integrity sha512-6Gbjq+d7uhkO7epaKi5DNgUJn7H0gEyA4Jg0Mo1uQOi3Rk50G83LtmhhFyw0LxnAFhtlspkiiw52ISP13qzcBg== -node-notifier@^5.0.1: - version "5.4.5" - resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-5.4.5.tgz#0cbc1a2b0f658493b4025775a13ad938e96091ef" - integrity sha512-tVbHs7DyTLtzOiN78izLA85zRqB9NvEXkAf014Vx3jtSvn/xBl6bR8ZYifj+dFcFrKI21huSQgJZ6ZtL3B4HfQ== +node-notifier@^10.0.0: + version "10.0.1" + resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-10.0.1.tgz#0e82014a15a8456c4cfcdb25858750399ae5f1c7" + integrity sha512-YX7TSyDukOZ0g+gmzjB6abKu+hTGvO8+8+gIFDsRCU2t8fLV/P2unmt+LGFaIa4y64aX98Qksa97rgz4vMNeLQ== dependencies: growly "^1.3.0" - is-wsl "^1.1.0" - semver "^5.5.0" + is-wsl "^2.2.0" + semver "^7.3.5" shellwords "^0.1.1" - which "^1.3.0" + uuid "^8.3.2" + which "^2.0.2" node-releases@^2.0.14: version "2.0.14" @@ -11382,7 +11769,7 @@ nopt@^3.0.3, nopt@^3.0.6: dependencies: abbrev "1" -normalize-package-data@^2.5.0: +normalize-package-data@^2.3.2, normalize-package-data@^2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== @@ -11433,16 +11820,30 @@ npm-git-info@^1.0.3: resolved "https://registry.yarnpkg.com/npm-git-info/-/npm-git-info-1.0.3.tgz#a933c42ec321e80d3646e0d6e844afe94630e1d5" integrity sha512-i5WBdj4F/ULl16z9ZhsJDMl1EQCMQhHZzBwNnKL2LOA+T8IHNeRkLCVz9uVV9SzUdGTbDq+1oXhIYMe+8148vw== -npm-package-arg@^6.1.1: - version "6.1.1" - resolved "https://registry.yarnpkg.com/npm-package-arg/-/npm-package-arg-6.1.1.tgz#02168cb0a49a2b75bf988a28698de7b529df5cb7" - integrity sha512-qBpssaL3IOZWi5vEKUKW0cO7kzLeT+EQO9W8RsLOZf76KF9E/K9+wH0C7t06HXPpaH8WH5xF1MExLuCwbTqRUg== +npm-package-arg@^8.1.1: + version "8.1.5" + resolved "https://registry.yarnpkg.com/npm-package-arg/-/npm-package-arg-8.1.5.tgz#3369b2d5fe8fdc674baa7f1786514ddc15466e44" + integrity sha512-LhgZrg0n0VgvzVdSm1oiZworPbTxYHUJCgtsJW8mGvlDpxTM1vSJc3m5QZeUkhAHIzbz3VCHd/R4osi1L1Tg/Q== dependencies: - hosted-git-info "^2.7.1" - osenv "^0.1.5" - semver "^5.6.0" + hosted-git-info "^4.0.1" + semver "^7.3.4" validate-npm-package-name "^3.0.0" +npm-run-all@^4.1.5: + version "4.1.5" + resolved "https://registry.yarnpkg.com/npm-run-all/-/npm-run-all-4.1.5.tgz#04476202a15ee0e2e214080861bff12a51d98fba" + integrity sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ== + dependencies: + ansi-styles "^3.2.1" + chalk "^2.4.1" + cross-spawn "^6.0.5" + memorystream "^0.3.1" + minimatch "^3.0.4" + pidtree "^0.3.0" + read-pkg "^3.0.0" + shell-quote "^1.6.1" + string.prototype.padend "^3.0.0" + npm-run-path@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" @@ -11457,34 +11858,29 @@ npm-run-path@^3.0.0: dependencies: path-key "^3.0.0" -npm-run-path@^4.0.0: +npm-run-path@^4.0.0, npm-run-path@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== dependencies: path-key "^3.0.0" -npmlog@^4.0.0: - version "4.1.2" - resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" - integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== +npmlog@^6.0.0: + version "6.0.2" + resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-6.0.2.tgz#c8166017a42f2dea92d6453168dd865186a70830" + integrity sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg== dependencies: - are-we-there-yet "~1.1.2" - console-control-strings "~1.1.0" - gauge "~2.7.3" - set-blocking "~2.0.0" + are-we-there-yet "^3.0.0" + console-control-strings "^1.1.0" + gauge "^4.0.3" + set-blocking "^2.0.0" num2fraction@^1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" integrity sha512-Y1wZESM7VUThYY+4W+X4ySH2maqcA+p7UR+w8VWNWVAd6lwuXXWz/w/Cz43J/dI2I+PS6wD5N+bJUF+gjWvIqg== -number-is-nan@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" - integrity sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ== - -object-assign@4.1.1, object-assign@^4.0.1, object-assign@^4.1.0: +object-assign@4.1.1, object-assign@^4, object-assign@^4.0.1, object-assign@^4.1.0: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== @@ -11540,19 +11936,6 @@ object.assign@^4.1.4, object.assign@^4.1.5: has-symbols "^1.0.3" object-keys "^1.1.1" -object.getownpropertydescriptors@^2.1.6: - version "2.1.8" - resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.8.tgz#2f1fe0606ec1a7658154ccd4f728504f69667923" - integrity sha512-qkHIGe4q0lSYMv0XI4SsBTJz3WaURhLvd0lKSgtVuOsJ2krg4SgMw3PIRQFMp07yi++UR3se2mkcLqsBNpBb/A== - dependencies: - array.prototype.reduce "^1.0.6" - call-bind "^1.0.7" - define-properties "^1.2.1" - es-abstract "^1.23.2" - es-object-atoms "^1.0.0" - gopd "^1.0.1" - safe-array-concat "^1.1.2" - object.pick@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" @@ -11593,18 +11976,13 @@ onetime@^2.0.0: dependencies: mimic-fn "^1.0.0" -onetime@^5.1.0: +onetime@^5.1.0, onetime@^5.1.2: version "5.1.2" resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== dependencies: mimic-fn "^2.1.0" -ono@^6.0.0: - version "6.0.1" - resolved "https://registry.yarnpkg.com/ono/-/ono-6.0.1.tgz#1bc14ffb8af1e5db3f7397f75b88e4a2d64bbd71" - integrity sha512-5rdYW/106kHqLeG22GE2MHKq+FlsxMERZev9DCzQX1zwkxnFwBivSn5i17a5O/rDmOJOdf4Wyt80UZljzx9+DA== - optimist@0.3.x: version "0.3.7" resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.3.7.tgz#c90941ad59e4273328923074d2cf2e7cbc6ec0d9" @@ -11612,7 +11990,7 @@ optimist@0.3.x: dependencies: wordwrap "~0.0.2" -optionator@^0.8.1, optionator@^0.8.2: +optionator@^0.8.1: version "0.8.3" resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" integrity sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA== @@ -11648,6 +12026,21 @@ ora@^3.4.0: strip-ansi "^5.2.0" wcwidth "^1.0.1" +ora@^5.4.0: + version "5.4.1" + resolved "https://registry.yarnpkg.com/ora/-/ora-5.4.1.tgz#1b2678426af4ac4a509008e5e4ac9e9959db9e18" + integrity sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ== + dependencies: + bl "^4.1.0" + chalk "^4.1.0" + cli-cursor "^3.1.0" + cli-spinners "^2.5.0" + is-interactive "^1.0.0" + is-unicode-supported "^0.1.0" + log-symbols "^4.1.0" + strip-ansi "^6.0.0" + wcwidth "^1.0.1" + os-browserify@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27" @@ -11663,7 +12056,7 @@ os-tmpdir@^1.0.0, os-tmpdir@^1.0.1, os-tmpdir@~1.0.1, os-tmpdir@~1.0.2: resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" integrity sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g== -osenv@^0.1.3, osenv@^0.1.5: +osenv@^0.1.3: version "0.1.5" resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g== @@ -11822,6 +12215,14 @@ parse-entities@^2.0.0: is-decimal "^1.0.0" is-hexadecimal "^1.0.0" +parse-json@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" + integrity sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw== + dependencies: + error-ex "^1.3.1" + json-parse-better-errors "^1.0.1" + parse-json@^5.0.0: version "5.2.0" resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" @@ -11847,15 +12248,10 @@ parse-static-imports@^1.1.0: resolved "https://registry.yarnpkg.com/parse-static-imports/-/parse-static-imports-1.1.0.tgz#ae2f18f18da1a993080ae406a5219455c0bbad5d" integrity sha512-HlxrZcISCblEV0lzXmAHheH/8qEkKgmqkdxyHTPbSqsTUV8GzqmN1L+SSti+VbNPfbBO3bYLPHDiUs2avbAdbA== -parseqs@0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/parseqs/-/parseqs-0.0.6.tgz#8e4bb5a19d1cdc844a08ac974d34e273afa670d5" - integrity sha512-jeAGzMDbfSHHA091hr0r31eYfTig+29g3GKKE/PPbEQ65X0lmMwlEoqmhzu0iztID5uJpZsFlUPDP8ThPL7M8w== - -parseuri@0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/parseuri/-/parseuri-0.0.6.tgz#e1496e829e3ac2ff47f39a4dd044b32823c4a25a" - integrity sha512-AUjen8sAkGgao7UyCX6Ahv0gIK2fABKmYjvP4xmy5JaKvcbTRueIqIPHLAfq30xJddqSE033IOMUSOMCcK3Sow== +parse5@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" + integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== parseurl@~1.3.3: version "1.3.3" @@ -11872,6 +12268,11 @@ path-browserify@0.0.1: resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.1.tgz#e6c4ddd7ed3aa27c68a20cc4e50e1a4ee83bbc4a" integrity sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ== +path-browserify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-1.0.1.tgz#d98454a9c3753d5790860f16f68867b9e46be1fd" + integrity sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g== + path-dirname@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" @@ -11892,11 +12293,6 @@ path-is-absolute@1.0.1, path-is-absolute@^1.0.0, path-is-absolute@^1.0.1: resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== -path-is-inside@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" - integrity sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w== - path-key@^2.0.0, path-key@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" @@ -11975,6 +12371,11 @@ picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.3.1: resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== +pidtree@^0.3.0: + version "0.3.1" + resolved "https://registry.yarnpkg.com/pidtree/-/pidtree-0.3.1.tgz#ef09ac2cc0533df1f3250ccf2c4d366b0d12114a" + integrity sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA== + pify@^2.0.0: version "2.3.0" resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" @@ -12035,7 +12436,7 @@ popper.js@^1.0.2, popper.js@^1.12.5: resolved "https://registry.yarnpkg.com/popper.js/-/popper.js-1.16.1.tgz#2a223cb3dc7b6213d740e40372be40de43e65b1b" integrity sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ== -portfinder@^1.0.25: +portfinder@^1.0.28: version "1.0.32" resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.32.tgz#2fe1b9e58389712429dc2bea5beb2146146c7f81" integrity sha512-on2ZJVVDXRADWE6jnQaX0ioEylzgBpQk8r55NE4wjXW1ZxO+BgDlY6DXwj20i0V8eB4SenDQ00WEaxfiIQPcxg== @@ -12062,12 +12463,53 @@ postcss-loader@^0.9.1: loader-utils "^0.2.14" postcss "^5.0.19" +postcss-modules-extract-imports@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.1.0.tgz#b4497cb85a9c0c4b5aabeb759bb25e8d89f15002" + integrity sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q== + +postcss-modules-local-by-default@^4.0.0: + version "4.0.5" + resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.5.tgz#f1b9bd757a8edf4d8556e8d0f4f894260e3df78f" + integrity sha512-6MieY7sIfTK0hYfafw1OMEG+2bg8Q1ocHCpoWLqOKj3JXlKu4G7btkmM/B7lFubYkYWmRSPLZi5chid63ZaZYw== + dependencies: + icss-utils "^5.0.0" + postcss-selector-parser "^6.0.2" + postcss-value-parser "^4.1.0" + +postcss-modules-scope@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-3.2.0.tgz#a43d28289a169ce2c15c00c4e64c0858e43457d5" + integrity sha512-oq+g1ssrsZOsx9M96c5w8laRmvEu9C3adDSjI8oTcbfkrTE8hx/zfyobUoWIxaKPO8bt6S62kxpw5GqypEw1QQ== + dependencies: + postcss-selector-parser "^6.0.4" + +postcss-modules-values@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz#d7c5e7e68c3bb3c9b27cbf48ca0bb3ffb4602c9c" + integrity sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ== + dependencies: + icss-utils "^5.0.0" + +postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4: + version "6.0.16" + resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.16.tgz#3b88b9f5c5abd989ef4e2fc9ec8eedd34b20fb04" + integrity sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw== + dependencies: + cssesc "^3.0.0" + util-deprecate "^1.0.2" + postcss-value-parser@^3.2.3: version "3.3.1" resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz#9ff822547e2893213cf1c30efa51ac5fd1ba8281" integrity sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ== -postcss@^5.0.19, postcss@^5.2.16, postcss@^8.4.19: +postcss-value-parser@^4.1.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514" + integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== + +postcss@^5.0.19, postcss@^5.2.16, postcss@^8.2.15, postcss@^8.4.19: version "8.4.38" resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.38.tgz#b387d533baf2054288e337066d81c6bee9db9e0e" integrity sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A== @@ -12096,6 +12538,13 @@ prepend-http@^2.0.0: resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897" integrity sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA== +prettier-linter-helpers@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz#d23d41fe1375646de2d0104d3454a3008802cf7b" + integrity sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w== + dependencies: + fast-diff "^1.1.2" + prettier@^2.7.1: version "2.8.8" resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.8.8.tgz#e8c5d7e98a4305ffe3de2e1fc4aca1a71c28b1da" @@ -12108,10 +12557,10 @@ pretty-ms@^3.1.0: dependencies: parse-ms "^1.0.0" -printf@^0.5.1: - version "0.5.3" - resolved "https://registry.yarnpkg.com/printf/-/printf-0.5.3.tgz#8b7eec278d886833312238b2bf42b2b6f250880a" - integrity sha512-t3lYN6vPU5PZXDiEZZqoyXvN8wCsBfi8gPoxTKo2e5hhV673t/KUh+mfO8P8lCOCDC/BWcOGIxKyebxc5FuqLA== +printf@^0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/printf/-/printf-0.6.1.tgz#b9afa3d3b55b7f2e8b1715272479fc756ed88650" + integrity sha512-is0ctgGdPJ5951KulgfzvHGwJtZ5ck8l042vRkV6jrkpBzTmb/lueTqguWHy2JfVA+RY6gFVlaZgUS0j7S/dsw== private@^0.1.6, private@^0.1.8: version "0.1.8" @@ -12140,17 +12589,12 @@ process@^0.11.10: resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" integrity sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A== -progress@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" - integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== - promise-inflight@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" integrity sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g== -promise-map-series@^0.2.1, promise-map-series@^0.2.3: +promise-map-series@^0.2.1: version "0.2.3" resolved "https://registry.yarnpkg.com/promise-map-series/-/promise-map-series-0.2.3.tgz#c2d377afc93253f6bd03dbb77755eb88ab20a847" integrity sha512-wx9Chrutvqu1N/NHzTayZjE1BgIwt6SJykQoCOic4IZ9yUDjKyVYrpLa/4YCNsV61eRENfs29hrEquVuB13Zlw== @@ -12162,16 +12606,10 @@ promise-map-series@^0.3.0: resolved "https://registry.yarnpkg.com/promise-map-series/-/promise-map-series-0.3.0.tgz#41873ca3652bb7a042b387d538552da9b576f8a1" integrity sha512-3npG2NGhTc8BWBolLLf8l/92OxMGaRLbqvIh9wjCHhDXNvk4zsxaTaCpiCunW09qWPrN2zeNSNwRLVBrQQtutA== -promise.prototype.finally@^3.1.1: - version "3.1.8" - resolved "https://registry.yarnpkg.com/promise.prototype.finally/-/promise.prototype.finally-3.1.8.tgz#b97bc1bbca74dc21b6e978c85a70752a7a0b7c3a" - integrity sha512-aVDtsXOml9iuMJzUco9J1je/UrIT3oMYfWkCTiUhkt+AvZw72q4dUZnR/R/eB3h5GeAagQVXvM1ApoYniJiwoA== - dependencies: - call-bind "^1.0.5" - define-properties "^1.2.1" - es-abstract "^1.22.3" - es-errors "^1.0.0" - set-function-name "^2.0.1" +promise.hash.helper@^1.0.7: + version "1.0.8" + resolved "https://registry.yarnpkg.com/promise.hash.helper/-/promise.hash.helper-1.0.8.tgz#8c5fa0570f6f96821f52364fd72292b2c5a114f7" + integrity sha512-KYcnXctWUWyVD3W3Ye0ZDuA1N8Szrh85cVCxpG6xYrOk/0CttRtYCmU30nWsUch0NuExQQ63QXvzRE6FLimZmg== proxy-addr@~2.0.7: version "2.0.7" @@ -12285,15 +12723,17 @@ quick-temp@^0.1.2, quick-temp@^0.1.3, quick-temp@^0.1.5, quick-temp@^0.1.8: rimraf "^2.5.4" underscore.string "~3.3.4" -qunit-dom@^0.9.2: - version "0.9.2" - resolved "https://registry.yarnpkg.com/qunit-dom/-/qunit-dom-0.9.2.tgz#cc7bb777e4f5faa749eca843f54e199755df8473" - integrity sha512-BPf7OZjhXo9ekgsViNjQVS9BWkm2yQsPvBoy0juvt5nOFlcBVVwHSYsgpsJOunWkI1IgA3eStAC9mQx3Zw734g== +qunit-dom@^1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/qunit-dom/-/qunit-dom-1.6.0.tgz#a4bea6a46329d221e4a317d712cb40709107b977" + integrity sha512-YwSqcLjQcRI0fUFpaSWwU10KIJPFW5Qh+d3cT5DOgx81dypRuUSiPkKFmBY/CDs/R1KdHRadthkcXg2rqAon8Q== dependencies: - broccoli-funnel "^2.0.2" - broccoli-merge-trees "^3.0.1" + broccoli-funnel "^3.0.3" + broccoli-merge-trees "^4.2.0" + ember-cli-babel "^7.23.0" + ember-cli-version-checker "^5.1.1" -qunit@^2.9.3: +qunit@^2.17.2: version "2.20.1" resolved "https://registry.yarnpkg.com/qunit/-/qunit-2.20.1.tgz#280da17c258535f2c14520f018d2eec1191b20cf" integrity sha512-scZfyhX8mmP3u/CN2y3CutQb+ppalbpqmm7g/X62M2yOt8ofzsxrRaC+MPmYm/tXxpzs9HGrVeCxZwLoP0tuAA== @@ -12364,6 +12804,15 @@ read-pkg-up@^7.0.1: read-pkg "^5.2.0" type-fest "^0.8.1" +read-pkg@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389" + integrity sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA== + dependencies: + load-json-file "^4.0.0" + normalize-package-data "^2.3.2" + path-type "^3.0.0" + read-pkg@^5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-5.2.0.tgz#7bf295438ca5a33e56cd30e053b34ee7250c93cc" @@ -12374,7 +12823,7 @@ read-pkg@^5.2.0: parse-json "^5.0.0" type-fest "^0.6.0" -"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.6, readable-stream@^2.3.8, readable-stream@~2.3.3, readable-stream@~2.3.6: +"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.6, readable-stream@^2.3.8, readable-stream@~2.3.3, readable-stream@~2.3.6: version "2.3.8" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.8.tgz#91125e8042bba1b9887f49345f6277027ce8be9b" integrity sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA== @@ -12387,7 +12836,7 @@ read-pkg@^5.2.0: string_decoder "~1.1.1" util-deprecate "~1.0.1" -"readable-stream@2 || 3", readable-stream@^3.0.2, readable-stream@^3.6.0: +"readable-stream@2 || 3", readable-stream@^3.0.2, readable-stream@^3.4.0, readable-stream@^3.5.0, readable-stream@^3.6.0: version "3.6.2" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967" integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA== @@ -12537,11 +12986,6 @@ regexp.prototype.flags@^1.5.2: es-errors "^1.3.0" set-function-name "^2.0.1" -regexpp@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-2.0.1.tgz#8d19d31cf632482b589049f8281f93dbcba4d07f" - integrity sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw== - regexpp@^3.0.0: version "3.2.0" resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2" @@ -12663,6 +13107,16 @@ repeating@^2.0.0: dependencies: is-finite "^1.0.0" +require-directory@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" + integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== + +require-from-string@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" + integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== + require-relative@^0.8.7: version "0.8.7" resolved "https://registry.yarnpkg.com/require-relative/-/require-relative-0.8.7.tgz#7999539fc9e047a37928fa196f8e1563dabd36de" @@ -12683,7 +13137,7 @@ reselect@^3.0.1: resolved "https://registry.yarnpkg.com/reselect/-/reselect-3.0.1.tgz#efdaa98ea7451324d092b2b2163a6a1d7a9a2147" integrity sha512-b/6tFZCmRhtBMa4xGqiiRp9jh9Aqi2A687Lo265cN0/QohJQEBPiQ52f4QB6i0eF3yp3hmLL21LSGBcML2dlxA== -reselect@^4.1.7: +reselect@^4.0.0, reselect@^4.1.7: version "4.1.8" resolved "https://registry.yarnpkg.com/reselect/-/reselect-4.1.8.tgz#3f5dc671ea168dccdeb3e141236f69f02eaec524" integrity sha512-ab9EmR80F/zQTMNeneUr4cv+jSwPJgIlvEmVwLerwrWVbpLlBuls9XHzIeTFy4cegU2NHBp3va0LKOzU5qFEYQ== @@ -12701,7 +13155,7 @@ resolve-from@^4.0.0: resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== -resolve-package-path@^1.0.11, resolve-package-path@^1.2.6, resolve-package-path@^1.2.7: +resolve-package-path@^1.0.11, resolve-package-path@^1.2.6: version "1.2.7" resolved "https://registry.yarnpkg.com/resolve-package-path/-/resolve-package-path-1.2.7.tgz#2a7bc37ad96865e239330e3102c31322847e652e" integrity sha512-fVEKHGeK85bGbVFuwO9o1aU0n3vqQGrezPc51JGu9UTXpFQfWq5qCeKxyaRUSvephs+06c5j5rPq/dzHGEo8+Q== @@ -12745,7 +13199,7 @@ resolve-url@^0.2.1: resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" integrity sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg== -resolve@^1.1.7, resolve@^1.10.0, resolve@^1.10.1, resolve@^1.11.1, resolve@^1.12.0, resolve@^1.13.1, resolve@^1.14.0, resolve@^1.14.2, resolve@^1.15.1, resolve@^1.17.0, resolve@^1.20.0, resolve@^1.22.0, resolve@^1.22.1, resolve@^1.3.3, resolve@^1.4.0, resolve@^1.5.0, resolve@^1.8.1: +resolve@^1.1.7, resolve@^1.10.0, resolve@^1.10.1, resolve@^1.11.1, resolve@^1.13.1, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.20.0, resolve@^1.22.0, resolve@^1.22.1, resolve@^1.3.3, resolve@^1.4.0, resolve@^1.5.0, resolve@^1.8.1: version "1.22.8" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d" integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw== @@ -12787,14 +13241,7 @@ reusify@^1.0.4: resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== -rimraf@2.6.3, rimraf@~2.6.2: - version "2.6.3" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab" - integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA== - dependencies: - glob "^7.1.3" - -rimraf@^2.2.8, rimraf@^2.3.4, rimraf@^2.4.3, rimraf@^2.4.4, rimraf@^2.5.3, rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.2, rimraf@^2.6.3: +rimraf@^2.2.8, rimraf@^2.3.4, rimraf@^2.4.3, rimraf@^2.5.3, rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.2, rimraf@^2.6.3: version "2.7.1" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== @@ -12808,6 +13255,13 @@ rimraf@^3.0.0, rimraf@^3.0.1, rimraf@^3.0.2: dependencies: glob "^7.1.3" +rimraf@~2.6.2: + version "2.6.3" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab" + integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA== + dependencies: + glob "^7.1.3" + ripemd160@^2.0.0, ripemd160@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c" @@ -12840,21 +13294,19 @@ rollup@^0.57.1: signal-exit "^3.0.2" sourcemap-codec "^1.4.1" -rollup@^1.12.0: - version "1.32.1" - resolved "https://registry.yarnpkg.com/rollup/-/rollup-1.32.1.tgz#4480e52d9d9e2ae4b46ba0d9ddeaf3163940f9c4" - integrity sha512-/2HA0Ec70TvQnXdzynFffkjA6XN+1e2pEv/uKS5Ulca40g2L7KuOE3riasHoNVHOsFD5KKZgDsMk1CP3Tw9s+A== - dependencies: - "@types/estree" "*" - "@types/node" "*" - acorn "^7.1.0" +rollup@^2.50.0: + version "2.79.1" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-2.79.1.tgz#bedee8faef7c9f93a2647ac0108748f497f081c7" + integrity sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw== + optionalDependencies: + fsevents "~2.3.2" rsvp@^3.0.14, rsvp@^3.0.17, rsvp@^3.0.18, rsvp@^3.0.21, rsvp@^3.0.6, rsvp@^3.1.0, rsvp@^3.3.3, rsvp@^3.5.0: version "3.6.2" resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-3.6.2.tgz#2e96491599a96cde1b515d5674a8f7a91452926a" integrity sha512-OfWGQTb9vnwRjwtA2QwpG2ICclHC3pgXZO5xt8H2EfgDquO0qVdSb5T88L4qJVAEugbS56pAuV4XZM58UX8ulw== -rsvp@^4.6.1, rsvp@^4.7.0, rsvp@^4.8.1, rsvp@^4.8.2, rsvp@^4.8.3, rsvp@^4.8.4, rsvp@^4.8.5: +rsvp@^4.7.0, rsvp@^4.8.1, rsvp@^4.8.2, rsvp@^4.8.3, rsvp@^4.8.4, rsvp@^4.8.5: version "4.8.5" resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-4.8.5.tgz#c8f155311d167f68f21e168df71ec5b083113734" integrity sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA== @@ -12895,7 +13347,7 @@ rxjs@^6.4.0, rxjs@^6.6.0: dependencies: tslib "^1.9.0" -safe-array-concat@^1.0.0, safe-array-concat@^1.1.2: +safe-array-concat@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/safe-array-concat/-/safe-array-concat-1.1.2.tgz#81d77ee0c4e8b863635227c721278dd524c20edb" integrity sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q== @@ -12983,6 +13435,25 @@ schema-utils@^2.6.5: ajv "^6.12.4" ajv-keywords "^3.5.2" +schema-utils@^3.0.0, schema-utils@^3.1.1, schema-utils@^3.2.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.3.0.tgz#f50a88877c3c01652a15b622ae9e9795df7a60fe" + integrity sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg== + dependencies: + "@types/json-schema" "^7.0.8" + ajv "^6.12.5" + ajv-keywords "^3.5.2" + +schema-utils@^4.0.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-4.2.0.tgz#70d7c93e153a273a805801882ebd3bff20d89c8b" + integrity sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw== + dependencies: + "@types/json-schema" "^7.0.9" + ajv "^8.9.0" + ajv-formats "^2.1.1" + ajv-keywords "^5.1.0" + scope-analyzer@^2.0.1: version "2.1.2" resolved "https://registry.yarnpkg.com/scope-analyzer/-/scope-analyzer-2.1.2.tgz#b958162feb59823c2835c7b0229187a97c77e9cd" @@ -13003,7 +13474,7 @@ scroll-into-view-if-needed@^2.2.20: dependencies: compute-scroll-into-view "^1.0.20" -"semver@2 || 3 || 4 || 5", semver@^5.1.0, semver@^5.3.0, semver@^5.4.1, semver@^5.5.0, semver@^5.5.1, semver@^5.6.0, semver@^5.7.1: +"semver@2 || 3 || 4 || 5", semver@^5.1.0, semver@^5.3.0, semver@^5.4.1, semver@^5.5.0, semver@^5.6.0, semver@^5.7.1: version "5.7.2" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8" integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== @@ -13013,12 +13484,12 @@ semver@^4.3.1: resolved "https://registry.yarnpkg.com/semver/-/semver-4.3.6.tgz#300bc6e0e86374f7ba61068b5b1ecd57fc6532da" integrity sha512-IrpJ+yoG4EOH8DFWuVg+8H1kW1Oaof0Wxe7cPcXW3x9BjkN/eVo54F15LyqemnDIUYskQWr9qvl/RihmSy6+xQ== -semver@^6.0.0, semver@^6.1.0, semver@^6.1.1, semver@^6.3.0, semver@^6.3.1: +semver@^6.0.0, semver@^6.1.0, semver@^6.3.0, semver@^6.3.1: version "6.3.1" resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.3.8, semver@^7.5.2: +semver@^7.1.3, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.3.8, semver@^7.5.2: version "7.6.0" resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.0.tgz#1a46a4db4bffcccd97b743b5005c8325f23d4e2d" integrity sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg== @@ -13051,6 +13522,13 @@ serialize-javascript@^4.0.0: dependencies: randombytes "^2.1.0" +serialize-javascript@^6.0.1: + version "6.0.2" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.2.tgz#defa1e055c83bf6d59ea805d8da862254eb6a6c2" + integrity sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g== + dependencies: + randombytes "^2.1.0" + serve-static@1.15.0: version "1.15.0" resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.15.0.tgz#faaef08cffe0a1a62f60cad0c4e513cff0ac9540" @@ -13061,7 +13539,7 @@ serve-static@1.15.0: parseurl "~1.3.3" send "0.18.0" -set-blocking@~2.0.0: +set-blocking@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw== @@ -13171,6 +13649,11 @@ shebang-regex@^3.0.0: resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== +shell-quote@^1.6.1: + version "1.8.1" + resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.8.1.tgz#6dbf4db75515ad5bac63b4f1894c3a154c766680" + integrity sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA== + shellwords@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b" @@ -13186,19 +13669,19 @@ side-channel@^1.0.4, side-channel@^1.0.6: get-intrinsic "^1.2.4" object-inspect "^1.13.1" -signal-exit@^3.0.0, signal-exit@^3.0.2: +signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3, signal-exit@^3.0.7: version "3.0.7" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== -silent-error@^1.0.0, silent-error@^1.0.1, silent-error@^1.1.0, silent-error@^1.1.1: +silent-error@^1.0.0, silent-error@^1.0.1, silent-error@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/silent-error/-/silent-error-1.1.1.tgz#f72af5b0d73682a2ba1778b7e32cd8aa7c2d8662" integrity sha512-n4iEKyNcg4v6/jpb3c0/iyH2G1nzUNl7Gpqtn/mHIJK9S/q/7MCfoO4rwVOoO59qPFIc0hVHvMbiOJ0NdtxKKw== dependencies: debug "^2.2.0" -simple-html-tokenizer@^0.5.11, simple-html-tokenizer@^0.5.9: +simple-html-tokenizer@^0.5.10, simple-html-tokenizer@^0.5.11: version "0.5.11" resolved "https://registry.yarnpkg.com/simple-html-tokenizer/-/simple-html-tokenizer-0.5.11.tgz#4c5186083c164ba22a7b477b7687ac056ad6b1d9" integrity sha512-C2WEK/Z3HoSFbYq8tI7ni3eOo/NneSPRoPpcM7WdLjFOArFuyXEjAoCdOC3DgMfRyziZQ1hCNR4mrNdWEvD0og== @@ -13217,25 +13700,11 @@ slash@^1.0.0: resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" integrity sha512-3TYDR7xWt4dIqV2JauJr+EJeW356RXijHeUlO+8djJ+uBXPn8/2dpzBc8yQhh583sVvc9CvFAeQVgijsH+PNNg== -slash@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-2.0.0.tgz#de552851a1759df3a8f206535442f5ec4ddeab44" - integrity sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A== - slash@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== -slice-ansi@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-2.1.0.tgz#cacd7693461a637a5788d92a7dd4fba068e81636" - integrity sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ== - dependencies: - ansi-styles "^3.2.0" - astral-regex "^1.0.0" - is-fullwidth-code-point "^2.0.0" - slice-source@0.4: version "0.4.1" resolved "https://registry.yarnpkg.com/slice-source/-/slice-source-0.4.1.tgz#40a57ac03c6668b5da200e05378e000bf2a61d79" @@ -13279,57 +13748,34 @@ snapdragon@^0.8.1: source-map-resolve "^0.5.0" use "^3.1.0" -socket.io-adapter@~1.1.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/socket.io-adapter/-/socket.io-adapter-1.1.2.tgz#ab3f0d6f66b8fc7fca3959ab5991f82221789be9" - integrity sha512-WzZRUj1kUjrTIrUKpZLEzFZ1OLj5FwLlAFQs9kuZJzJi5DKdU7FsWc36SNmA8iDOtwBQyT8FkrriRM8vXLYz8g== +socket.io-adapter@~2.5.2: + version "2.5.4" + resolved "https://registry.yarnpkg.com/socket.io-adapter/-/socket.io-adapter-2.5.4.tgz#4fdb1358667f6d68f25343353bd99bd11ee41006" + integrity sha512-wDNHGXGewWAjQPt3pyeYBtpWSq9cLE5UW1ZUPL/2eGK9jtse/FpXib7epSTsz0Q0m+6sg6Y4KtcFTlah1bdOVg== + dependencies: + debug "~4.3.4" + ws "~8.11.0" -socket.io-client@2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/socket.io-client/-/socket.io-client-2.5.0.tgz#34f486f3640dde9c2211fce885ac2746f9baf5cb" - integrity sha512-lOO9clmdgssDykiOmVQQitwBAF3I6mYcQAo7hQ7AM6Ny5X7fp8hIJ3HcQs3Rjz4SoggoxA1OgrQyY8EgTbcPYw== - dependencies: - backo2 "1.0.2" - component-bind "1.0.0" - component-emitter "~1.3.0" - debug "~3.1.0" - engine.io-client "~3.5.0" - has-binary2 "~1.0.2" - indexof "0.0.1" - parseqs "0.0.6" - parseuri "0.0.6" - socket.io-parser "~3.3.0" - to-array "0.1.4" - -socket.io-parser@~3.3.0: - version "3.3.3" - resolved "https://registry.yarnpkg.com/socket.io-parser/-/socket.io-parser-3.3.3.tgz#3a8b84823eba87f3f7624e64a8aaab6d6318a72f" - integrity sha512-qOg87q1PMWWTeO01768Yh9ogn7chB9zkKtQnya41Y355S0UmpXgpcrFwAgjYJxu9BdKug5r5e9YtVSeWhKBUZg== - dependencies: - component-emitter "~1.3.0" - debug "~3.1.0" - isarray "2.0.1" - -socket.io-parser@~3.4.0: - version "3.4.3" - resolved "https://registry.yarnpkg.com/socket.io-parser/-/socket.io-parser-3.4.3.tgz#b19bdaad38ed39fd68fba3f9d86768f667df0c29" - integrity sha512-1rE4dZN3kCI/E5wixd393hmbqa78vVpkKmnEJhLeWoS/C5hbFYAbcSfnWoaVH43u9ToUVtzKjguxEZq+1XZfCQ== +socket.io-parser@~4.2.4: + version "4.2.4" + resolved "https://registry.yarnpkg.com/socket.io-parser/-/socket.io-parser-4.2.4.tgz#c806966cf7270601e47469ddeec30fbdfda44c83" + integrity sha512-/GbIKmo8ioc+NIWIhwdecY0ge+qVBSMdgxGygevmdHj24bsfgtCmcUUcQ5ZzcylGFHsN3k4HB4Cgkl96KVnuew== dependencies: - component-emitter "1.2.1" - debug "~4.1.0" - isarray "2.0.1" + "@socket.io/component-emitter" "~3.1.0" + debug "~4.3.1" -socket.io@^2.1.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/socket.io/-/socket.io-2.5.0.tgz#e1c7fb1823f7fa09dfebb5bb68f9d2ee03a0a2e3" - integrity sha512-gGunfS0od3VpwDBpGwVkzSZx6Aqo9uOcf1afJj2cKnKFAoyl16fvhpsUhmUFd4Ldbvl5JvRQed6eQw6oQp6n8w== +socket.io@^4.5.4: + version "4.7.5" + resolved "https://registry.yarnpkg.com/socket.io/-/socket.io-4.7.5.tgz#56eb2d976aef9d1445f373a62d781a41c7add8f8" + integrity sha512-DmeAkF6cwM9jSfmp6Dr/5/mfMwb5Z5qRrSXLpo3Fq5SqyU8CMF15jIN4ZhfSwu35ksM1qmHZDQ/DK5XTccSTvA== dependencies: - debug "~4.1.0" - engine.io "~3.6.0" - has-binary2 "~1.0.2" - socket.io-adapter "~1.1.0" - socket.io-client "2.5.0" - socket.io-parser "~3.4.0" + accepts "~1.3.4" + base64id "~2.0.0" + cors "~2.8.5" + debug "~4.3.2" + engine.io "~6.5.2" + socket.io-adapter "~2.5.2" + socket.io-parser "~4.2.4" sort-keys@^2.0.0: version "2.0.0" @@ -13343,7 +13789,7 @@ sort-object-keys@^1.1.3: resolved "https://registry.yarnpkg.com/sort-object-keys/-/sort-object-keys-1.1.3.tgz#bff833fe85cab147b34742e45863453c1e190b45" integrity sha512-855pvK+VkU7PaKYPc+Jjnmt4EzejQHyhhF33q31qG8x7maDzkeFhAAThdCYay11CISO+qAMwjOBP+fPZe0IPyg== -sort-package-json@^1.23.1: +sort-package-json@^1.49.0: version "1.57.0" resolved "https://registry.yarnpkg.com/sort-package-json/-/sort-package-json-1.57.0.tgz#e95fb44af8ede0bb6147e3f39258102d4bb23fc4" integrity sha512-FYsjYn2dHTRb41wqnv+uEqCUvBpK3jZcTp9rbz2qDTmel7Pmdtf+i2rLaaPMRZeSVM60V3Se31GyWFpmKs4Q5Q== @@ -13408,7 +13854,7 @@ source-map@0.4.x, source-map@^0.4.2: dependencies: amdefine ">=0.0.4" -source-map@^0.5.0, source-map@^0.5.6, source-map@^0.5.7, source-map@~0.5.1: +source-map@^0.5.6, source-map@^0.5.7, source-map@~0.5.1: version "0.5.7" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ== @@ -13418,28 +13864,11 @@ source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== -source-map@~0.1.x: - version "0.1.43" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.43.tgz#c24bc146ca517c1471f5dacbe2571b2b7f9e3346" - integrity sha512-VtCvB9SIQhk3aF6h+N85EaqIaBFIAfZ9Cu+NJHHVvc8BbEcnvDcFw6sqQ2dQrT6SlOrZq3tIvyD9+EGq/lJryQ== - dependencies: - amdefine ">=0.0.4" - sourcemap-codec@^1.4.1, sourcemap-codec@^1.4.8: version "1.4.8" resolved "https://registry.yarnpkg.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4" integrity sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA== -sourcemap-validator@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/sourcemap-validator/-/sourcemap-validator-1.1.1.tgz#3d7d8a399ccab09c1fedc510d65436e25b1c386b" - integrity sha512-pq6y03Vs6HUaKo9bE0aLoksAcpeOo9HZd7I8pI6O480W/zxNZ9U32GfzgtPP0Pgc/K1JHna569nAbOk3X8/Qtw== - dependencies: - jsesc "~0.3.x" - lodash.foreach "^4.5.0" - lodash.template "^4.5.0" - source-map "~0.1.x" - spawn-args@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/spawn-args/-/spawn-args-0.2.0.tgz#fb7d0bd1d70fd4316bd9e3dec389e65f9d6361bb" @@ -13572,6 +14001,14 @@ stream-browserify@^2.0.1: inherits "~2.0.1" readable-stream "^2.0.2" +stream-browserify@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-3.0.0.tgz#22b0a2850cdf6503e73085da1fc7b7d0c2122f2f" + integrity sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA== + dependencies: + inherits "~2.0.4" + readable-stream "^3.5.0" + stream-each@^1.1.0: version "1.2.3" resolved "https://registry.yarnpkg.com/stream-each/-/stream-each-1.2.3.tgz#ebe27a0c389b04fbcc233642952e10731afa9bae" @@ -13611,16 +14048,7 @@ string-template@~0.2.1: resolved "https://registry.yarnpkg.com/string-template/-/string-template-0.2.1.tgz#42932e598a352d01fc22ec3367d9d84eec6c9add" integrity sha512-Yptehjogou2xm4UJbxJ4CxgZx12HBfeystp0y3x7s4Dj32ltVVG1Gg8YhKjHZkHicuKpZX/ffilA8505VbUbpw== -string-width@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" - integrity sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw== - dependencies: - code-point-at "^1.0.0" - is-fullwidth-code-point "^1.0.0" - strip-ansi "^3.0.0" - -"string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.1.0: +"string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -13637,15 +14065,6 @@ string-width@^2.1.0, string-width@^2.1.1: is-fullwidth-code-point "^2.0.0" strip-ansi "^4.0.0" -string-width@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" - integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== - dependencies: - emoji-regex "^7.0.1" - is-fullwidth-code-point "^2.0.0" - strip-ansi "^5.1.0" - string.prototype.matchall@^4.0.5: version "4.0.11" resolved "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.11.tgz#1092a72c59268d2abaad76582dccc687c0297e0a" @@ -13664,6 +14083,16 @@ string.prototype.matchall@^4.0.5: set-function-name "^2.0.2" side-channel "^1.0.6" +string.prototype.padend@^3.0.0: + version "3.1.6" + resolved "https://registry.yarnpkg.com/string.prototype.padend/-/string.prototype.padend-3.1.6.tgz#ba79cf8992609a91c872daa47c6bb144ee7f62a5" + integrity sha512-XZpspuSB7vJWhvJc9DLSlrXl1mcA2BdoY5jjnS135ydXqLoqhs96JjDtCkjJEQHvfqZIp9hBuBMgI589peyx9Q== + dependencies: + call-bind "^1.0.7" + define-properties "^1.2.1" + es-abstract "^1.23.2" + es-object-atoms "^1.0.0" + string.prototype.trim@^1.2.9: version "1.2.9" resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz#b6fa326d72d2c78b6df02f7759c73f8f6274faa4" @@ -13711,7 +14140,7 @@ string_decoder@~1.1.1: dependencies: safe-buffer "~5.1.0" -strip-ansi@^3.0.0, strip-ansi@^3.0.1: +strip-ansi@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" integrity sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg== @@ -13773,16 +14202,16 @@ strip-indent@^3.0.0: dependencies: min-indent "^1.0.0" -strip-json-comments@^2.0.1, strip-json-comments@~2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" - integrity sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ== - strip-json-comments@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== +strip-json-comments@~2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" + integrity sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ== + strip-outer@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/strip-outer/-/strip-outer-1.0.1.tgz#b2fd2abf6604b9d1e6013057195df836b8a9d631" @@ -13790,6 +14219,14 @@ strip-outer@^1.0.1: dependencies: escape-string-regexp "^1.0.2" +style-loader@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-2.0.0.tgz#9669602fd4690740eaaec137799a03addbbc393c" + integrity sha512-Z0gYUJmzZ6ZdRUqpg1r8GsaFKypE+3xAzuFeMuoHgjc9KZv3wMyCRjQIWEbhoFSq7+7yoHXySDJyyWQaPajeiQ== + dependencies: + loader-utils "^2.0.0" + schema-utils "^3.0.0" + style-mod@^4.0.0, style-mod@^4.1.0: version "4.1.2" resolved "https://registry.yarnpkg.com/style-mod/-/style-mod-4.1.2.tgz#ca238a1ad4786520f7515a8539d5a63691d7bf67" @@ -13826,6 +14263,13 @@ supports-color@^7.1.0: dependencies: has-flag "^4.0.0" +supports-color@^8.0.0: + version "8.1.1" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" + integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== + dependencies: + has-flag "^4.0.0" + supports-preserve-symlinks-flag@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" @@ -13858,16 +14302,6 @@ sync-disk-cache@^2.0.0: rimraf "^3.0.0" username-sync "^1.0.2" -table@^5.2.3: - version "5.4.6" - resolved "https://registry.yarnpkg.com/table/-/table-5.4.6.tgz#1292d19500ce3f86053b05f0e8e7e4a3bb21079e" - integrity sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug== - dependencies: - ajv "^6.10.2" - lodash "^4.17.14" - slice-ansi "^2.1.0" - string-width "^3.0.0" - tap-parser@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/tap-parser/-/tap-parser-7.0.0.tgz#54db35302fda2c2ccc21954ad3be22b2cba42721" @@ -13882,11 +14316,17 @@ tapable@^1.0.0, tapable@^1.1.3: resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.1.3.tgz#a1fccc06b58db61fd7a45da2da44f5f3a3e67ba2" integrity sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA== -temp@0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/temp/-/temp-0.9.0.tgz#61391795a11bd9738d4c4d7f55f012cb8f55edaa" - integrity sha512-YfUhPQCJoNQE5N+FJQcdPz63O3x3sdT4Xju69Gj4iZe0lBKOtnAMi0SLj9xKhGkcGhsxThvTJ/usxtFPo438zQ== +tapable@^2.1.1, tapable@^2.2.0, tapable@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0" + integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ== + +temp@0.9.4: + version "0.9.4" + resolved "https://registry.yarnpkg.com/temp/-/temp-0.9.4.tgz#cd20a8580cb63635d0e4e9d4bd989d44286e7620" + integrity sha512-yYrrsWnrXMcdsnu/7YMYAofM1ktpL5By7vZhf15CrXijWWrEYZks5AXBudalfSWJLlnen/QUJUB5aoB0kqZUGA== dependencies: + mkdirp "^0.5.1" rimraf "~2.6.2" terser-webpack-plugin@^1.4.3: @@ -13904,6 +14344,17 @@ terser-webpack-plugin@^1.4.3: webpack-sources "^1.4.0" worker-farm "^1.7.0" +terser-webpack-plugin@^5.3.10: + version "5.3.10" + resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz#904f4c9193c6fd2a03f693a2150c62a92f40d199" + integrity sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w== + dependencies: + "@jridgewell/trace-mapping" "^0.3.20" + jest-worker "^27.4.5" + schema-utils "^3.1.1" + serialize-javascript "^6.0.1" + terser "^5.26.0" + terser@^4.1.2: version "4.8.1" resolved "https://registry.yarnpkg.com/terser/-/terser-4.8.1.tgz#a00e5634562de2239fd404c649051bf6fc21144f" @@ -13913,7 +14364,7 @@ terser@^4.1.2: source-map "~0.6.1" source-map-support "~0.5.12" -terser@^5.7.0: +terser@^5.26.0, terser@^5.7.0: version "5.30.3" resolved "https://registry.yarnpkg.com/terser/-/terser-5.30.3.tgz#f1bb68ded42408c316b548e3ec2526d7dd03f4d2" integrity sha512-STdUgOUx8rLbMGO9IOwHLpCqolkDITFFQSMYYwKE1N2lY6MVSaeoi10z/EhWxRc6ybqoVmKSkhKYH/XUpl7vSA== @@ -13923,17 +14374,18 @@ terser@^5.7.0: commander "^2.20.0" source-map-support "~0.5.20" -testem@^2.17.0: - version "2.17.0" - resolved "https://registry.yarnpkg.com/testem/-/testem-2.17.0.tgz#1cb4a2a90524a088803dfe52fbf197a6fd73c883" - integrity sha512-PLkIlT523w5rTJPWwR4TL1EiAEa941ECV7d4pMqsB0YdnH+sCTz0loWMKCUSdhR+VijveAZ6anE/JHehE7KqMQ== +testem@^3.2.0: + version "3.13.0" + resolved "https://registry.yarnpkg.com/testem/-/testem-3.13.0.tgz#27d6b2c50e9607f2c2d4ea5f75c88b3434dac7a0" + integrity sha512-b4hdlkH2TR1TQJCOgBNbD7nz4TjeYF35MgUlzum3yfDaaR+lJDjmJNMgi72MKgg+SjkGZ1U3BCBOqLC85MsMmQ== dependencies: + "@xmldom/xmldom" "^0.8.0" backbone "^1.1.2" bluebird "^3.4.6" charm "^1.0.0" commander "^2.6.0" compression "^1.7.4" - consolidate "^0.15.1" + consolidate "^0.16.0" execa "^1.0.0" express "^4.10.7" fireworm "^0.7.0" @@ -13945,18 +14397,17 @@ testem@^2.17.0: lodash.clonedeep "^4.4.1" lodash.find "^4.5.1" lodash.uniqby "^4.7.0" - mkdirp "^0.5.1" - mustache "^3.0.0" - node-notifier "^5.0.1" - npmlog "^4.0.0" - printf "^0.5.1" - rimraf "^2.4.4" - socket.io "^2.1.0" + mkdirp "^3.0.1" + mustache "^4.2.0" + node-notifier "^10.0.0" + npmlog "^6.0.0" + printf "^0.6.1" + rimraf "^3.0.2" + socket.io "^4.5.4" spawn-args "^0.2.0" styled_string "0.0.1" tap-parser "^7.0.0" tmp "0.0.33" - xmldom "^0.1.19" tether@^1.4.0: version "1.4.7" @@ -14034,15 +14485,15 @@ tiny-glob@0.2.9: globalyzer "0.1.0" globrex "^0.1.2" -tiny-lr@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/tiny-lr/-/tiny-lr-1.1.1.tgz#9fa547412f238fedb068ee295af8b682c98b2aab" - integrity sha512-44yhA3tsaRoMOjQQ+5v5mVdqef+kH6Qze9jTpqtVufgYjYt08zyZAwNwwVBj3i1rJMnR52IxOW0LK0vBzgAkuA== +tiny-lr@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/tiny-lr/-/tiny-lr-2.0.0.tgz#863659d7ce1ed201a117d8197d7f8b9a27bdc085" + integrity sha512-f6nh0VMRvhGx4KCeK1lQ/jaL0Zdb5WdR+Jk8q9OSUQnaSDxAEGH1fgqLZ+cMl5EW3F2MGnCsalBO1IsnnogW1Q== dependencies: body "^5.1.0" debug "^3.1.0" - faye-websocket "~0.10.0" - livereload-js "^2.3.0" + faye-websocket "^0.11.3" + livereload-js "^3.3.1" object-assign "^4.1.0" qs "^6.4.0" @@ -14067,16 +14518,16 @@ tmp@^0.1.0: dependencies: rimraf "^2.6.3" +tmp@^0.2.1: + version "0.2.3" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.2.3.tgz#eb783cc22bc1e8bebd0671476d46ea4eb32a79ae" + integrity sha512-nZD7m9iCPC5g0pYmcaxogYKggSfLsdxl8of3Q/oIbqCqLLIO9IAF0GWjX1z9NZRHPiXv8Wex4yDCaZsgEw0Y8w== + tmpl@1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw== -to-array@0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/to-array/-/to-array-0.1.4.tgz#17e6c11f73dd4f3d74cda7a4ff3238e9ad9bf890" - integrity sha512-LhVdShQD/4Mk4zXNroIQZJC+Ap3zgLcDuwEdcmLv9CCO73NWockQDwyUnW/m8VX/EElfL6FcYx7EeutN4HJA6A== - to-arraybuffer@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43" @@ -14166,7 +14617,7 @@ tree-sync@^1.2.2: quick-temp "^0.1.5" walk-sync "^0.3.3" -tree-sync@^2.0.0: +tree-sync@^2.0.0, tree-sync@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/tree-sync/-/tree-sync-2.1.0.tgz#31cbbd41f2936f5390b61e8c9d7cb27e75a212fe" integrity sha512-OLWW+Nd99NOM53aZ8ilT/YpEiOo6mXD3F4/wLbARqybSZ3Jb8IxHK5UGVbZaae0wtXAyQshVV+SeqVBik+Fbmw== @@ -14204,7 +14655,7 @@ tslib@^1.9.0: resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== -tslib@^2.0.3: +tslib@^2.0.3, tslib@^2.2.0: version "2.6.2" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae" integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== @@ -14228,6 +14679,11 @@ type-check@~0.3.2: dependencies: prelude-ls "~1.1.2" +type-fest@^0.11.0: + version "0.11.0" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.11.0.tgz#97abf0872310fed88a5c466b25681576145e33f1" + integrity sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ== + type-fest@^0.18.0: version "0.18.1" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.18.1.tgz#db4bc151a4a2cf4eebf9add5db75508db6cc841f" @@ -14593,19 +15049,6 @@ util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1: resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== -util.promisify@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.1.2.tgz#02b3dbadbb80071eee4c43aed58747afdfc516db" - integrity sha512-PBdZ03m1kBnQ5cjjO0ZvJMJS+QsbyIcFwi4hY4U76OQsCO9JrOYjbCFgIF76ccFg9xnJo7ZHPkqyj1GqmdS7MA== - dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - for-each "^0.3.3" - has-proto "^1.0.1" - has-symbols "^1.0.3" - object.getownpropertydescriptors "^2.1.6" - safe-array-concat "^1.0.0" - util@^0.10.4: version "0.10.4" resolved "https://registry.yarnpkg.com/util/-/util-0.10.4.tgz#3aa0125bfe668a4672de58857d3ace27ecb76901" @@ -14630,6 +15073,16 @@ uuid@^3.3.3: resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== +uuid@^8.3.2: + version "8.3.2" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" + integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== + +v8-compile-cache@^2.3.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.4.0.tgz#cdada8bec61e15865f05d097c5f4fd30e94dc128" + integrity sha512-ocyWc3bAHBB/guyqJQVI5o4BZkPhznPYUG2ea80Gond/BgNWpap8TOmLSeeQG7bnh2KMISxskdADG59j7zruhw== + validate-npm-package-license@^3.0.1: version "3.0.4" resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" @@ -14645,12 +15098,20 @@ validate-npm-package-name@^3.0.0: dependencies: builtins "^1.0.3" +validate-peer-dependencies@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/validate-peer-dependencies/-/validate-peer-dependencies-1.2.0.tgz#22aab93c514f4fda457d36c80685e8b1160d2036" + integrity sha512-nd2HUpKc6RWblPZQ2GDuI65sxJ2n/UqZwSBVtj64xlWjMx0m7ZB2m9b2JS3v1f+n9VWH/dd1CMhkHfP6pIdckA== + dependencies: + resolve-package-path "^3.1.0" + semver "^7.3.2" + validator@^12.1.0: version "12.2.0" resolved "https://registry.yarnpkg.com/validator/-/validator-12.2.0.tgz#660d47e96267033fd070096c3b1a6f2db4380a0a" integrity sha512-jJfE/DW6tIK1Ek8nCfNFqt8Wb3nzMoAbocBF6/Icgg1ZFSBpObdnwVY2jQj6qUqzhx5jc71fpvBWyLGO7Xl+nQ== -vary@~1.1.2: +vary@^1, vary@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg== @@ -14701,7 +15162,7 @@ walk-sync@^0.2.5: ensure-posix-path "^1.0.0" matcher-collection "^1.0.0" -walk-sync@^0.3.0, walk-sync@^0.3.1, walk-sync@^0.3.2, walk-sync@^0.3.3: +walk-sync@^0.3.0, walk-sync@^0.3.1, walk-sync@^0.3.3: version "0.3.4" resolved "https://registry.yarnpkg.com/walk-sync/-/walk-sync-0.3.4.tgz#cf78486cc567d3a96b5b2237c6108017a5ffb9a4" integrity sha512-ttGcuHA/OBnN2pcM6johpYlEms7XpO5/fyKIr48541xXedan4roO8cS1Q2S/zbbjGH/BarYDAMeS2Mi9HE5Tig== @@ -14728,6 +15189,16 @@ walk-sync@^2.0.0, walk-sync@^2.0.2, walk-sync@^2.2.0: matcher-collection "^2.0.0" minimatch "^3.0.4" +walk-sync@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/walk-sync/-/walk-sync-3.0.0.tgz#67f882925021e20569a1edd560b8da31da8d171c" + integrity sha512-41TvKmDGVpm2iuH7o+DAOt06yyu/cSHpX3uzAwetzASvlNtVddgIjXIb2DfB/Wa20B1Jo86+1Dv1CraSU7hWdw== + dependencies: + "@types/minimatch" "^3.0.4" + ensure-posix-path "^1.1.0" + matcher-collection "^2.0.1" + minimatch "^3.0.4" + walker@~1.0.5: version "1.0.8" resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f" @@ -14762,6 +15233,14 @@ watchpack@^1.7.4: chokidar "^3.4.1" watchpack-chokidar2 "^2.0.1" +watchpack@^2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.4.1.tgz#29308f2cac150fa8e4c92f90e0ec954a9fed7fff" + integrity sha512-8wrBCMtVhqcXP2Sup1ctSkga6uc2Bx0IIvKyT7yTFier5AXHooSI+QyQQAtTb7+E0IUCCKyTFmXqdqgum2XWGg== + dependencies: + glob-to-regexp "^0.4.1" + graceful-fs "^4.1.2" + wcwidth@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8" @@ -14782,6 +15261,11 @@ webpack-sources@^1.4.0, webpack-sources@^1.4.1: source-list-map "^2.0.0" source-map "~0.6.1" +webpack-sources@^3.2.3: + version "3.2.3" + resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.2.3.tgz#2d4daab8451fd4b240cc27055ff6a0c2ccea0cde" + integrity sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w== + webpack@^4.43.0: version "4.47.0" resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.47.0.tgz#8b8a02152d7076aeb03b61b47dad2eeed9810ebc" @@ -14811,6 +15295,36 @@ webpack@^4.43.0: watchpack "^1.7.4" webpack-sources "^1.4.1" +webpack@^5.0.0: + version "5.91.0" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.91.0.tgz#ffa92c1c618d18c878f06892bbdc3373c71a01d9" + integrity sha512-rzVwlLeBWHJbmgTC/8TvAcu5vpJNII+MelQpylD4jNERPwpBJOE2lEcko1zJX3QJeLjTTAnQxn/OJ8bjDzVQaw== + dependencies: + "@types/eslint-scope" "^3.7.3" + "@types/estree" "^1.0.5" + "@webassemblyjs/ast" "^1.12.1" + "@webassemblyjs/wasm-edit" "^1.12.1" + "@webassemblyjs/wasm-parser" "^1.12.1" + acorn "^8.7.1" + acorn-import-assertions "^1.9.0" + browserslist "^4.21.10" + chrome-trace-event "^1.0.2" + enhanced-resolve "^5.16.0" + es-module-lexer "^1.2.1" + eslint-scope "5.1.1" + events "^3.2.0" + glob-to-regexp "^0.4.1" + graceful-fs "^4.2.11" + json-parse-even-better-errors "^2.3.1" + loader-runner "^4.2.0" + mime-types "^2.1.27" + neo-async "^2.6.2" + schema-utils "^3.2.0" + tapable "^2.1.1" + terser-webpack-plugin "^5.3.10" + watchpack "^2.4.1" + webpack-sources "^3.2.3" + websocket-driver@>=0.5.1: version "0.7.4" resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.7.4.tgz#89ad5295bbf64b480abcba31e4953aca706f5760" @@ -14825,7 +15339,7 @@ websocket-extensions@>=0.1.1: resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.4.tgz#7f8473bc839dfd87608adb95d7eb075211578a42" integrity sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg== -whatwg-fetch@^3.0.0: +whatwg-fetch@^3.6.2: version "3.6.20" resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.6.20.tgz#580ce6d791facec91d37c72890995a0b48d31c70" integrity sha512-EqhiFU6daOA8kpjOWTL0olhVOF3i7OrFzSYiGsEMB8GcXS+RrzauAERX65xMeNWVqxA6HXH2m69Z9LaKKdisfg== @@ -14860,21 +15374,21 @@ which-typed-array@^1.1.14, which-typed-array@^1.1.15: gopd "^1.0.1" has-tostringtag "^1.0.2" -which@^1.2.14, which@^1.2.9, which@^1.3.0: +which@^1.2.14, which@^1.2.9: version "1.3.1" resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== dependencies: isexe "^2.0.0" -which@^2.0.1: +which@^2.0.1, which@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== dependencies: isexe "^2.0.0" -wide-align@^1.1.0: +wide-align@^1.1.5: version "1.1.5" resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.5.tgz#df1d4c206854369ecf3c9a4898f1b23fbd9d15d3" integrity sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg== @@ -14919,11 +15433,20 @@ workerpool@^3.1.1: object-assign "4.1.1" rsvp "^4.8.4" -workerpool@^6.0.2, workerpool@^6.1.5: +workerpool@^6.0.2, workerpool@^6.1.4, workerpool@^6.1.5: version "6.5.1" resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.5.1.tgz#060f73b39d0caf97c6db64da004cd01b4c099544" integrity sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA== +wrap-ansi@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" @@ -14939,33 +15462,16 @@ write-file-atomic@^3.0.0: signal-exit "^3.0.2" typedarray-to-buffer "^3.1.5" -write@1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/write/-/write-1.0.3.tgz#0800e14523b923a387e415123c865616aae0f5c3" - integrity sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig== - dependencies: - mkdirp "^0.5.1" - -ws@~7.4.2: - version "7.4.6" - resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c" - integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A== +ws@~8.11.0: + version "8.11.0" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.11.0.tgz#6a0d36b8edfd9f96d8b25683db2f8d7de6e8e143" + integrity sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg== xdg-basedir@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-4.0.0.tgz#4bc8d9984403696225ef83a1573cbbcb4e79db13" integrity sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q== -xmldom@^0.1.19: - version "0.1.31" - resolved "https://registry.yarnpkg.com/xmldom/-/xmldom-0.1.31.tgz#b76c9a1bd9f0a9737e5a72dc37231cf38375e2ff" - integrity sha512-yS2uJflVQs6n+CyjHoaBmVSqIDevTAWrzMmjG1Gc7h1qQ7uVozNhEPJAwZXWyGQ/Gafo3fCwrcaokezLPupVyQ== - -xmlhttprequest-ssl@~1.6.2: - version "1.6.3" - resolved "https://registry.yarnpkg.com/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.6.3.tgz#03b713873b01659dfa2c1c5d056065b27ddc2de6" - integrity sha512-3XfeQE/wNkvrIktn2Kf0869fC0BN6UpydVasGIeSm2B1Llihf7/0UfZM+eCkOw3P7bP4+qPgqhm7ZoxuJtFU0Q== - xtend@^4.0.0, xtend@^4.0.2, xtend@~4.0.1: version "4.0.2" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" @@ -14976,6 +15482,11 @@ y18n@^4.0.0: resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.3.tgz#b5f259c82cd6e336921efd7bfd8bf560de9eeedf" integrity sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ== +y18n@^5.0.5: + version "5.0.8" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" + integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== + yallist@^3.0.0, yallist@^3.0.2: version "3.1.1" resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" @@ -14994,15 +15505,23 @@ yam@^1.0.0: fs-extra "^4.0.2" lodash.merge "^4.6.0" -yargs-parser@^20.2.3: +yargs-parser@^20.2.2, yargs-parser@^20.2.3: version "20.2.9" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== -yeast@0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/yeast/-/yeast-0.1.2.tgz#008e06d8094320c372dbc2f8ed76a0ca6c8ac419" - integrity sha512-8HFIh676uyGYP6wP13R/j6OJ/1HwJ46snpvzE7aHAN3Ryqh2yX6Xox2B4CUmTwwOIzlG3Bs7ocsP5dZH/R1Qbg== +yargs@^16.2.0: + version "16.2.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" + integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== + dependencies: + cliui "^7.0.2" + escalade "^3.1.1" + get-caller-file "^2.0.5" + require-directory "^2.1.1" + string-width "^4.2.0" + y18n "^5.0.5" + yargs-parser "^20.2.2" yocto-queue@^0.1.0: version "0.1.0" From 895f9201e69b31ef56141c5e5be6f216db0d69ee Mon Sep 17 00:00:00 2001 From: dvonanderson Date: Mon, 22 Apr 2024 09:37:29 -0400 Subject: [PATCH 02/16] fixed head-layout component and installed ender-modifiers for hook deprecation --- app/templates/application.hbs | 27 +++++++++++++++------------ app/templates/head.hbs | 9 +++++---- package.json | 2 ++ yarn.lock | 13 +++++++++++-- 4 files changed, 33 insertions(+), 18 deletions(-) diff --git a/app/templates/application.hbs b/app/templates/application.hbs index 1d304913b..6217e29b1 100644 --- a/app/templates/application.hbs +++ b/app/templates/application.hbs @@ -1,8 +1,9 @@ -{{head-layout}} + +{{! Navbar }}
- {{#each flashMessages.queue as |flash|}} + {{#each this.flashMessages.queue as |flash|}} {{flash.message}} {{#if flash.showProgress}} @@ -33,15 +34,15 @@ {{! Slider }} {{! /#slider }} {{! Sidebar }} - + {{! /#sidebar-wrapper }} {{! Page Content }} @@ -63,7 +64,7 @@ @@ -76,8 +77,10 @@ Settings) when reporting bugs or issues. If you are having problems, you might want to clear your localstorage. - CAUTION: Clearing your localstorage will delete - all records. + + CAUTION: Clearing your localstorage will delete + all records. +

Current Version: @@ -85,8 +88,8 @@

-{{#if spotlight.show}} +{{#if this.spotlight.show}} {{/if}} - \ No newline at end of file + \ No newline at end of file diff --git a/app/templates/head.hbs b/app/templates/head.hbs index 710021530..179a6cf8b 100644 --- a/app/templates/head.hbs +++ b/app/templates/head.hbs @@ -1,6 +1,7 @@ {{!-- -Add content you wish automatically added to the documents head -here. The 'model' available in this template can be populated by -setting values on the 'head-data' service. + Add content you wish automatically added to the documents head + here. The 'model' available in this template can be populated by + setting values on the 'head-data' service. --}} -{{model.title}} +{{!-- template-lint-disable no-forbidden-elements --}} + \ No newline at end of file diff --git a/package.json b/package.json index f92ac2a00..0d735d843 100644 --- a/package.json +++ b/package.json @@ -54,6 +54,7 @@ "devDependencies": { "@ember/jquery": "^0.6.0", "@ember/optional-features": "^2.0.0", + "@ember/render-modifiers": "^2.1.0", "@ember/test-helpers": "^2.6.0", "@glimmer/component": "^1.0.4", "@glimmer/tracking": "^1.0.4", @@ -82,6 +83,7 @@ "ember-cli-deprecation-workflow": "^1.0.1", "ember-cli-file-picker": "^0.0.12", "ember-cli-flash": "^1.3.16", + "ember-cli-head": "^2.0.0", "ember-cli-htmlbars": "^5.7.2", "ember-cli-inject-live-reload": "^2.1.0", "ember-cli-moment-shim": "^3.8.0", diff --git a/yarn.lock b/yarn.lock index e5b3beb51..530036790 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1370,7 +1370,7 @@ mkdirp "^1.0.4" silent-error "^1.1.1" -"@ember/render-modifiers@^2.0.4": +"@ember/render-modifiers@^2.0.4", "@ember/render-modifiers@^2.1.0": version "2.1.0" resolved "https://registry.yarnpkg.com/@ember/render-modifiers/-/render-modifiers-2.1.0.tgz#f4fff95a8b5cfbe947ec46644732d511711c5bf9" integrity sha512-LruhfoDv2itpk0fA0IC76Sxjcnq/7BC6txpQo40hOko8Dn6OxwQfxkPIbZGV0Cz7df+iX+VJrcYzNIvlc3w2EQ== @@ -6229,6 +6229,15 @@ ember-cli-get-component-path-option@^1.0.0: resolved "https://registry.yarnpkg.com/ember-cli-get-component-path-option/-/ember-cli-get-component-path-option-1.0.0.tgz#0d7b595559e2f9050abed804f1d8eff1b08bc771" integrity sha512-k47TDwcJ2zPideBCZE8sCiShSxQSpebY2BHcX2DdipMmBox5gsfyVrbKJWIHeSTTKyEUgmBIvQkqTOozEziCZA== +ember-cli-head@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ember-cli-head/-/ember-cli-head-2.0.0.tgz#ce294341026fd643067712a438008d6139f5208d" + integrity sha512-i9qwljBlpzU/ei0xN+FiCHUvU1ZdjVXk0OzRKoeMZJK3m4p29CvB095klT0q+PigvYFYHIyTaeSWmbgjP8CZiw== + dependencies: + ember-cli-babel "^7.26.3" + ember-cli-htmlbars "^5.7.1" + ember-in-element-polyfill "^1.0.0" + ember-cli-htmlbars@2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/ember-cli-htmlbars/-/ember-cli-htmlbars-2.0.3.tgz#e116e1500dba12f29c94b05b9ec90f52cb8bb042" @@ -7008,7 +7017,7 @@ ember-in-element-polyfill@^0.2.0, ember-in-element-polyfill@^0.2.1: ember-cli-htmlbars "^4.2.0" ember-cli-version-checker "^2.1.0" -ember-in-element-polyfill@^1.0.1: +ember-in-element-polyfill@^1.0.0, ember-in-element-polyfill@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/ember-in-element-polyfill/-/ember-in-element-polyfill-1.0.1.tgz#143504445bb4301656a2eaad42644d684f5164dd" integrity sha512-eHs+7D7PuQr8a1DPqsJTsEyo3FZ1XuH6WEZaEBPDa9s0xLlwByCNKl8hi1EbXOgvgEZNHHi9Rh0vjxyfakrlgg== From 8a2f2b52e0c8d40b2e47dd2bbba6935359090160 Mon Sep 17 00:00:00 2001 From: dvonanderson Date: Mon, 22 Apr 2024 11:35:13 -0400 Subject: [PATCH 03/16] clean up code lint errors with `ember-template-lint-plugin-prettier` --- .template-lintrc.js | 4 +- .../control/md-alert-table/template.hbs | 37 +- .../control/md-button-confirm/template.hbs | 13 +- .../control/md-button-modal/template.hbs | 32 +- .../components/control/md-button/template.hbs | 8 +- .../control/md-contact-title/template.hbs | 2 +- .../control/md-crud-buttons/template.hbs | 56 ++- .../control/md-definition/template.hbs | 6 +- .../control/md-edit-table/template.hbs | 10 +- .../components/control/md-errors/template.hbs | 25 +- .../control/md-import-csv/template.hbs | 39 +- .../control/md-indicator/related/template.hbs | 6 +- .../control/md-indicator/template.hbs | 6 +- .../components/control/md-itis/template.hbs | 310 ++++++++------ .../control/md-json-button/template.hbs | 16 +- .../control/md-json-viewer/template.hbs | 77 +++- .../components/control/md-modal/template.hbs | 54 ++- .../buttons/custom/template.hbs | 11 +- .../buttons/filter/template.hbs | 10 +- .../md-record-table/buttons/show/template.hbs | 11 +- .../md-record-table/buttons/template.hbs | 27 +- .../control/md-repo-link/template.hbs | 4 +- .../control/md-scroll-spy/template.hbs | 8 +- .../control/md-spinner/template.hbs | 8 +- .../components/control/md-status/template.hbs | 44 +- .../control/subbar-citation/template.hbs | 29 +- .../control/subbar-importcsv/template.hbs | 20 +- .../control/subbar-link/template.hbs | 23 +- .../control/subbar-spatial/template.hbs | 47 ++- .../components/input/md-boolean/template.hbs | 8 +- .../input/md-date-range/template.hbs | 34 +- .../input/md-input-confirm/template.hbs | 48 +-- .../components/input/md-input/template.hbs | 26 +- .../input/md-markdown-area/template.hbs | 31 +- .../input/md-select-profile/template.hbs | 21 +- .../input/md-select-thesaurus/template.hbs | 22 +- .../components/input/md-select/template.hbs | 116 ++--- .../components/input/md-textarea/template.hbs | 54 +-- .../layout/md-breadcrumb/template.hbs | 4 +- .../components/layout/md-card/template.hbs | 127 ++++-- .../components/layout/md-footer/template.hbs | 25 +- .../layout/md-nav-main/template.hbs | 94 +++-- .../layout/md-nav-secondary/link/template.hbs | 58 +-- .../layout/md-nav-secondary/template.hbs | 25 +- .../layout/md-nav-sidebar/template.hbs | 129 ++++-- .../layout/md-object-container/template.hbs | 43 +- .../components/layout/md-slider/template.hbs | 17 +- .../components/layout/md-wrap/template.hbs | 2 +- .../nav/dictionary/nav-main/template.hbs | 8 +- .../layout/nav/record/nav-main/template.hbs | 18 +- app/pods/components/md-help/template.hbs | 42 +- .../components/check-all/template.hbs | 15 +- .../components/check/template.hbs | 6 +- .../components/row-body/template.hbs | 23 +- .../components/row-buttons/template.hbs | 57 ++- app/pods/components/md-title/template.hbs | 2 +- app/pods/components/md-translate/template.hbs | 326 ++++++++------ .../cell-content-display/template.hbs | 4 +- .../models-table/row-expand/template.hbs | 8 +- .../models-table/table-body/template.hbs | 85 ++-- .../md-address/md-address-block/template.hbs | 12 +- .../components/object/md-address/template.hbs | 110 +++-- .../object/md-allocation/template.hbs | 112 ++--- .../object/md-array-table/template.hbs | 264 +++++++----- .../object/md-associated/preview/template.hbs | 47 ++- .../object/md-associated/template.hbs | 194 +++++---- .../object/md-attribute/preview/template.hbs | 32 +- .../object/md-attribute/template.hbs | 199 ++++----- .../components/object/md-bbox/template.hbs | 94 ++--- .../object/md-citation-array/template.hbs | 4 +- .../object/md-citation/preview/template.hbs | 37 +- .../object/md-citation/template.hbs | 162 ++++--- .../md-contact-identifier-array/template.hbs | 30 +- .../object/md-date-array/template.hbs | 14 +- .../components/object/md-date/template.hbs | 30 +- .../object/md-distribution/template.hbs | 40 +- .../md-distributor/preview/template.hbs | 33 +- .../object/md-distributor/template.hbs | 77 ++-- .../md-documentation/preview/template.hbs | 30 +- .../object/md-documentation/template.hbs | 20 +- .../components/object/md-domain/template.hbs | 73 ++-- .../object/md-domainitem/preview/template.hbs | 26 +- .../object/md-domainitem/template.hbs | 40 +- .../components/object/md-entity/template.hbs | 263 ++++++------ .../object/md-extent/spatial/template.hbs | 134 +++--- .../object/md-funding/preview/template.hbs | 54 ++- .../components/object/md-funding/template.hbs | 34 +- .../md-graphic-preview/template.hbs | 8 +- .../object/md-graphic-array/template.hbs | 61 +-- .../object/md-identifier-array/template.hbs | 4 +- .../md-identifier-object-table/template.hbs | 14 +- .../object/md-identifier/template.hbs | 61 +-- .../object/md-keyword-citation/template.hbs | 70 +-- .../object/md-keyword-list/template.hbs | 85 ++-- .../object/md-lineage/preview/template.hbs | 68 +-- .../components/object/md-lineage/template.hbs | 57 +-- .../object/md-locale-array/template.hbs | 99 ++--- .../components/object/md-locale/template.hbs | 38 +- .../object/md-maintenance/template.hbs | 56 +-- .../components/object/md-medium/template.hbs | 114 ++--- .../object/md-object-table/template.hbs | 326 +++++++++----- .../md-image-preview/template.hbs | 28 +- .../md-online-resource-array/template.hbs | 17 +- .../object/md-online-resource/template.hbs | 90 ++-- .../object/md-party-array/template.hbs | 85 ++-- .../components/object/md-party/template.hbs | 28 +- .../object/md-phone-array/template.hbs | 28 +- .../md-process-step/preview/template.hbs | 6 +- .../object/md-process-step/template.hbs | 92 ++-- .../object/md-profile/custom/template.hbs | 138 +++--- .../object/md-profile/form/template.hbs | 32 +- .../object/md-profile/preview/template.hbs | 34 +- .../components/object/md-profile/template.hbs | 8 +- .../coverage-result/template.hbs | 12 +- .../attrgroup/attribute/preview/template.hbs | 6 +- .../attrgroup/attribute/template.hbs | 93 ++-- .../object/md-raster/attrgroup/template.hbs | 104 +++-- .../object/md-raster/image-desc/template.hbs | 134 +++--- .../object/md-raster/preview/template.hbs | 22 +- .../components/object/md-raster/template.hbs | 32 +- .../object/md-repository-array/template.hbs | 23 +- .../md-resource-type-array/template.hbs | 42 +- .../object/md-schema/form/template.hbs | 86 ++-- .../components/object/md-schema/template.hbs | 84 ++-- .../object/md-source/preview/template.hbs | 6 +- .../object/md-spatial-info/template.hbs | 61 +-- .../object/md-spatial-resolution/template.hbs | 92 ++-- .../components/object/md-srs/template.hbs | 42 +- .../classification/taxon/template.hbs | 228 +++++----- .../md-taxonomy/classification/template.hbs | 10 +- .../collection/system/preview/template.hbs | 12 +- .../collection/system/template.hbs | 24 +- .../md-taxonomy/collection/template.hbs | 69 +-- .../collection/voucher/template.hbs | 21 +- .../object/md-taxonomy/template.hbs | 74 ++-- .../object/md-time-period/template.hbs | 94 ++--- .../object/md-transfer/preview/template.hbs | 20 +- .../object/md-transfer/template.hbs | 219 +++++----- app/pods/contact/new/id/template.hbs | 153 ++++--- app/pods/contact/new/index/template.hbs | 2 +- app/pods/contact/show/edit/template.hbs | 201 +++++---- app/pods/contact/show/index/template.hbs | 355 +++++++++------- app/pods/contact/show/template.hbs | 2 +- app/pods/contact/template.hbs | 2 +- app/pods/contacts/template.hbs | 39 +- app/pods/dashboard/template.hbs | 6 +- app/pods/dictionaries/template.hbs | 39 +- app/pods/dictionary/new/id/template.hbs | 112 +++-- app/pods/dictionary/new/index/template.hbs | 2 +- .../edit/citation/identifier/template.hbs | 32 +- .../show/edit/citation/index/template.hbs | 20 +- .../show/edit/citation/template.hbs | 8 +- .../edit/citation/identifier/template.hbs | 32 +- .../domain/edit/citation/index/template.hbs | 33 +- .../edit/domain/edit/citation/template.hbs | 2 +- .../show/edit/domain/edit/index/template.hbs | 36 +- .../show/edit/domain/edit/item/template.hbs | 32 +- .../show/edit/domain/edit/template.hbs | 2 +- .../show/edit/domain/index/template.hbs | 16 +- .../dictionary/show/edit/domain/template.hbs | 8 +- .../entity/edit/attribute/index/template.hbs | 34 +- .../edit/citation/identifier/template.hbs | 31 +- .../entity/edit/citation/index/template.hbs | 31 +- .../edit/entity/edit/citation/template.hbs | 2 +- .../show/edit/entity/edit/index/template.hbs | 36 +- .../show/edit/entity/edit/template.hbs | 2 +- .../show/edit/entity/import/template.hbs | 274 ++++++------ .../show/edit/entity/index/template.hbs | 29 +- .../dictionary/show/edit/entity/template.hbs | 8 +- .../dictionary/show/edit/index/template.hbs | 103 +++-- app/pods/dictionary/show/edit/template.hbs | 48 ++- app/pods/dictionary/show/index/template.hbs | 358 +++++++++------- app/pods/dictionary/show/template.hbs | 5 +- app/pods/dictionary/template.hbs | 2 +- app/pods/error/template.hbs | 12 +- app/pods/export/template.hbs | 126 +++--- app/pods/help/template.hbs | 2 +- app/pods/import/template.hbs | 158 ++++--- app/pods/not-found/template.hbs | 9 +- app/pods/publish/index/template.hbs | 49 ++- app/pods/record/index/template.hbs | 2 +- app/pods/record/nav/template.hbs | 14 +- app/pods/record/new/id/template.hbs | 113 ++--- app/pods/record/new/index/template.hbs | 2 +- .../show/edit/associated/index/template.hbs | 16 +- .../associated/resource/index/template.hbs | 46 +- .../edit/associated/resource/template.hbs | 2 +- .../record/show/edit/associated/template.hbs | 8 +- .../show/edit/constraint/index/template.hbs | 15 +- .../record/show/edit/constraint/template.hbs | 8 +- .../record/show/edit/coverages/template.hbs | 31 +- .../edit/dataquality/edit/index/template.hbs | 26 +- .../show/edit/dataquality/edit/template.hbs | 2 +- .../show/edit/dataquality/index/template.hbs | 14 +- .../record/show/edit/dataquality/template.hbs | 6 +- .../record/show/edit/dictionary/template.hbs | 92 ++-- .../distributor/index/template.hbs | 47 ++- .../distribution/distributor/template.hbs | 2 +- .../distributor/transfer/template.hbs | 46 +- .../show/edit/distribution/index/template.hbs | 41 +- .../show/edit/distribution/template.hbs | 8 +- .../documents/citation/index/template.hbs | 27 +- .../show/edit/documents/citation/template.hbs | 2 +- .../show/edit/documents/index/template.hbs | 14 +- .../record/show/edit/documents/template.hbs | 8 +- .../show/edit/extent/spatial/template.hbs | 34 +- app/pods/record/show/edit/extent/template.hbs | 2 +- .../show/edit/funding/allocation/template.hbs | 25 +- .../show/edit/funding/index/template.hbs | 45 +- .../record/show/edit/funding/template.hbs | 8 +- app/pods/record/show/edit/grid/template.hbs | 31 +- app/pods/record/show/edit/index/template.hbs | 2 +- .../show/edit/keywords/index/template.hbs | 137 +++--- .../record/show/edit/keywords/template.hbs | 2 +- .../show/edit/keywords/thesaurus/template.hbs | 84 ++-- .../show/edit/lineage/index/template.hbs | 16 +- .../citation/identifier/template.hbs | 32 +- .../lineageobject/citation/index/template.hbs | 39 +- .../lineageobject/citation/template.hbs | 2 +- .../lineage/lineageobject/index/template.hbs | 32 +- .../lineageobject/source/index/template.hbs | 34 +- .../lineage/lineageobject/source/template.hbs | 2 +- .../lineageobject/step/citation/template.hbs | 40 +- .../lineageobject/step/index/template.hbs | 27 +- .../lineage/lineageobject/step/template.hbs | 2 +- .../edit/lineage/lineageobject/template.hbs | 2 +- .../record/show/edit/lineage/template.hbs | 8 +- .../main/citation/identifier/template.hbs | 32 +- .../edit/main/citation/index/template.hbs | 40 +- .../show/edit/main/citation/template.hbs | 2 +- .../record/show/edit/main/index/template.hbs | 317 ++++++++------ app/pods/record/show/edit/main/template.hbs | 2 +- .../alternate/identifier/template.hbs | 34 +- .../metadata/alternate/index/template.hbs | 42 +- .../show/edit/metadata/alternate/template.hbs | 2 +- .../edit/metadata/identifier/template.hbs | 32 +- .../show/edit/metadata/index/template.hbs | 229 +++++----- .../metadata/parent/identifier/template.hbs | 33 +- .../edit/metadata/parent/index/template.hbs | 41 +- .../show/edit/metadata/parent/template.hbs | 2 +- .../record/show/edit/metadata/template.hbs | 2 +- .../show/edit/spatial/index/template.hbs | 10 +- .../spatial/raster/attribute/template.hbs | 49 ++- .../edit/spatial/raster/index/template.hbs | 34 +- .../show/edit/spatial/raster/template.hbs | 6 +- .../record/show/edit/spatial/template.hbs | 6 +- .../taxonomy/collection/index/template.hbs | 55 ++- .../taxonomy/collection/itis/template.hbs | 17 +- .../collection/system/index/template.hbs | 38 +- .../edit/taxonomy/collection/template.hbs | 2 +- .../show/edit/taxonomy/index/template.hbs | 46 +- .../record/show/edit/taxonomy/template.hbs | 8 +- app/pods/record/show/edit/template.hbs | 52 ++- app/pods/record/show/index/template.hbs | 264 +++++++----- app/pods/record/show/nav/template.hbs | 28 +- app/pods/record/show/template.hbs | 5 +- app/pods/record/show/translate/template.hbs | 24 +- app/pods/record/template.hbs | 2 +- app/pods/records/template.hbs | 31 +- app/pods/save/template.hbs | 2 +- app/pods/settings/index/template.hbs | 2 +- app/pods/settings/main/template.hbs | 397 +++++++++--------- app/pods/settings/profile/index/template.hbs | 94 +++-- app/pods/settings/profile/manage/template.hbs | 148 ++++--- app/pods/settings/profile/template.hbs | 2 +- app/pods/settings/template.hbs | 23 +- app/pods/settings/validation/template.hbs | 90 ++-- app/pods/translate/template.hbs | 31 +- app/templates/application.hbs | 3 +- app/templates/head.hbs | 8 +- app/templates/nav-secondary.hbs | 2 +- package.json | 5 +- yarn.lock | 369 ++++++++++------ 273 files changed, 8128 insertions(+), 6029 deletions(-) diff --git a/.template-lintrc.js b/.template-lintrc.js index f35f61c7b..79da042f8 100644 --- a/.template-lintrc.js +++ b/.template-lintrc.js @@ -1,5 +1,7 @@ 'use strict'; module.exports = { - extends: 'recommended', + plugins: ["ember-template-lint-plugin-prettier"], + + extends: ["recommended", "ember-template-lint-plugin-prettier:recommended"] }; diff --git a/app/pods/components/control/md-alert-table/template.hbs b/app/pods/components/control/md-alert-table/template.hbs index 107bf85ee..c0c0395f6 100644 --- a/app/pods/components/control/md-alert-table/template.hbs +++ b/app/pods/components/control/md-alert-table/template.hbs @@ -1,19 +1,26 @@ -

No {{title}} found. - {{yield}}

-{{#if tipMessage}} - - {{fa-icon tipIcon}} - {{#ember-tooltip - side="right" - tooltipClass=(concat "ember-tooltip md-tooltip " tipType) - }} - {{tipMessage}} - {{/ember-tooltip}} - -{{/if}} -

+ {{#if tipMessage}} + + {{fa-icon tipIcon}} + {{#ember-tooltip + side='right' tooltipClass=(concat 'ember-tooltip md-tooltip ' tipType) + }} + {{tipMessage}} + {{/ember-tooltip}} + + {{/if}} + \ No newline at end of file diff --git a/app/pods/components/control/md-button-confirm/template.hbs b/app/pods/components/control/md-button-confirm/template.hbs index de3661a82..2a1cc1f6d 100644 --- a/app/pods/components/control/md-button-confirm/template.hbs +++ b/app/pods/components/control/md-button-confirm/template.hbs @@ -1,11 +1,16 @@ -{{#liquid-if isShowingConfirm use="toDown"}} - Confirm +{{#liquid-if isShowingConfirm use='toDown'}} + + Confirm {{else}} {{yield}} {{/liquid-if}} {{#if isShowingConfirm}} {{#if tooltip}} - {{ember-tooltip tooltipClass=(concat "ember-tooltip md-tooltip " tipClass) text=tooltip side=tipSide}} + {{ember-tooltip + tooltipClass=(concat 'ember-tooltip md-tooltip ' tipClass) + text=tooltip + side=tipSide + }} {{/if}} -{{/if}} +{{/if}} \ No newline at end of file diff --git a/app/pods/components/control/md-button-modal/template.hbs b/app/pods/components/control/md-button-modal/template.hbs index ad797e187..b68e462a4 100644 --- a/app/pods/components/control/md-button-modal/template.hbs +++ b/app/pods/components/control/md-button-modal/template.hbs @@ -1,13 +1,21 @@ {{yield}} - {{#control/md-modal - isShowing = isShowingModal - closeModal=(action "cancel") - target=target - renderInPlace=renderInPlace - }} - {{html-safe message}} -
- - -
- {{/control/md-modal}} +{{#control/md-modal + isShowing=isShowingModal + closeModal=(action 'cancel') + target=target + renderInPlace=renderInPlace +}} + {{html-safe message}} +
+ + +
+{{/control/md-modal}} \ No newline at end of file diff --git a/app/pods/components/control/md-button/template.hbs b/app/pods/components/control/md-button/template.hbs index 9ad07e7f9..855d072ec 100644 --- a/app/pods/components/control/md-button/template.hbs +++ b/app/pods/components/control/md-button/template.hbs @@ -8,5 +8,9 @@ {{/if}} {{#if tooltip}} - {{ember-tooltip tooltipClass=(concat "ember-tooltip md-tooltip " tipClass) text=tooltip side=tipSide}} -{{/if}} + {{ember-tooltip + tooltipClass=(concat 'ember-tooltip md-tooltip ' tipClass) + text=tooltip + side=tipSide + }} +{{/if}} \ No newline at end of file diff --git a/app/pods/components/control/md-contact-title/template.hbs b/app/pods/components/control/md-contact-title/template.hbs index ff67fa70a..0a9916a59 100644 --- a/app/pods/components/control/md-contact-title/template.hbs +++ b/app/pods/components/control/md-contact-title/template.hbs @@ -2,4 +2,4 @@ {{yield contact}} {{else}} {{if contact contact.title default}} -{{/if}} +{{/if}} \ No newline at end of file diff --git a/app/pods/components/control/md-crud-buttons/template.hbs b/app/pods/components/control/md-crud-buttons/template.hbs index d99d2872c..bc158ffd3 100644 --- a/app/pods/components/control/md-crud-buttons/template.hbs +++ b/app/pods/components/control/md-crud-buttons/template.hbs @@ -1,25 +1,49 @@ -
+
{{#if doSave}} - - + + {{/if}} {{#if showCopy}} - {{/if}} {{#if showDelete}} - {{#control/md-button-confirm class="btn btn-lg btn-danger" onConfirm=(action "delete") tooltip="Permanently delete this record?" tipClass="danger"}} - Delete + {{#control/md-button-confirm + class='btn btn-lg btn-danger' + onConfirm=(action 'delete') + tooltip='Permanently delete this record?' + tipClass='danger' + }} + + Delete {{/control/md-button-confirm}} {{/if}} {{yield}} - {{ember-tooltip tooltipClass="ember-tooltip md-tooltip primary" - text="Manage the record" side="top"}} -
+ {{ember-tooltip + tooltipClass='ember-tooltip md-tooltip primary' + text='Manage the record' + side='top' + }} +
\ No newline at end of file diff --git a/app/pods/components/control/md-definition/template.hbs b/app/pods/components/control/md-definition/template.hbs index 92bdb45ef..51c46d3c8 100644 --- a/app/pods/components/control/md-definition/template.hbs +++ b/app/pods/components/control/md-definition/template.hbs @@ -1,4 +1,4 @@ -
{{if title title "--"}}
+
{{if title title '--'}}
{{#if hasBlock}} {{yield}} @@ -6,7 +6,7 @@ {{#if text}} {{text}} {{else}} - {{empty}} + {{empty}} {{/if}} {{/if}} -
+ \ No newline at end of file diff --git a/app/pods/components/control/md-edit-table/template.hbs b/app/pods/components/control/md-edit-table/template.hbs index c1d47a1f6..3a635b7ec 100644 --- a/app/pods/components/control/md-edit-table/template.hbs +++ b/app/pods/components/control/md-edit-table/template.hbs @@ -1,5 +1,5 @@ {{control/md-record-table - class="md-edit-table" + class='md-edit-table' actionsColumn=actionsColumn selectRowOnClick=selectRowOnClick data=data @@ -7,5 +7,9 @@ expandedItems=expandedItems columnSets=columnSets pageSize=pageSize - expandedRowComponent=(component "md-models-table/components/row-body" spotlighted=spotlightRow rowBodyComponent=rowBodyComponent) -}} + expandedRowComponent=(component + 'md-models-table/components/row-body' + spotlighted=spotlightRow + rowBodyComponent=rowBodyComponent + ) +}} \ No newline at end of file diff --git a/app/pods/components/control/md-errors/template.hbs b/app/pods/components/control/md-errors/template.hbs index fb99b337c..73db4f915 100644 --- a/app/pods/components/control/md-errors/template.hbs +++ b/app/pods/components/control/md-errors/template.hbs @@ -1,21 +1,26 @@ {{#each errors as |error|}}

{{error.title}}

-
    +
      {{#each error.errors as |err idx|}} -
    • -
      -
      - {{idx}} +
    • +
      +
      + {{idx}}
      -
      -

      {{err.message}}

      {{err.dataPath}} +
      +

      {{err.message}}

      + {{err.dataPath}}
    • {{/each}} -
    -
+ + {{/each}} -{{yield}} +{{yield}} \ No newline at end of file diff --git a/app/pods/components/control/md-import-csv/template.hbs b/app/pods/components/control/md-import-csv/template.hbs index ba898de85..75f05c1ef 100644 --- a/app/pods/components/control/md-import-csv/template.hbs +++ b/app/pods/components/control/md-import-csv/template.hbs @@ -1,25 +1,34 @@ {{#if isProcessing}} -

{{fa-icon "spinner" spin=true}} Processing... - +

{{fa-icon 'spinner' spin=true}} + Processing... +

-
-
- {{progress}}% Complete +
+
+ {{progress}}% Complete
{{else}} {{#file-picker - class="md-file-picker md-import-picker" - fileLoaded="readData" + class='md-file-picker md-import-picker' + fileLoaded='readData' preview=false - accept=".csv,.txt" - readAs="readAsText" + accept='.csv,.txt' + readAs='readAsText' }} - {{/file-picker}} {{!--
@@ -45,4 +54,4 @@
--}} -{{/if}} +{{/if}} \ No newline at end of file diff --git a/app/pods/components/control/md-indicator/related/template.hbs b/app/pods/components/control/md-indicator/related/template.hbs index 4f401bf0b..d81f0ef74 100644 --- a/app/pods/components/control/md-indicator/related/template.hbs +++ b/app/pods/components/control/md-indicator/related/template.hbs @@ -15,11 +15,13 @@

{{#if route}} {{#if models.length}} - {{#link-to route=route models=models class=(concat "btn btn-sm btn-" type)}} + {{#link-to + route=route models=models class=(concat 'btn btn-sm btn-' type) + }} {{linkText}} {{/link-to}} {{else}} - {{#link-to route class=(concat "btn btn-sm btn-" type)}} + {{#link-to route class=(concat 'btn btn-sm btn-' type)}} {{linkText}} {{/link-to}} {{/if}} diff --git a/app/pods/components/control/md-indicator/template.hbs b/app/pods/components/control/md-indicator/template.hbs index c91cec5f1..6975e46a7 100644 --- a/app/pods/components/control/md-indicator/template.hbs +++ b/app/pods/components/control/md-indicator/template.hbs @@ -3,11 +3,11 @@ {{#ember-popover popoverHideDelay=popoverHideDelay popperContainer=popperContainer - tooltipClass=(concat "md-tooltip " type) + tooltipClass=(concat 'md-tooltip ' type) event=event }} {{#if title}} -

+

{{#if icon}} {{fa-icon icon}} {{/if}} @@ -16,4 +16,4 @@ {{/if}} {{interpolated}} {{yield}} -{{/ember-popover}} +{{/ember-popover}} \ No newline at end of file diff --git a/app/pods/components/control/md-itis/template.hbs b/app/pods/components/control/md-itis/template.hbs index 93ab7e6e7..185ed847b 100644 --- a/app/pods/components/control/md-itis/template.hbs +++ b/app/pods/components/control/md-itis/template.hbs @@ -1,39 +1,45 @@ -{{#layout/md-card - spotlightEnabled=false - block=false -}} -
-
- - {{input/md-input - value=this.searchString - placeholder="Search ITIS using common name, scientific name, or TSN" - }} +{{#layout/md-card spotlightEnabled=false block=false}} +
+
+ + {{input/md-input + value=this.searchString + placeholder='Search ITIS using common name, scientific name, or TSN' + }}
-
- +
+ {{input/md-select - value=this.kingdom - valuePath="kingdomName" - namePath="title" - objectArray=(sort-by "title" itis.kingdoms.kingdomNames) - searchEnabled=false - tooltip=true - allowClear=true - tooltipPath="kingdomName" - disabled=(if searchString false true) - placeholder="Select a kingdom." + value=this.kingdom + valuePath='kingdomName' + namePath='title' + objectArray=(sort-by 'title' itis.kingdoms.kingdomNames) + searchEnabled=false + tooltip=true + allowClear=true + tooltipPath='kingdomName' + disabled=(if searchString false true) + placeholder='Select a kingdom.' }}
- -
-{{/liquid-if}} +{{/liquid-if}} \ No newline at end of file diff --git a/app/pods/components/control/md-json-button/template.hbs b/app/pods/components/control/md-json-button/template.hbs index 01f7d440a..293fa019f 100644 --- a/app/pods/components/control/md-json-button/template.hbs +++ b/app/pods/components/control/md-json-button/template.hbs @@ -1,22 +1,20 @@ {{#if hasBlock}} {{yield}} {{else}} - {{text}} + + {{text}} {{/if}} {{#if preview}} - {{control/md-json-viewer json=json modal=true close=(action "close")}} + {{control/md-json-viewer json=json modal=true close=(action 'close')}} {{/if}} {{#unless hideSlider}} {{to-elsewhere - named="md-slider-json" + named='md-slider-json' send=(hash - title=(concat "Viewing JSON for: " title) - body=(component "control/md-json-viewer" - modal=false - json=json - ) + title=(concat 'Viewing JSON for: ' title) + body=(component 'control/md-json-viewer' modal=false json=json) ) }} -{{/unless}} +{{/unless}} \ No newline at end of file diff --git a/app/pods/components/control/md-json-viewer/template.hbs b/app/pods/components/control/md-json-viewer/template.hbs index 018b94618..3d50ddb86 100644 --- a/app/pods/components/control/md-json-viewer/template.hbs +++ b/app/pods/components/control/md-json-viewer/template.hbs @@ -1,34 +1,67 @@ {{#if modal}} {{#modal-dialog - onClose=(action "closeModal") - translucentOverlay=true - containerClass="md-jsmodal-container" - overlayClass="md-modal-overlay" - attachment="top center" - targetAttachment="top center" - tetherTarget="html" + onClose=(action 'closeModal') + translucentOverlay=true + containerClass='md-jsmodal-container' + overlayClass='md-modal-overlay' + attachment='top center' + targetAttachment='top center' + tetherTarget='html' }} - -
+
{{/modal-dialog}} {{else}} -
-
-
- - +
+
+
+ +
-
- - +
+ +
-
+
-{{/if}} +{{/if}} \ No newline at end of file diff --git a/app/pods/components/control/md-modal/template.hbs b/app/pods/components/control/md-modal/template.hbs index e07119407..30da448ca 100644 --- a/app/pods/components/control/md-modal/template.hbs +++ b/app/pods/components/control/md-modal/template.hbs @@ -1,31 +1,45 @@ {{#if this.isShowing}} {{#modal-dialog - onClose=(action "closeModal") - targetAttachment="middle center" - attachment="middle center" - translucentOverlay=true - containerClass="md-modal-container" - overlayClass="md-modal-overlay" - tetherTarget=target - renderInPlace=renderInPlace - tagName="div" + onClose=(action 'closeModal') + targetAttachment='middle center' + attachment='middle center' + translucentOverlay=true + containerClass='md-modal-container' + overlayClass='md-modal-overlay' + tetherTarget=target + renderInPlace=renderInPlace + tagName='div' }} - -
- {{yield}} {{html-safe message}} +
+ {{yield}} + {{html-safe message}}
-
+
{{#if showConfirm}} - + {{/if}} {{#if showCancel}} - + {{/if}}
{{/modal-dialog}} -{{/if}} +{{/if}} \ No newline at end of file diff --git a/app/pods/components/control/md-record-table/buttons/custom/template.hbs b/app/pods/components/control/md-record-table/buttons/custom/template.hbs index e3aa65a11..ad8f2aa53 100644 --- a/app/pods/components/control/md-record-table/buttons/custom/template.hbs +++ b/app/pods/components/control/md-record-table/buttons/custom/template.hbs @@ -1,5 +1,10 @@ {{#with column.buttonConfig as |c|}} - -{{/with}} +{{/with}} \ No newline at end of file diff --git a/app/pods/components/control/md-record-table/buttons/filter/template.hbs b/app/pods/components/control/md-record-table/buttons/filter/template.hbs index 5faf58f2d..88c44ed97 100644 --- a/app/pods/components/control/md-record-table/buttons/filter/template.hbs +++ b/app/pods/components/control/md-record-table/buttons/filter/template.hbs @@ -1,5 +1,9 @@ {{#if showButton}} - {{#control/md-button-confirm class="btn btn-danger btn-block" onConfirm=(action "deleteSelected" selectedItems)}} - Delete Selected + {{#control/md-button-confirm + class='btn btn-danger btn-block' + onConfirm=(action 'deleteSelected' selectedItems) + }} + + Delete Selected {{/control/md-button-confirm}} -{{/if}} +{{/if}} \ No newline at end of file diff --git a/app/pods/components/control/md-record-table/buttons/show/template.hbs b/app/pods/components/control/md-record-table/buttons/show/template.hbs index 4829144f2..ed3f0adb0 100644 --- a/app/pods/components/control/md-record-table/buttons/show/template.hbs +++ b/app/pods/components/control/md-record-table/buttons/show/template.hbs @@ -1,3 +1,8 @@ -{{#link-to (concat record.constructor.modelName ".show") record.id class="btn btn-sm btn-info"}} - {{fa-icon "eye"}} Show -{{/link-to}} +{{#link-to + (concat record.constructor.modelName '.show') + record.id + class='btn btn-sm btn-info' +}} + {{fa-icon 'eye'}} + Show +{{/link-to}} \ No newline at end of file diff --git a/app/pods/components/control/md-record-table/buttons/template.hbs b/app/pods/components/control/md-record-table/buttons/template.hbs index 78375f7e7..33494f15c 100644 --- a/app/pods/components/control/md-record-table/buttons/template.hbs +++ b/app/pods/components/control/md-record-table/buttons/template.hbs @@ -1,9 +1,18 @@ {{control/md-record-table/buttons/show record=record}} - -{{#control/md-button-confirm class="btn btn-sm btn-danger" onConfirm=(action "deleteItem" record index isSelected clickOnRow)}} - Delete +{{#control/md-button-confirm + class='btn btn-sm btn-danger' + onConfirm=(action 'deleteItem' record index isSelected clickOnRow) +}} + + Delete {{/control/md-button-confirm}} {{!-- {{#control/md-button-modal class="btn btn-sm btn-danger" message="

Do you really want to delete this contact?

Be sure this contact is @@ -11,11 +20,15 @@ not referenced by a metadata record or dictionary or it's deletion may cause those records to fail validation." onConfirm=(route-action "deleteItem" record)}} Delete {{/control/md-button-modal}} --}} -{{control/md-json-button class="btn-sm btn-primary" json=record.cleanJson title=record.title}} +{{control/md-json-button + class='btn-sm btn-primary' + json=record.cleanJson + title=record.title +}} {{control/md-status model=record isBtn=true hideSlider=true - showSlider=(action "showSlider" record) + showSlider=(action 'showSlider' record) }} -{{yield}} +{{yield}} \ No newline at end of file diff --git a/app/pods/components/control/md-repo-link/template.hbs b/app/pods/components/control/md-repo-link/template.hbs index 43063d142..358cc9307 100644 --- a/app/pods/components/control/md-repo-link/template.hbs +++ b/app/pods/components/control/md-repo-link/template.hbs @@ -1,5 +1,5 @@ {{#if hasBlock}} {{yield}} {{else}} - {{version}}{{fa-icon "github"}} -{{/if}} + {{version}}{{fa-icon 'github'}} +{{/if}} \ No newline at end of file diff --git a/app/pods/components/control/md-scroll-spy/template.hbs b/app/pods/components/control/md-scroll-spy/template.hbs index 4fdb08eba..9f22348fd 100644 --- a/app/pods/components/control/md-scroll-spy/template.hbs +++ b/app/pods/components/control/md-scroll-spy/template.hbs @@ -1,10 +1,10 @@ {{#if setScrollTo}} -
\ No newline at end of file diff --git a/app/pods/components/control/subbar-importcsv/template.hbs b/app/pods/components/control/subbar-importcsv/template.hbs index 5c3c892b4..9c86e6716 100644 --- a/app/pods/components/control/subbar-importcsv/template.hbs +++ b/app/pods/components/control/subbar-importcsv/template.hbs @@ -1,5 +1,15 @@ - - -{{yield}} + + +{{yield}} \ No newline at end of file diff --git a/app/pods/components/control/subbar-link/template.hbs b/app/pods/components/control/subbar-link/template.hbs index e965d6649..d07276ef0 100644 --- a/app/pods/components/control/subbar-link/template.hbs +++ b/app/pods/components/control/subbar-link/template.hbs @@ -1,11 +1,26 @@ -
+
{{#if click}} - + {{/if}} {{#if route}} - {{#link-to route class=(concat "btn btn-lg btn-" btnType " btn-block md-btn-responsive") }} {{fa-icon icon}} {{text}}{{/link-to}} + {{#link-to + route + class=(concat 'btn btn-lg btn-' btnType ' btn-block md-btn-responsive') + }} {{fa-icon icon}} {{text}}{{/link-to}} {{/if}} {{yield}} -
+
\ No newline at end of file diff --git a/app/pods/components/control/subbar-spatial/template.hbs b/app/pods/components/control/subbar-spatial/template.hbs index ffd78ba75..2082b9cc0 100644 --- a/app/pods/components/control/subbar-spatial/template.hbs +++ b/app/pods/components/control/subbar-spatial/template.hbs @@ -1,13 +1,38 @@ -
-
- - - -{{#control/md-button-confirm class="btn btn-lg btn-danger btn-block md-btn-responsive" onConfirm=(action "deleteAllFeatures")}} {{fa-icon "times"}} Delete All{{/control/md-button-confirm}} +
+
+ + + + {{#control/md-button-confirm + class='btn btn-lg btn-danger btn-block md-btn-responsive' + onConfirm=(action 'deleteAllFeatures') + }} {{fa-icon 'times'}} Delete All{{/control/md-button-confirm}}
-
- -{{yield}} +{{yield}} \ No newline at end of file diff --git a/app/pods/components/input/md-boolean/template.hbs b/app/pods/components/input/md-boolean/template.hbs index ff42437a1..65329fa24 100644 --- a/app/pods/components/input/md-boolean/template.hbs +++ b/app/pods/components/input/md-boolean/template.hbs @@ -4,10 +4,10 @@ {{control/md-infotip text=placeholder}} {{/if}} {{/if}} -
+
-{{yield}} +{{yield}} \ No newline at end of file diff --git a/app/pods/components/input/md-date-range/template.hbs b/app/pods/components/input/md-date-range/template.hbs index a1ee989bc..0e7986df1 100644 --- a/app/pods/components/input/md-date-range/template.hbs +++ b/app/pods/components/input/md-date-range/template.hbs @@ -1,32 +1,32 @@ - + {{input/md-datetime - class="start" - valuePath="start" + class='start' + valuePath='start' model=this showValidations=true forceDateOutput=true - label="Start Date" + label='Start Date' showClear=true - format="YYYY-MM-DD HH:mm:ss" - placeholder="Enter start dateTime" - profilePath=(concat profilePath ".start") + format='YYYY-MM-DD HH:mm:ss' + placeholder='Enter start dateTime' + profilePath=(concat profilePath '.start') }} {{input/md-datetime - class="end" - valuePath="end" + class='end' + valuePath='end' model=this showValidations=true forceDateOutput=true showClear=true - label="End Date" - format="YYYY-MM-DD HH:mm:ss" - placeholder="Enter end dateTime" - profilePath=(concat profilePath ".end") + label='End Date' + format='YYYY-MM-DD HH:mm:ss' + placeholder='Enter end dateTime' + profilePath=(concat profilePath '.end') }} {{control/md-fiscalyear - start="start" - end="end" + start='start' + end='end' context=this - profilePath=(concat profilePath ".fiscalyear") + profilePath=(concat profilePath '.fiscalyear') }} -{{yield}} +{{yield}} \ No newline at end of file diff --git a/app/pods/components/input/md-input-confirm/template.hbs b/app/pods/components/input/md-input-confirm/template.hbs index f0585bfbb..ceaaf71f9 100644 --- a/app/pods/components/input/md-input-confirm/template.hbs +++ b/app/pods/components/input/md-input-confirm/template.hbs @@ -1,30 +1,30 @@ {{#if label}}{{/if}} -
+
-{{input - value=value - placeholder=placeholder - required=required - type=type - maxlength=maxlength - class=inputClass - disabled=isDisabled - blur=(action "inputBlur") -}} + {{input + value=value + placeholder=placeholder + required=required + type=type + maxlength=maxlength + class=inputClass + disabled=isDisabled + blur=(action 'inputBlur') + }} {{#if disabled}} - - {{#control/md-button-confirm - class="btn btn-warning" - onConfirm=(action "allowEdit") - }} - {{fa-icon "pencil"}} Edit - {{#if confirmTip}} - {{#ember-tooltip}} - {{confirmTip}} - {{/ember-tooltip}} - {{/if}} - {{/control/md-button-confirm}} + + {{#control/md-button-confirm + class='btn btn-warning' onConfirm=(action 'allowEdit') + }} + {{fa-icon 'pencil'}} + Edit + {{#if confirmTip}} + {{#ember-tooltip}} + {{confirmTip}} + {{/ember-tooltip}} + {{/if}} + {{/control/md-button-confirm}} {{/if}}
-{{yield}} +{{yield}} \ No newline at end of file diff --git a/app/pods/components/input/md-input/template.hbs b/app/pods/components/input/md-input/template.hbs index 6942f77bc..3c60deb0c 100644 --- a/app/pods/components/input/md-input/template.hbs +++ b/app/pods/components/input/md-input/template.hbs @@ -1,13 +1,13 @@ {{#if label}} {{#if showInfoTip}} {{control/md-infotip text=placeholder}} {{/if}} {{/if}} -
+
{{input value=value placeholder=placeholder @@ -20,21 +20,25 @@ change=change }} - + {{#if showErrorMessage}} - - {{fa-icon "exclamation-circle"}} - {{#ember-tooltip side="right" tooltipClass="ember-tooltip md-tooltip danger"}} - {{v-get model valuePath "message"}} + + {{fa-icon 'exclamation-circle'}} + {{#ember-tooltip + side='right' tooltipClass='ember-tooltip md-tooltip danger' + }} + {{v-get model valuePath 'message'}} {{/ember-tooltip}} {{/if}} {{#if showWarningMessage}} - - {{fa-icon "exclamation-triangle"}} - {{#ember-tooltip side="right" tooltipClass="ember-tooltip md-tooltip warning"}} - {{v-get model valuePath "warningMessage"}} + + {{fa-icon 'exclamation-triangle'}} + {{#ember-tooltip + side='right' tooltipClass='ember-tooltip md-tooltip warning' + }} + {{v-get model valuePath 'warningMessage'}} {{/ember-tooltip}} {{/if}} diff --git a/app/pods/components/input/md-markdown-area/template.hbs b/app/pods/components/input/md-markdown-area/template.hbs index 55b36b5d8..e53382797 100644 --- a/app/pods/components/input/md-markdown-area/template.hbs +++ b/app/pods/components/input/md-markdown-area/template.hbs @@ -1,18 +1,23 @@ {{#if label}} - + + {{else}} + {{label}} + {{/if}} + {{/if}} -
+
{{simple-mde value=value options=options @@ -23,4 +28,4 @@ currentEditor=editor }}
-{{yield}} +{{yield}} \ No newline at end of file diff --git a/app/pods/components/input/md-select-profile/template.hbs b/app/pods/components/input/md-select-profile/template.hbs index 955e81565..241dfc2bf 100644 --- a/app/pods/components/input/md-select-profile/template.hbs +++ b/app/pods/components/input/md-select-profile/template.hbs @@ -1,20 +1,21 @@ -

- {{input/md-input-confirm - valuePath='json.contactId' - model=this.model - data-spy='Contact ID' - confirmTip='Note! Editing the Contact ID may break links. Be aware.' - placeholder='User assigned Contact ID' - label='Contact ID' - }} + - {{input/md-input - valuePath='json.name' - model=this.model - placeholder=(concat this.model.type ' Name') - label=(concat this.model.type ' Name') - }} + {{#unless this.model.json.isOrganization}} - {{input/md-input - valuePath='json.positionName' - model=this.model - placeholder='Position Name' - label='Position Name' - }} + {{/unless}} - {{input/md-codelist - value=this.model.json.contactType - label='Contact Type' - create=false - tooltip=true - icon=false - mdCodeName='entityType' - placeholder='Select a contact type' - }} + - {{input/md-select-contacts - label='Member Of Organization' - placeholder='Pick organization(s) this contact belongs to' - value=this.model.json.memberOfOrganization - contactType='organizations' - icon=true - tooltip=false - defaultIcon='organizations' - filterId=this.model.json.contactId - }} + - {{object/md-contact-identifier-array - value=this.model.json.externalIdentifier - data-spy='ExternalIdentifiers' - }} + - {{object/md-phone-array value=this.model.json.phone data-spy='Phone'}} + - {{#object/md-simple-array-table - data-spy='E-mail' - title='E-mail Address' - required=false - value=this.model.json.electronicMailAddress + - {{input/md-input - value=email.item.value - placeholder='Enter valid e-mail address' - }} + - {{/object/md-simple-array-table}} + - {{object/md-address model=this.model.json.address data-spy='Address'}} + - {{object/md-online-resource-array - model=this.model.json.onlineResource - profilePath='contact' - data-spy='Online Resource' - }} + - {{object/md-graphic-array - model=this.model.json.logoGraphic - data-spy='Logo' - button-text='Add Logo' - label='Logo' - profilePath='contact' - }} + - {{#object/md-simple-array-table - data-spy='Availability' - title='Available Time' - value=this.model.json.hoursOfService + - {{input/md-input - value=hour.item.value - placeholder='Describe time when contact is avaiable' - }} + - {{/object/md-simple-array-table}} + - {{input/md-textarea - value=this.model.json.contactInstructions - data-spy='Instructions' - placeholder='Supplemental Contact Instructions' - label='Contact Instructions' - }} +
- {{control/md-crud-buttons - model=this.model - doSave=(route-action 'saveContact') - doCancel=(route-action 'cancelContact') - doDelete=(route-action 'destroyContact') - doCopy=(route-action 'copyContact') - }} - {{control/md-scroll-spy}} + +
diff --git a/app/pods/contact/show/index/template.hbs b/app/pods/contact/show/index/template.hbs index 98cd9dda0..2f729edb2 100644 --- a/app/pods/contact/show/index/template.hbs +++ b/app/pods/contact/show/index/template.hbs @@ -23,48 +23,60 @@ }} {{/if}} --}} - {{control/md-status model=this.model}} + - {{#layout/md-card - shadow=false muted=true title='Basic Information' bodyIsRow=true - }} +
- {{control/md-definition title='Contact Id' text=this.model.contactId}} - {{control/md-definition title='Contact Name' text=this.model.name}} + + {{#unless this.model.json.isOrganization}} - {{control/md-definition - title='Position' - text=this.model.json.positionName - }} + {{/unless}} - {{control/md-definition - title='Contact Type' - text=this.model.json.contactType - }} - {{control/md-definition - title='Contact Instructions' - text=this.model.json.contactInstructions - }} + +
- {{#control/md-definition title='Organizations'}} + {{#each this.model.json.memberOfOrganization as |orgId|}} - {{control/md-contact-link contactId=orgId}}
+
{{else}} No organizations assigned. {{/each}} - {{/control/md-definition}} +
- {{/layout/md-card}} +
- {{#layout/md-card - shadow=false muted=true title='Phone' class='card-table' - }} +
@@ -81,7 +93,7 @@
{{#if ph.phoneNumber}} {{ph.phoneNumber}} - {{ember-tooltip text='Click to call.'}} + {{else}} -- @@ -97,11 +109,16 @@
- {{/layout/md-card}} +
- {{#layout/md-card shadow=false muted=true title='E-mail' class=''}} + - {{/layout/md-card}} +
- {{#layout/md-card - shadow=false muted=true title='Availability' class='' - }} +
    {{#each this.model.json.hoursOfService as |hours|}}
  • {{hours}}
  • @@ -130,33 +150,37 @@
  • No information provided.
  • {{/each}}
- {{/layout/md-card}} +
- {{#layout/md-card - shadow=false - muted=true - title='Address' - bodyIsRow=this.model.json.address.length - }} + {{#each this.model.json.address as |address|}}
- {{object/md-address/md-address-block item=address}} +
{{else}} No addresses provided. {{/each}} - {{/layout/md-card}} +
- {{#layout/md-card shadow=false muted=true title='Online Resource'}} +
@@ -189,18 +213,18 @@
- {{/layout/md-card}} +
- {{#layout/md-card - shadow=false - muted=true - title='External Identifiers' - bodyIsRow=this.model.json.externalIdentifier.length - }} +
@@ -221,32 +245,34 @@
- {{/layout/md-card}} +
- {{#control/md-crud-buttons - model=this.model - allowCopy=true - allowDelete=true - doDelete=(route-action 'destroyContact') - doCopy=(route-action 'copyContact') - }} - {{#link-to - 'contact.show.edit' this.model.id class='btn btn-lg btn-success' - }} + + {{fa-icon 'pencil'}} - Edit{{/link-to}} - {{/control/md-crud-buttons}} + Edit +
- {{#link-to 'contacts' class='btn btn-lg btn-primary btn-block'}} + {{fa-icon 'list'}} - Show List{{/link-to}} - {{control/md-scroll-spy - scrollInit=this.scrollTo - setScrollTo=(route-action 'setScrollTo') - }} + Show List +
\ No newline at end of file diff --git a/app/pods/contacts/template.hbs b/app/pods/contacts/template.hbs index 31ab12634..c315cbfc5 100644 --- a/app/pods/contacts/template.hbs +++ b/app/pods/contacts/template.hbs @@ -1,32 +1,35 @@

{{fa-icon 'users'}} Contacts

{{#if this.model.length}} - {{#layout/md-card collapsible=true collapsed=false shadow=true}} - {{control/md-record-table - data=this.model - dataColumns=(compute (route-action 'getColumns') this.section.meta.type) - allActions=true - selectProperty='_selectedFromList' - showSlider=(route-action 'showSlider') - }} - {{/layout/md-card}} + + + {{else}}

No Contacts found. - {{#link-to 'contact.new' class='btn btn-success btn-lg'}} + {{fa-icon 'plus'}} Create a Contact - {{/link-to}} +

{{/if}} {{outlet}} {{#if this.errorTarget}} - {{to-elsewhere - named='md-slider-error' - send=(hash + {{/if}} \ No newline at end of file diff --git a/app/pods/dashboard/template.hbs b/app/pods/dashboard/template.hbs index af112c5e6..d039b22c3 100644 --- a/app/pods/dashboard/template.hbs +++ b/app/pods/dashboard/template.hbs @@ -1,9 +1,10 @@
- {{#layout/md-card - class='card-inverse card-primary text-center' block=false - }} +
@@ -15,7 +16,7 @@
- {{#link-to 'records'}} + - {{/link-to}} - {{/layout/md-card}} + +
- {{#layout/md-card - class='card-inverse card-success text-center' block=false - }} +
@@ -43,7 +45,7 @@
- {{#link-to 'contacts'}} + - {{/link-to}} - {{/layout/md-card}} + +
- {{#layout/md-card class='card-inverse card-info text-center' block=false}} +
@@ -69,7 +74,7 @@
- {{#link-to 'dictionaries'}} + - {{/link-to}} - {{/layout/md-card}} + +

diff --git a/app/pods/dictionaries/template.hbs b/app/pods/dictionaries/template.hbs index 5ab18caf9..4f98480ef 100644 --- a/app/pods/dictionaries/template.hbs +++ b/app/pods/dictionaries/template.hbs @@ -1,35 +1,35 @@

{{fa-icon 'book'}} Dictionaries

{{#if this.model.length}} - {{#layout/md-card collapsible=true collapsed=false shadow=true}} - {{control/md-record-table - data=this.model - dataColumns=(compute (route-action 'getColumns')) - allActions=true - selectProperty='_selectedFromList' - showSlider=(route-action 'showSlider') - }} - {{/layout/md-card}} + + + {{else}}

No Dictionaries found. - {{#link-to 'dictionary.new' class='btn btn-success btn-lg'}} + {{fa-icon 'plus'}} Create a Dictionary - {{/link-to}} +

{{/if}} {{outlet}} {{#if this.errorTarget}} - {{to-elsewhere - named='md-slider-error' - send=(hash + {{/if}} \ No newline at end of file diff --git a/app/pods/dictionary/new/id/template.hbs b/app/pods/dictionary/new/id/template.hbs index abb18de58..f9acf9c2d 100644 --- a/app/pods/dictionary/new/id/template.hbs +++ b/app/pods/dictionary/new/id/template.hbs @@ -24,29 +24,29 @@ }}' >Dictionary Title
- {{input/md-input - valuePath='json.dataDictionary.citation.title' - model=this.model - showValidations=true - placeholder='Enter a title for the dictionary' - }} +
- {{input/md-codelist-multi - create=true - tooltip=true - icon=true - disabled=this.disabled - allowClear=true - mdCodeName='scope' - showValidations=true - model=this.model - path='json.dataDictionary.subject' - placeholder='Choose type(s) of resource' - }} +
diff --git a/app/pods/dictionary/show/edit/citation/identifier/template.hbs b/app/pods/dictionary/show/edit/citation/identifier/template.hbs index 08ef86817..68f1ef500 100644 --- a/app/pods/dictionary/show/edit/citation/identifier/template.hbs +++ b/app/pods/dictionary/show/edit/citation/identifier/template.hbs @@ -1,33 +1,33 @@

Editing Identifier: {{this.model.identifier}} - {{control/md-status model=this.parentModel}} +

- {{object/md-identifier - class='' - model=this.model - profilePath='dictionary.citation.identifier' - data-spy='Identifier' - }} + {{outlet}}
-{{to-elsewhere - named='md-subbar-extra' - send=(component + + \ No newline at end of file diff --git a/app/pods/dictionary/show/edit/citation/index/template.hbs b/app/pods/dictionary/show/edit/citation/index/template.hbs index 5a448e254..717da9733 100644 --- a/app/pods/dictionary/show/edit/citation/index/template.hbs +++ b/app/pods/dictionary/show/edit/citation/index/template.hbs @@ -1,22 +1,22 @@

Editing Citation for {{this.model.title}} - {{control/md-status model=this.model}} +

{{#with this.model.json.dataDictionary.citation as |citation|}} - {{object/md-citation - class='' - model=citation - profilePath='dictionary.citation' - editIdentifier=(route-action 'editIdentifier') - }} + {{outlet}} {{/with}} -{{to-elsewhere - named='md-scroll-spy-dict-edit' - send=(component + \ No newline at end of file diff --git a/app/pods/dictionary/show/edit/domain/edit/citation/identifier/template.hbs b/app/pods/dictionary/show/edit/domain/edit/citation/identifier/template.hbs index f4648a5e0..cb569ec11 100644 --- a/app/pods/dictionary/show/edit/domain/edit/citation/identifier/template.hbs +++ b/app/pods/dictionary/show/edit/domain/edit/citation/identifier/template.hbs @@ -1,33 +1,33 @@

Editing Identifier: {{this.model.identifier}} - {{control/md-status model=this.parentModel}} +

- {{object/md-identifier - class='' - model=this.model - profilePath='dictionary.domain.citation.identifier' - data-spy='Identifier' - }} + {{outlet}}
-{{to-elsewhere - named='md-subbar-extra' - send=(component + + \ No newline at end of file diff --git a/app/pods/dictionary/show/edit/domain/edit/citation/index/template.hbs b/app/pods/dictionary/show/edit/domain/edit/citation/index/template.hbs index 3f6ccc31c..f1f5e02bd 100644 --- a/app/pods/dictionary/show/edit/domain/edit/citation/index/template.hbs +++ b/app/pods/dictionary/show/edit/domain/edit/citation/index/template.hbs @@ -1,32 +1,32 @@

Editing Reference for Domain {{this.model.codeName}} - {{control/md-status model=this.parentModel}} +

{{#with this.model.domainReference as |citation|}} - {{object/md-citation - class='' - model=citation - profilePath='dictionary.domain.domainReference' - simpleIdentifier=false - editIdentifier=(route-action 'editIdentifier') - }} + {{outlet}} {{/with}} -{{to-elsewhere - named='md-subbar-extra' - send=(component + + \ No newline at end of file diff --git a/app/pods/dictionary/show/edit/domain/edit/index/template.hbs b/app/pods/dictionary/show/edit/domain/edit/index/template.hbs index e0d2ddd70..50532e31e 100644 --- a/app/pods/dictionary/show/edit/domain/edit/index/template.hbs +++ b/app/pods/dictionary/show/edit/domain/edit/index/template.hbs @@ -6,32 +6,32 @@ #{{this.domainId}} {{/if}} for {{this.parentModel.title}} - {{control/md-status model=this.parentModel}} + -{{object/md-domain - class='' - model=this.model - profilePath='dictionary.domain' - editCitation=(route-action 'editCitation') - editDomainItem=(route-action 'editDomainItem') -}} + -{{to-elsewhere - named='md-subbar-extra' - send=(component + -{{to-elsewhere - named='md-scroll-spy-dict-edit' - send=(component + \ No newline at end of file diff --git a/app/pods/dictionary/show/edit/domain/edit/item/template.hbs b/app/pods/dictionary/show/edit/domain/edit/item/template.hbs index d22fb2459..995e7462e 100644 --- a/app/pods/dictionary/show/edit/domain/edit/item/template.hbs +++ b/app/pods/dictionary/show/edit/domain/edit/item/template.hbs @@ -6,31 +6,31 @@ #{{this.itemId}} {{/if}} {{!-- for {{parentModel.codeName}} --}} - {{control/md-status model=this.parentModel}} + -{{object/md-domainitem - class='' - model=this.model - profilePath='dictionary.domain.domainItem' -}} + -{{to-elsewhere - named='md-subbar-extra' - send=(component + -{{to-elsewhere - named='md-scroll-spy-dict-edit' - send=(component + \ No newline at end of file diff --git a/app/pods/dictionary/show/edit/domain/index/template.hbs b/app/pods/dictionary/show/edit/domain/index/template.hbs index df1a743df..f96c223c8 100644 --- a/app/pods/dictionary/show/edit/domain/index/template.hbs +++ b/app/pods/dictionary/show/edit/domain/index/template.hbs @@ -1,19 +1,19 @@

Editing Domains for {{this.model.title}} - {{control/md-status model=this.model}} +

-{{object/md-objectroute-table - items=this.model.json.dataDictionary.domain - header='Domain' - shadow=true - buttonText='Add Domain' - ellipsis=true - attributes='domainId,codeName,description' - editItem=(route-action 'editDomain') - verticalButtons=true - profilePath='dictionary.domain' - hideIndex=false - condensed=false -}} \ No newline at end of file + \ No newline at end of file diff --git a/app/pods/dictionary/show/edit/entity/edit/attribute/index/template.hbs b/app/pods/dictionary/show/edit/entity/edit/attribute/index/template.hbs index e96a1d9e2..e8b4cab9a 100644 --- a/app/pods/dictionary/show/edit/entity/edit/attribute/index/template.hbs +++ b/app/pods/dictionary/show/edit/entity/edit/attribute/index/template.hbs @@ -6,32 +6,32 @@ #{{this.attributeId}} {{/if}} for {{this.parentModel.title}} - {{control/md-status model=this.parentModel}} + -{{object/md-attribute - class='' - model=this.model - dictionary=this.parentModel.json.dataDictionary - profilePath='dictionary.entity.attribute' -}} + {{! editCitation=(route-action "editCitation") }} -{{to-elsewhere - named='md-subbar-extra' - send=(component + -{{to-elsewhere - named='md-scroll-spy-dict-edit' - send=(component + \ No newline at end of file diff --git a/app/pods/dictionary/show/edit/entity/edit/citation/identifier/template.hbs b/app/pods/dictionary/show/edit/entity/edit/citation/identifier/template.hbs index c2e16f810..1adc07ca2 100644 --- a/app/pods/dictionary/show/edit/entity/edit/citation/identifier/template.hbs +++ b/app/pods/dictionary/show/edit/entity/edit/citation/identifier/template.hbs @@ -1,32 +1,32 @@

Editing Identifier - {{control/md-status model=this.parentModel}} +

- {{object/md-identifier - class='' - model=this.model - profilePath='dictionary.entity.citation.identifier' - data-spy='Identifier' - }} +
-{{to-elsewhere - named='md-subbar-extra' - send=(component + -{{to-elsewhere - named='md-scroll-spy-dict-edit' - send=(component + \ No newline at end of file diff --git a/app/pods/dictionary/show/edit/entity/edit/citation/index/template.hbs b/app/pods/dictionary/show/edit/entity/edit/citation/index/template.hbs index bc6b444ff..47cc8f13f 100644 --- a/app/pods/dictionary/show/edit/entity/edit/citation/index/template.hbs +++ b/app/pods/dictionary/show/edit/entity/edit/citation/index/template.hbs @@ -1,30 +1,30 @@

Editing Reference for {{this.model.title}} - {{control/md-status model=this.model}} +

{{#with this.model as |citation|}} - {{object/md-citation - class='' - model=citation - profilePath='dictionary.entity.entityReference' - editIdentifier=(route-action 'editIdentifier') - }} + {{outlet}} {{/with}} -{{to-elsewhere - named='md-subbar-extra' - send=(component + + \ No newline at end of file diff --git a/app/pods/dictionary/show/edit/entity/edit/index/template.hbs b/app/pods/dictionary/show/edit/entity/edit/index/template.hbs index b1d52a989..25b434847 100644 --- a/app/pods/dictionary/show/edit/entity/edit/index/template.hbs +++ b/app/pods/dictionary/show/edit/entity/edit/index/template.hbs @@ -6,33 +6,33 @@ #{{this.entityId}} {{/if}} for {{this.parentModel.title}} - {{control/md-status model=this.parentModel}} + -{{object/md-entity - class='' - model=this.model - dictionary=this.parentModel.json.dataDictionary - profilePath='dictionary.entity' - editCitation=(route-action 'editCitation') - editAttribute=(route-action 'editAttribute') -}} + -{{to-elsewhere - named='md-subbar-extra' - send=(component + -{{to-elsewhere - named='md-scroll-spy-dict-edit' - send=(component + \ No newline at end of file diff --git a/app/pods/dictionary/show/edit/entity/import/template.hbs b/app/pods/dictionary/show/edit/entity/import/template.hbs index dab604009..301512e77 100644 --- a/app/pods/dictionary/show/edit/entity/import/template.hbs +++ b/app/pods/dictionary/show/edit/entity/import/template.hbs @@ -1,54 +1,54 @@

Generate Entity from CSV

{{#unless this.processed}} - {{control/md-import-csv - beforeFirstChunk=(route-action 'processData') - processChunk=(route-action 'reduceData') - processComplete=(route-action 'processComplete') - }} - {{to-elsewhere - named='md-subbar-extra' - send=(component + + {{else}}
- {{input/md-input - value=this.entity.entityId - placeholder='Enter the identifier for the entity.' - label='Entity Identifier' - data-spy='Identifier' - }} + - {{input/md-input - value=this.entity.codeName - required=true - placeholder='Enter the name used to refer to the entity in schema definitions or application software.' - label='Entity Code Name' - data-spy='Code Name' - }} + - {{input/md-textarea - value=this.entity.definition - required=true - autoresize=true - placeholder='A brief description of the entity.' - label='Entity Definition' - data-spy='Definition' - }} + - {{#layout/md-card - title='Setup' - titleIcon='gear' - collapsible=false - collapsed=false - data-spy='Setup' - shadow=true - }} +
Select options for Attributes
@@ -68,59 +68,59 @@ {{#each-in this.columns as |col row|}} - {{input - type='checkbox' - name='import' - checked=row.import - }} + - {{input - type='text' - value=row.importName + ({{col}}) - {{input/md-codelist - create=true - required=false - tooltip=true - icon=false - disabled=false - allowClear=true - showValidations=false - mdCodeName='dataType' - path='importType' - model=row - placeholder='Choose a data type' - class='inline-block' - }} + - {{input - type='checkbox' - name='hasDomain' - checked=row.hasDomain - }} + ({{row.domain.length}}) - {{input - type='checkbox' - name='allowNull' - checked=row.allowNull - }} + - {{input - type='checkbox' - name='range' - checked=row.range - disabled=row.disableRange - }} + {{#if row.isNumber}} ({{round row.min decimals=2}}/{{round row.max decimals=2}}) {{/if}} @@ -131,9 +131,11 @@ Example - {{#ember-popover - showOn='mouseenter' hideOn='mouseleave' side='left' - }} + {{#each row.example as |ex|}} {{#if (present ex)}} {{ex}} @@ -142,7 +144,7 @@ {{/if}}
{{/each}} - {{/ember-popover}} +
@@ -152,19 +154,19 @@
- {{/layout/md-card}} + {{/unless}} {{#if this.processed}} - {{to-elsewhere - named='md-subbar-extra' - send=(component + {{/if}} {{outlet}} \ No newline at end of file diff --git a/app/pods/dictionary/show/edit/entity/index/template.hbs b/app/pods/dictionary/show/edit/entity/index/template.hbs index 261b26f25..f96dae894 100644 --- a/app/pods/dictionary/show/edit/entity/index/template.hbs +++ b/app/pods/dictionary/show/edit/entity/index/template.hbs @@ -1,30 +1,30 @@

Editing Entities for {{this.model.title}} - {{control/md-status model=this.model}} +

-{{object/md-objectroute-table - items=this.model.json.dataDictionary.entity - header='Entity' - shadow=true - buttonText='Add Entity' - ellipsis=true - attributes='entityId,codeName,definition' - editItem=(route-action 'editEntity') - verticalButtons=true - profilePath='dictionary.entity' - hideIndex=false - condensed=false -}} + -{{to-elsewhere - named='md-subbar-extra' - send=(component + \ No newline at end of file diff --git a/app/pods/dictionary/show/edit/index/template.hbs b/app/pods/dictionary/show/edit/index/template.hbs index fcc5d520f..dd93a4ec3 100644 --- a/app/pods/dictionary/show/edit/index/template.hbs +++ b/app/pods/dictionary/show/edit/index/template.hbs @@ -3,118 +3,118 @@

Editing {{this.model.title}} - {{control/md-status model=this.model}} +

- {{#layout/md-card - title='Basic Information' - collapsible=true - collapsed=false - profilePath='dictionary.main.basicInformation' - data-spy='Basic Information' - required=true - }} - {{input/md-input - value=this.model.title - placeholder='Enter the title for the dictionary.' - label='Title' - required=true - profilePath='dictionary.main.basicInformation.title' - data-spy='Title' - class='md-embedded' - }} + + {{#if (is-array resource.subject)}} - {{input/md-codelist-multi - create=true - label='Subject' - tooltip=true - icon=true - disabled=this.disabled - allowClear=true - mdCodeName='scope' - showValidations=true - model=this.model - path='json.dataDictionary.subject' - placeholder='Choose type(s) of resource' - profilePath='dictionary.main.basicInformation.subject' - data-spy='Subject' - class='md-embedded' - }} + {{/if}} - {{#layout/md-card - title='Responsible Party' - class='md-embedded' - required=true - collapsible=false - collapsed=false - profilePath='dictionary.main.basicInformation.responsibleParty' - data-spy='Responsible Party' - shadow=false - }} + {{! }} - {{object/md-party model=resource.responsibleParty}} - {{/layout/md-card}} + + - {{input/md-markdown-area - value=resource.description - profilePath='dictionary.main.basicInformation.description' - label='Description' - placeholder='Enter text describing the dictionary.' - data-spy='Description' - class='md-embedded' - }} + - {{input/md-boolean - label='Dictionary Included?' - text='Dictionary is included with the resource' - value=resource.dictionaryIncludedWithResource - profilePath='dictionary.main.basicInformation.included' - }} + - {{input/md-input - value=resource.dictionaryFunctionalLanguage - placeholder='Describe the language used in the dictionary, e.g. UML.' - label='Functional Language' - required=false - profilePath='dictionary.main.basicInformation.functionalLanguage' - }} - {{/layout/md-card}} + + - {{#object/md-simple-array-table - title='Recommended Use' - required=false - plain=false - profilePath='dictionary.main.recommendedUse' - value=resource.recommendedUse + - {{input/md-textarea - value=val.item.value - placeholder='Enter a description of how the dictionary should be used.' - }} + - {{/object/md-simple-array-table}} + - {{object/md-locale-array - title='Locale' - data-spy='Locales' - collapsible=true - collapsed=false - required=false - value=resource.locale - profilePath='dictionary.main.locale' - }} + {{/with}} -{{to-elsewhere - named='md-scroll-spy-dict-edit' - send=(component + \ No newline at end of file diff --git a/app/pods/dictionary/show/edit/template.hbs b/app/pods/dictionary/show/edit/template.hbs index 658ac1ef6..9cb25bee4 100644 --- a/app/pods/dictionary/show/edit/template.hbs +++ b/app/pods/dictionary/show/edit/template.hbs @@ -8,34 +8,36 @@ }}
- {{control/md-crud-buttons - model=this.model - doSave=(route-action 'saveDictionary') - doCancel=(route-action 'cancelDictionary') - doDelete=(route-action 'destroyDictionary') - doCopy=(route-action 'copyDictionary') - }} + {{component this.subbar context=(route-action 'getContext')}}
- {{from-elsewhere name='md-subbar-extra'}} + - {{#from-elsewhere name='md-scroll-spy-dict-edit' as |spy|}} + {{component spy offset=145}} - {{/from-elsewhere}} + {{!-- {{control/md-scroll-spy offset=145 scrollInit=scrollTo}} --}}
-{{to-elsewhere - named='dictionary-nav' - send=(component - 'input/md-select-profile' value=this.model.profile record=this.model - ) -}} + {{#if this.model}} - {{to-elsewhere - named='nav-secondary' - send=(component 'layout/md-nav-secondary' model=this.model) - }} + {{/if}} \ No newline at end of file diff --git a/app/pods/dictionary/show/index/template.hbs b/app/pods/dictionary/show/index/template.hbs index 968071709..ea6904f2d 100644 --- a/app/pods/dictionary/show/index/template.hbs +++ b/app/pods/dictionary/show/index/template.hbs @@ -6,38 +6,38 @@ Viewing Dictionary: {{this.model.title}} - {{control/md-status model=this.model}} + - {{#layout/md-card - shadow=false - muted=true - title='Main' - bodyIsRow=false - collapsible=true - btnText='Edit' - btnClass='success' - btnAction=(route-action 'linkTo' 'dictionary.show.edit') - btnIcon='pencil' - data-spy='Main' - }} +
- {{control/md-definition - title='Dictionary Id' - text=this.model.json.dictionaryId - }} - {{control/md-definition - title='Dictionary Title' - text=this.model.title - }} - {{control/md-definition - title='Subject' - text=(if dictionary.subject (join ', ' dictionary.subject)) - }} + + +
- {{#control/md-definition title='Responsible Party'}} + {{#with dictionary.responsibleParty as |party|}} {{html-safe (if party.role party.role 'No Roles assigned.') @@ -45,7 +45,7 @@ ( {{#each party.party as |contact index|}} {{if index ', '}} - {{control/md-contact-link contactId=contact.contactId}} + {{else}} No Contacts assigned. {{/each}} @@ -54,10 +54,10 @@ {{else}} No responsibility assigned. {{/with}} - {{/control/md-definition}} +
- {{#layout/md-card shadow=false muted=true plain=true}} +
Locale
@@ -79,44 +79,44 @@ {{get-property dictionary.locale 'language'}}
- {{/layout/md-card}} +
- {{#layout/md-card - shadow=false - muted=true - title='Description' - collapsible=true - scroll=true - maximizable=true - class='md-embedded' - }} + {{md-markdown dictionary.description 'Description not provided!'}} - {{/layout/md-card}} + - {{/layout/md-card}} +
- {{object/md-citation/preview - profilePath='dictionary.main.citation' - citation=dictionary.citation - muted=true - editCitation=(route-action 'editCitation') - data-spy='Citation' - }} + - {{#layout/md-card - shadow=false - muted=true - title='Domains' - bodyIsRow=false - collapsible=true - btnText='Edit' - btnClass='success' - btnAction=(route-action 'linkTo' 'dictionary.show.edit.domain') - btnIcon='pencil' - data-spy='Domains' - }} + {{#if dictionary.domain}} @@ -137,11 +137,11 @@ - {{/each}} @@ -153,20 +153,20 @@ {{/if}} - {{/layout/md-card}} + - {{#layout/md-card - shadow=false - muted=true - title='Entities' - bodyIsRow=false - collapsible=true - btnText='Edit' - btnClass='success' - btnAction=(route-action 'linkTo' 'dictionary.show.edit.entity') - btnIcon='pencil' - data-spy='Entities' - }} + {{#if dictionary.entity}}
{{#if domain.description}} {{word-limit domain.description}} {{else}} Not Described{{/if}}{{#link-to - 'dictionary.show.edit.domain.edit' - index + + >Edit
@@ -187,11 +187,11 @@ - @@ -204,31 +204,33 @@ {{/if}} - {{/layout/md-card}} + {{/with}}
- {{#control/md-crud-buttons - model=this.model - allowCopy=true - allowDelete=true - doDelete=(route-action 'destroyDictionary') - doCopy=(route-action 'copyDictionary') - }} - {{#link-to - 'dictionary.show.edit' this.model.id class='btn btn-lg btn-success' - }} + + {{fa-icon 'pencil'}} - Edit{{/link-to}} - {{/control/md-crud-buttons}} + Edit +
- {{#link-to 'dictionaries' class='btn btn-lg btn-primary btn-block'}} + {{fa-icon 'list'}} - Show List{{/link-to}} - {{control/md-scroll-spy - scrollInit=this.scrollTo - setScrollTo=(route-action 'setScrollTo') - }} + Show List +
\ No newline at end of file diff --git a/app/pods/dictionary/show/template.hbs b/app/pods/dictionary/show/template.hbs index 2f0629f98..3bcbc0a4b 100644 --- a/app/pods/dictionary/show/template.hbs +++ b/app/pods/dictionary/show/template.hbs @@ -1,6 +1,6 @@ {{outlet}} -{{to-elsewhere - named='nav-main' - send=(component 'layout/nav/dictionary/nav-main' model=this.model) -}} \ No newline at end of file + \ No newline at end of file diff --git a/app/pods/export/template.hbs b/app/pods/export/template.hbs index 81af250d8..96488cb0a 100644 --- a/app/pods/export/template.hbs +++ b/app/pods/export/template.hbs @@ -7,21 +7,24 @@
{{/if}} - {{#layout/md-card - title=section.meta.title - titleIcon=section.meta.icon - collapsible=true - collapsed=false - data-spy=section.meta.title - shadow=true - }} + {{!--

{{section.meta.title}}

--}} - {{control/md-record-table - data=section - dataColumns=(compute (route-action 'getColumns') section.meta.type) - }} + - {{/layout/md-card}} +
{{else}}

{{fa-icon section.meta.icon}} @@ -64,21 +67,21 @@


- {{x-toggle - value=this.model.settings._selected - onToggle=(action (mut this.model.settings._selected)) - showLabels=true - onLabel='Yes' - offLabel='No' - size='medium' - theme='form' - }} +
- {{control/md-scroll-spy - offset=130 - scrollInit=this.scrollTo - setScrollTo=(route-action 'setScrollTo') - }} + {{outlet}} \ No newline at end of file diff --git a/app/pods/import/template.hbs b/app/pods/import/template.hbs index 308f9207b..012662a76 100644 --- a/app/pods/import/template.hbs +++ b/app/pods/import/template.hbs @@ -9,20 +9,20 @@ {{#if this.model.preview}}

{{capitalize (singularize this.model.preview.model.type)}}: {{this.model.preview.model.id}}

- {{control/md-json-viewer - class='md-import-preview' - json=this.model.preview.json - modal=false - }} + {{else}} {{#unless this.model.files}} - {{#file-picker - class='md-file-picker md-import-picker' - fileLoaded='readData' - preview=false - accept='.json,.xml' - readAs='readAsText' - }} + - {{/file-picker}} +

Import mdJSON from Online URL

- {{input - type='url' - value=this.importUri +
--}} - {{#layout/md-card - title=(capitalize key) - titleIcon=(compute (route-action 'getIcon' key)) - collapsible=true - collapsed=false - data-spy=(capitalize key) - shadow=true - }} + {{!--

{{section.meta.title}}

--}} - {{control/md-record-table - data=item - dataColumns=(compute (route-action 'getColumns') key) - actionsColumn=false - selectProperty='meta.export' - showColumnsDropdown=(not-eq key 'settings') - showComponentFooter=(not-eq key 'settings') - showGlobalFilter=(not-eq key 'settings') - showPageSize=(not-eq key 'settings') - useFilteringByColumns=(not-eq key 'settings') - }} - {{/layout/md-card}} + +
{{/each-in}} {{/if}}
@@ -152,22 +152,22 @@ {{action 'cancelImport'}} >{{fa-icon 'times'}} Cancel Import
- {{x-toggle - value=this.model.merge - onToggle=(action (mut this.model.merge)) - showLabels=true - onLabel='Merge' - offLabel='Replace' - size='medium' - theme='default' - }} +

- {{control/md-scroll-spy - offset=130 - scrollInit=this.scrollTo - setScrollTo=(route-action 'setScrollTo') - }} + {{/if}} {{/if}} diff --git a/app/pods/publish/index/template.hbs b/app/pods/publish/index/template.hbs index f7f46d612..64e41af05 100644 --- a/app/pods/publish/index/template.hbs +++ b/app/pods/publish/index/template.hbs @@ -2,7 +2,7 @@
{{#each this.model as |catalog|}} - {{#link-to (concat 'publish.' catalog.route) class='list-group-item'}} +
{{#if catalog.image}} @@ -26,7 +26,7 @@

{{catalog.description}}

- {{/link-to}} +
{{else}}
diff --git a/app/pods/record/nav/template.hbs b/app/pods/record/nav/template.hbs index b1344cff7..57296bbf0 100644 --- a/app/pods/record/nav/template.hbs +++ b/app/pods/record/nav/template.hbs @@ -1,13 +1,13 @@
  • - {{#link-to 'record.show.translate'}} + Translate - {{ember-tooltip - text='Translate' - side='bottom' - tooltipClass='ember-tooltip md-nav-tip' - }} - {{/link-to}} + +
  • {{!--
  • {{#link-to "publish"}} diff --git a/app/pods/record/new/id/template.hbs b/app/pods/record/new/id/template.hbs index 1f2bf8117..7b812aabb 100644 --- a/app/pods/record/new/id/template.hbs +++ b/app/pods/record/new/id/template.hbs @@ -34,12 +34,12 @@ }}' >Record Title
    - {{input/md-input - valuePath='json.metadata.resourceInfo.citation.title' - model=this.model - profilePath='record.new.title' - placeholder='Enter a title for the record' - }} +
  • @@ -47,12 +47,12 @@
    - {{object/md-resource-type-array - plain=true - value=this.model.json.metadata.resourceInfo.resourceType - required=true - profilePath='record.new' - }} +
    diff --git a/app/pods/record/show/edit/associated/index/template.hbs b/app/pods/record/show/edit/associated/index/template.hbs index 0e64022d6..9288a1f75 100644 --- a/app/pods/record/show/edit/associated/index/template.hbs +++ b/app/pods/record/show/edit/associated/index/template.hbs @@ -1,19 +1,19 @@

    Editing Associated Resource - {{control/md-status model=this.parentModel}} +

    -{{object/md-objectroute-table - items=this.model.json.metadata.associatedResource - header='Associated Resource' - shadow=true - buttonText='Add Resource' - ellipsis=this.ellipsis - previewTemplate='object/md-associated/preview' - editItem=(route-action 'editResource') - verticalButtons=true - profilePath='record.associated' - hideIndex=true - condensed=true - addSubbar='md-subbar-extra' -}} \ No newline at end of file + \ No newline at end of file diff --git a/app/pods/record/show/edit/associated/resource/index/template.hbs b/app/pods/record/show/edit/associated/resource/index/template.hbs index 20c436966..3dbead0e9 100644 --- a/app/pods/record/show/edit/associated/resource/index/template.hbs +++ b/app/pods/record/show/edit/associated/resource/index/template.hbs @@ -1,29 +1,29 @@

    Editing Associated Resource #{{this.resourceId}} - {{control/md-status model=this.parentModel}} +

    -{{object/md-associated - model=this.model - recordId=this.parentModel.recordId - profilePath='record.associated' - editLinked=(route-action 'editLinked') -}} + -{{to-elsewhere - named='md-subbar-extra' - send=(component + -{{to-elsewhere - named='md-slider-content' - send=(hash + -{{to-elsewhere - named='md-scroll-spy-record-edit' - send=(component + \ No newline at end of file diff --git a/app/pods/record/show/edit/constraint/index/template.hbs b/app/pods/record/show/edit/constraint/index/template.hbs index f20f617b3..49fb65b03 100644 --- a/app/pods/record/show/edit/constraint/index/template.hbs +++ b/app/pods/record/show/edit/constraint/index/template.hbs @@ -1,16 +1,16 @@

    Editing Constraints - {{control/md-status model=this.model}} +

    -{{#object/md-object-table - items=this.model.json.metadata.resourceInfo.constraint - collasped=false - header='Constraints' - buttonText='Add Constraint' - previewTemplate=this.previewTemplate - addSubbar='md-subbar-extra' - attributes='type' + + + \ No newline at end of file diff --git a/app/pods/record/show/edit/constraint/template.hbs b/app/pods/record/show/edit/constraint/template.hbs index 1e3e2d217..448a456a5 100644 --- a/app/pods/record/show/edit/constraint/template.hbs +++ b/app/pods/record/show/edit/constraint/template.hbs @@ -1,5 +1,5 @@
    - {{outlet class=''}} +
    \ No newline at end of file diff --git a/app/pods/record/show/edit/coverages/template.hbs b/app/pods/record/show/edit/coverages/template.hbs index d78c35737..a60b87b9d 100644 --- a/app/pods/record/show/edit/coverages/template.hbs +++ b/app/pods/record/show/edit/coverages/template.hbs @@ -4,7 +4,10 @@ .construction { width: 50vh; min-width:240px; font-size:5vh; border: 2vh solid #333333; margin: 10vh auto; padding: 3vh; border-radius: 5vh; } -{{#layout/md-card class='construction card-inverse card-warning' shadow=false}} +
    {{fa-icon 'exclamation-triangle' size=2}} @@ -13,4 +16,4 @@ Page Under
    Construction
    -{{/layout/md-card}} \ No newline at end of file +
    \ No newline at end of file diff --git a/app/pods/record/show/edit/dataquality/edit/index/template.hbs b/app/pods/record/show/edit/dataquality/edit/index/template.hbs index 7be2ca3f4..5a515a277 100644 --- a/app/pods/record/show/edit/dataquality/edit/index/template.hbs +++ b/app/pods/record/show/edit/dataquality/edit/index/template.hbs @@ -1,24 +1,27 @@

    Editing Data Quality #{{this.dataQualityId}} - {{control/md-status model=this.parentModel}} +

    -{{object/md-dataquality model=this.model profilePath='record.dataquality'}} + -{{to-elsewhere - named='md-subbar-extra' - send=(component + + \ No newline at end of file diff --git a/app/pods/record/show/edit/dataquality/index/template.hbs b/app/pods/record/show/edit/dataquality/index/template.hbs index 79681e055..6586e73f0 100644 --- a/app/pods/record/show/edit/dataquality/index/template.hbs +++ b/app/pods/record/show/edit/dataquality/index/template.hbs @@ -1,19 +1,19 @@

    Editing Data Quality - {{control/md-status model=this.parentModel}} +

    -{{object/md-objectroute-table - items=this.model.json.metadata.dataQuality - header='Data Quality' - shadow=true - buttonText='Add Quality Object' - ellipsis=false - previewTemplate='object/md-dataquality/preview' - profilePath='record.dataQuality' - editItem=(route-action 'editDataQuality') - hideIndex=true - condensed=true - verticalButtons=true - addSubbar='md-subbar-extra' -}} \ No newline at end of file + \ No newline at end of file diff --git a/app/pods/record/show/edit/dictionary/template.hbs b/app/pods/record/show/edit/dictionary/template.hbs index ae4c57ff7..4bf560d8b 100644 --- a/app/pods/record/show/edit/dictionary/template.hbs +++ b/app/pods/record/show/edit/dictionary/template.hbs @@ -3,53 +3,56 @@

    {{fa-icon 'book'}} Dictionaries for {{this.parentModel.title}} - {{control/md-status model=this.parentModel}} +

    {{#if this.model.length}} - {{#layout/md-card - collapsible=true - collapsed=false - shadow=true - title='Select Dictionaries' - spotlightEnabled=false - }} - {{control/md-record-table - data=this.model - dataColumns=(compute (route-action 'getColumns')) - select=(route-action 'select') - actionsColumn=false - selectProperty='selected' - selectedItems=this.selected - }} - {{/layout/md-card}} + + + - {{#layout/md-card - collapsible=true - collapsed=false - shadow=true - title='Selected Dictionaries' - class='card-inverse hd-success card-outline-success' - spotlightEnabled=false - }} +
      {{#each this.selected as |item|}}
    • {{item.title}} - {{#control/md-button-confirm - class='btn btn btn-danger pull-right' - onConfirm=(route-action 'remove' item) - }} + Remove - {{/control/md-button-confirm}} +

      {{!--

      {{get-property item "description"}}

      --}}
      - {{control/md-definition title='Subject' text=item.subject}} - {{control/md-definition - title='Description' - text=item.description - }} + +
      {{!
      }}
    • @@ -60,14 +63,14 @@ {{/each}}
    - {{/layout/md-card}} +
    {{else}}

    No Dictionaries found. - {{#link-to 'dictionary.new' class='btn btn-success btn-lg'}} + {{fa-icon 'plus'}} Create a Dictionary - {{/link-to}} +

    {{/if}} diff --git a/app/pods/record/show/edit/distribution/distributor/index/template.hbs b/app/pods/record/show/edit/distribution/distributor/index/template.hbs index eee1a4bc6..a36867ade 100644 --- a/app/pods/record/show/edit/distribution/distributor/index/template.hbs +++ b/app/pods/record/show/edit/distribution/distributor/index/template.hbs @@ -2,43 +2,43 @@ Editing Distributor #{{this.distributorId}} in Distribution #{{this.distributionId}} - {{#control/md-button-confirm - class='btn btn-xs btn-danger' - onConfirm=(route-action 'deleteDistributor') - tooltip='Delete Distributor?' - tipClass='danger' - tipSide='bottom' - }} + {{fa-icon 'times'}} Delete - {{/control/md-button-confirm}} - {{control/md-status model=this.parentModel}} + + -{{object/md-distributor - model=this.model - distributorId=this.distributorId - profilePath='record.distribution.distributor' - editTransferOption=(route-action 'editTransferOption') -}} + -{{to-elsewhere - named='md-subbar-extra' - send=(component + -{{to-elsewhere - named='md-scroll-spy-record-edit' - send=(component + \ No newline at end of file diff --git a/app/pods/record/show/edit/distribution/distributor/transfer/template.hbs b/app/pods/record/show/edit/distribution/distributor/transfer/template.hbs index 301dbfea7..3eada824e 100644 --- a/app/pods/record/show/edit/distribution/distributor/transfer/template.hbs +++ b/app/pods/record/show/edit/distribution/distributor/transfer/template.hbs @@ -3,41 +3,41 @@ Distributor #{{this.distributorId}} in Distribution #{{this.distributionId}} - {{#control/md-button-confirm - class='btn btn-xs btn-danger' - onConfirm=(route-action 'deleteTransfer') - tooltip='Delete Transfer Option?' - tipClass='danger' - tipSide='bottom' - }} + {{fa-icon 'times'}} Delete - {{/control/md-button-confirm}} - {{control/md-status model=this.parentModel}} + + -{{object/md-transfer - model=this.model - profilePath='record.distribution.distributor.transferOption' -}} + -{{to-elsewhere - named='md-subbar-buttons' - send=(component + -{{to-elsewhere - named='md-scroll-spy-record-edit' - send=(component + \ No newline at end of file diff --git a/app/pods/record/show/edit/distribution/index/template.hbs b/app/pods/record/show/edit/distribution/index/template.hbs index 1f182efd9..17e8e578d 100644 --- a/app/pods/record/show/edit/distribution/index/template.hbs +++ b/app/pods/record/show/edit/distribution/index/template.hbs @@ -1,17 +1,17 @@

    Editing Distribution - {{control/md-status model=this.parentModel}} +

    {{#each this.model.json.metadata.resourceDistribution as |dist index|}} - {{object/md-distribution - model=dist - index=index - profilePath='record.distribution' - addDistribution=(route-action 'addDistribution') - deleteDistribution=(route-action 'deleteDistribution') - editDistributor=(route-action 'editDistributor') - }} + {{else}}

    No distribution sections found.

    {{/each}} -{{to-elsewhere - named='md-subbar-buttons' - send=(component + -{{to-elsewhere - named='md-scroll-spy-record-edit' - send=(component + \ No newline at end of file diff --git a/app/pods/record/show/edit/documents/citation/index/template.hbs b/app/pods/record/show/edit/documents/citation/index/template.hbs index 1aa909e25..9a05e5e37 100644 --- a/app/pods/record/show/edit/documents/citation/index/template.hbs +++ b/app/pods/record/show/edit/documents/citation/index/template.hbs @@ -1,25 +1,28 @@

    Editing Additional Document #{{this.citationId}} - {{control/md-status model=this.parentModel}} +

    -{{object/md-documentation model=this.model profilePath='record.documents'}} + -{{to-elsewhere - named='md-subbar-extra' - send=(component + -{{to-elsewhere - named='md-scroll-spy-record-edit' - send=(component + \ No newline at end of file diff --git a/app/pods/record/show/edit/documents/index/template.hbs b/app/pods/record/show/edit/documents/index/template.hbs index ea106d287..5bf1d88ac 100644 --- a/app/pods/record/show/edit/documents/index/template.hbs +++ b/app/pods/record/show/edit/documents/index/template.hbs @@ -1,18 +1,18 @@

    Editing Additional Documentation - {{control/md-status model=this.parentModel}} +

    -{{object/md-objectroute-table - items=this.model.json.metadata.additionalDocumentation - header='Additional Documents' - shadow=true - verticalButtons=true - buttonText='Add Document' - ellipsis=true - previewTemplate='object/md-documentation/preview' - editItem=(route-action 'editDocument') - hideIndex=true - condensed=true - addSubbar='md-subbar-extra' -}} \ No newline at end of file + \ No newline at end of file diff --git a/app/pods/record/show/edit/extent/index/template.hbs b/app/pods/record/show/edit/extent/index/template.hbs index 343a7b5b4..22516dfd0 100644 --- a/app/pods/record/show/edit/extent/index/template.hbs +++ b/app/pods/record/show/edit/extent/index/template.hbs @@ -1,19 +1,19 @@

    Editing Extents - {{control/md-status model=this.model}} +

    {{#each this.model.json.metadata.resourceInfo.extent as |extent index|}} - {{object/md-extent - title='Extent' - extent=extent - index=index - profilePath='record.extent' - deleteExtent=(route-action 'deleteExtent') - editFeatures=(route-action 'editFeatures') - addExtent=(route-action 'addExtent') - }} + {{else}}

    No Extents found.

    @@ -46,20 +46,20 @@
    - {{object/md-keyword-citation - model=thesaurus - profilePath='record.keywords.citation' - }} +
    - {{object/md-keyword-list - model=thesaurus - listId=index - profilePath='record.keywords' - addKeyword=(route-action 'addKeyword') - deleteKeyword=(route-action 'deleteKeyword') - editThesaurus=(route-action 'editThesaurus') - }} +
    {{/with}} @@ -80,23 +80,23 @@ {{outlet}} -{{to-elsewhere - named='md-subbar-extra' - send=(component + -{{to-elsewhere - named='md-scroll-spy-record-edit' - send=(component + \ No newline at end of file diff --git a/app/pods/record/show/edit/keywords/thesaurus/template.hbs b/app/pods/record/show/edit/keywords/thesaurus/template.hbs index fb9eb1663..7d8407092 100644 --- a/app/pods/record/show/edit/keywords/thesaurus/template.hbs +++ b/app/pods/record/show/edit/keywords/thesaurus/template.hbs @@ -27,19 +27,19 @@ class='md-keyword-tree tab-pane fade in active' id='md-keyword-tree' > - {{tree-view - model=this.model.thesaurus.keywords - selected=(get this.model.model (concat this.model.path '.keyword')) - select=(route-action 'selectKeyword') - disableCheck=true - }} +
    @@ -59,21 +59,21 @@ - {{object/md-keyword-list - model=(get this.model.model this.model.path) - deleteKeyword=(route-action 'removeKeyword') - editThesaurus=false - }} + -{{to-elsewhere - named='md-subbar-extra' - send=(component + \ No newline at end of file diff --git a/app/pods/record/show/edit/lineage/index/template.hbs b/app/pods/record/show/edit/lineage/index/template.hbs index f10224e5a..a54e4b8f3 100644 --- a/app/pods/record/show/edit/lineage/index/template.hbs +++ b/app/pods/record/show/edit/lineage/index/template.hbs @@ -1,19 +1,19 @@

    Editing Lineage - {{control/md-status model=this.parentModel}} +

    -{{object/md-objectroute-table - items=this.model.json.metadata.resourceLineage - header='Lineage' - shadow=true - buttonText='Add Lineage Object' - ellipsis=false - previewTemplate='object/md-lineage/preview' - profilePath='record.lineage' - editItem=(route-action 'editLineage') - hideIndex=true - condensed=true - verticalButtons=true - addSubbar='md-subbar-extra' -}} \ No newline at end of file + \ No newline at end of file diff --git a/app/pods/record/show/edit/lineage/lineageobject/citation/identifier/template.hbs b/app/pods/record/show/edit/lineage/lineageobject/citation/identifier/template.hbs index da608e75d..5e9e5acc4 100644 --- a/app/pods/record/show/edit/lineage/lineageobject/citation/identifier/template.hbs +++ b/app/pods/record/show/edit/lineage/lineageobject/citation/identifier/template.hbs @@ -1,32 +1,32 @@

    Editing Alternate Identifier: {{this.model.identifier}} - {{control/md-status model=(compute (route-action 'parentModel'))}} +

    - {{object/md-identifier - model=this.model - profilePath='record.lineage.citation.identifier' - data-spy='Identifier' - }} + {{outlet}}
    -{{to-elsewhere - named='md-subbar-extra' - send=(component + + \ No newline at end of file diff --git a/app/pods/record/show/edit/lineage/lineageobject/citation/index/template.hbs b/app/pods/record/show/edit/lineage/lineageobject/citation/index/template.hbs index 62746fb98..83b3f122f 100644 --- a/app/pods/record/show/edit/lineage/lineageobject/citation/index/template.hbs +++ b/app/pods/record/show/edit/lineage/lineageobject/citation/index/template.hbs @@ -1,30 +1,30 @@

    Editing Citation - {{control/md-status model=(compute (route-action 'parentModel'))}} +

    {{#with this.model as |citation|}}
    - {{object/md-citation - model=citation - profilePath='record.lineage.citation' - editIdentifier=(route-action 'editIdentifier') - }} + {{outlet}}
    {{/with}} -{{to-elsewhere - named='md-subbar-extra' - send=(component + + \ No newline at end of file diff --git a/app/pods/record/show/edit/lineage/lineageobject/index/template.hbs b/app/pods/record/show/edit/lineage/lineageobject/index/template.hbs index 9f248e165..7178f2720 100644 --- a/app/pods/record/show/edit/lineage/lineageobject/index/template.hbs +++ b/app/pods/record/show/edit/lineage/lineageobject/index/template.hbs @@ -1,31 +1,31 @@

    Editing Lineage #{{this.lineageId}} - {{control/md-status model=this.parentModel}} +

    -{{object/md-lineage - model=this.model - profilePath='record.lineage' - ellipsis=true - editCitation=(route-action 'editCitation') - editProcessStep=(route-action 'editProcessStep') - editSource=(route-action 'editSource') -}} + -{{to-elsewhere - named='md-subbar-extra' - send=(component + + \ No newline at end of file diff --git a/app/pods/record/show/edit/lineage/lineageobject/source/index/template.hbs b/app/pods/record/show/edit/lineage/lineageobject/source/index/template.hbs index fbcfeaf85..7cb3e7163 100644 --- a/app/pods/record/show/edit/lineage/lineageobject/source/index/template.hbs +++ b/app/pods/record/show/edit/lineage/lineageobject/source/index/template.hbs @@ -1,26 +1,26 @@

    Editing Source #{{this.sourceId}} - {{control/md-status model=(compute (route-action 'parentModel'))}} +

    {{#with this.model as |source|}}
    - {{object/md-source model=source profilePath='record.lineage.source'}} + {{outlet}}
    {{/with}} -{{to-elsewhere - named='md-subbar-extra' - send=(component + + \ No newline at end of file diff --git a/app/pods/record/show/edit/lineage/lineageobject/step/citation/template.hbs b/app/pods/record/show/edit/lineage/lineageobject/step/citation/template.hbs index 46c5a8206..acef19af6 100644 --- a/app/pods/record/show/edit/lineage/lineageobject/step/citation/template.hbs +++ b/app/pods/record/show/edit/lineage/lineageobject/step/citation/template.hbs @@ -1,31 +1,31 @@

    Editing Step #{{this.stepId}} Citation - {{control/md-status model=(compute (route-action 'parentModel'))}} +

    {{#with this.model as |citation|}}
    - {{object/md-citation - model=citation - profilePath='record.lineage.processStep.reference' - simpleIdentifier=true - }} + {{outlet}}
    {{/with}} -{{to-elsewhere - named='md-subbar-extra' - send=(component + + \ No newline at end of file diff --git a/app/pods/record/show/edit/lineage/lineageobject/step/index/template.hbs b/app/pods/record/show/edit/lineage/lineageobject/step/index/template.hbs index dfe84323f..055c91168 100644 --- a/app/pods/record/show/edit/lineage/lineageobject/step/index/template.hbs +++ b/app/pods/record/show/edit/lineage/lineageobject/step/index/template.hbs @@ -1,29 +1,29 @@

    Editing Process Step #{{this.stepId}} - {{control/md-status model=this.parentModel}} +

    -{{object/md-process-step - model=this.model - profilePath='record.lineage.processStep' - itemId=this.stepId - editCitation=(route-action 'editCitation') -}} + -{{to-elsewhere - named='md-subbar-extra' - send=(component + + \ No newline at end of file diff --git a/app/pods/record/show/edit/main/citation/identifier/template.hbs b/app/pods/record/show/edit/main/citation/identifier/template.hbs index 61e469bd3..52e9e8386 100644 --- a/app/pods/record/show/edit/main/citation/identifier/template.hbs +++ b/app/pods/record/show/edit/main/citation/identifier/template.hbs @@ -1,33 +1,33 @@

    Editing Identifier: {{this.model.identifier}} - {{control/md-status model=this.parentModel}} +

    - {{object/md-identifier - class='col-xxl-11 col-xxxl-10 col-xxl-offset-1' - model=this.model - profilePath='record.main.citation.identifier' - data-spy='Identifier' - }} + {{outlet}}
    -{{to-elsewhere - named='md-subbar-extra' - send=(component + + \ No newline at end of file diff --git a/app/pods/record/show/edit/main/citation/index/template.hbs b/app/pods/record/show/edit/main/citation/index/template.hbs index 34f53dd99..7e4d9b03e 100644 --- a/app/pods/record/show/edit/main/citation/index/template.hbs +++ b/app/pods/record/show/edit/main/citation/index/template.hbs @@ -1,32 +1,32 @@

    Editing Citation - {{control/md-status model=this.model}} +

    {{#with this.model.json.metadata.resourceInfo.citation as |citation|}}
    - {{object/md-citation - class='col-xxl-11 col-xxxl-10 col-xxl-offset-1' - model=citation - profilePath='record.main.citation' - editIdentifier=(route-action 'editIdentifier') - }} + {{outlet}}
    {{/with}} -{{to-elsewhere - named='md-subbar-extra' - send=(component + + \ No newline at end of file diff --git a/app/pods/record/show/edit/main/index/template.hbs b/app/pods/record/show/edit/main/index/template.hbs index d6ee7f0fc..28afaf4fd 100644 --- a/app/pods/record/show/edit/main/index/template.hbs +++ b/app/pods/record/show/edit/main/index/template.hbs @@ -4,31 +4,31 @@

    Editing {{this.model.title}} - {{control/md-status model=this.model}} +

    - {{#layout/md-card - title='Basic Information' - collapsible=true - collapsed=false - profilePath='record.main.basicInformation' - data-spy='Basic Information' - required=true - }} - - {{#layout/md-wrap - data-spy='Record ID' - class='md-embedded' - profilePath='record.main.basicInformation.recordId' - }} + + +
    - {{input/md-input - valuePath='recordId' - model=this.model - placeholder='Assigned Record ID' - disabled=true - }} + - {{ember-tooltip - text='Edit the metadata id' - tooltipClass='ember-tooltip md-tooltip warning' - }} +
    - {{/layout/md-wrap}} - - {{input/md-input - value=this.model.title - placeholder='Enter the title for the resource.' - label='Title' - required=true - profilePath='record.main.basicInformation.title' - data-spy='Title' - class='md-embedded' - }} +
    + + {{#if (is-array resource.status)}} - {{input/md-codelist-multi - value=resource.status - label='Status' - required=true - create=true - tooltip=true - icon=false - mdCodeName='progress' - placeholder='Select the current status' - profilePath='record.main.basicInformation.status' - data-spy='Status' - class='md-embedded' - }} + {{/if}} {{!-- {{input/md-codelist-multi @@ -79,164 +79,164 @@ profilePath="record.main.topicCategory" }} --}} - {{#layout/md-card - title='Default Locale' - shadow=false - data-spy=false - required=true - profilePath='record.main.basicInformation.defaultLocale' - }} - {{object/md-locale - model=resource.defaultResourceLocale - profilePath='record.main.basicInformation.defaultLocale' - }} - {{/layout/md-card}} - - {{/layout/md-card}} + + + + +
    {{#if (is-array resource.resourceType)}}
    - {{object/md-resource-type-array - plain=false - value=resource.resourceType - required=true - errorMessage='At least one Resource Type is required.' - data-spy='Resource Types' - profilePath='record.main.resourceType' - }} +
    {{/if}} {{#if (is-array resource.pointOfContact)}} - {{object/md-party-array - title='Point Of Contact' - pluralTitle='Points of Contact' - data-spy='Point Of Contact' - collapsible=true - collapsed=false - required=true - value=resource.pointOfContact - profilePath='record.main.pointOfContact' - tipPath='json.metadata.resourceInfo.pointOfContact' - tipModel=this.model - }} + {{/if}} - {{object/md-citation/preview - profilePath='record.main.citation' - citation=resource.citation - muted=true - required=true - editCitation=(route-action 'editCitation') - }} - - {{#layout/md-card - title='Description' - collapsible=true - collapsed=false - profilePath='record.main.description' - required=true - }} - {{input/md-markdown-area - value=resource.abstract - profilePath='record.main.description.abstract' - label='Abstract' - placeholder='Enter an Abstract describing the resource.' - required=true - }} - - {{input/md-markdown-area - value=resource.shortAbstract - profilePath='record.main.description.shortAbstract' - label='Short Abstract' - placeholder='A short description of the resource. Max of 300 characters.' - maxlength=300 - }} - - {{input/md-textarea - value=resource.purpose - profilePath='record.main.purpose' - label='Purpose' - placeholder='Enter text describing the reason for creating the resource.' - }} - - {{input/md-textarea - value=resource.supplementalInfo - profilePath='record.main.supplementalInfo' - label='Supplemental Information' - placeholder='Enter text describing other descriptive information about the resource.' - }} - - {{input/md-textarea - value=resource.environmentDescription - profilePath='record.main.environmentDescription' - label='Environment Description' - placeholder='Description of the processing environment, for example the software, hardware, or the computer operating system.' - }} - {{/layout/md-card}} + + + + + + + + + + + + + {{#if resource.timePeriod}} - {{object/md-time-period - model=resource.timePeriod - profilePath='record.main.timePeriod' - data-spy='Time Period' - label='Time Period' - }} + {{/if}} - {{#object/md-object-table - items=resource.resourceMaintenance - header='Maintenance' - data-spy='Maintenance' - profilePath='record.main.maintenance' - buttonText='Add Maintenance' - ellipsis=true - attributes='frequency' - collapsible=true + + + {{#if (is-array resource.graphicOverview)}} - {{object/md-graphic-array - model=resource.graphicOverview - data-spy='Graphic Overview' - button-text='Add Graphic' - label='Graphic Overview' - profilePath='record.main.graphicOverview' - }} + {{/if}} {{#if (is-array resource.credit)}} - {{#object/md-simple-array-table - data-spy='Credit' - title='Credit' - profilePath='record.main.credit' - value=resource.credit +
    - {{/object/md-simple-array-table}} + {{/if}} {{/with}} -{{to-elsewhere - named='md-scroll-spy-record-edit' - send=(component + \ No newline at end of file diff --git a/app/pods/record/show/edit/metadata/alternate/identifier/template.hbs b/app/pods/record/show/edit/metadata/alternate/identifier/template.hbs index 1876a644a..fa5bc7c66 100644 --- a/app/pods/record/show/edit/metadata/alternate/identifier/template.hbs +++ b/app/pods/record/show/edit/metadata/alternate/identifier/template.hbs @@ -1,33 +1,33 @@

    Editing Alternate Identifier: {{this.model.identifier}} - {{control/md-status model=(compute (route-action 'parentModel'))}} +

    - {{object/md-identifier - class='col-xxl-11 col-xxxl-10 col-xxl-offset-1' - model=this.model - profilePath='record.metadata.alternateMetadataReference.identifier' - data-spy='Identifier' - }} + {{outlet}}
    -{{to-elsewhere - named='md-subbar-extra' - send=(component + + \ No newline at end of file diff --git a/app/pods/record/show/edit/metadata/alternate/index/template.hbs b/app/pods/record/show/edit/metadata/alternate/index/template.hbs index 2dc2ea23c..9d45ecd05 100644 --- a/app/pods/record/show/edit/metadata/alternate/index/template.hbs +++ b/app/pods/record/show/edit/metadata/alternate/index/template.hbs @@ -1,32 +1,32 @@

    Editing Alternate Metadata Reference - {{control/md-status model=(compute (route-action 'parentModel'))}} +

    {{#with this.model as |citation|}}
    - {{object/md-citation - class='col-xxl-11 col-xxxl-10 col-xxl-offset-1' - model=citation - profilePath='record.metadata.alternateMetadataReference' - editIdentifier=(route-action 'editIdentifier') - }} + {{outlet}}
    {{/with}} -{{to-elsewhere - named='md-subbar-extra' - send=(component + + \ No newline at end of file diff --git a/app/pods/record/show/edit/metadata/identifier/template.hbs b/app/pods/record/show/edit/metadata/identifier/template.hbs index f4c09eb57..1bed2a9db 100644 --- a/app/pods/record/show/edit/metadata/identifier/template.hbs +++ b/app/pods/record/show/edit/metadata/identifier/template.hbs @@ -1,34 +1,34 @@

    Editing Metadata Identifier: {{this.model.identifier}} - {{control/md-status model=this.parentModel}} +

    - {{object/md-identifier - class='col-xxl-11 col-xxxl-10 col-xxl-offset-1' - model=this.model - profilePath='record.metadata.metadataIdentifier' - confirmIdentifier=true - data-spy='Metadata Identifier' - }} + {{outlet}}
    -{{to-elsewhere - named='md-subbar-extra' - send=(component + + \ No newline at end of file diff --git a/app/pods/record/show/edit/metadata/index/template.hbs b/app/pods/record/show/edit/metadata/index/template.hbs index 69b180881..93e275c99 100644 --- a/app/pods/record/show/edit/metadata/index/template.hbs +++ b/app/pods/record/show/edit/metadata/index/template.hbs @@ -3,151 +3,151 @@

    Editing Metadata Information - {{control/md-status model=this.model}} +

    - {{#layout/md-card - title='Basic Information' - collapsible=true - collapsed=false - profilePath='record.metadata.basicInformation' - data-spy='Basic Information' - }} + - {{input/md-codelist - value=metadata.metadataStatus - label='Metadata Status' - create=true - tooltip=true - icon=false - mdCodeName='progress' - placeholder='Select the current status' - profilePath='record.metadata.basicInformation.metadataStatus' - data-spy=false - class='md-embedded' - }} + - {{#layout/md-card - profilePath='record.metadata.basicInformation.metadataDates' - data-spy=false - shadow=false - class='md-embedded' - }} - {{object/md-date-array - value=metadata.metadataDate - plain=true - data-spy=false - profilePath='record.metadata.basicInformation.metadataDates' - }} - {{/layout/md-card}} - {{/layout/md-card}} + + + + - {{object/md-party-array - title='Metadata Contact' - data-spy='Metadata Contacts' - collapsible=true - collapsed=false - required=true - value=metadata.metadataContact - profilePath='record.metadata.metadataContacts' - }} + {{#with this.model.json.metadata.metadataInfo.metadataIdentifier as |identifier| }} - {{#layout/md-card - title='Metadata Identifier' - collapsible=true - collapsed=false - profilePath='record.metadata.metadataIdentifier' - required=false - btnText='Edit' - btnClass='success' - btnAction=(route-action 'editIdentifier') - btnIcon='pencil' - }} +
    - {{control/md-definition - title='Identifier' - text=identifier.identifier - }} + {{!-- {{#control/md-definition title="Identifier"}} {{input/md-input value=identifier.identifier}} {{/control/md-definition}} --}} - {{control/md-definition - title='Namespace' - text=identifier.namespace - }} +
    - {{/layout/md-card}} +
    {{/with}} - {{object/md-citation/preview - profilePath='record.metadata.parentMetadata' - citation=metadata.parentMetadata - title='Parent Metadata' - muted=true - editCitation=(route-action 'editParent') - }} + - {{object/md-repository-array - value=this.model.json.metadataRepository - data-spy='Metadata Repository' - profilePath='record.metadata.repositories' - }} + - {{object/md-online-resource-array - model=metadata.metadataOnlineResource - profilePath='record.metadata.onlineResource' - data-spy='Online Resources' - }} + - {{#layout/md-card - title='Metadata Maintenance' - collapsible=true - content=metadata.metadataMaintenance - profilePath='record.metadata.maintenance' - }} - {{object/md-maintenance - model=metadata.metadataMaintenance - profilePath='record.metadata.maintenance' - }} - {{/layout/md-card}} + + + - {{#layout/md-card - title='Default Metadata Locale' - shadow=true - data-spy='Default Locale' - profilePath='record.metadata.defaultLocale' - collapsible=true - content=metadata.defaultMetadataLocale - }} - {{object/md-locale - model=metadata.defaultMetadataLocale - profilePath='record.metadata.defaultLocale' - }} - {{/layout/md-card}} + + + - {{object/md-citation-array - model=metadata.alternateMetadataReference - profilePath='record.metadata.alternateMetadataReference' - data-spy='Alternate Metadata' - editItem=(route-action 'editAlternate') - label='Alternate Metadata Reference' - }} + {{outlet}} {{/with}} -{{to-elsewhere - named='md-scroll-spy-record-edit' - send=(component + \ No newline at end of file diff --git a/app/pods/record/show/edit/metadata/parent/identifier/template.hbs b/app/pods/record/show/edit/metadata/parent/identifier/template.hbs index 36decef9d..41b600aa0 100644 --- a/app/pods/record/show/edit/metadata/parent/identifier/template.hbs +++ b/app/pods/record/show/edit/metadata/parent/identifier/template.hbs @@ -1,33 +1,33 @@

    Editing Identifier: {{this.model.identifier}} - {{control/md-status model=this.parentModel}} +

    - {{object/md-identifier - class='col-xxl-11 col-xxxl-10 col-xxl-offset-1' - model=this.model - profilePath='record.metadata.parentMetadata.identifier' - data-spy='Identifier' - }} + {{outlet}}
    -{{to-elsewhere - named='md-subbar-extra' - send=(component + + \ No newline at end of file diff --git a/app/pods/record/show/edit/metadata/parent/index/template.hbs b/app/pods/record/show/edit/metadata/parent/index/template.hbs index 729e696ee..32e2e6a22 100644 --- a/app/pods/record/show/edit/metadata/parent/index/template.hbs +++ b/app/pods/record/show/edit/metadata/parent/index/template.hbs @@ -1,32 +1,32 @@

    Editing Parent Metadata Citation - {{control/md-status model=this.model}} +

    {{#with this.model.json.metadata.metadataInfo.parentMetadata as |citation|}}
    - {{object/md-citation - class='col-xxl-11 col-xxxl-10 col-xxl-offset-1' - model=citation - profilePath='record.metadata.parentMetadata' - editIdentifier=(route-action 'editIdentifier') - }} + {{outlet}}
    {{/with}} -{{to-elsewhere - named='md-subbar-extra' - send=(component + + \ No newline at end of file diff --git a/app/pods/record/show/edit/spatial/index/template.hbs b/app/pods/record/show/edit/spatial/index/template.hbs index 062da9d6d..3eb4de1ae 100644 --- a/app/pods/record/show/edit/spatial/index/template.hbs +++ b/app/pods/record/show/edit/spatial/index/template.hbs @@ -1,12 +1,12 @@

    Editing Spatial Information - {{control/md-status model=this.model}} +

    {{#with this.model.json.metadata.resourceInfo as |resourceInfo|}} - {{object/md-spatial-info - model=resourceInfo - profilePath='record.spatial' - parentModel=this.model - }} + {{/with}} \ No newline at end of file diff --git a/app/pods/record/show/edit/spatial/raster/attribute/template.hbs b/app/pods/record/show/edit/spatial/raster/attribute/template.hbs index 7410f08a7..0436e1aa8 100644 --- a/app/pods/record/show/edit/spatial/raster/attribute/template.hbs +++ b/app/pods/record/show/edit/spatial/raster/attribute/template.hbs @@ -5,41 +5,41 @@ in Raster Description #{{this.rasterId}} - {{#control/md-button-confirm - class='btn btn-xs btn-danger' - onConfirm=(route-action 'deleteAttribute') - tooltip='Delete Attribute?' - tipClass='danger' - tipSide='bottom' - }} + {{fa-icon 'times'}} Delete - {{/control/md-button-confirm}} + - {{control/md-status model=this.parentModel}} + -{{object/md-raster/attrgroup/attribute - model=this.model - profilePath='record.spatial.coverageDescription.attributeGroup.attribute' -}} + -{{to-elsewhere - named='md-subbar-buttons' - send=(component + + \ No newline at end of file diff --git a/app/pods/record/show/edit/spatial/raster/index/template.hbs b/app/pods/record/show/edit/spatial/raster/index/template.hbs index 0e93cc3d2..2a3946ffb 100644 --- a/app/pods/record/show/edit/spatial/raster/index/template.hbs +++ b/app/pods/record/show/edit/spatial/raster/index/template.hbs @@ -1,32 +1,32 @@

    Editing Raster Description #{{this.rasterId}} - {{control/md-status model=this.parentModel}} +

    -{{object/md-raster - model=this.model - editAttribute=(route-action 'editAttribute') - deleteAttrGroup=(route-action 'deleteAttrGroup') - addAttrGroup=(route-action 'addAttrGroup') - profilePath='record.spatial.coverageDescription' -}} + -{{to-elsewhere - named='md-subbar-extra' - send=(component + -{{to-elsewhere - named='md-scroll-spy-record-edit' - send=(component + \ No newline at end of file diff --git a/app/pods/record/show/edit/taxonomy/collection/index/template.hbs b/app/pods/record/show/edit/taxonomy/collection/index/template.hbs index f6dbb4886..7f8eedd1b 100644 --- a/app/pods/record/show/edit/taxonomy/collection/index/template.hbs +++ b/app/pods/record/show/edit/taxonomy/collection/index/template.hbs @@ -1,51 +1,51 @@

    Editing Taxonomy Collection #{{this.collectionId}} - {{control/md-status model=this.parentModel}} +

    -{{object/md-taxonomy/collection - model=this.model - id=this.collectionId - profilePath='record.taxonomy.collection' - editSystem=(route-action 'editSystem') -}} + -{{to-elsewhere - named='md-subbar-buttons' - send=(component + + + -{{to-elsewhere - named='md-scroll-spy-record-edit' - send=(component + \ No newline at end of file diff --git a/app/pods/record/show/edit/taxonomy/collection/itis/template.hbs b/app/pods/record/show/edit/taxonomy/collection/itis/template.hbs index 26814fa90..ae1e6b737 100644 --- a/app/pods/record/show/edit/taxonomy/collection/itis/template.hbs +++ b/app/pods/record/show/edit/taxonomy/collection/itis/template.hbs @@ -1,17 +1,17 @@

    Add Taxa from ITIS Taxonomy Collection #{{this.collectionId}} - {{control/md-status model=this.parentModel}} +

    -{{control/md-itis taxonomy=this.model}} + -{{to-elsewhere - named='md-subbar-extra' - send=(component + \ No newline at end of file diff --git a/app/pods/record/show/edit/taxonomy/collection/system/index/template.hbs b/app/pods/record/show/edit/taxonomy/collection/system/index/template.hbs index c73fe1d39..57e563a33 100644 --- a/app/pods/record/show/edit/taxonomy/collection/system/index/template.hbs +++ b/app/pods/record/show/edit/taxonomy/collection/system/index/template.hbs @@ -1,31 +1,31 @@

    Editing Taxonomic System #{{this.systemId}} - {{control/md-status model=(compute (route-action 'parentModel'))}} +

    {{#with this.model as |system|}}
    - {{object/md-taxonomy/collection/system - model=system - profilePath='record.taxonomy.collection.taxonomicSystem' - }} +
    {{/with}} -{{to-elsewhere - named='md-subbar-extra' - send=(component + + \ No newline at end of file diff --git a/app/pods/record/show/edit/taxonomy/index/template.hbs b/app/pods/record/show/edit/taxonomy/index/template.hbs index 86d382b9e..798bccd2c 100644 --- a/app/pods/record/show/edit/taxonomy/index/template.hbs +++ b/app/pods/record/show/edit/taxonomy/index/template.hbs @@ -1,17 +1,17 @@

    Editing Taxonomy - {{control/md-status model=this.parentModel}} +

    {{!-- {{object/md-distribution model=model profilePath="record.distribution"}} --}} {{#each this.model.json.metadata.resourceInfo.taxonomy as |collection index|}} - {{object/md-taxonomy - model=collection - index=index - scrollTo=this.scrollTo - record=this.model - }} + {{else}}

    No taxonomic collections found.

    - {{#layout/md-card - shadow=false - muted=true - title='Main' - bodyIsRow=false - collapsible=true - btnText='Edit' - btnClass='success' - btnAction=(route-action 'linkTo' 'record.show.edit.main') - btnIcon='pencil' - }} +
    - {{control/md-definition title='Record Id' text=this.model.recordId}} - {{control/md-definition title='Record Title' text=this.model.title}} - {{control/md-definition - title='Status' - text=(if resource.status (join ', ' resource.status)) - }} - {{control/md-definition - title='Contact Instructions' - text=this.model.json.contactInstructions - }} + + + +
    - {{#control/md-definition title='Resource Type(s)'}} + {{#each resource.resourceType as |type|}} {{type.type}}: {{#if type.name}} @@ -46,10 +52,10 @@ {{else}} No types assigned! {{/each}} - {{/control/md-definition}} +
    - {{#layout/md-card shadow=false muted=true plain=true}} +
    Default Resource Locale
    @@ -69,46 +75,46 @@ {{resource.defaultResourceLocale.language}}
    - {{/layout/md-card}} +
    - {{#layout/md-card - shadow=false - muted=true - title='Abstract' - collapsible=true - scroll=true - maximizable=true - class='md-embedded' - }} + {{md-markdown resource.abstract 'Abstract not provided!'}} - {{/layout/md-card}} - - {{#layout/md-card - shadow=false - muted=true - title='Short Abstract' - collapsible=true - scroll=false - class='md-embedded' - }} + + + {{md-markdown resource.shortAbstract 'Short Abstract not provided!'}} - {{/layout/md-card}} - - {{/layout/md-card}} - - {{#layout/md-card - shadow=false - muted=true - title='Geographic Extent' - bodyIsRow=false - collapsible=true - btnText='Edit' - btnClass='success' - btnAction=(route-action 'linkTo' 'record.show.edit.extent') - btnIcon='pencil' - }} + + +
    + +
    {{#each resource.extent as |extent index|}} @@ -128,40 +134,45 @@
    {{#if extent.geographicExtent.[0].geographicElement.length}} - {{#leaflet-map - lat=0 - lng=0 - zoom=2 - maxZoom=18 - onLoad=(route-action - 'setupMap' extent.geographicExtent.[0].geographicElement - ) - }} + {{! Specify child layer components here }} - {{#layer-group name='Terrain' baselayer=true default=true}} + {{! tile-layer url="http://{s}.tile.stamen.com/terrain/{z}/{x}/{y}.png" attribution=mapAttribution }} {{! tile-layer url="//stamen-tiles-{s}.a.ssl.fastly.net/terrain/{z}/{x}/{y}.png" attribution=mapAttribution }} - {{tile-layer - url='//tiles.stadiamaps.com/tiles/stamen_terrain/{z}/{x}/{y}.png' - attribution=this.mapAttribution - }} + - {{/layer-group}} + - {{#feature-group name='Features' default=true}} + {{#each extent.geographicExtent.[0].geographicElement as |l| }} - {{geojson-layer geoJSON=l}} + {{/each}} - {{/feature-group}} + {{layer-control}} - {{/leaflet-map}} + {{else}}
    No Features to display. @@ -175,34 +186,36 @@ {{/each}}
    - {{/layout/md-card}} +
    {{outlet}}
    - {{#control/md-crud-buttons - model=this.model - allowCopy=true - allowDelete=true - doDelete=(route-action 'destroyRecord') - doCopy=(route-action 'copyRecord') - }} - {{#link-to - 'record.show.edit' this.model.id class='btn btn-lg btn-success' - }} + + {{fa-icon 'pencil'}} - Edit{{/link-to}} - {{/control/md-crud-buttons}} + Edit +
    - {{#link-to 'records' class='btn btn-lg btn-primary btn-block'}} + {{fa-icon 'list'}} - Show List{{/link-to}} + Show List - {{control/md-scroll-spy - scrollInit=this.scrollTo - setScrollTo=(route-action 'setScrollTo') - refresh=this.model.profile - }} +
    {{/with}} \ No newline at end of file diff --git a/app/pods/record/show/nav/template.hbs b/app/pods/record/show/nav/template.hbs index 777e6b057..ed4decbf0 100644 --- a/app/pods/record/show/nav/template.hbs +++ b/app/pods/record/show/nav/template.hbs @@ -1,27 +1,27 @@
  • - {{#link-to 'record.show.translate'}} + Translate - {{ember-tooltip - text='Translate' - side='bottom' - tooltipClass='ember-tooltip md-nav-tip' - }} - {{/link-to}} + +
  • - {{#link-to 'publish'}} + Publish - {{ember-tooltip - text='Publish' - side='bottom' - tooltipClass='ember-tooltip md-nav-tip' - }} - {{/link-to}} + +
  • diff --git a/app/pods/record/show/template.hbs b/app/pods/record/show/template.hbs index 18ab01b9f..00a87efd3 100644 --- a/app/pods/record/show/template.hbs +++ b/app/pods/record/show/template.hbs @@ -1,6 +1,6 @@ {{outlet}} -{{to-elsewhere - named='nav-main' - send=(component 'layout/nav/record/nav-main' model=this.model) -}} \ No newline at end of file + \ No newline at end of file diff --git a/app/pods/record/show/translate/template.hbs b/app/pods/record/show/translate/template.hbs index 075b7fd20..5b0235a26 100644 --- a/app/pods/record/show/translate/template.hbs +++ b/app/pods/record/show/translate/template.hbs @@ -1,12 +1,12 @@

    Translate Record

    - {{md-translate - model=this.model - store=this.store - writer=this.writer - forceValid=this.forceValid - showAllTags=this.showAllTags - }} +
    \ No newline at end of file diff --git a/app/pods/records/template.hbs b/app/pods/records/template.hbs index 03d5ee104..4e8092f3d 100644 --- a/app/pods/records/template.hbs +++ b/app/pods/records/template.hbs @@ -1,21 +1,24 @@

    {{fa-icon 'file-text'}} Metadata Records

    {{#if this.model.length}} - {{#layout/md-card collapsible=true collapsed=false shadow=true}} - {{control/md-record-table - data=this.model - dataColumns=(compute (route-action 'getColumns') this.section.meta.type) - allActions=true - selectProperty='_selectedFromList' - showSlider=(route-action 'showSlider') - }} - {{/layout/md-card}} + + + {{else}}

    No Metadata Records found. - {{#link-to 'record.new' class='btn btn-success btn-lg'}} + {{fa-icon 'plus'}} Create a Metadata Record - {{/link-to}} +

    {{/if}} @@ -23,11 +26,11 @@ {{outlet}} {{#if this.errorTarget}} - {{to-elsewhere - named='md-slider-error' - send=(hash + {{/if}} \ No newline at end of file diff --git a/app/pods/settings/profile/index/template.hbs b/app/pods/settings/profile/index/template.hbs index bc79f87a5..df0f9afd1 100644 --- a/app/pods/settings/profile/index/template.hbs +++ b/app/pods/settings/profile/index/template.hbs @@ -21,7 +21,7 @@ {{#liquid-if this.profile use='fade'}} {{#if this.profile.isNew}} - {{object/md-profile/custom record=this.profile}} + {{else if this.profile}} {{#if this.profile.validations.hasWarnings}} {{/if}} - {{object/md-profile/custom record=this.profile}} + {{/if}} {{else}} - {{control/md-edit-table - data=this.model - dataColumns=this.columns - columnSets=this.columnSets - rowBodyComponent='object/md-profile/form' - pageSize=25 - editRow=(action 'editProfile') - actionBadges=this.badges - }} + {{/liquid-if}} {{#if this.profile}} {{#if this.profile.isNew}} - {{to-elsewhere - named='md-subbar-settings' - send=(component + {{/if}} - {{to-elsewhere - named='md-subbar-settings' - send=(component + {{else}} - {{to-elsewhere - named='md-subbar-settings' - send=(component + + {{/if}} \ No newline at end of file diff --git a/app/pods/settings/profile/manage/template.hbs b/app/pods/settings/profile/manage/template.hbs index 3432c67bf..a1ccb8055 100644 --- a/app/pods/settings/profile/manage/template.hbs +++ b/app/pods/settings/profile/manage/template.hbs @@ -48,20 +48,20 @@ {{#liquid-if this.definition use='fade'}} {{#if this.definition.isNew}} - {{object/md-profile/form record=this.definition}} + {{else if this.definition}} - {{object/md-profile record=this.definition}} + {{/if}} {{else}} - {{control/md-edit-table - data=this.model - dataColumns=this.columns - columnSets=this.columnSets - rowBodyComponent='object/md-profile/form' - pageSize=25 - editRow=(action 'editDefinition') - actionBadges=this.badges - }} + {{/liquid-if}}
    {{core.title}}
    - {{object/md-profile/preview - record=core - class='list-group-item-text' - }} +
    {{/each}} @@ -90,9 +90,9 @@ {{#if this.definition}} - {{to-elsewhere - named='md-subbar-settings' - send=(component + + {{else}} - {{to-elsewhere - named='md-subbar-settings' - send=(component + + - {{to-elsewhere - named='md-subbar-settings' - send=(component + {{/if}} \ No newline at end of file diff --git a/app/pods/settings/template.hbs b/app/pods/settings/template.hbs index a8b72cbc4..6b0a8ffb3 100644 --- a/app/pods/settings/template.hbs +++ b/app/pods/settings/template.hbs @@ -8,17 +8,19 @@ role='group' aria-label='Action Button Controls' > - {{multiple-from-elsewhere name='md-subbar-settings'}} + - {{#from-elsewhere name='md-scroll-spy-settings' as |spy|}} + {{component spy offset=145}} - {{/from-elsewhere}} + -{{to-elsewhere - named='nav-secondary' - send=(component - 'layout/md-nav-secondary' navLinks=this.links isStaticLinks=true - ) -}} \ No newline at end of file + \ No newline at end of file diff --git a/app/pods/settings/validation/template.hbs b/app/pods/settings/validation/template.hbs index c071e8b53..92f57e1c3 100644 --- a/app/pods/settings/validation/template.hbs +++ b/app/pods/settings/validation/template.hbs @@ -31,27 +31,27 @@ {{#liquid-if this.schema use='fade'}} {{#if this.schema.isNew}} - {{object/md-schema/form record=this.schema}} + {{else if this.schema}} - {{object/md-schema record=this.schema}} + {{/if}} {{else}} - {{control/md-edit-table - data=this.model - dataColumns=this.columns - columnSets=this.columnSets - rowBodyComponent='object/md-schema' - pageSize=25 - editRow=(action 'editSchema') - actionBadges=this.badges - }} + {{/liquid-if}} {{#if this.schema}} - {{to-elsewhere - named='md-subbar-settings' - send=(component + + {{else}} - {{to-elsewhere - named='md-subbar-settings' - send=(component + + {{/if}} \ No newline at end of file diff --git a/app/pods/translate/template.hbs b/app/pods/translate/template.hbs index d78c35737..a60b87b9d 100644 --- a/app/pods/translate/template.hbs +++ b/app/pods/translate/template.hbs @@ -4,7 +4,10 @@ .construction { width: 50vh; min-width:240px; font-size:5vh; border: 2vh solid #333333; margin: 10vh auto; padding: 3vh; border-radius: 5vh; } -{{#layout/md-card class='construction card-inverse card-warning' shadow=false}} +
    {{fa-icon 'exclamation-triangle' size=2}} @@ -13,4 +16,4 @@ Page Under
    Construction
    -{{/layout/md-card}} \ No newline at end of file +
    \ No newline at end of file From 88e57fe056160ce24933c106ba785456bb044cb5 Mon Sep 17 00:00:00 2001 From: dvonanderson Date: Tue, 23 Apr 2024 10:23:51 -0400 Subject: [PATCH 09/16] removing some of the implicit injections for `store` service --- app/models/contact.js | 1 + app/models/dictionary.js | 3 ++- app/models/record.js | 2 ++ .../control/md-contact-link/component.js | 4 +--- .../control/md-contact-title/component.js | 4 +--- .../components/control/md-modal/template.hbs | 2 +- .../object/md-associated/component.js | 4 +--- .../object/md-associated/preview/component.js | 7 ++----- app/pods/contact/new/id/route.js | 2 ++ app/pods/contact/new/index/route.js | 2 ++ app/pods/contact/show/route.js | 1 + app/pods/contacts/route.js | 1 + app/pods/dictionaries/route.js | 1 + app/pods/dictionary/new/id/route.js | 2 ++ app/pods/dictionary/new/index/route.js | 2 ++ app/pods/dictionary/show/route.js | 1 + app/pods/export/route.js | 1 + app/pods/import/route.js | 1 + app/pods/record/new/id/route.js | 2 ++ app/pods/record/new/index/route.js | 2 ++ .../edit/associated/resource/index/route.js | 2 +- app/pods/record/show/route.js | 2 ++ app/pods/settings/profile/index/controller.js | 1 + app/pods/settings/profile/index/route.js | 2 ++ app/pods/settings/profile/manage/controller.js | 1 + app/pods/settings/profile/manage/route.js | 5 +++-- app/pods/settings/route.js | 17 ++++------------- app/pods/settings/validation/controller.js | 1 + app/pods/settings/validation/route.js | 5 +++-- app/routes/application.js | 1 + app/services/contacts.js | 4 ++-- app/services/custom-profile.js | 2 ++ 32 files changed, 52 insertions(+), 36 deletions(-) diff --git a/app/models/contact.js b/app/models/contact.js index 146d24728..bef2e3b0c 100644 --- a/app/models/contact.js +++ b/app/models/contact.js @@ -94,6 +94,7 @@ const Contact = Model.extend(Validations, Copyable, { * @submodule data-models */ + store: service('store'), contactsService: service('contacts'), contacts: hasMany('contact', { inverse: 'organizations' diff --git a/app/models/dictionary.js b/app/models/dictionary.js index da7b386d3..3788b71bb 100644 --- a/app/models/dictionary.js +++ b/app/models/dictionary.js @@ -9,7 +9,7 @@ import { } from 'ember-cp-validations'; import EmberObject, { computed } from '@ember/object'; import config from 'mdeditor/config/environment'; - +import { inject as service } from '@ember/service'; const { APP: { defaultProfileId @@ -77,6 +77,7 @@ export default Model.extend(Validations, Copyable, { this.on('didLoad', this, this.assignId); }, + store: service('store'), profile: attr('string', { defaultValue: defaultProfileId }), diff --git a/app/models/record.js b/app/models/record.js index 83f2ad234..d8423aabc 100644 --- a/app/models/record.js +++ b/app/models/record.js @@ -16,6 +16,7 @@ const { defaultProfileId } } = config; +import { inject as service } from '@ember/service'; const Validations = buildValidations({ 'recordId': validator( @@ -71,6 +72,7 @@ const Record = Model.extend(Validations, Copyable, { * @submodule data-models */ + store: service('store'), profile: attr('string', { defaultValue: defaultProfileId }), diff --git a/app/pods/components/control/md-contact-link/component.js b/app/pods/components/control/md-contact-link/component.js index 6c676248b..726e4989a 100644 --- a/app/pods/components/control/md-contact-link/component.js +++ b/app/pods/components/control/md-contact-link/component.js @@ -61,11 +61,9 @@ export default LinkComponent.extend({ * @requires contactId */ contact: computed('contactId', function () { - let rec = this.store + return this.store .peekAll('contact') .findBy('json.contactId', this.contactId); - - return rec; }) .readOnly() }); diff --git a/app/pods/components/control/md-contact-title/component.js b/app/pods/components/control/md-contact-title/component.js index 66afb66d9..4a52a1291 100644 --- a/app/pods/components/control/md-contact-title/component.js +++ b/app/pods/components/control/md-contact-title/component.js @@ -34,11 +34,9 @@ export default Component.extend({ * @requires contactId */ contact: computed('contactId', function () { - let rec = this.store + return this.store .peekAll('contact') .findBy('json.contactId', this.contactId); - - return rec; }) .readOnly() }); diff --git a/app/pods/components/control/md-modal/template.hbs b/app/pods/components/control/md-modal/template.hbs index 8d5a059f3..588904c4e 100644 --- a/app/pods/components/control/md-modal/template.hbs +++ b/app/pods/components/control/md-modal/template.hbs @@ -23,7 +23,7 @@
    {{yield}} - {{html-safe this.message}} + {{html-safe @message}}
    {{#if this.showConfirm}} diff --git a/app/pods/components/object/md-associated/component.js b/app/pods/components/object/md-associated/component.js index 70711bdad..2d321f74e 100644 --- a/app/pods/components/object/md-associated/component.js +++ b/app/pods/components/object/md-associated/component.js @@ -55,9 +55,7 @@ export default Component.extend(Validations, { associationType: alias('model.associationType'), linkedRecord: computed('model.mdRecordId', function() { - let store = this.store; - - return store.peekAll('record') + return this.store.peekAll('record') .filterBy('recordId', get(this, 'model.mdRecordId')) .get('firstObject'); }), diff --git a/app/pods/components/object/md-associated/preview/component.js b/app/pods/components/object/md-associated/preview/component.js index f9e3371f3..3e131fced 100644 --- a/app/pods/components/object/md-associated/preview/component.js +++ b/app/pods/components/object/md-associated/preview/component.js @@ -25,8 +25,7 @@ export default Component.extend({ return this.get('item.resourceCitation'); } - let store = this.store; - let linked = store.peekAll('record') + let linked = this.store.peekAll('record') .filterBy('recordId', get(this, 'item.mdRecordId')) .get('firstObject.json.metadata.resourceInfo.citation'); @@ -38,9 +37,7 @@ export default Component.extend({ return this.get('item.metadataCitation.identifier.0'); } - let store = this.store; - - return store.peekAll('record') + return this.store.peekAll('record') .filterBy('recordId', get(this, 'item.mdRecordId')) .get('firstObject.json.metadata.metadataInfo.metadataIdentifier'); }), diff --git a/app/pods/contact/new/id/route.js b/app/pods/contact/new/id/route.js index 55299da5a..288c598d5 100644 --- a/app/pods/contact/new/id/route.js +++ b/app/pods/contact/new/id/route.js @@ -1,7 +1,9 @@ import { NotFoundError } from '@ember-data/adapter/error'; import Route from '@ember/routing/route'; +import {inject as service} from '@ember/service'; export default Route.extend({ + store: service(), /** * The route model * diff --git a/app/pods/contact/new/index/route.js b/app/pods/contact/new/index/route.js index 51c6af288..9753d2de3 100644 --- a/app/pods/contact/new/index/route.js +++ b/app/pods/contact/new/index/route.js @@ -1,6 +1,8 @@ import Route from '@ember/routing/route'; +import { inject as service } from '@ember/service'; export default Route.extend({ + store: service(), redirect() { let rec = this.store.createRecord('contact'); diff --git a/app/pods/contact/show/route.js b/app/pods/contact/show/route.js index 91ed4c9f8..1cf4ffc8a 100644 --- a/app/pods/contact/show/route.js +++ b/app/pods/contact/show/route.js @@ -5,6 +5,7 @@ import ScrollTo from 'mdeditor/mixins/scroll-to'; export default Route.extend(ScrollTo, { flashMessages: service(), + store: service(), model: function(params) { let rec= this.store.peekRecord('contact', params.contact_id); diff --git a/app/pods/contacts/route.js b/app/pods/contacts/route.js index e9b0c835a..951cedc65 100644 --- a/app/pods/contacts/route.js +++ b/app/pods/contacts/route.js @@ -21,6 +21,7 @@ const columns = [{ }]; export default Route.extend({ + store: service(), slider: service(), model() { //return this.store.peekAll('contact'); diff --git a/app/pods/dictionaries/route.js b/app/pods/dictionaries/route.js index 66081d13b..05a24aa71 100644 --- a/app/pods/dictionaries/route.js +++ b/app/pods/dictionaries/route.js @@ -14,6 +14,7 @@ const columns = [{ }]; export default Route.extend({ + store: service(), slider: service(), model() { //return this.store.peekAll('contact'); diff --git a/app/pods/dictionary/new/id/route.js b/app/pods/dictionary/new/id/route.js index 550e8e942..961a85674 100644 --- a/app/pods/dictionary/new/id/route.js +++ b/app/pods/dictionary/new/id/route.js @@ -1,8 +1,10 @@ import { NotFoundError } from '@ember-data/adapter/error'; import { computed } from '@ember/object'; import Route from '@ember/routing/route'; +import { inject as service } from '@ember/service'; export default Route.extend({ + store: service(), model: function (params) { let record = this.store.peekRecord('dictionary', params.dictionary_id); diff --git a/app/pods/dictionary/new/index/route.js b/app/pods/dictionary/new/index/route.js index 95ce0c74c..63dc01c44 100644 --- a/app/pods/dictionary/new/index/route.js +++ b/app/pods/dictionary/new/index/route.js @@ -1,6 +1,8 @@ import Route from '@ember/routing/route'; +import { inject as service } from '@ember/service'; export default Route.extend({ + store: service(), redirect: function() { let rec = this.store.createRecord('dictionary'); diff --git a/app/pods/dictionary/show/route.js b/app/pods/dictionary/show/route.js index 74d741fd8..4ef6b3a12 100644 --- a/app/pods/dictionary/show/route.js +++ b/app/pods/dictionary/show/route.js @@ -4,6 +4,7 @@ import { copy } from 'ember-copy'; export default Route.extend({ flashMessages: service(), + store: service(), model: function(params) { let rec= this.store.peekRecord('dictionary', params.dictionary_id); diff --git a/app/pods/export/route.js b/app/pods/export/route.js index 485036d06..f90f02857 100644 --- a/app/pods/export/route.js +++ b/app/pods/export/route.js @@ -31,6 +31,7 @@ const fixLiabilityTypo = async (store) => { } export default Route.extend(ScrollTo, { + store: service(), mdjson: service(), settings: service(), model() { diff --git a/app/pods/import/route.js b/app/pods/import/route.js index 1309e6828..3e3b68347 100644 --- a/app/pods/import/route.js +++ b/app/pods/import/route.js @@ -42,6 +42,7 @@ export default Route.extend(ScrollTo, { flashMessages: service(), jsonvalidator: service(), settings: service(), + store: service(), ajax: service(), init() { diff --git a/app/pods/record/new/id/route.js b/app/pods/record/new/id/route.js index dd054c139..f65f68eb4 100644 --- a/app/pods/record/new/id/route.js +++ b/app/pods/record/new/id/route.js @@ -1,7 +1,9 @@ import { NotFoundError } from '@ember-data/adapter/error'; import Route from '@ember/routing/route'; +import { inject as service } from '@ember/service'; export default Route.extend({ + store: service(), model(params) { let record = this.store.peekRecord('record', params.record_id); diff --git a/app/pods/record/new/index/route.js b/app/pods/record/new/index/route.js index d072588e6..05402599e 100644 --- a/app/pods/record/new/index/route.js +++ b/app/pods/record/new/index/route.js @@ -1,6 +1,8 @@ import Route from '@ember/routing/route'; +import { inject as service } from '@ember/service'; export default Route.extend({ + store: service(), redirect() { let rec = this.store.createRecord('record'); diff --git a/app/pods/record/show/edit/associated/resource/index/route.js b/app/pods/record/show/edit/associated/resource/index/route.js index 75589ea83..93a0f731e 100644 --- a/app/pods/record/show/edit/associated/resource/index/route.js +++ b/app/pods/record/show/edit/associated/resource/index/route.js @@ -16,7 +16,7 @@ const sliderColumns = [{ export default Route.extend(ScrollTo, { slider: service(), - + store: service(), sliderColumns: sliderColumns, setupController: function() { // Call _super for default behavior diff --git a/app/pods/record/show/route.js b/app/pods/record/show/route.js index 0033f62b2..f737926ef 100644 --- a/app/pods/record/show/route.js +++ b/app/pods/record/show/route.js @@ -1,8 +1,10 @@ import Route from '@ember/routing/route'; import { copy } from 'ember-copy'; +import { inject as service } from '@ember/service'; export default Route.extend({ //breadCrumb: {}, + store: service(), afterModel(model) { const name = model.get('title'); diff --git a/app/pods/settings/profile/index/controller.js b/app/pods/settings/profile/index/controller.js index 6874926f9..c64218c67 100644 --- a/app/pods/settings/profile/index/controller.js +++ b/app/pods/settings/profile/index/controller.js @@ -2,6 +2,7 @@ import Controller from '@ember/controller'; import { inject as service } from '@ember/service'; export default Controller.extend({ + store: service(), customProfiles: service('custom-profile'), /* eslint-disable ember/avoid-leaking-state-in-ember-objects */ columns: [{ diff --git a/app/pods/settings/profile/index/route.js b/app/pods/settings/profile/index/route.js index c6ad5060f..5c1b13f1d 100644 --- a/app/pods/settings/profile/index/route.js +++ b/app/pods/settings/profile/index/route.js @@ -1,6 +1,8 @@ import Route from '@ember/routing/route'; +import { inject as service } from '@ember/service'; export default Route.extend({ + store: service(), model() { return this.store.findAll('custom-profile'); }, diff --git a/app/pods/settings/profile/manage/controller.js b/app/pods/settings/profile/manage/controller.js index 21fe815e6..3e2bd0a2e 100644 --- a/app/pods/settings/profile/manage/controller.js +++ b/app/pods/settings/profile/manage/controller.js @@ -4,6 +4,7 @@ import { task } from 'ember-concurrency'; import { or } from '@ember/object/computed'; export default Controller.extend({ + store: service(), profile: service(), flashMessages: service(), diff --git a/app/pods/settings/profile/manage/route.js b/app/pods/settings/profile/manage/route.js index ecda3e9cc..308a3d063 100644 --- a/app/pods/settings/profile/manage/route.js +++ b/app/pods/settings/profile/manage/route.js @@ -2,9 +2,10 @@ import Route from '@ember/routing/route'; import { inject as service } from '@ember/service'; export default Route.extend({ + store: service(), + profile: service(), + model() { return this.store.findAll('profile'); }, - - profile: service(), }); diff --git a/app/pods/settings/route.js b/app/pods/settings/route.js index 25a994ca0..ebba58fd7 100644 --- a/app/pods/settings/route.js +++ b/app/pods/settings/route.js @@ -6,19 +6,10 @@ import { get, action } from '@ember/object'; @classic export default class SettingsRoute extends Route { - @service - settings; - - @service - publish; - - /** - * The profile service - * - * @return {Ember.Service} profile - */ - @service - profile; + @service settings; + @service publish; + @service store; + @service profile; setupController(controller, model) { super.setupController(controller, model); diff --git a/app/pods/settings/validation/controller.js b/app/pods/settings/validation/controller.js index 9afa451ca..e623e2939 100644 --- a/app/pods/settings/validation/controller.js +++ b/app/pods/settings/validation/controller.js @@ -4,6 +4,7 @@ import { task } from 'ember-concurrency'; import { or } from '@ember/object/computed'; export default Controller.extend({ + store: service(), schemas: service(), flashMessages: service(), diff --git a/app/pods/settings/validation/route.js b/app/pods/settings/validation/route.js index ea202be4d..5e54607b7 100644 --- a/app/pods/settings/validation/route.js +++ b/app/pods/settings/validation/route.js @@ -3,9 +3,10 @@ import { inject as service } from '@ember/service'; // import EmberObject from '@ember/object'; export default Route.extend({ + schemas: service(), + store: service(), + model() { return this.store.findAll('schema'); }, - - schemas: service(), }); diff --git a/app/routes/application.js b/app/routes/application.js index 61fd7a31a..4bd282f28 100644 --- a/app/routes/application.js +++ b/app/routes/application.js @@ -37,6 +37,7 @@ export default Route.extend({ router: service(), keyword: service(), profile: service(), + store: service(), /** * Models for sidebar navigation diff --git a/app/services/contacts.js b/app/services/contacts.js index 806f28faa..2e74c1dd8 100644 --- a/app/services/contacts.js +++ b/app/services/contacts.js @@ -3,6 +3,8 @@ import { A } from '@ember/array'; import EmberObject, { computed } from '@ember/object'; export default Service.extend({ + store: service(), + init() { this._super(...arguments); @@ -11,8 +13,6 @@ export default Service.extend({ this.set('contacts', store.peekAll('contact')); }, - store: service(), - contacts: A(), organizations: computed('contacts.[]', function() { diff --git a/app/services/custom-profile.js b/app/services/custom-profile.js index b6e83201e..a957168b3 100644 --- a/app/services/custom-profile.js +++ b/app/services/custom-profile.js @@ -29,6 +29,8 @@ const { * @class custom-profile */ export default Service.extend({ + store: service(), + init() { this._super(...arguments); From 33d8b7b0f0278b420decc0f804c215790cabfab0 Mon Sep 17 00:00:00 2001 From: dvonanderson Date: Tue, 23 Apr 2024 14:58:25 -0400 Subject: [PATCH 10/16] setup application for using `ember-template-imports` --- package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index f407e267f..f073b373c 100644 --- a/package.json +++ b/package.json @@ -127,8 +127,8 @@ "ember-source-channel-url": "^2.0.1", "ember-template-lint": "^5.0.0", "ember-template-lint-plugin-prettier": "^5.0.0", - "ember-tether": "^1.0.0", - "ember-toggle": "^6.0.1", + "ember-tether": "^2.0.0", + "ember-toggle": "^7.1.1", "ember-tooltips": "^3.4.0", "ember-truth-helpers": "^2.1.0", "ember-try": "^1.3.0", From bfbde03221425d38d464cddb59e8b93bcb980817 Mon Sep 17 00:00:00 2001 From: dvonanderson Date: Tue, 23 Apr 2024 14:58:58 -0400 Subject: [PATCH 11/16] fix dependency --- package.json | 16 +- yarn.lock | 741 +++++++++++++++++++++++++++++++++++++++++++-------- 2 files changed, 634 insertions(+), 123 deletions(-) diff --git a/package.json b/package.json index f073b373c..e81238584 100644 --- a/package.json +++ b/package.json @@ -74,7 +74,7 @@ "ember-classic-decorator": "^3.0.1", "ember-cli": "~3.28.6", "ember-cli-app-version": "^5.0.0", - "ember-cli-babel": "^7.26.10", + "ember-cli-babel": "^8.2.0", "ember-cli-bootstrap-datetimepicker": "~0.9", "ember-cli-dependency-checker": "^3.2.0", "ember-cli-deploy": "^1.0", @@ -84,7 +84,7 @@ "ember-cli-file-picker": "^0.0.12", "ember-cli-flash": "^1.3.16", "ember-cli-head": "^2.0.0", - "ember-cli-htmlbars": "^5.7.2", + "ember-cli-htmlbars": "^6.3.0", "ember-cli-inject-live-reload": "^2.1.0", "ember-cli-moment-shim": "^3.8.0", "ember-cli-release": "^0.2.9", @@ -94,13 +94,13 @@ "ember-cli-terser": "^4.0.2", "ember-composable-helpers": "^2.4.0", "ember-concurrency": "^1.1.2", - "ember-copy": "^1.0.0", + "ember-copy": "^2.0.1", "ember-cp-validations": "^4.0.0-beta.10", "ember-crumbly": "^3.0.1", "ember-data": "~3.28.6", "ember-decorators": "^6.1.1", "ember-drag-drop": "^0.7.0", - "ember-elsewhere": "^1.0.2", + "ember-elsewhere": "^1.2.2", "ember-export-application-global": "^2.0.1", "ember-fetch": "^8.1.1", "ember-font-awesome": "^3.1", @@ -109,7 +109,7 @@ "ember-leaflet-layer-control": "~0.2.1", "ember-load": "0.0.17", "ember-load-initializers": "^2.1.2", - "ember-local-storage": "^1.7.1", + "ember-local-storage": "^2.0.2", "ember-math-helpers": "^2.12.0", "ember-maybe-import-regenerator": "^0.1.6", "ember-modal-dialog": "^3.0.0-beta.3", @@ -125,6 +125,7 @@ "ember-simplemde": "^1.3.1", "ember-source": "~3.28.8", "ember-source-channel-url": "^2.0.1", + "ember-template-imports": "^4.1.0", "ember-template-lint": "^5.0.0", "ember-template-lint-plugin-prettier": "^5.0.0", "ember-tether": "^2.0.0", @@ -155,9 +156,10 @@ "object-hash": "^2.0.1", "papaparse": "^5.4.0", "prettier": "^3.2.5", + "prettier-plugin-ember-template-tag": "^2.0.2", "qunit": "^2.17.2", "qunit-dom": "^1.6.0", - "sass": "^1.26.3", + "sass": "^1.75.0", "scroll-into-view-if-needed": "^2.2.20", "semver": "^7.5.2", "shapefile": "^0.6.2", @@ -180,7 +182,7 @@ ] }, "dependencies": { - "@apidevtools/json-schema-ref-parser": "^11.5.5", + "@apidevtools/json-schema-ref-parser": "^11.6.0", "@babel/core": "7.24.4", "@babel/eslint-parser": "^7.24.1", "http-browserify": "^1.7.0", diff --git a/yarn.lock b/yarn.lock index cd77f4145..7ada0862f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -15,10 +15,10 @@ "@jridgewell/gen-mapping" "^0.3.5" "@jridgewell/trace-mapping" "^0.3.24" -"@apidevtools/json-schema-ref-parser@^11.5.5": - version "11.5.5" - resolved "https://registry.yarnpkg.com/@apidevtools/json-schema-ref-parser/-/json-schema-ref-parser-11.5.5.tgz#05db5722e3a794e35565bab41dc1a3f94fbd6bb5" - integrity sha512-hv/aXDILyroHioVW27etFMV+IX6FyNn41YwbeGIAt5h/7fUTQvHI5w3ols8qYAT8aQt3kzexq5ZwxFDxNHIhdQ== +"@apidevtools/json-schema-ref-parser@^11.6.0": + version "11.6.0" + resolved "https://registry.yarnpkg.com/@apidevtools/json-schema-ref-parser/-/json-schema-ref-parser-11.6.0.tgz#02d9f96d6e24f111251765435868c38ebd436c2f" + integrity sha512-I+d5/XrazqY86/kGsmjVercjjJ+w6MVXJj7vnHfUgXzaoLJAl0/tPk2WXVpHUeRqHqyJ6AGkXBqx6Dc3wJkrCQ== dependencies: "@jsdevtools/ono" "^7.1.3" "@types/json-schema" "^7.0.15" @@ -37,7 +37,7 @@ resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.24.4.tgz#6f102372e9094f25d908ca0d34fc74c74606059a" integrity sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ== -"@babel/core@7.24.4", "@babel/core@^7.0", "@babel/core@^7.0.0", "@babel/core@^7.1.6", "@babel/core@^7.12.0", "@babel/core@^7.13.8", "@babel/core@^7.16.7", "@babel/core@^7.24.0", "@babel/core@^7.3.4": +"@babel/core@7.24.4", "@babel/core@^7.0", "@babel/core@^7.0.0", "@babel/core@^7.1.6", "@babel/core@^7.11.0", "@babel/core@^7.12.0", "@babel/core@^7.12.3", "@babel/core@^7.13.8", "@babel/core@^7.16.7", "@babel/core@^7.23.6", "@babel/core@^7.24.0", "@babel/core@^7.3.4": version "7.24.4" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.4.tgz#1f758428e88e0d8c563874741bc4ffc4f71a4717" integrity sha512-MBVlMXP+kkl5394RBLSxxk/iLTeVGuXTV3cIDXavPpMMqnSnt6apKgan/U8O3USWZCWZT/TbgfEpKa4uMgN4Dg== @@ -91,7 +91,7 @@ dependencies: "@babel/types" "^7.22.15" -"@babel/helper-compilation-targets@^7.12.0", "@babel/helper-compilation-targets@^7.20.7", "@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.23.6": +"@babel/helper-compilation-targets@^7.10.4", "@babel/helper-compilation-targets@^7.12.0", "@babel/helper-compilation-targets@^7.20.7", "@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.23.6": version "7.23.6" resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz#4d79069b16cbcf1461289eccfbbd81501ae39991" integrity sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ== @@ -276,7 +276,7 @@ js-tokens "^4.0.0" picocolors "^1.0.0" -"@babel/parser@^7.24.0", "@babel/parser@^7.24.1", "@babel/parser@^7.24.4", "@babel/parser@^7.4.5": +"@babel/parser@^7.12.3", "@babel/parser@^7.24.0", "@babel/parser@^7.24.1", "@babel/parser@^7.24.4", "@babel/parser@^7.4.5": version "7.24.4" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.4.tgz#234487a110d89ad5a3ed4a8a566c36b9453e8c88" integrity sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg== @@ -313,7 +313,7 @@ "@babel/helper-environment-visitor" "^7.22.20" "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-proposal-class-properties@^7.1.0", "@babel/plugin-proposal-class-properties@^7.16.5", "@babel/plugin-proposal-class-properties@^7.16.7": +"@babel/plugin-proposal-class-properties@^7.1.0", "@babel/plugin-proposal-class-properties@^7.10.4", "@babel/plugin-proposal-class-properties@^7.16.5", "@babel/plugin-proposal-class-properties@^7.16.7": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz#b110f59741895f7ec21a6fff696ec46265c446a3" integrity sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ== @@ -321,7 +321,7 @@ "@babel/helper-create-class-features-plugin" "^7.18.6" "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-proposal-decorators@^7.13.5", "@babel/plugin-proposal-decorators@^7.16.7", "@babel/plugin-proposal-decorators@^7.20.13": +"@babel/plugin-proposal-decorators@^7.10.5", "@babel/plugin-proposal-decorators@^7.13.5", "@babel/plugin-proposal-decorators@^7.16.7", "@babel/plugin-proposal-decorators@^7.20.13": version "7.24.1" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.24.1.tgz#bab2b9e174a2680f0a80f341f3ec70f809f8bb4b" integrity sha512-zPEvzFijn+hRvJuX2Vu3KbEBN39LN3f7tW3MQO2LsIs57B26KU+kUc82BdAktS1VCM6libzh45eKGI65lg0cpA== @@ -683,7 +683,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-modules-amd@^7.12.1", "@babel/plugin-transform-modules-amd@^7.13.0", "@babel/plugin-transform-modules-amd@^7.20.11", "@babel/plugin-transform-modules-amd@^7.24.1": +"@babel/plugin-transform-modules-amd@^7.10.5", "@babel/plugin-transform-modules-amd@^7.12.1", "@babel/plugin-transform-modules-amd@^7.13.0", "@babel/plugin-transform-modules-amd@^7.20.11", "@babel/plugin-transform-modules-amd@^7.24.1": version "7.24.1" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.24.1.tgz#b6d829ed15258536977e9c7cc6437814871ffa39" integrity sha512-lAxNHi4HVtjnHd5Rxg3D5t99Xm6H7b04hUS7EHIXcUl2EV4yl1gWdqZrNzXnSrHveL9qMdbODlLF55mvgjAfaQ== @@ -838,7 +838,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-runtime@^7.13.9": +"@babel/plugin-transform-runtime@^7.11.0", "@babel/plugin-transform-runtime@^7.13.9": version "7.24.3" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.24.3.tgz#dc58ad4a31810a890550365cc922e1ff5acb5d7f" integrity sha512-J0BuRPNlNqlMTRJ72eVptpt9VcInbxO6iP3jaxr+1NPhC0UkKL+6oeX6VXMEYdADnuqmMmsBspt4d5w8Y/TCbQ== @@ -886,7 +886,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-typescript@^7.13.0", "@babel/plugin-transform-typescript@^7.20.13": +"@babel/plugin-transform-typescript@^7.11.0", "@babel/plugin-transform-typescript@^7.13.0", "@babel/plugin-transform-typescript@^7.20.13": version "7.24.4" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.24.4.tgz#03e0492537a4b953e491f53f2bc88245574ebd15" integrity sha512-79t3CQ8+oBGk/80SQ8MN3Bs3obf83zJ0YZjDmDaEZN8MqhMI760apl5z6a20kFeMXBwJX99VpKT8CKxEBp5H1g== @@ -953,7 +953,7 @@ "@babel/helper-create-regexp-features-plugin" "^7.22.15" "@babel/helper-plugin-utils" "^7.24.0" -"@babel/polyfill@^7.11.5": +"@babel/polyfill@^7.10.4", "@babel/polyfill@^7.11.5": version "7.12.1" resolved "https://registry.yarnpkg.com/@babel/polyfill/-/polyfill-7.12.1.tgz#1f2d6371d1261bbd961f3c5d5909150e12d0bd96" integrity sha512-X0pi0V6gxLi6lFZpGmeNa4zxtwEmCs42isWLNjZZDE0Y8yVfgu0T2OAHlzBbdYlqbW/YXVvoBHpATEM+goCj8g== @@ -961,7 +961,7 @@ core-js "^2.6.5" regenerator-runtime "^0.13.4" -"@babel/preset-env@^7.10.2", "@babel/preset-env@^7.16.5", "@babel/preset-env@^7.16.7", "@babel/preset-env@^7.20.2": +"@babel/preset-env@^7.10.2", "@babel/preset-env@^7.11.0", "@babel/preset-env@^7.16.5", "@babel/preset-env@^7.16.7", "@babel/preset-env@^7.20.2": version "7.24.4" resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.24.4.tgz#46dbbcd608771373b88f956ffb67d471dce0d23b" integrity sha512-7Kl6cSmYkak0FK/FXjSEnLJ1N9T/WA2RkMhu17gZ/dsxKJUuTYNIylahPTzqpLyJN4WhDif8X0XK1R8Wsguo/A== @@ -1069,7 +1069,7 @@ dependencies: regenerator-runtime "^0.13.4" -"@babel/runtime@^7.21.0", "@babel/runtime@^7.8.4": +"@babel/runtime@^7.11.0", "@babel/runtime@^7.21.0", "@babel/runtime@^7.8.4": version "7.24.4" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.24.4.tgz#de795accd698007a66ba44add6cc86542aff1edd" integrity sha512-dkxf7+hn8mFBwKjs9bvBlArzLVxVbS8usaPUDd5p2a9JCL9tB8OaOVN1isD4+Xyk4ns89/xeOmbQvgdK7IIVdA== @@ -1085,7 +1085,7 @@ "@babel/parser" "^7.24.0" "@babel/types" "^7.24.0" -"@babel/traverse@^7.1.6", "@babel/traverse@^7.24.1", "@babel/traverse@^7.4.5": +"@babel/traverse@^7.1.6", "@babel/traverse@^7.12.1", "@babel/traverse@^7.24.1", "@babel/traverse@^7.4.5": version "7.24.1" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.1.tgz#d65c36ac9dd17282175d1e4a3c49d5b7988f530c" integrity sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ== @@ -1101,7 +1101,7 @@ debug "^4.3.1" globals "^11.1.0" -"@babel/types@^7.1.6", "@babel/types@^7.12.13", "@babel/types@^7.22.15", "@babel/types@^7.22.19", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.24.0", "@babel/types@^7.4.4", "@babel/types@^7.7.2": +"@babel/types@^7.1.6", "@babel/types@^7.12.1", "@babel/types@^7.12.13", "@babel/types@^7.22.15", "@babel/types@^7.22.19", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.24.0", "@babel/types@^7.4.0", "@babel/types@^7.4.4", "@babel/types@^7.7.2": version "7.24.0" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.0.tgz#3b951f435a92e7333eba05b7566fd297960ea1bf" integrity sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w== @@ -1409,6 +1409,56 @@ broccoli-funnel "^3.0.8" semver "^7.3.8" +"@embroider/core@0.29.0": + version "0.29.0" + resolved "https://registry.yarnpkg.com/@embroider/core/-/core-0.29.0.tgz#51421fbb2bcee607dc6e162400e3502a121230d2" + integrity sha512-2i0QtV1y1jJpj1aiIA3FVZHfuLBN2yCUcJs0PkOsqZYi7J796KT4t7WwAk8gmBq00yGzHDWLw/iH4ULTomPS8A== + dependencies: + "@babel/core" "^7.12.3" + "@babel/parser" "^7.12.3" + "@babel/plugin-syntax-dynamic-import" "^7.8.3" + "@babel/traverse" "^7.12.1" + "@babel/types" "^7.12.1" + "@embroider/macros" "0.29.0" + assert-never "^1.1.0" + babel-plugin-syntax-dynamic-import "^6.18.0" + broccoli-persistent-filter "^2.2.2" + broccoli-plugin "^3.0.0" + broccoli-source "^1.1.0" + debug "^3.1.0" + fast-sourcemap-concat "^1.4.0" + filesize "^4.1.2" + fs-extra "^7.0.1" + fs-tree-diff "^2.0.0" + handlebars "^4.4.2" + js-string-escape "^1.0.1" + jsdom "^16.4.0" + json-stable-stringify "^1.0.1" + lodash "^4.17.10" + pkg-up "^2.0.0" + resolve "^1.8.1" + resolve-package-path "^1.2.2" + semver "^7.3.2" + strip-bom "^3.0.0" + typescript-memoize "^1.0.0-alpha.3" + walk-sync "^1.1.3" + wrap-legacy-hbs-plugin-if-needed "^1.0.1" + +"@embroider/macros@0.29.0", "@embroider/macros@^0.29.0": + version "0.29.0" + resolved "https://registry.yarnpkg.com/@embroider/macros/-/macros-0.29.0.tgz#33048069b0abdda17efc7ff438b18b0c2c237bff" + integrity sha512-Kg8we7U7TpgUZ0EBKlTC4UGItPa91OrGT5Bzxa2cJi/pPp1z8Amgd7Y+m29N+aLBZwlv+OxlhnOCm0Fhjw/dag== + dependencies: + "@babel/core" "^7.12.3" + "@babel/traverse" "^7.12.1" + "@babel/types" "^7.12.1" + "@embroider/core" "0.29.0" + assert-never "^1.1.0" + ember-cli-babel "^7.23.0" + lodash "^4.17.10" + resolve "^1.8.1" + semver "^7.3.2" + "@embroider/macros@^0.50.0 || ^1.0.0", "@embroider/macros@^1.0.0", "@embroider/macros@^1.10.0", "@embroider/macros@^1.12.0", "@embroider/macros@^1.15.0", "@embroider/macros@^1.2.0", "@embroider/macros@^1.8.0": version "1.15.1" resolved "https://registry.yarnpkg.com/@embroider/macros/-/macros-1.15.1.tgz#fbcd10f5df47243a1561445ec066f97e1a87649a" @@ -1521,6 +1571,14 @@ resolved "https://registry.yarnpkg.com/@glimmer/di/-/di-0.1.11.tgz#a6878c07a13a2c2c76fcde598a5c97637bfc4280" integrity sha512-moRwafNDwHTnTHzyyZC9D+mUSvYrs1Ak0tRPjjmCghdoHHIvMshVbEnwKb/1WmW5CUlKc2eL9rlAV32n3GiItg== +"@glimmer/encoder@^0.42.2": + version "0.42.2" + resolved "https://registry.yarnpkg.com/@glimmer/encoder/-/encoder-0.42.2.tgz#d3ba3dc9f1d4fa582d1d18b63da100fc5c664057" + integrity sha512-8xkdly0i0BP5HMI0suPB9ly0AnEq8x9Z8j3Gee1HYIovM5VLNtmh7a8HsaHYRs/xHmBEZcqtr8JV89w6F59YMQ== + dependencies: + "@glimmer/interfaces" "^0.42.2" + "@glimmer/vm" "^0.42.2" + "@glimmer/env@0.1.7", "@glimmer/env@^0.1.7": version "0.1.7" resolved "https://registry.yarnpkg.com/@glimmer/env/-/env-0.1.7.tgz#fd2d2b55a9029c6b37a6c935e8c8871ae70dfa07" @@ -1540,6 +1598,32 @@ dependencies: "@simple-dom/interface" "^1.4.0" +"@glimmer/interfaces@^0.42.2": + version "0.42.2" + resolved "https://registry.yarnpkg.com/@glimmer/interfaces/-/interfaces-0.42.2.tgz#9cf8d6f8f5eee6bfcfa36919ca68ae716e1f78db" + integrity sha512-7LOuQd02cxxNNHChzdHMAU8/qOeQvTro141CU5tXITP7z6aOv2D2gkFdau97lLQiVxezGrh8J7h8GCuF7TEqtg== + +"@glimmer/low-level@^0.42.2": + version "0.42.2" + resolved "https://registry.yarnpkg.com/@glimmer/low-level/-/low-level-0.42.2.tgz#52c745414d1d04c4245c369bd132c0e786c816ef" + integrity sha512-s+Q44SnKdTBTnkgX0deBlVNnNPVas+Pg8xEnwky9VrUqOHKsIZRrPgfVULeC6bIdFXtXOKm5CjTajhb9qnQbXQ== + +"@glimmer/program@^0.42.2": + version "0.42.2" + resolved "https://registry.yarnpkg.com/@glimmer/program/-/program-0.42.2.tgz#fe504679ca4df6251dd5fcf3003699bb51fa41fa" + integrity sha512-XpQ6EYzA1VL9ESKoih5XW5JftFmlRvwy3bF/I1ABOa3yLIh8mApEwrRI/sIHK0Nv5s1j0uW4itVF196WxnJXgw== + dependencies: + "@glimmer/encoder" "^0.42.2" + "@glimmer/interfaces" "^0.42.2" + "@glimmer/util" "^0.42.2" + +"@glimmer/reference@^0.42.1", "@glimmer/reference@^0.42.2": + version "0.42.2" + resolved "https://registry.yarnpkg.com/@glimmer/reference/-/reference-0.42.2.tgz#57874e27c825fb7041b5295b5eb153f3f3f92f8f" + integrity sha512-XuhbRjr3M9Q/DP892jGxVfPE6jaGGHu5w9ppGMnuTY7Vm/x+A+68MCiaREhDcEwJlzGg4UkfVjU3fdgmUIrc5Q== + dependencies: + "@glimmer/util" "^0.42.2" + "@glimmer/reference@^0.84.3": version "0.84.3" resolved "https://registry.yarnpkg.com/@glimmer/reference/-/reference-0.84.3.tgz#6420ad9c102633ac83939fd1b2457269d21fb632" @@ -1551,6 +1635,29 @@ "@glimmer/util" "0.84.3" "@glimmer/validator" "0.84.3" +"@glimmer/runtime@^0.42.1": + version "0.42.2" + resolved "https://registry.yarnpkg.com/@glimmer/runtime/-/runtime-0.42.2.tgz#50e7da5d3cf9144248048a7478be3c489784a4bb" + integrity sha512-52LVZJsLKM3GzI3TEmYcw2LdI9Uk0jotISc3w2ozQBWvkKoYxjDNvI/gsjyMpenj4s7FcG2ggOq0x4tNFqm1GA== + dependencies: + "@glimmer/interfaces" "^0.42.2" + "@glimmer/low-level" "^0.42.2" + "@glimmer/program" "^0.42.2" + "@glimmer/reference" "^0.42.2" + "@glimmer/util" "^0.42.2" + "@glimmer/vm" "^0.42.2" + "@glimmer/wire-format" "^0.42.2" + +"@glimmer/syntax@^0.42.1": + version "0.42.2" + resolved "https://registry.yarnpkg.com/@glimmer/syntax/-/syntax-0.42.2.tgz#89bb3cb787285b84665dc0d8907d94b008e5be9a" + integrity sha512-SR26SmF/Mb5o2cc4eLHpOyoX5kwwXP4KRhq4fbWfrvan74xVWA38PLspPCzwGhyVH/JsE7tUEPMjSo2DcJge/Q== + dependencies: + "@glimmer/interfaces" "^0.42.2" + "@glimmer/util" "^0.42.2" + handlebars "^4.0.13" + simple-html-tokenizer "^0.5.8" + "@glimmer/syntax@^0.84.3": version "0.84.3" resolved "https://registry.yarnpkg.com/@glimmer/syntax/-/syntax-0.84.3.tgz#4045a1708cef7fd810cff42fe6deeba40c7286d0" @@ -1578,6 +1685,11 @@ "@glimmer/interfaces" "0.84.3" "@simple-dom/interface" "^1.4.0" +"@glimmer/util@^0.42.2": + version "0.42.2" + resolved "https://registry.yarnpkg.com/@glimmer/util/-/util-0.42.2.tgz#9ca1631e42766ea6059f4b49d0bdfb6095aad2c4" + integrity sha512-Heck0baFSaWDanCYtmOcLeaz7v+rSqI8ovS7twrp2/FWEteb3Ze5sWQ2BEuSAG23L/k/lzVwYM/MY7ZugxBpaA== + "@glimmer/util@^0.44.0": version "0.44.0" resolved "https://registry.yarnpkg.com/@glimmer/util/-/util-0.44.0.tgz#45df98d73812440206ae7bda87cfe04aaae21ed9" @@ -1603,6 +1715,22 @@ dependencies: babel-plugin-debug-macros "^0.3.4" +"@glimmer/vm@^0.42.2": + version "0.42.2" + resolved "https://registry.yarnpkg.com/@glimmer/vm/-/vm-0.42.2.tgz#492a4f05eac587c3a37371b3c62593f20bef553d" + integrity sha512-D2MNU5glICLqvet5SfVPrv+l6JNK2TR+CdQhch1Ew+btOoqlW+2LIJIF/5wLb1POjIMEkt+78t/7RN0mDFXGzw== + dependencies: + "@glimmer/interfaces" "^0.42.2" + "@glimmer/util" "^0.42.2" + +"@glimmer/wire-format@^0.42.2": + version "0.42.2" + resolved "https://registry.yarnpkg.com/@glimmer/wire-format/-/wire-format-0.42.2.tgz#b95062b594dddeb8bd11cba3a6a0accbfabc9930" + integrity sha512-IqUo6mdJ7GRsK7KCyZxrc17ioSg9RBniEnb418ZMQxsV/WBv9NQ359MuClUck2M24z1AOXo4TerUw0U7+pb1/A== + dependencies: + "@glimmer/interfaces" "^0.42.2" + "@glimmer/util" "^0.42.2" + "@handlebars/parser@~2.0.0": version "2.0.0" resolved "https://registry.yarnpkg.com/@handlebars/parser/-/parser-2.0.0.tgz#5e8b7298f31ff8f7b260e6b7363c7e9ceed7d9c5" @@ -1786,6 +1914,11 @@ traverse "^0.6.7" unified "^9.2.2" +"@tootallnate/once@1": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" + integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw== + "@types/acorn@^4.0.3": version "4.0.6" resolved "https://registry.yarnpkg.com/@types/acorn/-/acorn-4.0.6.tgz#d61ca5480300ac41a7d973dd5b84d0a591154a22" @@ -2317,6 +2450,11 @@ Leaflet.vector-markers@^0.0.6: leaflet "^0.7.0" postcss-loader "^0.9.1" +abab@^2.0.3, abab@^2.0.5: + version "2.0.6" + resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.6.tgz#41b80f2c871d19686216b82309231cfd3cb3d291" + integrity sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA== + abbrev@1: version "1.1.1" resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" @@ -2342,6 +2480,14 @@ acorn-dynamic-import@^3.0.0: dependencies: acorn "^5.0.0" +acorn-globals@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-6.0.0.tgz#46cdd39f0f8ff08a876619b55f5ac8a6dc770b45" + integrity sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg== + dependencies: + acorn "^7.1.1" + acorn-walk "^7.1.1" + acorn-import-assertions@^1.9.0: version "1.9.0" resolved "https://registry.yarnpkg.com/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz#507276249d684797c84e0734ef84860334cfb1ac" @@ -2361,7 +2507,7 @@ acorn-node@^1.3.0: acorn-walk "^7.0.0" xtend "^4.0.2" -acorn-walk@^7.0.0: +acorn-walk@^7.0.0, acorn-walk@^7.1.1: version "7.2.0" resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== @@ -2376,16 +2522,23 @@ acorn@^6.4.1: resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.2.tgz#35866fd710528e92de10cf06016498e47e39e1e6" integrity sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ== -acorn@^7.0.0: +acorn@^7.0.0, acorn@^7.1.1: version "7.4.1" resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== -acorn@^8.7.1, acorn@^8.8.2, acorn@^8.9.0: +acorn@^8.2.4, acorn@^8.7.1, acorn@^8.8.2, acorn@^8.9.0: version "8.11.3" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.11.3.tgz#71e0b14e13a4ec160724b38fb7b0f233b1b81d7a" integrity sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg== +agent-base@6: + version "6.0.2" + resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" + integrity sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ== + dependencies: + debug "4" + ajv-errors@^1.0.0, ajv-errors@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d" @@ -2437,7 +2590,7 @@ amd-name-resolver@1.2.0: dependencies: ensure-posix-path "^1.0.1" -amd-name-resolver@^1.2.0, amd-name-resolver@^1.3.1: +amd-name-resolver@^1.2.0, amd-name-resolver@^1.2.1, amd-name-resolver@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/amd-name-resolver/-/amd-name-resolver-1.3.1.tgz#ffe71c683c6e7191fc4ae1bb3aaed15abea135d9" integrity sha512-26qTEWqZQ+cxSYygZ4Cf8tsjDBLceJahhtewxtKZA3SRa4PluuqYCuheemDQD+7Mf5B7sr+zhTDWAHDh02a1Dw== @@ -2457,11 +2610,6 @@ anchor-markdown-header@^0.6.0: dependencies: emoji-regex "~10.1.0" -animation-frame@~0.2.4: - version "0.2.5" - resolved "https://registry.yarnpkg.com/animation-frame/-/animation-frame-0.2.5.tgz#cdf5a91a69ad2c85ddac2b82daf7290300f05960" - integrity sha512-Cckt0Q5QCzJndnD4Psr+/niDcEyKvrOX6/GvYspUOg5rpHVruRO872zVH41YkGsA0vCcV7I16RipxV8+FO4k/Q== - ansi-escapes@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz#8780b98ff9dbf5638152d1f1fe5c1d7b4442976b" @@ -2688,7 +2836,7 @@ asn1.js@^4.10.1: inherits "^2.0.1" minimalistic-assert "^1.0.0" -assert-never@^1.2.1: +assert-never@^1.1.0, assert-never@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/assert-never/-/assert-never-1.2.1.tgz#11f0e363bf146205fb08193b5c7b90f4d1cf44fe" integrity sha512-TaTivMB6pYI1kXwrFlEhLeGfOqoDNdTxjCdwRfFFkEA30Eu+k48W34nlok2EYWJfFFzqaEmichdNM7th6M5HNw== @@ -3038,7 +3186,7 @@ babel-plugin-ember-modules-api-polyfill@^2.6.0: dependencies: ember-rfc176-data "^0.3.13" -babel-plugin-ember-modules-api-polyfill@^3.5.0: +babel-plugin-ember-modules-api-polyfill@^3.1.1, babel-plugin-ember-modules-api-polyfill@^3.5.0: version "3.5.0" resolved "https://registry.yarnpkg.com/babel-plugin-ember-modules-api-polyfill/-/babel-plugin-ember-modules-api-polyfill-3.5.0.tgz#27b6087fac75661f779f32e60f94b14d0e9f6965" integrity sha512-pJajN/DkQUnStw0Az8c6khVcMQHgzqWr61lLNtVeu0g61LRW0k9jyK7vaedrHDWGe/Qe8sxG5wpiyW9NsMqFzA== @@ -3053,6 +3201,14 @@ babel-plugin-ember-template-compilation@^2.0.0, babel-plugin-ember-template-comp "@glimmer/syntax" "^0.84.3" babel-import-util "^2.0.0" +babel-plugin-filter-imports@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/babel-plugin-filter-imports/-/babel-plugin-filter-imports-3.0.0.tgz#a849683837ad29960da17492fb32789ab6b09a11" + integrity sha512-p/chjzVTgCxUqyLM0q/pfWVZS7IJTwGQMwNg0LOvuQpKiTftQgZDtkGB8XvETnUw19rRcL7bJCTopSwibTN2tA== + dependencies: + "@babel/types" "^7.4.0" + lodash "^4.17.11" + babel-plugin-filter-imports@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/babel-plugin-filter-imports/-/babel-plugin-filter-imports-4.0.0.tgz#068f8da15236a96a9602c36dc6f4a6eeca70a4f4" @@ -3077,7 +3233,7 @@ babel-plugin-htmlbars-inline-precompile@^5.0.0, babel-plugin-htmlbars-inline-pre parse-static-imports "^1.1.0" string.prototype.matchall "^4.0.5" -babel-plugin-module-resolver@^3.2.0: +babel-plugin-module-resolver@^3.1.1, babel-plugin-module-resolver@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/babel-plugin-module-resolver/-/babel-plugin-module-resolver-3.2.0.tgz#ddfa5e301e3b9aa12d852a9979f18b37881ff5a7" integrity sha512-tjR0GvSndzPew/Iayf4uICWZqjBwnlMWjSx6brryfQ81F9rxBVqwDJtFCV8oOs0+vJeefK9TmdZtkIFdFe1UnA== @@ -3587,10 +3743,10 @@ blank-object@^1.0.1: resolved "https://registry.yarnpkg.com/blank-object/-/blank-object-1.0.2.tgz#f990793fbe9a8c8dd013fb3219420bec81d5f4b9" integrity sha512-kXQ19Xhoghiyw66CUiGypnuRpWlbHAzY/+NyvqTEdTfhfQGH1/dbEMYiXju7fYKIFePpzp/y9dsu5Cu/PkmawQ== -blob-polyfill@^2.0.20171115: - version "2.0.20171115" - resolved "https://registry.yarnpkg.com/blob-polyfill/-/blob-polyfill-2.0.20171115.tgz#8e5c2659dda443365fafd6dd421517653f1d5ffd" - integrity sha512-qHpuIpWlDLdOzSI9n1+423JL8c60Tbyyu/w4+zQIPCazvKBjf0sqQWiUS2QtyHph3S1C8m17T/jKyhv/DnnQFA== +blob-polyfill@^7.0.20220408: + version "7.0.20220408" + resolved "https://registry.yarnpkg.com/blob-polyfill/-/blob-polyfill-7.0.20220408.tgz#38bf5e046c41a21bb13654d9d19f303233b8218c" + integrity sha512-oD8Ydw+5lNoqq+en24iuPt1QixdPpe/nUF8azTHnviCZYu9zUC+TwdzIp5orpblJosNlgNbVmmAb//c6d6ImUQ== bluebird@^3.4.6, bluebird@^3.5.5, bluebird@^3.7.2: version "3.7.2" @@ -3761,7 +3917,7 @@ broccoli-babel-transpiler@^6.5.0: rsvp "^4.8.2" workerpool "^2.3.0" -broccoli-babel-transpiler@^7.8.0: +broccoli-babel-transpiler@^7.7.0, broccoli-babel-transpiler@^7.8.0: version "7.8.1" resolved "https://registry.yarnpkg.com/broccoli-babel-transpiler/-/broccoli-babel-transpiler-7.8.1.tgz#a5dc04cf4f59de98124fc128683ab2b83e5d28c1" integrity sha512-6IXBgfRt7HZ61g67ssBc6lBb3Smw3DPZ9dEYirgtvXWpRZ2A9M22nxy6opEwJDgDJzlu/bB7ToppW33OFkA1gA== @@ -4114,7 +4270,7 @@ broccoli-persistent-filter@^1.0.3, broccoli-persistent-filter@^1.1.6, broccoli-p symlink-or-copy "^1.0.1" walk-sync "^0.3.1" -broccoli-persistent-filter@^2.1.1, broccoli-persistent-filter@^2.2.1, broccoli-persistent-filter@^2.3.0, broccoli-persistent-filter@^2.3.1: +broccoli-persistent-filter@^2.1.1, broccoli-persistent-filter@^2.2.1, broccoli-persistent-filter@^2.2.2, broccoli-persistent-filter@^2.3.0, broccoli-persistent-filter@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/broccoli-persistent-filter/-/broccoli-persistent-filter-2.3.1.tgz#4a052e0e0868b344c3a2977e35a3d497aa9eca72" integrity sha512-hVsmIgCDrl2NFM+3Gs4Cr2TA6UPaIZip99hN8mtkaUPgM8UeVnCbxelCvBjUBHo0oaaqP5jzqqnRVvb568Yu5g== @@ -4194,7 +4350,7 @@ broccoli-plugin@^2.1.0: rimraf "^2.3.4" symlink-or-copy "^1.1.8" -broccoli-plugin@^3.1.0: +broccoli-plugin@^3.0.0, broccoli-plugin@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/broccoli-plugin/-/broccoli-plugin-3.1.0.tgz#54ba6dd90a42ec3db5624063292610e326b1e542" integrity sha512-7w7FP8WJYjLvb0eaw27LO678TGGaom++49O1VYIuzjhXjK5kn2+AMlDm7CaUFw4F7CLGoVQeZ84d8gICMJa4lA== @@ -4405,6 +4561,11 @@ brorand@^1.0.1, brorand@^1.1.0: resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" integrity sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w== +browser-process-hrtime@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" + integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow== + browserify-aes@^1.0.4, browserify-aes@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48" @@ -4674,11 +4835,16 @@ caniuse-db@^1.0.30000634, caniuse-db@^1.0.30000639: resolved "https://registry.yarnpkg.com/caniuse-db/-/caniuse-db-1.0.30001608.tgz#d0310beb0261cb651c47a802d96b190d82e2443d" integrity sha512-JJRT28ph4kqOujj9OCqWqzDIYmu82wysTUxBHfFanIsrW2pgqlvir3cvnhzIgtKKFPeVspKJ9EFR/qpEFkskWw== -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000844, caniuse-lite@^1.0.30001587: +caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001587: version "1.0.30001608" resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001608.tgz#7ae6e92ffb300e4b4ec2f795e0abab456ec06cc0" integrity sha512-cjUJTQkk9fQlJR2s4HMuPMvTiRggl0rAVMtthQuyOlDWuqHXqN8azLq+pi8B2TjwKJ32diHjUqRIKeFX4z1FoA== +caniuse-lite@^1.0.30000844: + version "1.0.30001612" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz#d34248b4ec1f117b70b24ad9ee04c90e0b8a14ae" + integrity sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g== + capture-exit@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/capture-exit/-/capture-exit-2.0.0.tgz#fb953bfaebeb781f62898239dabb426d08a509a4" @@ -4723,7 +4889,7 @@ chalk@^1.0.0, chalk@^1.1.3: strip-ansi "^3.0.0" supports-color "^2.0.0" -chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.3.0, chalk@^2.4.1, chalk@^2.4.2: +chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.4.1, chalk@^2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -5211,6 +5377,16 @@ content-disposition@0.5.4: dependencies: safe-buffer "5.2.1" +content-tag@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/content-tag/-/content-tag-1.2.2.tgz#8cbc3cdb9957a81f7c425b138e334330dd6fd78d" + integrity sha512-9guqKIx2H+78N17otBpl8yLZbQGL5q1vBO/jDb3gF2JjixtcVpC62jDUNxjVMNoaZ09oxRX84ZOD6VX02qkVvg== + +content-tag@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/content-tag/-/content-tag-2.0.1.tgz#0b908ed97e13df60b019039713ab63f1b73f2b22" + integrity sha512-jxsETSDs5NbNwyiDuIp672fUMhUyu8Qxc5MOBOJOcgW/fQESI6o5K1LBDrnEE7Bh810a685lWEZHTF4jQYGEEw== + content-type@~1.0.4, content-type@~1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.5.tgz#8b773162656d1d1086784c8f23a54ce6d73d7918" @@ -5428,6 +5604,23 @@ cssesc@^3.0.0: resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== +cssom@^0.4.4: + version "0.4.4" + resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.4.4.tgz#5a66cf93d2d0b661d80bf6a44fb65f5c2e4e0a10" + integrity sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw== + +cssom@~0.3.6: + version "0.3.8" + resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.8.tgz#9f1276f5b2b463f2114d3f2c75250af8c1a36f4a" + integrity sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg== + +cssstyle@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-2.3.0.tgz#ff665a0ddbdc31864b09647f34163443d90b0852" + integrity sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A== + dependencies: + cssom "~0.3.6" + csv2geojson@^5.0.2: version "5.1.2" resolved "https://registry.yarnpkg.com/csv2geojson/-/csv2geojson-5.1.2.tgz#4869e48d26f849fbbe93f90b76094fb1861b7c72" @@ -5468,6 +5661,15 @@ dash-ast@^2.0.1: resolved "https://registry.yarnpkg.com/dash-ast/-/dash-ast-2.0.1.tgz#8d0fd2e601c59bf874cc22877ee7dd889f54dee8" integrity sha512-5TXltWJGc+RdnabUGzhRae1TRq6m4gr+3K2wQX0is5/F2yS6MJXJvLyI3ErAnsAXuJoGqvfVD5icRgim07DrxQ== +data-urls@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-2.0.0.tgz#156485a72963a970f5d5821aaf642bef2bf2db9b" + integrity sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ== + dependencies: + abab "^2.0.3" + whatwg-mimetype "^2.3.0" + whatwg-url "^8.0.0" + data-view-buffer@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/data-view-buffer/-/data-view-buffer-1.0.1.tgz#8ea6326efec17a2e42620696e671d7d5a8bc66b2" @@ -5516,6 +5718,13 @@ debug@2.6.9, debug@^2.1.0, debug@^2.1.1, debug@^2.1.3, debug@^2.2.0, debug@^2.3. dependencies: ms "2.0.0" +debug@4, debug@^4.0.0, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@~4.3.1, debug@~4.3.2, debug@~4.3.4: + version "4.3.4" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" + integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== + dependencies: + ms "2.1.2" + debug@^3.0.1, debug@^3.1.0, debug@^3.2.7: version "3.2.7" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" @@ -5523,13 +5732,6 @@ debug@^3.0.1, debug@^3.1.0, debug@^3.2.7: dependencies: ms "^2.1.1" -debug@^4.0.0, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@~4.3.1, debug@~4.3.2, debug@~4.3.4: - version "4.3.4" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" - integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== - dependencies: - ms "2.1.2" - decamelize-keys@^1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.1.tgz#04a2d523b2f18d80d0158a43b895d56dff8d19d8" @@ -5543,6 +5745,11 @@ decamelize@^1.1.0, decamelize@^1.2.0: resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== +decimal.js@^10.2.1: + version "10.4.3" + resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.4.3.tgz#1044092884d245d1b7f65725fa4ad4c6f781cc23" + integrity sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA== + decode-uri-component@^0.2.0: version "0.2.2" resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.2.tgz#e69dbe25d37941171dd540e024c444cd5188e1e9" @@ -5738,6 +5945,13 @@ domelementtype@^2.0.1, domelementtype@^2.2.0: resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.3.0.tgz#5c45e8e869952626331d7aab326d01daf65d589d" integrity sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw== +domexception@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/domexception/-/domexception-2.0.1.tgz#fb44aefba793e1574b0af6aed2801d057529f304" + integrity sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg== + dependencies: + webidl-conversions "^5.0.0" + domhandler@^4.2.0, domhandler@^4.2.2: version "4.3.1" resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.3.1.tgz#8d792033416f59d68bc03a5aa7b018c1ca89279c" @@ -5819,11 +6033,16 @@ ee-first@1.1.1: resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== -electron-to-chromium@^1.2.7, electron-to-chromium@^1.3.47, electron-to-chromium@^1.4.668: +electron-to-chromium@^1.2.7, electron-to-chromium@^1.4.668: version "1.4.733" resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.733.tgz#708d51ce01a7ed3b401d5ced85e9f5d504fd4217" integrity sha512-gUI9nhI2iBGF0OaYYLKOaOtliFMl+Bt1rY7VmEjwxOxqoYLub/D9xmduPEhbw2imE6gYkJKhIE5it+KE2ulVxQ== +electron-to-chromium@^1.3.47: + version "1.4.746" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.746.tgz#787213e75f6c7bccb55dfe8b68170555c548d093" + integrity sha512-jeWaIta2rIG2FzHaYIhSuVWqC6KJYo7oSBX4Jv7g+aVujKztfvdpf+n6MGwZdC5hQXbax4nntykLH2juIQrfPg== + elliptic@^6.5.3, elliptic@^6.5.5: version "6.5.5" resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.5.tgz#c715e09f78b6923977610d4c2346d6ce22e6dded" @@ -5866,7 +6085,7 @@ ember-assign-polyfill@2.0.2: ember-cli-babel "^6.6.0" ember-cli-version-checker "^1.2.0" -ember-auto-import@^1.11.2, ember-auto-import@^1.11.3: +ember-auto-import@^1.11.2, ember-auto-import@^1.11.3, ember-auto-import@^1.2.19: version "1.12.2" resolved "https://registry.yarnpkg.com/ember-auto-import/-/ember-auto-import-1.12.2.tgz#cc7298ee5c0654b0249267de68fb27a2861c3579" integrity sha512-gLqML2k77AuUiXxWNon1FSzuG1DV7PEPpCLCU5aJvf6fdL6rmFfElsZRh+8ELEB/qP9dT+LHjNEunVzd2dYc8A== @@ -6010,13 +6229,14 @@ ember-cached-decorator-polyfill@^0.1.4: ember-cli-babel "^7.21.0" ember-cli-babel-plugin-helpers "^1.1.1" -ember-class-based-modifier@^0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/ember-class-based-modifier/-/ember-class-based-modifier-0.10.0.tgz#bb40c05440a959d84e9e2f5038e3894773686d19" - integrity sha512-GPPOCYmRibGBUfiuq7oHQAGXgM6X8LK2I2crvQadqwbft5PjXDbR6x1xnOQ8TDWeOE0EluahXXOgWgdUVcmaMQ== +ember-classic-decorator@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/ember-classic-decorator/-/ember-classic-decorator-2.0.1.tgz#3ea29890959ff7ed0d0fa77bc49fca7142c586af" + integrity sha512-WQH0tY3vZ25fpcqt9xIPnIH3GzXylPFoLmauQFpNZLPtb6/jGuH8EzpFtAjhzakX+zSJb4/36iTaF5QA7aLxow== dependencies: - ember-cli-babel "^7.10.0" - ember-modifier-manager-polyfill "^1.2.0" + "@embroider/macros" "^0.29.0" + babel-plugin-filter-imports "^3.0.0" + ember-cli-babel "^7.11.1" ember-classic-decorator@^3.0.1: version "3.0.1" @@ -6041,6 +6261,38 @@ ember-cli-babel-plugin-helpers@^1.0.0, ember-cli-babel-plugin-helpers@^1.1.0, em resolved "https://registry.yarnpkg.com/ember-cli-babel-plugin-helpers/-/ember-cli-babel-plugin-helpers-1.1.1.tgz#5016b80cdef37036c4282eef2d863e1d73576879" integrity sha512-sKvOiPNHr5F/60NLd7SFzMpYPte/nnGkq/tMIfXejfKHIhaiIkYFqX8Z9UFTKWLLn+V7NOaby6niNPZUdvKCRw== +ember-cli-babel@7.22.1: + version "7.22.1" + resolved "https://registry.yarnpkg.com/ember-cli-babel/-/ember-cli-babel-7.22.1.tgz#cad28b89cf0e184c93b863d09bc5ba4ce1d2e453" + integrity sha512-kCT8WbC1AYFtyOpU23ESm22a+gL6fWv8Nzwe8QFQ5u0piJzM9MEudfbjADEaoyKTrjMQTDsrWwEf3yjggDsOng== + dependencies: + "@babel/core" "^7.11.0" + "@babel/helper-compilation-targets" "^7.10.4" + "@babel/plugin-proposal-class-properties" "^7.10.4" + "@babel/plugin-proposal-decorators" "^7.10.5" + "@babel/plugin-transform-modules-amd" "^7.10.5" + "@babel/plugin-transform-runtime" "^7.11.0" + "@babel/plugin-transform-typescript" "^7.11.0" + "@babel/polyfill" "^7.10.4" + "@babel/preset-env" "^7.11.0" + "@babel/runtime" "^7.11.0" + amd-name-resolver "^1.2.1" + babel-plugin-debug-macros "^0.3.3" + babel-plugin-ember-data-packages-polyfill "^0.1.2" + babel-plugin-ember-modules-api-polyfill "^3.1.1" + babel-plugin-module-resolver "^3.1.1" + broccoli-babel-transpiler "^7.7.0" + broccoli-debug "^0.6.4" + broccoli-funnel "^2.0.1" + broccoli-source "^1.1.0" + clone "^2.1.2" + ember-cli-babel-plugin-helpers "^1.1.0" + ember-cli-version-checker "^4.1.0" + ensure-posix-path "^1.0.2" + fixturify-project "^1.10.0" + rimraf "^3.0.1" + semver "^5.5.0" + ember-cli-babel@^6.0.0-beta.4, ember-cli-babel@^6.1.0, ember-cli-babel@^6.10.0, ember-cli-babel@^6.11.0, ember-cli-babel@^6.16.0, ember-cli-babel@^6.18.0, ember-cli-babel@^6.3.0, ember-cli-babel@^6.6.0, ember-cli-babel@^6.7.2, ember-cli-babel@^6.8.1, ember-cli-babel@^6.8.2, ember-cli-babel@^6.9.0: version "6.18.0" resolved "https://registry.yarnpkg.com/ember-cli-babel/-/ember-cli-babel-6.18.0.tgz#3f6435fd275172edeff2b634ee7b29ce74318957" @@ -6060,7 +6312,7 @@ ember-cli-babel@^6.0.0-beta.4, ember-cli-babel@^6.1.0, ember-cli-babel@^6.10.0, ember-cli-version-checker "^2.1.2" semver "^5.5.0" -ember-cli-babel@^7.0.0, ember-cli-babel@^7.1.0, ember-cli-babel@^7.1.2, ember-cli-babel@^7.1.3, ember-cli-babel@^7.10.0, ember-cli-babel@^7.11.1, ember-cli-babel@^7.13.0, ember-cli-babel@^7.19.0, ember-cli-babel@^7.20.5, ember-cli-babel@^7.21.0, ember-cli-babel@^7.22.1, ember-cli-babel@^7.23.0, ember-cli-babel@^7.23.1, ember-cli-babel@^7.26.0, ember-cli-babel@^7.26.10, ember-cli-babel@^7.26.11, ember-cli-babel@^7.26.3, ember-cli-babel@^7.26.5, ember-cli-babel@^7.26.6, ember-cli-babel@^7.4.1, ember-cli-babel@^7.5.0, ember-cli-babel@^7.7.0, ember-cli-babel@^7.7.3, ember-cli-babel@^7.8.0: +ember-cli-babel@^7.0.0, ember-cli-babel@^7.1.0, ember-cli-babel@^7.1.2, ember-cli-babel@^7.1.3, ember-cli-babel@^7.10.0, ember-cli-babel@^7.11.1, ember-cli-babel@^7.13.0, ember-cli-babel@^7.19.0, ember-cli-babel@^7.20.5, ember-cli-babel@^7.21.0, ember-cli-babel@^7.22.1, ember-cli-babel@^7.23.0, ember-cli-babel@^7.23.1, ember-cli-babel@^7.26.0, ember-cli-babel@^7.26.10, ember-cli-babel@^7.26.11, ember-cli-babel@^7.26.3, ember-cli-babel@^7.26.5, ember-cli-babel@^7.26.6, ember-cli-babel@^7.4.1, ember-cli-babel@^7.5.0, ember-cli-babel@^7.7.3, ember-cli-babel@^7.8.0: version "7.26.11" resolved "https://registry.yarnpkg.com/ember-cli-babel/-/ember-cli-babel-7.26.11.tgz#50da0fe4dcd99aada499843940fec75076249a9f" integrity sha512-JJYeYjiz/JTn34q7F5DSOjkkZqy8qwFOOxXfE6pe9yEJqWGu4qErKxlz8I22JoVEQ/aBUO+OcKTpmctvykM9YA== @@ -6298,7 +6550,7 @@ ember-cli-htmlbars@^4.0.8, ember-cli-htmlbars@^4.2.0, ember-cli-htmlbars@^4.3.1: strip-bom "^4.0.0" walk-sync "^2.0.2" -ember-cli-htmlbars@^5.1.2, ember-cli-htmlbars@^5.3.1, ember-cli-htmlbars@^5.7.1, ember-cli-htmlbars@^5.7.2: +ember-cli-htmlbars@^5.1.2, ember-cli-htmlbars@^5.3.1, ember-cli-htmlbars@^5.7.1: version "5.7.2" resolved "https://registry.yarnpkg.com/ember-cli-htmlbars/-/ember-cli-htmlbars-5.7.2.tgz#e0cd2fb3c20d85fe4c3e228e6f0590ee1c645ba8" integrity sha512-Uj6R+3TtBV5RZoJY14oZn/sNPnc+UgmC8nb5rI4P3fR/gYoyTFIZSXiIM7zl++IpMoIrocxOrgt+mhonKphgGg== @@ -6320,7 +6572,7 @@ ember-cli-htmlbars@^5.1.2, ember-cli-htmlbars@^5.3.1, ember-cli-htmlbars@^5.7.1, strip-bom "^4.0.0" walk-sync "^2.2.0" -ember-cli-htmlbars@^6.0.0, ember-cli-htmlbars@^6.0.1, ember-cli-htmlbars@^6.1.0, ember-cli-htmlbars@^6.1.1, ember-cli-htmlbars@^6.2.0: +ember-cli-htmlbars@^6.0.0, ember-cli-htmlbars@^6.0.1, ember-cli-htmlbars@^6.1.0, ember-cli-htmlbars@^6.1.1, ember-cli-htmlbars@^6.2.0, ember-cli-htmlbars@^6.3.0: version "6.3.0" resolved "https://registry.yarnpkg.com/ember-cli-htmlbars/-/ember-cli-htmlbars-6.3.0.tgz#ac85f2bbd09788992ab7f9ca832cd044fb8e5798" integrity sha512-N9Y80oZfcfWLsqickMfRd9YByVcTGyhYRnYQ2XVPVrp6jyUyOeRWmEAPh7ERSXpp8Ws4hr/JB9QVQrn/yZa+Ag== @@ -6380,7 +6632,7 @@ ember-cli-moment-shim@^3.8.0: moment "^2.19.3" moment-timezone "^0.5.13" -ember-cli-node-assets@0.2.2, ember-cli-node-assets@^0.2.2: +ember-cli-node-assets@0.2.2: version "0.2.2" resolved "https://registry.yarnpkg.com/ember-cli-node-assets/-/ember-cli-node-assets-0.2.2.tgz#d2d55626e7cc6619f882d7fe55751f9266022708" integrity sha512-pFyjlhzwx2FxAmkxSVJvP+i+MwHDhmgsmma1ZQbFLYwBeufo1GIzqSJUfStcpOE1NDg8fXm2yZVVzdZYf9lW2w== @@ -6794,6 +7046,13 @@ ember-copy@^1.0.0: dependencies: ember-cli-babel "^6.6.0" +ember-copy@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/ember-copy/-/ember-copy-2.0.1.tgz#13192b12a250324bb4a8b4547a680b113f4e3041" + integrity sha512-N/XFvZszrzyyX4IcNoeK4mJvIItNuONumhPLqi64T8NDjJkxBj4Pq61rvMkJx/9eZ8alzE4I8vYKOLxT0FvRuQ== + dependencies: + ember-cli-babel "^7.22.1" + ember-cp-validations@^4.0.0-beta.10: version "4.0.0" resolved "https://registry.yarnpkg.com/ember-cp-validations/-/ember-cp-validations-4.0.0.tgz#129a2672ca291cc7386f2024809f7845e7d8bd43" @@ -6879,7 +7138,7 @@ ember-element-helper@^0.8.5: "@embroider/addon-shim" "^1.8.3" "@embroider/util" "^1.0.0" -ember-elsewhere@^1.0.2: +ember-elsewhere@^1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/ember-elsewhere/-/ember-elsewhere-1.2.2.tgz#7d6e8ebbf64fa03b62a0710d9d009988ff899834" integrity sha512-2Ay0cIRgObLZcfwSqEl+JTKAadi33h/QCj91OQFhYJbMnmxsTkoc9YOibXL31jopsVmQhg0F1npTSPJKP2O9eg== @@ -6940,22 +7199,14 @@ ember-functions-as-helper-polyfill@^2.1.2: ember-cli-typescript "^5.0.0" ember-cli-version-checker "^5.1.2" -ember-gestures@^1.1.1: - version "1.1.5" - resolved "https://registry.yarnpkg.com/ember-gestures/-/ember-gestures-1.1.5.tgz#0d82f721c8606694f113f1cc7eb04e28d448989d" - integrity sha512-bzLTe1HzpFCUEZHX89ysTXMf6qYp+7U1ZyHP3gJr31Ik/pCBwfsvDxOr+JIImsnhkDKkuZSrQSvlQSrQgXM6cA== +ember-gesture-modifiers@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/ember-gesture-modifiers/-/ember-gesture-modifiers-1.1.1.tgz#7714688f7ceaaf1a7e4992b3cc01e38428b82528" + integrity sha512-Kd7SFNaWGBNNbAZSeBQGVjMuHdP8RtLDAdGzcmTpOtIaK1EyYL3PrsDJAjaKVOycCwjQEYCYnty+ptdz+nv4bQ== dependencies: - animation-frame "~0.2.4" - broccoli-funnel "^2.0.2" - broccoli-merge-trees "^3.0.2" - ember-class-based-modifier "^0.10.0" - ember-cli-babel "^7.7.0" - ember-cli-htmlbars "^2.0.1" - ember-cli-version-checker "^2.1.0" - ember-copy "^1.0.0" - fastboot-transform "^0.1.3" - hammerjs "^2.0.8" - resolve "^1.10.0" + ember-cli-babel "^7.26.3" + ember-cli-htmlbars "^5.7.1" + ember-modifier "^2.1.0" ember-get-config@, ember-get-config@^2.1.1: version "2.1.1" @@ -7121,20 +7372,20 @@ ember-load@0.0.17: ember-cli-htmlbars "^3.0.0" ember-cli-version-checker "^3.0.0" -ember-local-storage@^1.7.1: - version "1.7.2" - resolved "https://registry.yarnpkg.com/ember-local-storage/-/ember-local-storage-1.7.2.tgz#b8a9b60186d0c3fa508d308db025291d0d4a2671" - integrity sha512-1QS38RKbwy2w8n6nqZkjOvnROSbObExLkkfmhXxmhB2A/wLUp9kJnGYFGw8K9NLUkUXrm0OgasKIjf0dBIRO/A== +ember-local-storage@^2.0.2: + version "2.0.7" + resolved "https://registry.yarnpkg.com/ember-local-storage/-/ember-local-storage-2.0.7.tgz#2816d2e43d305211b13722a6a6e1fe9037367331" + integrity sha512-EPvxH/27mIzrX/EEgng+FG6HD0ri/God9OH/9mhmgPSXrgMNq/614Z3NMnooM4QKIEBAvr0p+p1UL2DgrTTMNg== dependencies: - blob-polyfill "^2.0.20171115" - broccoli-funnel "^2.0.1" - broccoli-merge-trees "^2.0.0" - broccoli-stew "^1.5.0" - chalk "^2.3.0" - ember-cli-babel "^7.11.1" + blob-polyfill "^7.0.20220408" + broccoli-funnel "^3.0.8" + broccoli-merge-trees "^4.2.0" + broccoli-stew "^3.0.0" + ember-cli-babel "^7.26.11" ember-cli-string-utils "^1.1.0" - ember-cli-version-checker "^2.1.0" - ember-copy "^1.0.0" + ember-cli-version-checker "^5.1.2" + ember-copy "^2.0.1" + ember-destroyable-polyfill "^2.0.3" ember-macro-helpers@^2.1.0: version "2.2.0" @@ -7465,6 +7716,15 @@ ember-template-imports@^3.4.2: string.prototype.matchall "^4.0.6" validate-peer-dependencies "^1.1.0" +ember-template-imports@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/ember-template-imports/-/ember-template-imports-4.1.0.tgz#30a7a5fbc2d15a95e07f8730adf4b164402ba960" + integrity sha512-FMC13/FWPZBL4zMkFtspgGqc9zYfrUXf8/MV83Eke3ZYVR4oKb9CuB65BRmgCvFwv8R5PGkpUhks0i5kjYeAHw== + dependencies: + broccoli-stew "^3.0.0" + content-tag "^2.0.1" + ember-cli-version-checker "^5.1.2" + ember-template-lint-plugin-prettier@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/ember-template-lint-plugin-prettier/-/ember-template-lint-plugin-prettier-5.0.0.tgz#1a2c8c87fee54347997c20017f7842b052a78f54" @@ -7514,13 +7774,13 @@ ember-template-recast@^6.1.4: tmp "^0.2.1" workerpool "^6.4.0" -ember-tether@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/ember-tether/-/ember-tether-1.0.0.tgz#6117ea7351927887cb74fa5d46097dd300280c2d" - integrity sha512-/qfAJZmsHSWrNGC0Ry6jqwpxr/ksO+fnBJIJM5DbDfRw4HlSQDw+pACpcLKCrgSW/JU+hIdedIvKwIbPbR9Dzw== +ember-tether@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/ember-tether/-/ember-tether-2.0.1.tgz#29cab1463c43ebc22c836887b25d9b5106231366" + integrity sha512-ECjmFVqo58YK6SmrBW77hmp1wE76n9azl3H6oMvYOXLA4FraOB4xhuk/VCV/XPbG0p1bArKepGjxM8Qbu8g0Lw== dependencies: - ember-cli-babel "^6.6.0" - ember-cli-node-assets "^0.2.2" + ember-auto-import "^1.2.19" + ember-cli-babel "^7.1.2" tether "^1.4.0" ember-text-measurer@^0.6.0: @@ -7531,15 +7791,16 @@ ember-text-measurer@^0.6.0: ember-cli-babel "^7.19.0" ember-cli-htmlbars "^4.3.1" -ember-toggle@^6.0.1: - version "6.0.3" - resolved "https://registry.yarnpkg.com/ember-toggle/-/ember-toggle-6.0.3.tgz#da58ce496b272cd1004524058221aff73b9f33f6" - integrity sha512-SnovlbjY+I3+XUDPXnEyK1grymwvzWH9v7zEeeWK3+aE2JDxABjVBE0hbgzVghvPoyEzYBz1o+7VsDUYuSxmiA== +ember-toggle@^7.1.1: + version "7.1.1" + resolved "https://registry.yarnpkg.com/ember-toggle/-/ember-toggle-7.1.1.tgz#071d4275a534a837887cf4729a92f05c000c6ca1" + integrity sha512-r/tGfWx0yMyEBzD+2IAQcJUERnOjJApYYWMAcqm7NdpQcRHy9yvPRZy63i52PGxDtdAtpedBExyQp+yIV+mBtg== dependencies: - ember-cli-babel "^7.7.3" - ember-cli-htmlbars "^3.0.1" - ember-gestures "^1.1.1" - ember-runtime-enumerable-includes-polyfill "^2.0.0" + ember-classic-decorator "^2.0.0" + ember-cli-babel "7.22.1" + ember-cli-htmlbars "^5.3.1" + ember-decorators "^6.1.1" + ember-gesture-modifiers "^1.0.0" ember-tooltips@^3.4.0: version "3.6.0" @@ -7926,7 +8187,7 @@ escape-string-regexp@^4.0.0: resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== -escodegen@^2.1.0: +escodegen@^2.0.0, escodegen@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-2.1.0.tgz#ba93bbb7a43986d29d6041f99f5262da773e2e17" integrity sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w== @@ -8468,6 +8729,20 @@ fast-ordered-set@^1.0.0, fast-ordered-set@^1.0.2: dependencies: blank-object "^1.0.1" +fast-sourcemap-concat@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/fast-sourcemap-concat/-/fast-sourcemap-concat-1.4.0.tgz#122c330d4a2afaff16ad143bc9674b87cd76c8ad" + integrity sha512-x90Wlx/2C83lfyg7h4oguTZN4MyaVfaiUSJQNpU+YEA0Odf9u659Opo44b0LfoVg9G/bOE++GdID/dkyja+XcA== + dependencies: + chalk "^2.0.0" + fs-extra "^5.0.0" + heimdalljs-logger "^0.1.9" + memory-streams "^0.1.3" + mkdirp "^0.5.0" + source-map "^0.4.2" + source-map-url "^0.3.0" + sourcemap-validator "^1.1.0" + fast-sourcemap-concat@^2.1.0: version "2.1.1" resolved "https://registry.yarnpkg.com/fast-sourcemap-concat/-/fast-sourcemap-concat-2.1.1.tgz#3647fd5876deace53d9a1c418061199417911801" @@ -8569,6 +8844,11 @@ filenamify@^4.3.0: strip-outer "^1.0.1" trim-repeated "^1.0.0" +filesize@^4.1.2: + version "4.2.1" + resolved "https://registry.yarnpkg.com/filesize/-/filesize-4.2.1.tgz#ab1cb2069db5d415911c1a13e144c0e743bc89bc" + integrity sha512-bP82Hi8VRZX/TUBKfE24iiUGsB/sfm2WUrwTQyAzQrhO3V9IhcBBNBXMyzLY5orACxRyYJ3d2HeRVX+eFv4lmA== + filesize@^6.1.0: version "6.4.0" resolved "https://registry.yarnpkg.com/filesize/-/filesize-6.4.0.tgz#914f50471dd66fdca3cefe628bd0cde4ef769bcd" @@ -8814,6 +9094,15 @@ for-in@^1.0.2: resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" integrity sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ== +form-data@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-3.0.1.tgz#ebd53791b78356a99af9a300d4282c4d5eb9755f" + integrity sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.8" + mime-types "^2.1.12" + form-data@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452" @@ -9447,12 +9736,7 @@ growly@^1.3.0: resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" integrity sha512-+xGQY0YyAWCnqy7Cd++hc2JqMYzlm0dG30Jd0beaA64sROr8C4nt8Yc9V5Ro3avlSUDTN0ulqP/VBKi1/lLygw== -hammerjs@^2.0.8: - version "2.0.8" - resolved "https://registry.yarnpkg.com/hammerjs/-/hammerjs-2.0.8.tgz#04ef77862cff2bb79d30f7692095930222bf60f1" - integrity sha512-tSQXBXS/MWQOn/RKckawJ61vvsDpCom87JgxiYdGwHdOa0ht0vzUWDlfioofFCRU0L+6NGDt6XzbgoJvZkMeRQ== - -handlebars@^4.0.4, handlebars@^4.3.1, handlebars@^4.7.3: +handlebars@^4.0.13, handlebars@^4.0.4, handlebars@^4.3.1, handlebars@^4.4.2, handlebars@^4.7.3: version "4.7.8" resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.7.8.tgz#41c42c18b1be2365439188c77c6afae71c0cd9e9" integrity sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ== @@ -9686,6 +9970,13 @@ hosted-git-info@^4.0.1: dependencies: lru-cache "^6.0.0" +html-encoding-sniffer@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz#42a6dc4fd33f00281176e8b23759ca4e4fa185f3" + integrity sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ== + dependencies: + whatwg-encoding "^1.0.5" + htmlparser2@^7.2.0: version "7.2.0" resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-7.2.0.tgz#8817cdea38bbc324392a90b1990908e81a65f5a5" @@ -9735,6 +10026,15 @@ http-parser-js@>=0.5.1: resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.5.8.tgz#af23090d9ac4e24573de6f6aecc9d84a48bf20e3" integrity sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q== +http-proxy-agent@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz#8a8c8ef7f5932ccf953c296ca8291b95aa74aa3a" + integrity sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg== + dependencies: + "@tootallnate/once" "1" + agent-base "6" + debug "4" + http-proxy@^1.13.1, http-proxy@^1.18.1: version "1.18.1" resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.18.1.tgz#401541f0534884bbf95260334e72f88ee3976549" @@ -9749,6 +10049,14 @@ https-browserify@^1.0.0: resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" integrity sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg== +https-proxy-agent@^5.0.0: + version "5.0.1" + resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6" + integrity sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA== + dependencies: + agent-base "6" + debug "4" + https@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/https/-/https-1.0.0.tgz#3c37c7ae1a8eeb966904a2ad1e975a194b7ed3a4" @@ -10188,6 +10496,11 @@ is-plain-object@^2.0.3, is-plain-object@^2.0.4: dependencies: isobject "^3.0.1" +is-potential-custom-element-name@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" + integrity sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ== + is-redirect@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-redirect/-/is-redirect-1.0.0.tgz#1d03dded53bd8db0f30c26e4f95d36fc7c87dc24" @@ -10419,6 +10732,39 @@ js-yaml@^4.1.0: dependencies: argparse "^2.0.1" +jsdom@^16.4.0: + version "16.7.0" + resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-16.7.0.tgz#918ae71965424b197c819f8183a754e18977b710" + integrity sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw== + dependencies: + abab "^2.0.5" + acorn "^8.2.4" + acorn-globals "^6.0.0" + cssom "^0.4.4" + cssstyle "^2.3.0" + data-urls "^2.0.0" + decimal.js "^10.2.1" + domexception "^2.0.1" + escodegen "^2.0.0" + form-data "^3.0.0" + html-encoding-sniffer "^2.0.1" + http-proxy-agent "^4.0.1" + https-proxy-agent "^5.0.0" + is-potential-custom-element-name "^1.0.1" + nwsapi "^2.2.0" + parse5 "6.0.1" + saxes "^5.0.1" + symbol-tree "^3.2.4" + tough-cookie "^4.0.0" + w3c-hr-time "^1.0.2" + w3c-xmlserializer "^2.0.0" + webidl-conversions "^6.1.0" + whatwg-encoding "^1.0.5" + whatwg-mimetype "^2.3.0" + whatwg-url "^8.5.0" + ws "^7.4.6" + xml-name-validator "^3.0.0" + jsesc@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" @@ -10429,6 +10775,11 @@ jsesc@^2.5.1: resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== +jsesc@~0.3.x: + version "0.3.0" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.3.0.tgz#1bf5ee63b4539fe2e26d0c1e99c240b97a457972" + integrity sha512-UHQmAeTXV+iwEk0aHheJRqo6Or90eDxI6KIYpHSjKLXKuKlPt1CQ7tGBerFcFA8uKU5mYxiPMlckmFptd5XZzA== + jsesc@~0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" @@ -10874,6 +11225,11 @@ lodash.flatten@^3.0.2: lodash._baseflatten "^3.0.0" lodash._isiterateecall "^3.0.0" +lodash.foreach@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.foreach/-/lodash.foreach-4.5.0.tgz#1a6a35eace401280c7f06dddec35165ab27e3e53" + integrity sha512-aEXTF4d+m05rVOAUG3z4vZZ4xVexLKZGF0lIxuHZ1Hplpk/3B6Z1+/ICICYRLm7c41Z2xiejbkCkJoTlypoXhQ== + lodash.isarguments@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz#2f573d85c6a24289ff00663b491c1d338ff3458a" @@ -10943,7 +11299,7 @@ lodash.uniqby@^4.7.0: resolved "https://registry.yarnpkg.com/lodash.uniqby/-/lodash.uniqby-4.7.0.tgz#d99c07a669e9e6d24e1362dfe266c67616af1302" integrity sha512-e/zcLx6CSbmaEgFHCA7BnoQKyCtKMxnuWrJygbwPs/AIn+IMKl66L8/s+wBUn5LRw2pZx3bUHibiV1b6aTWIww== -lodash@^4.0.0, lodash@^4.17.12, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.21, lodash@^4.17.4, lodash@^4.5.1, lodash@^4.6.1: +lodash@^4.0.0, lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.12, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.21, lodash@^4.17.4, lodash@^4.5.1, lodash@^4.6.1, lodash@^4.7.0: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== @@ -11957,6 +12313,11 @@ num2fraction@^1.2.2: resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" integrity sha512-Y1wZESM7VUThYY+4W+X4ySH2maqcA+p7UR+w8VWNWVAd6lwuXXWz/w/Cz43J/dI2I+PS6wD5N+bJUF+gjWvIqg== +nwsapi@^2.2.0: + version "2.2.9" + resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.9.tgz#7f3303218372db2e9f27c27766bcfc59ae7e61c6" + integrity sha512-2f3F0SEEer8bBu0dsNCFF50N0cTThV1nWFYcEYFZttdW0lDAoybv9cQoK7X7/68Z89S7FoRrVjP1LPX4XRf9vg== + object-assign@4.1.1, object-assign@^4, object-assign@^4.0.1, object-assign@^4.1.0: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" @@ -12339,7 +12700,7 @@ parse-static-imports@^1.1.0: resolved "https://registry.yarnpkg.com/parse-static-imports/-/parse-static-imports-1.1.0.tgz#ae2f18f18da1a993080ae406a5219455c0bbad5d" integrity sha512-HlxrZcISCblEV0lzXmAHheH/8qEkKgmqkdxyHTPbSqsTUV8GzqmN1L+SSti+VbNPfbBO3bYLPHDiUs2avbAdbA== -parse5@^6.0.1: +parse5@6.0.1, parse5@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== @@ -12641,7 +13002,16 @@ prettier-linter-helpers@^1.0.0: dependencies: fast-diff "^1.1.2" -prettier@^3.2.5: +prettier-plugin-ember-template-tag@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/prettier-plugin-ember-template-tag/-/prettier-plugin-ember-template-tag-2.0.2.tgz#306672e3bc874b4cf34d583de9a2b0e69b06e479" + integrity sha512-eSEnrxdD3NtMyIGwG2FxcTPOdpcbCK7VnBNhAufdaoeOIs+mNwmTsZdkWxr/LMhBdgtR1IUQB0l0YQhUQGz6kQ== + dependencies: + "@babel/core" "^7.23.6" + content-tag "^1.2.2" + prettier "^3.1.1" + +prettier@^3.1.1, prettier@^3.2.5: version "3.2.5" resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.2.5.tgz#e52bc3090586e824964a8813b09aba6233b28368" integrity sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A== @@ -12734,6 +13104,11 @@ prr@~1.0.1: resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" integrity sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw== +psl@^1.1.33: + version "1.9.0" + resolved "https://registry.yarnpkg.com/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7" + integrity sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag== + public-encrypt@^4.0.0: version "4.0.3" resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.3.tgz#4fcc9d77a07e48ba7527e7cbe0de33d0701331e0" @@ -12776,7 +13151,7 @@ punycode@^1.2.4, punycode@^1.4.1: resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" integrity sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ== -punycode@^2.1.0: +punycode@^2.1.0, punycode@^2.1.1: version "2.3.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.1.tgz#027422e2faec0b25e1549c3e1bd8309b9133b6e5" integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg== @@ -12809,6 +13184,11 @@ querystring-es3@^0.2.0: resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73" integrity sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA== +querystringify@^2.1.1: + version "2.2.0" + resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.2.0.tgz#3345941b4153cb9d082d8eee4cda2016a9aef7f6" + integrity sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ== + queue-microtask@^1.2.2: version "1.2.3" resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" @@ -13260,7 +13640,7 @@ resolve-from@^4.0.0: resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== -resolve-package-path@^1.0.11, resolve-package-path@^1.2.6: +resolve-package-path@^1.0.11, resolve-package-path@^1.2.2, resolve-package-path@^1.2.6: version "1.2.7" resolved "https://registry.yarnpkg.com/resolve-package-path/-/resolve-package-path-1.2.7.tgz#2a7bc37ad96865e239330e3102c31322847e652e" integrity sha512-fVEKHGeK85bGbVFuwO9o1aU0n3vqQGrezPc51JGu9UTXpFQfWq5qCeKxyaRUSvephs+06c5j5rPq/dzHGEo8+Q== @@ -13518,15 +13898,22 @@ sane@^4.0.0, sane@^4.1.0: minimist "^1.1.1" walker "~1.0.5" -sass@^1.26.3: - version "1.74.1" - resolved "https://registry.yarnpkg.com/sass/-/sass-1.74.1.tgz#686fc227d3707dd25cb2925e1db8e4562be29319" - integrity sha512-w0Z9p/rWZWelb88ISOLyvqTWGmtmu2QJICqDBGyNnfG4OUnPX9BBjjYIXUpXCMOOg5MQWNpqzt876la1fsTvUA== +sass@^1.75.0: + version "1.75.0" + resolved "https://registry.yarnpkg.com/sass/-/sass-1.75.0.tgz#91bbe87fb02dfcc34e052ddd6ab80f60d392be6c" + integrity sha512-ShMYi3WkrDWxExyxSZPst4/okE9ts46xZmJDSawJQrnte7M1V9fScVB+uNXOVKRBt0PggHOwoZcn8mYX4trnBw== dependencies: chokidar ">=3.0.0 <4.0.0" immutable "^4.0.0" source-map-js ">=0.6.2 <2.0.0" +saxes@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/saxes/-/saxes-5.0.1.tgz#eebab953fa3b7608dbe94e5dadb15c888fa6696d" + integrity sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw== + dependencies: + xmlchars "^2.2.0" + schema-utils@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-1.0.0.tgz#0b79a93204d7b600d4b2850d1f66c2a34951c770" @@ -13791,7 +14178,7 @@ silent-error@^1.0.0, silent-error@^1.0.1, silent-error@^1.1.1: dependencies: debug "^2.2.0" -simple-html-tokenizer@^0.5.11: +simple-html-tokenizer@^0.5.11, simple-html-tokenizer@^0.5.8: version "0.5.11" resolved "https://registry.yarnpkg.com/simple-html-tokenizer/-/simple-html-tokenizer-0.5.11.tgz#4c5186083c164ba22a7b477b7687ac056ad6b1d9" integrity sha512-C2WEK/Z3HoSFbYq8tI7ni3eOo/NneSPRoPpcM7WdLjFOArFuyXEjAoCdOC3DgMfRyziZQ1hCNR4mrNdWEvD0og== @@ -13979,11 +14366,28 @@ source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== +source-map@~0.1.x: + version "0.1.43" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.43.tgz#c24bc146ca517c1471f5dacbe2571b2b7f9e3346" + integrity sha512-VtCvB9SIQhk3aF6h+N85EaqIaBFIAfZ9Cu+NJHHVvc8BbEcnvDcFw6sqQ2dQrT6SlOrZq3tIvyD9+EGq/lJryQ== + dependencies: + amdefine ">=0.0.4" + sourcemap-codec@^1.4.1, sourcemap-codec@^1.4.8: version "1.4.8" resolved "https://registry.yarnpkg.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4" integrity sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA== +sourcemap-validator@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/sourcemap-validator/-/sourcemap-validator-1.1.1.tgz#3d7d8a399ccab09c1fedc510d65436e25b1c386b" + integrity sha512-pq6y03Vs6HUaKo9bE0aLoksAcpeOo9HZd7I8pI6O480W/zxNZ9U32GfzgtPP0Pgc/K1JHna569nAbOk3X8/Qtw== + dependencies: + jsesc "~0.3.x" + lodash.foreach "^4.5.0" + lodash.template "^4.5.0" + source-map "~0.1.x" + spawn-args@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/spawn-args/-/spawn-args-0.2.0.tgz#fb7d0bd1d70fd4316bd9e3dec389e65f9d6361bb" @@ -14390,6 +14794,11 @@ supports-preserve-symlinks-flag@^1.0.0: resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== +symbol-tree@^3.2.4: + version "3.2.4" + resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" + integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== + symlink-or-copy@^1.0.0, symlink-or-copy@^1.0.1, symlink-or-copy@^1.1.8, symlink-or-copy@^1.2.0, symlink-or-copy@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/symlink-or-copy/-/symlink-or-copy-1.3.1.tgz#9506dd64d8e98fa21dcbf4018d1eab23e77f71fe" @@ -14707,6 +15116,23 @@ tooltip.js@^1.1.5: dependencies: popper.js "^1.0.2" +tough-cookie@^4.0.0: + version "4.1.3" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.1.3.tgz#97b9adb0728b42280aa3d814b6b999b2ff0318bf" + integrity sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw== + dependencies: + psl "^1.1.33" + punycode "^2.1.1" + universalify "^0.2.0" + url-parse "^1.5.3" + +tr46@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-2.1.0.tgz#fa87aa81ca5d5941da8cbf1f9b749dc969a4e240" + integrity sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw== + dependencies: + punycode "^2.1.1" + tr46@~0.0.3: version "0.0.3" resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" @@ -15062,6 +15488,11 @@ universalify@^0.1.0: resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== +universalify@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.2.0.tgz#6451760566fa857534745ab1dde952d1b1761be0" + integrity sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg== + universalify@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.1.tgz#168efc2180964e6386d061e094df61afe239b18d" @@ -15141,6 +15572,14 @@ url-parse-lax@^3.0.0: dependencies: prepend-http "^2.0.0" +url-parse@^1.5.3: + version "1.5.10" + resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.5.10.tgz#9d3c2f736c1d75dd3bd2be507dcc111f1e2ea9c1" + integrity sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ== + dependencies: + querystringify "^2.1.1" + requires-port "^1.0.0" + url-to-options@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/url-to-options/-/url-to-options-1.0.1.tgz#1505a03a289a48cbd7a434efbaeec5055f5633a9" @@ -15269,11 +15708,25 @@ vm-browserify@^1.0.1: resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-1.1.2.tgz#78641c488b8e6ca91a75f511e7a3b32a86e5dda0" integrity sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ== +w3c-hr-time@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz#0a89cdf5cc15822df9c360543676963e0cc308cd" + integrity sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ== + dependencies: + browser-process-hrtime "^1.0.0" + w3c-keyname@^2.2.4: version "2.2.8" resolved "https://registry.yarnpkg.com/w3c-keyname/-/w3c-keyname-2.2.8.tgz#7b17c8c6883d4e8b86ac8aba79d39e880f8869c5" integrity sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ== +w3c-xmlserializer@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz#3e7104a05b75146cc60f564380b7f683acf1020a" + integrity sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA== + dependencies: + xml-name-validator "^3.0.0" + walk-sync@^0.2.5: version "0.2.7" resolved "https://registry.yarnpkg.com/walk-sync/-/walk-sync-0.2.7.tgz#b49be4ee6867657aeb736978b56a29d10fa39969" @@ -15373,6 +15826,16 @@ webidl-conversions@^3.0.0: resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== +webidl-conversions@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-5.0.0.tgz#ae59c8a00b121543a2acc65c0434f57b0fc11aff" + integrity sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA== + +webidl-conversions@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz#9111b4d7ea80acd40f5270d666621afa78b69514" + integrity sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w== + webpack-sources@^1.4.0, webpack-sources@^1.4.1: version "1.4.3" resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.3.tgz#eedd8ec0b928fbf1cbfe994e22d2d890f330a933" @@ -15459,11 +15922,23 @@ websocket-extensions@>=0.1.1: resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.4.tgz#7f8473bc839dfd87608adb95d7eb075211578a42" integrity sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg== +whatwg-encoding@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0" + integrity sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw== + dependencies: + iconv-lite "0.4.24" + whatwg-fetch@^3.6.2: version "3.6.20" resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.6.20.tgz#580ce6d791facec91d37c72890995a0b48d31c70" integrity sha512-EqhiFU6daOA8kpjOWTL0olhVOF3i7OrFzSYiGsEMB8GcXS+RrzauAERX65xMeNWVqxA6HXH2m69Z9LaKKdisfg== +whatwg-mimetype@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf" + integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g== + whatwg-url@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" @@ -15472,6 +15947,15 @@ whatwg-url@^5.0.0: tr46 "~0.0.3" webidl-conversions "^3.0.0" +whatwg-url@^8.0.0, whatwg-url@^8.5.0: + version "8.7.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.7.0.tgz#656a78e510ff8f3937bc0bcbe9f5c0ac35941b77" + integrity sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg== + dependencies: + lodash "^4.7.0" + tr46 "^2.1.0" + webidl-conversions "^6.1.0" + which-boxed-primitive@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6" @@ -15567,6 +16051,16 @@ wrap-ansi@^7.0.0: string-width "^4.1.0" strip-ansi "^6.0.0" +wrap-legacy-hbs-plugin-if-needed@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/wrap-legacy-hbs-plugin-if-needed/-/wrap-legacy-hbs-plugin-if-needed-1.0.1.tgz#6683eb74747f33e7caea54bb2ed85106ef9006b4" + integrity sha512-aJjXe5WwrY0u0dcUgKW3m2SGnxosJ66LLm/QaG0YMHqgA6+J2xwAFZfhSLsQ2BmO5x8PTH+OIxoAXuGz3qBA7A== + dependencies: + "@glimmer/reference" "^0.42.1" + "@glimmer/runtime" "^0.42.1" + "@glimmer/syntax" "^0.42.1" + "@simple-dom/interface" "^1.4.0" + wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" @@ -15582,6 +16076,11 @@ write-file-atomic@^3.0.0: signal-exit "^3.0.2" typedarray-to-buffer "^3.1.5" +ws@^7.4.6: + version "7.5.9" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.9.tgz#54fa7db29f4c7cec68b1ddd3a89de099942bb591" + integrity sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q== + ws@~8.11.0: version "8.11.0" resolved "https://registry.yarnpkg.com/ws/-/ws-8.11.0.tgz#6a0d36b8edfd9f96d8b25683db2f8d7de6e8e143" @@ -15592,6 +16091,16 @@ xdg-basedir@^4.0.0: resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-4.0.0.tgz#4bc8d9984403696225ef83a1573cbbcb4e79db13" integrity sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q== +xml-name-validator@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" + integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw== + +xmlchars@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" + integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw== + xtend@^4.0.0, xtend@^4.0.2, xtend@~4.0.1: version "4.0.2" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" From 30130cf283b588120ff58126b93138d3cfea28f8 Mon Sep 17 00:00:00 2001 From: dvonanderson Date: Wed, 24 Apr 2024 11:12:57 -0400 Subject: [PATCH 12/16] convert `services` to use semi-native classes using `ember-classic-decorators` --- app/services/cleaner.js | 10 +- app/services/codelist.js | 43 +-- app/services/custom-profile.js | 64 ++-- app/services/itis.js | 52 ++- app/services/jsonvalidator.js | 8 +- app/services/keyword.js | 6 +- app/services/mdjson.js | 29 +- app/services/patch.js | 6 +- app/services/settings.js | 26 +- app/services/slider.js | 28 +- package.json | 2 +- yarn.lock | 618 ++++----------------------------- 12 files changed, 243 insertions(+), 649 deletions(-) diff --git a/app/services/cleaner.js b/app/services/cleaner.js index cd28eb542..52f5a81ba 100644 --- a/app/services/cleaner.js +++ b/app/services/cleaner.js @@ -1,3 +1,4 @@ +import classic from 'ember-classic-decorator'; import { isArray } from '@ember/array'; import { isBlank, typeOf } from '@ember/utils'; import Service from '@ember/service'; @@ -18,7 +19,7 @@ const clean = function (obj, options) { return; } - if(((/string|number|boolean/)) + if((((/string|number|boolean/))) .test(typeof obj)) { return obj; } @@ -95,9 +96,10 @@ const clean = function (obj, options) { }, acc); } -const _Service = Service.extend({ - clean: clean -}); +@classic +class _Service extends Service { + clean = clean; +} export { _Service as diff --git a/app/services/codelist.js b/app/services/codelist.js index 356810a92..7e8d90689 100644 --- a/app/services/codelist.js +++ b/app/services/codelist.js @@ -1,8 +1,10 @@ +import classic from 'ember-classic-decorator'; import { computed } from '@ember/object'; import Service, { inject as service } from '@ember/service'; import codes from 'mdcodes/resources/js/mdcodes.js'; -export default Service.extend({ +@classic +export default class CodelistService extends Service { /** * Codelist Service * @@ -15,7 +17,7 @@ export default Service.extend({ * @class codelist */ init() { - this._super(...arguments); + super.init(...arguments); let codelist = this; @@ -33,14 +35,15 @@ export default Service.extend({ //remove deprecated codes codelist[name]['codelist'] = list.codelist.rejectBy('deprecated'); }); - }, + } /** * Custom Profiles service * * @property customProfiles */ - customProfiles: service('custom-profile'), + @service('custom-profile') + customProfiles; /** * The profiles codelist, updates when number of Custom Profiles change. @@ -50,19 +53,18 @@ export default Service.extend({ * @category computed * @required customProfiles.profiles{[],@each.title} */ - profile: computed( - 'customProfiles.profiles.{[],@each.title}', - function () { - return { - codelist: this.customProfiles.profiles.map((itm) => { - return { - code: itm.id, - codeName: itm.title, - description: itm.description - }; - }) - }; - }), + @computed('customProfiles.profiles.{[],@each.title}') + get profile() { + return { + codelist: this.customProfiles.profiles.map((itm) => { + return { + code: itm.id, + codeName: itm.title, + description: itm.description + }; + }) + }; + } /** * Codelist item title overrides @@ -72,11 +74,12 @@ export default Service.extend({ * @category computed * @required profile */ - codeOverrides: computed('profile', function () { + @computed('profile') + get codeOverrides() { return { scope: { dataset: "geographicDataset" } } - }) -}); + } +} diff --git a/app/services/custom-profile.js b/app/services/custom-profile.js index a957168b3..a8eb35d38 100644 --- a/app/services/custom-profile.js +++ b/app/services/custom-profile.js @@ -1,6 +1,7 @@ +import classic from 'ember-classic-decorator'; +import { map, union } from '@ember/object/computed'; import Service, { inject as service } from '@ember/service'; -import { computed, get } from '@ember/object'; -import { union, map } from '@ember/object/computed'; +import { get, computed } from '@ember/object'; import { isEmpty } from '@ember/utils'; import config from 'mdeditor/config/environment'; @@ -28,17 +29,25 @@ const { * @submodule service * @class custom-profile */ -export default Service.extend({ - store: service(), +@classic +export default class CustomProfileService extends Service { + @service + store; init() { - this._super(...arguments); + super.init(...arguments); this.customProfiles = this.store.peekAll('custom-profile'); - }, - flashMessages: service(), - store: service(), - definitions: service('profile'), + } + + @service + flashMessages; + + @service + store; + + @service('profile') + definitions; /** * String identifying the active profile @@ -46,7 +55,7 @@ export default Service.extend({ * @property active * @type {String} */ - active: null, + active = null; /** * Array of all available profiles @@ -56,7 +65,8 @@ export default Service.extend({ * @category computed * @required customProfiles,coreProfiles */ - profiles: union('customProfiles', 'coreProfiles'), + @union('customProfiles', 'coreProfiles') + profiles; /** * Array of available coreProfile definitions @@ -66,14 +76,15 @@ export default Service.extend({ * @category computed * @required definitions.coreProfiles */ - coreProfiles: map('definitions.coreProfiles', function (itm) { + @map('definitions.coreProfiles', function (itm) { return { id: itm.namespace + '.' + itm.identifier, title: itm.title, description: itm.description, definition: itm } - }), + }) + coreProfiles; /** * Available profiles mapped by profile id @@ -83,13 +94,14 @@ export default Service.extend({ * @category computed * @required profiles.[] */ - mapById: computed('profiles.[]', function () { + @computed('profiles.[]') + get mapById() { return this.profiles.reduce(function (map, profile) { map[profile.id] = profile; return map; }, {}); - }), + } /** * Available profiles mapped by profile alternate id @@ -99,7 +111,8 @@ export default Service.extend({ * @category computed * @required profiles.[] */ - mapByAltId: computed('profiles.[]', function () { + @computed('profiles.[]') + get mapByAltId() { return this.profiles.reduce(function (map, profile) { let alt = get(profile, 'definition.alternateId'); @@ -111,7 +124,7 @@ export default Service.extend({ return map; }, {}); - }), + } /** * The defaultProfile definition @@ -121,9 +134,10 @@ export default Service.extend({ * @category computed * @required mapById */ - defaultProfile: computed('mapById', function () { + @computed('mapById') + get defaultProfile() { return this.mapById[defaultProfileId]; - }), + } /** * The current component profile definition @@ -133,10 +147,11 @@ export default Service.extend({ * @category computed * @required active */ - activeComponents: computed('active', function () { + @computed('active') + get activeComponents() { let comp = get(this.getActiveProfile(), 'definition.components'); return comp || this.defaultProfile.definition.components; - }), + } /** * The currently active schemas @@ -146,9 +161,10 @@ export default Service.extend({ * @category computed * @required active */ - activeSchemas: computed('active', function () { + @computed('active') + get activeSchemas() { return this.getActiveProfile().schemas; - }), + } /** * Get the active profile. @@ -186,4 +202,4 @@ export default Service.extend({ return this.defaultProfile; } -}); +} diff --git a/app/services/itis.js b/app/services/itis.js index 114d103fe..16d498e63 100644 --- a/app/services/itis.js +++ b/app/services/itis.js @@ -1,3 +1,4 @@ +import classic from 'ember-classic-decorator'; import Service, { inject as service } from '@ember/service'; import EmberObject, { get, set, computed } from '@ember/object'; import titleize from 'ember-cli-string-helpers/utils/titleize'; @@ -16,17 +17,20 @@ const proxy = '&sort=score%20desc,nameWOInd%20asc' + '&fl=hierarchySoFarWRanks,hierarchyTSN,kingdom,rank,vernacular,tsn,nameWOInd,usage'; -const Taxa = EmberObject.extend({ - style: computed('status', function () { +@classic +class Taxa extends EmberObject { + @computed('status') + get style() { let status = this.status; return status === 'valid' || status === 'accepted' ? 'success' : 'danger'; - }) -}); + } +} -export default Service.extend({ +@classic +export default class ItisService extends Service { init() { - this._super(...arguments); + super.init(...arguments); this.kingdoms = { "class": "gov.usgs.itis.itis_service.metadata.SvcKingdomNameList", @@ -105,12 +109,18 @@ export default Service.extend({ }] }] }) - }, + } + + @service + settings; + + @service + ajax; + + @service + flashMessages; - settings: service(), - ajax: service(), - flashMessages: service(), - isLoading: false, + isLoading = false; sendQuery(searchString, kingdom, limit = 50) { const formatted = searchString.replace(/(-| )/g, '*'); @@ -159,7 +169,8 @@ export default Service.extend({ this.flashMessages .danger('An error occured during the ITIS query request.'); }); - }, + } + parseDoc(doc) { let { hierarchySoFarWRanks: ranks, @@ -194,10 +205,12 @@ export default Service.extend({ common: common, status: status }); - }, + } + parseHierarchyTSN(tsn) { return tsn.map(t => t.slice(1, t.length - 1).split('$')); - }, + } + parseVernacular(vernacular) { if(!vernacular) { return null; @@ -211,7 +224,8 @@ export default Service.extend({ language: v[1] }; }); - }, + } + parseRanks(ranks, tsn) { return ranks.map((itm, i) => { let split = itm.split('$'); @@ -231,7 +245,8 @@ export default Service.extend({ }; }); }); - }, + } + getBranch(taxon, branches) { let branch = branches.filterBy('taxonomicLevel', taxon.rank).findBy( 'taxonomicName', taxon.value); @@ -248,7 +263,8 @@ export default Service.extend({ } return branch; - }, + } + mergeTaxa(taxa, tree) { taxa.reduce((tree, taxon) => { let branch = this.getBranch(taxon, tree); @@ -261,4 +277,4 @@ export default Service.extend({ return get(branch, 'subClassification'); }, tree); } -}); +} diff --git a/app/services/jsonvalidator.js b/app/services/jsonvalidator.js index 682b6142b..c74f96512 100644 --- a/app/services/jsonvalidator.js +++ b/app/services/jsonvalidator.js @@ -1,3 +1,4 @@ +import classic from 'ember-classic-decorator'; import Service from '@ember/service'; import Ajv from 'ajv'; import * as draft4 from 'ajv/lib/refs/json-schema-draft-04'; @@ -372,6 +373,7 @@ validator.addSchema({ } }, 'jsonapi'); -export default Service.extend({ - validator: validator -}); +@classic +export default class JsonvalidatorService extends Service { + validator = validator; +} diff --git a/app/services/keyword.js b/app/services/keyword.js index 568b9a13b..96d84ce93 100644 --- a/app/services/keyword.js +++ b/app/services/keyword.js @@ -1,3 +1,4 @@ +import classic from 'ember-classic-decorator'; import Service from '@ember/service'; import { A } from '@ember/array'; import EmberObject from '@ember/object'; @@ -54,5 +55,6 @@ service.get('thesaurus') keywordType: 'isoTopicCategory', label: 'ISO Topic Category' }); - -export default Service.extend(service); + +@classic +export default class KeywordService extends Service.extend(service) {} diff --git a/app/services/mdjson.js b/app/services/mdjson.js index c5e0635e1..a6eb0371b 100644 --- a/app/services/mdjson.js +++ b/app/services/mdjson.js @@ -1,3 +1,4 @@ +import classic from 'ember-classic-decorator'; import Service, { inject as service } from '@ember/service'; import { isArray } from '@ember/array'; import EmberObject, { get, set } from '@ember/object'; @@ -36,10 +37,16 @@ const unImplemented = [ 'metadata.resourceInfo.otherResourceLocale', ]; -export default Service.extend({ - cleaner: service(), - contacts: service(), - store: service(), +@classic +export default class MdjsonService extends Service { + @service + cleaner; + + @service + contacts; + + @service + store; injectCitations(json) { let assoc = json.metadata.associatedResource; @@ -91,7 +98,7 @@ export default Service.extend({ set(ref, 'mdRecordId', null); }); } - }, + } injectDictionaries(rec, json) { let ids = rec.get('json.mdDictionary') || []; @@ -109,7 +116,7 @@ export default Service.extend({ } set(json, 'dataDictionary', arr); - }, + } formatRecord(rec, asText) { let _contacts = []; @@ -200,19 +207,19 @@ export default Service.extend({ } return asText ? JSON.stringify(cleaner.clean(json)) : cleaner.clean(json); - }, + } validateRecord(record) { validator.validate('schema', this.formatRecord(record)); return validator; - }, + } validateContact(contact) { validator.validate('contact', contact.get('cleanJson')); return validator; - }, + } validateDictionary(dictionary) { validator.validate( @@ -221,5 +228,5 @@ export default Service.extend({ ); return validator; - }, -}); + } +} diff --git a/app/services/patch.js b/app/services/patch.js index 8c1478726..f4b19bc0e 100644 --- a/app/services/patch.js +++ b/app/services/patch.js @@ -1,3 +1,4 @@ +import classic from 'ember-classic-decorator'; import Service from '@ember/service'; import { get, set, setProperties } from '@ember/object'; import { @@ -6,7 +7,8 @@ import { } from '@ember/array'; import Schemas from 'mdjson-schemas/resources/js/schemas'; -export default Service.extend({ +@classic +export default class PatchService extends Service { applyModelPatch(record) { let type = record.constructor.modelName; @@ -252,4 +254,4 @@ export default Service.extend({ } } } -}); +} diff --git a/app/services/settings.js b/app/services/settings.js index 657716cb2..73611036e 100644 --- a/app/services/settings.js +++ b/app/services/settings.js @@ -1,3 +1,4 @@ +import classic from 'ember-classic-decorator'; import Service, { inject as service } from '@ember/service'; import EmberObject, { set, get } from '@ember/object'; import config from 'mdeditor/config/environment'; @@ -11,15 +12,19 @@ const { environment } = config; -export default Service.extend({ - store: service(), - data: 'null', +@classic +export default class SettingsService extends Service { + @service + store; + + data = 'null'; init() { - this._super(...arguments); + super.init(...arguments); this.setup(); - }, + } + setup() { let me = this; let settings; @@ -54,10 +59,11 @@ export default Service.extend({ } }); - }, - repositoryTemplate: EmberObject.extend({ + } + + repositoryTemplate = EmberObject.extend({ init() { - this._super(...arguments); + super.init(...arguments); } - }) -}); + }); +} diff --git a/app/services/slider.js b/app/services/slider.js index 599355887..0e64d94de 100644 --- a/app/services/slider.js +++ b/app/services/slider.js @@ -1,26 +1,28 @@ +import classic from 'ember-classic-decorator'; +import { observes } from '@ember-decorators/object'; import Service, { inject as service } from '@ember/service'; -import { - observer -} from '@ember/object'; -export default Service.extend({ +@classic +export default class SliderService extends Service { init() { - this._super(...arguments); + super.init(...arguments); this.get('router.currentRouteName'); - }, + } - router: service(), + @service + router; - showSlider: false, - fromName: 'md-slider-content', + showSlider = false; + fromName = 'md-slider-content'; - routeObserver: observer('router.currentRouteName', function () { + @observes('router.currentRouteName') + routeObserver() { this.toggleSlider(false); this.set('fromName', 'md-slider-content'); - }), + } - onClose() {}, + onClose() {} toggleSlider(state) { if(state === undefined) { @@ -31,4 +33,4 @@ export default Service.extend({ this.set('showSlider', !!state); } -}); +} diff --git a/package.json b/package.json index e81238584..c75c7745b 100644 --- a/package.json +++ b/package.json @@ -129,7 +129,7 @@ "ember-template-lint": "^5.0.0", "ember-template-lint-plugin-prettier": "^5.0.0", "ember-tether": "^2.0.0", - "ember-toggle": "^7.1.1", + "ember-toggle": "^6.0.1", "ember-tooltips": "^3.4.0", "ember-truth-helpers": "^2.1.0", "ember-try": "^1.3.0", diff --git a/yarn.lock b/yarn.lock index 7ada0862f..ce6db4d5a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -37,7 +37,7 @@ resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.24.4.tgz#6f102372e9094f25d908ca0d34fc74c74606059a" integrity sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ== -"@babel/core@7.24.4", "@babel/core@^7.0", "@babel/core@^7.0.0", "@babel/core@^7.1.6", "@babel/core@^7.11.0", "@babel/core@^7.12.0", "@babel/core@^7.12.3", "@babel/core@^7.13.8", "@babel/core@^7.16.7", "@babel/core@^7.23.6", "@babel/core@^7.24.0", "@babel/core@^7.3.4": +"@babel/core@7.24.4", "@babel/core@^7.0", "@babel/core@^7.0.0", "@babel/core@^7.1.6", "@babel/core@^7.12.0", "@babel/core@^7.13.8", "@babel/core@^7.16.7", "@babel/core@^7.23.6", "@babel/core@^7.24.0", "@babel/core@^7.3.4": version "7.24.4" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.4.tgz#1f758428e88e0d8c563874741bc4ffc4f71a4717" integrity sha512-MBVlMXP+kkl5394RBLSxxk/iLTeVGuXTV3cIDXavPpMMqnSnt6apKgan/U8O3USWZCWZT/TbgfEpKa4uMgN4Dg== @@ -91,7 +91,7 @@ dependencies: "@babel/types" "^7.22.15" -"@babel/helper-compilation-targets@^7.10.4", "@babel/helper-compilation-targets@^7.12.0", "@babel/helper-compilation-targets@^7.20.7", "@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.23.6": +"@babel/helper-compilation-targets@^7.12.0", "@babel/helper-compilation-targets@^7.20.7", "@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.23.6": version "7.23.6" resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz#4d79069b16cbcf1461289eccfbbd81501ae39991" integrity sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ== @@ -276,7 +276,7 @@ js-tokens "^4.0.0" picocolors "^1.0.0" -"@babel/parser@^7.12.3", "@babel/parser@^7.24.0", "@babel/parser@^7.24.1", "@babel/parser@^7.24.4", "@babel/parser@^7.4.5": +"@babel/parser@^7.24.0", "@babel/parser@^7.24.1", "@babel/parser@^7.24.4", "@babel/parser@^7.4.5": version "7.24.4" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.4.tgz#234487a110d89ad5a3ed4a8a566c36b9453e8c88" integrity sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg== @@ -313,7 +313,7 @@ "@babel/helper-environment-visitor" "^7.22.20" "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-proposal-class-properties@^7.1.0", "@babel/plugin-proposal-class-properties@^7.10.4", "@babel/plugin-proposal-class-properties@^7.16.5", "@babel/plugin-proposal-class-properties@^7.16.7": +"@babel/plugin-proposal-class-properties@^7.1.0", "@babel/plugin-proposal-class-properties@^7.16.5", "@babel/plugin-proposal-class-properties@^7.16.7": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz#b110f59741895f7ec21a6fff696ec46265c446a3" integrity sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ== @@ -321,7 +321,7 @@ "@babel/helper-create-class-features-plugin" "^7.18.6" "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-proposal-decorators@^7.10.5", "@babel/plugin-proposal-decorators@^7.13.5", "@babel/plugin-proposal-decorators@^7.16.7", "@babel/plugin-proposal-decorators@^7.20.13": +"@babel/plugin-proposal-decorators@^7.13.5", "@babel/plugin-proposal-decorators@^7.16.7", "@babel/plugin-proposal-decorators@^7.20.13": version "7.24.1" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.24.1.tgz#bab2b9e174a2680f0a80f341f3ec70f809f8bb4b" integrity sha512-zPEvzFijn+hRvJuX2Vu3KbEBN39LN3f7tW3MQO2LsIs57B26KU+kUc82BdAktS1VCM6libzh45eKGI65lg0cpA== @@ -683,7 +683,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-modules-amd@^7.10.5", "@babel/plugin-transform-modules-amd@^7.12.1", "@babel/plugin-transform-modules-amd@^7.13.0", "@babel/plugin-transform-modules-amd@^7.20.11", "@babel/plugin-transform-modules-amd@^7.24.1": +"@babel/plugin-transform-modules-amd@^7.12.1", "@babel/plugin-transform-modules-amd@^7.13.0", "@babel/plugin-transform-modules-amd@^7.20.11", "@babel/plugin-transform-modules-amd@^7.24.1": version "7.24.1" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.24.1.tgz#b6d829ed15258536977e9c7cc6437814871ffa39" integrity sha512-lAxNHi4HVtjnHd5Rxg3D5t99Xm6H7b04hUS7EHIXcUl2EV4yl1gWdqZrNzXnSrHveL9qMdbODlLF55mvgjAfaQ== @@ -838,7 +838,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-runtime@^7.11.0", "@babel/plugin-transform-runtime@^7.13.9": +"@babel/plugin-transform-runtime@^7.13.9": version "7.24.3" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.24.3.tgz#dc58ad4a31810a890550365cc922e1ff5acb5d7f" integrity sha512-J0BuRPNlNqlMTRJ72eVptpt9VcInbxO6iP3jaxr+1NPhC0UkKL+6oeX6VXMEYdADnuqmMmsBspt4d5w8Y/TCbQ== @@ -886,7 +886,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.24.0" -"@babel/plugin-transform-typescript@^7.11.0", "@babel/plugin-transform-typescript@^7.13.0", "@babel/plugin-transform-typescript@^7.20.13": +"@babel/plugin-transform-typescript@^7.13.0", "@babel/plugin-transform-typescript@^7.20.13": version "7.24.4" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.24.4.tgz#03e0492537a4b953e491f53f2bc88245574ebd15" integrity sha512-79t3CQ8+oBGk/80SQ8MN3Bs3obf83zJ0YZjDmDaEZN8MqhMI760apl5z6a20kFeMXBwJX99VpKT8CKxEBp5H1g== @@ -953,7 +953,7 @@ "@babel/helper-create-regexp-features-plugin" "^7.22.15" "@babel/helper-plugin-utils" "^7.24.0" -"@babel/polyfill@^7.10.4", "@babel/polyfill@^7.11.5": +"@babel/polyfill@^7.11.5": version "7.12.1" resolved "https://registry.yarnpkg.com/@babel/polyfill/-/polyfill-7.12.1.tgz#1f2d6371d1261bbd961f3c5d5909150e12d0bd96" integrity sha512-X0pi0V6gxLi6lFZpGmeNa4zxtwEmCs42isWLNjZZDE0Y8yVfgu0T2OAHlzBbdYlqbW/YXVvoBHpATEM+goCj8g== @@ -961,7 +961,7 @@ core-js "^2.6.5" regenerator-runtime "^0.13.4" -"@babel/preset-env@^7.10.2", "@babel/preset-env@^7.11.0", "@babel/preset-env@^7.16.5", "@babel/preset-env@^7.16.7", "@babel/preset-env@^7.20.2": +"@babel/preset-env@^7.10.2", "@babel/preset-env@^7.16.5", "@babel/preset-env@^7.16.7", "@babel/preset-env@^7.20.2": version "7.24.4" resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.24.4.tgz#46dbbcd608771373b88f956ffb67d471dce0d23b" integrity sha512-7Kl6cSmYkak0FK/FXjSEnLJ1N9T/WA2RkMhu17gZ/dsxKJUuTYNIylahPTzqpLyJN4WhDif8X0XK1R8Wsguo/A== @@ -1069,7 +1069,7 @@ dependencies: regenerator-runtime "^0.13.4" -"@babel/runtime@^7.11.0", "@babel/runtime@^7.21.0", "@babel/runtime@^7.8.4": +"@babel/runtime@^7.21.0", "@babel/runtime@^7.8.4": version "7.24.4" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.24.4.tgz#de795accd698007a66ba44add6cc86542aff1edd" integrity sha512-dkxf7+hn8mFBwKjs9bvBlArzLVxVbS8usaPUDd5p2a9JCL9tB8OaOVN1isD4+Xyk4ns89/xeOmbQvgdK7IIVdA== @@ -1085,7 +1085,7 @@ "@babel/parser" "^7.24.0" "@babel/types" "^7.24.0" -"@babel/traverse@^7.1.6", "@babel/traverse@^7.12.1", "@babel/traverse@^7.24.1", "@babel/traverse@^7.4.5": +"@babel/traverse@^7.1.6", "@babel/traverse@^7.24.1", "@babel/traverse@^7.4.5": version "7.24.1" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.1.tgz#d65c36ac9dd17282175d1e4a3c49d5b7988f530c" integrity sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ== @@ -1101,7 +1101,7 @@ debug "^4.3.1" globals "^11.1.0" -"@babel/types@^7.1.6", "@babel/types@^7.12.1", "@babel/types@^7.12.13", "@babel/types@^7.22.15", "@babel/types@^7.22.19", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.24.0", "@babel/types@^7.4.0", "@babel/types@^7.4.4", "@babel/types@^7.7.2": +"@babel/types@^7.1.6", "@babel/types@^7.12.13", "@babel/types@^7.22.15", "@babel/types@^7.22.19", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.24.0", "@babel/types@^7.4.4", "@babel/types@^7.7.2": version "7.24.0" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.0.tgz#3b951f435a92e7333eba05b7566fd297960ea1bf" integrity sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w== @@ -1409,56 +1409,6 @@ broccoli-funnel "^3.0.8" semver "^7.3.8" -"@embroider/core@0.29.0": - version "0.29.0" - resolved "https://registry.yarnpkg.com/@embroider/core/-/core-0.29.0.tgz#51421fbb2bcee607dc6e162400e3502a121230d2" - integrity sha512-2i0QtV1y1jJpj1aiIA3FVZHfuLBN2yCUcJs0PkOsqZYi7J796KT4t7WwAk8gmBq00yGzHDWLw/iH4ULTomPS8A== - dependencies: - "@babel/core" "^7.12.3" - "@babel/parser" "^7.12.3" - "@babel/plugin-syntax-dynamic-import" "^7.8.3" - "@babel/traverse" "^7.12.1" - "@babel/types" "^7.12.1" - "@embroider/macros" "0.29.0" - assert-never "^1.1.0" - babel-plugin-syntax-dynamic-import "^6.18.0" - broccoli-persistent-filter "^2.2.2" - broccoli-plugin "^3.0.0" - broccoli-source "^1.1.0" - debug "^3.1.0" - fast-sourcemap-concat "^1.4.0" - filesize "^4.1.2" - fs-extra "^7.0.1" - fs-tree-diff "^2.0.0" - handlebars "^4.4.2" - js-string-escape "^1.0.1" - jsdom "^16.4.0" - json-stable-stringify "^1.0.1" - lodash "^4.17.10" - pkg-up "^2.0.0" - resolve "^1.8.1" - resolve-package-path "^1.2.2" - semver "^7.3.2" - strip-bom "^3.0.0" - typescript-memoize "^1.0.0-alpha.3" - walk-sync "^1.1.3" - wrap-legacy-hbs-plugin-if-needed "^1.0.1" - -"@embroider/macros@0.29.0", "@embroider/macros@^0.29.0": - version "0.29.0" - resolved "https://registry.yarnpkg.com/@embroider/macros/-/macros-0.29.0.tgz#33048069b0abdda17efc7ff438b18b0c2c237bff" - integrity sha512-Kg8we7U7TpgUZ0EBKlTC4UGItPa91OrGT5Bzxa2cJi/pPp1z8Amgd7Y+m29N+aLBZwlv+OxlhnOCm0Fhjw/dag== - dependencies: - "@babel/core" "^7.12.3" - "@babel/traverse" "^7.12.1" - "@babel/types" "^7.12.1" - "@embroider/core" "0.29.0" - assert-never "^1.1.0" - ember-cli-babel "^7.23.0" - lodash "^4.17.10" - resolve "^1.8.1" - semver "^7.3.2" - "@embroider/macros@^0.50.0 || ^1.0.0", "@embroider/macros@^1.0.0", "@embroider/macros@^1.10.0", "@embroider/macros@^1.12.0", "@embroider/macros@^1.15.0", "@embroider/macros@^1.2.0", "@embroider/macros@^1.8.0": version "1.15.1" resolved "https://registry.yarnpkg.com/@embroider/macros/-/macros-1.15.1.tgz#fbcd10f5df47243a1561445ec066f97e1a87649a" @@ -1571,14 +1521,6 @@ resolved "https://registry.yarnpkg.com/@glimmer/di/-/di-0.1.11.tgz#a6878c07a13a2c2c76fcde598a5c97637bfc4280" integrity sha512-moRwafNDwHTnTHzyyZC9D+mUSvYrs1Ak0tRPjjmCghdoHHIvMshVbEnwKb/1WmW5CUlKc2eL9rlAV32n3GiItg== -"@glimmer/encoder@^0.42.2": - version "0.42.2" - resolved "https://registry.yarnpkg.com/@glimmer/encoder/-/encoder-0.42.2.tgz#d3ba3dc9f1d4fa582d1d18b63da100fc5c664057" - integrity sha512-8xkdly0i0BP5HMI0suPB9ly0AnEq8x9Z8j3Gee1HYIovM5VLNtmh7a8HsaHYRs/xHmBEZcqtr8JV89w6F59YMQ== - dependencies: - "@glimmer/interfaces" "^0.42.2" - "@glimmer/vm" "^0.42.2" - "@glimmer/env@0.1.7", "@glimmer/env@^0.1.7": version "0.1.7" resolved "https://registry.yarnpkg.com/@glimmer/env/-/env-0.1.7.tgz#fd2d2b55a9029c6b37a6c935e8c8871ae70dfa07" @@ -1598,32 +1540,6 @@ dependencies: "@simple-dom/interface" "^1.4.0" -"@glimmer/interfaces@^0.42.2": - version "0.42.2" - resolved "https://registry.yarnpkg.com/@glimmer/interfaces/-/interfaces-0.42.2.tgz#9cf8d6f8f5eee6bfcfa36919ca68ae716e1f78db" - integrity sha512-7LOuQd02cxxNNHChzdHMAU8/qOeQvTro141CU5tXITP7z6aOv2D2gkFdau97lLQiVxezGrh8J7h8GCuF7TEqtg== - -"@glimmer/low-level@^0.42.2": - version "0.42.2" - resolved "https://registry.yarnpkg.com/@glimmer/low-level/-/low-level-0.42.2.tgz#52c745414d1d04c4245c369bd132c0e786c816ef" - integrity sha512-s+Q44SnKdTBTnkgX0deBlVNnNPVas+Pg8xEnwky9VrUqOHKsIZRrPgfVULeC6bIdFXtXOKm5CjTajhb9qnQbXQ== - -"@glimmer/program@^0.42.2": - version "0.42.2" - resolved "https://registry.yarnpkg.com/@glimmer/program/-/program-0.42.2.tgz#fe504679ca4df6251dd5fcf3003699bb51fa41fa" - integrity sha512-XpQ6EYzA1VL9ESKoih5XW5JftFmlRvwy3bF/I1ABOa3yLIh8mApEwrRI/sIHK0Nv5s1j0uW4itVF196WxnJXgw== - dependencies: - "@glimmer/encoder" "^0.42.2" - "@glimmer/interfaces" "^0.42.2" - "@glimmer/util" "^0.42.2" - -"@glimmer/reference@^0.42.1", "@glimmer/reference@^0.42.2": - version "0.42.2" - resolved "https://registry.yarnpkg.com/@glimmer/reference/-/reference-0.42.2.tgz#57874e27c825fb7041b5295b5eb153f3f3f92f8f" - integrity sha512-XuhbRjr3M9Q/DP892jGxVfPE6jaGGHu5w9ppGMnuTY7Vm/x+A+68MCiaREhDcEwJlzGg4UkfVjU3fdgmUIrc5Q== - dependencies: - "@glimmer/util" "^0.42.2" - "@glimmer/reference@^0.84.3": version "0.84.3" resolved "https://registry.yarnpkg.com/@glimmer/reference/-/reference-0.84.3.tgz#6420ad9c102633ac83939fd1b2457269d21fb632" @@ -1635,29 +1551,6 @@ "@glimmer/util" "0.84.3" "@glimmer/validator" "0.84.3" -"@glimmer/runtime@^0.42.1": - version "0.42.2" - resolved "https://registry.yarnpkg.com/@glimmer/runtime/-/runtime-0.42.2.tgz#50e7da5d3cf9144248048a7478be3c489784a4bb" - integrity sha512-52LVZJsLKM3GzI3TEmYcw2LdI9Uk0jotISc3w2ozQBWvkKoYxjDNvI/gsjyMpenj4s7FcG2ggOq0x4tNFqm1GA== - dependencies: - "@glimmer/interfaces" "^0.42.2" - "@glimmer/low-level" "^0.42.2" - "@glimmer/program" "^0.42.2" - "@glimmer/reference" "^0.42.2" - "@glimmer/util" "^0.42.2" - "@glimmer/vm" "^0.42.2" - "@glimmer/wire-format" "^0.42.2" - -"@glimmer/syntax@^0.42.1": - version "0.42.2" - resolved "https://registry.yarnpkg.com/@glimmer/syntax/-/syntax-0.42.2.tgz#89bb3cb787285b84665dc0d8907d94b008e5be9a" - integrity sha512-SR26SmF/Mb5o2cc4eLHpOyoX5kwwXP4KRhq4fbWfrvan74xVWA38PLspPCzwGhyVH/JsE7tUEPMjSo2DcJge/Q== - dependencies: - "@glimmer/interfaces" "^0.42.2" - "@glimmer/util" "^0.42.2" - handlebars "^4.0.13" - simple-html-tokenizer "^0.5.8" - "@glimmer/syntax@^0.84.3": version "0.84.3" resolved "https://registry.yarnpkg.com/@glimmer/syntax/-/syntax-0.84.3.tgz#4045a1708cef7fd810cff42fe6deeba40c7286d0" @@ -1685,11 +1578,6 @@ "@glimmer/interfaces" "0.84.3" "@simple-dom/interface" "^1.4.0" -"@glimmer/util@^0.42.2": - version "0.42.2" - resolved "https://registry.yarnpkg.com/@glimmer/util/-/util-0.42.2.tgz#9ca1631e42766ea6059f4b49d0bdfb6095aad2c4" - integrity sha512-Heck0baFSaWDanCYtmOcLeaz7v+rSqI8ovS7twrp2/FWEteb3Ze5sWQ2BEuSAG23L/k/lzVwYM/MY7ZugxBpaA== - "@glimmer/util@^0.44.0": version "0.44.0" resolved "https://registry.yarnpkg.com/@glimmer/util/-/util-0.44.0.tgz#45df98d73812440206ae7bda87cfe04aaae21ed9" @@ -1715,22 +1603,6 @@ dependencies: babel-plugin-debug-macros "^0.3.4" -"@glimmer/vm@^0.42.2": - version "0.42.2" - resolved "https://registry.yarnpkg.com/@glimmer/vm/-/vm-0.42.2.tgz#492a4f05eac587c3a37371b3c62593f20bef553d" - integrity sha512-D2MNU5glICLqvet5SfVPrv+l6JNK2TR+CdQhch1Ew+btOoqlW+2LIJIF/5wLb1POjIMEkt+78t/7RN0mDFXGzw== - dependencies: - "@glimmer/interfaces" "^0.42.2" - "@glimmer/util" "^0.42.2" - -"@glimmer/wire-format@^0.42.2": - version "0.42.2" - resolved "https://registry.yarnpkg.com/@glimmer/wire-format/-/wire-format-0.42.2.tgz#b95062b594dddeb8bd11cba3a6a0accbfabc9930" - integrity sha512-IqUo6mdJ7GRsK7KCyZxrc17ioSg9RBniEnb418ZMQxsV/WBv9NQ359MuClUck2M24z1AOXo4TerUw0U7+pb1/A== - dependencies: - "@glimmer/interfaces" "^0.42.2" - "@glimmer/util" "^0.42.2" - "@handlebars/parser@~2.0.0": version "2.0.0" resolved "https://registry.yarnpkg.com/@handlebars/parser/-/parser-2.0.0.tgz#5e8b7298f31ff8f7b260e6b7363c7e9ceed7d9c5" @@ -1914,11 +1786,6 @@ traverse "^0.6.7" unified "^9.2.2" -"@tootallnate/once@1": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" - integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw== - "@types/acorn@^4.0.3": version "4.0.6" resolved "https://registry.yarnpkg.com/@types/acorn/-/acorn-4.0.6.tgz#d61ca5480300ac41a7d973dd5b84d0a591154a22" @@ -2450,11 +2317,6 @@ Leaflet.vector-markers@^0.0.6: leaflet "^0.7.0" postcss-loader "^0.9.1" -abab@^2.0.3, abab@^2.0.5: - version "2.0.6" - resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.6.tgz#41b80f2c871d19686216b82309231cfd3cb3d291" - integrity sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA== - abbrev@1: version "1.1.1" resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" @@ -2480,14 +2342,6 @@ acorn-dynamic-import@^3.0.0: dependencies: acorn "^5.0.0" -acorn-globals@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-6.0.0.tgz#46cdd39f0f8ff08a876619b55f5ac8a6dc770b45" - integrity sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg== - dependencies: - acorn "^7.1.1" - acorn-walk "^7.1.1" - acorn-import-assertions@^1.9.0: version "1.9.0" resolved "https://registry.yarnpkg.com/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz#507276249d684797c84e0734ef84860334cfb1ac" @@ -2507,7 +2361,7 @@ acorn-node@^1.3.0: acorn-walk "^7.0.0" xtend "^4.0.2" -acorn-walk@^7.0.0, acorn-walk@^7.1.1: +acorn-walk@^7.0.0: version "7.2.0" resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== @@ -2522,23 +2376,16 @@ acorn@^6.4.1: resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.2.tgz#35866fd710528e92de10cf06016498e47e39e1e6" integrity sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ== -acorn@^7.0.0, acorn@^7.1.1: +acorn@^7.0.0: version "7.4.1" resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== -acorn@^8.2.4, acorn@^8.7.1, acorn@^8.8.2, acorn@^8.9.0: +acorn@^8.7.1, acorn@^8.8.2, acorn@^8.9.0: version "8.11.3" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.11.3.tgz#71e0b14e13a4ec160724b38fb7b0f233b1b81d7a" integrity sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg== -agent-base@6: - version "6.0.2" - resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" - integrity sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ== - dependencies: - debug "4" - ajv-errors@^1.0.0, ajv-errors@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d" @@ -2590,7 +2437,7 @@ amd-name-resolver@1.2.0: dependencies: ensure-posix-path "^1.0.1" -amd-name-resolver@^1.2.0, amd-name-resolver@^1.2.1, amd-name-resolver@^1.3.1: +amd-name-resolver@^1.2.0, amd-name-resolver@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/amd-name-resolver/-/amd-name-resolver-1.3.1.tgz#ffe71c683c6e7191fc4ae1bb3aaed15abea135d9" integrity sha512-26qTEWqZQ+cxSYygZ4Cf8tsjDBLceJahhtewxtKZA3SRa4PluuqYCuheemDQD+7Mf5B7sr+zhTDWAHDh02a1Dw== @@ -2610,6 +2457,11 @@ anchor-markdown-header@^0.6.0: dependencies: emoji-regex "~10.1.0" +animation-frame@~0.2.4: + version "0.2.5" + resolved "https://registry.yarnpkg.com/animation-frame/-/animation-frame-0.2.5.tgz#cdf5a91a69ad2c85ddac2b82daf7290300f05960" + integrity sha512-Cckt0Q5QCzJndnD4Psr+/niDcEyKvrOX6/GvYspUOg5rpHVruRO872zVH41YkGsA0vCcV7I16RipxV8+FO4k/Q== + ansi-escapes@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz#8780b98ff9dbf5638152d1f1fe5c1d7b4442976b" @@ -2836,7 +2688,7 @@ asn1.js@^4.10.1: inherits "^2.0.1" minimalistic-assert "^1.0.0" -assert-never@^1.1.0, assert-never@^1.2.1: +assert-never@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/assert-never/-/assert-never-1.2.1.tgz#11f0e363bf146205fb08193b5c7b90f4d1cf44fe" integrity sha512-TaTivMB6pYI1kXwrFlEhLeGfOqoDNdTxjCdwRfFFkEA30Eu+k48W34nlok2EYWJfFFzqaEmichdNM7th6M5HNw== @@ -3186,7 +3038,7 @@ babel-plugin-ember-modules-api-polyfill@^2.6.0: dependencies: ember-rfc176-data "^0.3.13" -babel-plugin-ember-modules-api-polyfill@^3.1.1, babel-plugin-ember-modules-api-polyfill@^3.5.0: +babel-plugin-ember-modules-api-polyfill@^3.5.0: version "3.5.0" resolved "https://registry.yarnpkg.com/babel-plugin-ember-modules-api-polyfill/-/babel-plugin-ember-modules-api-polyfill-3.5.0.tgz#27b6087fac75661f779f32e60f94b14d0e9f6965" integrity sha512-pJajN/DkQUnStw0Az8c6khVcMQHgzqWr61lLNtVeu0g61LRW0k9jyK7vaedrHDWGe/Qe8sxG5wpiyW9NsMqFzA== @@ -3201,14 +3053,6 @@ babel-plugin-ember-template-compilation@^2.0.0, babel-plugin-ember-template-comp "@glimmer/syntax" "^0.84.3" babel-import-util "^2.0.0" -babel-plugin-filter-imports@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/babel-plugin-filter-imports/-/babel-plugin-filter-imports-3.0.0.tgz#a849683837ad29960da17492fb32789ab6b09a11" - integrity sha512-p/chjzVTgCxUqyLM0q/pfWVZS7IJTwGQMwNg0LOvuQpKiTftQgZDtkGB8XvETnUw19rRcL7bJCTopSwibTN2tA== - dependencies: - "@babel/types" "^7.4.0" - lodash "^4.17.11" - babel-plugin-filter-imports@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/babel-plugin-filter-imports/-/babel-plugin-filter-imports-4.0.0.tgz#068f8da15236a96a9602c36dc6f4a6eeca70a4f4" @@ -3233,7 +3077,7 @@ babel-plugin-htmlbars-inline-precompile@^5.0.0, babel-plugin-htmlbars-inline-pre parse-static-imports "^1.1.0" string.prototype.matchall "^4.0.5" -babel-plugin-module-resolver@^3.1.1, babel-plugin-module-resolver@^3.2.0: +babel-plugin-module-resolver@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/babel-plugin-module-resolver/-/babel-plugin-module-resolver-3.2.0.tgz#ddfa5e301e3b9aa12d852a9979f18b37881ff5a7" integrity sha512-tjR0GvSndzPew/Iayf4uICWZqjBwnlMWjSx6brryfQ81F9rxBVqwDJtFCV8oOs0+vJeefK9TmdZtkIFdFe1UnA== @@ -3917,7 +3761,7 @@ broccoli-babel-transpiler@^6.5.0: rsvp "^4.8.2" workerpool "^2.3.0" -broccoli-babel-transpiler@^7.7.0, broccoli-babel-transpiler@^7.8.0: +broccoli-babel-transpiler@^7.8.0: version "7.8.1" resolved "https://registry.yarnpkg.com/broccoli-babel-transpiler/-/broccoli-babel-transpiler-7.8.1.tgz#a5dc04cf4f59de98124fc128683ab2b83e5d28c1" integrity sha512-6IXBgfRt7HZ61g67ssBc6lBb3Smw3DPZ9dEYirgtvXWpRZ2A9M22nxy6opEwJDgDJzlu/bB7ToppW33OFkA1gA== @@ -4270,7 +4114,7 @@ broccoli-persistent-filter@^1.0.3, broccoli-persistent-filter@^1.1.6, broccoli-p symlink-or-copy "^1.0.1" walk-sync "^0.3.1" -broccoli-persistent-filter@^2.1.1, broccoli-persistent-filter@^2.2.1, broccoli-persistent-filter@^2.2.2, broccoli-persistent-filter@^2.3.0, broccoli-persistent-filter@^2.3.1: +broccoli-persistent-filter@^2.1.1, broccoli-persistent-filter@^2.2.1, broccoli-persistent-filter@^2.3.0, broccoli-persistent-filter@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/broccoli-persistent-filter/-/broccoli-persistent-filter-2.3.1.tgz#4a052e0e0868b344c3a2977e35a3d497aa9eca72" integrity sha512-hVsmIgCDrl2NFM+3Gs4Cr2TA6UPaIZip99hN8mtkaUPgM8UeVnCbxelCvBjUBHo0oaaqP5jzqqnRVvb568Yu5g== @@ -4350,7 +4194,7 @@ broccoli-plugin@^2.1.0: rimraf "^2.3.4" symlink-or-copy "^1.1.8" -broccoli-plugin@^3.0.0, broccoli-plugin@^3.1.0: +broccoli-plugin@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/broccoli-plugin/-/broccoli-plugin-3.1.0.tgz#54ba6dd90a42ec3db5624063292610e326b1e542" integrity sha512-7w7FP8WJYjLvb0eaw27LO678TGGaom++49O1VYIuzjhXjK5kn2+AMlDm7CaUFw4F7CLGoVQeZ84d8gICMJa4lA== @@ -4561,11 +4405,6 @@ brorand@^1.0.1, brorand@^1.1.0: resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" integrity sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w== -browser-process-hrtime@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" - integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow== - browserify-aes@^1.0.4, browserify-aes@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48" @@ -5604,23 +5443,6 @@ cssesc@^3.0.0: resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== -cssom@^0.4.4: - version "0.4.4" - resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.4.4.tgz#5a66cf93d2d0b661d80bf6a44fb65f5c2e4e0a10" - integrity sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw== - -cssom@~0.3.6: - version "0.3.8" - resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.8.tgz#9f1276f5b2b463f2114d3f2c75250af8c1a36f4a" - integrity sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg== - -cssstyle@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-2.3.0.tgz#ff665a0ddbdc31864b09647f34163443d90b0852" - integrity sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A== - dependencies: - cssom "~0.3.6" - csv2geojson@^5.0.2: version "5.1.2" resolved "https://registry.yarnpkg.com/csv2geojson/-/csv2geojson-5.1.2.tgz#4869e48d26f849fbbe93f90b76094fb1861b7c72" @@ -5661,15 +5483,6 @@ dash-ast@^2.0.1: resolved "https://registry.yarnpkg.com/dash-ast/-/dash-ast-2.0.1.tgz#8d0fd2e601c59bf874cc22877ee7dd889f54dee8" integrity sha512-5TXltWJGc+RdnabUGzhRae1TRq6m4gr+3K2wQX0is5/F2yS6MJXJvLyI3ErAnsAXuJoGqvfVD5icRgim07DrxQ== -data-urls@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-2.0.0.tgz#156485a72963a970f5d5821aaf642bef2bf2db9b" - integrity sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ== - dependencies: - abab "^2.0.3" - whatwg-mimetype "^2.3.0" - whatwg-url "^8.0.0" - data-view-buffer@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/data-view-buffer/-/data-view-buffer-1.0.1.tgz#8ea6326efec17a2e42620696e671d7d5a8bc66b2" @@ -5718,13 +5531,6 @@ debug@2.6.9, debug@^2.1.0, debug@^2.1.1, debug@^2.1.3, debug@^2.2.0, debug@^2.3. dependencies: ms "2.0.0" -debug@4, debug@^4.0.0, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@~4.3.1, debug@~4.3.2, debug@~4.3.4: - version "4.3.4" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" - integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== - dependencies: - ms "2.1.2" - debug@^3.0.1, debug@^3.1.0, debug@^3.2.7: version "3.2.7" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" @@ -5732,6 +5538,13 @@ debug@^3.0.1, debug@^3.1.0, debug@^3.2.7: dependencies: ms "^2.1.1" +debug@^4.0.0, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@~4.3.1, debug@~4.3.2, debug@~4.3.4: + version "4.3.4" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" + integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== + dependencies: + ms "2.1.2" + decamelize-keys@^1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.1.tgz#04a2d523b2f18d80d0158a43b895d56dff8d19d8" @@ -5745,11 +5558,6 @@ decamelize@^1.1.0, decamelize@^1.2.0: resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== -decimal.js@^10.2.1: - version "10.4.3" - resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.4.3.tgz#1044092884d245d1b7f65725fa4ad4c6f781cc23" - integrity sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA== - decode-uri-component@^0.2.0: version "0.2.2" resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.2.tgz#e69dbe25d37941171dd540e024c444cd5188e1e9" @@ -5945,13 +5753,6 @@ domelementtype@^2.0.1, domelementtype@^2.2.0: resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.3.0.tgz#5c45e8e869952626331d7aab326d01daf65d589d" integrity sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw== -domexception@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/domexception/-/domexception-2.0.1.tgz#fb44aefba793e1574b0af6aed2801d057529f304" - integrity sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg== - dependencies: - webidl-conversions "^5.0.0" - domhandler@^4.2.0, domhandler@^4.2.2: version "4.3.1" resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.3.1.tgz#8d792033416f59d68bc03a5aa7b018c1ca89279c" @@ -6229,14 +6030,13 @@ ember-cached-decorator-polyfill@^0.1.4: ember-cli-babel "^7.21.0" ember-cli-babel-plugin-helpers "^1.1.1" -ember-classic-decorator@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/ember-classic-decorator/-/ember-classic-decorator-2.0.1.tgz#3ea29890959ff7ed0d0fa77bc49fca7142c586af" - integrity sha512-WQH0tY3vZ25fpcqt9xIPnIH3GzXylPFoLmauQFpNZLPtb6/jGuH8EzpFtAjhzakX+zSJb4/36iTaF5QA7aLxow== +ember-class-based-modifier@^0.10.0: + version "0.10.0" + resolved "https://registry.yarnpkg.com/ember-class-based-modifier/-/ember-class-based-modifier-0.10.0.tgz#bb40c05440a959d84e9e2f5038e3894773686d19" + integrity sha512-GPPOCYmRibGBUfiuq7oHQAGXgM6X8LK2I2crvQadqwbft5PjXDbR6x1xnOQ8TDWeOE0EluahXXOgWgdUVcmaMQ== dependencies: - "@embroider/macros" "^0.29.0" - babel-plugin-filter-imports "^3.0.0" - ember-cli-babel "^7.11.1" + ember-cli-babel "^7.10.0" + ember-modifier-manager-polyfill "^1.2.0" ember-classic-decorator@^3.0.1: version "3.0.1" @@ -6261,38 +6061,6 @@ ember-cli-babel-plugin-helpers@^1.0.0, ember-cli-babel-plugin-helpers@^1.1.0, em resolved "https://registry.yarnpkg.com/ember-cli-babel-plugin-helpers/-/ember-cli-babel-plugin-helpers-1.1.1.tgz#5016b80cdef37036c4282eef2d863e1d73576879" integrity sha512-sKvOiPNHr5F/60NLd7SFzMpYPte/nnGkq/tMIfXejfKHIhaiIkYFqX8Z9UFTKWLLn+V7NOaby6niNPZUdvKCRw== -ember-cli-babel@7.22.1: - version "7.22.1" - resolved "https://registry.yarnpkg.com/ember-cli-babel/-/ember-cli-babel-7.22.1.tgz#cad28b89cf0e184c93b863d09bc5ba4ce1d2e453" - integrity sha512-kCT8WbC1AYFtyOpU23ESm22a+gL6fWv8Nzwe8QFQ5u0piJzM9MEudfbjADEaoyKTrjMQTDsrWwEf3yjggDsOng== - dependencies: - "@babel/core" "^7.11.0" - "@babel/helper-compilation-targets" "^7.10.4" - "@babel/plugin-proposal-class-properties" "^7.10.4" - "@babel/plugin-proposal-decorators" "^7.10.5" - "@babel/plugin-transform-modules-amd" "^7.10.5" - "@babel/plugin-transform-runtime" "^7.11.0" - "@babel/plugin-transform-typescript" "^7.11.0" - "@babel/polyfill" "^7.10.4" - "@babel/preset-env" "^7.11.0" - "@babel/runtime" "^7.11.0" - amd-name-resolver "^1.2.1" - babel-plugin-debug-macros "^0.3.3" - babel-plugin-ember-data-packages-polyfill "^0.1.2" - babel-plugin-ember-modules-api-polyfill "^3.1.1" - babel-plugin-module-resolver "^3.1.1" - broccoli-babel-transpiler "^7.7.0" - broccoli-debug "^0.6.4" - broccoli-funnel "^2.0.1" - broccoli-source "^1.1.0" - clone "^2.1.2" - ember-cli-babel-plugin-helpers "^1.1.0" - ember-cli-version-checker "^4.1.0" - ensure-posix-path "^1.0.2" - fixturify-project "^1.10.0" - rimraf "^3.0.1" - semver "^5.5.0" - ember-cli-babel@^6.0.0-beta.4, ember-cli-babel@^6.1.0, ember-cli-babel@^6.10.0, ember-cli-babel@^6.11.0, ember-cli-babel@^6.16.0, ember-cli-babel@^6.18.0, ember-cli-babel@^6.3.0, ember-cli-babel@^6.6.0, ember-cli-babel@^6.7.2, ember-cli-babel@^6.8.1, ember-cli-babel@^6.8.2, ember-cli-babel@^6.9.0: version "6.18.0" resolved "https://registry.yarnpkg.com/ember-cli-babel/-/ember-cli-babel-6.18.0.tgz#3f6435fd275172edeff2b634ee7b29ce74318957" @@ -6312,7 +6080,7 @@ ember-cli-babel@^6.0.0-beta.4, ember-cli-babel@^6.1.0, ember-cli-babel@^6.10.0, ember-cli-version-checker "^2.1.2" semver "^5.5.0" -ember-cli-babel@^7.0.0, ember-cli-babel@^7.1.0, ember-cli-babel@^7.1.2, ember-cli-babel@^7.1.3, ember-cli-babel@^7.10.0, ember-cli-babel@^7.11.1, ember-cli-babel@^7.13.0, ember-cli-babel@^7.19.0, ember-cli-babel@^7.20.5, ember-cli-babel@^7.21.0, ember-cli-babel@^7.22.1, ember-cli-babel@^7.23.0, ember-cli-babel@^7.23.1, ember-cli-babel@^7.26.0, ember-cli-babel@^7.26.10, ember-cli-babel@^7.26.11, ember-cli-babel@^7.26.3, ember-cli-babel@^7.26.5, ember-cli-babel@^7.26.6, ember-cli-babel@^7.4.1, ember-cli-babel@^7.5.0, ember-cli-babel@^7.7.3, ember-cli-babel@^7.8.0: +ember-cli-babel@^7.0.0, ember-cli-babel@^7.1.0, ember-cli-babel@^7.1.2, ember-cli-babel@^7.1.3, ember-cli-babel@^7.10.0, ember-cli-babel@^7.13.0, ember-cli-babel@^7.19.0, ember-cli-babel@^7.20.5, ember-cli-babel@^7.21.0, ember-cli-babel@^7.22.1, ember-cli-babel@^7.23.0, ember-cli-babel@^7.23.1, ember-cli-babel@^7.26.0, ember-cli-babel@^7.26.10, ember-cli-babel@^7.26.11, ember-cli-babel@^7.26.3, ember-cli-babel@^7.26.5, ember-cli-babel@^7.26.6, ember-cli-babel@^7.4.1, ember-cli-babel@^7.5.0, ember-cli-babel@^7.7.0, ember-cli-babel@^7.7.3, ember-cli-babel@^7.8.0: version "7.26.11" resolved "https://registry.yarnpkg.com/ember-cli-babel/-/ember-cli-babel-7.26.11.tgz#50da0fe4dcd99aada499843940fec75076249a9f" integrity sha512-JJYeYjiz/JTn34q7F5DSOjkkZqy8qwFOOxXfE6pe9yEJqWGu4qErKxlz8I22JoVEQ/aBUO+OcKTpmctvykM9YA== @@ -7199,14 +6967,22 @@ ember-functions-as-helper-polyfill@^2.1.2: ember-cli-typescript "^5.0.0" ember-cli-version-checker "^5.1.2" -ember-gesture-modifiers@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/ember-gesture-modifiers/-/ember-gesture-modifiers-1.1.1.tgz#7714688f7ceaaf1a7e4992b3cc01e38428b82528" - integrity sha512-Kd7SFNaWGBNNbAZSeBQGVjMuHdP8RtLDAdGzcmTpOtIaK1EyYL3PrsDJAjaKVOycCwjQEYCYnty+ptdz+nv4bQ== +ember-gestures@^1.1.1: + version "1.1.5" + resolved "https://registry.yarnpkg.com/ember-gestures/-/ember-gestures-1.1.5.tgz#0d82f721c8606694f113f1cc7eb04e28d448989d" + integrity sha512-bzLTe1HzpFCUEZHX89ysTXMf6qYp+7U1ZyHP3gJr31Ik/pCBwfsvDxOr+JIImsnhkDKkuZSrQSvlQSrQgXM6cA== dependencies: - ember-cli-babel "^7.26.3" - ember-cli-htmlbars "^5.7.1" - ember-modifier "^2.1.0" + animation-frame "~0.2.4" + broccoli-funnel "^2.0.2" + broccoli-merge-trees "^3.0.2" + ember-class-based-modifier "^0.10.0" + ember-cli-babel "^7.7.0" + ember-cli-htmlbars "^2.0.1" + ember-cli-version-checker "^2.1.0" + ember-copy "^1.0.0" + fastboot-transform "^0.1.3" + hammerjs "^2.0.8" + resolve "^1.10.0" ember-get-config@, ember-get-config@^2.1.1: version "2.1.1" @@ -7791,16 +7567,15 @@ ember-text-measurer@^0.6.0: ember-cli-babel "^7.19.0" ember-cli-htmlbars "^4.3.1" -ember-toggle@^7.1.1: - version "7.1.1" - resolved "https://registry.yarnpkg.com/ember-toggle/-/ember-toggle-7.1.1.tgz#071d4275a534a837887cf4729a92f05c000c6ca1" - integrity sha512-r/tGfWx0yMyEBzD+2IAQcJUERnOjJApYYWMAcqm7NdpQcRHy9yvPRZy63i52PGxDtdAtpedBExyQp+yIV+mBtg== +ember-toggle@^6.0.1: + version "6.0.3" + resolved "https://registry.yarnpkg.com/ember-toggle/-/ember-toggle-6.0.3.tgz#da58ce496b272cd1004524058221aff73b9f33f6" + integrity sha512-SnovlbjY+I3+XUDPXnEyK1grymwvzWH9v7zEeeWK3+aE2JDxABjVBE0hbgzVghvPoyEzYBz1o+7VsDUYuSxmiA== dependencies: - ember-classic-decorator "^2.0.0" - ember-cli-babel "7.22.1" - ember-cli-htmlbars "^5.3.1" - ember-decorators "^6.1.1" - ember-gesture-modifiers "^1.0.0" + ember-cli-babel "^7.7.3" + ember-cli-htmlbars "^3.0.1" + ember-gestures "^1.1.1" + ember-runtime-enumerable-includes-polyfill "^2.0.0" ember-tooltips@^3.4.0: version "3.6.0" @@ -8187,7 +7962,7 @@ escape-string-regexp@^4.0.0: resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== -escodegen@^2.0.0, escodegen@^2.1.0: +escodegen@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-2.1.0.tgz#ba93bbb7a43986d29d6041f99f5262da773e2e17" integrity sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w== @@ -8729,20 +8504,6 @@ fast-ordered-set@^1.0.0, fast-ordered-set@^1.0.2: dependencies: blank-object "^1.0.1" -fast-sourcemap-concat@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/fast-sourcemap-concat/-/fast-sourcemap-concat-1.4.0.tgz#122c330d4a2afaff16ad143bc9674b87cd76c8ad" - integrity sha512-x90Wlx/2C83lfyg7h4oguTZN4MyaVfaiUSJQNpU+YEA0Odf9u659Opo44b0LfoVg9G/bOE++GdID/dkyja+XcA== - dependencies: - chalk "^2.0.0" - fs-extra "^5.0.0" - heimdalljs-logger "^0.1.9" - memory-streams "^0.1.3" - mkdirp "^0.5.0" - source-map "^0.4.2" - source-map-url "^0.3.0" - sourcemap-validator "^1.1.0" - fast-sourcemap-concat@^2.1.0: version "2.1.1" resolved "https://registry.yarnpkg.com/fast-sourcemap-concat/-/fast-sourcemap-concat-2.1.1.tgz#3647fd5876deace53d9a1c418061199417911801" @@ -8844,11 +8605,6 @@ filenamify@^4.3.0: strip-outer "^1.0.1" trim-repeated "^1.0.0" -filesize@^4.1.2: - version "4.2.1" - resolved "https://registry.yarnpkg.com/filesize/-/filesize-4.2.1.tgz#ab1cb2069db5d415911c1a13e144c0e743bc89bc" - integrity sha512-bP82Hi8VRZX/TUBKfE24iiUGsB/sfm2WUrwTQyAzQrhO3V9IhcBBNBXMyzLY5orACxRyYJ3d2HeRVX+eFv4lmA== - filesize@^6.1.0: version "6.4.0" resolved "https://registry.yarnpkg.com/filesize/-/filesize-6.4.0.tgz#914f50471dd66fdca3cefe628bd0cde4ef769bcd" @@ -9094,15 +8850,6 @@ for-in@^1.0.2: resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" integrity sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ== -form-data@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-3.0.1.tgz#ebd53791b78356a99af9a300d4282c4d5eb9755f" - integrity sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg== - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.8" - mime-types "^2.1.12" - form-data@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452" @@ -9736,7 +9483,12 @@ growly@^1.3.0: resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" integrity sha512-+xGQY0YyAWCnqy7Cd++hc2JqMYzlm0dG30Jd0beaA64sROr8C4nt8Yc9V5Ro3avlSUDTN0ulqP/VBKi1/lLygw== -handlebars@^4.0.13, handlebars@^4.0.4, handlebars@^4.3.1, handlebars@^4.4.2, handlebars@^4.7.3: +hammerjs@^2.0.8: + version "2.0.8" + resolved "https://registry.yarnpkg.com/hammerjs/-/hammerjs-2.0.8.tgz#04ef77862cff2bb79d30f7692095930222bf60f1" + integrity sha512-tSQXBXS/MWQOn/RKckawJ61vvsDpCom87JgxiYdGwHdOa0ht0vzUWDlfioofFCRU0L+6NGDt6XzbgoJvZkMeRQ== + +handlebars@^4.0.4, handlebars@^4.3.1, handlebars@^4.7.3: version "4.7.8" resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.7.8.tgz#41c42c18b1be2365439188c77c6afae71c0cd9e9" integrity sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ== @@ -9970,13 +9722,6 @@ hosted-git-info@^4.0.1: dependencies: lru-cache "^6.0.0" -html-encoding-sniffer@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz#42a6dc4fd33f00281176e8b23759ca4e4fa185f3" - integrity sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ== - dependencies: - whatwg-encoding "^1.0.5" - htmlparser2@^7.2.0: version "7.2.0" resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-7.2.0.tgz#8817cdea38bbc324392a90b1990908e81a65f5a5" @@ -10026,15 +9771,6 @@ http-parser-js@>=0.5.1: resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.5.8.tgz#af23090d9ac4e24573de6f6aecc9d84a48bf20e3" integrity sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q== -http-proxy-agent@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz#8a8c8ef7f5932ccf953c296ca8291b95aa74aa3a" - integrity sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg== - dependencies: - "@tootallnate/once" "1" - agent-base "6" - debug "4" - http-proxy@^1.13.1, http-proxy@^1.18.1: version "1.18.1" resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.18.1.tgz#401541f0534884bbf95260334e72f88ee3976549" @@ -10049,14 +9785,6 @@ https-browserify@^1.0.0: resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" integrity sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg== -https-proxy-agent@^5.0.0: - version "5.0.1" - resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6" - integrity sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA== - dependencies: - agent-base "6" - debug "4" - https@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/https/-/https-1.0.0.tgz#3c37c7ae1a8eeb966904a2ad1e975a194b7ed3a4" @@ -10496,11 +10224,6 @@ is-plain-object@^2.0.3, is-plain-object@^2.0.4: dependencies: isobject "^3.0.1" -is-potential-custom-element-name@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" - integrity sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ== - is-redirect@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-redirect/-/is-redirect-1.0.0.tgz#1d03dded53bd8db0f30c26e4f95d36fc7c87dc24" @@ -10732,39 +10455,6 @@ js-yaml@^4.1.0: dependencies: argparse "^2.0.1" -jsdom@^16.4.0: - version "16.7.0" - resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-16.7.0.tgz#918ae71965424b197c819f8183a754e18977b710" - integrity sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw== - dependencies: - abab "^2.0.5" - acorn "^8.2.4" - acorn-globals "^6.0.0" - cssom "^0.4.4" - cssstyle "^2.3.0" - data-urls "^2.0.0" - decimal.js "^10.2.1" - domexception "^2.0.1" - escodegen "^2.0.0" - form-data "^3.0.0" - html-encoding-sniffer "^2.0.1" - http-proxy-agent "^4.0.1" - https-proxy-agent "^5.0.0" - is-potential-custom-element-name "^1.0.1" - nwsapi "^2.2.0" - parse5 "6.0.1" - saxes "^5.0.1" - symbol-tree "^3.2.4" - tough-cookie "^4.0.0" - w3c-hr-time "^1.0.2" - w3c-xmlserializer "^2.0.0" - webidl-conversions "^6.1.0" - whatwg-encoding "^1.0.5" - whatwg-mimetype "^2.3.0" - whatwg-url "^8.5.0" - ws "^7.4.6" - xml-name-validator "^3.0.0" - jsesc@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" @@ -10775,11 +10465,6 @@ jsesc@^2.5.1: resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== -jsesc@~0.3.x: - version "0.3.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.3.0.tgz#1bf5ee63b4539fe2e26d0c1e99c240b97a457972" - integrity sha512-UHQmAeTXV+iwEk0aHheJRqo6Or90eDxI6KIYpHSjKLXKuKlPt1CQ7tGBerFcFA8uKU5mYxiPMlckmFptd5XZzA== - jsesc@~0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" @@ -11225,11 +10910,6 @@ lodash.flatten@^3.0.2: lodash._baseflatten "^3.0.0" lodash._isiterateecall "^3.0.0" -lodash.foreach@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.foreach/-/lodash.foreach-4.5.0.tgz#1a6a35eace401280c7f06dddec35165ab27e3e53" - integrity sha512-aEXTF4d+m05rVOAUG3z4vZZ4xVexLKZGF0lIxuHZ1Hplpk/3B6Z1+/ICICYRLm7c41Z2xiejbkCkJoTlypoXhQ== - lodash.isarguments@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz#2f573d85c6a24289ff00663b491c1d338ff3458a" @@ -11299,7 +10979,7 @@ lodash.uniqby@^4.7.0: resolved "https://registry.yarnpkg.com/lodash.uniqby/-/lodash.uniqby-4.7.0.tgz#d99c07a669e9e6d24e1362dfe266c67616af1302" integrity sha512-e/zcLx6CSbmaEgFHCA7BnoQKyCtKMxnuWrJygbwPs/AIn+IMKl66L8/s+wBUn5LRw2pZx3bUHibiV1b6aTWIww== -lodash@^4.0.0, lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.12, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.21, lodash@^4.17.4, lodash@^4.5.1, lodash@^4.6.1, lodash@^4.7.0: +lodash@^4.0.0, lodash@^4.17.12, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.21, lodash@^4.17.4, lodash@^4.5.1, lodash@^4.6.1: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== @@ -12313,11 +11993,6 @@ num2fraction@^1.2.2: resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" integrity sha512-Y1wZESM7VUThYY+4W+X4ySH2maqcA+p7UR+w8VWNWVAd6lwuXXWz/w/Cz43J/dI2I+PS6wD5N+bJUF+gjWvIqg== -nwsapi@^2.2.0: - version "2.2.9" - resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.9.tgz#7f3303218372db2e9f27c27766bcfc59ae7e61c6" - integrity sha512-2f3F0SEEer8bBu0dsNCFF50N0cTThV1nWFYcEYFZttdW0lDAoybv9cQoK7X7/68Z89S7FoRrVjP1LPX4XRf9vg== - object-assign@4.1.1, object-assign@^4, object-assign@^4.0.1, object-assign@^4.1.0: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" @@ -12700,7 +12375,7 @@ parse-static-imports@^1.1.0: resolved "https://registry.yarnpkg.com/parse-static-imports/-/parse-static-imports-1.1.0.tgz#ae2f18f18da1a993080ae406a5219455c0bbad5d" integrity sha512-HlxrZcISCblEV0lzXmAHheH/8qEkKgmqkdxyHTPbSqsTUV8GzqmN1L+SSti+VbNPfbBO3bYLPHDiUs2avbAdbA== -parse5@6.0.1, parse5@^6.0.1: +parse5@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== @@ -13104,11 +12779,6 @@ prr@~1.0.1: resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" integrity sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw== -psl@^1.1.33: - version "1.9.0" - resolved "https://registry.yarnpkg.com/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7" - integrity sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag== - public-encrypt@^4.0.0: version "4.0.3" resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.3.tgz#4fcc9d77a07e48ba7527e7cbe0de33d0701331e0" @@ -13151,7 +12821,7 @@ punycode@^1.2.4, punycode@^1.4.1: resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" integrity sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ== -punycode@^2.1.0, punycode@^2.1.1: +punycode@^2.1.0: version "2.3.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.1.tgz#027422e2faec0b25e1549c3e1bd8309b9133b6e5" integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg== @@ -13184,11 +12854,6 @@ querystring-es3@^0.2.0: resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73" integrity sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA== -querystringify@^2.1.1: - version "2.2.0" - resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.2.0.tgz#3345941b4153cb9d082d8eee4cda2016a9aef7f6" - integrity sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ== - queue-microtask@^1.2.2: version "1.2.3" resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" @@ -13640,7 +13305,7 @@ resolve-from@^4.0.0: resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== -resolve-package-path@^1.0.11, resolve-package-path@^1.2.2, resolve-package-path@^1.2.6: +resolve-package-path@^1.0.11, resolve-package-path@^1.2.6: version "1.2.7" resolved "https://registry.yarnpkg.com/resolve-package-path/-/resolve-package-path-1.2.7.tgz#2a7bc37ad96865e239330e3102c31322847e652e" integrity sha512-fVEKHGeK85bGbVFuwO9o1aU0n3vqQGrezPc51JGu9UTXpFQfWq5qCeKxyaRUSvephs+06c5j5rPq/dzHGEo8+Q== @@ -13907,13 +13572,6 @@ sass@^1.75.0: immutable "^4.0.0" source-map-js ">=0.6.2 <2.0.0" -saxes@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/saxes/-/saxes-5.0.1.tgz#eebab953fa3b7608dbe94e5dadb15c888fa6696d" - integrity sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw== - dependencies: - xmlchars "^2.2.0" - schema-utils@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-1.0.0.tgz#0b79a93204d7b600d4b2850d1f66c2a34951c770" @@ -14178,7 +13836,7 @@ silent-error@^1.0.0, silent-error@^1.0.1, silent-error@^1.1.1: dependencies: debug "^2.2.0" -simple-html-tokenizer@^0.5.11, simple-html-tokenizer@^0.5.8: +simple-html-tokenizer@^0.5.11: version "0.5.11" resolved "https://registry.yarnpkg.com/simple-html-tokenizer/-/simple-html-tokenizer-0.5.11.tgz#4c5186083c164ba22a7b477b7687ac056ad6b1d9" integrity sha512-C2WEK/Z3HoSFbYq8tI7ni3eOo/NneSPRoPpcM7WdLjFOArFuyXEjAoCdOC3DgMfRyziZQ1hCNR4mrNdWEvD0og== @@ -14366,28 +14024,11 @@ source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== -source-map@~0.1.x: - version "0.1.43" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.43.tgz#c24bc146ca517c1471f5dacbe2571b2b7f9e3346" - integrity sha512-VtCvB9SIQhk3aF6h+N85EaqIaBFIAfZ9Cu+NJHHVvc8BbEcnvDcFw6sqQ2dQrT6SlOrZq3tIvyD9+EGq/lJryQ== - dependencies: - amdefine ">=0.0.4" - sourcemap-codec@^1.4.1, sourcemap-codec@^1.4.8: version "1.4.8" resolved "https://registry.yarnpkg.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4" integrity sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA== -sourcemap-validator@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/sourcemap-validator/-/sourcemap-validator-1.1.1.tgz#3d7d8a399ccab09c1fedc510d65436e25b1c386b" - integrity sha512-pq6y03Vs6HUaKo9bE0aLoksAcpeOo9HZd7I8pI6O480W/zxNZ9U32GfzgtPP0Pgc/K1JHna569nAbOk3X8/Qtw== - dependencies: - jsesc "~0.3.x" - lodash.foreach "^4.5.0" - lodash.template "^4.5.0" - source-map "~0.1.x" - spawn-args@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/spawn-args/-/spawn-args-0.2.0.tgz#fb7d0bd1d70fd4316bd9e3dec389e65f9d6361bb" @@ -14794,11 +14435,6 @@ supports-preserve-symlinks-flag@^1.0.0: resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== -symbol-tree@^3.2.4: - version "3.2.4" - resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" - integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== - symlink-or-copy@^1.0.0, symlink-or-copy@^1.0.1, symlink-or-copy@^1.1.8, symlink-or-copy@^1.2.0, symlink-or-copy@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/symlink-or-copy/-/symlink-or-copy-1.3.1.tgz#9506dd64d8e98fa21dcbf4018d1eab23e77f71fe" @@ -15116,23 +14752,6 @@ tooltip.js@^1.1.5: dependencies: popper.js "^1.0.2" -tough-cookie@^4.0.0: - version "4.1.3" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.1.3.tgz#97b9adb0728b42280aa3d814b6b999b2ff0318bf" - integrity sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw== - dependencies: - psl "^1.1.33" - punycode "^2.1.1" - universalify "^0.2.0" - url-parse "^1.5.3" - -tr46@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/tr46/-/tr46-2.1.0.tgz#fa87aa81ca5d5941da8cbf1f9b749dc969a4e240" - integrity sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw== - dependencies: - punycode "^2.1.1" - tr46@~0.0.3: version "0.0.3" resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" @@ -15488,11 +15107,6 @@ universalify@^0.1.0: resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== -universalify@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.2.0.tgz#6451760566fa857534745ab1dde952d1b1761be0" - integrity sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg== - universalify@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.1.tgz#168efc2180964e6386d061e094df61afe239b18d" @@ -15572,14 +15186,6 @@ url-parse-lax@^3.0.0: dependencies: prepend-http "^2.0.0" -url-parse@^1.5.3: - version "1.5.10" - resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.5.10.tgz#9d3c2f736c1d75dd3bd2be507dcc111f1e2ea9c1" - integrity sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ== - dependencies: - querystringify "^2.1.1" - requires-port "^1.0.0" - url-to-options@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/url-to-options/-/url-to-options-1.0.1.tgz#1505a03a289a48cbd7a434efbaeec5055f5633a9" @@ -15708,25 +15314,11 @@ vm-browserify@^1.0.1: resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-1.1.2.tgz#78641c488b8e6ca91a75f511e7a3b32a86e5dda0" integrity sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ== -w3c-hr-time@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz#0a89cdf5cc15822df9c360543676963e0cc308cd" - integrity sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ== - dependencies: - browser-process-hrtime "^1.0.0" - w3c-keyname@^2.2.4: version "2.2.8" resolved "https://registry.yarnpkg.com/w3c-keyname/-/w3c-keyname-2.2.8.tgz#7b17c8c6883d4e8b86ac8aba79d39e880f8869c5" integrity sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ== -w3c-xmlserializer@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz#3e7104a05b75146cc60f564380b7f683acf1020a" - integrity sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA== - dependencies: - xml-name-validator "^3.0.0" - walk-sync@^0.2.5: version "0.2.7" resolved "https://registry.yarnpkg.com/walk-sync/-/walk-sync-0.2.7.tgz#b49be4ee6867657aeb736978b56a29d10fa39969" @@ -15826,16 +15418,6 @@ webidl-conversions@^3.0.0: resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== -webidl-conversions@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-5.0.0.tgz#ae59c8a00b121543a2acc65c0434f57b0fc11aff" - integrity sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA== - -webidl-conversions@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz#9111b4d7ea80acd40f5270d666621afa78b69514" - integrity sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w== - webpack-sources@^1.4.0, webpack-sources@^1.4.1: version "1.4.3" resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.3.tgz#eedd8ec0b928fbf1cbfe994e22d2d890f330a933" @@ -15922,23 +15504,11 @@ websocket-extensions@>=0.1.1: resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.4.tgz#7f8473bc839dfd87608adb95d7eb075211578a42" integrity sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg== -whatwg-encoding@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0" - integrity sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw== - dependencies: - iconv-lite "0.4.24" - whatwg-fetch@^3.6.2: version "3.6.20" resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.6.20.tgz#580ce6d791facec91d37c72890995a0b48d31c70" integrity sha512-EqhiFU6daOA8kpjOWTL0olhVOF3i7OrFzSYiGsEMB8GcXS+RrzauAERX65xMeNWVqxA6HXH2m69Z9LaKKdisfg== -whatwg-mimetype@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf" - integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g== - whatwg-url@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" @@ -15947,15 +15517,6 @@ whatwg-url@^5.0.0: tr46 "~0.0.3" webidl-conversions "^3.0.0" -whatwg-url@^8.0.0, whatwg-url@^8.5.0: - version "8.7.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.7.0.tgz#656a78e510ff8f3937bc0bcbe9f5c0ac35941b77" - integrity sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg== - dependencies: - lodash "^4.7.0" - tr46 "^2.1.0" - webidl-conversions "^6.1.0" - which-boxed-primitive@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6" @@ -16051,16 +15612,6 @@ wrap-ansi@^7.0.0: string-width "^4.1.0" strip-ansi "^6.0.0" -wrap-legacy-hbs-plugin-if-needed@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/wrap-legacy-hbs-plugin-if-needed/-/wrap-legacy-hbs-plugin-if-needed-1.0.1.tgz#6683eb74747f33e7caea54bb2ed85106ef9006b4" - integrity sha512-aJjXe5WwrY0u0dcUgKW3m2SGnxosJ66LLm/QaG0YMHqgA6+J2xwAFZfhSLsQ2BmO5x8PTH+OIxoAXuGz3qBA7A== - dependencies: - "@glimmer/reference" "^0.42.1" - "@glimmer/runtime" "^0.42.1" - "@glimmer/syntax" "^0.42.1" - "@simple-dom/interface" "^1.4.0" - wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" @@ -16076,11 +15627,6 @@ write-file-atomic@^3.0.0: signal-exit "^3.0.2" typedarray-to-buffer "^3.1.5" -ws@^7.4.6: - version "7.5.9" - resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.9.tgz#54fa7db29f4c7cec68b1ddd3a89de099942bb591" - integrity sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q== - ws@~8.11.0: version "8.11.0" resolved "https://registry.yarnpkg.com/ws/-/ws-8.11.0.tgz#6a0d36b8edfd9f96d8b25683db2f8d7de6e8e143" @@ -16091,16 +15637,6 @@ xdg-basedir@^4.0.0: resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-4.0.0.tgz#4bc8d9984403696225ef83a1573cbbcb4e79db13" integrity sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q== -xml-name-validator@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" - integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw== - -xmlchars@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" - integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw== - xtend@^4.0.0, xtend@^4.0.2, xtend@~4.0.1: version "4.0.2" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" From b0672caf2a5cb3af2d63eff251c33f7c61808624 Mon Sep 17 00:00:00 2001 From: dvonanderson Date: Wed, 24 Apr 2024 12:54:39 -0400 Subject: [PATCH 13/16] yarn lint format all `.js` files --- .eslintrc.js | 17 +- .template-lintrc.js | 4 +- app/adapters/application.js | 3 +- app/app.js | 36 +- app/formats.js | 16 +- app/helpers/bbox-to-poly.js | 18 +- app/helpers/get-dash.js | 6 +- app/helpers/get-property.js | 16 +- app/helpers/md-markdown.js | 6 +- app/helpers/object-is-empty.js | 11 +- app/helpers/uc-words.js | 6 +- app/helpers/word-limit.js | 23 +- app/initializers/leaflet.js | 6 +- app/initializers/local-storage-export.js | 49 +- app/instance-initializers/profile.js | 2 +- app/instance-initializers/route-publish.js | 8 +- app/instance-initializers/settings.js | 6 +- app/mixins/cancel.js | 16 +- app/mixins/hash-poll.js | 25 +- app/mixins/object-template.js | 22 +- app/mixins/scroll-to.js | 6 +- app/models/base.js | 167 +++-- app/models/contact.js | 203 +++-- app/models/custom-profile.js | 94 +-- app/models/dictionary.js | 70 +- app/models/profile.js | 43 +- app/models/record.js | 121 ++- app/models/schema.js | 101 +-- app/models/setting.js | 62 +- .../control/md-alert-table/component.js | 4 +- .../control/md-button-confirm/component.js | 10 +- .../control/md-button-modal/component.js | 4 +- .../components/control/md-button/component.js | 20 +- .../control/md-contact-link/component.js | 12 +- .../control/md-contact-title/component.js | 9 +- .../control/md-crud-buttons/component.js | 13 +- .../control/md-definition/component.js | 2 +- .../control/md-edit-table/component.js | 85 +-- .../components/control/md-errors/component.js | 16 +- .../control/md-fiscalyear/component.js | 30 +- .../control/md-import-csv/component.js | 187 +++-- .../control/md-indicator/component.js | 11 +- .../control/md-indicator/related/component.js | 12 +- .../control/md-infotip/component.js | 51 +- .../components/control/md-itis/component.js | 124 ++-- .../control/md-json-button/component.js | 14 +- .../control/md-json-viewer/component.js | 15 +- .../components/control/md-modal/component.js | 6 +- .../md-record-table/buttons/component.js | 6 +- .../buttons/custom/component.js | 38 +- .../buttons/filter/component.js | 26 +- .../md-record-table/buttons/show/component.js | 2 +- .../control/md-record-table/component.js | 65 +- .../control/md-repo-link/component.js | 8 +- .../control/md-scroll-into-view/component.js | 7 +- .../control/md-scroll-spy/component.js | 53 +- .../control/md-select-table/component.js | 4 +- .../control/md-spinner/component.js | 28 +- .../control/md-spotlight/component.js | 4 +- .../components/control/md-status/component.js | 13 +- .../control/subbar-citation/component.js | 4 +- .../control/subbar-importcsv/component.js | 3 +- .../control/subbar-link/component.js | 2 +- .../control/subbar-spatial/component.js | 2 +- .../components/ember-tooltip/component.js | 2 +- .../components/input/md-boolean/component.js | 126 ++-- .../input/md-codelist-multi/component.js | 16 +- .../components/input/md-codelist/component.js | 48 +- .../input/md-date-range/component.js | 29 +- .../components/input/md-datetime/component.js | 6 +- .../input/md-input-confirm/component.js | 8 +- .../components/input/md-input/component.js | 505 +++++++------ .../input/md-markdown-area/component.js | 57 +- .../components/input/md-month/component.js | 2 +- .../input/md-select-contact/component.js | 9 +- .../input/md-select-contacts/component.js | 9 +- .../input/md-select-profile/component.js | 38 +- .../input/md-select-thesaurus/component.js | 135 ++-- .../components/input/md-select/component.js | 150 ++-- .../components/input/md-textarea/component.js | 501 +++++++------ .../components/input/md-toggle/component.js | 32 +- .../layout/md-breadcrumb/component.js | 3 +- .../components/layout/md-card/component.js | 57 +- .../components/layout/md-footer/component.js | 2 +- .../layout/md-nav-main/component.js | 11 +- .../layout/md-nav-secondary/component.js | 42 +- .../layout/md-nav-secondary/link/component.js | 15 +- .../layout/md-nav-sidebar/component.js | 15 +- .../layout/md-object-container/component.js | 66 +- .../components/layout/md-slider/component.js | 18 +- .../components/layout/md-wrap/component.js | 2 +- .../nav/dictionary/nav-main/component.js | 2 +- .../layout/nav/record/nav-main/component.js | 2 +- app/pods/components/md-help/component.js | 2 +- .../components/md-models-table/component.js | 1 - .../components/check-all/component.js | 4 +- .../components/check/component.js | 4 +- .../components/row-body/component.js | 7 +- .../components/row-buttons/component.js | 2 +- .../md-models-table/themes/bootstrap3.js | 4 +- app/pods/components/md-title/component.js | 17 +- app/pods/components/md-translate/component.js | 219 +++--- .../models-table/table-body/component.js | 6 +- .../components/object/md-address/component.js | 4 +- .../md-address/md-address-block/component.js | 3 +- .../object/md-allocation/component.js | 45 +- .../object/md-array-table/component.js | 46 +- .../object/md-associated/component.js | 76 +- .../object/md-associated/preview/component.js | 29 +- .../object/md-attribute/component.js | 142 ++-- .../object/md-attribute/preview/component.js | 6 +- .../components/object/md-bbox/component.js | 37 +- .../object/md-citation-array/component.js | 7 +- .../object/md-citation/component.js | 81 +- .../object/md-citation/preview/component.js | 6 +- .../object/md-constraint/component.js | 48 +- .../md-contact-identifier-array/component.js | 25 +- .../object/md-dataquality/component.js | 16 +- .../object/md-date-array/component.js | 8 +- .../components/object/md-date/component.js | 16 +- .../object/md-distribution/component.js | 42 +- .../object/md-distributor/component.js | 57 +- .../md-distributor/preview/component.js | 2 +- .../object/md-documentation/component.js | 31 +- .../md-documentation/preview/component.js | 2 +- .../components/object/md-domain/component.js | 93 +-- .../object/md-domainitem/component.js | 51 +- .../object/md-domainitem/preview/component.js | 8 +- .../components/object/md-entity/component.js | 314 ++++---- .../components/object/md-extent/component.js | 3 +- .../object/md-extent/spatial/component.js | 48 +- .../object/md-extent/vertical/component.js | 26 +- .../components/object/md-funding/component.js | 89 ++- .../object/md-funding/preview/component.js | 3 +- .../object/md-graphic-array/component.js | 6 +- .../object/md-identifier-array/component.js | 11 +- .../md-identifier-object-table/component.js | 2 +- .../object/md-identifier/component.js | 32 +- .../object/md-keyword-citation/component.js | 35 +- .../object/md-keyword-list/component.js | 10 +- .../components/object/md-lineage/component.js | 32 +- .../object/md-lineage/preview/component.js | 6 +- .../object/md-locale-array/component.js | 6 +- .../components/object/md-locale/component.js | 58 +- .../object/md-maintenance/component.js | 29 +- .../components/object/md-medium/component.js | 26 +- .../object/md-object-table/component.js | 60 +- .../object/md-objectroute-table/component.js | 25 +- .../md-online-resource-array/component.js | 24 +- .../object/md-online-resource/component.js | 62 +- .../object/md-party-array/component.js | 6 +- .../components/object/md-party/component.js | 60 +- .../object/md-phone-array/component.js | 21 +- .../object/md-process-step/component.js | 56 +- .../md-process-step/preview/component.js | 2 +- .../components/object/md-profile/component.js | 3 +- .../object/md-profile/custom/component.js | 26 +- .../object/md-profile/form/component.js | 2 +- .../object/md-profile/preview/component.js | 2 +- .../object/md-quality-report/component.js | 26 +- .../conformance-result/component.js | 20 +- .../coverage-result/component.js | 6 +- .../descriptive-result/component.js | 6 +- .../quantitative-result/component.js | 10 +- .../attrgroup/attribute/component.js | 62 +- .../attrgroup/attribute/preview/component.js | 2 +- .../object/md-raster/attrgroup/component.js | 48 +- .../components/object/md-raster/component.js | 124 ++-- .../object/md-raster/image-desc/component.js | 25 +- .../object/md-raster/preview/component.js | 3 +- .../object/md-repository-array/component.js | 9 +- .../md-resource-type-array/component.js | 19 +- .../components/object/md-schema/component.js | 2 +- .../object/md-schema/form/component.js | 32 +- .../object/md-simple-array-table/component.js | 12 +- .../components/object/md-source/component.js | 88 ++- .../object/md-source/preview/component.js | 12 +- .../object/md-spatial-info/component.js | 44 +- .../object/md-spatial-resolution/component.js | 139 ++-- .../components/object/md-srs/component.js | 37 +- .../md-standalone-quality-report/component.js | 4 +- .../md-taxonomy/classification/component.js | 2 +- .../classification/taxon/component.js | 63 +- .../md-taxonomy/collection/component.js | 86 ++- .../collection/system/component.js | 29 +- .../collection/system/preview/component.js | 15 +- .../collection/voucher/component.js | 42 +- .../object/md-taxonomy/component.js | 15 +- .../object/md-time-period/component.js | 95 +-- .../object/md-transfer/component.js | 78 +- .../object/md-transfer/preview/component.js | 2 +- app/pods/contact/new/id/route.js | 21 +- app/pods/contact/new/index/route.js | 4 +- app/pods/contact/new/route.js | 4 +- app/pods/contact/route.js | 6 +- app/pods/contact/show/edit/route.js | 3 +- app/pods/contact/show/index/route.js | 3 +- app/pods/contact/show/route.js | 56 +- app/pods/contacts/route.js | 50 +- app/pods/dashboard/route.js | 3 +- app/pods/dictionaries/route.js | 34 +- app/pods/dictionary/new/id/route.js | 33 +- app/pods/dictionary/new/index/route.js | 4 +- app/pods/dictionary/new/route.js | 4 +- app/pods/dictionary/route.js | 4 +- .../show/edit/citation/identifier/route.js | 27 +- .../show/edit/citation/index/route.js | 11 +- .../dictionary/show/edit/citation/route.js | 3 +- .../domain/edit/citation/identifier/route.js | 30 +- .../edit/domain/edit/citation/index/route.js | 38 +- .../show/edit/domain/edit/citation/route.js | 6 +- .../show/edit/domain/edit/index/route.js | 33 +- .../show/edit/domain/edit/item/route.js | 54 +- .../dictionary/show/edit/domain/edit/route.js | 22 +- .../show/edit/domain/index/route.js | 18 +- app/pods/dictionary/show/edit/domain/route.js | 4 +- .../edit/entity/edit/attribute/index/route.js | 46 +- .../show/edit/entity/edit/attribute/route.js | 52 +- .../entity/edit/citation/identifier/route.js | 64 +- .../edit/entity/edit/citation/index/route.js | 17 +- .../show/edit/entity/edit/citation/route.js | 48 +- .../show/edit/entity/edit/index/route.js | 44 +- .../dictionary/show/edit/entity/edit/route.js | 24 +- .../show/edit/entity/import/route.js | 161 ++-- .../show/edit/entity/index/route.js | 19 +- app/pods/dictionary/show/edit/entity/route.js | 3 +- app/pods/dictionary/show/edit/index/route.js | 66 +- app/pods/dictionary/show/edit/route.js | 30 +- app/pods/dictionary/show/index/route.js | 13 +- app/pods/dictionary/show/route.js | 31 +- app/pods/error/route.js | 3 +- app/pods/export/route.js | 213 +++--- app/pods/help/route.js | 3 +- app/pods/import/route.js | 380 +++++----- app/pods/not-found/route.js | 8 +- app/pods/publish/index/route.js | 3 +- app/pods/publish/route.js | 2 +- app/pods/record/index/route.js | 4 +- app/pods/record/new/id/route.js | 22 +- app/pods/record/new/index/route.js | 2 +- app/pods/record/new/route.js | 4 +- app/pods/record/route.js | 4 +- .../show/edit/associated/index/route.js | 17 +- .../edit/associated/resource/index/route.js | 44 +- .../show/edit/associated/resource/route.js | 26 +- app/pods/record/show/edit/associated/route.js | 3 +- .../show/edit/constraint/index/route.js | 13 +- app/pods/record/show/edit/constraint/route.js | 3 +- app/pods/record/show/edit/coverages/route.js | 3 +- .../show/edit/dataquality/edit/index/route.js | 14 +- .../show/edit/dataquality/edit/route.js | 29 +- .../show/edit/dataquality/index/route.js | 16 +- .../record/show/edit/dataquality/route.js | 5 +- app/pods/record/show/edit/dictionary/route.js | 68 +- .../distribution/distributor/index/route.js | 37 +- .../edit/distribution/distributor/route.js | 33 +- .../distributor/transfer/route.js | 62 +- .../show/edit/distribution/index/route.js | 39 +- .../record/show/edit/distribution/route.js | 8 +- .../edit/documents/citation/index/route.js | 16 +- .../show/edit/documents/citation/route.js | 28 +- .../record/show/edit/documents/index/route.js | 17 +- app/pods/record/show/edit/documents/route.js | 3 +- .../record/show/edit/extent/index/route.js | 2 +- app/pods/record/show/edit/extent/route.js | 14 +- .../record/show/edit/extent/spatial/route.js | 89 +-- .../show/edit/funding/allocation/route.js | 35 +- .../record/show/edit/funding/index/route.js | 38 +- app/pods/record/show/edit/funding/route.js | 6 +- app/pods/record/show/edit/grid/route.js | 3 +- app/pods/record/show/edit/index/route.js | 2 +- .../record/show/edit/keywords/index/route.js | 71 +- app/pods/record/show/edit/keywords/route.js | 4 +- .../show/edit/keywords/thesaurus/route.js | 58 +- .../record/show/edit/lineage/index/route.js | 17 +- .../citation/identifier/route.js | 29 +- .../lineageobject/citation/index/route.js | 17 +- .../lineage/lineageobject/citation/route.js | 31 +- .../edit/lineage/lineageobject/index/route.js | 58 +- .../show/edit/lineage/lineageobject/route.js | 24 +- .../lineageobject/source/index/route.js | 8 +- .../lineage/lineageobject/source/route.js | 31 +- .../lineageobject/step/citation/route.js | 39 +- .../lineage/lineageobject/step/index/route.js | 32 +- .../edit/lineage/lineageobject/step/route.js | 32 +- app/pods/record/show/edit/lineage/route.js | 3 +- .../edit/main/citation/identifier/route.js | 26 +- .../show/edit/main/citation/index/route.js | 14 +- .../record/show/edit/main/citation/route.js | 3 +- app/pods/record/show/edit/main/index/route.js | 94 ++- app/pods/record/show/edit/main/route.js | 3 +- .../metadata/alternate/identifier/route.js | 26 +- .../edit/metadata/alternate/index/route.js | 15 +- .../show/edit/metadata/alternate/route.js | 25 +- .../show/edit/metadata/identifier/route.js | 22 +- .../record/show/edit/metadata/index/route.js | 113 ++- .../edit/metadata/parent/identifier/route.js | 26 +- .../show/edit/metadata/parent/index/route.js | 26 +- .../record/show/edit/metadata/parent/route.js | 3 +- app/pods/record/show/edit/metadata/route.js | 3 +- app/pods/record/show/edit/route.js | 33 +- .../record/show/edit/spatial/index/route.js | 3 +- .../edit/spatial/raster/attribute/route.js | 50 +- .../show/edit/spatial/raster/index/route.js | 34 +- .../record/show/edit/spatial/raster/route.js | 30 +- app/pods/record/show/edit/spatial/route.js | 3 +- .../edit/taxonomy/collection/index/route.js | 42 +- .../edit/taxonomy/collection/itis/route.js | 23 +- .../show/edit/taxonomy/collection/route.js | 26 +- .../taxonomy/collection/system/index/route.js | 8 +- .../edit/taxonomy/collection/system/route.js | 33 +- .../record/show/edit/taxonomy/index/route.js | 43 +- app/pods/record/show/edit/taxonomy/route.js | 3 +- app/pods/record/show/index/route.js | 9 +- app/pods/record/show/route.js | 24 +- app/pods/record/show/translate/route.js | 17 +- app/pods/records/route.js | 34 +- app/pods/save/route.js | 3 +- app/pods/settings/index/route.js | 2 +- app/pods/settings/main/route.js | 2 +- app/pods/settings/profile/index/controller.js | 33 +- .../settings/profile/manage/controller.js | 103 +-- app/pods/settings/profile/route.js | 3 +- app/pods/settings/route.js | 40 +- app/pods/settings/validation/controller.js | 121 +-- app/pods/translate/route.js | 3 +- app/router.js | 315 +++++--- app/routes/application.js | 98 +-- app/routes/index.js | 6 +- app/services/cleaner.js | 134 ++-- app/services/codelist.js | 31 +- app/services/contacts.js | 20 +- app/services/custom-profile.js | 42 +- app/services/icon.js | 4 +- app/services/itis.js | 272 +++---- app/services/jsonvalidator.js | 695 ++++++++++-------- app/services/keycloak.js | 26 +- app/services/keyword.js | 56 +- app/services/mdjson.js | 27 +- app/services/patch.js | 222 +++--- app/services/profile.js | 79 +- app/services/publish.js | 2 +- app/services/schemas.js | 70 +- app/services/settings.js | 72 +- app/services/slider.js | 2 +- app/services/spotlight.js | 19 +- app/transforms/json.js | 10 +- app/transitions.js | 82 +-- app/utils/md-interpolate.js | 26 +- app/utils/md-object.js | 12 +- app/validators/array-required.js | 13 +- app/validators/array-valid.js | 26 +- app/validators/messages.js | 2 +- config/deploy.js | 4 +- config/deprecation-workflow.js | 31 +- config/ember-intl.js | 104 +-- config/ember-try.js | 33 +- config/environment.js | 94 +-- ember-cli-build.js | 43 +- package.json | 21 +- tests/.eslintrc.js | 4 +- .../components/layout/md-breadcrumb-test.js | 6 +- tests/acceptance/pods/contact/copy-test.js | 22 +- tests/acceptance/pods/contact/new-test.js | 19 +- .../acceptance/pods/contacts/contacts-test.js | 22 +- tests/acceptance/pods/dictionary/copy-test.js | 22 +- tests/acceptance/pods/dictionary/new-test.js | 21 +- tests/acceptance/pods/record/copy-test.js | 23 +- tests/acceptance/pods/record/new-test.js | 25 +- tests/helpers/create-citation.js | 136 ++-- tests/helpers/create-contact.js | 25 +- tests/helpers/create-dictionary.js | 147 ++-- tests/helpers/create-extent.js | 129 ++-- tests/helpers/create-identifier.js | 18 +- tests/helpers/create-map-layer.js | 14 +- tests/helpers/create-profile.js | 162 ++-- tests/helpers/create-record.js | 182 +++-- tests/helpers/create-taxonomy.js | 649 ++++++++-------- tests/helpers/destroy-app.js | 4 +- tests/helpers/flash-message.js | 2 +- tests/helpers/md-helpers.js | 22 +- tests/helpers/modal-asserts.js | 16 +- tests/helpers/start-app.js | 1 - .../components/feature-form-test.js | 30 +- .../components/feature-group-test.js | 11 +- .../components/feature-table-test.js | 15 +- .../components/geojson-layer-test.js | 12 +- .../components/leaflet-draw-test.js | 10 +- .../leaflet-table-row-actions-test.js | 2 +- .../components/leaflet-table-row-test.js | 4 +- .../components/leaflet-table-test.js | 14 +- .../components/sb-publisher-test.js | 44 +- .../components/sb-settings-test.js | 4 +- .../components/sb-tree-label-test.js | 28 +- tests/integration/components/sb-tree-test.js | 106 +-- .../components/tree-branch-test.js | 55 +- .../integration/components/tree-label-test.js | 30 +- .../integration/components/tree-leaf-test.js | 34 +- .../components/tree-search-test.js | 70 +- .../integration/components/tree-view-test.js | 84 ++- .../helpers/object-is-empty-test.js | 6 +- tests/integration/helpers/present-test.js | 5 +- tests/integration/helpers/word-limit-test.js | 18 +- .../control/md-alert-table/component-test.js | 19 +- .../md-button-confirm/component-test.js | 36 +- .../control/md-button-modal/component-test.js | 34 +- .../control/md-button/component-test.js | 10 +- .../control/md-contact-link/component-test.js | 19 +- .../md-contact-title/component-test.js | 10 +- .../control/md-crud-buttons/component-test.js | 36 +- .../control/md-definition/component-test.js | 30 +- .../control/md-edit-table/component-test.js | 54 +- .../control/md-errors/component-test.js | 60 +- .../control/md-fiscalyear/component-test.js | 51 +- .../control/md-import-csv/component-test.js | 35 +- .../control/md-indicator/component-test.js | 8 +- .../md-indicator/related/component-test.js | 72 +- .../control/md-infotip/component-test.js | 4 +- .../control/md-itis/component-test.js | 108 +-- .../control/md-json-button/component-test.js | 43 +- .../control/md-json-viewer/component-test.js | 21 +- .../control/md-modal/component-test.js | 10 +- .../md-record-table/buttons/component-test.js | 57 +- .../buttons/custom/component-test.js | 49 +- .../buttons/filter/component-test.js | 40 +- .../buttons/show/component-test.js | 21 +- .../control/md-record-table/component-test.js | 54 +- .../control/md-repo-link/component-test.js | 30 +- .../md-scroll-into-view/component-test.js | 27 +- .../control/md-scroll-spy/component-test.js | 13 +- .../control/md-select-table/component-test.js | 65 +- .../control/md-spinner/component-test.js | 16 +- .../control/md-spotlight/component-test.js | 11 +- .../control/md-status/component-test.js | 11 +- .../control/subbar-citation/component-test.js | 21 +- .../subbar-importcsv/component-test.js | 29 +- .../control/subbar-link/component-test.js | 6 +- .../control/subbar-spatial/component-test.js | 53 +- .../ember-tooltip/component-test.js | 5 +- .../input/md-boolean/component-test.js | 23 +- .../input/md-codelist-multi/component-test.js | 105 +-- .../input/md-codelist/component-test.js | 105 +-- .../input/md-date-range/component-test.js | 38 +- .../input/md-datetime/component-test.js | 7 +- .../input/md-input-confirm/component-test.js | 14 +- .../input/md-input/component-test.js | 18 +- .../input/md-markdown-area/component-test.js | 32 +- .../input/md-month/component-test.js | 4 +- .../input/md-select-contact/component-test.js | 17 +- .../md-select-contacts/component-test.js | 17 +- .../input/md-select-profile/component-test.js | 38 +- .../md-select-thesaurus/component-test.js | 45 +- .../input/md-select/component-test.js | 132 ++-- .../input/md-textarea/component-test.js | 16 +- .../input/md-toggle/component-test.js | 14 +- .../layout/md-card/component-test.js | 11 +- .../layout/md-footer/component-test.js | 29 +- .../layout/md-nav-main/component-test.js | 21 +- .../layout/md-nav-secondary/component-test.js | 110 +-- .../md-nav-secondary/link/component-test.js | 67 +- .../layout/md-nav-sidebar/component-test.js | 26 +- .../md-object-container/component-test.js | 38 +- .../layout/md-slider/component-test.js | 14 +- .../layout/md-wrap/component-test.js | 5 +- .../nav/dictionary/nav-main/component-test.js | 52 +- .../nav/record/nav-main/component-test.js | 35 +- .../pods/components/md-help/component-test.js | 21 +- .../md-models-table/component-test.js | 49 +- .../components/check-all/component-test.js | 65 +- .../components/check/component-test.js | 41 +- .../components/row-body/component-test.js | 29 +- .../components/row-buttons/component-test.js | 121 +-- .../components/md-title/component-test.js | 4 +- .../components/md-translate/component-test.js | 69 +- .../cell-content-display/component-test.js | 56 +- .../models-table/row-expand/component-test.js | 4 +- .../models-table/table-body/component-test.js | 4 +- .../md-address-block/component-test.js | 62 +- .../object/md-allocation/component-test.js | 39 +- .../object/md-array-table/component-test.js | 39 +- .../object/md-associated/component-test.js | 112 +-- .../md-associated/preview/component-test.js | 139 ++-- .../object/md-attribute/component-test.js | 24 +- .../md-attribute/preview/component-test.js | 32 +- .../object/md-bbox/component-test.js | 29 +- .../md-citation-array/component-test.js | 27 +- .../object/md-citation/component-test.js | 25 +- .../preview/body/component-test.js | 42 +- .../md-citation/preview/component-test.js | 53 +- .../object/md-constraint/component-test.js | 27 +- .../object/md-date-array/component-test.js | 49 +- .../object/md-date/component-test.js | 41 +- .../object/md-distribution/component-test.js | 85 ++- .../object/md-distributor/component-test.js | 71 +- .../md-distributor/preview/component-test.js | 106 +-- .../object/md-documentation/component-test.js | 36 +- .../preview/component-test.js | 56 +- .../object/md-domain/component-test.js | 21 +- .../object/md-domainitem/component-test.js | 31 +- .../md-domainitem/preview/component-test.js | 55 +- .../object/md-entity/component-test.js | 26 +- .../object/md-extent/component-test.js | 19 +- .../md-extent/spatial/component-test.js | 115 +-- .../object/md-funding/component-test.js | 77 +- .../md-funding/preview/component-test.js | 41 +- .../object/md-graphic-array/component-test.js | 58 +- .../md-identifier-array/component-test.js | 85 ++- .../component-test.js | 42 +- .../object/md-identifier/component-test.js | 24 +- .../md-keyword-citation/component-test.js | 69 +- .../object/md-keyword-list/component-test.js | 76 +- .../object/md-lineage/component-test.js | 60 +- .../md-lineage/preview/component-test.js | 60 +- .../object/md-locale-array/component-test.js | 41 +- .../object/md-locale/component-test.js | 41 +- .../object/md-maintenance/component-test.js | 117 +-- .../object/md-medium/component-test.js | 46 +- .../object/md-object-table/component-test.js | 35 +- .../md-objectroute-table/component-test.js | 56 +- .../md-online-resource/component-test.js | 35 +- .../object/md-party-array/component-test.js | 68 +- .../object/md-party/component-test.js | 47 +- .../object/md-process-step/component-test.js | 196 ++--- .../md-process-step/preview/component-test.js | 93 +-- .../object/md-profile/component-test.js | 14 +- .../md-profile/custom/component-test.js | 18 +- .../object/md-profile/form/component-test.js | 14 +- .../md-profile/preview/component-test.js | 14 +- .../attrgroup/attribute/component-test.js | 36 +- .../md-raster/attrgroup/component-test.js | 25 +- .../object/md-raster/component-test.js | 82 ++- .../md-raster/image-desc/component-test.js | 68 +- .../md-raster/preview/component-test.js | 29 +- .../md-repository-array/component-test.js | 69 +- .../md-resource-type-array/component-test.js | 55 +- .../object/md-schema/component-test.js | 33 +- .../object/md-schema/form/component-test.js | 33 +- .../md-simple-array-table/component-test.js | 66 +- .../object/md-source/component-test.js | 66 +- .../md-source/preview/component-test.js | 59 +- .../object/md-spatial-info/component-test.js | 154 ++-- .../md-spatial-resolution/component-test.js | 224 +++--- .../object/md-srs/component-test.js | 34 +- .../classification/component-test.js | 63 +- .../classification/taxon/component-test.js | 84 ++- .../md-taxonomy/collection/component-test.js | 62 +- .../collection/system/component-test.js | 61 +- .../system/preview/component-test.js | 40 +- .../collection/voucher/component-test.js | 44 +- .../object/md-taxonomy/component-test.js | 28 +- .../object/md-time-period/component-test.js | 124 ++-- .../object/md-transfer/component-test.js | 76 +- .../md-transfer/preview/component-test.js | 106 +-- tests/unit/adapters/application-test.js | 8 +- tests/unit/helpers/bbox-to-poly-test.js | 20 +- tests/unit/helpers/get-dash-test.js | 7 +- tests/unit/helpers/make-range-test.js | 6 +- tests/unit/helpers/md-markdown-test.js | 5 +- tests/unit/helpers/mod-test.js | 6 +- tests/unit/initializers/leaflet-test.js | 8 +- .../initializers/local-storage-export-test.js | 8 +- .../instance-initializers/profile-test.js | 8 +- .../route-publish-test.js | 15 +- .../settings-sciencebase-test.js | 19 +- .../instance-initializers/settings-test.js | 8 +- tests/unit/mixins/cancel-test.js | 2 +- tests/unit/mixins/hash-poll-test.js | 4 +- tests/unit/mixins/object-template-test.js | 4 +- tests/unit/mixins/scroll-to-test.js | 4 +- tests/unit/models/base-test.js | 4 +- tests/unit/models/contact-test.js | 20 +- tests/unit/models/dictionary-test.js | 14 +- tests/unit/models/record-test.js | 28 +- tests/unit/models/setting-test.js | 8 +- tests/unit/pods/contact/new/id/route-test.js | 4 +- .../unit/pods/contact/new/index/route-test.js | 4 +- .../unit/pods/contact/show/edit/route-test.js | 4 +- .../pods/contact/show/index/route-test.js | 4 +- tests/unit/pods/contact/show/route-test.js | 4 +- tests/unit/pods/contacts/route-test.js | 4 +- tests/unit/pods/dashboard/route-test.js | 4 +- tests/unit/pods/dictionaries/route-test.js | 4 +- .../unit/pods/dictionary/new/id/route-test.js | 4 +- .../pods/dictionary/new/index/route-test.js | 4 +- .../edit/citation/identifier/route-test.js | 19 +- .../show/edit/citation/index/route-test.js | 4 +- .../show/edit/citation/route-test.js | 4 +- .../edit/citation/identifier/route-test.js | 19 +- .../domain/edit/citation/index/route-test.js | 19 +- .../edit/domain/edit/citation/route-test.js | 19 +- .../show/edit/domain/edit/index/route-test.js | 19 +- .../show/edit/domain/edit/item/route-test.js | 19 +- .../show/edit/domain/edit/route-test.js | 4 +- .../show/edit/domain/index/route-test.js | 4 +- .../dictionary/show/edit/domain/route-test.js | 4 +- .../entity/edit/attribute/index/route-test.js | 19 +- .../edit/entity/edit/attribute/route-test.js | 19 +- .../edit/citation/identifier/route-test.js | 19 +- .../entity/edit/citation/index/route-test.js | 19 +- .../edit/entity/edit/citation/route-test.js | 19 +- .../show/edit/entity/edit/index/route-test.js | 19 +- .../show/edit/entity/edit/route-test.js | 4 +- .../show/edit/entity/import/route-test.js | 4 +- .../show/edit/entity/index/route-test.js | 4 +- .../dictionary/show/edit/entity/route-test.js | 4 +- .../dictionary/show/edit/index/route-test.js | 4 +- .../pods/dictionary/show/edit/route-test.js | 4 +- .../pods/dictionary/show/index/route-test.js | 4 +- tests/unit/pods/dictionary/show/route-test.js | 4 +- tests/unit/pods/error/route-test.js | 4 +- tests/unit/pods/export/route-test.js | 4 +- tests/unit/pods/help/route-test.js | 4 +- tests/unit/pods/import/route-test.js | 4 +- tests/unit/pods/not-found/route-test.js | 4 +- tests/unit/pods/publish/index/route-test.js | 4 +- tests/unit/pods/record/index/route-test.js | 4 +- tests/unit/pods/record/new/id/route-test.js | 4 +- .../unit/pods/record/new/index/route-test.js | 4 +- .../show/edit/associated/index/route-test.js | 4 +- .../associated/resource/index/route-test.js | 19 +- .../edit/associated/resource/route-test.js | 4 +- .../record/show/edit/associated/route-test.js | 4 +- .../show/edit/constraint/index/route-test.js | 4 +- .../record/show/edit/constraint/route-test.js | 4 +- .../record/show/edit/coverages/route-test.js | 4 +- .../record/show/edit/dictionary/route-test.js | 4 +- .../distributor/index/route-test.js | 19 +- .../distribution/distributor/route-test.js | 19 +- .../distributor/transfer/route-test.js | 19 +- .../edit/distribution/index/route-test.js | 4 +- .../show/edit/distribution/route-test.js | 4 +- .../documents/citation/index/route-test.js | 19 +- .../edit/documents/citation/route-test.js | 4 +- .../show/edit/documents/index/route-test.js | 4 +- .../record/show/edit/documents/route-test.js | 4 +- .../show/edit/extent/index/route-test.js | 4 +- .../edit/funding/allocation/route-test.js | 4 +- .../show/edit/funding/index/route-test.js | 4 +- .../record/show/edit/funding/route-test.js | 4 +- .../pods/record/show/edit/grid/route-test.js | 4 +- .../pods/record/show/edit/index/route-test.js | 4 +- .../show/edit/keywords/index/route-test.js | 4 +- .../record/show/edit/keywords/route-test.js | 4 +- .../edit/keywords/thesaurus/route-test.js | 4 +- .../citation/identifier/route-test.js | 19 +- .../citation/index/route-test.js | 19 +- .../lineageobject/citation/route-test.js | 19 +- .../lineage/lineageobject/index/route-test.js | 19 +- .../edit/lineage/lineageobject/route-test.js | 19 +- .../lineageobject/source/index/route-test.js | 19 +- .../lineageobject/source/route-test.js | 19 +- .../lineageobject/step/citation/route-test.js | 19 +- .../lineageobject/step/index/route-test.js | 19 +- .../lineage/lineageobject/step/route-test.js | 19 +- .../main/citation/identifier/route-test.js | 19 +- .../edit/main/citation/index/route-test.js | 4 +- .../show/edit/main/citation/route-test.js | 4 +- .../record/show/edit/main/index/route-test.js | 4 +- .../pods/record/show/edit/main/route-test.js | 4 +- .../alternate/identifier/route-test.js | 19 +- .../metadata/alternate/index/route-test.js | 19 +- .../edit/metadata/alternate/route-test.js | 4 +- .../edit/metadata/identifier/route-test.js | 4 +- .../show/edit/metadata/index/route-test.js | 4 +- .../metadata/parent/identifier/route-test.js | 19 +- .../edit/metadata/parent/index/route-test.js | 19 +- .../show/edit/metadata/parent/route-test.js | 4 +- .../record/show/edit/metadata/route-test.js | 4 +- .../unit/pods/record/show/edit/route-test.js | 4 +- .../show/edit/spatial/extent/route-test.js | 4 +- .../show/edit/spatial/index/route-test.js | 4 +- .../spatial/raster/attribute/route-test.js | 19 +- .../edit/spatial/raster/index/route-test.js | 19 +- .../show/edit/spatial/raster/route-test.js | 4 +- .../record/show/edit/spatial/route-test.js | 4 +- .../taxonomy/collection/index/route-test.js | 19 +- .../taxonomy/collection/itis/route-test.js | 19 +- .../edit/taxonomy/collection/route-test.js | 4 +- .../collection/system/index/route-test.js | 19 +- .../taxonomy/collection/system/route-test.js | 19 +- .../show/edit/taxonomy/index/route-test.js | 4 +- .../record/show/edit/taxonomy/route-test.js | 4 +- .../unit/pods/record/show/index/route-test.js | 4 +- tests/unit/pods/record/show/route-test.js | 4 +- .../pods/record/show/translate/route-test.js | 4 +- tests/unit/pods/records/route-test.js | 4 +- tests/unit/pods/settings/index/route-test.js | 4 +- tests/unit/pods/settings/main/route-test.js | 4 +- .../settings/profile/index/controller-test.js | 4 +- .../pods/settings/profile/index/route-test.js | 4 +- .../profile/manage/controller-test.js | 4 +- .../settings/profile/manage/route-test.js | 4 +- .../unit/pods/settings/profile/route-test.js | 4 +- tests/unit/pods/settings/route-test.js | 4 +- .../settings/validation/controller-test.js | 4 +- .../pods/settings/validation/route-test.js | 4 +- tests/unit/pods/translate/route-test.js | 4 +- tests/unit/routes/application-test.js | 4 +- tests/unit/routes/index-test.js | 4 +- tests/unit/routes/publish/sciencebase-test.js | 4 +- tests/unit/serializers/application-test.js | 27 +- tests/unit/services/cleaner-test.js | 44 +- tests/unit/services/codelist-test.js | 13 +- tests/unit/services/contacts-test.js | 4 +- tests/unit/services/custom-profile-test.js | 4 +- tests/unit/services/icon-test.js | 4 +- tests/unit/services/itis-test.js | 4 +- tests/unit/services/jsonvalidator-test.js | 49 +- tests/unit/services/keycloak-test.js | 4 +- tests/unit/services/keyword-test.js | 4 +- tests/unit/services/mdjson-test.js | 4 +- tests/unit/services/patch-test.js | 4 +- tests/unit/services/profile-test.js | 4 +- tests/unit/services/publish-test.js | 4 +- tests/unit/services/schemas-test.js | 4 +- tests/unit/services/settings-test.js | 2 +- tests/unit/services/slider-test.js | 4 +- tests/unit/services/spotlight-test.js | 4 +- tests/unit/transforms/json-test.js | 13 +- tests/unit/utils/config-test.js | 4 +- tests/unit/utils/md-interpolate-test.js | 14 +- tests/unit/utils/md-object-test.js | 1 - tests/unit/utils/sb-tree-node-test.js | 6 +- tests/unit/validators/array-required-test.js | 4 +- tests/unit/validators/array-valid-test.js | 4 +- yarn.lock | 2 +- 726 files changed, 13710 insertions(+), 11266 deletions(-) diff --git a/.eslintrc.js b/.eslintrc.js index e2827b9a2..b2c1d6c4f 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -4,25 +4,28 @@ module.exports = { root: true, parser: '@babel/eslint-parser', parserOptions: { - ecmaVersion: 2018, + ecmaVersion: 'latest', sourceType: 'module', ecmaFeatures: { legacyDecorators: true, }, + // This is specific babel-config. If grows consider creating a babel config file + requireConfigFile: false, + babelOptions: { + plugins: [ + ['@babel/plugin-proposal-decorators', { decoratorsBeforeExport: true }], + ], + }, }, plugins: ['ember'], - extends: [ - 'eslint:recommended', - 'plugin:ember/recommended', - 'plugin:prettier/recommended', - ], + extends: ['eslint:recommended', 'plugin:ember/recommended', 'prettier'], env: { browser: true, }, rules: { //'ember/new-module-imports': 'off', 'no-console': 1, - 'ember/no-observers': 1 + 'ember/no-observers': 1, }, overrides: [ // node files diff --git a/.template-lintrc.js b/.template-lintrc.js index 79da042f8..b00420e35 100644 --- a/.template-lintrc.js +++ b/.template-lintrc.js @@ -1,7 +1,7 @@ 'use strict'; module.exports = { - plugins: ["ember-template-lint-plugin-prettier"], + plugins: ['ember-template-lint-plugin-prettier'], - extends: ["recommended", "ember-template-lint-plugin-prettier:recommended"] + extends: ['recommended', 'ember-template-lint-plugin-prettier:recommended'], }; diff --git a/app/adapters/application.js b/app/adapters/application.js index 4e86c629f..fdd4a8706 100644 --- a/app/adapters/application.js +++ b/app/adapters/application.js @@ -1,4 +1,3 @@ -import Adapter -from 'ember-local-storage/adapters/adapter'; +import Adapter from 'ember-local-storage/adapters/adapter'; export default Adapter.extend({}); diff --git a/app/app.js b/app/app.js index 767d32c5f..0b60a4cb7 100644 --- a/app/app.js +++ b/app/app.js @@ -15,20 +15,16 @@ import { defineProperty, //set } from '@ember/object'; -import { - isNone -} from '@ember/utils'; -import { - assert -} from '@ember/debug'; +import { isNone } from '@ember/utils'; +import { assert } from '@ember/debug'; // import Resolver from './resolver'; import loadInitializers from 'ember-load-initializers'; import config from 'mdeditor/config/environment'; let events = { // add support for the blur event - blur: 'blur' -} + blur: 'blur', +}; export default class App extends Application { modulePrefix = config.modulePrefix; @@ -45,14 +41,14 @@ loadInitializers(App, config.modulePrefix); //for bootstrap LinkComponent.reopen({ - attributeBindings: ['data-toggle', 'data-placement'] + attributeBindings: ['data-toggle', 'data-placement'], }); //for crumbly Route.reopen({ //breadCrumb: null currentRouteModel: function () { return this.modelFor(this.routeName); - } + }, }); //for profiles Component.reopen({ @@ -64,7 +60,7 @@ Component.reopen({ let visibility = this.visibility; let isVisible = isNone(visibility) ? true : visibility; - if(path !== undefined) { + if (path !== undefined) { assert(`${path} is not a profile path!`, path.charAt(0) !== '.'); // generate profile definition @@ -79,17 +75,21 @@ Component.reopen({ // return pp; // }, ''); - defineProperty(this, 'isVisible', computed( - 'profile.active', - function () { - if(!profile.activeComponents) { + defineProperty( + this, + 'isVisible', + computed('profile.active', function () { + if (!profile.activeComponents) { return isVisible; } - return (profile.activeComponents && profile.activeComponents[path]) ? profile.activeComponents[path] : isVisible; - })); + return profile.activeComponents && profile.activeComponents[path] + ? profile.activeComponents[path] + : isVisible; + }), + ); } - } + }, }); /** diff --git a/app/formats.js b/app/formats.js index 23dcd6598..9de3c5bd6 100644 --- a/app/formats.js +++ b/app/formats.js @@ -3,28 +3,28 @@ export default { hhmmss: { hour: 'numeric', minute: 'numeric', - second: 'numeric' - } + second: 'numeric', + }, }, date: { hhmmss: { hour: 'numeric', minute: 'numeric', - second: 'numeric' - } + second: 'numeric', + }, }, number: { EUR: { style: 'currency', currency: 'EUR', minimumFractionDigits: 2, - maximumFractionDigits: 2 + maximumFractionDigits: 2, }, USD: { style: 'currency', currency: 'USD', minimumFractionDigits: 2, - maximumFractionDigits: 2 - } - } + maximumFractionDigits: 2, + }, + }, }; diff --git a/app/helpers/bbox-to-poly.js b/app/helpers/bbox-to-poly.js index 8b54f5023..75686e67f 100644 --- a/app/helpers/bbox-to-poly.js +++ b/app/helpers/bbox-to-poly.js @@ -1,10 +1,16 @@ import { helper as buildHelper } from '@ember/component/helper'; -export function bboxToPoly(params/*, hash*/) { - let bbox = params[0]; +export function bboxToPoly(params /*, hash*/) { + let bbox = params[0]; - if(!(bbox.southLatitude && bbox.westLongitude && - bbox.northLatitude && bbox.eastLongitude)) { + if ( + !( + bbox.southLatitude && + bbox.westLongitude && + bbox.northLatitude && + bbox.eastLongitude + ) + ) { return null; } @@ -12,8 +18,8 @@ export function bboxToPoly(params/*, hash*/) { [bbox.southLatitude, bbox.westLongitude], [bbox.northLatitude, bbox.westLongitude], [bbox.northLatitude, bbox.eastLongitude], - [bbox.southLatitude, bbox.eastLongitude] - ]; + [bbox.southLatitude, bbox.eastLongitude], + ]; } export default buildHelper(bboxToPoly); diff --git a/app/helpers/get-dash.js b/app/helpers/get-dash.js index e18bc5886..714eed8c0 100644 --- a/app/helpers/get-dash.js +++ b/app/helpers/get-dash.js @@ -1,15 +1,15 @@ import Helper from '@ember/component/helper'; import { get } from '@ember/object'; -export function getDash(params /*, hash*/ ) { +export function getDash(params /*, hash*/) { let obj = params[0]; let prop = params[1].trim(); let val = null; - if(obj) { + if (obj) { val = get(obj, prop); } - return val || "--"; + return val || '--'; } export default Helper.helper(getDash); diff --git a/app/helpers/get-property.js b/app/helpers/get-property.js index bfbdc640d..766553024 100644 --- a/app/helpers/get-property.js +++ b/app/helpers/get-property.js @@ -1,20 +1,14 @@ -import { - helper -} from '@ember/component/helper'; -import { - htmlSafe -} from '@ember/string'; -import { - get -} from '@ember/object'; +import { helper } from '@ember/component/helper'; +import { htmlSafe } from '@ember/string'; +import { get } from '@ember/object'; export function getProperty([obj, prop]) { let val = null; - if(obj) { + if (obj) { val = get(obj, prop.trim()); } - return val || htmlSafe("Not Defined"); + return val || htmlSafe('Not Defined'); } export default helper(getProperty); diff --git a/app/helpers/md-markdown.js b/app/helpers/md-markdown.js index 1a2fbfbaa..a2b70623a 100644 --- a/app/helpers/md-markdown.js +++ b/app/helpers/md-markdown.js @@ -4,7 +4,7 @@ import { htmlSafe } from '@ember/string'; const marked = window.marked; -export function mdMarkdown(params /*, hash*/ ) { +export function mdMarkdown(params /*, hash*/) { marked.setOptions({ renderer: new marked.Renderer(), gfm: true, @@ -13,10 +13,10 @@ export function mdMarkdown(params /*, hash*/ ) { pedantic: false, sanitize: false, smartLists: true, - smartypants: false + smartypants: false, }); - if(params[0]) { + if (params[0]) { return htmlSafe(marked(params[0])); } diff --git a/app/helpers/object-is-empty.js b/app/helpers/object-is-empty.js index aae85188f..8b6559a43 100644 --- a/app/helpers/object-is-empty.js +++ b/app/helpers/object-is-empty.js @@ -1,7 +1,6 @@ - import { helper } from '@ember/component/helper'; - import { isEmpty } from 'mdeditor/utils/md-object' +import { helper } from '@ember/component/helper'; +import { isEmpty } from 'mdeditor/utils/md-object'; - - export default helper(function objectIsEmpty(params/*, hash*/) { - return isEmpty(params[0]); - }); +export default helper(function objectIsEmpty(params /*, hash*/) { + return isEmpty(params[0]); +}); diff --git a/app/helpers/uc-words.js b/app/helpers/uc-words.js index b07384ab5..d00007302 100644 --- a/app/helpers/uc-words.js +++ b/app/helpers/uc-words.js @@ -2,11 +2,11 @@ import { helper as buildHelper } from '@ember/component/helper'; export function ucWords(params, hash) { var string = String(params[0]), - force = (hash.force === true) ? true : false; - if(force) { + force = hash.force === true ? true : false; + if (force) { string = string.toLowerCase(); } - return string.replace(/(^|\s)[a-z\u00E0-\u00FC]/g, function($1) { + return string.replace(/(^|\s)[a-z\u00E0-\u00FC]/g, function ($1) { return $1.toUpperCase(); }); } diff --git a/app/helpers/word-limit.js b/app/helpers/word-limit.js index bc26d408a..f13b3458e 100644 --- a/app/helpers/word-limit.js +++ b/app/helpers/word-limit.js @@ -1,17 +1,10 @@ -import { - helper -} from '@ember/component/helper'; -import { - isPresent -} from '@ember/utils'; - -export function wordLimit(params, { - limit, - wordLength -}) { +import { helper } from '@ember/component/helper'; +import { isPresent } from '@ember/utils'; + +export function wordLimit(params, { limit, wordLength }) { const [value] = params; - if(isPresent(value)) { + if (isPresent(value)) { let arr = value.replace(/[ \s\n]+/g, ' |').split('|'); let words = limit || 50; let stop; @@ -19,11 +12,11 @@ export function wordLimit(params, { arr.every((itm, idx) => { stop = idx; - if(itm.trim() === "") { + if (itm.trim() === '') { return true; } - if(wordLength && itm.length > wordLength) { + if (wordLength && itm.length > wordLength) { arr[idx] = ' ' + itm.trim().slice(0, wordLength) + '...'; } @@ -32,7 +25,7 @@ export function wordLimit(params, { let text = arr.slice(0, stop > 0 ? stop : stop + 1).join(''); - if(arr.length > words) { + if (arr.length > words) { text += '...'; } diff --git a/app/initializers/leaflet.js b/app/initializers/leaflet.js index fe333dffb..7de2b2409 100644 --- a/app/initializers/leaflet.js +++ b/app/initializers/leaflet.js @@ -2,15 +2,15 @@ import ENV from 'mdeditor/config/environment'; /* global L */ export function initialize() { - if(ENV.environment === 'production') { + if (ENV.environment === 'production') { L.Icon.Default.imagePath = ENV.rootURL + '/assets/images/'; } - if(ENV.environment === 'development') { + if (ENV.environment === 'development') { L.Icon.Default.imagePath = '/assets/images/'; } } export default { name: 'leaflet', - initialize + initialize, }; diff --git a/app/initializers/local-storage-export.js b/app/initializers/local-storage-export.js index 25524a78f..7ab1be949 100644 --- a/app/initializers/local-storage-export.js +++ b/app/initializers/local-storage-export.js @@ -4,47 +4,52 @@ import { assign } from '@ember/polyfills'; import { run } from '@ember/runloop'; import { singularize } from 'ember-inflector'; -const exportSelected = function(store, types, options) { +const exportSelected = function (store, types, options) { // merge defaults options = { json: true, download: false, filename: 'ember-data.json', filterIds: null, - ...options || {} - } + ...(options || {}), + }; let json, data; - let filter = typeof options.filterIds === 'object' ? options.filterIds : - null; + let filter = typeof options.filterIds === 'object' ? options.filterIds : null; // collect data - data = types.reduce((records, type) => { - const adapter = store.adapterFor(singularize(type)); - const url = adapter.buildURL(type), - exportData = adapter._handleGETRequest(url); + data = types.reduce( + (records, type) => { + const adapter = store.adapterFor(singularize(type)); + const url = adapter.buildURL(type), + exportData = adapter._handleGETRequest(url); - records.data = records.data.concat(exportData.filter(itm => filter[ - singularize(type)].indexOf(itm.id) !== -1)); - return records; - }, { - data: [] - }); + records.data = records.data.concat( + exportData.filter( + (itm) => filter[singularize(type)].indexOf(itm.id) !== -1, + ), + ); + return records; + }, + { + data: [], + }, + ); - if(options.json || options.download) { + if (options.json || options.download) { json = JSON.stringify(data); } - if(options.json) { + if (options.json) { data = json; } - if(options.download) { + if (options.download) { window.saveAs( new Blob([json], { - type: 'application/json;charset=utf-8' + type: 'application/json;charset=utf-8', }), - options.filename + options.filename, ); } @@ -57,12 +62,12 @@ export function initialize() { Store.reopen({ exportSelectedData(types, options) { return exportSelected(this, types, options); - } + }, }); } export default { name: 'local-storage-export', after: 'ember-data', - initialize: initialize + initialize: initialize, }; diff --git a/app/instance-initializers/profile.js b/app/instance-initializers/profile.js index 2f8510123..e158ceef8 100644 --- a/app/instance-initializers/profile.js +++ b/app/instance-initializers/profile.js @@ -6,5 +6,5 @@ export function initialize(appInstance) { export default { name: 'profile', - initialize + initialize, }; diff --git a/app/instance-initializers/route-publish.js b/app/instance-initializers/route-publish.js index b3d28bdce..591482f14 100644 --- a/app/instance-initializers/route-publish.js +++ b/app/instance-initializers/route-publish.js @@ -1,10 +1,10 @@ -import Router from "@ember/routing/router"; +import Router from '@ember/routing/router'; export function initialize(appInstance) { let catalogs = appInstance.lookup('service:publish').get('catalogs'); // appInstance.inject('route', 'foo', 'service:foo'); - Router.map(function() { - this.route('publish', function() { + Router.map(function () { + this.route('publish', function () { catalogs.forEach((itm) => { this.route(itm.route); }); @@ -13,5 +13,5 @@ export function initialize(appInstance) { } export default { - initialize + initialize, }; diff --git a/app/instance-initializers/settings.js b/app/instance-initializers/settings.js index c8e2e34f4..c613ce22e 100644 --- a/app/instance-initializers/settings.js +++ b/app/instance-initializers/settings.js @@ -1,9 +1,9 @@ export function initialize(appInstance) { - appInstance.inject('route', 'settings', 'service:settings'); - appInstance.inject('controller', 'settings', 'service:settings'); + appInstance.inject('route', 'settings', 'service:settings'); + appInstance.inject('controller', 'settings', 'service:settings'); } export default { name: 'settings', - initialize + initialize, }; diff --git a/app/mixins/cancel.js b/app/mixins/cancel.js index 40c0e10b4..5667fa9ba 100644 --- a/app/mixins/cancel.js +++ b/app/mixins/cancel.js @@ -6,15 +6,15 @@ import { once } from '@ember/runloop'; export default Mixin.create({ doCancel() { let controller = this.controller; - let same = !controller.cancelScope || getOwner(this) - .lookup('controller:application') - .currentPath === get(controller, 'cancelScope.routeName'); + let same = + !controller.cancelScope || + getOwner(this).lookup('controller:application').currentPath === + get(controller, 'cancelScope.routeName'); - if(controller.onCancel) { + if (controller.onCancel) { once(() => { - if(same) { - controller.onCancel.call(controller.cancelScope || - this); + if (same) { + controller.onCancel.call(controller.cancelScope || this); } else { controller.set('onCancel', null); controller.set('cancelScope', null); @@ -22,5 +22,5 @@ export default Mixin.create({ this.refresh(); }); } - } + }, }); diff --git a/app/mixins/hash-poll.js b/app/mixins/hash-poll.js index c01dbcb6f..a951974a6 100644 --- a/app/mixins/hash-poll.js +++ b/app/mixins/hash-poll.js @@ -3,21 +3,12 @@ * @submodule mixins */ -import { - inject as service -} from '@ember/service'; +import { inject as service } from '@ember/service'; -import { - Promise -} from 'rsvp'; +import { Promise } from 'rsvp'; import Mixin from '@ember/object/mixin'; -import { - on -} from '@ember/object/evented'; -import { - task, - timeout -} from 'ember-concurrency'; +import { on } from '@ember/object/evented'; +import { task, timeout } from 'ember-concurrency'; export const pollInterval = 750; // time in milliseconds @@ -27,7 +18,7 @@ export default Mixin.create({ afterModel(model) { this._super(...arguments); - if(this.get('settings.data.autoSave')) { + if (this.get('settings.data.autoSave')) { model.set('jsonRevert', model.serialize().data.attributes.json); } @@ -44,7 +35,7 @@ export default Mixin.create({ const model = this.currentRouteModel(); return new Promise(function (resolve) { - if(model) { + if (model) { model.notifyPropertyChange('currentHash'); } resolve(true); @@ -52,9 +43,9 @@ export default Mixin.create({ }, pollTask: task(function* () { - while(true) { + while (true) { yield this.poll(); yield timeout(pollInterval); } - }).restartable() + }).restartable(), }); diff --git a/app/mixins/object-template.js b/app/mixins/object-template.js index 4be8d6c8c..5191efb0c 100644 --- a/app/mixins/object-template.js +++ b/app/mixins/object-template.js @@ -32,12 +32,13 @@ export default Mixin.create({ let value = object || {}; let Template = this.templateClass; - if(Template) { + if (Template) { let owner = getOwner(this); - return merge(Template.create(owner.ownerInjection(), defaults || {}), - value); - + return merge( + Template.create(owner.ownerInjection(), defaults || {}), + value, + ); } return object; @@ -53,18 +54,19 @@ export default Mixin.create({ applyTemplateArray(propertyName, defaults) { let property = this.get(propertyName); - if(isArray(property)) { + if (isArray(property)) { let Template = this.templateClass; - if(Template) { + if (Template) { let owner = getOwner(this); run.once(this, () => { property.forEach((item, idx, items) => { //items.removeAt(idx); - let newItem = assign(Template.create(owner.ownerInjection(), - defaults || {}), - item); + let newItem = assign( + Template.create(owner.ownerInjection(), defaults || {}), + item, + ); //items.insertAt(idx, newItem); items.set(`${idx}`, newItem); @@ -79,5 +81,5 @@ export default Mixin.create({ } return this.get(propertyName); - } + }, }); diff --git a/app/mixins/scroll-to.js b/app/mixins/scroll-to.js index 590827898..7c8148af0 100644 --- a/app/mixins/scroll-to.js +++ b/app/mixins/scroll-to.js @@ -7,7 +7,7 @@ import Mixin from '@ember/object/mixin'; export default Mixin.create({ queryParams: { - scrollTo: true + scrollTo: true, }, setScrollTo(scrollTo) { this.controller.set('scrollTo', scrollTo || ''); @@ -15,6 +15,6 @@ export default Mixin.create({ actions: { setScrollTo(scrollTo) { this.setScrollTo(scrollTo); - } - } + }, + }, }); diff --git a/app/models/base.js b/app/models/base.js index be7a8c4e2..51ea5422e 100644 --- a/app/models/base.js +++ b/app/models/base.js @@ -1,11 +1,14 @@ +import classic from 'ember-classic-decorator'; +import { observes } from '@ember-decorators/object'; +import { inject as service } from '@ember/service'; +import { alias, bool } from '@ember/object/computed'; import Model from '@ember-data/model'; import hash from 'object-hash'; -import { inject as service } from '@ember/service'; -import { computed, set, observer } from '@ember/object'; -import { bool, alias } from '@ember/object/computed'; +import { set, computed } from '@ember/object'; import { once } from '@ember/runloop'; -const Base = Model.extend({ +@classic +class Base extends Model { /** * Base model * @@ -17,7 +20,7 @@ const Base = Model.extend({ */ init() { - this._super(...arguments); + super.init(...arguments); this.on('didUpdate', this, this.wasUpdated); this.on('didCreate', this, this.wasUpdated); @@ -25,14 +28,25 @@ const Base = Model.extend({ this.on('ready', this, this.isReady); this.hasDirtyAttributes; //this.on('didLoad', this, this.wasLoaded); - }, + } + + @service + settings; - settings: service(), - schemas: service(), - customProfiles: service('custom-profile'), - patch: service(), - clean: service('cleaner'), - mdjson: service('mdjson'), + @service + schemas; + + @service('custom-profile') + customProfiles; + + @service + patch; + + @service('cleaner') + clean; + + @service('mdjson') + mdjson; /** * The hash for the clean record. @@ -48,75 +62,76 @@ const Base = Model.extend({ * @type {String} */ - observeReload: observer('isReloading', function () { + @observes('isReloading') + observeReload() { let reloading = this.isReloading; - if(!reloading) { + if (!reloading) { this.wasUpdated(this); } - }), + } - observeAutoSave: observer('hasDirtyAttributes', 'hasDirtyHash', - function () { - if(this.isNew || this.isEmpty) { - return; - } + @observes('hasDirtyAttributes', 'hasDirtyHash') + observeAutoSave() { + if (this.isNew || this.isEmpty) { + return; + } - if(this.get('settings.data.autoSave') && (this.hasDirtyHash || - this.hasDirtyAttributes)) { - once(this, function () { - this.save(); - }); - } - }), + if ( + this.get('settings.data.autoSave') && + (this.hasDirtyHash || this.hasDirtyAttributes) + ) { + once(this, function () { + this.save(); + }); + } + } applyPatch() { once(this, function () { - let patch = this.patch; patch.applyModelPatch(this); }); - }, + } isReady() { - let newHash = this.hashObject(JSON.parse(this.serialize() - .data.attributes - .json), true); + let newHash = this.hashObject( + JSON.parse(this.serialize().data.attributes.json), + true, + ); // if the currentHash is undefined, the record is either new or hasn't had the // hash calculated yet - if(this.currentHash === undefined) { + if (this.currentHash === undefined) { this.set('currentHash', newHash); } - }, + } wasUpdated() { - this._super(...arguments); + // super.wasUpdated(...arguments); //let record = model.record || this; - let json = JSON.parse(this.serialize() - .data.attributes.json); + let json = JSON.parse(this.serialize().data.attributes.json); this.setCurrentHash(json); this.set('jsonSnapshot', json); - }, + } wasLoaded() { - this._super(...arguments); + // super.wasLoaded(...arguments); - let json = JSON.parse(this.serialize() - .data.attributes.json); + let json = JSON.parse(this.serialize().data.attributes.json); this.setCurrentHash(json); this.set('jsonSnapshot', json); - }, + } saved() { this.set('dateUpdated', new Date()); - return this._super(...arguments); - }, + return super.saved(...arguments); + } /** * Compute and set the model hash. @@ -128,7 +143,7 @@ const Base = Model.extend({ let target = json || this.json; set(this, 'currentHash', this.hashObject(target), true); - }, + } /** * Computed a hash for the target object. @@ -142,8 +157,8 @@ const Base = Model.extend({ hashObject(target, parsed) { let toHash = parsed ? target : JSON.parse(JSON.stringify(target)); - return typeof toHash === "object" ? hash(toHash) : undefined; - }, + return typeof toHash === 'object' ? hash(toHash) : undefined; + } /** * Compare the current hash with the cached one. @@ -151,10 +166,12 @@ const Base = Model.extend({ * @property hasDirtyHash * @return {Boolean} Boolean value indicating if hashes are equivalent */ - hasDirtyHash: computed('currentHash', function () { - let newHash = this.hashObject(JSON.parse(this.serialize() - .data.attributes - .json), true); + @computed('currentHash') + get hasDirtyHash() { + let newHash = this.hashObject( + JSON.parse(this.serialize().data.attributes.json), + true, + ); //if the currentHash is undefined, the record is either new or hasn't had the //hash calculated yet @@ -162,49 +179,52 @@ const Base = Model.extend({ // this.set('currentHash', newHash); // } - if(this.currentHash !== newHash || this.hasDirtyAttributes) { + if (this.currentHash !== newHash || this.hasDirtyAttributes) { return true; } return false; - }), + } - canRevert: computed('hasDirtyHash', 'settings.data.autoSave', function () { + @computed('hasDirtyHash', 'settings.data.autoSave') + get canRevert() { let dirty = this.hasDirtyHash; let autoSave = this.get('settings.data.autoSave'); //no autoSave so just check if dirty - if(!autoSave && dirty) { + if (!autoSave && dirty) { return true; } let revert = this.jsonRevert; //if we have set revert object with autoSave on - if(revert && autoSave) { + if (revert && autoSave) { let hash = this.hashObject(JSON.parse(revert), true) !== this.currentHash; //check if changes have been made - if(hash) { + if (hash) { return true; } } return false; - }), + } - cleanJson: alias('_cleanJson'), + @alias('_cleanJson') + cleanJson; - status: computed('hasDirtyHash', 'hasSchemaErrors', function () { + @computed('hasDirtyHash', 'hasSchemaErrors') + get status() { let dirty = this.hasDirtyHash; let errors = this.hasSchemaErrors; - if(this.currentHash) { + if (this.currentHash) { return dirty ? 'danger' : errors ? 'warning' : 'success'; } return 'success'; - }), + } /** * Indicates whether errors are present. @@ -215,7 +235,8 @@ const Base = Model.extend({ * @category computed * @requires schemaErrors */ - hasSchemaErrors: bool('schemaErrors.length'), + @bool('schemaErrors.length') + hasSchemaErrors; /** * Array of custom schemas that are associated with this model @@ -227,27 +248,27 @@ const Base = Model.extend({ * @category computed * @requires */ - customSchemas: computed('schemas.schemas.@each.isGlobal', 'profile', function () { + @computed('schemas.schemas.@each.isGlobal', 'profile') + get customSchemas() { return this.schemas.schemas.filter((schema) => { - if(schema.schemaType !== this.constructor.modelName) { + if (schema.schemaType !== this.constructor.modelName) { return false; } - if(schema.isGlobal) { + if (schema.isGlobal) { return true; } - let profile=this.customProfiles.mapById[this.profile]; + let profile = this.customProfiles.mapById[this.profile]; - if(!profile || !profile.schemas){ + if (!profile || !profile.schemas) { return false; } - return profile.schemas.indexOf( - schema) > -1; + return profile.schemas.indexOf(schema) > -1; }, this); - }) -}); + } +} //Modify the prototype instead of using computed.volatile() //see https://github.com/emberjs/ember.js/issues/17709#issuecomment-469941364 @@ -255,7 +276,7 @@ const Base = Model.extend({ Object.defineProperty(Base.prototype, '_cleanJson', { get() { return this.clean.clean(this.json); - } + }, }); export default Base; diff --git a/app/models/contact.js b/app/models/contact.js index bef2e3b0c..6eee1da62 100644 --- a/app/models/contact.js +++ b/app/models/contact.js @@ -1,84 +1,69 @@ import { hasMany, attr } from '@ember-data/model'; -import { - alias, - notEmpty -} from '@ember/object/computed'; -import { - isEmpty -} from '@ember/utils'; -import EmberObject, { - get, - computed -} from '@ember/object'; -import { - Copyable -} from 'ember-copy' +import { alias, notEmpty } from '@ember/object/computed'; +import { isEmpty } from '@ember/utils'; +import EmberObject, { get, computed } from '@ember/object'; +import { Copyable } from 'ember-copy'; import uuidV4 from 'uuid/v4'; import Validator from 'validator'; import Model from 'mdeditor/models/base'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; -import { - inject as service -} from '@ember/service'; +import { validator, buildValidations } from 'ember-cp-validations'; +import { inject as service } from '@ember/service'; const Validations = buildValidations({ 'json.contactId': validator('presence', { presence: true, - ignoreBlank: true + ignoreBlank: true, }), 'json.name': [ validator('format', { regex: /^\s+$/, inverse: true, isWarning: true, - message: "Name should not be only white-space." + message: 'Name should not be only white-space.', }), validator('presence', { disabled: notEmpty('model.json.positionName'), - presence: true - }) + presence: true, + }), ], 'json.positionName': [ validator('format', { regex: /^\s+$/, inverse: true, isWarning: true, - message: "Position Name should not be only white-space." + message: 'Position Name should not be only white-space.', }), validator('presence', { disabled: notEmpty('model.json.name'), - presence: true - }) + presence: true, + }), ], 'json.isOrganization': validator('presence', { presence: true, - ignoreBlank: true - }) + ignoreBlank: true, + }), }); const JsonDefault = EmberObject.extend({ init() { this._super(...arguments); this.setProperties({ - 'contactId': uuidV4(), - 'isOrganization': false, - 'name': null, + contactId: uuidV4(), + isOrganization: false, + name: null, //'positionName': null, - 'memberOfOrganization': [], - 'logoGraphic': [], - 'phone': [], - 'address': [], - 'electronicMailAddress': [], - 'externalIdentifier': [], - 'onlineResource': [], - 'hoursOfService': [], + memberOfOrganization: [], + logoGraphic: [], + phone: [], + address: [], + electronicMailAddress: [], + externalIdentifier: [], + onlineResource: [], + hoursOfService: [], //'contactInstructions': null, //'contactType': null; }); - } + }, }); const Contact = Model.extend(Validations, Copyable, { @@ -97,10 +82,10 @@ const Contact = Model.extend(Validations, Copyable, { store: service('store'), contactsService: service('contacts'), contacts: hasMany('contact', { - inverse: 'organizations' + inverse: 'organizations', }), organizations: hasMany('contact', { - inverse: 'contacts' + inverse: 'contacts', }), /** @@ -114,7 +99,7 @@ const Contact = Model.extend(Validations, Copyable, { json: attr('json', { defaultValue: function () { return JsonDefault.create(); - } + }, }), /** @@ -128,7 +113,7 @@ const Contact = Model.extend(Validations, Copyable, { dateUpdated: attr('date', { defaultValue() { return new Date(); - } + }, }), name: alias('json.name'), @@ -143,12 +128,11 @@ const Contact = Model.extend(Validations, Copyable, { * @category computed * @requires json.name, json.positionName */ - title: computed('json.{name,positionName,isOrganization}', - function () { - const json = this.json; + title: computed('json.{name,positionName,isOrganization}', function () { + const json = this.json; - return json.name || (json.isOrganization ? null : json.positionName); - }), + return json.name || (json.isOrganization ? null : json.positionName); + }), // /** // * The formatted display string for the contact @@ -190,11 +174,9 @@ const Contact = Model.extend(Validations, Copyable, { * @category computed * @requires json.isOrganization */ - type: computed('json.isOrganization', - function () { - return this.get('json.isOrganization') ? 'Organization' : - 'Individual'; - }), + type: computed('json.isOrganization', function () { + return this.get('json.isOrganization') ? 'Organization' : 'Individual'; + }), /** * The display icon for the contact @@ -205,12 +187,11 @@ const Contact = Model.extend(Validations, Copyable, { * @category computed * @requires json.isOrganization */ - icon: computed('json.isOrganization', - function () { - const name = this.get('json.isOrganization'); + icon: computed('json.isOrganization', function () { + const name = this.get('json.isOrganization'); - return name ? 'users' : 'user'; - }), + return name ? 'users' : 'user'; + }), /** * The URI of the default logo for the contact. @@ -226,24 +207,26 @@ const Contact = Model.extend(Validations, Copyable, { 'defaultOrganization', function () { let uri = this.get( - 'json.logoGraphic.firstObject.fileUri.firstObject.uri'); + 'json.logoGraphic.firstObject.fileUri.firstObject.uri', + ); - if(uri) { + if (uri) { return uri; } let orgId = this.defaultOrganization; - if(orgId && orgId !== this.get('json.contactId')) { + if (orgId && orgId !== this.get('json.contactId')) { let contacts = this.get('contactsService.organizations'); let org = contacts.findBy('json.contactId', orgId); - if(org) { + if (org) { return get(org, 'defaultLogo'); } } return null; - }), + }, + ), /** * The id of the default organization for the contact. @@ -254,27 +237,26 @@ const Contact = Model.extend(Validations, Copyable, { * @category computed * @requires json.memberOfOrganization.[] */ - defaultOrganization: computed('json.memberOfOrganization.[]', - function () { - const json = this.json; + defaultOrganization: computed('json.memberOfOrganization.[]', function () { + const json = this.json; - let { - memberOfOrganization - } = json; + let { memberOfOrganization } = json; - return !isEmpty(memberOfOrganization) ? - get(memberOfOrganization, '0') : - null; - }), + return !isEmpty(memberOfOrganization) + ? get(memberOfOrganization, '0') + : null; + }), - defaultOrganizationName: computed('defaultOrganization', - function () { - let contacts = this.get('contactsService.organizations'); + defaultOrganizationName: computed('defaultOrganization', function () { + let contacts = this.get('contactsService.organizations'); - let org = contacts.findBy('json.contactId.identifier', this.defaultOrganization); + let org = contacts.findBy( + 'json.contactId.identifier', + this.defaultOrganization, + ); - return org ? get(org, 'name') : null; - }), + return org ? get(org, 'name') : null; + }), /** * The formatted (name or position) and organization(if any) of the contact. @@ -285,39 +267,36 @@ const Contact = Model.extend(Validations, Copyable, { * @category computed * @requires json.name, json.isOrganization */ - combinedName: computed('name', + combinedName: computed( + 'name', 'json{isOrganization,positionName,memberOfOrganization[]}', function () { const json = this.json; - let { - name, - positionName, - isOrganization, - memberOfOrganization - } = json; + let { name, positionName, isOrganization, memberOfOrganization } = json; - let orgId = !isEmpty(memberOfOrganization) ? - get(memberOfOrganization, '0') : - null; + let orgId = !isEmpty(memberOfOrganization) + ? get(memberOfOrganization, '0') + : null; let combinedName = name || positionName; let orgName; - if(orgId) { + if (orgId) { let contacts = this.get('contactsService.organizations'); let org = contacts.findBy('json.contactId', orgId); - if(org) { + if (org) { orgName = get(org, 'name'); } } - if(orgName && !isOrganization) { - return orgName += ": " + combinedName; + if (orgName && !isOrganization) { + return (orgName += ': ' + combinedName); } return combinedName; - }), + }, + ), /** * The trimmed varsion of the contactId. @@ -330,7 +309,7 @@ const Contact = Model.extend(Validations, Copyable, { */ shortId: computed('json.contactId', function () { const contactId = this.get('json.contactId'); - if(contactId && Validator.isUUID(contactId)) { + if (contactId && Validator.isUUID(contactId)) { let index = contactId.indexOf('-'); return contactId.substring(0, index); @@ -353,23 +332,23 @@ const Contact = Model.extend(Validations, Copyable, { let errors = []; let result = mdjson.validateContact(this).errors; - if(result) { + if (result) { errors.pushObject({ title: 'Default Contact Validation', - errors: result + errors: result, }); } - this.customSchemas.forEach(schema => { + this.customSchemas.forEach((schema) => { const validator = schema.validator; - if(validator.validate(schema.rootSchema, this.cleanJson)) { + if (validator.validate(schema.rootSchema, this.cleanJson)) { return; } errors.pushObject({ title: schema.title, - errors: validator.errors + errors: validator.errors, }); }); @@ -386,27 +365,19 @@ const Contact = Model.extend(Validations, Copyable, { copy() { let current = this.cleanJson; let json = EmberObject.create(current); - let { - name, - positionName, - isOrganization - } = current; + let { name, positionName, isOrganization } = current; json.setProperties({ isOrganization: isOrganization, name: name ? `Copy of ${name}` : null, positionName: name ? positionName : `Copy of ${positionName}`, - contactId: uuidV4() + contactId: uuidV4(), }); return this.store.createRecord('contact', { - json: json + json: json, }); - } + }, }); -export { - Contact as - default, - JsonDefault -}; +export { Contact as default, JsonDefault }; diff --git a/app/models/custom-profile.js b/app/models/custom-profile.js index ab4bcf112..a2b97d1d0 100644 --- a/app/models/custom-profile.js +++ b/app/models/custom-profile.js @@ -4,10 +4,7 @@ import { or, alias, notEmpty } from '@ember/object/computed'; import { once } from '@ember/runloop'; import { inject as service } from '@ember/service'; // import { regex } from 'mdeditor/models/schema'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; +import { validator, buildValidations } from 'ember-cp-validations'; // [{ // "id": "full", @@ -31,44 +28,40 @@ import { // }] const Validations = buildValidations({ - 'alias': validator( - 'presence', { - presence: true, - ignoreBlank: true, - disabled: notEmpty('model.title'), - message: 'A title must be provided.' - }), - 'title': validator( - 'presence', { - presence: true, - ignoreBlank: true, - disabled: notEmpty('model.Alias'), - message: 'A title must be provided.' - }), - 'profileId': validator( - 'presence', { - presence: true, - ignoreBlank: true, - isWarning: true, - message: 'No profile definition is assigned.' - }), - 'schemas': validator( - 'presence', { - presence: true, - ignoreBlank: true, - isWarning: true, - message: 'No schemas have been assigned.' - }), + alias: validator('presence', { + presence: true, + ignoreBlank: true, + disabled: notEmpty('model.title'), + message: 'A title must be provided.', + }), + title: validator('presence', { + presence: true, + ignoreBlank: true, + disabled: notEmpty('model.Alias'), + message: 'A title must be provided.', + }), + profileId: validator('presence', { + presence: true, + ignoreBlank: true, + isWarning: true, + message: 'No profile definition is assigned.', + }), + schemas: validator('presence', { + presence: true, + ignoreBlank: true, + isWarning: true, + message: 'No schemas have been assigned.', + }), // 'uri': [ - // validator('presence', { - // presence: true, - // ignoreBlank: true - // }), - // validator('format', { - // regex: regex, - // isWarning: false, - // message: 'This field should be a valid, resolvable URL.' - // }) + // validator('presence', { + // presence: true, + // ignoreBlank: true + // }), + // validator('format', { + // regex: regex, + // isWarning: false, + // message: 'This field should be a valid, resolvable URL.' + // }) // ] }); @@ -103,26 +96,33 @@ export default Model.extend(Validations, { //localVersion: alias('version'), //hasUpdate: computed('localVersion', 'remoteVersion', checkVersion), schemas: hasMany('schemas'), - definition: computed('profileId', function() { + definition: computed('profileId', function () { return this.definitions.profiles.findBy('identifier', this.profileId); }), /* eslint-disable ember/no-observers */ - updateSettings: observer('hasDirtyAttributes', 'title', 'uri', 'alias', + updateSettings: observer( + 'hasDirtyAttributes', + 'title', + 'uri', + 'alias', 'description', - 'hasUpdate', 'schemas.[]', 'profileId', + 'hasUpdate', + 'schemas.[]', + 'profileId', function () { - if(this.isNew || this.isEmpty || this.isDeleted) { + if (this.isNew || this.isEmpty || this.isDeleted) { return; } - if(this.hasDirtyAttributes) { + if (this.hasDirtyAttributes) { this.set('dateUpdated', new Date()); once(this, function () { this.save(); }); } - }) + }, + ), /* eslint-enable ember/no-observers */ }); diff --git a/app/models/dictionary.js b/app/models/dictionary.js index 3788b71bb..ccc38a630 100644 --- a/app/models/dictionary.js +++ b/app/models/dictionary.js @@ -1,39 +1,34 @@ import { attr } from '@ember-data/model'; -import { Copyable } from 'ember-copy' -import uuidV4 from "uuid/v4"; +import { Copyable } from 'ember-copy'; +import uuidV4 from 'uuid/v4'; import { alias } from '@ember/object/computed'; import Model from 'mdeditor/models/base'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; +import { validator, buildValidations } from 'ember-cp-validations'; import EmberObject, { computed } from '@ember/object'; import config from 'mdeditor/config/environment'; import { inject as service } from '@ember/service'; const { - APP: { - defaultProfileId - } + APP: { defaultProfileId }, } = config; const Validations = buildValidations({ - 'json.dictionaryId': validator( - 'presence', { - presence: true, - ignoreBlank: true, - }), + 'json.dictionaryId': validator('presence', { + presence: true, + ignoreBlank: true, + }), 'json.dataDictionary.citation.title': validator('presence', { presence: true, - ignoreBlank: true + ignoreBlank: true, }), - 'json.dataDictionary.subject': [validator('presence', { + 'json.dataDictionary.subject': [ + validator('presence', { presence: true, - ignoreBlank: true + ignoreBlank: true, }), validator('array-required', { - track: [] - }) - ] + track: [], + }), + ], }); const JsonDefault = EmberObject.extend({ @@ -44,20 +39,21 @@ const JsonDefault = EmberObject.extend({ dataDictionary: { citation: { title: null, - date: [{ - date: new Date() - .toISOString(), - dateType: 'creation' - }] + date: [ + { + date: new Date().toISOString(), + dateType: 'creation', + }, + ], }, description: '', subject: [], responsibleParty: {}, domain: [], - entity: [] + entity: [], }, }); - } + }, }); export default Model.extend(Validations, Copyable, { @@ -79,17 +75,17 @@ export default Model.extend(Validations, Copyable, { store: service('store'), profile: attr('string', { - defaultValue: defaultProfileId + defaultValue: defaultProfileId, }), json: attr('json', { defaultValue() { return JsonDefault.create(); - } + }, }), dateUpdated: attr('date', { defaultValue() { return new Date(); - } + }, }), title: alias('json.dataDictionary.citation.title'), @@ -111,23 +107,23 @@ export default Model.extend(Validations, Copyable, { let errors = []; let result = mdjson.validateDictionary(this).errors; - if(result) { + if (result) { errors.pushObject({ title: 'Default Dictionary Validation', - errors: result + errors: result, }); } - this.customSchemas.forEach(schema => { + this.customSchemas.forEach((schema) => { const validator = schema.validator; - if(validator.validate(schema.rootSchema, this.cleanJson)) { + if (validator.validate(schema.rootSchema, this.cleanJson)) { return; } errors.pushObject({ title: schema.title, - errors: validator.errors + errors: validator.errors, }); }); @@ -142,7 +138,7 @@ export default Model.extend(Validations, Copyable, { json.set('dictionaryId', uuidV4()); return this.store.createRecord('dictionary', { - json: json + json: json, }); - } + }, }); diff --git a/app/models/profile.js b/app/models/profile.js index cfd7ac08c..355e79789 100644 --- a/app/models/profile.js +++ b/app/models/profile.js @@ -2,11 +2,8 @@ import Model, { attr } from '@ember-data/model'; import { or, alias } from '@ember/object/computed'; import { computed, observer } from '@ember/object'; import { once } from '@ember/runloop'; -import { checkVersion, regex } from 'mdeditor/models/schema' -import { - validator, - buildValidations -} from 'ember-cp-validations'; +import { checkVersion, regex } from 'mdeditor/models/schema'; +import { validator, buildValidations } from 'ember-cp-validations'; // [{ // "id": "full", @@ -30,23 +27,22 @@ import { // }] const Validations = buildValidations({ - 'config': validator( - 'presence', { - presence: true, - ignoreBlank: true, - message: 'The definition has not been downloaded.' - }), - 'uri': [ + config: validator('presence', { + presence: true, + ignoreBlank: true, + message: 'The definition has not been downloaded.', + }), + uri: [ validator('presence', { presence: true, - ignoreBlank: true + ignoreBlank: true, }), validator('format', { regex: regex, isWarning: false, - message: 'This field should be a valid, resolvable URL.' - }) - ] + message: 'This field should be a valid, resolvable URL.', + }), + ], }); export default Model.extend(Validations, { @@ -82,21 +78,26 @@ export default Model.extend(Validations, { hasUpdate: computed('localVersion', 'remoteVersion', checkVersion), /* eslint-disable ember/no-observers */ - updateSettings: observer('hasDirtyAttributes', 'alias', 'uri', - 'altDescription', 'remoteVersion', + updateSettings: observer( + 'hasDirtyAttributes', + 'alias', + 'uri', + 'altDescription', + 'remoteVersion', 'config', function () { - if(this.isNew || this.isEmpty || this.isDeleted) { + if (this.isNew || this.isEmpty || this.isDeleted) { return; } - if(this.hasDirtyAttributes) { + if (this.hasDirtyAttributes) { this.set('dateUpdated', new Date()); once(this, function () { this.save(); }); } - }) + }, + ), /* eslint-enable ember/no-observers */ }); diff --git a/app/models/record.js b/app/models/record.js index d8423aabc..7e4e1b298 100644 --- a/app/models/record.js +++ b/app/models/record.js @@ -3,41 +3,35 @@ import { alias } from '@ember/object/computed'; import { getOwner } from '@ember/application'; import EmberObject, { computed, get } from '@ember/object'; import { Copyable } from 'ember-copy'; -import uuidV4 from "uuid/v4"; +import uuidV4 from 'uuid/v4'; import Model from 'mdeditor/models/base'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; +import { validator, buildValidations } from 'ember-cp-validations'; import config from 'mdeditor/config/environment'; const { - APP: { - defaultProfileId - } + APP: { defaultProfileId }, } = config; import { inject as service } from '@ember/service'; const Validations = buildValidations({ - 'recordId': validator( - 'presence', { - presence: true, - ignoreBlank: true, - }), + recordId: validator('presence', { + presence: true, + ignoreBlank: true, + }), 'json.metadata.resourceInfo.resourceType': [ validator('array-valid'), validator('array-required', { - track: ['type'] - }) + track: ['type'], + }), ], 'json.metadata.resourceInfo.pointOfContact': { disabled: alias('model.isNew'), validators: [ validator('array-valid'), validator('array-required', { - track: ['type'] - }) - ] + track: ['type'], + }), + ], }, // 'json.resourceInfo.abstract': validator('presence', { // presence: true, @@ -45,8 +39,8 @@ const Validations = buildValidations({ // }), 'json.metadata.resourceInfo.citation.title': validator('presence', { presence: true, - ignoreBlank: true - }) + ignoreBlank: true, + }), // 'json.metadata.resourceInfo.citation': validator('length', { // min: 1 // }), @@ -74,30 +68,30 @@ const Record = Model.extend(Validations, Copyable, { store: service('store'), profile: attr('string', { - defaultValue: defaultProfileId + defaultValue: defaultProfileId, }), json: attr('json', { defaultValue() { const obj = EmberObject.create({ schema: { name: 'mdJson', - version: '2.6.0' + version: '2.6.0', }, contact: [], metadata: { metadataInfo: { metadataIdentifier: { identifier: uuidV4(), - namespace: 'urn:uuid' + namespace: 'urn:uuid', }, metadataContact: [], - defaultMetadataLocale: {} + defaultMetadataLocale: {}, }, resourceInfo: { resourceType: [{}], citation: { title: null, - date: [] + date: [], }, pointOfContact: [], abstract: '', @@ -109,59 +103,59 @@ const Record = Model.extend(Validations, Copyable, { // language: eng }, timePeriod: { - periodName: [] + periodName: [], }, extent: [], - keyword: [] + keyword: [], }, - dataQuality: [] + dataQuality: [], }, metadataRepository: [], - dataDictionary: [] + dataDictionary: [], }); return obj; - } + }, }), dateUpdated: attr('date', { defaultValue() { return new Date(); - } + }, }), title: alias('json.metadata.resourceInfo.citation.title'), - icon: computed('json.metadata.resourceInfo.resourceType.firstObject.type', + icon: computed( + 'json.metadata.resourceInfo.resourceType.firstObject.type', function () { - const type = this.get( - 'json.metadata.resourceInfo.resourceType.0.type') || - ''; + const type = + this.get('json.metadata.resourceInfo.resourceType.0.type') || ''; const list = getOwner(this).lookup('service:icon'); - return type ? list.get(type) || list.get('default') : list.get( - 'defaultFile'); - }), + return type + ? list.get(type) || list.get('default') + : list.get('defaultFile'); + }, + ), - recordId: alias( - 'json.metadata.metadataInfo.metadataIdentifier.identifier'), + recordId: alias('json.metadata.metadataInfo.metadataIdentifier.identifier'), recordIdNamespace: alias( - 'json.metadata.metadataInfo.metadataIdentifier.namespace'), + 'json.metadata.metadataInfo.metadataIdentifier.namespace', + ), - parentIds: alias( - 'json.metadata.metadataInfo.parentMetadata.identifier'), + parentIds: alias('json.metadata.metadataInfo.parentMetadata.identifier'), hasParent: computed('parentIds.[]', function () { let ids = this.parentIds; let allRecords = this.store.peekAll('record'); let records = allRecords.rejectBy('hasSchemaErrors'); - if(!ids) { + if (!ids) { return false; } return ids.find((id) => { - return records.findBy('recordId', id.identifier) ? true : - false; + return records.findBy('recordId', id.identifier) ? true : false; }); }), @@ -169,7 +163,7 @@ const Record = Model.extend(Validations, Copyable, { let id = this.get('hasParent.identifier'); let allRecords = this.store.peekAll('record'); - if(!id) { + if (!id) { return undefined; } @@ -177,7 +171,8 @@ const Record = Model.extend(Validations, Copyable, { }), defaultType: alias( - 'json.metadata.resourceInfo.resourceType.firstObject.type'), + 'json.metadata.resourceInfo.resourceType.firstObject.type', + ), /** * The trimmed varsion of the recordId. @@ -190,7 +185,7 @@ const Record = Model.extend(Validations, Copyable, { */ shortId: computed('recordId', function () { const recordId = this.recordId; - if(recordId) { + if (recordId) { let index = recordId.indexOf('-'); return recordId.substring(0, index > -1 ? index : 8); @@ -213,28 +208,27 @@ const Record = Model.extend(Validations, Copyable, { let errors = []; let result = mdjson.validateRecord(this).errors; - if(result) { + if (result) { errors.pushObject({ title: 'Default Record Validation', - errors: result + errors: result, }); } - this.customSchemas.forEach(schema => { + this.customSchemas.forEach((schema) => { const validator = schema.validator; - if(!validator) { + if (!validator) { return; } - if(validator.validate(schema.rootSchema, mdjson.formatRecord( - this))) { + if (validator.validate(schema.rootSchema, mdjson.formatRecord(this))) { return; } errors.pushObject({ title: schema.title, - errors: validator.errors + errors: validator.errors, }); }); @@ -249,22 +243,27 @@ const Record = Model.extend(Validations, Copyable, { let name = current.metadata.resourceInfo.citation.title; json.set('metadata.resourceInfo.citation.title', `Copy of ${name}`); - json.set('metadata.resourceInfo.resourceType', get(json, 'metadata.resourceInfo.resourceType') !== undefined ? get(json, 'metadata.resourceInfo.resourceType') : [{}]); + json.set( + 'metadata.resourceInfo.resourceType', + get(json, 'metadata.resourceInfo.resourceType') !== undefined + ? get(json, 'metadata.resourceInfo.resourceType') + : [{}], + ); json.set('metadata.metadataInfo.metadataIdentifier', { identifier: uuidV4(), - namespace: 'urn:uuid' + namespace: 'urn:uuid', }); return this.store.createRecord('record', { - json: json + json: json, }); - } + }, }); Object.defineProperty(Record.prototype, '_formatted', { get() { return this.mdjson.formatRecord(this); - } + }, }); export default Record; diff --git a/app/models/schema.js b/app/models/schema.js index a2c0c2bfb..c93aea28d 100644 --- a/app/models/schema.js +++ b/app/models/schema.js @@ -3,10 +3,7 @@ import { once } from '@ember/runloop'; import { computed, observer } from '@ember/object'; import { or } from '@ember/object/computed'; import { capitalize } from '@ember/string'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; +import { validator, buildValidations } from 'ember-cp-validations'; import semver from 'semver'; import Ajv from 'ajv'; import * as ajvErrors from 'ajv-errors'; @@ -18,54 +15,54 @@ const ajvOptions = { allErrors: true, jsonPointers: true, removeAdditional: false, - schemaId: 'auto' + schemaId: 'auto', }; const regex = /^(https?|ftp):\/\/[^\s/$.?#].[^\s]*$/i; const checkVersion = function () { - if(!this.localVersion && this.remoteVersion) { + if (!this.localVersion && this.remoteVersion) { return true; } - return this.remoteVersion ? semver.gt(this.remoteVersion, this.localVersion) : - false; + return this.remoteVersion + ? semver.gt(this.remoteVersion, this.localVersion) + : false; }; const Validations = buildValidations({ - 'title': validator( - 'presence', { - presence: true, - ignoreBlank: true, - }), - 'description': validator('presence', { + title: validator('presence', { presence: true, - ignoreBlank: true + ignoreBlank: true, }), - 'schemaType': [ + description: validator('presence', { + presence: true, + ignoreBlank: true, + }), + schemaType: [ validator('presence', true), validator('inclusion', { description: 'This value', - in: ['record', 'contact', 'dictionary'] - }) + in: ['record', 'contact', 'dictionary'], + }), ], - 'uri': [ + uri: [ validator('presence', { presence: true, - ignoreBlank: true + ignoreBlank: true, }), validator('format', { regex: regex, isWarning: false, - message: 'This field should be a valid, resolvable URL.' - }) + message: 'This field should be a valid, resolvable URL.', + }), ], - 'customSchemas': [ + customSchemas: [ validator('array-valid'), validator('array-required', { track: ['type'], - isWarning: true - }) + isWarning: true, + }), ], }); @@ -95,12 +92,12 @@ const theComp = Model.extend(Validations, { version: attr('string'), remoteVersion: attr('string'), isGlobal: attr('boolean', { - defaultValue: false + defaultValue: false, }), customSchemas: attr('json', { defaultValue: function () { return []; - } + }, }), status: computed('validations.isInvalid', function () { @@ -108,8 +105,9 @@ const theComp = Model.extend(Validations, { }), formattedType: computed('schemaType', function () { - return this.schemaType === 'record' ? 'Metadata' : capitalize(this.schemaType || - 'Unknown'); + return this.schemaType === 'record' + ? 'Metadata' + : capitalize(this.schemaType || 'Unknown'); }), formattedGlobal: computed('isGlobal', function () { @@ -127,13 +125,16 @@ const theComp = Model.extend(Validations, { dateUpdated: attr('date', { defaultValue() { return new Date(); - } + }, }), localVersion: or('version', 'rootSchema.version'), - hasUpdate: computed('version', 'remoteVersion', 'customSchemas.0.version', - checkVersion + hasUpdate: computed( + 'version', + 'remoteVersion', + 'customSchemas.0.version', + checkVersion, ), rootSchema: computed('customSchemas.firstObject.schema', function () { @@ -141,7 +142,7 @@ const theComp = Model.extend(Validations, { }), validator: computed('isGlobal', 'customSchemas', function () { - if(!this.isGlobal && !this.get('customSchemas.length')) { + if (!this.isGlobal && !this.get('customSchemas.length')) { return; } @@ -151,39 +152,41 @@ const theComp = Model.extend(Validations, { return this.schemaValidator.validateSchema(schema.schema); }); - if(valid) { - return this.schemaValidator.addSchema(this.customSchemas.mapBy( - 'schema')); + if (valid) { + return this.schemaValidator.addSchema(this.customSchemas.mapBy('schema')); } this.flashMessages.danger( - `Could not load schemas for ${this.title}. Schemas provided did not validate.` + `Could not load schemas for ${this.title}. Schemas provided did not validate.`, ); }), /* eslint-disable ember/no-observers */ - updateSettings: observer('hasDirtyAttributes', 'title', 'uri', - 'description', 'schemaType', 'remoteVersion', 'schemaType', - 'isGlobal', 'customSchemas.[]', + updateSettings: observer( + 'hasDirtyAttributes', + 'title', + 'uri', + 'description', + 'schemaType', + 'remoteVersion', + 'schemaType', + 'isGlobal', + 'customSchemas.[]', function () { - if(this.isNew || this.isEmpty || this.isDeleted) { + if (this.isNew || this.isEmpty || this.isDeleted) { return; } - if(this.hasDirtyAttributes) { + if (this.hasDirtyAttributes) { this.set('dateUpdated', new Date()); once(this, function () { this.save(); }); } - }) + }, + ), /* eslint-enable ember/no-observers */ }); -export { - regex, - checkVersion, - theComp as - default -}; +export { regex, checkVersion, theComp as default }; diff --git a/app/models/setting.js b/app/models/setting.js index b7b3553c4..f965a4579 100644 --- a/app/models/setting.js +++ b/app/models/setting.js @@ -2,14 +2,14 @@ import Model, { attr } from '@ember-data/model'; import { alias } from '@ember/object/computed'; import { run } from '@ember/runloop'; import { inject as service } from '@ember/service'; -import EmberObject, { observer } from "@ember/object"; +import EmberObject, { observer } from '@ember/object'; const defaultValues = { mdTranslatorAPI: 'https://api.sciencebase.gov/mdTranslator/api/v3/translator', itisProxyUrl: 'https://api.sciencebase.gov/mdTranslator', // mdTranslatorAPI: 'https://dev-mdtranslator.mdeditor.org/api/v3/translator', // itisProxyUrl: 'https://dev-mdtranslator.mdeditor.org', - fiscalStartMonth: '10' + fiscalStartMonth: '10', }; const theModel = Model.extend({ @@ -35,81 +35,75 @@ const theModel = Model.extend({ }, //cleaner: inject.service(), compressOnSave: attr('boolean', { - defaultValue: true + defaultValue: true, }), showSplash: attr('boolean', { - defaultValue: true + defaultValue: true, }), keepSettings: attr('boolean', { - defaultValue: true + defaultValue: true, }), autoSave: attr('boolean', { - defaultValue: false + defaultValue: false, }), showDelete: attr('boolean', { - defaultValue: false + defaultValue: false, }), showCopy: attr('boolean', { - defaultValue: false + defaultValue: false, }), lastVersion: attr('string', { - defaultValue: '' + defaultValue: '', }), dateUpdated: attr('date', { defaultValue() { return new Date(); - } + }, }), characterSet: attr('string', { - defaultValue: 'UTF-8' + defaultValue: 'UTF-8', }), country: attr('string', { - defaultValue: 'USA' + defaultValue: 'USA', }), language: attr('string', { - defaultValue: 'eng' + defaultValue: 'eng', }), importUriBase: attr('string', { - defaultValue: '' + defaultValue: '', }), mdTranslatorAPI: attr('string', { - defaultValue: defaultValues.mdTranslatorAPI + defaultValue: defaultValues.mdTranslatorAPI, }), itisProxyUrl: attr('string', { - defaultValue: defaultValues.itisProxyUrl + defaultValue: defaultValues.itisProxyUrl, }), fiscalStartMonth: attr('string', { - defaultValue: defaultValues.fiscalStartMonth + defaultValue: defaultValues.fiscalStartMonth, }), repositoryDefaults: attr('json'), publishOptions: attr('json', { defaultValue: function () { return EmberObject.create(); - } + }, }), customSchemas: attr('json', { defaultValue: function () { return []; - } + }, }), locale: alias('defaultLocale'), wasLoaded() { - this.settings - .setup(); + this.settings.setup(); }, - updateSettings: observer('hasDirtyAttributes', - function () { - if(this.hasDirtyAttributes) { - run.once(this, function () { - this.save(); - }); - } - }) + updateSettings: observer('hasDirtyAttributes', function () { + if (this.hasDirtyAttributes) { + run.once(this, function () { + this.save(); + }); + } + }), }); -export { - defaultValues, - theModel as - default -}; +export { defaultValues, theModel as default }; diff --git a/app/pods/components/control/md-alert-table/component.js b/app/pods/components/control/md-alert-table/component.js index ad8c0ff27..e038c3eba 100644 --- a/app/pods/components/control/md-alert-table/component.js +++ b/app/pods/components/control/md-alert-table/component.js @@ -20,6 +20,6 @@ export default Component.extend({ actions: { addItem(target) { this.addItem(target); - } - } + }, + }, }); diff --git a/app/pods/components/control/md-button-confirm/component.js b/app/pods/components/control/md-button-confirm/component.js index 94e0eadfe..451f3dc46 100644 --- a/app/pods/components/control/md-button-confirm/component.js +++ b/app/pods/components/control/md-button-confirm/component.js @@ -24,7 +24,7 @@ export default Component.extend({ * @type {String} * @default "left" */ - tipSide: 'left', + tipSide: 'left', /** * Class to add to tooltip @@ -33,7 +33,7 @@ export default Component.extend({ * @type {String} * @default "" */ - tipClass: '', + tipClass: '', /** * The function to call when action is confirmed. @@ -45,11 +45,11 @@ export default Component.extend({ //click handler, sets button state click(evt) { - if(!this.propagateClick) { + if (!this.propagateClick) { evt.stopPropagation(); } - if(this.isShowingConfirm) { + if (this.isShowingConfirm) { this.onConfirm(); this.set('isShowingConfirm', false); } else { @@ -59,5 +59,5 @@ export default Component.extend({ blur() { this.set('isShowingConfirm', false); - } + }, }); diff --git a/app/pods/components/control/md-button-modal/component.js b/app/pods/components/control/md-button-modal/component.js index 57460a210..aca47fafa 100644 --- a/app/pods/components/control/md-button-modal/component.js +++ b/app/pods/components/control/md-button-modal/component.js @@ -69,6 +69,6 @@ export default Component.extend({ confirm() { this.onConfirm(); this.toggleProperty('isShowingModal'); - } - } + }, + }, }); diff --git a/app/pods/components/control/md-button/component.js b/app/pods/components/control/md-button/component.js index 817722b38..a7e903b65 100644 --- a/app/pods/components/control/md-button/component.js +++ b/app/pods/components/control/md-button/component.js @@ -63,16 +63,16 @@ export default Component.extend({ tipClass: '', /** - * Render with wrapped text. Defaults to true if text.length is > 12 or - * contains spaces. - * - * @property responsive - * @type {Boolean} - * @default "false" - * @category computed - * @requires text - */ - responsive: computed('text', function() { + * Render with wrapped text. Defaults to true if text.length is > 12 or + * contains spaces. + * + * @property responsive + * @type {Boolean} + * @default "false" + * @category computed + * @requires text + */ + responsive: computed('text', function () { return this.text.length > 12 || this.text.indexOf(' ') > 0; }), }); diff --git a/app/pods/components/control/md-contact-link/component.js b/app/pods/components/control/md-contact-link/component.js index 726e4989a..9e9168b95 100644 --- a/app/pods/components/control/md-contact-link/component.js +++ b/app/pods/components/control/md-contact-link/component.js @@ -19,8 +19,7 @@ export default LinkComponent.extend({ let params = this.params; let add = block.concat(['contact.show', this.get('contact.id')]); - - set(this, 'params', params? add.concat(params) : add); + set(this, 'params', params ? add.concat(params) : add); this._super(...arguments); }, @@ -61,9 +60,8 @@ export default LinkComponent.extend({ * @requires contactId */ contact: computed('contactId', function () { - return this.store - .peekAll('contact') - .findBy('json.contactId', this.contactId); - }) - .readOnly() + return this.store + .peekAll('contact') + .findBy('json.contactId', this.contactId); + }).readOnly(), }); diff --git a/app/pods/components/control/md-contact-title/component.js b/app/pods/components/control/md-contact-title/component.js index 4a52a1291..8942e0b84 100644 --- a/app/pods/components/control/md-contact-title/component.js +++ b/app/pods/components/control/md-contact-title/component.js @@ -34,9 +34,8 @@ export default Component.extend({ * @requires contactId */ contact: computed('contactId', function () { - return this.store - .peekAll('contact') - .findBy('json.contactId', this.contactId); - }) - .readOnly() + return this.store + .peekAll('contact') + .findBy('json.contactId', this.contactId); + }).readOnly(), }); diff --git a/app/pods/components/control/md-crud-buttons/component.js b/app/pods/components/control/md-crud-buttons/component.js index 62c9fd2bb..d24642061 100644 --- a/app/pods/components/control/md-crud-buttons/component.js +++ b/app/pods/components/control/md-crud-buttons/component.js @@ -27,11 +27,15 @@ export default Component.extend({ */ showDelete: computed('settings.showDelete', 'allowDelete', function () { - return isEmpty(this.allowDelete) ? this.settings.data.showDelete : this.allowDelete; + return isEmpty(this.allowDelete) + ? this.settings.data.showDelete + : this.allowDelete; }), showCopy: computed('settings.showDelete', 'allowCopy', function () { - return isEmpty(this.allowCopy) ? this.settings.data.showCopy : this.allowCopy; + return isEmpty(this.allowCopy) + ? this.settings.data.showCopy + : this.allowCopy; }), actions: { @@ -49,7 +53,6 @@ export default Component.extend({ copy: function () { this.doCopy(); - - } - } + }, + }, }); diff --git a/app/pods/components/control/md-definition/component.js b/app/pods/components/control/md-definition/component.js index 07a7b020c..08cf88d86 100644 --- a/app/pods/components/control/md-definition/component.js +++ b/app/pods/components/control/md-definition/component.js @@ -41,5 +41,5 @@ export default Component.extend({ * @type {String} * @default 'Not Defined' */ - empty: 'Not Defined' + empty: 'Not Defined', }); diff --git a/app/pods/components/control/md-edit-table/component.js b/app/pods/components/control/md-edit-table/component.js index bc27e507d..c9c415481 100644 --- a/app/pods/components/control/md-edit-table/component.js +++ b/app/pods/components/control/md-edit-table/component.js @@ -1,8 +1,6 @@ import Component from 'mdeditor/pods/components/control/md-record-table/component'; //import Component from '@ember/component'; -import { - computed -} from '@ember/object'; +import { computed } from '@ember/object'; export default Component.extend({ /** @@ -32,18 +30,18 @@ export default Component.extend({ spotlightRow: true, /** - * Array of button configs to add to action column - * - * @property actionButtons - * @type {[Object]} - */ + * Array of button configs to add to action column + * + * @property actionButtons + * @type {[Object]} + */ /** - * Array of badge configs to add to action column - * - * @property actionBadges - * @type {[Object]} - */ + * Array of badge configs to add to action column + * + * @property actionBadges + * @type {[Object]} + */ /** * Column configs for the action column. @@ -55,24 +53,27 @@ export default Component.extend({ * @required */ actionsColumn: computed('actionButtons', function () { - let btns = [{ - title: 'Edit', - type: 'success', - icon: 'pencil', - // action: this.actions.editRow, - action: "editRow", - target: this - }, { - title: 'Delete', - type: 'danger', - icon: 'times', - confirm: true, - //action: this.actions.deleteRow, - action: "deleteRow", - target: this - }] + let btns = [ + { + title: 'Edit', + type: 'success', + icon: 'pencil', + // action: this.actions.editRow, + action: 'editRow', + target: this, + }, + { + title: 'Delete', + type: 'danger', + icon: 'times', + confirm: true, + //action: this.actions.deleteRow, + action: 'deleteRow', + target: this, + }, + ]; - if(this.actionButtons) { + if (this.actionButtons) { btns.push(this.actionButtons); } @@ -84,22 +85,22 @@ export default Component.extend({ disableSorting: true, mayBeHidden: false, buttons: btns, - badges: this.actionBadges + badges: this.actionBadges, }; }), - editRow(index, record){ - this.send('expandRow',index, record); + editRow(index, record) { + this.send('expandRow', index, record); }, -actions: { - // body - editRow(col, index, record, evt){ - evt.stopPropagation(); - this.editRow(index, record); + actions: { + // body + editRow(col, index, record, evt) { + evt.stopPropagation(); + this.editRow(index, record); + }, + deleteRow(col, index, record) { + record.destroyRecord(); + }, }, - deleteRow(col, index, record){ - record.destroyRecord(); - } -} }); diff --git a/app/pods/components/control/md-errors/component.js b/app/pods/components/control/md-errors/component.js index ae44a4591..e373b2489 100644 --- a/app/pods/components/control/md-errors/component.js +++ b/app/pods/components/control/md-errors/component.js @@ -4,12 +4,12 @@ export default Component.extend({ classNames: ['md-error-list'], /** - * Error objects to render grouped by validation schema or profile. The group - * object must have a `title` and `errors` property. Error objects iwthin the - * group must have a `message` property. `dataPath` is optional. - * - * @property errors - * @type {Array} - * @required - */ + * Error objects to render grouped by validation schema or profile. The group + * object must have a `title` and `errors` property. Error objects iwthin the + * group must have a `message` property. `dataPath` is optional. + * + * @property errors + * @type {Array} + * @required + */ }); diff --git a/app/pods/components/control/md-fiscalyear/component.js b/app/pods/components/control/md-fiscalyear/component.js index 110d5516f..637e0c6d6 100644 --- a/app/pods/components/control/md-fiscalyear/component.js +++ b/app/pods/components/control/md-fiscalyear/component.js @@ -2,9 +2,7 @@ import { computed } from '@ember/object'; import Select from 'mdeditor/pods/components/input/md-select/component'; import layout from 'mdeditor/pods/components/input/md-select/template'; import moment from 'moment'; -import { - inject as service -} from '@ember/service'; +import { inject as service } from '@ember/service'; export default Select.extend({ layout, @@ -13,7 +11,7 @@ export default Select.extend({ objectArray: computed(function () { return Array.apply(0, Array(12)).map(function (element, index) { return { - year: index + (moment().year() - 10) + year: index + (moment().year() - 10), }; }); }), @@ -24,14 +22,16 @@ export default Select.extend({ searchEnabled: true, placeholder: 'Pick a Fiscal Year', create: true, - disabled: computed('settings.data.fiscalStartMonth', function() { + disabled: computed('settings.data.fiscalStartMonth', function () { return !this.get('settings.data.fiscalStartMonth'); }), change() { let val = this.value; - let month = parseInt(this.get( - 'settings.data.fiscalStartMonth'), 10) - 1; - let dt = month <= 6 ? moment(val, 'YYYY') : moment(val, 'YYYY').subtract(1, 'year'); + let month = parseInt(this.get('settings.data.fiscalStartMonth'), 10) - 1; + let dt = + month <= 6 + ? moment(val, 'YYYY') + : moment(val, 'YYYY').subtract(1, 'year'); let start = dt.month(month).startOf('month'); //let end = moment(val, 'YYYY').month('September').endOf('month'); let end = start.clone().add(11, 'months').endOf('month'); @@ -39,19 +39,15 @@ export default Select.extend({ this.setProperties({ end: end, - start: start + start: start, }); - if(context) { + if (context) { //have to set values using datetimepicker - context.$('.start .date') - .data("DateTimePicker") - .date(start); - context.$('.end .date') - .data("DateTimePicker") - .date(end); + context.$('.start .date').data('DateTimePicker').date(start); + context.$('.end .date').data('DateTimePicker').date(end); } this.set('value', null); - } + }, }); diff --git a/app/pods/components/control/md-import-csv/component.js b/app/pods/components/control/md-import-csv/component.js index 232a91018..f186a1403 100644 --- a/app/pods/components/control/md-import-csv/component.js +++ b/app/pods/components/control/md-import-csv/component.js @@ -1,22 +1,11 @@ import Component from '@ember/component'; -import { - inject as service -} from '@ember/service'; -import { - next -} from '@ember/runloop'; -import { - htmlSafe -} from '@ember/string'; +import { inject as service } from '@ember/service'; +import { next } from '@ember/runloop'; +import { htmlSafe } from '@ember/string'; import Papa from 'papaparse'; -import { - set, - computed -} from '@ember/object'; - -import { - Promise -} from 'rsvp'; +import { set, computed } from '@ember/object'; + +import { Promise } from 'rsvp'; import jquery from 'jquery'; export default Component.extend({ @@ -106,67 +95,64 @@ export default Component.extend({ this.set('isProcessing', false); }, readData(file) { - Papa.SCRIPT_PATH = this.get('router.rootURL') + - 'assets/workers/worker_papaparse.js'; + Papa.SCRIPT_PATH = + this.get('router.rootURL') + 'assets/workers/worker_papaparse.js'; let comp = this; set(comp, 'isProcessing', true); set(comp, 'progress', 0); next(this, function () { - new Promise((resolve, reject) => { - try { - let processed = 1; - let chunkSize = 1000000; - - Papa.parse(file.data, { - header: true, - worker: true, - dynamicTyping: true, - skipEmptyLines: true, - chunkSize: chunkSize, - complete: () => { - resolve(); - }, - chunk: (results, parser) => { - if(processed === 1) { - this.beforeFirstChunk(results); - } - - this.set('progress', Math.trunc((( - chunkSize * processed) / file - .size) * 100)); - - this.set('parser', parser); - - this.processChunk(results.data); - - processed++; + try { + let processed = 1; + let chunkSize = 1000000; + + Papa.parse(file.data, { + header: true, + worker: true, + dynamicTyping: true, + skipEmptyLines: true, + chunkSize: chunkSize, + complete: () => { + resolve(); + }, + chunk: (results, parser) => { + if (processed === 1) { + this.beforeFirstChunk(results); } - }); - } catch(e) { - reject( - `Failed to parse file: ${file.name}. Is it a valid CSV?\n${e}` - ); - } - }) + + this.set( + 'progress', + Math.trunc(((chunkSize * processed) / file.size) * 100), + ); + + this.set('parser', parser); + + this.processChunk(results.data); + + processed++; + }, + }); + } catch (e) { + reject( + `Failed to parse file: ${file.name}. Is it a valid CSV?\n${e}`, + ); + } + }) .then(() => { //fire callback this.processComplete(); - }) .catch((reason) => { //catch any errors - this.flashMessages - .danger(reason); + this.flashMessages.danger(reason); return false; }) .finally(() => { //set(comp, 'isProcessing', false); - jquery('.md-import-picker input:file') - .val(''); + jquery('.md-import-picker input:file').val(''); }); }); }, @@ -176,62 +162,57 @@ export default Component.extend({ set(comp, 'isLoading', true); - this.ajax.request(this.importUri, { + this.ajax + .request(this.importUri, { type: 'GET', context: this, dataType: 'text', - crossDomain: true + crossDomain: true, }) - .then(function (response, textStatus) { - - if(response && textStatus === 'success') { - let json; + .then( + function (response, textStatus) { + if (response && textStatus === 'success') { + let json; - new Promise((resolve, reject) => { + new Promise((resolve, reject) => { try { json = JSON.parse(response); - } catch(e) { - reject( - `Failed to parse data. Is it valid JSON?`); + } catch (e) { + reject(`Failed to parse data. Is it valid JSON?`); } resolve({ json: json, file: null, - route: this + route: this, }); }) - .then((data) => { - //determine file type and map - this.mapJSON(data); - - }) - .catch((reason) => { - //catch any errors - this.flashMessages - .danger(reason); - return false; - }) - .finally(() => { - set(comp, 'isLoading', false); - jquery('.import-file-picker input:file') - .val(''); - }); - } else { - set(comp, 'errors', response.messages); - this.flashMessages - .danger('Import error!'); - } - }, (response) => { - let error = - ` Error retrieving the mdJSON: ${response.status}: ${response.statusText}`; - - set(comp, 'xhrError', error); - set(comp, 'isLoading', false); - this.flashMessages - .danger(error); - }); - - } - } + .then((data) => { + //determine file type and map + this.mapJSON(data); + }) + .catch((reason) => { + //catch any errors + this.flashMessages.danger(reason); + return false; + }) + .finally(() => { + set(comp, 'isLoading', false); + jquery('.import-file-picker input:file').val(''); + }); + } else { + set(comp, 'errors', response.messages); + this.flashMessages.danger('Import error!'); + } + }, + (response) => { + let error = ` Error retrieving the mdJSON: ${response.status}: ${response.statusText}`; + + set(comp, 'xhrError', error); + set(comp, 'isLoading', false); + this.flashMessages.danger(error); + }, + ); + }, + }, }); diff --git a/app/pods/components/control/md-indicator/component.js b/app/pods/components/control/md-indicator/component.js index 56043a1f5..d71303f11 100644 --- a/app/pods/components/control/md-indicator/component.js +++ b/app/pods/components/control/md-indicator/component.js @@ -33,19 +33,20 @@ export default Component.extend({ this._super(...arguments); - if(options) { + if (options) { Object.assign(this, options); //this.classNames.concat(options.classNames); } this.popoverHideDelay = this.popoverHideDelay || 500; - this.popperContainer = this.popperContainer || "body"; + this.popperContainer = this.popperContainer || 'body'; this.icon = this.icon || 'sticky-note'; this.event = this.event || 'hover'; this.title = this.title || 'Note'; this.type = this.type || 'default'; - this.classNames = ['md-indicator', `md-${this.type}`].concat(this - .classNames); + this.classNames = ['md-indicator', `md-${this.type}`].concat( + this.classNames, + ); }, /** @@ -158,5 +159,5 @@ export default Component.extend({ return acc; }, {}); - }) + }), }); diff --git a/app/pods/components/control/md-indicator/related/component.js b/app/pods/components/control/md-indicator/related/component.js index 7e804c129..ffd0cb956 100644 --- a/app/pods/components/control/md-indicator/related/component.js +++ b/app/pods/components/control/md-indicator/related/component.js @@ -43,8 +43,8 @@ export default Indicator.extend({ this.linkText = this.linkText || 'Open Related'; this.classNames = ['md-indicator-related', `md-${this.type}`].concat( - this - .classNames); + this.classNames, + ); }, isVisible: bool('related'), @@ -122,8 +122,10 @@ export default Indicator.extend({ * @requires path,parent */ related: computed('path', 'parent', function () { - return get(this.parent, this.path).findBy(this.relatedId, get(this - .model, this.relatedIdLocal || this.relatedId)); + return get(this.parent, this.path).findBy( + this.relatedId, + get(this.model, this.relatedIdLocal || this.relatedId), + ); }), /** @@ -148,5 +150,5 @@ export default Indicator.extend({ */ models: map('routeIdPaths', function (p) { return this.get(p); - }) + }), }); diff --git a/app/pods/components/control/md-infotip/component.js b/app/pods/components/control/md-infotip/component.js index 480938ae4..ca37ba891 100644 --- a/app/pods/components/control/md-infotip/component.js +++ b/app/pods/components/control/md-infotip/component.js @@ -2,41 +2,40 @@ import Component from '@ember/component'; export default Component.extend({ /** - * Tooltip displayed as icon with font styled as superscript. - * - * @class md-infotip - * @module mdeditor - * @submodule components-control - * @constructor - */ + * Tooltip displayed as icon with font styled as superscript. + * + * @class md-infotip + * @module mdeditor + * @submodule components-control + * @constructor + */ tagName: 'sup', classNames: ['md-infotip'], /** - * Tooltip text - * - * @property text - * @type {String} - * @required - */ + * Tooltip text + * + * @property text + * @type {String} + * @required + */ /** - * Tooltip text - * - * @property tip - * @type {String} - * @default 'info-circle' - */ + * Tooltip text + * + * @property tip + * @type {String} + * @default 'info-circle' + */ icon: 'info-circle', /** - * Tooltip delay - * - * @property tip - * @type {Number} - * @default 350 - */ + * Tooltip delay + * + * @property tip + * @type {Number} + * @default 350 + */ delay: 350, - }); diff --git a/app/pods/components/control/md-itis/component.js b/app/pods/components/control/md-itis/component.js index d6271bf2b..c71f38186 100644 --- a/app/pods/components/control/md-itis/component.js +++ b/app/pods/components/control/md-itis/component.js @@ -1,25 +1,12 @@ import Component from '@ember/component'; -import { - inject as service -} from '@ember/service'; +import { inject as service } from '@ember/service'; import { computed, set, get } from '@ember/object'; -import { - or -} from '@ember/object/computed'; -import { - isArray, - A -} from '@ember/array'; -import { - later -} from '@ember/runloop'; -import { - assert -} from '@ember/debug'; +import { or } from '@ember/object/computed'; +import { isArray, A } from '@ember/array'; +import { later } from '@ember/runloop'; +import { assert } from '@ember/debug'; import moment from 'moment'; -import { - formatCitation -} from '../../object/md-citation/component'; +import { formatCitation } from '../../object/md-citation/component'; export default Component.extend({ init() { @@ -56,19 +43,20 @@ export default Component.extend({ this.set('isLoading', true); this.set('searchResult', null); - itis.sendQuery(this.searchString, this.kingdom, this.limit).then(response => { - - if(!response) { - return; - } + itis + .sendQuery(this.searchString, this.kingdom, this.limit) + .then((response) => { + if (!response) { + return; + } - let docs = response.response.docs; - let data = docs.map(doc => itis.parseDoc(doc)); + let docs = response.response.docs; + let data = docs.map((doc) => itis.parseDoc(doc)); - this.set('searchResult', data); - this.set('total', response.response.numFound); - this.set('isLoading', false); - }); + this.set('searchResult', data); + this.set('total', response.response.numFound); + this.set('isLoading', false); + }); }, actions: { search() { @@ -77,56 +65,82 @@ export default Component.extend({ selectItem(item) { item.set('animate', true); item.set('selected', true); - later(this, function () { - this.searchResult.removeObject(item); - this.selected.pushObject(item); - }, 250); + later( + this, + function () { + this.searchResult.removeObject(item); + this.selected.pushObject(item); + }, + 250, + ); }, deselectItem(item) { item.set('selected', false); - later(this, function () { - this.selected.removeObject(item); - this.searchResult.pushObject(item); - }, 250); + later( + this, + function () { + this.selected.removeObject(item); + this.searchResult.pushObject(item); + }, + 250, + ); }, importTaxa(taxa) { let taxonomy = this.taxonomy; let itisCitation = this.get('itis.citation'); - let classification = set(taxonomy, 'taxonomicClassification', get(taxonomy, 'taxonomicClassification') !== undefined ? get(taxonomy, 'taxonomicClassification') : []); - let systems= set(taxonomy, 'taxonomicSystem', get(taxonomy, 'taxonomicSystem') !== undefined ? get(taxonomy, 'taxonomicSystem') : [{citation:{}}]); - let system = systems.findBy('citation.title', get(itisCitation,'title')); - - let allTaxa = taxa.reduce((acc, itm) => acc.pushObjects(itm.taxonomy), []); + let classification = set( + taxonomy, + 'taxonomicClassification', + get(taxonomy, 'taxonomicClassification') !== undefined + ? get(taxonomy, 'taxonomicClassification') + : [], + ); + let systems = set( + taxonomy, + 'taxonomicSystem', + get(taxonomy, 'taxonomicSystem') !== undefined + ? get(taxonomy, 'taxonomicSystem') + : [{ citation: {} }], + ); + let system = systems.findBy('citation.title', get(itisCitation, 'title')); + + let allTaxa = taxa.reduce( + (acc, itm) => acc.pushObjects(itm.taxonomy), + [], + ); let today = moment().format('YYYY-MM-DD'); let dateObj = { date: today, dateType: 'transmitted', - description: 'Taxa imported from ITIS' + description: 'Taxa imported from ITIS', }; - allTaxa.forEach(itm => this.itis.mergeTaxa(itm, classification)); + allTaxa.forEach((itm) => this.itis.mergeTaxa(itm, classification)); - if(!system) { + if (!system) { itisCitation.get('date').pushObject(dateObj); systems.pushObject({ - citation: itisCitation + citation: itisCitation, }); } else { - let citation = set(system, 'citation', get(system, 'citation') !== undefined ? get(system, 'citation') : {}); + let citation = set( + system, + 'citation', + get(system, 'citation') !== undefined ? get(system, 'citation') : {}, + ); formatCitation(citation); let date = A(get(citation, 'date')); - if(!date.findBy('date', today)) { + if (!date.findBy('date', today)) { date.pushObject(dateObj); } } - this.flashMessages - .success( - `Successfully imported ${ allTaxa.length } taxa from ITIS.` - ); - } - } + this.flashMessages.success( + `Successfully imported ${allTaxa.length} taxa from ITIS.`, + ); + }, + }, }); diff --git a/app/pods/components/control/md-json-button/component.js b/app/pods/components/control/md-json-button/component.js index 29e8ddcea..258f30690 100644 --- a/app/pods/components/control/md-json-button/component.js +++ b/app/pods/components/control/md-json-button/component.js @@ -1,10 +1,6 @@ import Component from '@ember/component'; -import { - inject -} from '@ember/service'; -import { - computed -} from '@ember/object'; +import { inject } from '@ember/service'; +import { computed } from '@ember/object'; export default Component.extend({ slider: inject(), @@ -24,7 +20,7 @@ export default Component.extend({ click(evt) { //this.set('preview', true); - if(!this.propagateClick) { + if (!this.propagateClick) { evt.stopPropagation(); } this.showSlider(); @@ -51,6 +47,6 @@ export default Component.extend({ }, showSlider() { this.showSlider(); - } - } + }, + }, }); diff --git a/app/pods/components/control/md-json-viewer/component.js b/app/pods/components/control/md-json-viewer/component.js index c75cfd0a3..ee4f703ed 100644 --- a/app/pods/components/control/md-json-viewer/component.js +++ b/app/pods/components/control/md-json-viewer/component.js @@ -47,7 +47,7 @@ export default Component.extend({ let newFontSize = currentFontSizeNum * factor; el.animate({ - 'font-size': `${newFontSize}px` + 'font-size': `${newFontSize}px`, }); }, @@ -55,18 +55,15 @@ export default Component.extend({ let json = this.json; let out = typeOf(json) === 'string' ? json : JSON.stringify(json); - $('.md-viewer-body') - .JSONView(out); + $('.md-viewer-body').JSONView(out); }, actions: { collapse() { - this.$('.md-viewer-body') - .JSONView('collapse'); + this.$('.md-viewer-body').JSONView('collapse'); }, expand() { - this.$('.md-viewer-body') - .JSONView('expand'); + this.$('.md-viewer-body').JSONView('expand'); }, zoomin() { let body = this.$('.md-viewer-body'); @@ -78,6 +75,6 @@ export default Component.extend({ }, closeModal() { this.close(); - } - } + }, + }, }); diff --git a/app/pods/components/control/md-modal/component.js b/app/pods/components/control/md-modal/component.js index e501641bf..085d54391 100644 --- a/app/pods/components/control/md-modal/component.js +++ b/app/pods/components/control/md-modal/component.js @@ -91,7 +91,7 @@ export default Component.extend({ * @method cancel */ cancel() { - console.log('cancel') + console.log('cancel'); this.closeModal(); }, @@ -121,6 +121,6 @@ export default Component.extend({ */ cancel() { this.cancel(); - } - } + }, + }, }); diff --git a/app/pods/components/control/md-record-table/buttons/component.js b/app/pods/components/control/md-record-table/buttons/component.js index 94cc4bff6..d1d5d4b86 100644 --- a/app/pods/components/control/md-record-table/buttons/component.js +++ b/app/pods/components/control/md-record-table/buttons/component.js @@ -7,7 +7,7 @@ export default Component.extend({ actions: { deleteItem(item, index, isSelected, clickOnRow) { - if(isSelected) { + if (isSelected) { clickOnRow(index, item); } @@ -23,12 +23,12 @@ export default Component.extend({ showSlider(rec, evt) { this.column.showSlider(rec, evt); - } + }, }, _deleteItem(item) { item.destroyRecord().then(() => { item.unloadRecord(); }); - } + }, }); diff --git a/app/pods/components/control/md-record-table/buttons/custom/component.js b/app/pods/components/control/md-record-table/buttons/custom/component.js index 179a3ea55..b5e0a9fee 100644 --- a/app/pods/components/control/md-record-table/buttons/custom/component.js +++ b/app/pods/components/control/md-record-table/buttons/custom/component.js @@ -8,25 +8,25 @@ export default Component.extend({ * @type {String} */ - /** - * Text to display in the button. - * - * @property column.buttonConfig.title - * @type {String} - */ + /** + * Text to display in the button. + * + * @property column.buttonConfig.title + * @type {String} + */ - /** - * The record passed to the component. - * - * @property record - * @type {Object} - */ + /** + * The record passed to the component. + * + * @property record + * @type {Object} + */ - /** - * Action to run on button click - * - * @property column.buttonConfig.action - * @param {Object} record The row record - */ - action() {} + /** + * Action to run on button click + * + * @property column.buttonConfig.action + * @param {Object} record The row record + */ + action() {}, }); diff --git a/app/pods/components/control/md-record-table/buttons/filter/component.js b/app/pods/components/control/md-record-table/buttons/filter/component.js index ab5f5d315..660a67943 100644 --- a/app/pods/components/control/md-record-table/buttons/filter/component.js +++ b/app/pods/components/control/md-record-table/buttons/filter/component.js @@ -5,29 +5,27 @@ import { once } from '@ember/runloop'; export default Component.extend({ flashMessages: service(), - showButton: computed('selectedItems.[]', function() { + showButton: computed('selectedItems.[]', function () { return this.get('selectedItems.length') > 1; }), deleteSelected(records) { - records.forEach(rec => { - rec.destroyRecord() - .then((rec) => { - rec.unloadRecord(); - once(() => { - records.removeObject(rec); - this.flashMessages - .danger( - `Deleted ${rec.constructor.modelName} "${rec.get('title')}".` - ); - }); + records.forEach((rec) => { + rec.destroyRecord().then((rec) => { + rec.unloadRecord(); + once(() => { + records.removeObject(rec); + this.flashMessages.danger( + `Deleted ${rec.constructor.modelName} "${rec.get('title')}".`, + ); }); + }); }); }, actions: { deleteSelected(records) { this.deleteSelected(records); - } - } + }, + }, }); diff --git a/app/pods/components/control/md-record-table/buttons/show/component.js b/app/pods/components/control/md-record-table/buttons/show/component.js index bf9ad6125..479865264 100644 --- a/app/pods/components/control/md-record-table/buttons/show/component.js +++ b/app/pods/components/control/md-record-table/buttons/show/component.js @@ -1,5 +1,5 @@ import Component from '@ember/component'; export default Component.extend({ - tagName:'' + tagName: '', }); diff --git a/app/pods/components/control/md-record-table/component.js b/app/pods/components/control/md-record-table/component.js index 905b1d023..2886a402f 100644 --- a/app/pods/components/control/md-record-table/component.js +++ b/app/pods/components/control/md-record-table/component.js @@ -1,8 +1,6 @@ import { computed, get, defineProperty } from '@ember/object'; import Table from 'mdeditor/pods/components/md-models-table/component'; -import { - warn -} from '@ember/debug'; +import { warn } from '@ember/debug'; import { isArray, A } from '@ember/array'; export default Table.extend({ @@ -27,27 +25,29 @@ export default Table.extend({ * @extends models-table */ init() { - this.dataColumns = this.dataColumns || []; this.filteringIgnoreCase = this.filteringIgnoreCase || true; this.multipleSelect = this.multipleSelect || true; - defineProperty(this, 'columns', computed('dataColumns', 'checkColumn', - function () { + defineProperty( + this, + 'columns', + computed('dataColumns', 'checkColumn', function () { let chk = this.checkColumn; let action = this.actionsColumn; let cols = A().concat(this.dataColumns); - if(chk) { + if (chk) { cols = [chk].concat(cols); } - if(action) { + if (action) { cols.push(action); } return cols; - })); + }), + ); this._super(...arguments); }, @@ -105,13 +105,12 @@ export default Table.extend({ * @required */ checkColumn: computed(function () { - return { component: 'components/md-models-table/components/check', disableFiltering: true, mayBeHidden: false, componentForSortCell: 'components/md-models-table/components/check-all', - className: 'text-center' + className: 'text-center', }; }), @@ -130,13 +129,14 @@ export default Table.extend({ return { title: 'Actions', className: 'md-actions-column', - component: all ? - 'control/md-record-table/buttons' : - 'control/md-record-table/buttons/show', + component: all + ? 'control/md-record-table/buttons' + : 'control/md-record-table/buttons/show', disableFiltering: !all, - componentForFilterCell: all ? - 'control/md-record-table/buttons/filter' : null, - showSlider: this.showSlider + componentForFilterCell: all + ? 'control/md-record-table/buttons/filter' + : null, + showSlider: this.showSlider, }; }), @@ -144,19 +144,16 @@ export default Table.extend({ get() { let prop = this.selectProperty; - return this.data - .filterBy(prop) - .toArray(); - + return this.data.filterBy(prop).toArray(); }, set(k, v) { - if(!isArray(v)) { + if (!isArray(v)) { warn('`selectedItems` must be an array.', false, { - id: '#emt-selectedItems-array' + id: '#emt-selectedItems-array', }); } return A(v); - } + }, }), /** @@ -187,14 +184,12 @@ export default Table.extend({ //this._super(...arguments); let selectedItems = this.selectedItems; let data = this.data; - const allSelectedBefore = get(selectedItems, 'length') === get(data, - 'length'); - this.selectedItems - .clear(); - - if(!allSelectedBefore) { - this.selectedItems - .pushObjects(data.toArray()); + const allSelectedBefore = + get(selectedItems, 'length') === get(data, 'length'); + this.selectedItems.clear(); + + if (!allSelectedBefore) { + this.selectedItems.pushObjects(data.toArray()); } this.userInteractionObserver(); @@ -202,12 +197,12 @@ export default Table.extend({ let prop = this.selectProperty; //let data = get(this, 'data'); - if(get(selected, 'length')) { + if (get(selected, 'length')) { selected.setEach(prop, true); } else { data.setEach(prop, false); } this.select(null, null, selected); - } - } + }, + }, }); diff --git a/app/pods/components/control/md-repo-link/component.js b/app/pods/components/control/md-repo-link/component.js index 050bf9ee2..0f0bbae10 100644 --- a/app/pods/components/control/md-repo-link/component.js +++ b/app/pods/components/control/md-repo-link/component.js @@ -3,10 +3,7 @@ import Component from '@ember/component'; import config from 'mdeditor/config/environment'; const { - APP: { - repository, - version - } + APP: { repository, version }, } = config; export default Component.extend({ @@ -46,8 +43,7 @@ export default Component.extend({ * @return string */ hash: computed('version', function () { - let idx = this.version - .indexOf('+') + 1; + let idx = this.version.indexOf('+') + 1; return version.substring(idx); }), diff --git a/app/pods/components/control/md-scroll-into-view/component.js b/app/pods/components/control/md-scroll-into-view/component.js index e75806675..163db60f8 100644 --- a/app/pods/components/control/md-scroll-into-view/component.js +++ b/app/pods/components/control/md-scroll-into-view/component.js @@ -8,11 +8,12 @@ export default Component.extend({ this._super(...arguments); let el = document.getElementById(this.elementId); - let boundary = document.querySelector(`#${this.elementId}`).closest( - `.md-scroll-into-view:not(#${this.elementId})`); + let boundary = document + .querySelector(`#${this.elementId}`) + .closest(`.md-scroll-into-view:not(#${this.elementId})`); scrollIntoView(el, { - block: boundary ? 'center': 'nearest', + block: boundary ? 'center' : 'nearest', behavior: 'smooth', //boundary: boundary }); diff --git a/app/pods/components/control/md-scroll-spy/component.js b/app/pods/components/control/md-scroll-spy/component.js index 6b5467d9f..ef414ee8a 100644 --- a/app/pods/components/control/md-scroll-spy/component.js +++ b/app/pods/components/control/md-scroll-spy/component.js @@ -1,15 +1,8 @@ -import { - inject as service -} from '@ember/service'; -import { - set, - computed -} from '@ember/object'; +import { inject as service } from '@ember/service'; +import { set, computed } from '@ember/object'; import Component from '@ember/component'; import $ from 'jquery'; -import { - A -} from '@ember/array'; +import { A } from '@ember/array'; export default Component.extend({ /** @@ -60,10 +53,10 @@ export default Component.extend({ links: computed('refresh', 'profile.active', function () { let liquid = ''; - if($('.liquid-spy').length) { - liquid = $('.liquid-spy .liquid-child:first > .liquid-container').length ? - '.liquid-spy .liquid-child:first > .liquid-container:last ' : - '.liquid-spy '; + if ($('.liquid-spy').length) { + liquid = $('.liquid-spy .liquid-child:first > .liquid-container').length + ? '.liquid-spy .liquid-child:first > .liquid-container:last ' + : '.liquid-spy '; liquid += '.liquid-child:first '; } @@ -76,7 +69,7 @@ export default Component.extend({ links.pushObject({ id: $link.attr('id'), text: $link.attr('data-spy'), - embedded: $link.hasClass('md-embedded') + embedded: $link.hasClass('md-embedded'), }); }); @@ -97,7 +90,7 @@ export default Component.extend({ e.preventDefault(); this.scroll(targetId); - if((typeof setScrollTo === 'function')) { + if (typeof setScrollTo === 'function') { setScrollTo($target.text().dasherize()); } }, @@ -108,11 +101,10 @@ export default Component.extend({ * @method setupSpy */ setupSpy() { - $('body') - .scrollspy({ - target: '.md-scroll-spy', - offset: this.offset - }); + $('body').scrollspy({ + target: '.md-scroll-spy', + offset: this.offset, + }); }, /** @@ -125,24 +117,24 @@ export default Component.extend({ let data = $('body').data('bs.scrollspy'); - if(data) { + if (data) { set(data, 'options.offset', this.offset); } this.setupSpy(); let init = this.scrollInit; - if(!init || init === 'top') { + if (!init || init === 'top') { this.scroll(); } else { let link = this.links.find((link) => { return init === link.text.dasherize(); }); - if(link) { + if (link) { this.scroll('#' + link.id); } else { - if($('#' + init)) { + if ($('#' + init)) { this.scroll('#' + init); } else { this.scroll(); @@ -154,7 +146,7 @@ export default Component.extend({ didReceiveAttrs() { this._super(...arguments); - if(!this.setScrollTo) { + if (!this.setScrollTo) { this.scroll(); } }, @@ -169,13 +161,13 @@ export default Component.extend({ scroll(id, hilite) { let $anchor = $(id); - if($anchor.length === 0) { + if ($anchor.length === 0) { $('html, body').scrollTop(0 - this.offset); return; } $('html, body').scrollTop($anchor.offset().top - this.offset); - if(hilite) { + if (hilite) { $('[href="' + id + '"]') .closest('li') .addClass('active'); @@ -184,12 +176,11 @@ export default Component.extend({ $anchor.removeClass('md-flash'); void $anchor[0].offsetWidth; $anchor.addClass('md-flash'); - }, actions: { clickLink(e) { this.clickLink(e); - } - } + }, + }, }); diff --git a/app/pods/components/control/md-select-table/component.js b/app/pods/components/control/md-select-table/component.js index 448e36de5..6b0fa3777 100644 --- a/app/pods/components/control/md-select-table/component.js +++ b/app/pods/components/control/md-select-table/component.js @@ -73,6 +73,6 @@ export default Table.extend({ let sel = this.selectedItems; this.select(sel); - } - } + }, + }, }); diff --git a/app/pods/components/control/md-spinner/component.js b/app/pods/components/control/md-spinner/component.js index a1e7097cf..f6deb3bd5 100644 --- a/app/pods/components/control/md-spinner/component.js +++ b/app/pods/components/control/md-spinner/component.js @@ -1,22 +1,22 @@ import Component from '@ember/component'; export default Component.extend({ - classNames:['text-center', 'md-spinner'] + classNames: ['text-center', 'md-spinner'], /** - * The size of the FontAwesome icon. - * - * @property size - * @type {String} - * @default "false" - * @optional - */ + * The size of the FontAwesome icon. + * + * @property size + * @type {String} + * @default "false" + * @optional + */ /** - * The the text to show below the spinner. - * - * @property text - * @type {String} - * @optional - */ + * The the text to show below the spinner. + * + * @property text + * @type {String} + * @optional + */ }); diff --git a/app/pods/components/control/md-spotlight/component.js b/app/pods/components/control/md-spotlight/component.js index 032f1deb2..f8fae3385 100644 --- a/app/pods/components/control/md-spotlight/component.js +++ b/app/pods/components/control/md-spotlight/component.js @@ -70,6 +70,6 @@ export default ModalDialog.extend({ onClickOverlay() { this._super(...arguments); this.spotlight.close(); - } - } + }, + }, }); diff --git a/app/pods/components/control/md-status/component.js b/app/pods/components/control/md-status/component.js index deb703083..7427e28c7 100644 --- a/app/pods/components/control/md-status/component.js +++ b/app/pods/components/control/md-status/component.js @@ -6,7 +6,6 @@ export default Component.extend({ tagName: 'span', classNames: ['md-status'], - /** * Model to display status for. * @@ -35,11 +34,9 @@ export default Component.extend({ let model = this.model; evt.stopPropagation(); - model.save() - .then(() => { - this.flashMessages - .success(`Saved Record: ${model.get('title')}`); - }); - } - } + model.save().then(() => { + this.flashMessages.success(`Saved Record: ${model.get('title')}`); + }); + }, + }, }); diff --git a/app/pods/components/control/subbar-citation/component.js b/app/pods/components/control/subbar-citation/component.js index a953c14ec..4c5d4351b 100644 --- a/app/pods/components/control/subbar-citation/component.js +++ b/app/pods/components/control/subbar-citation/component.js @@ -1,7 +1,7 @@ import Component from '@ember/component'; export default Component.extend({ - selectResource(){ + selectResource() { return this; - } + }, }); diff --git a/app/pods/components/control/subbar-importcsv/component.js b/app/pods/components/control/subbar-importcsv/component.js index bb93d73f3..557064773 100644 --- a/app/pods/components/control/subbar-importcsv/component.js +++ b/app/pods/components/control/subbar-importcsv/component.js @@ -1,4 +1,3 @@ import Component from '@ember/component'; -export default Component.extend({ -}); +export default Component.extend({}); diff --git a/app/pods/components/control/subbar-link/component.js b/app/pods/components/control/subbar-link/component.js index 73badfd51..fb5ccc2b1 100644 --- a/app/pods/components/control/subbar-link/component.js +++ b/app/pods/components/control/subbar-link/component.js @@ -77,5 +77,5 @@ export default Component.extend({ clickTxt: or('clickText', 'text'), clickButtonType: or('clickType', 'btnType'), - clickButtonIcon: or('clickIcon', 'icon') + clickButtonIcon: or('clickIcon', 'icon'), }); diff --git a/app/pods/components/control/subbar-spatial/component.js b/app/pods/components/control/subbar-spatial/component.js index 5a2df919e..b6a6f3b9e 100644 --- a/app/pods/components/control/subbar-spatial/component.js +++ b/app/pods/components/control/subbar-spatial/component.js @@ -17,5 +17,5 @@ export default Component.extend({ toList() { this.toList(); }, - } + }, }); diff --git a/app/pods/components/ember-tooltip/component.js b/app/pods/components/ember-tooltip/component.js index 582611e40..c912f72b6 100644 --- a/app/pods/components/ember-tooltip/component.js +++ b/app/pods/components/ember-tooltip/component.js @@ -1,5 +1,5 @@ import Component from 'ember-tooltips/components/ember-tooltip'; export default Component.extend({ - popperContainer: 'body' + popperContainer: 'body', }); diff --git a/app/pods/components/input/md-boolean/component.js b/app/pods/components/input/md-boolean/component.js index b0c62a046..6f4a1dde0 100644 --- a/app/pods/components/input/md-boolean/component.js +++ b/app/pods/components/input/md-boolean/component.js @@ -3,75 +3,73 @@ * @submodule components-input */ - import Component from '@ember/component'; - import { and } from '@ember/object/computed'; +import Component from '@ember/component'; +import { and } from '@ember/object/computed'; - export default Component.extend({ +export default Component.extend({ + classNameBindings: ['label:form-group', 'required'], + attributeBindings: ['data-spy'], - classNameBindings: ['label:form-group', 'required'], - attributeBindings: ['data-spy'], + /** + * Input, edit, display a boolean value + * + * @class md-boolean + * @constructor + */ - /** - * Input, edit, display a boolean value - * - * @class md-boolean - * @constructor - */ + /** + * Value of the input. + * The edited value is returned + * + * @property value + * @type Boolean + * @default false + */ + value: false, - /** - * Value of the input. - * The edited value is returned - * - * @property value - * @type Boolean - * @default false - */ - value: false, + /** + * Text to display next to the checkbox + * + * @property text + * @type String + */ - /** - * Text to display next to the checkbox - * - * @property text - * @type String - */ + /** + * The form label to display + * + * @property label + * @type String + * @default null + */ + label: null, - /** - * The form label to display - * - * @property label - * @type String - * @default null - */ - label: null, + /** + * Text displayed in empty inputs + * + * @property showInfoText + * @type String + * @default null + */ + showInfoText: null, - /** - * Text displayed in empty inputs - * - * @property showInfoText - * @type String - * @default null - */ - showInfoText: null, + /** + * Whether to show the infotip + * + * @property infotip + * @type Boolean + * @default false + */ + infotip: false, - /** - * Whether to show the infotip - * - * @property infotip - * @type Boolean - * @default false - */ - infotip: false, - - /** - * Determines whether infotip is rendered - * - * @property showInfotip - * @type {Boolean} - * @default "false" - * @readOnly - * @category computed - * @requires showInfoText,infotip - */ - showInfotip: and('showInfoText', 'infotip') - - }); + /** + * Determines whether infotip is rendered + * + * @property showInfotip + * @type {Boolean} + * @default "false" + * @readOnly + * @category computed + * @requires showInfoText,infotip + */ + showInfotip: and('showInfoText', 'infotip'), +}); diff --git a/app/pods/components/input/md-codelist-multi/component.js b/app/pods/components/input/md-codelist-multi/component.js index 342813def..2b001ebbf 100644 --- a/app/pods/components/input/md-codelist-multi/component.js +++ b/app/pods/components/input/md-codelist-multi/component.js @@ -61,9 +61,10 @@ export default MdCodelist.extend({ * @type Ember.computed * @return String */ - theComponent: computed('create', function() { - return this.create ? 'power-select-multiple-with-create' : - 'power-select-multiple'; + theComponent: computed('create', function () { + return this.create + ? 'power-select-multiple-with-create' + : 'power-select-multiple'; }), /** @@ -91,7 +92,7 @@ export default MdCodelist.extend({ * @type Ember.computed * @return PromiseObject */ - selectedItem: computed('value', function() { + selectedItem: computed('value', function () { let value = this.value; let codelist = this.codelist; @@ -111,7 +112,7 @@ export default MdCodelist.extend({ * @type Ember.computed * @return Array */ - codelist: computed('value', 'filterId', 'mapped', function() { + codelist: computed('value', 'filterId', 'mapped', function () { let codelist = this.mapped; let value = this.value; let create = this.create; @@ -145,8 +146,7 @@ export default MdCodelist.extend({ //power-select-with-create always sends a single object onCreate //we need to add that object to the selectedItem array if (this.create && !isArray(selected)) { - sel = this.selectedItem - .compact(); + sel = this.selectedItem.compact(); sel.pushObject(selected); } else { sel = selected; @@ -154,5 +154,5 @@ export default MdCodelist.extend({ this.set('value', sel.mapBy('codeId')); this.change(); - } + }, }); diff --git a/app/pods/components/input/md-codelist/component.js b/app/pods/components/input/md-codelist/component.js index d3b9ff717..1b1d1e984 100644 --- a/app/pods/components/input/md-codelist/component.js +++ b/app/pods/components/input/md-codelist/component.js @@ -40,14 +40,17 @@ export default Select.extend({ this._super(...arguments); //define cp using a dynamic dependent property - defineProperty(this, 'mdCodelist', + defineProperty( + this, + 'mdCodelist', computed(`mdCodes.${this.mdCodeName}.codelist.[]`, function () { - return this.mdCodes - .get(this.mdCodeName) - .codelist - //.uniqBy(codeName) - .sortBy(this.namePath); - }) + return ( + this.mdCodes + .get(this.mdCodeName) + .codelist//.uniqBy(codeName) + .sortBy(this.namePath) + ); + }), ); }, classNames: ['md-codelist'], @@ -118,7 +121,7 @@ export default Select.extend({ * @type String * @default 'Select one option' */ - placeholder: "Select one option", + placeholder: 'Select one option', /** * Form label for select list @@ -141,10 +144,9 @@ export default Select.extend({ selectedItem: computed('value', function () { let value = this.value; - return this.codelist - .find((item) => { - return item['codeId'] === value; - }); + return this.codelist.find((item) => { + return item['codeId'] === value; + }); }), // mdCodelist: computed('mdCodeName', function() { @@ -176,11 +178,12 @@ export default Select.extend({ this.mdCodelist.forEach((item) => { let newObject = { codeId: item[codeId], - codeName: this.mdCodes.get( - `codeOverrides.${this.mdCodeName}.${item[codeName]}`) || - item[codeName], + codeName: + this.mdCodes.get( + `codeOverrides.${this.mdCodeName}.${item[codeName]}`, + ) || item[codeName], tooltip: item[tooltip], - icon: icons.get(item[codeName]) || icons.get(defaultIcon) + icon: icons.get(item[codeName]) || icons.get(defaultIcon), }; codelist.pushObject(newObject); }); @@ -203,10 +206,10 @@ export default Select.extend({ let create = this.create; let filter = this.filterId; - if(value) { - if(create) { + if (value) { + if (create) { let found = codelist.findBy('codeId', value); - if(found === undefined) { + if (found === undefined) { let newObject = this.createCode(value); codelist.pushObject(newObject); } @@ -227,7 +230,7 @@ export default Select.extend({ return { codeId: code, codeName: code, - description: 'Undefined' + description: 'Undefined', }; }, @@ -259,7 +262,6 @@ export default Select.extend({ let code = this.createCode(selected); this.setValue(code); - } - } - + }, + }, }); diff --git a/app/pods/components/input/md-date-range/component.js b/app/pods/components/input/md-date-range/component.js index c1d193928..5cd447ef5 100644 --- a/app/pods/components/input/md-date-range/component.js +++ b/app/pods/components/input/md-date-range/component.js @@ -10,30 +10,27 @@ import { set, get, computed } from '@ember/object'; import { once } from '@ember/runloop'; //import moment from 'moment'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; +import { validator, buildValidations } from 'ember-cp-validations'; const Validations = buildValidations({ - 'start': [ + start: [ validator('presence', { presence: true, disabled: notEmpty('model.end'), - ignoreBlank: true - }) + ignoreBlank: true, + }), ], - 'end': [ + end: [ validator('date', { onOrAfter: alias('model.start'), - isWarning: true + isWarning: true, }), validator('presence', { presence: true, disabled: notEmpty('model.start'), - ignoreBlank: true - }) - ] + ignoreBlank: true, + }), + ], }); export default Component.extend(Validations, { @@ -88,11 +85,11 @@ export default Component.extend(Validations, { return dt === undefined ? null : dt; }, set(key, value) { - once(this, function() { + once(this, function () { set(this, 'startDateTime', value); return value; }); - } + }, }), end: computed('endDateTime', { get() { @@ -100,10 +97,10 @@ export default Component.extend(Validations, { return dt === undefined ? null : dt; }, set(key, value) { - once(this, function() { + once(this, function () { set(this, 'endDateTime', value); return value; }); - } + }, }), }); diff --git a/app/pods/components/input/md-datetime/component.js b/app/pods/components/input/md-datetime/component.js index 59e63f0ab..0e63b3620 100644 --- a/app/pods/components/input/md-datetime/component.js +++ b/app/pods/components/input/md-datetime/component.js @@ -27,7 +27,7 @@ export default Component.extend({ if (isBlank(model) !== isBlank(valuePath)) { assert( - `You must supply both model and valuePath to ${this.toString()} or neither.` + `You must supply both model and valuePath to ${this.toString()} or neither.`, ); } @@ -48,7 +48,7 @@ export default Component.extend({ let formatted = this.formatValue(value, `model.${valuePath}`); return formatted; }, - }) + }), ); // ... (other property definitions related to model and validation) @@ -65,7 +65,7 @@ export default Component.extend({ let formatted = this.formatValue(value, 'date'); return formatted; }, - }) + }), ); } }, diff --git a/app/pods/components/input/md-input-confirm/component.js b/app/pods/components/input/md-input-confirm/component.js index ddb3daed0..d62267c9e 100644 --- a/app/pods/components/input/md-input-confirm/component.js +++ b/app/pods/components/input/md-input-confirm/component.js @@ -19,7 +19,7 @@ export default Input.extend({ disabled: true, - isDisabled: computed('disabled', function(){ + isDisabled: computed('disabled', function () { return this.disabled; }), @@ -28,8 +28,8 @@ export default Input.extend({ this.set('disabled', false); this.element.querySelector('input').focus(); }, - inputBlur(){ + inputBlur() { this.set('disabled', true); - } - } + }, + }, }); diff --git a/app/pods/components/input/md-input/component.js b/app/pods/components/input/md-input/component.js index 2ec414fb1..f57e0b360 100644 --- a/app/pods/components/input/md-input/component.js +++ b/app/pods/components/input/md-input/component.js @@ -3,244 +3,267 @@ * @submodule components-input */ - import { alias, not, notEmpty, and, or } from '@ember/object/computed'; - - import Component from '@ember/component'; - import { computed, defineProperty } from '@ember/object'; - import { isBlank } from '@ember/utils'; - import { assert, debug } from '@ember/debug'; - - export default Component.extend({ - /** - * Input, edit, display a single item - * - * ```handlebars - * \{{input/md-input - * value=val - * model=null - * valuePath=null - * label="Name" - * placeholder="Enter name." - * infotip=true - * required=false - * }} - * ``` - * - * @class md-input - * @constructor - */ - - init() { - this._super(...arguments); - - let model = this.model; - let valuePath = this.valuePath; - - if(isBlank(model) !== isBlank(valuePath)) { - assert( - `You must supply both model and valuePath to ${this.toString()} or neither.` - ); - } - - if(!isBlank(model)) { - if(this.get(`model.${valuePath}`) === undefined) { - debug( - `model.${valuePath} is undefined in ${this.toString()}.` - ); - - //Ember.run.once(()=>model.set(valuePath, "")); - } - - if(this.type === 'number') { - let attribute = `model.${valuePath}`; - - defineProperty(this, 'value', computed(attribute, { - get() { - let val = this.get(attribute); - - return val ? val.toString() : ''; - }, - - set(key, value) { - let parse = this.step ? parseFloat : parseInt; - - this.set(attribute, parse(value, 10)); - - return value; - } - })); - } else { - defineProperty(this, 'value', alias(`model.${valuePath}`)); - } - - defineProperty(this, 'validation', alias( - `model.validations.attrs.${valuePath}`) - .readOnly()); - - defineProperty(this, 'required', computed( - 'validation.options.presence{presence,disabled}', - 'disabled', - function () { - return !this.disabled && - this.get('validation.options.presence.presence') && - !this.get('validation.options.presence.disabled'); - }) - .readOnly()); - - defineProperty(this, 'notValidating', not( - 'validation.isValidating') - .readOnly()); - - defineProperty(this, 'hasContent', notEmpty('value') - .readOnly()); - - defineProperty(this, 'hasWarnings', notEmpty( - 'validation.warnings') - .readOnly()); - - defineProperty(this, 'isValid', and('hasContent', - 'validation.isTruelyValid') - .readOnly()); - - defineProperty(this, 'shouldDisplayValidations', or( - 'showValidations', 'didValidate', - 'hasContent') - .readOnly()); - - defineProperty(this, 'showErrorClass', and('notValidating', - 'showErrorMessage', - 'hasContent', 'validation') - .readOnly()); - - defineProperty(this, 'showErrorMessage', and( - 'shouldDisplayValidations', - 'validation.isInvalid') - .readOnly()); - - defineProperty(this, 'showWarningMessage', and( - 'shouldDisplayValidations', - 'hasWarnings', 'isValid') - .readOnly()); - } - }, - - classNames: ['md-input'], - classNameBindings: ['label:form-group', 'required'], - attributeBindings: ['data-spy'], - - /** - * Value of the input. - * Value sets the initial value and returns the edited result. - * This property is overridden if valuePath and model are supplied. - * - * @property value - * @type String - * @required - */ - - /** - * Type of data represented by the value string. - * HTML5 types may be specified ('text', 'number', etc.) - * - * @property type - * @type String - * @default text - */ - type: 'text', - - /** - * The form label to display - * - * @property label - * @type String - * @default null - */ - label: null, - - /** - * Whether a value is required - * - * @property required - * @type Boolean - * @default false - */ - required: false, - - /** - * Whether a input is disabled - * - * @property disabled - * @type Boolean - * @default false - */ - disabled: false, - - /** - * Maximum number of characters for each input string. - * If no maxlength is specified the length will not be restricted - * - * @property maxlength - * @type Number - * @default null - */ - maxlength: null, - - /** - * Text displayed in empty inputs - * - * @property placeholder - * @type String - * @default null - */ - placeholder: null, - - /** - * CSS class to set on the input control - * - * @property class - * @type String - * @default 'form-control' - */ - inputClass: 'form-control', - - /** - * The model or object containing the input value. Only needed for validation. - * - * @property model - * @type {Object} - * @default undefined - * @readOnly - */ - - /** - * The path of the input value. Only needed for validation. - * - * @property valuePath - * @type {String} - * @default '' - * @readOnly - */ - valuePath: '', - - /** - * Whether to show the infotip - * - * @property infotip - * @type {Boolean} - * @default false - */ - infotip: false, - - /** - * Determines whether infotip is rendered - * - * @property showInfoTip - * @type {Boolean} - * @default "false" - * @readOnly - * @category computed - * @requires placeholder, infotip - */ - showInfoTip: and('placeholder', 'infotip') - - }); +import { alias, not, notEmpty, and, or } from '@ember/object/computed'; + +import Component from '@ember/component'; +import { computed, defineProperty } from '@ember/object'; +import { isBlank } from '@ember/utils'; +import { assert, debug } from '@ember/debug'; + +export default Component.extend({ + /** + * Input, edit, display a single item + * + * ```handlebars + * \{{input/md-input + * value=val + * model=null + * valuePath=null + * label="Name" + * placeholder="Enter name." + * infotip=true + * required=false + * }} + * ``` + * + * @class md-input + * @constructor + */ + + init() { + this._super(...arguments); + + let model = this.model; + let valuePath = this.valuePath; + + if (isBlank(model) !== isBlank(valuePath)) { + assert( + `You must supply both model and valuePath to ${this.toString()} or neither.`, + ); + } + + if (!isBlank(model)) { + if (this.get(`model.${valuePath}`) === undefined) { + debug(`model.${valuePath} is undefined in ${this.toString()}.`); + + //Ember.run.once(()=>model.set(valuePath, "")); + } + + if (this.type === 'number') { + let attribute = `model.${valuePath}`; + + defineProperty( + this, + 'value', + computed(attribute, { + get() { + let val = this.get(attribute); + + return val ? val.toString() : ''; + }, + + set(key, value) { + let parse = this.step ? parseFloat : parseInt; + + this.set(attribute, parse(value, 10)); + + return value; + }, + }), + ); + } else { + defineProperty(this, 'value', alias(`model.${valuePath}`)); + } + + defineProperty( + this, + 'validation', + alias(`model.validations.attrs.${valuePath}`).readOnly(), + ); + + defineProperty( + this, + 'required', + computed( + 'validation.options.presence{presence,disabled}', + 'disabled', + function () { + return ( + !this.disabled && + this.get('validation.options.presence.presence') && + !this.get('validation.options.presence.disabled') + ); + }, + ).readOnly(), + ); + + defineProperty( + this, + 'notValidating', + not('validation.isValidating').readOnly(), + ); + + defineProperty(this, 'hasContent', notEmpty('value').readOnly()); + + defineProperty( + this, + 'hasWarnings', + notEmpty('validation.warnings').readOnly(), + ); + + defineProperty( + this, + 'isValid', + and('hasContent', 'validation.isTruelyValid').readOnly(), + ); + + defineProperty( + this, + 'shouldDisplayValidations', + or('showValidations', 'didValidate', 'hasContent').readOnly(), + ); + + defineProperty( + this, + 'showErrorClass', + and( + 'notValidating', + 'showErrorMessage', + 'hasContent', + 'validation', + ).readOnly(), + ); + + defineProperty( + this, + 'showErrorMessage', + and('shouldDisplayValidations', 'validation.isInvalid').readOnly(), + ); + + defineProperty( + this, + 'showWarningMessage', + and('shouldDisplayValidations', 'hasWarnings', 'isValid').readOnly(), + ); + } + }, + + classNames: ['md-input'], + classNameBindings: ['label:form-group', 'required'], + attributeBindings: ['data-spy'], + + /** + * Value of the input. + * Value sets the initial value and returns the edited result. + * This property is overridden if valuePath and model are supplied. + * + * @property value + * @type String + * @required + */ + + /** + * Type of data represented by the value string. + * HTML5 types may be specified ('text', 'number', etc.) + * + * @property type + * @type String + * @default text + */ + type: 'text', + + /** + * The form label to display + * + * @property label + * @type String + * @default null + */ + label: null, + + /** + * Whether a value is required + * + * @property required + * @type Boolean + * @default false + */ + required: false, + + /** + * Whether a input is disabled + * + * @property disabled + * @type Boolean + * @default false + */ + disabled: false, + + /** + * Maximum number of characters for each input string. + * If no maxlength is specified the length will not be restricted + * + * @property maxlength + * @type Number + * @default null + */ + maxlength: null, + + /** + * Text displayed in empty inputs + * + * @property placeholder + * @type String + * @default null + */ + placeholder: null, + + /** + * CSS class to set on the input control + * + * @property class + * @type String + * @default 'form-control' + */ + inputClass: 'form-control', + + /** + * The model or object containing the input value. Only needed for validation. + * + * @property model + * @type {Object} + * @default undefined + * @readOnly + */ + + /** + * The path of the input value. Only needed for validation. + * + * @property valuePath + * @type {String} + * @default '' + * @readOnly + */ + valuePath: '', + + /** + * Whether to show the infotip + * + * @property infotip + * @type {Boolean} + * @default false + */ + infotip: false, + + /** + * Determines whether infotip is rendered + * + * @property showInfoTip + * @type {Boolean} + * @default "false" + * @readOnly + * @category computed + * @requires placeholder, infotip + */ + showInfoTip: and('placeholder', 'infotip'), +}); diff --git a/app/pods/components/input/md-markdown-area/component.js b/app/pods/components/input/md-markdown-area/component.js index 54315fee4..fe9acbdb4 100644 --- a/app/pods/components/input/md-markdown-area/component.js +++ b/app/pods/components/input/md-markdown-area/component.js @@ -33,12 +33,13 @@ export default Component.extend({ const oldEditorSetOption = editor.codemirror.setOption; - editor.codemirror.setOption = function(option, value) { + editor.codemirror.setOption = function (option, value) { oldEditorSetOption.apply(this, arguments); - if(option === 'fullScreen') { - $el.parents('.liquid-child,.liquid-container, .md-card').toggleClass( - 'full-screen', value); + if (option === 'fullScreen') { + $el + .parents('.liquid-child,.liquid-container, .md-card') + .toggleClass('full-screen', value); } }; }, @@ -53,7 +54,7 @@ export default Component.extend({ this._super(...arguments); run.once(this, () => { - if(isNone(this.value)) { + if (isNone(this.value)) { set(this, 'value', ''); } }); @@ -112,20 +113,23 @@ export default Component.extend({ * @category computed * @requires placeholder */ - options: computed('placeholder', function() { + options: computed('placeholder', function () { return { placeholder: this.placeholder, - status: [{ - className: 'length', - defaultValue: (el) => { - el.innerHTML = - `length: ${this.length}`; + status: [ + { + className: 'length', + defaultValue: (el) => { + el.innerHTML = `length: ${this.length}`; + }, + onUpdate: (el) => { + el.innerHTML = `length: ${this.length}`; + }, }, - onUpdate: (el) => { - el.innerHTML = - `length: ${this.length}`; - } - }, 'lines', 'words', 'cursor'] + 'lines', + 'words', + 'cursor', + ], }; }), @@ -141,11 +145,9 @@ export default Component.extend({ * @category computed * @requires value */ - length: computed('value', function() { - return this.value ? this.value - .length : 0; - }) - .readOnly(), + length: computed('value', function () { + return this.value ? this.value.length : 0; + }).readOnly(), /** * Returns string indicating error or warning based on maxlength. @@ -155,23 +157,22 @@ export default Component.extend({ * @category computed * @requires value|maxlength */ - errorClass: computed('value', 'maxlength', function() { + errorClass: computed('value', 'maxlength', function () { let length = this.length; let max = this.maxlength; - if(this.required && length < 1) { + if (this.required && length < 1) { return 'error'; } - if(!max || length <= max - 25) { + if (!max || length <= max - 25) { return ''; } - if(length > max) { + if (length > max) { return 'error'; - } else if(length + 25 > max) { + } else if (length + 25 > max) { return 'warning'; } - - }) + }), }); diff --git a/app/pods/components/input/md-month/component.js b/app/pods/components/input/md-month/component.js index 7fa061c56..65d8a4fd8 100644 --- a/app/pods/components/input/md-month/component.js +++ b/app/pods/components/input/md-month/component.js @@ -9,5 +9,5 @@ export default DateTimePicker.extend({ }), showClear: false, useCurrent: false, - showTodayButton:false + showTodayButton: false, }); diff --git a/app/pods/components/input/md-select-contact/component.js b/app/pods/components/input/md-select-contact/component.js index 92e0b57ce..a1befb44e 100644 --- a/app/pods/components/input/md-select-contact/component.js +++ b/app/pods/components/input/md-select-contact/component.js @@ -90,14 +90,13 @@ export default Select.extend({ * @category computed * @requires contacts.[] */ - mapped: computed('contacts.mapped.[]','contactType', function () { + mapped: computed('contacts.mapped.[]', 'contactType', function () { let type = this.contactType; - if(!['individuals','organizations'].includes(type)){ + if (!['individuals', 'organizations'].includes(type)) { return this.contacts.get('contactsCodes'); } - return this.contacts - .get(type + 'Codes'); - }) + return this.contacts.get(type + 'Codes'); + }), }); diff --git a/app/pods/components/input/md-select-contacts/component.js b/app/pods/components/input/md-select-contacts/component.js index 7ae12739b..88735e128 100644 --- a/app/pods/components/input/md-select-contacts/component.js +++ b/app/pods/components/input/md-select-contacts/component.js @@ -90,14 +90,13 @@ export default Select.extend({ * @category computed * @requires contacts.[] */ - mapped: computed('contacts.mapped.[]','contactType', function () { + mapped: computed('contacts.mapped.[]', 'contactType', function () { let type = this.contactType; - if(!['individuals','organizations'].includes(type)){ + if (!['individuals', 'organizations'].includes(type)) { return this.contacts.get('contactsCodes'); } - return this.contacts - .get(type + 'Codes'); - }) + return this.contacts.get(type + 'Codes'); + }), }); diff --git a/app/pods/components/input/md-select-profile/component.js b/app/pods/components/input/md-select-profile/component.js index 3f6f7f48d..7eed05bb8 100644 --- a/app/pods/components/input/md-select-profile/component.js +++ b/app/pods/components/input/md-select-profile/component.js @@ -1,16 +1,16 @@ import Component from '@ember/component'; import { inject as service } from '@ember/service'; -import calculatePosition from 'ember-basic-dropdown/utils/calculate-position' +import calculatePosition from 'ember-basic-dropdown/utils/calculate-position'; export default Component.extend({ /** - * Input that displays available record profiles. - * - * @module mdeditor - * @submodule components-input - * @class input/md-select-profile - * @constructor - */ + * Input that displays available record profiles. + * + * @module mdeditor + * @submodule components-input + * @class input/md-select-profile + * @constructor + */ profile: service('custom-profile'), /** @@ -19,21 +19,21 @@ export default Component.extend({ * @method action.updateProfile * @param {String} profile The new profile. */ - updateProfile(profile){ + updateProfile(profile) { this.profile.set('active', profile); this.record.save(); }, -/** -* Calculate the width of the input. -* -* @method calculatePosition -* @private -* @return {String} -*/ + /** + * Calculate the width of the input. + * + * @method calculatePosition + * @private + * @return {String} + */ calculatePosition() { let originalValue = calculatePosition(...arguments); - originalValue.style['min-width'] = originalValue.style.width + 'px'; + originalValue.style['min-width'] = originalValue.style.width + 'px'; originalValue.style.width = 'auto'; originalValue.style['max-width'] = '250px'; return originalValue; @@ -48,6 +48,6 @@ export default Component.extend({ */ updateProfile(profile) { this.updateProfile(profile); - } - } + }, + }, }); diff --git a/app/pods/components/input/md-select-thesaurus/component.js b/app/pods/components/input/md-select-thesaurus/component.js index a5f17034e..d21012f32 100644 --- a/app/pods/components/input/md-select-thesaurus/component.js +++ b/app/pods/components/input/md-select-thesaurus/component.js @@ -9,7 +9,6 @@ import { inject as service } from '@ember/service'; import Component from '@ember/component'; export default Component.extend({ - /** * A select list control for displaying and selecting thesaurus entries from * the keyword service. @@ -30,77 +29,83 @@ export default Component.extend({ */ selectThesaurus() {}, - thesaurusList: computed('keyword.thesaurus.[]', 'profile.profiles', 'recordProfile', function () { - let profileConfig = this.profile.profiles.find((p) => { - return p.id === this.recordProfile; - }); - let vocabularies = profileConfig.definition.vocabularies; + thesaurusList: computed( + 'keyword.thesaurus.[]', + 'profile.profiles', + 'recordProfile', + function () { + let profileConfig = this.profile.profiles.find((p) => { + return p.id === this.recordProfile; + }); + let vocabularies = profileConfig.definition.vocabularies; - let defaultVocabularies = [ - { - id: 'ISO 19115 Topic Category', - name: 'ISO 19115 Topic Category' - }, - { - id: 'b2140059-b3ca-415c-b0a7-3e142783ffe8', - name: 'GCMD Instruments' - }, - { - id: 'f3261de5-34c1-4980-af22-f9d7e7206d12', - name: 'GCMD Platforms' - }, - { - id: '1eb0ea0a-312c-4d74-8d42-6f1ad758f999', - name: 'GCMD Science Keywords' - }, - { - id: 'fa455d4a-5d87-56bc-b074-9a967beff904', - name: 'LCC Deliverables' - }, - { - id: '425f4a7c-dca2-56d8-947e-6f6bd1033d70', - name: 'LCC End User Types' - }, - { - id: '5da1d3b7-375b-58ae-a134-2ee0c94c395f', - name: 'LCC Project Category' - }, - ] + let defaultVocabularies = [ + { + id: 'ISO 19115 Topic Category', + name: 'ISO 19115 Topic Category', + }, + { + id: 'b2140059-b3ca-415c-b0a7-3e142783ffe8', + name: 'GCMD Instruments', + }, + { + id: 'f3261de5-34c1-4980-af22-f9d7e7206d12', + name: 'GCMD Platforms', + }, + { + id: '1eb0ea0a-312c-4d74-8d42-6f1ad758f999', + name: 'GCMD Science Keywords', + }, + { + id: 'fa455d4a-5d87-56bc-b074-9a967beff904', + name: 'LCC Deliverables', + }, + { + id: '425f4a7c-dca2-56d8-947e-6f6bd1033d70', + name: 'LCC End User Types', + }, + { + id: '5da1d3b7-375b-58ae-a134-2ee0c94c395f', + name: 'LCC Project Category', + }, + ]; - let list = this.keyword - .thesaurus - .filter((k) => { - if (vocabularies && vocabularies.length > 0) { - return vocabularies.some((v) => { - return v.id === k.citation.identifier[0].identifier; + let list = this.keyword.thesaurus + .filter((k) => { + if (vocabularies && vocabularies.length > 0) { + return vocabularies.some((v) => { + return v.id === k.citation.identifier[0].identifier; + }); + } else { + return defaultVocabularies.some((v) => { + return v.id === k.citation.identifier[0].identifier; + }); + } + }) + .map((k) => { + return EmberObject.create({ + id: k.citation.identifier[0].identifier, + label: k.label || k.citation.title || 'Keywords', + tooltipText: k.citation.description || 'No description available.', }); - } else { - return defaultVocabularies.some((v) => { - return v.id === k.citation.identifier[0].identifier; - }); - } - }) - .map((k) => { - return EmberObject.create({ - id: k.citation.identifier[0].identifier, - label: k.label || k.citation.title || 'Keywords', - tooltipText: k.citation.description || 'No description available.', + }) + .sort((a, b) => { + return a.label.localeCompare(b.label); }); - }) - .sort((a, b) => { - return a.label.localeCompare(b.label); - }); - list.unshift(EmberObject.create({ - id: 'custom', - label: 'Custom Thesaurus' - })); - return list; - }), + list.unshift( + EmberObject.create({ + id: 'custom', + label: 'Custom Thesaurus', + }), + ); + return list; + }, + ), actions: { update(id, thesaurus) { let selected = this.keyword.findById(id); this.selectThesaurus(selected, thesaurus); - } - } + }, + }, }); diff --git a/app/pods/components/input/md-select/component.js b/app/pods/components/input/md-select/component.js index d9fbb65c3..33e8f9ca6 100644 --- a/app/pods/components/input/md-select/component.js +++ b/app/pods/components/input/md-select/component.js @@ -47,60 +47,90 @@ export default Component.extend({ let model = this.model; let path = this.path; - if(isNone(model) !== isNone(path)) { + if (isNone(model) !== isNone(path)) { assert( - `You must supply both model and path to ${this.toString()} or neither.` + `You must supply both model and path to ${this.toString()} or neither.`, ); } - if(!isBlank(model)) { - if(this.get(`model.${path}`) === undefined) { - debug( - `model.${path} is undefined in ${this.toString()}.` - ); + if (!isBlank(model)) { + if (this.get(`model.${path}`) === undefined) { + debug(`model.${path} is undefined in ${this.toString()}.`); //Ember.run.once(()=>model.set(path, "")); } defineProperty(this, 'value', alias(`model.${path}`)); - defineProperty(this, 'validation', alias( - `model.validations.attrs.${path}`).readOnly()); + defineProperty( + this, + 'validation', + alias(`model.validations.attrs.${path}`).readOnly(), + ); - defineProperty(this, 'required', computed( - 'validation.options.presence.{presence,disabled}', - 'disabled', - function() { - return !this.disabled && - this.get('validation.options.presence.presence') && - !this.get('validation.options.presence.disabled'); - }).readOnly()); + defineProperty( + this, + 'required', + computed( + 'validation.options.presence.{presence,disabled}', + 'disabled', + function () { + return ( + !this.disabled && + this.get('validation.options.presence.presence') && + !this.get('validation.options.presence.disabled') + ); + }, + ).readOnly(), + ); - defineProperty(this, 'notValidating', not( - 'validation.isValidating').readOnly()); + defineProperty( + this, + 'notValidating', + not('validation.isValidating').readOnly(), + ); defineProperty(this, 'hasContent', notEmpty('value').readOnly()); - defineProperty(this, 'hasWarnings', notEmpty( - 'validation.warnings').readOnly()); + defineProperty( + this, + 'hasWarnings', + notEmpty('validation.warnings').readOnly(), + ); - defineProperty(this, 'isValid', and('hasContent', - 'validation.isTruelyValid').readOnly()); + defineProperty( + this, + 'isValid', + and('hasContent', 'validation.isTruelyValid').readOnly(), + ); - defineProperty(this, 'shouldDisplayValidations', or( - 'showValidations', 'didValidate', - 'hasContent').readOnly()); + defineProperty( + this, + 'shouldDisplayValidations', + or('showValidations', 'didValidate', 'hasContent').readOnly(), + ); - defineProperty(this, 'showErrorClass', and('notValidating', - 'showErrorMessage', - 'hasContent', 'validation').readOnly()); + defineProperty( + this, + 'showErrorClass', + and( + 'notValidating', + 'showErrorMessage', + 'hasContent', + 'validation', + ).readOnly(), + ); - defineProperty(this, 'showErrorMessage', and( - 'shouldDisplayValidations', - 'validation.isInvalid').readOnly()); + defineProperty( + this, + 'showErrorMessage', + and('shouldDisplayValidations', 'validation.isInvalid').readOnly(), + ); - defineProperty(this, 'showWarningMessage', and( - 'shouldDisplayValidations', - 'hasWarnings', 'isValid').readOnly()); + defineProperty( + this, + 'showWarningMessage', + and('shouldDisplayValidations', 'hasWarnings', 'isValid').readOnly(), + ); } }, @@ -267,7 +297,7 @@ export default Component.extend({ * @type String * @default 'Select one option' */ - placeholder: "Select one option", + placeholder: 'Select one option', /** * Form label for select list @@ -278,7 +308,7 @@ export default Component.extend({ */ label: null, - ariaLabel: computed('label', function() { + ariaLabel: computed('label', function () { return this.label; }), @@ -310,9 +340,8 @@ export default Component.extend({ * @type Ember.computed * @return String */ - theComponent: computed('create', function() { - return this.create ? 'power-select-with-create' : - 'power-select'; + theComponent: computed('create', function () { + return this.create ? 'power-select-with-create' : 'power-select'; }), /** @@ -329,16 +358,15 @@ export default Component.extend({ * @type Ember.computed * @return PromiseObject */ - selectedItem: computed('value', function() { + selectedItem: computed('value', function () { let value = this.value; return DS.PromiseObject.create({ - promise: this.codelist - .then(function(arr) { - return arr.find((item) => { - return item['codeId'] === value; - }); - }) + promise: this.codelist.then(function (arr) { + return arr.find((item) => { + return item['codeId'] === value; + }); + }), }); }), @@ -351,13 +379,13 @@ export default Component.extend({ * @type Ember.computed * @return PromiseArray */ - codelist: computed('objectArray', function() { + codelist: computed('objectArray', function () { const objArray = this.objectArray; - let inList = new Promise(function(resolve, reject) { + let inList = new Promise(function (resolve, reject) { // succeed resolve(objArray); // or reject - reject(new Error('Couldn\'t create a promise.')); + reject(new Error("Couldn't create a promise.")); }); let codeId = this.valuePath; let codeName = this.namePath; @@ -367,23 +395,23 @@ export default Component.extend({ let outList = A(); return DS.PromiseArray.create({ - promise: inList.then(function(arr) { - arr.forEach(function(item) { + promise: inList.then(function (arr) { + arr.forEach(function (item) { let newObject = { codeId: get(item, codeId), codeName: get(item, codeName), tooltip: false, - icon: icons.get(item[codeName].toString()) || icons.get( - defaultIcon) + icon: + icons.get(item[codeName].toString()) || icons.get(defaultIcon), }; - if(tooltip) { + if (tooltip) { newObject.tooltip = get(item, tooltip); } outList.pushObject(newObject); }); return outList; - }) + }), }); }), @@ -399,7 +427,7 @@ export default Component.extend({ return { codeId: code, codeName: code, - tooltip: false + tooltip: false, }; }, @@ -422,10 +450,8 @@ export default Component.extend({ create(selected) { let code = this.createCode(selected); - this.codelist - .pushObject(code); + this.codelist.pushObject(code); this.setValue(code); - } - } - + }, + }, }); diff --git a/app/pods/components/input/md-textarea/component.js b/app/pods/components/input/md-textarea/component.js index ac00609b1..647c8798f 100644 --- a/app/pods/components/input/md-textarea/component.js +++ b/app/pods/components/input/md-textarea/component.js @@ -3,245 +3,262 @@ * @submodule components-input */ - import Component from '@ember/component'; - import { computed, defineProperty } from '@ember/object'; - import { alias, not, notEmpty, and, or } from '@ember/object/computed'; - import { isBlank } from '@ember/utils'; - import { assert, debug } from '@ember/debug'; - - export default Component.extend({ - - /** - * Input, edit, display a multi-line, expandable, text area. - * - * @class md-textarea - * @constructor - */ - - init() { - this._super(...arguments); - - let model = this.model; - let valuePath = this.valuePath; - - if(isBlank(model) !== isBlank(valuePath)) { - assert( - `You must supply both model and valuePath to ${this.toString()} or neither.` - ); - } - - if(!isBlank(model)) { - if(this.get(`model.${valuePath}`) === undefined) { - debug( - `model.${valuePath} is undefined in ${this.toString()}.` - ); - - //Ember.run.once(()=>model.set(valuePath, "")); - } - - defineProperty(this, 'value', alias(`model.${valuePath}`)); - - defineProperty(this, 'validation', alias( - `model.validations.attrs.${valuePath}`) - .readOnly()); - - defineProperty(this, 'required', computed( - 'validation.options.presence{presence,disabled}', - 'disabled', - function () { - return !this.disabled && - this.get('validation.options.presence.presence') && - !this.get('validation.options.presence.disabled'); - }) - .readOnly()); - - defineProperty(this, 'notValidating', not( - 'validation.isValidating') - .readOnly()); - - defineProperty(this, 'hasContent', notEmpty('value') - .readOnly()); - - defineProperty(this, 'hasWarnings', notEmpty( - 'validation.warnings') - .readOnly()); - - defineProperty(this, 'isValid', and('hasContent', - 'validation.isTruelyValid') - .readOnly()); - - defineProperty(this, 'shouldDisplayValidations', or( - 'showValidations', 'didValidate', - 'hasContent') - .readOnly()); - - defineProperty(this, 'showErrorClass', and('notValidating', - 'showErrorMessage', - 'hasContent', 'validation') - .readOnly()); - - defineProperty(this, 'showErrorMessage', and( - 'shouldDisplayValidations', - 'validation.isInvalid') - .readOnly()); - - defineProperty(this, 'showWarningMessage', and( - 'shouldDisplayValidations', - 'hasWarnings', 'isValid') - .readOnly()); - } - }, - - attributeBindings: ['data-spy'], - classNames: ['md-textarea'], - classNameBindings: ['label:form-group', 'required', - 'embedded:md-embedded' - ], - - /** - * Initial value, returned value. - * - * @property value - * @type String - * @return String - * @required - */ - - /** - * Form label for textarea - * - * @property label - * @type String - * @default null - */ - label: null, - - /** - * The string to display when no option is selected. - * - * @property placeholder - * @type String - * @default 'Select one option' - */ - placeholder: "Select one option", - - /** - * Indicates whether the value is required - * - * @property required - * @type Boolean - * @default false - */ - required: false, - - /** - * Maximum number of characters allowed. - * If maxlength is not provided the number of characters will - * not be restricted. - * - * @property maxlength - * @type Number - * @default null - */ - maxlength: null, - - /** - * Enable auto-resizing of the textarea - * - * @property autoresize - * @type Boolean - * @default true - */ - autoresize: true, - - /** - * Toggle expand state - * - * @property isExpanded - * @type Boolean - * @default true - */ - isExpanded: true, - - /** - * Enable collapse of the textarea - * - * @property isCollapsible - * @type Boolean - * @default false - */ - isCollapsible: false, - /** - * Set the maximum width of the resizeable element in pixels. - * If maxwidth is not provided width will not be restricted. - * - * @property maxwidth - * @type Number - * @default null - */ - maxwidth: null, - - /** - * Set the maximum height of the resizable element in pixels. - * If maxheight is not provided height will not be restricted. - * - * @property maxheight - * @type {Number} - * @default null - */ - maxheight: null, - - /** - * Set the minimum number of rows for the element. - * Recommended for textareas. - * - * @property rows - * @type Number - * @default 2 - */ - rows: 2, - - /** - * Set the maximum number of rows for the element. - * Recommended for textareas. - * - * @property maxrows - * @type Number - * @default 10 - */ - maxrows: 10, - - /** - * Class to set on the textarea - * - * @property inputClass - * @type {string} - * @default 'form-control' - */ - inputClass: 'form-control', - - _didInsertArea() { - this.scheduleMeasurement(); - }, - - /** - * Whether to show the infotip - * - * @property infotip - * @type Boolean - * @default false - */ - infotip: false, - - /** - * Determines whether infotip is rendered - * - * @property showInfotip - * @type {Boolean} - * @default "false" - * @readOnly - * @category computed - * @requires placeholder,infotip - */ - showInfotip: and('placeholder', 'infotip') - }); +import Component from '@ember/component'; +import { computed, defineProperty } from '@ember/object'; +import { alias, not, notEmpty, and, or } from '@ember/object/computed'; +import { isBlank } from '@ember/utils'; +import { assert, debug } from '@ember/debug'; + +export default Component.extend({ + /** + * Input, edit, display a multi-line, expandable, text area. + * + * @class md-textarea + * @constructor + */ + + init() { + this._super(...arguments); + + let model = this.model; + let valuePath = this.valuePath; + + if (isBlank(model) !== isBlank(valuePath)) { + assert( + `You must supply both model and valuePath to ${this.toString()} or neither.`, + ); + } + + if (!isBlank(model)) { + if (this.get(`model.${valuePath}`) === undefined) { + debug(`model.${valuePath} is undefined in ${this.toString()}.`); + + //Ember.run.once(()=>model.set(valuePath, "")); + } + + defineProperty(this, 'value', alias(`model.${valuePath}`)); + + defineProperty( + this, + 'validation', + alias(`model.validations.attrs.${valuePath}`).readOnly(), + ); + + defineProperty( + this, + 'required', + computed( + 'validation.options.presence{presence,disabled}', + 'disabled', + function () { + return ( + !this.disabled && + this.get('validation.options.presence.presence') && + !this.get('validation.options.presence.disabled') + ); + }, + ).readOnly(), + ); + + defineProperty( + this, + 'notValidating', + not('validation.isValidating').readOnly(), + ); + + defineProperty(this, 'hasContent', notEmpty('value').readOnly()); + + defineProperty( + this, + 'hasWarnings', + notEmpty('validation.warnings').readOnly(), + ); + + defineProperty( + this, + 'isValid', + and('hasContent', 'validation.isTruelyValid').readOnly(), + ); + + defineProperty( + this, + 'shouldDisplayValidations', + or('showValidations', 'didValidate', 'hasContent').readOnly(), + ); + + defineProperty( + this, + 'showErrorClass', + and( + 'notValidating', + 'showErrorMessage', + 'hasContent', + 'validation', + ).readOnly(), + ); + + defineProperty( + this, + 'showErrorMessage', + and('shouldDisplayValidations', 'validation.isInvalid').readOnly(), + ); + + defineProperty( + this, + 'showWarningMessage', + and('shouldDisplayValidations', 'hasWarnings', 'isValid').readOnly(), + ); + } + }, + + attributeBindings: ['data-spy'], + classNames: ['md-textarea'], + classNameBindings: ['label:form-group', 'required', 'embedded:md-embedded'], + + /** + * Initial value, returned value. + * + * @property value + * @type String + * @return String + * @required + */ + + /** + * Form label for textarea + * + * @property label + * @type String + * @default null + */ + label: null, + + /** + * The string to display when no option is selected. + * + * @property placeholder + * @type String + * @default 'Select one option' + */ + placeholder: 'Select one option', + + /** + * Indicates whether the value is required + * + * @property required + * @type Boolean + * @default false + */ + required: false, + + /** + * Maximum number of characters allowed. + * If maxlength is not provided the number of characters will + * not be restricted. + * + * @property maxlength + * @type Number + * @default null + */ + maxlength: null, + + /** + * Enable auto-resizing of the textarea + * + * @property autoresize + * @type Boolean + * @default true + */ + autoresize: true, + + /** + * Toggle expand state + * + * @property isExpanded + * @type Boolean + * @default true + */ + isExpanded: true, + + /** + * Enable collapse of the textarea + * + * @property isCollapsible + * @type Boolean + * @default false + */ + isCollapsible: false, + /** + * Set the maximum width of the resizeable element in pixels. + * If maxwidth is not provided width will not be restricted. + * + * @property maxwidth + * @type Number + * @default null + */ + maxwidth: null, + + /** + * Set the maximum height of the resizable element in pixels. + * If maxheight is not provided height will not be restricted. + * + * @property maxheight + * @type {Number} + * @default null + */ + maxheight: null, + + /** + * Set the minimum number of rows for the element. + * Recommended for textareas. + * + * @property rows + * @type Number + * @default 2 + */ + rows: 2, + + /** + * Set the maximum number of rows for the element. + * Recommended for textareas. + * + * @property maxrows + * @type Number + * @default 10 + */ + maxrows: 10, + + /** + * Class to set on the textarea + * + * @property inputClass + * @type {string} + * @default 'form-control' + */ + inputClass: 'form-control', + + _didInsertArea() { + this.scheduleMeasurement(); + }, + + /** + * Whether to show the infotip + * + * @property infotip + * @type Boolean + * @default false + */ + infotip: false, + + /** + * Determines whether infotip is rendered + * + * @property showInfotip + * @type {Boolean} + * @default "false" + * @readOnly + * @category computed + * @requires placeholder,infotip + */ + showInfotip: and('placeholder', 'infotip'), +}); diff --git a/app/pods/components/input/md-toggle/component.js b/app/pods/components/input/md-toggle/component.js index 4e08c4cc0..3bcd99663 100644 --- a/app/pods/components/input/md-toggle/component.js +++ b/app/pods/components/input/md-toggle/component.js @@ -7,21 +7,21 @@ import Toggle from 'ember-toggle/components/x-toggle/component'; export default Toggle.extend({ /** - * Custom toggle switch for boolean input - * - * @class md-toggle - * @constructor - * @extends ember-toggle/components/x-toggle - */ + * Custom toggle switch for boolean input + * + * @class md-toggle + * @constructor + * @extends ember-toggle/components/x-toggle + */ - /** - * Bound classes: - * - value - * - __true__: toggle-on - * - __false__: toggle-off - * - * @property classNameBindings - * @type {Array} - */ - classNameBindings: ['value:toggle-on:toggle-off'] + /** + * Bound classes: + * - value + * - __true__: toggle-on + * - __false__: toggle-off + * + * @property classNameBindings + * @type {Array} + */ + classNameBindings: ['value:toggle-on:toggle-off'], }); diff --git a/app/pods/components/layout/md-breadcrumb/component.js b/app/pods/components/layout/md-breadcrumb/component.js index bb93d73f3..557064773 100644 --- a/app/pods/components/layout/md-breadcrumb/component.js +++ b/app/pods/components/layout/md-breadcrumb/component.js @@ -1,4 +1,3 @@ import Component from '@ember/component'; -export default Component.extend({ -}); +export default Component.extend({}); diff --git a/app/pods/components/layout/md-card/component.js b/app/pods/components/layout/md-card/component.js index a96ab6dda..d353221ea 100644 --- a/app/pods/components/layout/md-card/component.js +++ b/app/pods/components/layout/md-card/component.js @@ -1,12 +1,7 @@ import { oneWay } from '@ember/object/computed'; import Component from '@ember/component'; -import { - computed, - get -} from '@ember/object'; -import { - inject as service -} from '@ember/service'; +import { computed, get } from '@ember/object'; +import { inject as service } from '@ember/service'; import $ from 'jquery'; export default Component.extend({ @@ -50,8 +45,14 @@ export default Component.extend({ cleaner: service(), classNames: ['md-card', 'card'], - classNameBindings: ['shadow:box-shadow--4dp', 'scroll:scroll-card', - 'maximizable', 'fullScreen', 'required', 'muted', 'borderColor' + classNameBindings: [ + 'shadow:box-shadow--4dp', + 'scroll:scroll-card', + 'maximizable', + 'fullScreen', + 'required', + 'muted', + 'borderColor', ], attributeBindings: ['data-spy'], @@ -66,9 +67,8 @@ export default Component.extend({ * @requires elementId */ cardId: computed('elementId', function () { - return 'card-' + this.elementId; - }) - .readOnly(), + return 'card-' + this.elementId; + }).readOnly(), /** * The card title. @@ -259,7 +259,7 @@ export default Component.extend({ didInsertElement() { this._super(...arguments); - if(this.collapsible) { + if (this.collapsible) { let card = this.$(); let body = this.$(' > .card-collapse'); let offset = this.offset || 0; @@ -276,19 +276,25 @@ export default Component.extend({ // if(scrolledY) { // window.scroll(0, scrolledY - offset); // } - $('html,body').animate({ - scrollTop: card.offset().top - offset - }, 'slow'); + $('html,body').animate( + { + scrollTop: card.offset().top - offset, + }, + 'slow', + ); }); } let content = this.content; - if(content !== null) { - let empty = content ? Object.keys(this.cleaner.clean(content, { - preserveArrays: false - })).length === - 0 : true; + if (content !== null) { + let empty = content + ? Object.keys( + this.cleaner.clean(content, { + preserveArrays: false, + }), + ).length === 0 + : true; this.set('collapsed', empty); } @@ -298,12 +304,13 @@ export default Component.extend({ toggleFullScreen() { let val = this.toggleProperty('fullScreen'); - $(this.element).parents('.liquid-child,.liquid-container, .md-card').toggleClass( - 'full-screen', val); + $(this.element) + .parents('.liquid-child,.liquid-container, .md-card') + .toggleClass('full-screen', val); $('body').toggleClass('slider', val); }, spotlight(id) { this.spotlight.setTarget(id); - } - } + }, + }, }); diff --git a/app/pods/components/layout/md-footer/component.js b/app/pods/components/layout/md-footer/component.js index 2293fb42b..0392f6baa 100644 --- a/app/pods/components/layout/md-footer/component.js +++ b/app/pods/components/layout/md-footer/component.js @@ -5,5 +5,5 @@ export default Component.extend({ tagName: 'footer', classNames: ['md-footer'], - settings: service() + settings: service(), }); diff --git a/app/pods/components/layout/md-nav-main/component.js b/app/pods/components/layout/md-nav-main/component.js index 5e762f631..6864941e8 100644 --- a/app/pods/components/layout/md-nav-main/component.js +++ b/app/pods/components/layout/md-nav-main/component.js @@ -8,12 +8,9 @@ export default Component.extend({ },*/ actions: { toggleSidebar() { - $('#md-wrapper') - .toggleClass('toggled'); + $('#md-wrapper').toggleClass('toggled'); //hack to force reflow - $('#md-navbar-main-collapse ul') - .hide() - .show(0); - } - } + $('#md-navbar-main-collapse ul').hide().show(0); + }, + }, }); diff --git a/app/pods/components/layout/md-nav-secondary/component.js b/app/pods/components/layout/md-nav-secondary/component.js index 3728ca2e5..e89af4721 100644 --- a/app/pods/components/layout/md-nav-secondary/component.js +++ b/app/pods/components/layout/md-nav-secondary/component.js @@ -15,14 +15,14 @@ export default Component.extend(ResizeAware, { navWidth: 0, /** - * Array of nav links. If not supplied, the links will be pulled from the - * active profile. - * - * @property navLinks - * @type {Array} - * @default "undefined" - * @optional - */ + * Array of nav links. If not supplied, the links will be pulled from the + * active profile. + * + * @property navLinks + * @type {Array} + * @default "undefined" + * @optional + */ /** * translated "more" text @@ -37,23 +37,25 @@ export default Component.extend(ResizeAware, { const modelName = this.get('model.constructor.modelName'); const nav = this; - let links = this.navLinks || get(active, 'definition.nav.' + - modelName) || this - .customProfile.defaultProfile.definition.nav[modelName]; + let links = + this.navLinks || + get(active, 'definition.nav.' + modelName) || + this.customProfile.defaultProfile.definition.nav[modelName]; return links.map((lnk, index) => { let link = EmberObject.create(lnk); link.setProperties({ nav: nav, index: index }); defineProperty(link, 'navWidth', alias('nav.navWidth')); - defineProperty(link, 'isOverflow', computed('navWidth', - 'width', - function () { - return this.navWidth < this.linkWidth + this.nav - .offset; - })); + defineProperty( + link, + 'isOverflow', + computed('navWidth', 'width', function () { + return this.navWidth < this.linkWidth + this.nav.offset; + }), + ); - return link + return link; }); }), @@ -82,10 +84,10 @@ export default Component.extend(ResizeAware, { didInsertElement: function () { this._super.apply(this, arguments); - this._handleDebouncedResizeEvent() + this._handleDebouncedResizeEvent(); }, debouncedDidResize(width) { this.set('navWidth', width || this.navWidth); - } + }, }); diff --git a/app/pods/components/layout/md-nav-secondary/link/component.js b/app/pods/components/layout/md-nav-secondary/link/component.js index fdd4e474e..b431b255a 100644 --- a/app/pods/components/layout/md-nav-secondary/link/component.js +++ b/app/pods/components/layout/md-nav-secondary/link/component.js @@ -1,6 +1,6 @@ import Component from '@ember/component'; import { scheduleOnce } from '@ember/runloop'; -import { measure } from "liquid-fire/components/liquid-measured"; +import { measure } from 'liquid-fire/components/liquid-measured'; export default Component.extend({ tagName: 'li', @@ -8,17 +8,20 @@ export default Component.extend({ this._super(...arguments); let width = measure(this.$()).width; - if(width === this.link.width || this.link.isOverflow) return; + if (width === this.link.width || this.link.isOverflow) return; scheduleOnce('afterRender', () => { //next(this, () => { let sliced = this.nav.links.slice(0, this.index + 1); this.set('link.width', width); - this.link.set('linkWidth', sliced.reduce((a, b) => { - return a + b.width; - }, this.nav.navPadding)); + this.link.set( + 'linkWidth', + sliced.reduce((a, b) => { + return a + b.width; + }, this.nav.navPadding), + ); //}); }); - } + }, }); diff --git a/app/pods/components/layout/md-nav-sidebar/component.js b/app/pods/components/layout/md-nav-sidebar/component.js index 4ce847a17..4fb64da51 100644 --- a/app/pods/components/layout/md-nav-sidebar/component.js +++ b/app/pods/components/layout/md-nav-sidebar/component.js @@ -12,11 +12,11 @@ export default Component.extend({ prerelease: computed(function () { let version = this.version; - if(version.substring(0, 3) === "0.0"){ + if (version.substring(0, 3) === '0.0') { return 'alpha'; } - if(version.substring(0, 1) === "0" && version.substring(0, 3) >0){ + if (version.substring(0, 1) === '0' && version.substring(0, 3) > 0) { return 'beta'; } }), @@ -31,12 +31,9 @@ export default Component.extend({ this.toggleProperty('showHelp'); }, toggleSidebar() { - $('#md-wrapper') - .toggleClass('toggled'); + $('#md-wrapper').toggleClass('toggled'); //hack to force reflow - $('#md-navbar-main-collapse ul') - .hide() - .show(0); - } - } + $('#md-navbar-main-collapse ul').hide().show(0); + }, + }, }); diff --git a/app/pods/components/layout/md-object-container/component.js b/app/pods/components/layout/md-object-container/component.js index df639d629..e78cdcc0d 100644 --- a/app/pods/components/layout/md-object-container/component.js +++ b/app/pods/components/layout/md-object-container/component.js @@ -8,49 +8,49 @@ export default Component.extend({ attributeBindings: ['data-spy'], /** - * The index of the container, usually representing the zero-based array index. - * - * @property collapsible - * @type {Number|String} - * @default "true" - */ + * The index of the container, usually representing the zero-based array index. + * + * @property collapsible + * @type {Number|String} + * @default "true" + */ /** - * Determine whether the collapse control is rendered in the header. - * - * @property collapsible - * @type {Boolean} - * @default "true" - */ - collapsible:true, + * Determine whether the collapse control is rendered in the header. + * + * @property collapsible + * @type {Boolean} + * @default "true" + */ + collapsible: true, /** - * The value of this property must evaluate to true for the component to be - * collapsible. - * - * @property collapseProperty - * @type {Boolean} - * @default "true" - */ - collapseProperty:true, + * The value of this property must evaluate to true for the component to be + * collapsible. + * + * @property collapseProperty + * @type {Boolean} + * @default "true" + */ + collapseProperty: true, isCollapsible: and('collapsible', 'collapseProperty'), 'data-spy': computed('title', function () { return `${this.title} ${this.index}`; }), -/** -* True if the position indicated by the `index` value is even on a zero-based -* scale. -* -* @property even -* @type {Boolean} -* @default "false" -* @readOnly -* @category computed -* @requires 'index' -*/ - even: computed('index', function() { + /** + * True if the position indicated by the `index` value is even on a zero-based + * scale. + * + * @property even + * @type {Boolean} + * @default "false" + * @readOnly + * @category computed + * @requires 'index' + */ + even: computed('index', function () { return !!(Number.parseInt(this.index, 10) % 2); }), }); diff --git a/app/pods/components/layout/md-slider/component.js b/app/pods/components/layout/md-slider/component.js index f2d0562eb..6f4423842 100644 --- a/app/pods/components/layout/md-slider/component.js +++ b/app/pods/components/layout/md-slider/component.js @@ -1,7 +1,5 @@ import Component from '@ember/component'; -import { - computed -} from '@ember/object'; +import { computed } from '@ember/object'; import $ from 'jquery'; export default Component.extend({ @@ -10,8 +8,7 @@ export default Component.extend({ visible: false, didReceiveAttrs() { - $('body') - .toggleClass('slider', this.visible === true); + $('body').toggleClass('slider', this.visible === true); }, fromName: null, @@ -24,16 +21,15 @@ export default Component.extend({ toggleVisibility() { this.toggleProperty('visible'); - if(!this.visible) { + if (!this.visible) { let context = this.get('context.isDestroying'); this.set('fromName', null); - if(!context) { - this.onClose - .call(this); + if (!context) { + this.onClose.call(this); } } - } - } + }, + }, }); diff --git a/app/pods/components/layout/md-wrap/component.js b/app/pods/components/layout/md-wrap/component.js index 1be3b2db5..f807b57af 100644 --- a/app/pods/components/layout/md-wrap/component.js +++ b/app/pods/components/layout/md-wrap/component.js @@ -17,5 +17,5 @@ export default Component.extend({ * @class md-wrap * @constructor */ - attributeBindings: ['data-spy'] + attributeBindings: ['data-spy'], }); diff --git a/app/pods/components/layout/nav/dictionary/nav-main/component.js b/app/pods/components/layout/nav/dictionary/nav-main/component.js index bf9ad6125..479865264 100644 --- a/app/pods/components/layout/nav/dictionary/nav-main/component.js +++ b/app/pods/components/layout/nav/dictionary/nav-main/component.js @@ -1,5 +1,5 @@ import Component from '@ember/component'; export default Component.extend({ - tagName:'' + tagName: '', }); diff --git a/app/pods/components/layout/nav/record/nav-main/component.js b/app/pods/components/layout/nav/record/nav-main/component.js index bf9ad6125..479865264 100644 --- a/app/pods/components/layout/nav/record/nav-main/component.js +++ b/app/pods/components/layout/nav/record/nav-main/component.js @@ -1,5 +1,5 @@ import Component from '@ember/component'; export default Component.extend({ - tagName:'' + tagName: '', }); diff --git a/app/pods/components/md-help/component.js b/app/pods/components/md-help/component.js index 9726b700e..0583ba65b 100644 --- a/app/pods/components/md-help/component.js +++ b/app/pods/components/md-help/component.js @@ -2,5 +2,5 @@ import Component from '@ember/component'; export default Component.extend({ classNames: ['md-help-sidebar'], - tagName: 'section' + tagName: 'section', }); diff --git a/app/pods/components/md-models-table/component.js b/app/pods/components/md-models-table/component.js index 22eea2d29..b3111398b 100644 --- a/app/pods/components/md-models-table/component.js +++ b/app/pods/components/md-models-table/component.js @@ -1,7 +1,6 @@ import Table from 'ember-models-table/components/models-table'; import Theme from './themes/bootstrap3'; - export default class MdModelsTableComponent extends Table { themeInstance = Theme.create(); } diff --git a/app/pods/components/md-models-table/components/check-all/component.js b/app/pods/components/md-models-table/components/check-all/component.js index 899e03e8c..0a75fe9f9 100644 --- a/app/pods/components/md-models-table/components/check-all/component.js +++ b/app/pods/components/md-models-table/components/check-all/component.js @@ -4,6 +4,6 @@ export default Component.extend({ actions: { toggleAllSelection() { this.toggleAllSelection(); - } - } + }, + }, }); diff --git a/app/pods/components/md-models-table/components/check/component.js b/app/pods/components/md-models-table/components/check/component.js index 1ab437d91..e54e97234 100644 --- a/app/pods/components/md-models-table/components/check/component.js +++ b/app/pods/components/md-models-table/components/check/component.js @@ -7,6 +7,6 @@ export default Component.extend({ clickOnRow(index, record, event) { this.clickOnRow(index, record); event.stopPropagation(); - } - } + }, + }, }); diff --git a/app/pods/components/md-models-table/components/row-body/component.js b/app/pods/components/md-models-table/components/row-body/component.js index 38c611dce..3d41fa66f 100644 --- a/app/pods/components/md-models-table/components/row-body/component.js +++ b/app/pods/components/md-models-table/components/row-body/component.js @@ -1,7 +1,5 @@ import Component from '@ember/component'; -import { - inject as service -} from '@ember/service'; +import { inject as service } from '@ember/service'; export default Component.extend({ classNames: ['md-row-body'], @@ -22,6 +20,5 @@ export default Component.extend({ collapse() { this.element.classList.add('fade-out-fast'); this.collapseRow(this.index, this.record); - - } + }, }); diff --git a/app/pods/components/md-models-table/components/row-buttons/component.js b/app/pods/components/md-models-table/components/row-buttons/component.js index ae65d7dfe..117b5a2dc 100644 --- a/app/pods/components/md-models-table/components/row-buttons/component.js +++ b/app/pods/components/md-models-table/components/row-buttons/component.js @@ -1,5 +1,5 @@ import Component from '@ember/component'; export default Component.extend({ - classNames: ['md-row-buttons'] + classNames: ['md-row-buttons'], }); diff --git a/app/pods/components/md-models-table/themes/bootstrap3.js b/app/pods/components/md-models-table/themes/bootstrap3.js index b58e15831..227a92c78 100644 --- a/app/pods/components/md-models-table/themes/bootstrap3.js +++ b/app/pods/components/md-models-table/themes/bootstrap3.js @@ -9,7 +9,7 @@ export default Theme.extend({ 'nav-prev': 'fa fa-backward', 'nav-next': 'fa fa-forward', 'nav-last': 'fa fa-fast-forward', - 'caret': 'fa fa-caret-down', + caret: 'fa fa-caret-down', 'select-row': 'fa fa-fw fa-check-square-o', 'deselect-row': 'fa fa-fw fa-square-o', 'select-all-rows': 'fa fa-fw fa-check-square-o', @@ -26,5 +26,5 @@ export default Theme.extend({ expandedRow: 'expanded-row', expandRow: 'expand-row md-collapsible-content', table: 'table table-striped table-bordered table-condensed table-hover', - selectRowOnExpandClick: false + selectRowOnExpandClick: false, }); diff --git a/app/pods/components/md-title/component.js b/app/pods/components/md-title/component.js index 55d68bd22..3caf40a08 100644 --- a/app/pods/components/md-title/component.js +++ b/app/pods/components/md-title/component.js @@ -1,12 +1,8 @@ import Breadcrumbs from 'ember-crumbly/components/bread-crumbs'; import { truncate } from 'ember-cli-string-helpers/helpers/truncate'; import layout from './template'; -import { - computed -} from '@ember/object'; -import { - getOwner -} from '@ember/application'; +import { computed } from '@ember/object'; +import { getOwner } from '@ember/application'; export default Breadcrumbs.extend({ init() { @@ -14,16 +10,17 @@ export default Breadcrumbs.extend({ let applicationInstance = getOwner(this); - this.set('applicationRoute', applicationInstance.lookup( - 'route:application')); + this.set( + 'applicationRoute', + applicationInstance.lookup('route:application'), + ); this.set('classNameBindings', []); }, layout, tagName: '', title: computed('routeHierarchy', function () { return this.routeHierarchy.reduce((val, itm) => { - return val + truncate([itm.title, 28, true]) + (itm.isTail ? '' : - ' | '); + return val + truncate([itm.title, 28, true]) + (itm.isTail ? '' : ' | '); }, ''); }), }); diff --git a/app/pods/components/md-translate/component.js b/app/pods/components/md-translate/component.js index c5fd289ad..06f9061fc 100644 --- a/app/pods/components/md-translate/component.js +++ b/app/pods/components/md-translate/component.js @@ -1,30 +1,16 @@ -import { - alias, - equal, - or -} from '@ember/object/computed'; +import { alias, equal, or } from '@ember/object/computed'; import Component from '@ember/component'; -import { - computed, - get, - set -} from '@ember/object'; -import { - inject as service -} from '@ember/service'; -import { - Promise -} from 'rsvp'; +import { computed, get, set } from '@ember/object'; +import { inject as service } from '@ember/service'; +import { Promise } from 'rsvp'; import moment from 'moment'; -import { - defaultValues -} from 'mdeditor/models/setting'; +import { defaultValues } from 'mdeditor/models/setting'; const errorLevels = { - 'OK': 0, - 'NOTICE': 1, - 'WARNING': 2, - 'ERROR': 3 + OK: 0, + NOTICE: 1, + WARNING: 2, + ERROR: 3, }; const errorClasses = ['success', 'info', 'warning', 'danger']; @@ -59,37 +45,44 @@ export default Component.extend({ writer: null, writerOptions: computed(function () { - return [{ - name: 'FGDC CSDGM', - value: 'fgdc', - type: 'application/xml', - tip: 'Federal Geographic Data Committee Content Standard for Digital Geospatial Metadata' - }, { - name: 'HTML', - value: 'html', - type: 'text/html', - tip: 'HTML "human-readable" and printable report of the metadata content' - }, { - name: 'ISO 19115-3', - value: 'iso19115_3', - type: 'application/xml', - tip: 'International Standards Organization Geographic Information - Metadata 19115-1:2014' - }, { - name: 'ISO 19115-2/19139 (deprecated)', - value: 'iso19115_2', - type: 'application/xml', - tip: 'International Standards Organization Geographic Information - Metadata 19115-2:2009' - }, { - name: 'ISO 19110', - value: 'iso19110', - type: 'application/xml', - tip: 'International Standards Organization Geographic Information - Feature Catalogue 19110:2005' - }, { - name: 'sbJSON', - value: 'sbJson', - type: 'application/json', - tip: 'USGS ScienceBase metadata format' - }]; + return [ + { + name: 'FGDC CSDGM', + value: 'fgdc', + type: 'application/xml', + tip: 'Federal Geographic Data Committee Content Standard for Digital Geospatial Metadata', + }, + { + name: 'HTML', + value: 'html', + type: 'text/html', + tip: 'HTML "human-readable" and printable report of the metadata content', + }, + { + name: 'ISO 19115-3', + value: 'iso19115_3', + type: 'application/xml', + tip: 'International Standards Organization Geographic Information - Metadata 19115-1:2014', + }, + { + name: 'ISO 19115-2/19139 (deprecated)', + value: 'iso19115_2', + type: 'application/xml', + tip: 'International Standards Organization Geographic Information - Metadata 19115-2:2009', + }, + { + name: 'ISO 19110', + value: 'iso19110', + type: 'application/xml', + tip: 'International Standards Organization Geographic Information - Feature Catalogue 19110:2005', + }, + { + name: 'sbJSON', + value: 'sbJson', + type: 'application/json', + tip: 'USGS ScienceBase metadata format', + }, + ]; }), result: null, @@ -112,15 +105,14 @@ export default Component.extend({ errorSubTitle: computed('subTitle', function () { let err = this.errors; - if(err.length) { + if (err.length) { return this.errorTitle + ' ocurred during translation.'; } return null; }), writeObj: computed('writer', function () { - return this.writerOptions - .findBy('value', this.writer); + return this.writerOptions.findBy('value', this.writer); }), writerType: computed('writeObj', function () { @@ -134,8 +126,9 @@ export default Component.extend({ apiURL: or('settings.data.mdTranslatorAPI', 'defaultAPI'), isHtml: computed('writerType', function () { //IE does not supoprt srcdoc, so default to non-html display - return this.writerType === 'html' && 'srcdoc' in document.createElement( - 'iframe'); + return ( + this.writerType === 'html' && 'srcdoc' in document.createElement('iframe') + ); }), messages: alias('errors'), @@ -156,7 +149,8 @@ export default Component.extend({ this._clearResult(); set(this, 'isLoading', true); - this.ajax.request(url, { + this.ajax + .request(url, { type: 'POST', data: { //file: JSON.stringify(cleaner.clean(json)), @@ -166,41 +160,52 @@ export default Component.extend({ showAllTags: this.showAllTags, forceValid: this.forceValid, validate: 'normal', - format: 'json' + format: 'json', }, - context: this + context: this, }) - .then(function (response) { - set(cmp, 'isLoading', false); - - let level = Math.max(...[response.readerExecutionStatus, - response.readerStructureStatus, - response.readerValidationStatus, response.writerStatus - ].map(itm => errorLevels[itm])); - - set(cmp, 'errorLevel', level); - set(cmp, 'errors', response.readerExecutionMessages.concat( - response.readerStructureMessages, - response.readerValidationMessages.length ? response.readerValidationMessages[ - 0] : response.readerValidationMessages, - response.writerMessages).map(itm => itm.split(':'))); - set(cmp, 'result', response.writerOutput); - if(!response.success) { - get(cmp, 'flashMessages') - .danger('Translation error!'); - } - }, (response) => { - let error = - `mdTranslator Server error: - ${response.status}: ${response.statusText}`; + .then( + function (response) { + set(cmp, 'isLoading', false); - set(cmp, 'errorLevel', 3); - set(cmp, 'isLoading', false); - set(cmp, 'xhrError', error); - get(cmp, 'flashMessages') - .danger(error); - }); + let level = Math.max( + ...[ + response.readerExecutionStatus, + response.readerStructureStatus, + response.readerValidationStatus, + response.writerStatus, + ].map((itm) => errorLevels[itm]), + ); + + set(cmp, 'errorLevel', level); + set( + cmp, + 'errors', + response.readerExecutionMessages + .concat( + response.readerStructureMessages, + response.readerValidationMessages.length + ? response.readerValidationMessages[0] + : response.readerValidationMessages, + response.writerMessages, + ) + .map((itm) => itm.split(':')), + ); + set(cmp, 'result', response.writerOutput); + if (!response.success) { + get(cmp, 'flashMessages').danger('Translation error!'); + } + }, + (response) => { + let error = `mdTranslator Server error: + ${response.status}: ${response.statusText}`; + set(cmp, 'errorLevel', 3); + set(cmp, 'isLoading', false); + set(cmp, 'xhrError', error); + get(cmp, 'flashMessages').danger(error); + }, + ); }, saveResult() { let title = get(this, 'model.title'); @@ -209,9 +214,9 @@ export default Component.extend({ window.saveAs( new Blob([result], { - type: `${writer.type};charset=utf-8` + type: `${writer.type};charset=utf-8`, }), - `${title}_${moment().format('YYYYMMDD')}.${this.writerType}` + `${title}_${moment().format('YYYYMMDD')}.${this.writerType}`, ); }, clearResult() { @@ -221,27 +226,31 @@ export default Component.extend({ let promise = new Promise((resolve, reject) => { let parsed = JSON.parse(this.result); - if(parsed) { + if (parsed) { resolve(parsed); } else { reject('JSON not valid'); } }); - promise.then((obj) => { - set(this, 'result', JSON.stringify(obj, null, 2)); - }).catch((error) => { - //console.log(error); - this.flashMessages.danger(error.message); - }); + promise + .then((obj) => { + set(this, 'result', JSON.stringify(obj, null, 2)); + }) + .catch((error) => { + //console.log(error); + this.flashMessages.danger(error.message); + }); }, errorClass(level) { return errorClasses[errorLevels[level]] || 'primary'; }, formatMessage(message) { - return message ? message.trim().replace(/^([A-Z]{2,})/g, match => - match.toLowerCase()) : - 'context not provided'; - } - } + return message + ? message + .trim() + .replace(/^([A-Z]{2,})/g, (match) => match.toLowerCase()) + : 'context not provided'; + }, + }, }); diff --git a/app/pods/components/models-table/table-body/component.js b/app/pods/components/models-table/table-body/component.js index 0282dfd5a..85c094696 100644 --- a/app/pods/components/models-table/table-body/component.js +++ b/app/pods/components/models-table/table-body/component.js @@ -3,9 +3,9 @@ import Body from 'ember-models-table/components/models-table/table-body'; export default Body.extend({ actions: { clickOnRowExpand(index, record) { - if(this.themeInstance.selectRowOnExpandClick) { + if (this.themeInstance.selectRowOnExpandClick) { this.clickOnRow(index, record); } - } - } + }, + }, }); diff --git a/app/pods/components/object/md-address/component.js b/app/pods/components/object/md-address/component.js index 6111be540..3fbc0e4dc 100644 --- a/app/pods/components/object/md-address/component.js +++ b/app/pods/components/object/md-address/component.js @@ -58,6 +58,6 @@ export default Component.extend({ this.set('addressType', A()); this.set('deliveryPoint', A()); - } - }) + }, + }), }); diff --git a/app/pods/components/object/md-address/md-address-block/component.js b/app/pods/components/object/md-address/md-address-block/component.js index bb93d73f3..557064773 100644 --- a/app/pods/components/object/md-address/md-address-block/component.js +++ b/app/pods/components/object/md-address/md-address-block/component.js @@ -1,4 +1,3 @@ import Component from '@ember/component'; -export default Component.extend({ -}); +export default Component.extend({}); diff --git a/app/pods/components/object/md-allocation/component.js b/app/pods/components/object/md-allocation/component.js index c9cdf1b8b..bb1e4f5cc 100644 --- a/app/pods/components/object/md-allocation/component.js +++ b/app/pods/components/object/md-allocation/component.js @@ -2,24 +2,21 @@ import Component from '@ember/component'; import { alias } from '@ember/object/computed'; import { once } from '@ember/runloop'; import { set, get } from '@ember/object'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; +import { validator, buildValidations } from 'ember-cp-validations'; const Validations = buildValidations({ - 'amount': [ + amount: [ validator('presence', { presence: true, - ignoreBlank: true - }) + ignoreBlank: true, + }), ], - 'currency': [ + currency: [ validator('presence', { presence: true, - ignoreBlank: true - }) - ] + ignoreBlank: true, + }), + ], }); export default Component.extend(Validations, { @@ -28,10 +25,26 @@ export default Component.extend(Validations, { let model = this.model; - once(this, function() { - set(model, 'currency', get(model, 'currency') !== undefined ? get(model, 'currency') : 'USD'); - set(model, 'onlineResource', get(model, 'onlineResource') !== undefined ? get(model, 'onlineResource') : []); - set(model, 'responsibleParty', get(model, 'responsibleParty') !== undefined ? get(model, 'responsibleParty') : []); + once(this, function () { + set( + model, + 'currency', + get(model, 'currency') !== undefined ? get(model, 'currency') : 'USD', + ); + set( + model, + 'onlineResource', + get(model, 'onlineResource') !== undefined + ? get(model, 'onlineResource') + : [], + ); + set( + model, + 'responsibleParty', + get(model, 'responsibleParty') !== undefined + ? get(model, 'responsibleParty') + : [], + ); }); }, /** @@ -55,5 +68,5 @@ export default Component.extend(Validations, { 'data-spy': 'Allocation', tagName: 'form', amount: alias('model.amount'), - currency: alias('model.currency') + currency: alias('model.currency'), }); diff --git a/app/pods/components/object/md-array-table/component.js b/app/pods/components/object/md-array-table/component.js index fba80b40e..478864ff7 100644 --- a/app/pods/components/object/md-array-table/component.js +++ b/app/pods/components/object/md-array-table/component.js @@ -26,10 +26,9 @@ export default Component.extend(Template, { didReceiveAttrs() { this._super(...arguments); - if(this.value) { + if (this.value) { this.applyTemplateArray('value'); } - }, attributeBindings: ['data-spy'], @@ -102,7 +101,7 @@ export default Component.extend(Template, { * @type {Boolean} * @default false */ - shadow:true, + shadow: true, /** * Indicates whether at least one item is required is required in the value @@ -164,7 +163,7 @@ export default Component.extend(Template, { columnArray: computed('columns', function () { let columns = this.columns; - return (typeof columns === 'string') ? columns.split(',') : null; + return typeof columns === 'string' ? columns.split(',') : null; }), /** @@ -194,9 +193,9 @@ export default Component.extend(Template, { let isCollapsed = this.isCollapsed; let value = this.arrayValues; - if(isCollapsed !== undefined) { + if (isCollapsed !== undefined) { return isCollapsed; - } else if(isArray(value) && get(value, 'length') > 0) { + } else if (isArray(value) && get(value, 'length') > 0) { return false; } else { return true; @@ -240,17 +239,21 @@ export default Component.extend(Template, { pillColor: computed('value.[]', 'required', function () { let count = this.get('value.length') || 0; let required = this.required; - return (count === 0) ? required ? 'label-danger' : 'label-warning' : - 'label-info'; + return count === 0 + ? required + ? 'label-danger' + : 'label-warning' + : 'label-info'; }), alertTipMessage: computed('tipModel', 'tipPath', 'errorMessage', function () { - if(this.errorMessage) { + if (this.errorMessage) { return this.errorMessage; } - return this.tipModel ? this.tipModel.get( - `validations.attrs.${this.tipPath}.message`) : null; + return this.tipModel + ? this.tipModel.get(`validations.attrs.${this.tipPath}.message`) + : null; }), onChange() {}, @@ -263,12 +266,12 @@ export default Component.extend(Template, { valueChanged() { run.schedule('afterRender', this, function () { let panel = this.$('.panel-collapse'); - let input = this.$('.panel-collapse tbody tr:last-of-type input') - .first(); + let input = this.$('.panel-collapse tbody tr:last-of-type input').first(); - if(panel.hasClass('in')) { + if (panel.hasClass('in')) { input.focus(); - } else { //add a one-time listener to wait until panel is open + } else { + //add a one-time listener to wait until panel is open panel.one('shown.bs.collapse', function () { input.focus(); }); @@ -284,17 +287,20 @@ export default Component.extend(Template, { const Template = this.templateClass; const owner = getOwner(this); - this.arrayValues.pushObject(typeOf(Template) === 'class' ? Template - .create(owner.ownerInjection()) : { value: null }); + this.arrayValues.pushObject( + typeOf(Template) === 'class' + ? Template.create(owner.ownerInjection()) + : { value: null }, + ); //this.templateAsObject ? {} : null); this.valueChanged(); }, deleteItem: function (item, idx) { - if(this.arrayValues.length > idx) { + if (this.arrayValues.length > idx) { this.arrayValues.removeAt(idx); } this.valueChanged(); - } - } + }, + }, }); diff --git a/app/pods/components/object/md-associated/component.js b/app/pods/components/object/md-associated/component.js index 2d321f74e..a1c968df1 100644 --- a/app/pods/components/object/md-associated/component.js +++ b/app/pods/components/object/md-associated/component.js @@ -3,18 +3,15 @@ import Component from '@ember/component'; import { get, set, computed } from '@ember/object'; import { once } from '@ember/runloop'; import { inject as service } from '@ember/service'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; +import { validator, buildValidations } from 'ember-cp-validations'; const Validations = buildValidations({ - 'associationType': [ + associationType: [ validator('presence', { presence: true, - ignoreBlank: true - }) - ] + ignoreBlank: true, + }), + ], }); export default Component.extend(Validations, { @@ -25,11 +22,33 @@ export default Component.extend(Validations, { let model = this.model; - once(this, function() { - set(model, 'scope', get(model, 'scope') !== undefined ? get(model, 'scope') : {}); - set(model, 'resourceType', get(model, 'resourceType') !== undefined ? get(model, 'resourceType') : []); - set(model, 'resourceCitation', get(model, 'resourceCitation') !== undefined ? get(model, 'resourceCitation') : {}); - set(model, 'metadataCitation', get(model, 'metadataCitation') !== undefined ? get(model, 'metadataCitation') : {}); + once(this, function () { + set( + model, + 'scope', + get(model, 'scope') !== undefined ? get(model, 'scope') : {}, + ); + set( + model, + 'resourceType', + get(model, 'resourceType') !== undefined + ? get(model, 'resourceType') + : [], + ); + set( + model, + 'resourceCitation', + get(model, 'resourceCitation') !== undefined + ? get(model, 'resourceCitation') + : {}, + ); + set( + model, + 'metadataCitation', + get(model, 'metadataCitation') !== undefined + ? get(model, 'metadataCitation') + : {}, + ); }); }, @@ -54,24 +73,25 @@ export default Component.extend(Validations, { associationType: alias('model.associationType'), - linkedRecord: computed('model.mdRecordId', function() { - return this.store.peekAll('record') + linkedRecord: computed('model.mdRecordId', function () { + return this.store + .peekAll('record') .filterBy('recordId', get(this, 'model.mdRecordId')) .get('firstObject'); }), linkedAssociation: computed( 'linkedRecord.json.metadata.associatedResource.[]', - function() { + function () { let ar = this.get('linkedRecord.json.metadata.associatedResource'); - if(!ar) { + if (!ar) { return null; } - return ar.findBy( - 'mdRecordId', this.recordId); - }), + return ar.findBy('mdRecordId', this.recordId); + }, + ), linkedAssociationType: computed('linkedAssociation.associationType', { get() { @@ -81,12 +101,18 @@ export default Component.extend(Validations, { let assoc = this.linkedAssociation; let model = this.linkedRecord; - if(!assoc) { - set(model, 'json.metadata.associatedResource', get(model, 'json.metadata.associatedResource') !== undefined ? get(model, 'json.metadata.associatedResource') : []); + if (!assoc) { + set( + model, + 'json.metadata.associatedResource', + get(model, 'json.metadata.associatedResource') !== undefined + ? get(model, 'json.metadata.associatedResource') + : [], + ); model.get('json.metadata.associatedResource').pushObject({ mdRecordId: this.recordId, - associationType: value + associationType: value, }); model.notifyPropertyChange('hasDirtyHash'); @@ -98,10 +124,10 @@ export default Component.extend(Validations, { model.notifyPropertyChange('hasDirtyHash'); return value; - } + }, }), editLinked(record) { return record; - } + }, }); diff --git a/app/pods/components/object/md-associated/preview/component.js b/app/pods/components/object/md-associated/preview/component.js index 3e131fced..073705dc1 100644 --- a/app/pods/components/object/md-associated/preview/component.js +++ b/app/pods/components/object/md-associated/preview/component.js @@ -20,25 +20,30 @@ export default Component.extend({ */ muted: true, - citation: computed('item', 'item.mdRecordId', function() { - if(!this.get('item.mdRecordId')) { + citation: computed('item', 'item.mdRecordId', function () { + if (!this.get('item.mdRecordId')) { return this.get('item.resourceCitation'); } - let linked = this.store.peekAll('record') + let linked = this.store + .peekAll('record') .filterBy('recordId', get(this, 'item.mdRecordId')) .get('firstObject.json.metadata.resourceInfo.citation'); return linked || this.get('item.resourceCitation'); }), - metadataIdentifier: computed('item.{metadataCitation.identifier,mdRecordId}', function() { - if(!this.get('item.mdRecordId')) { - return this.get('item.metadataCitation.identifier.0'); - } - - return this.store.peekAll('record') - .filterBy('recordId', get(this, 'item.mdRecordId')) - .get('firstObject.json.metadata.metadataInfo.metadataIdentifier'); - }), + metadataIdentifier: computed( + 'item.{metadataCitation.identifier,mdRecordId}', + function () { + if (!this.get('item.mdRecordId')) { + return this.get('item.metadataCitation.identifier.0'); + } + + return this.store + .peekAll('record') + .filterBy('recordId', get(this, 'item.mdRecordId')) + .get('firstObject.json.metadata.metadataInfo.metadataIdentifier'); + }, + ), }); diff --git a/app/pods/components/object/md-attribute/component.js b/app/pods/components/object/md-attribute/component.js index 041ac6993..9d89005d3 100644 --- a/app/pods/components/object/md-attribute/component.js +++ b/app/pods/components/object/md-attribute/component.js @@ -1,42 +1,35 @@ import Component from '@ember/component'; import EmberObject, { set, get, computed } from '@ember/object'; -import { - alias -} from '@ember/object/computed'; -import { - once -} from '@ember/runloop'; +import { alias } from '@ember/object/computed'; +import { once } from '@ember/runloop'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; +import { validator, buildValidations } from 'ember-cp-validations'; const Validations = buildValidations({ - 'codeName': [ + codeName: [ validator('presence', { presence: true, - ignoreBlank: true - }) + ignoreBlank: true, + }), ], - 'dataType': [ + dataType: [ validator('presence', { presence: true, - ignoreBlank: true - }) + ignoreBlank: true, + }), ], - 'allowNull': [ + allowNull: [ validator('presence', { presence: true, - ignoreBlank: true - }) + ignoreBlank: true, + }), ], - 'definition': [ + definition: [ validator('presence', { presence: true, - ignoreBlank: true - }) - ] + ignoreBlank: true, + }), + ], }); const TemplateClass = EmberObject.extend(Validations, { @@ -48,7 +41,7 @@ const TemplateClass = EmberObject.extend(Validations, { set(this, 'alias', []); set(this, 'valueRange', []); set(this, 'timePeriod', []); - } + }, }); const theComp = Component.extend(Validations, { @@ -58,11 +51,31 @@ const theComp = Component.extend(Validations, { let model = this.model; once(this, function () { - set(model, 'allowNull', get(model, 'allowNull') !== undefined ? get(model, 'allowNull') : false); - set(model, 'reference', get(model, 'reference') !== undefined ? get(model, 'reference') : {}); - set(model, 'alias', get(model, 'alias') !== undefined ? get(model, 'alias') : []); - set(model, 'valueRange', get(model, 'valueRange') !== undefined ? get(model, 'valueRange') : []); - set(model, 'timePeriod', get(model, 'timePeriod') !== undefined ? get(model, 'timePeriod') : []); + set( + model, + 'allowNull', + get(model, 'allowNull') !== undefined ? get(model, 'allowNull') : false, + ); + set( + model, + 'reference', + get(model, 'reference') !== undefined ? get(model, 'reference') : {}, + ); + set( + model, + 'alias', + get(model, 'alias') !== undefined ? get(model, 'alias') : [], + ); + set( + model, + 'valueRange', + get(model, 'valueRange') !== undefined ? get(model, 'valueRange') : [], + ); + set( + model, + 'timePeriod', + get(model, 'timePeriod') !== undefined ? get(model, 'timePeriod') : [], + ); }); }, @@ -90,44 +103,41 @@ const theComp = Component.extend(Validations, { allowNull: alias('model.allowNull'), domains: alias('dictionary.domain'), - domainList: computed('domains.{@each.domainId,@each.codeName}', - function () { - let domains = this.domains || []; + domainList: computed('domains.{@each.domainId,@each.codeName}', function () { + let domains = this.domains || []; - return domains.map((domain) => { - if(get(domain, 'domainId')) { - return { - codeId: get(domain, 'domainId'), - codeName: get(domain, 'codeName'), - tooltip: get(domain, 'description') - }; - } - }); - }), - - rangeTemplate: EmberObject.extend(buildValidations({ - 'minRangeValue': [ - validator('presence', { - presence: true, - ignoreBlank: true - }) - ], - 'maxRangeValue': [ - validator('presence', { - presence: true, - ignoreBlank: true - }) - ] - }), { - init() { - this._super(...arguments); - } + return domains.map((domain) => { + if (get(domain, 'domainId')) { + return { + codeId: get(domain, 'domainId'), + codeName: get(domain, 'codeName'), + tooltip: get(domain, 'description'), + }; + } + }); }), + + rangeTemplate: EmberObject.extend( + buildValidations({ + minRangeValue: [ + validator('presence', { + presence: true, + ignoreBlank: true, + }), + ], + maxRangeValue: [ + validator('presence', { + presence: true, + ignoreBlank: true, + }), + ], + }), + { + init() { + this._super(...arguments); + }, + }, + ), }); -export { - Validations, - TemplateClass as Template, - theComp as - default -}; +export { Validations, TemplateClass as Template, theComp as default }; diff --git a/app/pods/components/object/md-attribute/preview/component.js b/app/pods/components/object/md-attribute/preview/component.js index be25a967e..760193521 100644 --- a/app/pods/components/object/md-attribute/preview/component.js +++ b/app/pods/components/object/md-attribute/preview/component.js @@ -1,8 +1,6 @@ import Component from '@ember/component'; import { alias } from '@ember/object/computed'; -import { - Validations -} from '../component'; +import { Validations } from '../component'; export default Component.extend(Validations, { tagName: '', @@ -10,5 +8,5 @@ export default Component.extend(Validations, { codeName: alias('model.codeName'), dataType: alias('model.dataType'), definition: alias('model.definition'), - allowNull: alias('model.allowNull') + allowNull: alias('model.allowNull'), }); diff --git a/app/pods/components/object/md-bbox/component.js b/app/pods/components/object/md-bbox/component.js index 8863c299e..32c832734 100644 --- a/app/pods/components/object/md-bbox/component.js +++ b/app/pods/components/object/md-bbox/component.js @@ -1,45 +1,42 @@ import Component from '@ember/component'; import { readOnly, alias } from '@ember/object/computed'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; +import { validator, buildValidations } from 'ember-cp-validations'; const Validations = buildValidations({ - 'north': [ + north: [ validator('number', { allowNone: false, gte: -90, - lte: 90 - }) + lte: 90, + }), ], - 'south': [ + south: [ validator('number', { allowNone: false, gte: -90, - lte: 90 + lte: 90, }), validator('number', { - lte: readOnly('model.north') - }) + lte: readOnly('model.north'), + }), ], - 'east': [ + east: [ validator('number', { allowNone: false, gte: -180, - lte: 180 - }) + lte: 180, + }), ], - 'west': [ + west: [ validator('number', { allowNone: false, gte: -180, - lte: 180 + lte: 180, }), validator('number', { - lte: readOnly('model.east') - }) - ] + lte: readOnly('model.east'), + }), + ], }); export default Component.extend(Validations, { @@ -48,7 +45,7 @@ export default Component.extend(Validations, { north: alias('model.northLatitude'), south: alias('model.southLatitude'), east: alias('model.eastLongitude'), - west: alias('model.westLongitude') + west: alias('model.westLongitude'), // btnText: computed('isTruelyValid', function() { // let text = this.get('validations.isTruelyValid') ? '' diff --git a/app/pods/components/object/md-citation-array/component.js b/app/pods/components/object/md-citation-array/component.js index d7c334b1a..fab52cae6 100644 --- a/app/pods/components/object/md-citation-array/component.js +++ b/app/pods/components/object/md-citation-array/component.js @@ -3,11 +3,10 @@ import { A } from '@ember/array'; import Component from '@ember/component'; export default Component.extend({ - init() { this._super(...arguments); - if(!this.model) { + if (!this.model) { this.set('model', A()); } }, @@ -67,6 +66,6 @@ export default Component.extend({ init() { this._super(...arguments); //this.set('authority', {}); - } - }) + }, + }), }); diff --git a/app/pods/components/object/md-citation/component.js b/app/pods/components/object/md-citation/component.js index e6c7dfa71..605b193a2 100644 --- a/app/pods/components/object/md-citation/component.js +++ b/app/pods/components/object/md-citation/component.js @@ -2,16 +2,62 @@ import Component from '@ember/component'; import { set, get } from '@ember/object'; import { once } from '@ember/runloop'; -const formatCitation = function(model) { - set(model, 'responsibleParty', get(model, 'responsibleParty') !== undefined ? get(model, 'responsibleParty') : []); - set(model, 'date', get(model, 'date') !== undefined ? get(model, 'date') : []); - set(model, 'alternateTitle', get(model, 'alternateTitle') !== undefined ? get(model, 'alternateTitle') : []); - set(model, 'presentationForm', get(model, 'presentationForm') !== undefined ? get(model, 'presentationForm') : []); - set(model, 'onlineResource', get(model, 'onlineResource') !== undefined ? get(model, 'onlineResource') : []); - set(model, 'identifier', get(model, 'identifier') !== undefined ? get(model, 'identifier') : []); - set(model, 'otherCitationDetails', get(model, 'otherCitationDetails') !== undefined ? get(model, 'otherCitationDetails') : []); - set(model, 'graphic', get(model, 'graphic') !== undefined ? get(model, 'graphic') : []); - set(model, 'series', get(model, 'series') !== undefined ? get(model, 'series') : {}); +const formatCitation = function (model) { + set( + model, + 'responsibleParty', + get(model, 'responsibleParty') !== undefined + ? get(model, 'responsibleParty') + : [], + ); + set( + model, + 'date', + get(model, 'date') !== undefined ? get(model, 'date') : [], + ); + set( + model, + 'alternateTitle', + get(model, 'alternateTitle') !== undefined + ? get(model, 'alternateTitle') + : [], + ); + set( + model, + 'presentationForm', + get(model, 'presentationForm') !== undefined + ? get(model, 'presentationForm') + : [], + ); + set( + model, + 'onlineResource', + get(model, 'onlineResource') !== undefined + ? get(model, 'onlineResource') + : [], + ); + set( + model, + 'identifier', + get(model, 'identifier') !== undefined ? get(model, 'identifier') : [], + ); + set( + model, + 'otherCitationDetails', + get(model, 'otherCitationDetails') !== undefined + ? get(model, 'otherCitationDetails') + : [], + ); + set( + model, + 'graphic', + get(model, 'graphic') !== undefined ? get(model, 'graphic') : [], + ); + set( + model, + 'series', + get(model, 'series') !== undefined ? get(model, 'series') : {}, + ); return model; }; @@ -39,8 +85,11 @@ const theComp = Component.extend({ //let model = getWithDefault(this, 'model', {}) || {}; - once(this, function() { - this.set('model', get(this, 'model') !== undefined ? get(this, 'model') : {}); + once(this, function () { + this.set( + 'model', + get(this, 'model') !== undefined ? get(this, 'model') : {}, + ); formatCitation(this.model); }); }, @@ -89,11 +138,7 @@ const theComp = Component.extend({ * @type {Boolean} * @default "false" */ - simpleIdentifier: false + simpleIdentifier: false, }); -export { - formatCitation, - theComp as - default -}; +export { formatCitation, theComp as default }; diff --git a/app/pods/components/object/md-citation/preview/component.js b/app/pods/components/object/md-citation/preview/component.js index f29c6e2cc..34249ccfe 100644 --- a/app/pods/components/object/md-citation/preview/component.js +++ b/app/pods/components/object/md-citation/preview/component.js @@ -9,7 +9,7 @@ export default Component.extend({ * @default "Citation" * @required */ - title: "Citation", + title: 'Citation', /** * Indicates if object is required. @@ -41,6 +41,6 @@ export default Component.extend({ actions: { editCitation(scrollTo) { this.editCitation(scrollTo); - } - } + }, + }, }); diff --git a/app/pods/components/object/md-constraint/component.js b/app/pods/components/object/md-constraint/component.js index 05e1103ab..26fdb53f6 100644 --- a/app/pods/components/object/md-constraint/component.js +++ b/app/pods/components/object/md-constraint/component.js @@ -28,31 +28,51 @@ export default Component.extend(Validations, { console.log('constraint model', model); once(this, function () { - set(model, 'useLimitation', get(model, 'useLimitation') !== undefined ? get(model, 'useLimitation') : []); - set(model, 'graphic', get(model, 'graphic') !== undefined ? get(model, 'graphic') : []); + set( + model, + 'useLimitation', + get(model, 'useLimitation') !== undefined + ? get(model, 'useLimitation') + : [], + ); + set( + model, + 'graphic', + get(model, 'graphic') !== undefined ? get(model, 'graphic') : [], + ); set( model, 'responsibleParty', - get(model, 'responsibleParty') !== undefined ? get(model, 'responsibleParty') : [] + get(model, 'responsibleParty') !== undefined + ? get(model, 'responsibleParty') + : [], ); set( model, 'legal', - get(model, 'legal') !== undefined ? get(model, 'legal') : { - accessConstraint: [], - useConstraint: [], - otherConstraint: [], - } + get(model, 'legal') !== undefined + ? get(model, 'legal') + : { + accessConstraint: [], + useConstraint: [], + otherConstraint: [], + }, + ); + set( + model, + 'security', + get(model, 'security') !== undefined ? get(model, 'security') : {}, ); - set(model, 'security', get(model, 'security') !== undefined ? get(model, 'security') : {}); set( model, 'releasability', - get(model, 'releasability') !== undefined ? get(model, 'releasability') : { - addressee: [], - statement: '', - dissemiantionConstraint: [], - } + get(model, 'releasability') !== undefined + ? get(model, 'releasability') + : { + addressee: [], + statement: '', + dissemiantionConstraint: [], + }, ); }); }, diff --git a/app/pods/components/object/md-contact-identifier-array/component.js b/app/pods/components/object/md-contact-identifier-array/component.js index 87aa026d4..60a7245e8 100644 --- a/app/pods/components/object/md-contact-identifier-array/component.js +++ b/app/pods/components/object/md-contact-identifier-array/component.js @@ -1,27 +1,23 @@ import Component from '@ember/component'; import EmObject, { set } from '@ember/object'; import { A } from '@ember/array'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; +import { validator, buildValidations } from 'ember-cp-validations'; const Validations = buildValidations({ - 'identifier': [ + identifier: [ validator('presence', { presence: true, - ignoreBlank: true - }) + ignoreBlank: true, + }), ], - 'namespace': [ + namespace: [ validator('presence', { - presence: true - }) - ] + presence: true, + }), + ], }); export default Component.extend({ - /** * mdEditor class for input and edit of mdJSON 'externalIdentifiers' object. * The class manages the maintenance of an array of phone externalIdentifiers. @@ -52,7 +48,6 @@ export default Component.extend({ init() { this._super(...arguments); this.set('service', A()); - } - }) - + }, + }), }); diff --git a/app/pods/components/object/md-dataquality/component.js b/app/pods/components/object/md-dataquality/component.js index 041df0650..d2f4f6ea7 100644 --- a/app/pods/components/object/md-dataquality/component.js +++ b/app/pods/components/object/md-dataquality/component.js @@ -10,13 +10,23 @@ export default Component.extend({ let model = get(this, 'model'); once(function () { - set(model, 'scope', get(model, 'scope') !== undefined ? get(model, 'scope') : {}); + set( + model, + 'scope', + get(model, 'scope') !== undefined ? get(model, 'scope') : {}, + ); set( model, 'systemIdentifier', - get(model, 'systemIdentifier') !== undefined ? get(model, 'systemIdentifier') : { uid: uuidV4() } + get(model, 'systemIdentifier') !== undefined + ? get(model, 'systemIdentifier') + : { uid: uuidV4() }, + ); + set( + model, + 'report', + get(model, 'report') !== undefined ? get(model, 'report') : [], ); - set(model, 'report', get(model, 'report') !== undefined ? get(model, 'report') : []); }); }, diff --git a/app/pods/components/object/md-date-array/component.js b/app/pods/components/object/md-date-array/component.js index 4e7791a6b..446d7df87 100644 --- a/app/pods/components/object/md-date-array/component.js +++ b/app/pods/components/object/md-date-array/component.js @@ -6,7 +6,7 @@ export default Component.extend({ init() { this._super(...arguments); - if(isNone(this.value)) { + if (isNone(this.value)) { set(this, 'value', []); } }, @@ -22,8 +22,8 @@ export default Component.extend({ this._super(...arguments); this.setProperties({ date: null, - dateType: null + dateType: null, }); - } - }) + }, + }), }); diff --git a/app/pods/components/object/md-date/component.js b/app/pods/components/object/md-date/component.js index efb1b35db..7fed7d9c2 100644 --- a/app/pods/components/object/md-date/component.js +++ b/app/pods/components/object/md-date/component.js @@ -1,19 +1,16 @@ import { alias } from '@ember/object/computed'; import Component from '@ember/component'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; +import { validator, buildValidations } from 'ember-cp-validations'; const Validations = buildValidations({ date: validator('presence', { presence: true, - ignoreBlank: true + ignoreBlank: true, }), dateType: validator('presence', { presence: true, - ignoreBlank: true - }) + ignoreBlank: true, + }), }); export default Component.extend(Validations, { @@ -25,8 +22,7 @@ export default Component.extend(Validations, { // } }, - tagName:'', + tagName: '', date: alias('model.date'), - dateType: alias('model.dateType') - + dateType: alias('model.dateType'), }); diff --git a/app/pods/components/object/md-distribution/component.js b/app/pods/components/object/md-distribution/component.js index 5d7b3e2a8..2c0267ec4 100644 --- a/app/pods/components/object/md-distribution/component.js +++ b/app/pods/components/object/md-distribution/component.js @@ -2,36 +2,38 @@ import Component from '@ember/component'; import { once } from '@ember/runloop'; import { set, get } from '@ember/object'; import { alias, notEmpty, not } from '@ember/object/computed'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; +import { validator, buildValidations } from 'ember-cp-validations'; const Validations = buildValidations({ - 'distributor': [ + distributor: [ validator('array-required', { track: ['distributor'], disabled: notEmpty('model.description'), - message: 'At least one distributor is required if description is empty.' - }) + message: 'At least one distributor is required if description is empty.', + }), ], - 'description': [ + description: [ validator('presence', { presence: true, ignoreBlank: true, disabled: notEmpty('model.distributor'), - message: 'A description is required if a distributor is not entered.' - }) - ] + message: 'A description is required if a distributor is not entered.', + }), + ], }); export default Component.extend(Validations, { didReceiveAttrs() { this._super(...arguments); - once(this, function() { - set(this.model, 'distributor', - get(this.model, 'distributor') !== undefined ? get(this.model, 'distributor') : []); + once(this, function () { + set( + this.model, + 'distributor', + get(this.model, 'distributor') !== undefined + ? get(this.model, 'distributor') + : [], + ); }); }, @@ -79,17 +81,19 @@ export default Component.extend(Validations, { tagName: 'section', distributor: alias('model.distributor'), description: alias('model.description'), - distributorRequired: not('validations.attrs.distributor.options.array-required.disabled'), + distributorRequired: not( + 'validations.attrs.distributor.options.array-required.disabled', + ), actions: { - editDistributor(index){ + editDistributor(index) { this.editDistributor(index); }, - deleteDistribution(index){ + deleteDistribution(index) { this.deleteDistribution(index); }, - addDistribution(){ + addDistribution() { this.addDistribution(); }, - } + }, }); diff --git a/app/pods/components/object/md-distributor/component.js b/app/pods/components/object/md-distributor/component.js index ef3abfcf5..ee9e66f0f 100644 --- a/app/pods/components/object/md-distributor/component.js +++ b/app/pods/components/object/md-distributor/component.js @@ -2,23 +2,20 @@ import { alias } from '@ember/object/computed'; import Component from '@ember/component'; import { get, set, computed } from '@ember/object'; import { once } from '@ember/runloop'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; +import { validator, buildValidations } from 'ember-cp-validations'; import { A } from '@ember/array'; const Validations = buildValidations({ - 'role': [ + role: [ validator('presence', { presence: true, - ignoreBlank: true - }) + ignoreBlank: true, + }), ], - 'contacts': validator('length', { + contacts: validator('length', { min: 1, - message: 'At least one contact is required.' - }) + message: 'At least one contact is required.', + }), }); export default Component.extend(Validations, { @@ -27,14 +24,28 @@ export default Component.extend(Validations, { let model = this.model; - once(this, function() { - set(model, 'contact', model.contact ? model.contact : { - role: null, - party: [] - }); - set(model, 'orderProcess', A(model.orderProcess ? model.orderProcess : [{}])); - set(model, 'transferOption', A(model.transferOption ? model.transferOption : [{}])); -}); + once(this, function () { + set( + model, + 'contact', + model.contact + ? model.contact + : { + role: null, + party: [], + }, + ); + set( + model, + 'orderProcess', + A(model.orderProcess ? model.orderProcess : [{}]), + ); + set( + model, + 'transferOption', + A(model.transferOption ? model.transferOption : [{}]), + ); + }); }, tagName: 'form', @@ -65,17 +76,17 @@ export default Component.extend(Validations, { set(key, value) { let map = value.map((itm) => { return { - contactId: itm + contactId: itm, }; }); set(this, 'model.contact.party', map); return value; - } + }, }), actions: { - editTransferOption(index){ + editTransferOption(index) { this.editTransferOption(index); - } - } + }, + }, }); diff --git a/app/pods/components/object/md-distributor/preview/component.js b/app/pods/components/object/md-distributor/preview/component.js index 23ad852e8..fae8b4c8c 100644 --- a/app/pods/components/object/md-distributor/preview/component.js +++ b/app/pods/components/object/md-distributor/preview/component.js @@ -7,5 +7,5 @@ export default Component.extend({ this.tagName = this.isTable ? 'td' : 'div'; }, - classNames: ['property'] + classNames: ['property'], }); diff --git a/app/pods/components/object/md-documentation/component.js b/app/pods/components/object/md-documentation/component.js index 3597897b4..486d25b9e 100644 --- a/app/pods/components/object/md-documentation/component.js +++ b/app/pods/components/object/md-documentation/component.js @@ -2,18 +2,15 @@ import { alias } from '@ember/object/computed'; import Component from '@ember/component'; import { get, set } from '@ember/object'; import { once } from '@ember/runloop'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; +import { validator, buildValidations } from 'ember-cp-validations'; import { A } from '@ember/array'; const Validations = buildValidations({ - 'resourceType': [ + resourceType: [ validator('array-required', { - track: ['type'] - }) - ] + track: ['type'], + }), + ], }); export default Component.extend(Validations, { @@ -22,9 +19,19 @@ export default Component.extend(Validations, { let model = this.model; - once(this, function() { - set(model, 'resourceType', get(model, 'resourceType') !== undefined ? get(model, 'resourceType') : []); - set(model, 'citation', A(get(model, 'citation') !== undefined ? get(model, 'citation') : [{}])); + once(this, function () { + set( + model, + 'resourceType', + get(model, 'resourceType') !== undefined + ? get(model, 'resourceType') + : [], + ); + set( + model, + 'citation', + A(get(model, 'citation') !== undefined ? get(model, 'citation') : [{}]), + ); }); }, @@ -48,5 +55,5 @@ export default Component.extend(Validations, { */ citation: alias('model.citation'), - resourceType: alias('model.resourceType') + resourceType: alias('model.resourceType'), }); diff --git a/app/pods/components/object/md-documentation/preview/component.js b/app/pods/components/object/md-documentation/preview/component.js index e2868f90f..c802e96c7 100644 --- a/app/pods/components/object/md-documentation/preview/component.js +++ b/app/pods/components/object/md-documentation/preview/component.js @@ -10,5 +10,5 @@ export default Component.extend({ * @type {Boolean} * @default "true" */ - muted: true + muted: true, }); diff --git a/app/pods/components/object/md-domain/component.js b/app/pods/components/object/md-domain/component.js index 94b73062c..099156907 100644 --- a/app/pods/components/object/md-domain/component.js +++ b/app/pods/components/object/md-domain/component.js @@ -1,37 +1,30 @@ import Component from '@ember/component'; import { set, get } from '@ember/object'; -import { - alias -} from '@ember/object/computed'; -import { - once -} from '@ember/runloop'; +import { alias } from '@ember/object/computed'; +import { once } from '@ember/runloop'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; -import uuidV4 from "uuid/v4"; +import { validator, buildValidations } from 'ember-cp-validations'; +import uuidV4 from 'uuid/v4'; const Validations = buildValidations({ - 'domainId': [ + domainId: [ validator('presence', { presence: true, - ignoreBlank: true - }) + ignoreBlank: true, + }), ], - 'codeName': [ + codeName: [ validator('presence', { presence: true, - ignoreBlank: true - }) + ignoreBlank: true, + }), ], - 'description': [ + description: [ validator('presence', { presence: true, - ignoreBlank: true - }) - ] + ignoreBlank: true, + }), + ], }); export default Component.extend(Validations, { @@ -41,9 +34,25 @@ export default Component.extend(Validations, { let model = this.model; once(this, function () { - set(model, 'domainId', get(model, 'domainId') !== undefined ? get(model, 'domainId') : uuidV4()); - set(model, 'domainItem', get(model, 'domainItem') !== undefined ? get(model, 'domainItem') : []); - set(model, 'domainReference', get(model, 'domainReference') !== undefined ? get(model, 'domainReference') : {}); + set( + model, + 'domainId', + get(model, 'domainId') !== undefined + ? get(model, 'domainId') + : uuidV4(), + ); + set( + model, + 'domainItem', + get(model, 'domainItem') !== undefined ? get(model, 'domainItem') : [], + ); + set( + model, + 'domainReference', + get(model, 'domainReference') !== undefined + ? get(model, 'domainReference') + : {}, + ); }); }, @@ -64,32 +73,32 @@ export default Component.extend(Validations, { * @required */ - /** - * The passed down editDomainItem method. - * - * @method editDomainItem - * @param {Number} index - * @required - */ + /** + * The passed down editDomainItem method. + * + * @method editDomainItem + * @param {Number} index + * @required + */ - /** - * The passed down editCitation method. - * - * @method editCitation - * @param {String} scrollTo - * @required - */ + /** + * The passed down editCitation method. + * + * @method editCitation + * @param {String} scrollTo + * @required + */ tagName: 'form', domainId: alias('model.domainId'), codeName: alias('model.codeName'), description: alias('model.description'), actions: { - editDomainItem(id){ + editDomainItem(id) { this.editDomainItem(id); }, - editCitation(scrollTo){ + editCitation(scrollTo) { this.editCitation(scrollTo); - } - } + }, + }, }); diff --git a/app/pods/components/object/md-domainitem/component.js b/app/pods/components/object/md-domainitem/component.js index ac3f02481..eac4f84db 100644 --- a/app/pods/components/object/md-domainitem/component.js +++ b/app/pods/components/object/md-domainitem/component.js @@ -1,45 +1,37 @@ import Component from '@ember/component'; import EmberObject, { set, get } from '@ember/object'; -import { - alias -} from '@ember/object/computed'; -import { - once -} from '@ember/runloop'; +import { alias } from '@ember/object/computed'; +import { once } from '@ember/runloop'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; +import { validator, buildValidations } from 'ember-cp-validations'; const Validations = buildValidations({ - 'name': [ + name: [ validator('presence', { presence: true, - ignoreBlank: true - }) + ignoreBlank: true, + }), ], - 'value': [ + value: [ validator('presence', { presence: true, - ignoreBlank: true - }) + ignoreBlank: true, + }), ], - 'definition': [ + definition: [ validator('presence', { presence: true, - ignoreBlank: true - }) - ] + ignoreBlank: true, + }), + ], }); - const TemplateClass = EmberObject.extend(Validations, { init() { this._super(...arguments); set(this, 'reference', {}); - } + }, }); const theComp = Component.extend(Validations, { @@ -49,7 +41,11 @@ const theComp = Component.extend(Validations, { let model = this.model; once(this, function () { - set(model, 'reference', get(model, 'reference') !== undefined ? get(model, 'reference') : {}); + set( + model, + 'reference', + get(model, 'reference') !== undefined ? get(model, 'reference') : {}, + ); }); }, @@ -73,12 +69,7 @@ const theComp = Component.extend(Validations, { tagName: 'form', name: alias('model.name'), value: alias('model.value'), - definition: alias('model.definition') + definition: alias('model.definition'), }); -export { - Validations, - TemplateClass as Template, - theComp as - default -}; +export { Validations, TemplateClass as Template, theComp as default }; diff --git a/app/pods/components/object/md-domainitem/preview/component.js b/app/pods/components/object/md-domainitem/preview/component.js index d83de823c..43389073f 100644 --- a/app/pods/components/object/md-domainitem/preview/component.js +++ b/app/pods/components/object/md-domainitem/preview/component.js @@ -1,13 +1,11 @@ import Component from '@ember/component'; import { alias } from '@ember/object/computed'; -import { - Validations -} from '../component'; +import { Validations } from '../component'; export default Component.extend(Validations, { - tagName:'', + tagName: '', model: alias('item'), name: alias('model.name'), value: alias('model.value'), - definition: alias('model.definition') + definition: alias('model.definition'), }); diff --git a/app/pods/components/object/md-entity/component.js b/app/pods/components/object/md-entity/component.js index e6b18a50b..a19d2e3b5 100644 --- a/app/pods/components/object/md-entity/component.js +++ b/app/pods/components/object/md-entity/component.js @@ -1,47 +1,37 @@ import Component from '@ember/component'; -import { - A -} from '@ember/array'; +import { A } from '@ember/array'; import EmberObject, { set, computed, get } from '@ember/object'; -import { - alias -} from '@ember/object/computed'; -import { - once -} from '@ember/runloop'; -import { - assert -} from '@ember/debug'; - -import { - Template as Attribute -} from '../md-attribute/component'; - -import { - validator, - buildValidations -} from 'ember-cp-validations'; -import uuidV4 from "uuid/v4"; +import { alias } from '@ember/object/computed'; +import { once } from '@ember/runloop'; +import { assert } from '@ember/debug'; + +import { Template as Attribute } from '../md-attribute/component'; + +import { validator, buildValidations } from 'ember-cp-validations'; +import uuidV4 from 'uuid/v4'; const Validations = buildValidations({ - 'codeName': [ + codeName: [ validator('presence', { presence: true, - ignoreBlank: true - }) + ignoreBlank: true, + }), ], - 'definition': [ + definition: [ validator('presence', { presence: true, - ignoreBlank: true - }) - ] + ignoreBlank: true, + }), + ], }); export default Component.extend(Validations, { init() { this._super(...arguments); - assert(`You must supply a dictionary for ${this.toString()}.`, this.dictionary); + assert( + `You must supply a dictionary for ${this.toString()}.`, + this.dictionary, + ); }, didReceiveAttrs() { @@ -50,13 +40,47 @@ export default Component.extend(Validations, { let model = this.model; once(this, function () { - set(model, 'entityId', get(model, 'entityId') !== undefined ? get(model, 'entityId') : uuidV4()); - set(model, 'alias', get(model, 'alias') !== undefined ? get(model, 'alias') : []); - set(model, 'primaryKeyAttributeCodeName', get(model, 'primaryKeyAttributeCodeName') !== undefined ? get(model, 'primaryKeyAttributeCodeName') : []); - set(model, 'index', get(model, 'index') !== undefined ? get(model, 'index') : []); - set(model, 'attribute', get(model, 'attribute') !== undefined ? get(model, 'attribute') : []); - set(model, 'foreignKey', get(model, 'foreignKey') !== undefined ? get(model, 'foreignKey') : []); - set(model, 'entityReference', get(model, 'entityReference') !== undefined ? get(model, 'entityReference') : []); + set( + model, + 'entityId', + get(model, 'entityId') !== undefined + ? get(model, 'entityId') + : uuidV4(), + ); + set( + model, + 'alias', + get(model, 'alias') !== undefined ? get(model, 'alias') : [], + ); + set( + model, + 'primaryKeyAttributeCodeName', + get(model, 'primaryKeyAttributeCodeName') !== undefined + ? get(model, 'primaryKeyAttributeCodeName') + : [], + ); + set( + model, + 'index', + get(model, 'index') !== undefined ? get(model, 'index') : [], + ); + set( + model, + 'attribute', + get(model, 'attribute') !== undefined ? get(model, 'attribute') : [], + ); + set( + model, + 'foreignKey', + get(model, 'foreignKey') !== undefined ? get(model, 'foreignKey') : [], + ); + set( + model, + 'entityReference', + get(model, 'entityReference') !== undefined + ? get(model, 'entityReference') + : [], + ); }); }, @@ -87,68 +111,74 @@ export default Component.extend(Validations, { tagName: 'form', - foreignKeyTemplate: EmberObject.extend(buildValidations({ - 'referencedEntityCodeName': [ - validator('presence', { - presence: true, - ignoreBlank: true - }) - ], - 'localAttributeCodeName': [ - validator('presence', { - presence: true, - ignoreBlank: true - }), - validator('array-required', { - track: [] - }) - ], - 'referencedAttributeCodeName': [ - validator('presence', { - presence: true, - ignoreBlank: true - }), - validator('array-required', { - track: [] - }) - ] - }), { - init() { - this._super(...arguments); - this.set('localAttributeCodeName', []); - this.set('referencedAttributeCodeName', []); - } - }), + foreignKeyTemplate: EmberObject.extend( + buildValidations({ + referencedEntityCodeName: [ + validator('presence', { + presence: true, + ignoreBlank: true, + }), + ], + localAttributeCodeName: [ + validator('presence', { + presence: true, + ignoreBlank: true, + }), + validator('array-required', { + track: [], + }), + ], + referencedAttributeCodeName: [ + validator('presence', { + presence: true, + ignoreBlank: true, + }), + validator('array-required', { + track: [], + }), + ], + }), + { + init() { + this._super(...arguments); + this.set('localAttributeCodeName', []); + this.set('referencedAttributeCodeName', []); + }, + }, + ), - indexTemplate: EmberObject.extend(buildValidations({ - 'codeName': [ - validator('presence', { - presence: true, - ignoreBlank: true - }) - ], - 'allowDuplicates': [ - validator('presence', { - presence: true, - ignoreBlank: true - }) - ], - 'attributeCodeName': [ - validator('presence', { - presence: true, - ignoreBlank: true - }), - validator('array-required', { - track: [] - }) - ] - }), { - init() { - this._super(...arguments); - this.set('attributeCodeName', []); - this.set('allowDuplicates', false); - } - }), + indexTemplate: EmberObject.extend( + buildValidations({ + codeName: [ + validator('presence', { + presence: true, + ignoreBlank: true, + }), + ], + allowDuplicates: [ + validator('presence', { + presence: true, + ignoreBlank: true, + }), + ], + attributeCodeName: [ + validator('presence', { + presence: true, + ignoreBlank: true, + }), + validator('array-required', { + track: [], + }), + ], + }), + { + init() { + this._super(...arguments); + this.set('attributeCodeName', []); + this.set('allowDuplicates', false); + }, + }, + ), attributeTemplate: Attribute, //entityId: alias('model.entityId'), @@ -159,62 +189,58 @@ export default Component.extend(Validations, { attributeList: computed('attributes.{@each.codeName,[]}', function () { let attr = get(this, 'model.attribute'); - if(attr) { + if (attr) { return attr.map((attr) => { return { codeId: get(attr, 'codeName'), codeName: get(attr, 'codeName'), - tooltip: get(attr, 'definition') + tooltip: get(attr, 'definition'), }; }); } return []; }), - entityList: computed('entities.{@each.entityId,@each.codeName}', - function () { - return this.entities - .map((attr) => { - if(get(attr, 'entityId')) { - return { - codeId: get(attr, 'entityId'), - codeName: get(attr, 'codeName'), - tooltip: get(attr, 'definition') - }; - } - }); - }), + entityList: computed('entities.{@each.entityId,@each.codeName}', function () { + return this.entities.map((attr) => { + if (get(attr, 'entityId')) { + return { + codeId: get(attr, 'entityId'), + codeName: get(attr, 'codeName'), + tooltip: get(attr, 'definition'), + }; + } + }); + }), - /** - * The passed down editCitation method. - * - * @method editCitation - * @param {Number} id - * @required - */ - - /** - * The passed down editAttribute method. - * - * @method editAttribute - * @param {Number} id - * @required - */ + /** + * The passed down editCitation method. + * + * @method editCitation + * @param {Number} id + * @required + */ + + /** + * The passed down editAttribute method. + * + * @method editAttribute + * @param {Number} id + * @required + */ actions: { getEntityAttributes(id) { - let entity = A(this.get('dictionary.entity')) - .findBy('entityId', id); - - if(entity) { - let a = get(entity, 'attribute') - .map((attr) => { - return { - codeId: get(attr, 'codeName'), - codeName: get(attr, 'codeName'), - tooltip: get(attr, 'definition') - }; - }); + let entity = A(this.get('dictionary.entity')).findBy('entityId', id); + + if (entity) { + let a = get(entity, 'attribute').map((attr) => { + return { + codeId: get(attr, 'codeName'), + codeName: get(attr, 'codeName'), + tooltip: get(attr, 'definition'), + }; + }); return a; } @@ -222,12 +248,12 @@ export default Component.extend(Validations, { return []; }, - editCitation(id){ + editCitation(id) { this.editCitation(id); }, - editAttribute(id){ + editAttribute(id) { this.editAttribute(id); - } - } + }, + }, }); diff --git a/app/pods/components/object/md-extent/component.js b/app/pods/components/object/md-extent/component.js index bb93d73f3..557064773 100644 --- a/app/pods/components/object/md-extent/component.js +++ b/app/pods/components/object/md-extent/component.js @@ -1,4 +1,3 @@ import Component from '@ember/component'; -export default Component.extend({ -}); +export default Component.extend({}); diff --git a/app/pods/components/object/md-extent/spatial/component.js b/app/pods/components/object/md-extent/spatial/component.js index e6bee6193..1ec647c04 100644 --- a/app/pods/components/object/md-extent/spatial/component.js +++ b/app/pods/components/object/md-extent/spatial/component.js @@ -5,9 +5,7 @@ import { set, get, setProperties, observer, computed } from '@ember/object'; import { isNone } from '@ember/utils'; import { once } from '@ember/runloop'; -const { - isNaN: isNan -} = Number; +const { isNaN: isNan } = Number; export default Component.extend({ didReceiveAttrs() { @@ -16,7 +14,11 @@ export default Component.extend({ let geo = get(this, 'extent.geographicExtent.0'); once(function () { - set(geo, 'boundingBox', get(geo, 'boundingBox') !== undefined ? get(geo, 'boundingBox') : {}); + set( + geo, + 'boundingBox', + get(geo, 'boundingBox') !== undefined ? get(geo, 'boundingBox') : {}, + ); }); }, @@ -24,17 +26,21 @@ export default Component.extend({ return isNone(val) || isNan(val); }, - bboxPoly: computed('bbox', + bboxPoly: computed( + 'bbox', 'bbox.{northLatitude,southLatitude,eastLongitude,westLongitude}', function () { let bbox = this.bbox; - if(!bbox) { + if (!bbox) { return null; } - if(this.isTrulyNone(bbox.southLatitude) || this.isTrulyNone(bbox.westLongitude) || - this.isTrulyNone(bbox.northLatitude) || this.isTrulyNone(bbox.eastLongitude) + if ( + this.isTrulyNone(bbox.southLatitude) || + this.isTrulyNone(bbox.westLongitude) || + this.isTrulyNone(bbox.northLatitude) || + this.isTrulyNone(bbox.eastLongitude) ) { return null; } @@ -43,17 +49,18 @@ export default Component.extend({ [bbox.southLatitude, bbox.westLongitude], [bbox.northLatitude, bbox.westLongitude], [bbox.northLatitude, bbox.eastLongitude], - [bbox.southLatitude, bbox.eastLongitude] + [bbox.southLatitude, bbox.eastLongitude], ]; - }), + }, + ), bboxPolyObserver: observer('bboxPoly', function () { let map = this.map; let bbox = this.bboxPoly; - if(map && bbox) { + if (map && bbox) { this.setupMap({ - target: map + target: map, }); } }), @@ -61,7 +68,7 @@ export default Component.extend({ bbox: alias('extent.geographicExtent.0.boundingBox'), geographicExtent: alias('extent.geographicExtent.0'), hasBbox: or( - 'extent.geographicExtent.0.boundingBox.{northLatitude,southLatitude,eastLongitude,westLongitude}' + 'extent.geographicExtent.0.boundingBox.{northLatitude,southLatitude,eastLongitude,westLongitude}', ), geographicElement: alias('extent.geographicExtent.0.geographicElement'), showMap: or('bboxPoly', 'geographicElement'), @@ -71,8 +78,9 @@ export default Component.extend({ let bbox = this.bboxPoly; let features; - features = bbox ? geo.concat([L.rectangle(bbox).toGeoJSON()]) : [].concat( - geo); + features = bbox + ? geo.concat([L.rectangle(bbox).toGeoJSON()]) + : [].concat(geo); let bounds = L.geoJson(features).getBounds(); @@ -88,7 +96,7 @@ export default Component.extend({ calculateBox() { let geo = this.geographicElement; - if(!(geo && geo.length)) { + if (!(geo && geo.length)) { return null; } @@ -99,7 +107,7 @@ export default Component.extend({ northLatitude: bounds.getNorth(), southLatitude: bounds.getSouth(), eastLongitude: bounds.getEast(), - westLongitude: bounds.getWest() + westLongitude: bounds.getWest(), }); }, clearBox() { @@ -107,7 +115,7 @@ export default Component.extend({ northLatitude: null, southLatitude: null, eastLongitude: null, - westLongitude: null + westLongitude: null, }); }, editFeatures(index) { @@ -116,6 +124,6 @@ export default Component.extend({ deleteFeatures() { this.deleteFeatures(); - } - } + }, + }, }); diff --git a/app/pods/components/object/md-extent/vertical/component.js b/app/pods/components/object/md-extent/vertical/component.js index 9f189ddf0..03d6f072d 100644 --- a/app/pods/components/object/md-extent/vertical/component.js +++ b/app/pods/components/object/md-extent/vertical/component.js @@ -7,10 +7,28 @@ export default Component.extend({ this._super(...arguments); let model = get(this, 'model'); once(this, function () { - set(model, 'description', get(model, 'description') !== undefined ? get(model, 'description') : null); - set(model, 'minValue', get(model, 'minValue') !== undefined ? get(model, 'minValue') : null); - set(model, 'maxValue', get(model, 'maxValue') !== undefined ? get(model, 'maxValue') : null); - set(model, 'crsId', get(model, 'crsId') !== undefined ? get(model, 'crsId') : {}); + set( + model, + 'description', + get(model, 'description') !== undefined + ? get(model, 'description') + : null, + ); + set( + model, + 'minValue', + get(model, 'minValue') !== undefined ? get(model, 'minValue') : null, + ); + set( + model, + 'maxValue', + get(model, 'maxValue') !== undefined ? get(model, 'maxValue') : null, + ); + set( + model, + 'crsId', + get(model, 'crsId') !== undefined ? get(model, 'crsId') : {}, + ); }); }, }); diff --git a/app/pods/components/object/md-funding/component.js b/app/pods/components/object/md-funding/component.js index bdf9e7ec2..5b73a3e97 100644 --- a/app/pods/components/object/md-funding/component.js +++ b/app/pods/components/object/md-funding/component.js @@ -3,44 +3,49 @@ import { computed, set, get } from '@ember/object'; import { alias, notEmpty } from '@ember/object/computed'; import { isPresent } from '@ember/utils'; import { once } from '@ember/runloop'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; +import { validator, buildValidations } from 'ember-cp-validations'; -const Validations = buildValidations({ - 'allocation': [ - validator('array-required', { - track: ['allocation'], - disabled: computed( - 'model.timePeriod.{startDateTime,endDateTime}', - function () { - let tp = this.model.timePeriod; +const Validations = buildValidations( + { + allocation: [ + validator('array-required', { + track: ['allocation'], + disabled: computed( + 'model.timePeriod.{startDateTime,endDateTime}', + function () { + let tp = this.model.timePeriod; - return isPresent(tp) && (tp.startDateTime || tp.endDateTime); - }) - }) - ], - 'timePeriod': { - disabled: notEmpty('model.allocation'), - validators: [ - validator('presence', { - presence: true, - ignoreBlank: true, + return isPresent(tp) && (tp.startDateTime || tp.endDateTime); + }, + ), }), - validator('inline', { - dependentKeys:['model.timePeriod.startDateTime', 'model.timePeriod.endDateTime'], - validate(value, options, model) { - return model.get('timePeriod.startDateTime') || model.get( - 'timePeriod.endDateTime') ? true : - 'Time Period should have one of Start Date or End Date.'; - } - }) - ] - } -}, { - message: 'Either an Allocation or valid Time Period is required.' -}); + ], + timePeriod: { + disabled: notEmpty('model.allocation'), + validators: [ + validator('presence', { + presence: true, + ignoreBlank: true, + }), + validator('inline', { + dependentKeys: [ + 'model.timePeriod.startDateTime', + 'model.timePeriod.endDateTime', + ], + validate(value, options, model) { + return model.get('timePeriod.startDateTime') || + model.get('timePeriod.endDateTime') + ? true + : 'Time Period should have one of Start Date or End Date.'; + }, + }), + ], + }, + }, + { + message: 'Either an Allocation or valid Time Period is required.', + }, +); export default Component.extend(Validations, { didReceiveAttrs() { @@ -49,8 +54,16 @@ export default Component.extend(Validations, { let model = this.model; once(this, function () { - set(model, 'allocation', get(model, 'allocation') !== undefined ? get(model, 'allocation') : []); - set(model, 'timePeriod', get(model, 'timePeriod') !== undefined ? get(model, 'timePeriod') : {}); + set( + model, + 'allocation', + get(model, 'allocation') !== undefined ? get(model, 'allocation') : [], + ); + set( + model, + 'timePeriod', + get(model, 'timePeriod') !== undefined ? get(model, 'timePeriod') : {}, + ); }); }, /** @@ -72,5 +85,5 @@ export default Component.extend(Validations, { tagName: 'form', allocation: alias('model.allocation'), - timePeriod: alias('model.timePeriod') + timePeriod: alias('model.timePeriod'), }); diff --git a/app/pods/components/object/md-funding/preview/component.js b/app/pods/components/object/md-funding/preview/component.js index bb93d73f3..557064773 100644 --- a/app/pods/components/object/md-funding/preview/component.js +++ b/app/pods/components/object/md-funding/preview/component.js @@ -1,4 +1,3 @@ import Component from '@ember/component'; -export default Component.extend({ -}); +export default Component.extend({}); diff --git a/app/pods/components/object/md-graphic-array/component.js b/app/pods/components/object/md-graphic-array/component.js index 103fd08be..a7ac5f644 100644 --- a/app/pods/components/object/md-graphic-array/component.js +++ b/app/pods/components/object/md-graphic-array/component.js @@ -75,9 +75,9 @@ export default Component.extend({ templateClass: EmberObject.extend({ init() { this._super(...arguments); - + this.set('fileConstraint', A()); this.set('fileUri', A()); - } - }) + }, + }), }); diff --git a/app/pods/components/object/md-identifier-array/component.js b/app/pods/components/object/md-identifier-array/component.js index fd44dd630..fc322272c 100644 --- a/app/pods/components/object/md-identifier-array/component.js +++ b/app/pods/components/object/md-identifier-array/component.js @@ -1,16 +1,13 @@ import EmberObject from '@ember/object'; import { A } from '@ember/array'; import Component from '@ember/component'; -import { - Validations -} from '../md-identifier/component'; +import { Validations } from '../md-identifier/component'; export default Component.extend({ - init() { this._super(...arguments); - if(!this.model) { + if (!this.model) { this.set('model', A()); } }, @@ -71,6 +68,6 @@ export default Component.extend({ init() { this._super(...arguments); this.set('authority', {}); - } - }) + }, + }), }); diff --git a/app/pods/components/object/md-identifier-object-table/component.js b/app/pods/components/object/md-identifier-object-table/component.js index dc8f3cea9..488f6838e 100644 --- a/app/pods/components/object/md-identifier-object-table/component.js +++ b/app/pods/components/object/md-identifier-object-table/component.js @@ -48,5 +48,5 @@ export default Identifier.extend({ * @type {Boolean} * @default false */ - visibility: false + visibility: false, }); diff --git a/app/pods/components/object/md-identifier/component.js b/app/pods/components/object/md-identifier/component.js index 8cf032044..220e961a0 100644 --- a/app/pods/components/object/md-identifier/component.js +++ b/app/pods/components/object/md-identifier/component.js @@ -1,31 +1,31 @@ import { alias, and } from '@ember/object/computed'; import Component from '@ember/component'; import { set, get } from '@ember/object'; -import { - once -} from '@ember/runloop'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; +import { once } from '@ember/runloop'; +import { validator, buildValidations } from 'ember-cp-validations'; const Validations = buildValidations({ - 'identifier': [ + identifier: [ validator('presence', { presence: true, - ignoreBlank: true - }) - ] + ignoreBlank: true, + }), + ], }); const theComp = Component.extend(Validations, { didReceiveAttrs() { this._super(...arguments); - let model = (get(this, 'model') !== undefined ? get(this, 'model') : {}) || {}; + let model = + (get(this, 'model') !== undefined ? get(this, 'model') : {}) || {}; once(this, function () { - set(model, 'authority', get(model, 'authority') !== undefined ? get(model, 'authority') : {}); + set( + model, + 'authority', + get(model, 'authority') !== undefined ? get(model, 'authority') : {}, + ); }); }, @@ -60,8 +60,4 @@ const theComp = Component.extend(Validations, { isCollapsed: and('collapsible', 'collapse'), }); -export { - Validations, - theComp as - default -}; +export { Validations, theComp as default }; diff --git a/app/pods/components/object/md-keyword-citation/component.js b/app/pods/components/object/md-keyword-citation/component.js index d801bcd3f..eddff7953 100644 --- a/app/pods/components/object/md-keyword-citation/component.js +++ b/app/pods/components/object/md-keyword-citation/component.js @@ -7,35 +7,28 @@ import { alias } from '@ember/object/computed'; import { isArray } from '@ember/array'; import { computed } from '@ember/object'; import Component from '@ember/component'; -import { - regex -} from '../md-online-resource/component'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; +import { regex } from '../md-online-resource/component'; +import { validator, buildValidations } from 'ember-cp-validations'; const Validations = buildValidations({ - 'onlineResource': [ + onlineResource: [ validator('format', { regex: regex, isWarning: true, message: 'This field should be a valid, resolvable uri.', - dependentKeys: ['onlineResource', 'model.thesaurus.onlineResource.0.uri'] - }) + dependentKeys: ['onlineResource', 'model.thesaurus.onlineResource.0.uri'], + }), ], title: validator('presence', { presence: true, - ignoreBlank: true - }) + ignoreBlank: true, + }), }); export default Component.extend(Validations, { - disabled: computed('model.thesaurus.identifier.0.identifier', - function() { - return this.get('model.thesaurus.identifier.0.identifier') !== - 'custom'; - }), + disabled: computed('model.thesaurus.identifier.0.identifier', function () { + return this.get('model.thesaurus.identifier.0.identifier') !== 'custom'; + }), title: alias('model.thesaurus.title'), onlineResource: computed('model.thesaurus.onlineResource.0.uri', { get() { @@ -49,7 +42,7 @@ export default Component.extend(Validations, { onlineResourceArray[0].uri = value; this.set('model.thesaurus.onlineResource', onlineResourceArray); return value; - } + }, }), date: computed('model.thesaurus.date.0.date', { get() { @@ -62,7 +55,7 @@ export default Component.extend(Validations, { } this.set('model.thesaurus.date.0.date', value); return value; - } + }, }), dateType: computed('model.thesaurus.date.0.dateType', { get() { @@ -75,6 +68,6 @@ export default Component.extend(Validations, { } this.set('model.thesaurus.date.0.dateType', value); return value; - } - }) + }, + }), }); diff --git a/app/pods/components/object/md-keyword-list/component.js b/app/pods/components/object/md-keyword-list/component.js index 656b16b9c..fb5c35697 100644 --- a/app/pods/components/object/md-keyword-list/component.js +++ b/app/pods/components/object/md-keyword-list/component.js @@ -8,11 +8,9 @@ import $ from 'jquery'; */ export default Component.extend({ - readOnly: computed('model.thesaurus.identifier.0.identifier', - function () { - return this.get('model.thesaurus.identifier.0.identifier') !== - 'custom'; - }), + readOnly: computed('model.thesaurus.identifier.0.identifier', function () { + return this.get('model.thesaurus.identifier.0.identifier') !== 'custom'; + }), actions: { addKeyword(model) { @@ -24,5 +22,5 @@ export default Component.extend({ hideThesaurus(el) { $(el).closest('.md-keywords-container').toggleClass('hide-thesaurus'); }, - } + }, }); diff --git a/app/pods/components/object/md-lineage/component.js b/app/pods/components/object/md-lineage/component.js index cea486c87..614e3a9ce 100644 --- a/app/pods/components/object/md-lineage/component.js +++ b/app/pods/components/object/md-lineage/component.js @@ -8,11 +8,29 @@ export default Component.extend({ let model = this.model; - once(function() { - set(model, 'scope', get(model, 'scope') !== undefined ? get(model, 'scope') : {}); - set(model, 'citation', get(model, 'citation') !== undefined ? get(model, 'citation') : []); - set(model, 'processStep', get(model, 'processStep') !== undefined ? get(model, 'processStep') : []); - set(model, 'source', get(model, 'source') !== undefined ? get(model, 'source') : []); + once(function () { + set( + model, + 'scope', + get(model, 'scope') !== undefined ? get(model, 'scope') : {}, + ); + set( + model, + 'citation', + get(model, 'citation') !== undefined ? get(model, 'citation') : [], + ); + set( + model, + 'processStep', + get(model, 'processStep') !== undefined + ? get(model, 'processStep') + : [], + ); + set( + model, + 'source', + get(model, 'source') !== undefined ? get(model, 'source') : [], + ); }); }, @@ -45,8 +63,8 @@ export default Component.extend({ init() { this._super(...arguments); this.set('timePeriod', {}); - } + }, }), - sourceTemplate: EmberObject.extend() + sourceTemplate: EmberObject.extend(), }); diff --git a/app/pods/components/object/md-lineage/preview/component.js b/app/pods/components/object/md-lineage/preview/component.js index 701150330..9976015cf 100644 --- a/app/pods/components/object/md-lineage/preview/component.js +++ b/app/pods/components/object/md-lineage/preview/component.js @@ -3,8 +3,8 @@ import { computed } from '@ember/object'; export default Component.extend({ showMore: false, - limit:1, - showLimit: computed('limit','showMore', function() { - return this.showMore ? 100: this.limit; + limit: 1, + showLimit: computed('limit', 'showMore', function () { + return this.showMore ? 100 : this.limit; }), }); diff --git a/app/pods/components/object/md-locale-array/component.js b/app/pods/components/object/md-locale-array/component.js index 7eb258331..1735c54e8 100644 --- a/app/pods/components/object/md-locale-array/component.js +++ b/app/pods/components/object/md-locale-array/component.js @@ -1,7 +1,5 @@ import Component from '@ember/component'; -import { - Template -} from '../md-locale/component'; +import { Template } from '../md-locale/component'; export default Component.extend({ attributeBindings: ['data-spy'], @@ -12,5 +10,5 @@ export default Component.extend({ * @property templateClass * @type Ember.Object */ - templateClass: Template + templateClass: Template, }); diff --git a/app/pods/components/object/md-locale/component.js b/app/pods/components/object/md-locale/component.js index d023807c8..f364720a1 100644 --- a/app/pods/components/object/md-locale/component.js +++ b/app/pods/components/object/md-locale/component.js @@ -1,40 +1,22 @@ -import { - once -} from '@ember/runloop'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; -import { - setProperties, - get -} from '@ember/object'; -import { - copy -} from 'ember-copy'; -import { - isNone -} from '@ember/utils'; -import { - inject as service -} from '@ember/service'; +import { once } from '@ember/runloop'; +import { validator, buildValidations } from 'ember-cp-validations'; +import { setProperties, get } from '@ember/object'; +import { copy } from 'ember-copy'; +import { isNone } from '@ember/utils'; +import { inject as service } from '@ember/service'; import Component from '@ember/component'; -import { - assert -} from '@ember/debug'; -import { - alias -} from '@ember/object/computed'; +import { assert } from '@ember/debug'; +import { alias } from '@ember/object/computed'; const Validations = buildValidations({ - 'language': validator('presence', { + language: validator('presence', { presence: true, - ignoreBlank: true + ignoreBlank: true, }), - 'characterSet': validator('presence', { + characterSet: validator('presence', { presence: true, - ignoreBlank: true - }) + ignoreBlank: true, + }), }); const theComp = Component.extend(Validations, { @@ -48,23 +30,19 @@ const theComp = Component.extend(Validations, { assert('Model passed to md-locale must be an object', !isNone(model)); - if(Object.keys(model).length === 0) { + if (Object.keys(model).length === 0) { once(() => { setProperties(model, { language: copy(settings.get('language')), characterSet: copy(settings.get('characterSet')), - country: copy(settings.get('country')) + country: copy(settings.get('country')), }); }); } }, - language:alias('model.language'), - characterSet:alias('model.characterSet') + language: alias('model.language'), + characterSet: alias('model.characterSet'), }); -export { - Validations, - theComp as - default -}; +export { Validations, theComp as default }; diff --git a/app/pods/components/object/md-maintenance/component.js b/app/pods/components/object/md-maintenance/component.js index 7d92af99d..9e95828f1 100644 --- a/app/pods/components/object/md-maintenance/component.js +++ b/app/pods/components/object/md-maintenance/component.js @@ -8,12 +8,12 @@ import Component from '@ember/component'; import { computed, setProperties, get, set } from '@ember/object'; import { once } from '@ember/runloop'; -const formatMaint = function(model) { +const formatMaint = function (model) { setProperties(model, { - 'date': get(model, 'date') !== undefined ? get(model, 'date') : [], - 'scope': get(model, 'scope') !== undefined ? get(model, 'scope') : [], - 'note': get(model, 'note') !== undefined ? get(model, 'note') : [], - 'contact': get(model, 'contact') !== undefined ? get(model, 'contact') : [] + date: get(model, 'date') !== undefined ? get(model, 'date') : [], + scope: get(model, 'scope') !== undefined ? get(model, 'scope') : [], + note: get(model, 'note') !== undefined ? get(model, 'note') : [], + contact: get(model, 'contact') !== undefined ? get(model, 'contact') : [], }); return model; @@ -55,8 +55,11 @@ const theComp = Component.extend({ didReceiveAttrs() { this._super(...arguments); - once(this, function() { - this.set('model', get(this, 'model') !== undefined ? get(this, 'model') : {}); + once(this, function () { + this.set( + 'model', + get(this, 'model') !== undefined ? get(this, 'model') : {}, + ); formatMaint(this.model); }); }, @@ -69,17 +72,13 @@ const theComp = Component.extend({ set(key, value) { let map = value.map((itm) => { return { - scopeCode: itm + scopeCode: itm, }; }); set(this, 'model.scope', map); return value; - } - }) + }, + }), }); -export { - formatMaint, - theComp as - default -}; +export { formatMaint, theComp as default }; diff --git a/app/pods/components/object/md-medium/component.js b/app/pods/components/object/md-medium/component.js index 36e5c5ede..fe4330b1e 100644 --- a/app/pods/components/object/md-medium/component.js +++ b/app/pods/components/object/md-medium/component.js @@ -9,10 +9,26 @@ export default Component.extend({ let model = this.model; - once(function() { - set(model, 'mediumSpecification', get(model, 'mediumSpecification') !== undefined ? get(model, 'mediumSpecification') : {}); - set(model, 'identifier', get(model, 'identifier') !== undefined ? get(model, 'identifier') : {}); - set(model, 'mediumFormat', get(model, 'mediumFormat') !== undefined ? get(model, 'mediumFormat') : []); + once(function () { + set( + model, + 'mediumSpecification', + get(model, 'mediumSpecification') !== undefined + ? get(model, 'mediumSpecification') + : {}, + ); + set( + model, + 'identifier', + get(model, 'identifier') !== undefined ? get(model, 'identifier') : {}, + ); + set( + model, + 'mediumFormat', + get(model, 'mediumFormat') !== undefined + ? get(model, 'mediumFormat') + : [], + ); }); }, tagName: 'form', @@ -24,5 +40,5 @@ export default Component.extend({ * @type {String} */ - title: alias('model.mediumSpecification.title') + title: alias('model.mediumSpecification.title'), }); diff --git a/app/pods/components/object/md-object-table/component.js b/app/pods/components/object/md-object-table/component.js index 0cf348023..a1b289afc 100644 --- a/app/pods/components/object/md-object-table/component.js +++ b/app/pods/components/object/md-object-table/component.js @@ -1,9 +1,6 @@ import { gt } from '@ember/object/computed'; import Component from '@ember/component'; -import EmberObject, { - get, - computed -} from '@ember/object'; +import EmberObject, { get, computed } from '@ember/object'; import { typeOf, isEmpty } from '@ember/utils'; import { ucWords } from 'mdeditor/helpers/uc-words'; import { getOwner } from '@ember/application'; @@ -14,7 +11,6 @@ import Template from 'mdeditor/mixins/object-template'; //import InViewportMixin from 'ember-in-viewport'; export default Component.extend(Template, { - /** * mdEditor class for managing a table of similar mdJSON objects * for selection for edit or deletion. @@ -57,7 +53,7 @@ export default Component.extend(Template, { didUpdateAttrs() { this._super(...arguments); - if(this.editing !== 'adding') this.set('editing', false); + if (this.editing !== 'adding') this.set('editing', false); }, /** @@ -151,7 +147,7 @@ export default Component.extend(Template, { * @type String * @default Add */ - buttonText: "Add", + buttonText: 'Add', /** * Render the row actions vertically. @@ -244,9 +240,9 @@ export default Component.extend(Template, { let isCollapsed = this.isCollapsed; let value = this.items; - if(isCollapsed !== undefined) { + if (isCollapsed !== undefined) { return isCollapsed; - } else if(value && value.length > 0) { + } else if (value && value.length > 0) { return false; } else { return true; @@ -289,22 +285,16 @@ export default Component.extend(Template, { attrArray: computed('attributes', function () { let attr = this.attributes; - return attr - ? attr.split(',').map(itm => itm.split(':')[0]) - : null; + return attr ? attr.split(',').map((itm) => itm.split(':')[0]) : null; }), attrTitleArray: computed('attributes', function () { - return this.attributes.split(',') - .map(function (item) { - let title = item.trim().split('.').get('lastObject').split( - ':'); - return title.length === 1 ? ucWords( - [title[0] - .dasherize() - .replace(/-/g,' ') - ], { force: false }) : title[1]; - }); + return this.attributes.split(',').map(function (item) { + let title = item.trim().split('.').get('lastObject').split(':'); + return title.length === 1 + ? ucWords([title[0].dasherize().replace(/-/g, ' ')], { force: false }) + : title[1]; + }); }), editing: false, @@ -312,14 +302,13 @@ export default Component.extend(Template, { pillColor: computed('items.[]', function () { let count = this.get('items.length') || 0; - return (count > 0) ? 'label-info' : 'label-warning'; + return count > 0 ? 'label-info' : 'label-warning'; }), - alertTipMessage: computed('tipModel', 'tipPath', 'errorMessage', - function () { - if (this.errorMessage) { - return this.errorMessage; - } + alertTipMessage: computed('tipModel', 'tipPath', 'errorMessage', function () { + if (this.errorMessage) { + return this.errorMessage; + } return this.tipModel ? this.tipModel.get(`validations.attrs.${this.tipPath}.message`) @@ -330,11 +319,11 @@ export default Component.extend(Template, { deleteItem: function (items, index) { let last = Object.keys(items.get('lastObject')); - if(isEmpty(last)) { + if (isEmpty(last)) { items.replace(); } - if(items.length === 0) return; + if (items.length === 0) return; items.removeAt(index); }, @@ -344,9 +333,10 @@ export default Component.extend(Template, { const owner = getOwner(this); const spotlight = this.spotlight; - let itm = typeOf(Template) === 'class' - ? Template.create(owner.ownerInjection()) - :EmberObject.create({}); + let itm = + typeOf(Template) === 'class' + ? Template.create(owner.ownerInjection()) + : EmberObject.create({}); let items = this.items; @@ -370,6 +360,6 @@ export default Component.extend(Template, { this.set('editing', false); spotlight.close(); - } - } + }, + }, }); diff --git a/app/pods/components/object/md-objectroute-table/component.js b/app/pods/components/object/md-objectroute-table/component.js index f23ec5dbf..f0a227e9e 100644 --- a/app/pods/components/object/md-objectroute-table/component.js +++ b/app/pods/components/object/md-objectroute-table/component.js @@ -59,25 +59,28 @@ export default Table.extend({ let editItem = this.editItem; let items = this.items; - let itm = typeOf(Template) === 'class' ? Template.create(owner.ownerInjection()) : - EmberObject.create({}); + let itm = + typeOf(Template) === 'class' + ? Template.create(owner.ownerInjection()) + : EmberObject.create({}); - if(isBlank(editItem)) { - assert( - `You must supply an editItem method to ${this.toString()}.` - ); + if (isBlank(editItem)) { + assert(`You must supply an editItem method to ${this.toString()}.`); } items.pushObject(itm); - if(this.editOnAdd) { - editItem(items.indexOf(itm), this.routeParams, - `${this.scrollToId}-${this.items.length - 1}`); + if (this.editOnAdd) { + editItem( + items.indexOf(itm), + this.routeParams, + `${this.scrollToId}-${this.items.length - 1}`, + ); } }, editItem: function (items, index, scrollTo) { this.editItem(index, this.routeParams, scrollTo); - } - } + }, + }, }); diff --git a/app/pods/components/object/md-online-resource-array/component.js b/app/pods/components/object/md-online-resource-array/component.js index 5dcd6422c..72624d9bc 100644 --- a/app/pods/components/object/md-online-resource-array/component.js +++ b/app/pods/components/object/md-online-resource-array/component.js @@ -1,21 +1,14 @@ -import { - once -} from '@ember/runloop'; -import { - Validations -} from '../md-online-resource/component'; +import { once } from '@ember/runloop'; +import { Validations } from '../md-online-resource/component'; import EmberObject, { computed } from '@ember/object'; -import { - A -} from '@ember/array'; +import { A } from '@ember/array'; import Component from '@ember/component'; export default Component.extend({ - didReceiveAttrs() { this._super(...arguments); - if(!this.model) { + if (!this.model) { once(this, () => this.set('model', A())); } }, @@ -102,8 +95,9 @@ export default Component.extend({ * @requires imagePicker */ previewTemplate: computed('imagePicker', function () { - return this.imagePicker ? - "object/md-online-resource-array/md-image-preview" : null; + return this.imagePicker + ? 'object/md-online-resource-array/md-image-preview' + : null; }), /** @@ -116,6 +110,6 @@ export default Component.extend({ init() { this._super(...arguments); //this.set('uri', null); - } - }) + }, + }), }); diff --git a/app/pods/components/object/md-online-resource/component.js b/app/pods/components/object/md-online-resource/component.js index fa579b341..3f9f727db 100644 --- a/app/pods/components/object/md-online-resource/component.js +++ b/app/pods/components/object/md-online-resource/component.js @@ -3,41 +3,40 @@ import Component from '@ember/component'; import { getOwner } from '@ember/application'; import EmObject, { get, set } from '@ember/object'; import { once } from '@ember/runloop'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; +import { validator, buildValidations } from 'ember-cp-validations'; -const regex = new RegExp("([A-Za-z][A-Za-z0-9+\\-.]*):(?:(//)(?:((?:[A-Za-z0-9\\-._~!$&'()*+,;=:]|%[0-9A-Fa-f]{2})*)@)?((?:\\[(?:(?:(?:(?:[0-9A-Fa-f]{1,4}:){6}|::(?:[0-9A-Fa-f]{1,4}:){5}|(?:[0-9A-Fa-f]{1,4})?::(?:[0-9A-Fa-f]{1,4}:){4}|(?:(?:[0-9A-Fa-f]{1,4}:){0,1}[0-9A-Fa-f]{1,4})?::(?:[0-9A-Fa-f]{1,4}:){3}|(?:(?:[0-9A-Fa-f]{1,4}:){0,2}[0-9A-Fa-f]{1,4})?::(?:[0-9A-Fa-f]{1,4}:){2}|(?:(?:[0-9A-Fa-f]{1,4}:){0,3}[0-9A-Fa-f]{1,4})?::[0-9A-Fa-f]{1,4}:|(?:(?:[0-9A-Fa-f]{1,4}:){0,4}[0-9A-Fa-f]{1,4})?::)(?:[0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))|(?:(?:[0-9A-Fa-f]{1,4}:){0,5}[0-9A-Fa-f]{1,4})?::[0-9A-Fa-f]{1,4}|(?:(?:[0-9A-Fa-f]{1,4}:){0,6}[0-9A-Fa-f]{1,4})?::)|[Vv][0-9A-Fa-f]+\\.[A-Za-z0-9\\-._~!$&'()*+,;=:]+)\\]|(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)|(?:[A-Za-z0-9\\-._~!$&'()*+,;=]|%[0-9A-Fa-f]{2})*))(?::([0-9]*))?((?:/(?:[A-Za-z0-9\\-._~!$&'()*+,;=:@]|%[0-9A-Fa-f]{2})*)*)|/((?:(?:[A-Za-z0-9\\-._~!$&'()*+,;=:@]|%[0-9A-Fa-f]{2})+(?:/(?:[A-Za-z0-9\\-._~!$&'()*+,;=:@]|%[0-9A-Fa-f]{2})*)*)?)|((?:[A-Za-z0-9\\-._~!$&'()*+,;=:@]|%[0-9A-Fa-f]{2})+(?:/(?:[A-Za-z0-9\\-._~!$&'()*+,;=:@]|%[0-9A-Fa-f]{2})*)*)|)(?:\\?((?:[A-Za-z0-9\\-._~!$&'()*+,;=:@/?]|%[0-9A-Fa-f]{2})*))?(?:\\#((?:[A-Za-z0-9\\-._~!$&'()*+,;=:@/?]|%[0-9A-Fa-f]{2})*))?"); +const regex = new RegExp( + "([A-Za-z][A-Za-z0-9+\\-.]*):(?:(//)(?:((?:[A-Za-z0-9\\-._~!$&'()*+,;=:]|%[0-9A-Fa-f]{2})*)@)?((?:\\[(?:(?:(?:(?:[0-9A-Fa-f]{1,4}:){6}|::(?:[0-9A-Fa-f]{1,4}:){5}|(?:[0-9A-Fa-f]{1,4})?::(?:[0-9A-Fa-f]{1,4}:){4}|(?:(?:[0-9A-Fa-f]{1,4}:){0,1}[0-9A-Fa-f]{1,4})?::(?:[0-9A-Fa-f]{1,4}:){3}|(?:(?:[0-9A-Fa-f]{1,4}:){0,2}[0-9A-Fa-f]{1,4})?::(?:[0-9A-Fa-f]{1,4}:){2}|(?:(?:[0-9A-Fa-f]{1,4}:){0,3}[0-9A-Fa-f]{1,4})?::[0-9A-Fa-f]{1,4}:|(?:(?:[0-9A-Fa-f]{1,4}:){0,4}[0-9A-Fa-f]{1,4})?::)(?:[0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))|(?:(?:[0-9A-Fa-f]{1,4}:){0,5}[0-9A-Fa-f]{1,4})?::[0-9A-Fa-f]{1,4}|(?:(?:[0-9A-Fa-f]{1,4}:){0,6}[0-9A-Fa-f]{1,4})?::)|[Vv][0-9A-Fa-f]+\\.[A-Za-z0-9\\-._~!$&'()*+,;=:]+)\\]|(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)|(?:[A-Za-z0-9\\-._~!$&'()*+,;=]|%[0-9A-Fa-f]{2})*))(?::([0-9]*))?((?:/(?:[A-Za-z0-9\\-._~!$&'()*+,;=:@]|%[0-9A-Fa-f]{2})*)*)|/((?:(?:[A-Za-z0-9\\-._~!$&'()*+,;=:@]|%[0-9A-Fa-f]{2})+(?:/(?:[A-Za-z0-9\\-._~!$&'()*+,;=:@]|%[0-9A-Fa-f]{2})*)*)?)|((?:[A-Za-z0-9\\-._~!$&'()*+,;=:@]|%[0-9A-Fa-f]{2})+(?:/(?:[A-Za-z0-9\\-._~!$&'()*+,;=:@]|%[0-9A-Fa-f]{2})*)*)|)(?:\\?((?:[A-Za-z0-9\\-._~!$&'()*+,;=:@/?]|%[0-9A-Fa-f]{2})*))?(?:\\#((?:[A-Za-z0-9\\-._~!$&'()*+,;=:@/?]|%[0-9A-Fa-f]{2})*))?", +); const Validations = buildValidations({ - 'uri': [ + uri: [ validator('format', { regex: regex, isWarning: true, - message: 'This field should be a valid, resolvable uri.' + message: 'This field should be a valid, resolvable uri.', }), validator('presence', { presence: true, - ignoreBlank: true - }) - ] + ignoreBlank: true, + }), + ], }); const theComp = Component.extend({ didReceiveAttrs() { this._super(...arguments); - once(this, ()=>{ - let plain = this.model; + once(this, () => { + let plain = this.model; - if (plain && !get(plain,'validations')) { - const Model = EmObject.extend(Validations, plain); - const owner = getOwner(this); + if (plain && !get(plain, 'validations')) { + const Model = EmObject.extend(Validations, plain); + const owner = getOwner(this); - let model = Model.create(owner.ownerInjection(), plain); - this.set('model', model); - } + let model = Model.create(owner.ownerInjection(), plain); + this.set('model', model); + } }); }, @@ -56,11 +55,10 @@ const theComp = Component.extend({ actions: { handleFile(file) { if (file.size > 50000) { - this.flashMessages - .danger( - `The image exceeded the maximum size of 50KB: ${file.size} bytes. - Please use an online URL to load the image.` - ); + this.flashMessages.danger( + `The image exceeded the maximum size of 50KB: ${file.size} bytes. + Please use an online URL to load the image.`, + ); } else { let model = this.model; @@ -68,21 +66,15 @@ const theComp = Component.extend({ set(model, 'uri', file.data); if (file.size > 25000) { - this.flashMessages - .warning( - `The image exceeded the recommended size of 25KB: ${file.size} bytes` - ); + this.flashMessages.warning( + `The image exceeded the recommended size of 25KB: ${file.size} bytes`, + ); } //reset the input field //this.$('.import-file-picker input:file').val(''); } - } - } + }, + }, }); -export { - Validations, - regex, - theComp as - default -}; +export { Validations, regex, theComp as default }; diff --git a/app/pods/components/object/md-party-array/component.js b/app/pods/components/object/md-party-array/component.js index c89ebe07e..918523357 100644 --- a/app/pods/components/object/md-party-array/component.js +++ b/app/pods/components/object/md-party-array/component.js @@ -1,7 +1,5 @@ import Component from '@ember/component'; -import { - Template -} from '../md-party/component'; +import { Template } from '../md-party/component'; export default Component.extend({ attributeBindings: ['data-spy'], @@ -12,5 +10,5 @@ export default Component.extend({ * @property templateClass * @type Ember.Object */ - templateClass: Template + templateClass: Template, }); diff --git a/app/pods/components/object/md-party/component.js b/app/pods/components/object/md-party/component.js index a16fa550b..b01edd362 100644 --- a/app/pods/components/object/md-party/component.js +++ b/app/pods/components/object/md-party/component.js @@ -1,30 +1,21 @@ import Component from '@ember/component'; import EmberObject, { computed, get, set } from '@ember/object'; -import { - A -} from '@ember/array'; -import { - once -} from '@ember/runloop'; -import { - alias -} from '@ember/object/computed'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; +import { A } from '@ember/array'; +import { once } from '@ember/runloop'; +import { alias } from '@ember/object/computed'; +import { validator, buildValidations } from 'ember-cp-validations'; const Validations = buildValidations({ - 'role': [ + role: [ validator('presence', { presence: true, - ignoreBlank: true - }) + ignoreBlank: true, + }), ], - '_contacts': validator('length', { + _contacts: validator('length', { min: 1, - message: 'At least one contact is required.' - }) + message: 'At least one contact is required.', + }), }); const Template = EmberObject.extend(Validations, { @@ -41,13 +32,13 @@ const Template = EmberObject.extend(Validations, { set(key, value) { let map = value.map((itm) => { return { - contactId: itm + contactId: itm, }; }); set(this, 'party', map); return value; - } - }) + }, + }), }); const theComp = Component.extend(Validations, { @@ -59,12 +50,12 @@ const theComp = Component.extend(Validations, { set(key, value) { let map = value.map((itm) => { return { - contactId: itm + contactId: itm, }; }); set(this, 'model.party', map); return value; - } + }, }), role: alias('model.role'), @@ -74,18 +65,21 @@ const theComp = Component.extend(Validations, { let model = this.model; once(this, function () { - set(model, 'party', get(model, 'party') !== undefined ? get(model, 'party') : []); - set(model, 'role', get(model, 'role') !== undefined ? get(model, 'role') : null); + set( + model, + 'party', + get(model, 'party') !== undefined ? get(model, 'party') : [], + ); + set( + model, + 'role', + get(model, 'role') !== undefined ? get(model, 'role') : null, + ); }); }, attributeBindings: ['data-spy'], - templateClass: Template + templateClass: Template, }); -export { - Validations, - Template, - theComp as - default -}; +export { Validations, Template, theComp as default }; diff --git a/app/pods/components/object/md-phone-array/component.js b/app/pods/components/object/md-phone-array/component.js index 996f3b7b7..9f98e4d94 100644 --- a/app/pods/components/object/md-phone-array/component.js +++ b/app/pods/components/object/md-phone-array/component.js @@ -1,27 +1,23 @@ import Component from '@ember/component'; import EmObject from '@ember/object'; import { A } from '@ember/array'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; +import { validator, buildValidations } from 'ember-cp-validations'; const Validations = buildValidations({ - 'phoneNumber': [ + phoneNumber: [ validator('presence', { presence: true, - ignoreBlank: true + ignoreBlank: true, }), validator('format', { type: 'phone', isWarning: true, - message: 'This field should be a valid phone number.' - }) - ] + message: 'This field should be a valid phone number.', + }), + ], }); export default Component.extend({ - /** * mdEditor class for input and edit of mdJSON 'phone' object. * The class manages the maintenance of an array of phone objects. @@ -44,7 +40,6 @@ export default Component.extend({ init() { this._super(...arguments); this.set('service', A()); - } - }) - + }, + }), }); diff --git a/app/pods/components/object/md-process-step/component.js b/app/pods/components/object/md-process-step/component.js index 16c0ea52c..141da3433 100644 --- a/app/pods/components/object/md-process-step/component.js +++ b/app/pods/components/object/md-process-step/component.js @@ -8,8 +8,12 @@ export default Component.extend({ let model = this.model; - once(this, function() { - set(model, 'timePeriod', get(model, 'timePeriod') !== undefined ? get(model, 'timePeriod') : {}); + once(this, function () { + set( + model, + 'timePeriod', + get(model, 'timePeriod') !== undefined ? get(model, 'timePeriod') : {}, + ); }); }, @@ -18,14 +22,44 @@ export default Component.extend({ let model = this.model; - once(this, function() { - set(model, 'stepId', get(model, 'stepId') !== undefined ? get(model, 'stepId') : this.itemId); - set(model, 'timePeriod', get(model, 'timePeriod') !== undefined ? get(model, 'timePeriod') : {}); - set(model, 'scope', get(model, 'scope') !== undefined ? get(model, 'scope') : {}); - set(model, 'reference', get(model, 'reference') !== undefined ? get(model, 'reference') : []); - set(model, 'processor', get(model, 'processor') !== undefined ? get(model, 'processor') : []); - set(model, 'stepSource', get(model, 'stepSource') !== undefined ? get(model, 'stepSource') : []); - set(model, 'stepProduct', get(model, 'stepProduct') !== undefined ? get(model, 'stepProduct') : []); + once(this, function () { + set( + model, + 'stepId', + get(model, 'stepId') !== undefined ? get(model, 'stepId') : this.itemId, + ); + set( + model, + 'timePeriod', + get(model, 'timePeriod') !== undefined ? get(model, 'timePeriod') : {}, + ); + set( + model, + 'scope', + get(model, 'scope') !== undefined ? get(model, 'scope') : {}, + ); + set( + model, + 'reference', + get(model, 'reference') !== undefined ? get(model, 'reference') : [], + ); + set( + model, + 'processor', + get(model, 'processor') !== undefined ? get(model, 'processor') : [], + ); + set( + model, + 'stepSource', + get(model, 'stepSource') !== undefined ? get(model, 'stepSource') : [], + ); + set( + model, + 'stepProduct', + get(model, 'stepProduct') !== undefined + ? get(model, 'stepProduct') + : [], + ); }); }, @@ -48,5 +82,5 @@ export default Component.extend({ * @required */ - sourceTemplate: EmberObject.extend() + sourceTemplate: EmberObject.extend(), }); diff --git a/app/pods/components/object/md-process-step/preview/component.js b/app/pods/components/object/md-process-step/preview/component.js index 5f4b99159..a2e169409 100644 --- a/app/pods/components/object/md-process-step/preview/component.js +++ b/app/pods/components/object/md-process-step/preview/component.js @@ -4,5 +4,5 @@ import { alias } from '@ember/object/computed'; export default Component.extend({ tagName: '', model: alias('item'), - name: alias('model.description') + name: alias('model.description'), }); diff --git a/app/pods/components/object/md-profile/component.js b/app/pods/components/object/md-profile/component.js index bb93d73f3..557064773 100644 --- a/app/pods/components/object/md-profile/component.js +++ b/app/pods/components/object/md-profile/component.js @@ -1,4 +1,3 @@ import Component from '@ember/component'; -export default Component.extend({ -}); +export default Component.extend({}); diff --git a/app/pods/components/object/md-profile/custom/component.js b/app/pods/components/object/md-profile/custom/component.js index a6afb789e..eb1b7d2b5 100644 --- a/app/pods/components/object/md-profile/custom/component.js +++ b/app/pods/components/object/md-profile/custom/component.js @@ -17,17 +17,25 @@ export default Component.extend({ selectItem(item) { // item.set('_animate', true); // item.set('_selected', true); - later(this, function () { - this.selected.pushObject(item); - this.record.save(); - }, 250); + later( + this, + function () { + this.selected.pushObject(item); + this.record.save(); + }, + 250, + ); }, deselectItem(item) { // item.set('_selected', false); - later(this, function () { - this.selected.removeObject(item); - this.record.save(); - }, 250); + later( + this, + function () { + this.selected.removeObject(item); + this.record.save(); + }, + 250, + ); }, - } + }, }); diff --git a/app/pods/components/object/md-profile/form/component.js b/app/pods/components/object/md-profile/form/component.js index a548f7de4..9d2bc5a94 100644 --- a/app/pods/components/object/md-profile/form/component.js +++ b/app/pods/components/object/md-profile/form/component.js @@ -1,5 +1,5 @@ import Component from '@ember/component'; export default Component.extend({ - tagName: 'form' + tagName: 'form', }); diff --git a/app/pods/components/object/md-profile/preview/component.js b/app/pods/components/object/md-profile/preview/component.js index b51e9aa23..abb0259cc 100644 --- a/app/pods/components/object/md-profile/preview/component.js +++ b/app/pods/components/object/md-profile/preview/component.js @@ -4,5 +4,5 @@ import { or } from '@ember/object/computed'; export default Component.extend({ classNameBindings: ['textMuted'], textMuted: true, - config: or('record.config', 'record') + config: or('record.config', 'record'), }); diff --git a/app/pods/components/object/md-quality-report/component.js b/app/pods/components/object/md-quality-report/component.js index f2ffcb7ce..d97194d97 100644 --- a/app/pods/components/object/md-quality-report/component.js +++ b/app/pods/components/object/md-quality-report/component.js @@ -15,32 +15,44 @@ export default Component.extend({ set( model, 'qualityMeasure', - get(model, 'qualityMeasure') !== undefined ? get(model, 'qualityMeasure') : { name: [] } + get(model, 'qualityMeasure') !== undefined + ? get(model, 'qualityMeasure') + : { name: [] }, ); set( model, 'evaluationMethod', - get(model, 'evaluationMethod') !== undefined ? get(model, 'evaluationMethod') : { dateTime: [] } + get(model, 'evaluationMethod') !== undefined + ? get(model, 'evaluationMethod') + : { dateTime: [] }, ); set( model, 'quantitativeResult', - get(model, 'quantitativeResult') !== undefined ? get(model, 'quantitativeResult') : [] + get(model, 'quantitativeResult') !== undefined + ? get(model, 'quantitativeResult') + : [], ); set( model, 'descriptiveResult', - get(model, 'descriptiveResult') !== undefined ? get(model, 'descriptiveResult') : [] + get(model, 'descriptiveResult') !== undefined + ? get(model, 'descriptiveResult') + : [], ); set( model, 'conformanceResult', - get(model, 'conformanceResult') !== undefined ? get(model, 'conformanceResult') : [] + get(model, 'conformanceResult') !== undefined + ? get(model, 'conformanceResult') + : [], ); set( model, 'coverageResult', - get(model, 'coverageResult') !== undefined ? get(model, 'coverageResult') : [] + get(model, 'coverageResult') !== undefined + ? get(model, 'coverageResult') + : [], ); }); } @@ -84,7 +96,7 @@ export default Component.extend({ } return value; }, - } + }, ), evaluationMethodEndDateTime: computed('model.evaluationMethod.dateTime.[]', { diff --git a/app/pods/components/object/md-quality-report/conformance-result/component.js b/app/pods/components/object/md-quality-report/conformance-result/component.js index 5207da93e..6ddf1a94e 100644 --- a/app/pods/components/object/md-quality-report/conformance-result/component.js +++ b/app/pods/components/object/md-quality-report/conformance-result/component.js @@ -11,9 +11,23 @@ export default Component.extend({ if (model) { once(this, function () { - set(model, 'scope', get(model, 'scope') !== undefined ? get(model, 'scope') : {}); - set(model, 'pass', get(model, 'pass') !== undefined ? get(model, 'pass') : false); - set(model, 'specification', get(model, 'specification') !== undefined ? get(model, 'specification') : {}); + set( + model, + 'scope', + get(model, 'scope') !== undefined ? get(model, 'scope') : {}, + ); + set( + model, + 'pass', + get(model, 'pass') !== undefined ? get(model, 'pass') : false, + ); + set( + model, + 'specification', + get(model, 'specification') !== undefined + ? get(model, 'specification') + : {}, + ); }); } }, diff --git a/app/pods/components/object/md-quality-report/coverage-result/component.js b/app/pods/components/object/md-quality-report/coverage-result/component.js index 66e089211..7714bf302 100644 --- a/app/pods/components/object/md-quality-report/coverage-result/component.js +++ b/app/pods/components/object/md-quality-report/coverage-result/component.js @@ -11,7 +11,11 @@ export default Component.extend({ if (model) { once(this, function () { - set(model, 'scope', get(model, 'scope') !== undefined ? get(model, 'scope') : {}); + set( + model, + 'scope', + get(model, 'scope') !== undefined ? get(model, 'scope') : {}, + ); }); } }, diff --git a/app/pods/components/object/md-quality-report/descriptive-result/component.js b/app/pods/components/object/md-quality-report/descriptive-result/component.js index b231c82c5..b042d37de 100644 --- a/app/pods/components/object/md-quality-report/descriptive-result/component.js +++ b/app/pods/components/object/md-quality-report/descriptive-result/component.js @@ -11,7 +11,11 @@ export default Component.extend({ if (model) { once(this, function () { - set(model, 'scope', get(model, 'scope') !== undefined ? get(model, 'scope') : {}); + set( + model, + 'scope', + get(model, 'scope') !== undefined ? get(model, 'scope') : {}, + ); }); } }, diff --git a/app/pods/components/object/md-quality-report/quantitative-result/component.js b/app/pods/components/object/md-quality-report/quantitative-result/component.js index 12ce18e55..5cde3e2d1 100644 --- a/app/pods/components/object/md-quality-report/quantitative-result/component.js +++ b/app/pods/components/object/md-quality-report/quantitative-result/component.js @@ -15,9 +15,15 @@ export default Component.extend({ set( model, 'scope', - get(model, 'scope') !== undefined ? get(model, 'scope') : { scopeDescription: [] } + get(model, 'scope') !== undefined + ? get(model, 'scope') + : { scopeDescription: [] }, + ); + set( + model, + 'value', + get(model, 'value') !== undefined ? get(model, 'value') : [], ); - set(model, 'value', get(model, 'value') !== undefined ? get(model, 'value') : []); }); } }, diff --git a/app/pods/components/object/md-raster/attrgroup/attribute/component.js b/app/pods/components/object/md-raster/attrgroup/attribute/component.js index c5213fb17..874f10c43 100644 --- a/app/pods/components/object/md-raster/attrgroup/attribute/component.js +++ b/app/pods/components/object/md-raster/attrgroup/attribute/component.js @@ -5,15 +5,15 @@ import { get, set } from '@ember/object'; import { ucWords } from 'mdeditor/helpers/uc-words'; import { decamelize } from '@ember/string'; import Attribute from 'mdjson-schemas/resources/js/attribute'; -import { validator, buildValidations } from "ember-cp-validations"; +import { validator, buildValidations } from 'ember-cp-validations'; const Validations = buildValidations({ - 'attrIdentifier': [ + attrIdentifier: [ validator('presence', { presence: true, - ignoreBlank: true - }) - ] + ignoreBlank: true, + }), + ], }); const params = { @@ -55,15 +55,14 @@ export default Component.extend(Validations, { */ init() { - this.params = Object.keys(params).map(p => { + this.params = Object.keys(params).map((p) => { return { property: p, - label: ucWords([decamelize(p).replace(/_/g, - ' ')], { - force: false + label: ucWords([decamelize(p).replace(/_/g, ' ')], { + force: false, }), type: params[p], - description: get(Attribute, `properties.${p}.description`) + description: get(Attribute, `properties.${p}.description`), }; }); @@ -73,14 +72,45 @@ export default Component.extend(Validations, { didReceiveAttrs() { this._super(...arguments); - let model = (get(this, 'model') !== undefined ? get(this, 'model') : []) || []; + let model = + (get(this, 'model') !== undefined ? get(this, 'model') : []) || []; once(this, function () { - set(model, 'attributeIdentifier', get(model, 'attributeIdentifier') !== undefined ? get(model, 'attributeIdentifier') : []); - set(model, 'bandBoundaryDefinition', get(model, 'bandBoundaryDefinition') !== undefined ? get(model, 'bandBoundaryDefinition') : []); - set(model, 'transferFunctionType', get(model, 'transferFunctionType') !== undefined ? get(model, 'transferFunctionType') : []); - set(model, 'transmittedPolarization', get(model, 'transmittedPolarization') !== undefined ? get(model, 'transmittedPolarization') : []); - set(model, 'detectedPolarization', get(model, 'detectedPolarization') !== undefined ? get(model, 'detectedPolarization') : []); + set( + model, + 'attributeIdentifier', + get(model, 'attributeIdentifier') !== undefined + ? get(model, 'attributeIdentifier') + : [], + ); + set( + model, + 'bandBoundaryDefinition', + get(model, 'bandBoundaryDefinition') !== undefined + ? get(model, 'bandBoundaryDefinition') + : [], + ); + set( + model, + 'transferFunctionType', + get(model, 'transferFunctionType') !== undefined + ? get(model, 'transferFunctionType') + : [], + ); + set( + model, + 'transmittedPolarization', + get(model, 'transmittedPolarization') !== undefined + ? get(model, 'transmittedPolarization') + : [], + ); + set( + model, + 'detectedPolarization', + get(model, 'detectedPolarization') !== undefined + ? get(model, 'detectedPolarization') + : [], + ); }); }, diff --git a/app/pods/components/object/md-raster/attrgroup/attribute/preview/component.js b/app/pods/components/object/md-raster/attrgroup/attribute/preview/component.js index 2d642182d..989f11a71 100644 --- a/app/pods/components/object/md-raster/attrgroup/attribute/preview/component.js +++ b/app/pods/components/object/md-raster/attrgroup/attribute/preview/component.js @@ -4,5 +4,5 @@ import { alias } from '@ember/object/computed'; export default Component.extend({ tagName: '', item: alias('model'), - attrDesc: alias('model.attrbuteDescription') + attrDesc: alias('model.attrbuteDescription'), }); diff --git a/app/pods/components/object/md-raster/attrgroup/component.js b/app/pods/components/object/md-raster/attrgroup/component.js index 0411728bf..ccaf4cfb4 100644 --- a/app/pods/components/object/md-raster/attrgroup/component.js +++ b/app/pods/components/object/md-raster/attrgroup/component.js @@ -2,18 +2,18 @@ import Table from '../../md-array-table/component'; import { once } from '@ember/runloop'; import { alias } from '@ember/object/computed'; import { get, set } from '@ember/object'; -import { validator, buildValidations } from "ember-cp-validations"; +import { validator, buildValidations } from 'ember-cp-validations'; const Validations = buildValidations({ - 'attrCntType': [ + attrCntType: [ validator('presence', { presence: true, - ignoreBlank: true - }) - ] + ignoreBlank: true, + }), + ], }); -export default Table.extend(Validations,{ +export default Table.extend(Validations, { /** * mdEditor class for input and edit of mdJSON 'coverageDescription.attributeGroup' object. * The class manages the maintenance of an array of attributeGroup objects. @@ -37,10 +37,20 @@ export default Table.extend(Validations,{ let model = this.model; - if(model) { + if (model) { once(this, function () { - set(model, 'attributeContentType', get(model, 'attributeContentType') !== undefined ? get(model, 'attributeContentType') : []); - set(model, 'attribute', get(model, 'attribute') !== undefined ? get(model, 'attribute') : []); + set( + model, + 'attributeContentType', + get(model, 'attributeContentType') !== undefined + ? get(model, 'attributeContentType') + : [], + ); + set( + model, + 'attribute', + get(model, 'attribute') !== undefined ? get(model, 'attribute') : [], + ); }); } }, @@ -59,14 +69,14 @@ export default Table.extend(Validations,{ tagName: 'form', actions: { - /** - * 'editAttribute' is an crud action for the 'attributeGroup' object that transitions users to - * the 'attribute' route for editing. - * @method editAttribute - * @param {Number} index - */ + /** + * 'editAttribute' is an crud action for the 'attributeGroup' object that transitions users to + * the 'attribute' route for editing. + * @method editAttribute + * @param {Number} index + */ editAttribute(index) { - this.editAttribute(index) + this.editAttribute(index); }, /** * 'deleteAttribute' is an crud action for the 'attributeGroup' object that deletes 'attribute' objects. @@ -74,7 +84,7 @@ export default Table.extend(Validations,{ * @param {Number} index */ deleteAttrGroup(index) { - this.deleteAttrGroup(index) + this.deleteAttrGroup(index); }, /** * 'addAttrGroup' is an crud action for the 'attributeGroup' object that adds 'attribute' objects. @@ -82,8 +92,8 @@ export default Table.extend(Validations,{ */ addAttrGroup() { this.addAttrGroup(); - } - } + }, + }, }); export { Validations }; diff --git a/app/pods/components/object/md-raster/component.js b/app/pods/components/object/md-raster/component.js index 967dfc6cc..1863e0514 100644 --- a/app/pods/components/object/md-raster/component.js +++ b/app/pods/components/object/md-raster/component.js @@ -2,27 +2,27 @@ import Component from '@ember/component'; import { once } from '@ember/runloop'; import { alias } from '@ember/object/computed'; import { get, set } from '@ember/object'; -import { validator, buildValidations } from "ember-cp-validations"; +import { validator, buildValidations } from 'ember-cp-validations'; const Validations = buildValidations({ - 'name': [ + name: [ validator('presence', { presence: true, - ignoreBlank: true - }) + ignoreBlank: true, + }), ], - 'description': [ + description: [ validator('presence', { presence: true, - ignoreBlank: true - }) + ignoreBlank: true, + }), ], - 'identifier': [ + identifier: [ validator('presence', { presence: true, - ignoreBlank: true - }) - ] + ignoreBlank: true, + }), + ], }); export default Component.extend(Validations, { @@ -42,54 +42,72 @@ export default Component.extend(Validations, { * @constructor */ - didReceiveAttrs() { - this._super(...arguments); + didReceiveAttrs() { + this._super(...arguments); - let model = this.model; + let model = this.model; - if (model) { - once(this, function () { - set(model, 'attributeGroup', get(model, 'attributeGroup') !== undefined ? get(model, 'attributeGroup') : []); - set(model, 'imageDescription', get(model, 'imageDescription') !== undefined ? get(model, 'imageDescription') : {}); - set(model, 'processingLevelCode', get(model, 'processingLevelCode') !== undefined ? get(model, 'processingLevelCode') : {}); - }) - } - }, + if (model) { + once(this, function () { + set( + model, + 'attributeGroup', + get(model, 'attributeGroup') !== undefined + ? get(model, 'attributeGroup') + : [], + ); + set( + model, + 'imageDescription', + get(model, 'imageDescription') !== undefined + ? get(model, 'imageDescription') + : {}, + ); + set( + model, + 'processingLevelCode', + get(model, 'processingLevelCode') !== undefined + ? get(model, 'processingLevelCode') + : {}, + ); + }); + } + }, - tagName: 'form', + tagName: 'form', - /** - * 'name' is the alias for 'coverageName' used in the validations for the - * 'raster' object. - * - * @property name - * @type String - * @requires alias - * @default "alias('model.coverageName')" - */ - name: alias('model.coverageName'), + /** + * 'name' is the alias for 'coverageName' used in the validations for the + * 'raster' object. + * + * @property name + * @type String + * @requires alias + * @default "alias('model.coverageName')" + */ + name: alias('model.coverageName'), - /** - * 'description' is the alias for 'coverageDescripiton' used in the validations for the - * 'raster' object. - * - * @property description - * @type String - * @requires alias - * @default "alias('model.coverageDescription')" - */ - description: alias('model.coverageDescription'), + /** + * 'description' is the alias for 'coverageDescripiton' used in the validations for the + * 'raster' object. + * + * @property description + * @type String + * @requires alias + * @default "alias('model.coverageDescription')" + */ + description: alias('model.coverageDescription'), - /** - * 'identifier' is the alias for 'processLevelCode.identifier' used in the validations - * for the 'coverageDescription.processLevelCode' object. - * - * @property identifier - * @type String - * @requires alias - * @default "alias('model.processLevelCode.identifier')" - */ - identifier: alias('model.processLevelCode.identifier'), + /** + * 'identifier' is the alias for 'processLevelCode.identifier' used in the validations + * for the 'coverageDescription.processLevelCode' object. + * + * @property identifier + * @type String + * @requires alias + * @default "alias('model.processLevelCode.identifier')" + */ + identifier: alias('model.processLevelCode.identifier'), }); export { Validations }; diff --git a/app/pods/components/object/md-raster/image-desc/component.js b/app/pods/components/object/md-raster/image-desc/component.js index c036c4b8a..7cd1cea92 100644 --- a/app/pods/components/object/md-raster/image-desc/component.js +++ b/app/pods/components/object/md-raster/image-desc/component.js @@ -5,18 +5,15 @@ import { once } from '@ember/runloop'; // import { ucWords } from 'mdeditor/helpers/uc-words'; import { set, get } from '@ember/object'; // import ImageDescription from 'mdjson-schemas/resources/js/imageDescription'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; +import { validator, buildValidations } from 'ember-cp-validations'; const Validations = buildValidations({ - 'imgQualCodeIdentifier': [ + imgQualCodeIdentifier: [ validator('presence', { presence: true, ignoreBlank: true, - }) - ] + }), + ], }); // const params = { @@ -50,12 +47,18 @@ export default Component.extend(Validations, { didReceiveAttrs() { this._super(...arguments); - let model = this.model + let model = this.model; if (model) { once(this, function () { - set(model, 'imageQualityCode', get(model, 'imageQualityCode') !== undefined ? get(model, 'imageQualityCode') : {}); - }) + set( + model, + 'imageQualityCode', + get(model, 'imageQualityCode') !== undefined + ? get(model, 'imageQualityCode') + : {}, + ); + }); } }, /** @@ -75,5 +78,5 @@ export default Component.extend(Validations, { * @required */ - imgQualCodeIdentifier: alias('model.imageQualityCode.identifier') + imgQualCodeIdentifier: alias('model.imageQualityCode.identifier'), }); diff --git a/app/pods/components/object/md-raster/preview/component.js b/app/pods/components/object/md-raster/preview/component.js index ea72dbc12..d16ee23e7 100644 --- a/app/pods/components/object/md-raster/preview/component.js +++ b/app/pods/components/object/md-raster/preview/component.js @@ -3,7 +3,6 @@ import { alias } from '@ember/object/computed'; import { Validations } from '../component'; export default Component.extend(Validations, { - /** * mdEditor class for input and edit of mdJSON 'coverageDescription' object. * The class manages the maintenance of an array of raster objects. @@ -35,5 +34,5 @@ export default Component.extend(Validations, { * @requires alias * @default "alias('model.coverageDescription')" */ - description: alias('model.coverageDescription') + description: alias('model.coverageDescription'), }); diff --git a/app/pods/components/object/md-repository-array/component.js b/app/pods/components/object/md-repository-array/component.js index ec14db7a0..7d02a15af 100644 --- a/app/pods/components/object/md-repository-array/component.js +++ b/app/pods/components/object/md-repository-array/component.js @@ -9,17 +9,16 @@ export default Component.extend({ this._super(...arguments); this.set('citation', {}); - } + }, }), actions: { lookupTitle(value) { let defs = this.get('settings.data.repositoryDefaults'); let titles = defs.filterBy('repository', value.repository); - if(get(titles, 'length')) { - + if (get(titles, 'length')) { set(value, 'citation.title', get(titles.objectAt(0), 'title')); } - } - } + }, + }, }); diff --git a/app/pods/components/object/md-resource-type-array/component.js b/app/pods/components/object/md-resource-type-array/component.js index e6f99ec74..c2661c8a1 100644 --- a/app/pods/components/object/md-resource-type-array/component.js +++ b/app/pods/components/object/md-resource-type-array/component.js @@ -1,21 +1,17 @@ import Component from '@ember/component'; import EmObject from '@ember/object'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; +import { validator, buildValidations } from 'ember-cp-validations'; const Validations = buildValidations({ - 'type': [ + type: [ validator('presence', { presence: true, - ignoreBlank: true - }) - ] + ignoreBlank: true, + }), + ], }); export default Component.extend({ - /** * mdEditor class for input and edit of mdJSON 'phone' object. * The class manages the maintenance of an array of phone objects. @@ -37,7 +33,6 @@ export default Component.extend({ templateClass: EmObject.extend(Validations, { init() { this._super(...arguments); - } - }) - + }, + }), }); diff --git a/app/pods/components/object/md-schema/component.js b/app/pods/components/object/md-schema/component.js index 6e7418285..f283fce0c 100644 --- a/app/pods/components/object/md-schema/component.js +++ b/app/pods/components/object/md-schema/component.js @@ -1,5 +1,5 @@ import Component from '@ember/component'; export default Component.extend({ - classNames: ['md-schema'] + classNames: ['md-schema'], }); diff --git a/app/pods/components/object/md-schema/form/component.js b/app/pods/components/object/md-schema/form/component.js index 3e7334842..602b0e823 100644 --- a/app/pods/components/object/md-schema/form/component.js +++ b/app/pods/components/object/md-schema/form/component.js @@ -1,19 +1,23 @@ import Component from '@ember/component'; -const typeOptions = [{ - name: 'Metadata', - value: 'record', - //tip: 'tooltip' -}, { - name: 'Contact', - value: 'contact', - //tip: 'tooltip' -}, { - name: 'Dictionary', - value: 'dictionary', - //tip: 'tooltip' -}]; +const typeOptions = [ + { + name: 'Metadata', + value: 'record', + //tip: 'tooltip' + }, + { + name: 'Contact', + value: 'contact', + //tip: 'tooltip' + }, + { + name: 'Dictionary', + value: 'dictionary', + //tip: 'tooltip' + }, +]; export default Component.extend({ - typeOptions: typeOptions + typeOptions: typeOptions, }); diff --git a/app/pods/components/object/md-simple-array-table/component.js b/app/pods/components/object/md-simple-array-table/component.js index dff820872..c545e2a38 100644 --- a/app/pods/components/object/md-simple-array-table/component.js +++ b/app/pods/components/object/md-simple-array-table/component.js @@ -41,26 +41,24 @@ export default ArrayTable.extend({ get() { let items = this.value; - if(items === undefined) { + if (items === undefined) { items = []; //items[0] = ''; } return items.reduce(function (acc, value) { acc.pushObject({ - value: value + value: value, }); return acc; }, []); }, set(key, value) { - let newValue = value - .filterBy('value') - .mapBy('value'); + let newValue = value.filterBy('value').mapBy('value'); this.set('value', newValue); return value; - } + }, }), /** @@ -73,5 +71,5 @@ export default ArrayTable.extend({ */ valuesObserver: observer('arrayValues.@each.value', function () { this.set('arrayValues', this.arrayValues); - }) + }), }); diff --git a/app/pods/components/object/md-source/component.js b/app/pods/components/object/md-source/component.js index 57dde3d9c..075eafef4 100644 --- a/app/pods/components/object/md-source/component.js +++ b/app/pods/components/object/md-source/component.js @@ -1,24 +1,17 @@ import Component from '@ember/component'; import { set, get } from '@ember/object'; -import { - alias -} from '@ember/object/computed'; -import { - once -} from '@ember/runloop'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; -import uuidV4 from "uuid/v4"; +import { alias } from '@ember/object/computed'; +import { once } from '@ember/runloop'; +import { validator, buildValidations } from 'ember-cp-validations'; +import uuidV4 from 'uuid/v4'; const Validations = buildValidations({ - 'description': [ + description: [ validator('presence', { presence: true, - ignoreBlank: true - }) - ] + ignoreBlank: true, + }), + ], }); export default Component.extend(Validations, { @@ -28,15 +21,60 @@ export default Component.extend(Validations, { let model = this.model; once(this, function () { - set(model, 'sourceId', get(model, 'sourceId') !== undefined ? get(model, 'sourceId') : uuidV4()); - set(model, 'sourceCitation', get(model, 'sourceCitation') !== undefined ? get(model, 'sourceCitation') : {}); - set(model, 'metadataCitation', get(model, 'metadataCitation') !== undefined ? get(model, 'metadataCitation') : []); - set(model, 'spatialResolution', get(model, 'spatialResolution') !== undefined ? get(model, 'spatialResolution') : {}); - set(model, 'referenceSystem', get(model, 'referenceSystem') !== undefined ? get(model, 'referenceSystem') : {}); - set(model, 'referenceSystem.referenceSystemIdentifier', - get(model, 'referenceSystem.referenceSystemIdentifier') !== undefined ? get(model, 'referenceSystem.referenceSystemIdentifier') : {}); - set(model, 'sourceProcessStep', get(model, 'sourceProcessStep') !== undefined ? get(model, 'sourceProcessStep') : []); - set(model, 'scope', get(model, 'scope') !== undefined ? get(model, 'scope') : {}); + set( + model, + 'sourceId', + get(model, 'sourceId') !== undefined + ? get(model, 'sourceId') + : uuidV4(), + ); + set( + model, + 'sourceCitation', + get(model, 'sourceCitation') !== undefined + ? get(model, 'sourceCitation') + : {}, + ); + set( + model, + 'metadataCitation', + get(model, 'metadataCitation') !== undefined + ? get(model, 'metadataCitation') + : [], + ); + set( + model, + 'spatialResolution', + get(model, 'spatialResolution') !== undefined + ? get(model, 'spatialResolution') + : {}, + ); + set( + model, + 'referenceSystem', + get(model, 'referenceSystem') !== undefined + ? get(model, 'referenceSystem') + : {}, + ); + set( + model, + 'referenceSystem.referenceSystemIdentifier', + get(model, 'referenceSystem.referenceSystemIdentifier') !== undefined + ? get(model, 'referenceSystem.referenceSystemIdentifier') + : {}, + ); + set( + model, + 'sourceProcessStep', + get(model, 'sourceProcessStep') !== undefined + ? get(model, 'sourceProcessStep') + : [], + ); + set( + model, + 'scope', + get(model, 'scope') !== undefined ? get(model, 'scope') : {}, + ); }); }, @@ -60,5 +98,5 @@ export default Component.extend(Validations, { tagName: 'form', domainId: alias('model.domainId'), codeName: alias('model.codeName'), - description: alias('model.description') + description: alias('model.description'), }); diff --git a/app/pods/components/object/md-source/preview/component.js b/app/pods/components/object/md-source/preview/component.js index 8d42e40b4..105cb4ea3 100644 --- a/app/pods/components/object/md-source/preview/component.js +++ b/app/pods/components/object/md-source/preview/component.js @@ -4,8 +4,10 @@ import { alias } from '@ember/object/computed'; // Validations // } from '../component'; -export default Component.extend(/*Validations,*/ { - tagName: '', - model: alias('item'), - name: alias('model.description') -}); +export default Component.extend( + /*Validations,*/ { + tagName: '', + model: alias('item'), + name: alias('model.description'), + }, +); diff --git a/app/pods/components/object/md-spatial-info/component.js b/app/pods/components/object/md-spatial-info/component.js index 7f205071a..b31e43c6a 100644 --- a/app/pods/components/object/md-spatial-info/component.js +++ b/app/pods/components/object/md-spatial-info/component.js @@ -9,11 +9,35 @@ export default Component.extend({ let model = this.model; - once(this, function() { - set(model, 'spatialReferenceSystem', get(model, 'spatialReferenceSystem') !== undefined ? get(model, 'spatialReferenceSystem') : []); - set(model, 'spatialRepresentationType', get(model, 'spatialRepresentationType') !== undefined ? get(model, 'spatialRepresentationType') : []); - set(model, 'spatialResolution', get(model, 'spatialResolution') !== undefined ? get(model, 'spatialResolution') : []); - set(model, 'coverageDescription', get(model, 'coverageDescription') !== undefined ? get(model, 'coverageDescription') : []); + once(this, function () { + set( + model, + 'spatialReferenceSystem', + get(model, 'spatialReferenceSystem') !== undefined + ? get(model, 'spatialReferenceSystem') + : [], + ); + set( + model, + 'spatialRepresentationType', + get(model, 'spatialRepresentationType') !== undefined + ? get(model, 'spatialRepresentationType') + : [], + ); + set( + model, + 'spatialResolution', + get(model, 'spatialResolution') !== undefined + ? get(model, 'spatialResolution') + : [], + ); + set( + model, + 'coverageDescription', + get(model, 'coverageDescription') !== undefined + ? get(model, 'coverageDescription') + : [], + ); }); }, @@ -40,7 +64,11 @@ export default Component.extend({ actions: { editRaster(id) { - this.router.transitionTo('record.show.edit.spatial.raster', this.parentModel, id); - } - } + this.router.transitionTo( + 'record.show.edit.spatial.raster', + this.parentModel, + id, + ); + }, + }, }); diff --git a/app/pods/components/object/md-spatial-resolution/component.js b/app/pods/components/object/md-spatial-resolution/component.js index a2bbf81b5..1ca3fde6b 100644 --- a/app/pods/components/object/md-spatial-resolution/component.js +++ b/app/pods/components/object/md-spatial-resolution/component.js @@ -3,57 +3,54 @@ import { isEmpty } from '@ember/utils'; import { or, alias } from '@ember/object/computed'; import { once } from '@ember/runloop'; import { set, get, computed } from '@ember/object'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; +import { validator, buildValidations } from 'ember-cp-validations'; const Validations = buildValidations({ - 'scaleFactor': { + scaleFactor: { disabled: alias('model.scaleDisabled'), validators: [ validator('presence', { presence: true, - ignoreBlank: true + ignoreBlank: true, }), validator('number', { integer: true, allowBlank: true, positive: true, - gt: 0 - }) - ] + gt: 0, + }), + ], }, - 'levelOfDetail': [ + levelOfDetail: [ validator('presence', { presence: true, ignoreBlank: true, - disabled: alias('model.levelDisabled') - }) + disabled: alias('model.levelDisabled'), + }), ], - 'measure': [ + measure: [ validator('dependent', { - on: ['measureType', 'measureValue', 'measureUnit'] - }) + on: ['measureType', 'measureValue', 'measureUnit'], + }), ], - 'measureType': [ + measureType: [ validator('presence', { presence: true, - ignoreBlank: true - }) + ignoreBlank: true, + }), ], - 'measureUnit': [ + measureUnit: [ validator('presence', { presence: true, - ignoreBlank: true - }) + ignoreBlank: true, + }), ], - 'measureValue': [ + measureValue: [ validator('presence', { presence: true, - ignoreBlank: true - }) - ] + ignoreBlank: true, + }), + ], }); export default Component.extend(Validations, { @@ -62,9 +59,13 @@ export default Component.extend(Validations, { let model = this.model; - if(model) { + if (model) { once(this, function () { - set(model, 'measure', get(model, 'measure') !== undefined ? get(model, 'measure') : {}); + set( + model, + 'measure', + get(model, 'measure') !== undefined ? get(model, 'measure') : {}, + ); }); } }, @@ -87,54 +88,52 @@ export default Component.extend(Validations, { classNames: ['form'], scaleFactor: alias('model.scaleFactor'), - scaleDisabled: computed( - 'model.levelOfDetail', 'measurePresent', - function () { - return !isEmpty(this.get('model.levelOfDetail')) || this.measurePresent; - }), + scaleDisabled: computed('model.levelOfDetail', 'measurePresent', function () { + return !isEmpty(this.get('model.levelOfDetail')) || this.measurePresent; + }), levelOfDetail: alias('model.levelOfDetail'), - levelDisabled: computed( - 'model.scaleFactor', 'measurePresent', - function () { - let scaleFactor = this.get('model.scaleFactor'); - return (!isEmpty(scaleFactor) && !Number.isNaN(scaleFactor)) || - this.measurePresent; - } - ), + levelDisabled: computed('model.scaleFactor', 'measurePresent', function () { + let scaleFactor = this.get('model.scaleFactor'); + return ( + (!isEmpty(scaleFactor) && !Number.isNaN(scaleFactor)) || + this.measurePresent + ); + }), measure: alias('model.measure'), - measureDisabled: computed( - 'model.{scaleFactor,levelOfDetail}', - function () { - let scaleFactor = this.get('model.scaleFactor'); - return(!isEmpty(scaleFactor) && !Number.isNaN(scaleFactor)) || - !isEmpty(this.get('model.levelOfDetail')); - } - ), + measureDisabled: computed('model.{scaleFactor,levelOfDetail}', function () { + let scaleFactor = this.get('model.scaleFactor'); + return ( + (!isEmpty(scaleFactor) && !Number.isNaN(scaleFactor)) || + !isEmpty(this.get('model.levelOfDetail')) + ); + }), measureType: alias('model.measure.type'), measureValue: alias('model.measure.value'), measureUnit: alias('model.measure.unitOfMeasure'), measurePresent: or('measureType', 'measureUnit', 'measureValue'), - typeOptions: computed(function() { - return [{ - name: 'distance', - value: 'distance' - }, - { - name: 'length', - value: 'length' - }, - { - name: 'angle', - value: 'angle' - }, - { - name: 'measure', - value: 'measure' - }, - { - name: 'scale', - value: 'scale' - } - ]}) + typeOptions: computed(function () { + return [ + { + name: 'distance', + value: 'distance', + }, + { + name: 'length', + value: 'length', + }, + { + name: 'angle', + value: 'angle', + }, + { + name: 'measure', + value: 'measure', + }, + { + name: 'scale', + value: 'scale', + }, + ]; + }), }); diff --git a/app/pods/components/object/md-srs/component.js b/app/pods/components/object/md-srs/component.js index 9147da257..e4131eb03 100644 --- a/app/pods/components/object/md-srs/component.js +++ b/app/pods/components/object/md-srs/component.js @@ -2,26 +2,23 @@ import Component from '@ember/component'; import { alias, notEmpty } from '@ember/object/computed'; import { once } from '@ember/runloop'; import { set, get } from '@ember/object'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; +import { validator, buildValidations } from 'ember-cp-validations'; const Validations = buildValidations({ - 'refType': [ + refType: [ validator('presence', { presence: true, ignoreBlank: true, - disabled: notEmpty('model.model.referenceSystemIdentifier.identifier') - }) + disabled: notEmpty('model.model.referenceSystemIdentifier.identifier'), + }), ], - 'refSystem': [ + refSystem: [ validator('presence', { presence: true, ignoreBlank: true, - disabled: notEmpty('model.model.referenceSystemType') - }) - ] + disabled: notEmpty('model.model.referenceSystemType'), + }), + ], }); export default Component.extend(Validations, { @@ -30,11 +27,17 @@ export default Component.extend(Validations, { let model = this.model; - if(model){ - once(this, function() { - set(model, 'referenceSystemIdentifier', get(model, 'referenceSystemIdentifier') !== undefined ? get(model, 'referenceSystemIdentifier') : {}); - }); - } + if (model) { + once(this, function () { + set( + model, + 'referenceSystemIdentifier', + get(model, 'referenceSystemIdentifier') !== undefined + ? get(model, 'referenceSystemIdentifier') + : {}, + ); + }); + } }, /** * The string representing the path in the profile object for the resource. @@ -55,5 +58,5 @@ export default Component.extend(Validations, { classNames: ['form'], refSystem: alias('model.referenceSystemIdentifier.identifier'), - refType: alias('model.referenceSystemType') + refType: alias('model.referenceSystemType'), }); diff --git a/app/pods/components/object/md-standalone-quality-report/component.js b/app/pods/components/object/md-standalone-quality-report/component.js index 3457b0453..83be3c640 100644 --- a/app/pods/components/object/md-standalone-quality-report/component.js +++ b/app/pods/components/object/md-standalone-quality-report/component.js @@ -11,6 +11,6 @@ export default Component.extend({ }, deleteReportReference() { set(this.model, 'reportReference', undefined); - } - } + }, + }, }); diff --git a/app/pods/components/object/md-taxonomy/classification/component.js b/app/pods/components/object/md-taxonomy/classification/component.js index f9925c442..fc477e661 100644 --- a/app/pods/components/object/md-taxonomy/classification/component.js +++ b/app/pods/components/object/md-taxonomy/classification/component.js @@ -4,5 +4,5 @@ export default Component.extend({ tagName: 'ul', classNames: ['list-group', 'md-classification'], dragging: null, - preview: false + preview: false, }); diff --git a/app/pods/components/object/md-taxonomy/classification/taxon/component.js b/app/pods/components/object/md-taxonomy/classification/taxon/component.js index b01595940..c93f75939 100644 --- a/app/pods/components/object/md-taxonomy/classification/taxon/component.js +++ b/app/pods/components/object/md-taxonomy/classification/taxon/component.js @@ -1,54 +1,55 @@ import Component from '@ember/component'; -import { - htmlSafe -} from '@ember/string'; +import { htmlSafe } from '@ember/string'; import { computed, get } from '@ember/object'; -import { - alias -} from '@ember/object/computed'; -import { - inject as service -} from '@ember/service'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; +import { alias } from '@ember/object/computed'; +import { inject as service } from '@ember/service'; +import { validator, buildValidations } from 'ember-cp-validations'; import { once } from '@ember/runloop'; import scrollIntoView from 'scroll-into-view-if-needed'; const Validations = buildValidations({ - 'taxonomicName': [ + taxonomicName: [ validator('presence', { presence: true, - ignoreBlank: true - }) + ignoreBlank: true, + }), ], - 'taxonomicLevel': [ + taxonomicLevel: [ validator('presence', { presence: true, - ignoreBlank: true - }) - ] + ignoreBlank: true, + }), + ], }); export default Component.extend(Validations, { init() { this._super(...arguments); - this.collapse = (this.preview && !this.parentItem); + this.collapse = this.preview && !this.parentItem; }, didReceiveAttrs() { this._super(...arguments); once(this, function () { - this.set('model.commonName', get(this, 'model.commonName') !== undefined ? get(this, 'model.commonName') : []); - this.set('model.subClassification', get(this, 'model.subClassification') !== undefined ? get(this, 'model.subClassification') : []); + this.set( + 'model.commonName', + get(this, 'model.commonName') !== undefined + ? get(this, 'model.commonName') + : [], + ); + this.set( + 'model.subClassification', + get(this, 'model.subClassification') !== undefined + ? get(this, 'model.subClassification') + : [], + ); }); }, didInsertElement() { this._super(...arguments); - if(this.model._edit) { + if (this.model._edit) { this.startEditing(); this.set('model._edit', false); } @@ -73,8 +74,7 @@ export default Component.extend(Validations, { }), collapsible: computed('model.subClassification.[]', function () { - return this.get( - 'model.subClassification.length'); + return this.get('model.subClassification.length'); }), taxonomicLevel: alias('model.taxonomicLevel'), @@ -101,8 +101,7 @@ export default Component.extend(Validations, { }, deleteTaxa(taxa) { - let parent = this.top || this.get( - 'parentItem.model.subClassification'); + let parent = this.top || this.get('parentItem.model.subClassification'); parent.removeObject(taxa); }, @@ -111,7 +110,7 @@ export default Component.extend(Validations, { this.get('model.subClassification').pushObject({ commonName: [], subClassification: [], - _edit: true + _edit: true, }); }, @@ -124,7 +123,7 @@ export default Component.extend(Validations, { this.deleteTaxa(taxa); }, toggleEditing() { - if(this.isEditing) { + if (this.isEditing) { this.spotlight.close(); this.set('isEditing', false); return; @@ -133,6 +132,6 @@ export default Component.extend(Validations, { }, addChild() { this.addChild(); - } - } + }, + }, }); diff --git a/app/pods/components/object/md-taxonomy/collection/component.js b/app/pods/components/object/md-taxonomy/collection/component.js index 549bbb05b..a9ac4583b 100644 --- a/app/pods/components/object/md-taxonomy/collection/component.js +++ b/app/pods/components/object/md-taxonomy/collection/component.js @@ -1,32 +1,23 @@ import Component from '@ember/component'; import EmberObject, { set, get } from '@ember/object'; -import { - alias -} from '@ember/object/computed'; -import { - once -} from '@ember/runloop'; +import { alias } from '@ember/object/computed'; +import { once } from '@ember/runloop'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; -import { - Template as Voucher -} from './voucher/component'; +import { validator, buildValidations } from 'ember-cp-validations'; +import { Template as Voucher } from './voucher/component'; const Validations = buildValidations({ - 'title': [ + title: [ validator('presence', { presence: true, - ignoreBlank: true - }) + ignoreBlank: true, + }), ], - 'taxonomicSystem': [ + taxonomicSystem: [ validator('presence', { presence: true, - ignoreBlank: true - }) + ignoreBlank: true, + }), ], // 'identificationProcedure': [ // validator('presence', { @@ -34,12 +25,12 @@ const Validations = buildValidations({ // ignoreBlank: true // }) // ], - 'taxonomicClassification': [ + taxonomicClassification: [ validator('presence', { presence: true, - ignoreBlank: true - }) - ] + ignoreBlank: true, + }), + ], }); const TemplateClass = EmberObject.extend(Validations, { @@ -51,7 +42,7 @@ const TemplateClass = EmberObject.extend(Validations, { set(this, 'observer', []); set(this, 'voucher', []); set(this, 'taxonomicClassification', []); - } + }, }); const theComp = Component.extend(Validations, { @@ -61,11 +52,37 @@ const theComp = Component.extend(Validations, { let model = this.model; once(this, function () { - set(model, 'taxonomicClassification', get(model, 'taxonomicClassification') !== undefined ? get(model, 'taxonomicClassification') : []); - set(model, 'taxonomicSystem', get(model, 'taxonomicSystem') !== undefined ? get(model, 'taxonomicSystem') : []); - set(model, 'identificationReference', get(model, 'identificationReference') !== undefined ? get(model, 'identificationReference') : []); - set(model, 'observer', get(model, 'observer') !== undefined ? get(model, 'observer') : []); - set(model, 'voucher', get(model, 'voucher') !== undefined ? get(model, 'voucher') : []); + set( + model, + 'taxonomicClassification', + get(model, 'taxonomicClassification') !== undefined + ? get(model, 'taxonomicClassification') + : [], + ); + set( + model, + 'taxonomicSystem', + get(model, 'taxonomicSystem') !== undefined + ? get(model, 'taxonomicSystem') + : [], + ); + set( + model, + 'identificationReference', + get(model, 'identificationReference') !== undefined + ? get(model, 'identificationReference') + : [], + ); + set( + model, + 'observer', + get(model, 'observer') !== undefined ? get(model, 'observer') : [], + ); + set( + model, + 'voucher', + get(model, 'voucher') !== undefined ? get(model, 'voucher') : [], + ); }); }, voucherTemplate: Voucher, @@ -96,13 +113,8 @@ const theComp = Component.extend(Validations, { init() { this._super(...arguments); this.set('citation', {}); - } - }) + }, + }), }); -export { - Validations, - TemplateClass as Template, - theComp as - default -}; +export { Validations, TemplateClass as Template, theComp as default }; diff --git a/app/pods/components/object/md-taxonomy/collection/system/component.js b/app/pods/components/object/md-taxonomy/collection/system/component.js index cede2ca5d..d02094450 100644 --- a/app/pods/components/object/md-taxonomy/collection/system/component.js +++ b/app/pods/components/object/md-taxonomy/collection/system/component.js @@ -1,23 +1,16 @@ import Component from '@ember/component'; import { set, get } from '@ember/object'; -import { - alias -} from '@ember/object/computed'; -import { - once -} from '@ember/runloop'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; +import { alias } from '@ember/object/computed'; +import { once } from '@ember/runloop'; +import { validator, buildValidations } from 'ember-cp-validations'; const Validations = buildValidations({ - 'citation': [ + citation: [ validator('presence', { presence: true, - ignoreBlank: true - }) - ] + ignoreBlank: true, + }), + ], }); export default Component.extend(Validations, { @@ -27,7 +20,11 @@ export default Component.extend(Validations, { let model = this.model; once(this, function () { - set(model, 'citation', get(model, 'citation') !== undefined ? get(model, 'citation') : {}); + set( + model, + 'citation', + get(model, 'citation') !== undefined ? get(model, 'citation') : {}, + ); }); }, @@ -49,5 +46,5 @@ export default Component.extend(Validations, { */ tagName: 'form', - citation: alias('model.citation') + citation: alias('model.citation'), }); diff --git a/app/pods/components/object/md-taxonomy/collection/system/preview/component.js b/app/pods/components/object/md-taxonomy/collection/system/preview/component.js index cb4353ea1..a2f02fd23 100644 --- a/app/pods/components/object/md-taxonomy/collection/system/preview/component.js +++ b/app/pods/components/object/md-taxonomy/collection/system/preview/component.js @@ -1,22 +1,19 @@ import Component from '@ember/component'; import { alias } from '@ember/object/computed'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; +import { validator, buildValidations } from 'ember-cp-validations'; const Validations = buildValidations({ - 'title': [ + title: [ validator('presence', { presence: true, - ignoreBlank: true - }) - ] + ignoreBlank: true, + }), + ], }); export default Component.extend(Validations, { tagName: '', model: alias('item'), modifications: alias('model.modifications'), - title: alias('model.citation.title') + title: alias('model.citation.title'), }); diff --git a/app/pods/components/object/md-taxonomy/collection/voucher/component.js b/app/pods/components/object/md-taxonomy/collection/voucher/component.js index 8eb6adbaa..1f81e8990 100644 --- a/app/pods/components/object/md-taxonomy/collection/voucher/component.js +++ b/app/pods/components/object/md-taxonomy/collection/voucher/component.js @@ -2,24 +2,21 @@ import EmberObject, { set, get } from '@ember/object'; import Component from '@ember/component'; import { alias } from '@ember/object/computed'; import { once } from '@ember/runloop'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; +import { validator, buildValidations } from 'ember-cp-validations'; const Validations = buildValidations({ - 'specimen': [ + specimen: [ validator('presence', { presence: true, - ignoreBlank: true - }) + ignoreBlank: true, + }), ], - 'repository': [ + repository: [ validator('presence', { presence: true, - ignoreBlank: true - }) - ] + ignoreBlank: true, + }), + ], }); const Template = EmberObject.extend(Validations, { @@ -27,7 +24,7 @@ const Template = EmberObject.extend(Validations, { this._super(...arguments); this.set('repository', {}); this.set('specimen', null); - } + }, }); const theComp = Component.extend(Validations, { @@ -40,18 +37,21 @@ const theComp = Component.extend(Validations, { let model = this.model; once(this, function () { - set(model, 'repository', get(model, 'repository') !== undefined ? get(model, 'repository') : {}); - set(model, 'specimen', get(model, 'specimen') !== undefined ? get(model, 'specimen') : null); + set( + model, + 'repository', + get(model, 'repository') !== undefined ? get(model, 'repository') : {}, + ); + set( + model, + 'specimen', + get(model, 'specimen') !== undefined ? get(model, 'specimen') : null, + ); }); }, //attributeBindings: ['data-spy'], - templateClass: Template + templateClass: Template, }); -export { - Validations, - Template, - theComp as - default -}; +export { Validations, Template, theComp as default }; diff --git a/app/pods/components/object/md-taxonomy/component.js b/app/pods/components/object/md-taxonomy/component.js index 28ea87a5a..0585ae3b7 100644 --- a/app/pods/components/object/md-taxonomy/component.js +++ b/app/pods/components/object/md-taxonomy/component.js @@ -4,20 +4,23 @@ import { inject as service } from '@ember/service'; export default Component.extend({ router: service(), - title: computed('model.taxonomicSystem.0.citation.title', function() { + title: computed('model.taxonomicSystem.0.citation.title', function () { let title = this.get('model.taxonomicSystem.0.citation.title'); let index = this.index; - return `Collection #${index}` + (title ? `: ${title}`: ''); + return `Collection #${index}` + (title ? `: ${title}` : ''); }), actions: { editCollection(id) { - this.set('scrollTo',`collection-${id}`); - this.router.transitionTo('record.show.edit.taxonomy.collection.index', id); + this.set('scrollTo', `collection-${id}`); + this.router.transitionTo( + 'record.show.edit.taxonomy.collection.index', + id, + ); }, deleteCollection(id) { let taxa = this.get('record.json.metadata.resourceInfo.taxonomy'); taxa.removeAt(id); - } - } + }, + }, }); diff --git a/app/pods/components/object/md-time-period/component.js b/app/pods/components/object/md-time-period/component.js index aa4d44fa7..d2a2d6fce 100644 --- a/app/pods/components/object/md-time-period/component.js +++ b/app/pods/components/object/md-time-period/component.js @@ -1,79 +1,65 @@ -import { - notEmpty, - alias -} from '@ember/object/computed'; +import { notEmpty, alias } from '@ember/object/computed'; import Component from '@ember/component'; import { get, set, computed } from '@ember/object'; -import { - once -} from '@ember/runloop'; +import { once } from '@ember/runloop'; -import { - validator, - buildValidations -} from 'ember-cp-validations'; +import { validator, buildValidations } from 'ember-cp-validations'; -const timeUnit = [{ +const timeUnit = [ + { name: 'year', - value: 'year' + value: 'year', }, { name: 'month', - value: 'month' + value: 'month', }, { name: 'day', - value: 'day' + value: 'day', }, { name: 'hour', - value: 'hour' + value: 'hour', }, { name: 'minute', - value: 'minute' + value: 'minute', }, { name: 'second', - value: 'second' - } + value: 'second', + }, ]; -const durationUnit = [ - 'years', - 'months', - 'days', - 'hours', - 'minutes', - 'seconds' -]; +const durationUnit = ['years', 'months', 'days', 'hours', 'minutes', 'seconds']; const Validations = buildValidations({ - 'intervalAmount': [ + intervalAmount: [ validator('presence', { presence: true, //disabled: computed.notEmpty('model.endDateTime'), - ignoreBlank: true - }) + ignoreBlank: true, + }), ], - 'startDateTime': [ + startDateTime: [ validator('presence', { presence: true, disabled: notEmpty('model.endDateTime'), - ignoreBlank: true - }) + ignoreBlank: true, + }), ], - 'endDateTime': [ + endDateTime: [ validator('date', { onOrAfter: alias('model.startDateTime'), - isWarning: true + isWarning: true, }), validator('presence', { presence: true, disabled: notEmpty('model.startDateTime'), - ignoreBlank: true - }) - ] + ignoreBlank: true, + }), + ], }); export default Component.extend(Validations, { @@ -90,14 +76,32 @@ export default Component.extend(Validations, { let model = this.model; once(this, function () { - set(model, 'periodName', get(model, 'periodName') !== undefined ? get(model, 'periodName') : []); - set(model, 'timeInterval', get(model, 'timeInterval') !== undefined ? get(model, 'timeInterval') : {}); - set(model, 'duration', get(model, 'duration') !== undefined ? get(model, 'duration') : {}); + set( + model, + 'periodName', + get(model, 'periodName') !== undefined ? get(model, 'periodName') : [], + ); + set( + model, + 'timeInterval', + get(model, 'timeInterval') !== undefined + ? get(model, 'timeInterval') + : {}, + ); + set( + model, + 'duration', + get(model, 'duration') !== undefined ? get(model, 'duration') : {}, + ); // set(model, 'presentationForm', getWithDefault(model, // 'presentationForm', [])); // set(model, 'onlineResource', getWithDefault(model, // 'onlineResource', [])); - set(model, 'identifier', get(model, 'identifier') !== undefined ? get(model, 'identifier') : {}); + set( + model, + 'identifier', + get(model, 'identifier') !== undefined ? get(model, 'identifier') : {}, + ); // set(model, 'graphic', getWithDefault(model, 'graphic', [])); }); }, @@ -119,7 +123,7 @@ export default Component.extend(Validations, { set(this, 'model.startDateTime', value); return value; }); - } + }, }), endDateTime: computed('model.endDateTime', { get() { @@ -130,12 +134,11 @@ export default Component.extend(Validations, { set(this, 'model.endDateTime', value); return value; }); - } + }, }), intervalAmount: alias('model.timeInterval.interval'), identifier: alias('model.identifier.identifier'), timeUnit: timeUnit, - durationUnit: durationUnit - + durationUnit: durationUnit, }); diff --git a/app/pods/components/object/md-transfer/component.js b/app/pods/components/object/md-transfer/component.js index 35be2fa2b..2e000d6cb 100644 --- a/app/pods/components/object/md-transfer/component.js +++ b/app/pods/components/object/md-transfer/component.js @@ -1,11 +1,7 @@ -import { - alias -} from '@ember/object/computed'; +import { alias } from '@ember/object/computed'; import Component from '@ember/component'; import EmberObject, { computed, get, set } from '@ember/object'; -import { - once -} from '@ember/runloop'; +import { once } from '@ember/runloop'; // const Validations = buildValidations({ // // 'intervalAmount': [ @@ -42,10 +38,34 @@ export default Component.extend({ let model = this.model; once(function () { - set(model, 'onlineOption', get(model, 'onlineOption') !== undefined ? get(model, 'onlineOption') : []); - set(model, 'offlineOption', get(model, 'offlineOption') !== undefined ? get(model, 'offlineOption') : []); - set(model, 'transferFrequency', get(model, 'transferFrequency') !== undefined ? get(model, 'transferFrequency') : {}); - set(model, 'distributionFormat', get(model, 'distributionFormat') !== undefined ? get(model, 'distributionFormat') : []); + set( + model, + 'onlineOption', + get(model, 'onlineOption') !== undefined + ? get(model, 'onlineOption') + : [], + ); + set( + model, + 'offlineOption', + get(model, 'offlineOption') !== undefined + ? get(model, 'offlineOption') + : [], + ); + set( + model, + 'transferFrequency', + get(model, 'transferFrequency') !== undefined + ? get(model, 'transferFrequency') + : {}, + ); + set( + model, + 'distributionFormat', + get(model, 'distributionFormat') !== undefined + ? get(model, 'distributionFormat') + : [], + ); // set(model, 'presentationForm', getWithDefault(model, // 'presentationForm', [])); // set(model, 'onlineResource', getWithDefault(model, @@ -86,40 +106,44 @@ export default Component.extend({ // } // }), formatUri: alias( - 'model.distributionFormat.firstObject.formatSpecification.title'), + 'model.distributionFormat.firstObject.formatSpecification.title', + ), timeUnit: computed(function () { - return [{ + return [ + { name: 'year', - value: 'year' + value: 'year', }, { name: 'month', - value: 'month' + value: 'month', }, { name: 'day', - value: 'day' + value: 'day', }, { name: 'hour', - value: 'hour' + value: 'hour', }, { name: 'minute', - value: 'minute' + value: 'minute', }, { name: 'second', - value: 'second' - } - ] + value: 'second', + }, + ]; }), - formatTemplate: EmberObject.extend( /*Validations, */ { - init() { - this._super(...arguments); - this.set('formatSpecification', {}); - this.set('formatSpecification.onlineResource', [{}]); - } - }) + formatTemplate: EmberObject.extend( + /*Validations, */ { + init() { + this._super(...arguments); + this.set('formatSpecification', {}); + this.set('formatSpecification.onlineResource', [{}]); + }, + }, + ), }); diff --git a/app/pods/components/object/md-transfer/preview/component.js b/app/pods/components/object/md-transfer/preview/component.js index 5ff9496d0..041c52c5e 100644 --- a/app/pods/components/object/md-transfer/preview/component.js +++ b/app/pods/components/object/md-transfer/preview/component.js @@ -7,5 +7,5 @@ export default Component.extend({ }, classNames: ['property'], - isTable: true + isTable: true, }); diff --git a/app/pods/contact/new/id/route.js b/app/pods/contact/new/id/route.js index 288c598d5..7026b4490 100644 --- a/app/pods/contact/new/id/route.js +++ b/app/pods/contact/new/id/route.js @@ -1,6 +1,6 @@ import { NotFoundError } from '@ember-data/adapter/error'; import Route from '@ember/routing/route'; -import {inject as service} from '@ember/service'; +import { inject as service } from '@ember/service'; export default Route.extend({ store: service(), @@ -12,7 +12,7 @@ export default Route.extend({ * @chainable * @return {Object} */ - model: function(params) { + model: function (params) { let record = this.store.peekRecord('contact', params.contact_id); if (record) { @@ -37,19 +37,19 @@ export default Route.extend({ * * @method deactivate */ - deactivate: function() { + deactivate: function () { // We grab the model loaded in this route let model = this.currentRouteModel(); // If we are leaving the Route we verify if the model is in // 'isDeleted' state, which means it wasn't saved to the metadata. - if(model && model.isDeleted) { + if (model && model.isDeleted) { // We call DS#unloadRecord() which removes it from the store this.store.unloadRecord(model); } }, - setupController: function(controller, model) { + setupController: function (controller, model) { // Call _super for default behavior this._super(controller, model); @@ -85,7 +85,7 @@ export default Route.extend({ // }, actions: { - willTransition: function(transition) { + willTransition: function (transition) { if (transition.targetName === 'contact.new.index') { transition.abort(); return true; @@ -129,14 +129,15 @@ export default Route.extend({ error(error) { if (error instanceof NotFoundError) { - this.flashMessages - .warning('No contact found! Re-directing to new contact...'); + this.flashMessages.warning( + 'No contact found! Re-directing to new contact...', + ); // redirect to new this.replaceWith('contact.new'); } else { // otherwise let the error bubble return true; } - } - } + }, + }, }); diff --git a/app/pods/contact/new/index/route.js b/app/pods/contact/new/index/route.js index 9753d2de3..677053827 100644 --- a/app/pods/contact/new/index/route.js +++ b/app/pods/contact/new/index/route.js @@ -6,6 +6,6 @@ export default Route.extend({ redirect() { let rec = this.store.createRecord('contact'); - this.replaceWith('contact.new.id', rec.id); - } + this.replaceWith('contact.new.id', rec.id); + }, }); diff --git a/app/pods/contact/new/route.js b/app/pods/contact/new/route.js index ec48e9ea5..0a42e2bf7 100644 --- a/app/pods/contact/new/route.js +++ b/app/pods/contact/new/route.js @@ -6,7 +6,7 @@ export default Route.extend({ this.breadCrumb = { title: 'New', - linkable: false - } + linkable: false, + }; }, }); diff --git a/app/pods/contact/route.js b/app/pods/contact/route.js index 4aaf6728b..eda8b7203 100644 --- a/app/pods/contact/route.js +++ b/app/pods/contact/route.js @@ -6,7 +6,7 @@ export default Route.extend({ this.breadCrumb = { title: 'Contact', - linkable: false - } - } + linkable: false, + }; + }, }); diff --git a/app/pods/contact/show/edit/route.js b/app/pods/contact/show/edit/route.js index 084c8cef0..8e25209fe 100644 --- a/app/pods/contact/show/edit/route.js +++ b/app/pods/contact/show/edit/route.js @@ -1,5 +1,4 @@ import Route from '@ember/routing/route'; import HashPoll from 'mdeditor/mixins/hash-poll'; -export default Route.extend(HashPoll, { -}); +export default Route.extend(HashPoll, {}); diff --git a/app/pods/contact/show/index/route.js b/app/pods/contact/show/index/route.js index 6c74252aa..d09f667b2 100644 --- a/app/pods/contact/show/index/route.js +++ b/app/pods/contact/show/index/route.js @@ -1,4 +1,3 @@ import Route from '@ember/routing/route'; -export default Route.extend({ -}); +export default Route.extend({}); diff --git a/app/pods/contact/show/route.js b/app/pods/contact/show/route.js index 1cf4ffc8a..cddf1b856 100644 --- a/app/pods/contact/show/route.js +++ b/app/pods/contact/show/route.js @@ -7,39 +7,33 @@ export default Route.extend(ScrollTo, { flashMessages: service(), store: service(), - model: function(params) { - let rec= this.store.peekRecord('contact', params.contact_id); + model: function (params) { + let rec = this.store.peekRecord('contact', params.contact_id); return rec; }, actions: { - saveContact: function() { + saveContact: function () { let model = this.currentRouteModel(); - model - .save() - .then(() => { - //this.refresh(); - //this.setModelHash(); - this.flashMessages - .success(`Saved Contact: ${model.get('title')}`); + model.save().then(() => { + //this.refresh(); + //this.setModelHash(); + this.flashMessages.success(`Saved Contact: ${model.get('title')}`); - //this.transitionTo('contacts'); - }); + //this.transitionTo('contacts'); + }); }, - destroyContact: function() { + destroyContact: function () { let model = this.currentRouteModel(); - model - .destroyRecord() - .then(() => { - this.flashMessages - .success(`Deleted Contact: ${model.get('title')}`); - this.replaceWith('contacts'); - }); + model.destroyRecord().then(() => { + this.flashMessages.success(`Deleted Contact: ${model.get('title')}`); + this.replaceWith('contacts'); + }); }, - cancelContact: function() { + cancelContact: function () { let model = this.currentRouteModel(); let message = `Cancelled changes to Contact: ${model.get('title')}`; @@ -54,18 +48,16 @@ export default Route.extend(ScrollTo, { return; } - model - .reload() - .then(() => { - this.flashMessages.warning(message); - }); + model.reload().then(() => { + this.flashMessages.warning(message); + }); }, - copyContact: function() { - - this.flashMessages - .success(`Copied Contact: ${this.currentRouteModel().get('title')}`); + copyContact: function () { + this.flashMessages.success( + `Copied Contact: ${this.currentRouteModel().get('title')}`, + ); this.transitionTo('contact.new.id', copy(this.currentRouteModel())); - } - } + }, + }, }); diff --git a/app/pods/contacts/route.js b/app/pods/contacts/route.js index 951cedc65..e79dca684 100644 --- a/app/pods/contacts/route.js +++ b/app/pods/contacts/route.js @@ -1,37 +1,43 @@ import Route from '@ember/routing/route'; import { inject as service } from '@ember/service'; -const columns = [{ - propertyName: 'title', - title: 'Title' -}, { - propertyName: 'defaultOrganizationName', - title: 'Organization' -}, { - propertyName: 'json.electronicMailAddress.firstObject', - title: 'E-mail' -}, { - propertyName: 'contactId', - title: 'ID', - isHidden: true -}, { - propertyName: 'type', - title: 'Contact Type', - filterWithSelect: true -}]; +const columns = [ + { + propertyName: 'title', + title: 'Title', + }, + { + propertyName: 'defaultOrganizationName', + title: 'Organization', + }, + { + propertyName: 'json.electronicMailAddress.firstObject', + title: 'E-mail', + }, + { + propertyName: 'contactId', + title: 'ID', + isHidden: true, + }, + { + propertyName: 'type', + title: 'Contact Type', + filterWithSelect: true, + }, +]; export default Route.extend({ store: service(), slider: service(), model() { //return this.store.peekAll('contact'); - return this.modelFor('application').findBy('modelName','contact'); + return this.modelFor('application').findBy('modelName', 'contact'); }, columns: columns, actions: { - getColumns(){ + getColumns() { return this.columns; }, @@ -44,6 +50,6 @@ export default Route.extend({ slider.toggleSlider(true); return false; - } - } + }, + }, }); diff --git a/app/pods/dashboard/route.js b/app/pods/dashboard/route.js index 6c74252aa..d09f667b2 100644 --- a/app/pods/dashboard/route.js +++ b/app/pods/dashboard/route.js @@ -1,4 +1,3 @@ import Route from '@ember/routing/route'; -export default Route.extend({ -}); +export default Route.extend({}); diff --git a/app/pods/dictionaries/route.js b/app/pods/dictionaries/route.js index 05a24aa71..b33bdd57d 100644 --- a/app/pods/dictionaries/route.js +++ b/app/pods/dictionaries/route.js @@ -1,30 +1,34 @@ import Route from '@ember/routing/route'; import { inject as service } from '@ember/service'; -const columns = [{ - propertyName: 'title', - title: 'Title' -},{ - propertyName: 'dictionaryId', - title: 'ID', - isHidden: true -}, { - propertyName: 'json.dataDictionary.subject', - title: 'Subject' -}]; +const columns = [ + { + propertyName: 'title', + title: 'Title', + }, + { + propertyName: 'dictionaryId', + title: 'ID', + isHidden: true, + }, + { + propertyName: 'json.dataDictionary.subject', + title: 'Subject', + }, +]; export default Route.extend({ store: service(), slider: service(), model() { //return this.store.peekAll('contact'); - return this.modelFor('application').findBy('modelName','dictionary'); + return this.modelFor('application').findBy('modelName', 'dictionary'); }, columns: columns, actions: { - getColumns(){ + getColumns() { return this.columns; }, @@ -37,6 +41,6 @@ export default Route.extend({ slider.toggleSlider(true); return false; - } - } + }, + }, }); diff --git a/app/pods/dictionary/new/id/route.js b/app/pods/dictionary/new/id/route.js index 961a85674..a59322906 100644 --- a/app/pods/dictionary/new/id/route.js +++ b/app/pods/dictionary/new/id/route.js @@ -17,36 +17,39 @@ export default Route.extend({ breadCrumb: null, - deactivate: function() { + deactivate: function () { // We grab the model loaded in this route let model = this.currentRouteModel(); // If we are leaving the Route we verify if the model is in // 'isDeleted' state, which means it wasn't saved to the metadata. - if(model && model.isDeleted) { + if (model && model.isDeleted) { // We call DS#unloadRecord() which removes it from the store this.store.unloadRecord(model); } }, //some test actions - setupController: function(controller, model) { + setupController: function (controller, model) { // Call _super for default behavior this._super(controller, model); // setup tests for required attributes controller.noName = computed( - 'model.json.dataDictionary.citation.title', function() { + 'model.json.dataDictionary.citation.title', + function () { return model.get('json.dataDictionary.citation.title') ? false : true; - }); + }, + ); controller.noType = computed( - 'model.json.dataDictionary.resourceType', function() { + 'model.json.dataDictionary.resourceType', + function () { return model.get('json.dataDictionary.resourceType') ? false : true; - }); + }, + ); controller.allowSave = computed('noType', 'noName', function () { return this.noName || this.noType; }); - }, // serialize: function (model) { @@ -65,8 +68,8 @@ export default Route.extend({ actions: { willTransition: function (transition) { if (transition.targetName === 'dictionary.new.index') { - transition.abort(); - return true; + transition.abort(); + return true; } // We grab the model loaded in this route @@ -96,9 +99,10 @@ export default Route.extend({ }, error(error) { - if(error instanceof NotFoundError) { - this.flashMessages - .warning('No dictionary found! Re-directing to new record...'); + if (error instanceof NotFoundError) { + this.flashMessages.warning( + 'No dictionary found! Re-directing to new record...', + ); // redirect to new this.replaceWith('dictionary.new'); } else { @@ -106,6 +110,5 @@ export default Route.extend({ return true; } }, - } - + }, }); diff --git a/app/pods/dictionary/new/index/route.js b/app/pods/dictionary/new/index/route.js index 63dc01c44..7f4b8bf47 100644 --- a/app/pods/dictionary/new/index/route.js +++ b/app/pods/dictionary/new/index/route.js @@ -3,9 +3,9 @@ import { inject as service } from '@ember/service'; export default Route.extend({ store: service(), - redirect: function() { + redirect: function () { let rec = this.store.createRecord('dictionary'); this.replaceWith('dictionary.new.id', rec.id); - } + }, }); diff --git a/app/pods/dictionary/new/route.js b/app/pods/dictionary/new/route.js index ec48e9ea5..0a42e2bf7 100644 --- a/app/pods/dictionary/new/route.js +++ b/app/pods/dictionary/new/route.js @@ -6,7 +6,7 @@ export default Route.extend({ this.breadCrumb = { title: 'New', - linkable: false - } + linkable: false, + }; }, }); diff --git a/app/pods/dictionary/route.js b/app/pods/dictionary/route.js index 5dbe71965..7a40ef992 100644 --- a/app/pods/dictionary/route.js +++ b/app/pods/dictionary/route.js @@ -6,7 +6,7 @@ export default Route.extend({ this.breadCrumb = { title: 'Dictionary', - linkable: false - } + linkable: false, + }; }, }); diff --git a/app/pods/dictionary/show/edit/citation/identifier/route.js b/app/pods/dictionary/show/edit/citation/identifier/route.js index 4a0d39194..fa8bf307b 100644 --- a/app/pods/dictionary/show/edit/citation/identifier/route.js +++ b/app/pods/dictionary/show/edit/citation/identifier/route.js @@ -10,34 +10,39 @@ export default Route.extend(ScrollTo, { return this.setupModel(); }, - setupController: function () { // Call _super for default behavior this._super(...arguments); - this.controller.set('parentModel', this.modelFor('dictionary.show.edit.citation.index')); - this.controllerFor('dictionary.show.edit') - .setProperties({ - onCancel: this.setupModel, - cancelScope: this - }); + this.controller.set( + 'parentModel', + this.modelFor('dictionary.show.edit.citation.index'), + ); + this.controllerFor('dictionary.show.edit').setProperties({ + onCancel: this.setupModel, + cancelScope: this, + }); }, setupModel() { let identifierId = this.identifierId; let model = this.modelFor('dictionary.show.edit.citation'); let identifiers = model.get('json.dataDictionary.citation.identifier'); - let identifier = identifierId && isArray(identifiers) ? identifiers.get(identifierId) : undefined; + let identifier = + identifierId && isArray(identifiers) + ? identifiers.get(identifierId) + : undefined; //make sure the identifier exists if (isEmpty(identifier)) { - this.flashMessages - .warning('No identifier found! Re-directing to citation...'); + this.flashMessages.warning( + 'No identifier found! Re-directing to citation...', + ); this.replaceWith('dictionary.show.edit.citation.index'); return; } return identifier; - } + }, }); diff --git a/app/pods/dictionary/show/edit/citation/index/route.js b/app/pods/dictionary/show/edit/citation/index/route.js index daaf08537..9e7eacc6e 100644 --- a/app/pods/dictionary/show/edit/citation/index/route.js +++ b/app/pods/dictionary/show/edit/citation/index/route.js @@ -4,10 +4,11 @@ import ScrollTo from 'mdeditor/mixins/scroll-to'; export default Route.extend(ScrollTo, { actions: { editIdentifier(index) { - this.transitionTo('dictionary.show.edit.citation.identifier', index) - .then(function () { + this.transitionTo('dictionary.show.edit.citation.identifier', index).then( + function () { this.setScrollTo('identifier'); - }.bind(this)); - } - } + }.bind(this), + ); + }, + }, }); diff --git a/app/pods/dictionary/show/edit/citation/route.js b/app/pods/dictionary/show/edit/citation/route.js index 6c74252aa..d09f667b2 100644 --- a/app/pods/dictionary/show/edit/citation/route.js +++ b/app/pods/dictionary/show/edit/citation/route.js @@ -1,4 +1,3 @@ import Route from '@ember/routing/route'; -export default Route.extend({ -}); +export default Route.extend({}); diff --git a/app/pods/dictionary/show/edit/domain/edit/citation/identifier/route.js b/app/pods/dictionary/show/edit/domain/edit/citation/identifier/route.js index 693358870..0a49ac229 100644 --- a/app/pods/dictionary/show/edit/domain/edit/citation/identifier/route.js +++ b/app/pods/dictionary/show/edit/domain/edit/citation/identifier/route.js @@ -4,8 +4,10 @@ import ScrollTo from 'mdeditor/mixins/scroll-to'; export default Route.extend(ScrollTo, { beforeModel() { - this.set('domainId', this.paramsFor( - 'dictionary.show.edit.domain.edit').domain_id); + this.set( + 'domainId', + this.paramsFor('dictionary.show.edit.domain.edit').domain_id, + ); }, model(params) { this.set('identifierId', params.identifier_id); @@ -13,17 +15,15 @@ export default Route.extend(ScrollTo, { return this.setupModel(); }, - setupController: function () { // Call _super for default behavior this._super(...arguments); this.controller.set('parentModel', this.modelFor('dictionary.show.edit')); - this.controllerFor('dictionary.show.edit') - .setProperties({ - onCancel: this.setupModel, - cancelScope: this - }); + this.controllerFor('dictionary.show.edit').setProperties({ + onCancel: this.setupModel, + cancelScope: this, + }); }, setupModel() { @@ -31,18 +31,24 @@ export default Route.extend(ScrollTo, { //let model = this.modelFor('dictionary.show.edit.citation.index'); //let identifiers = model.get('json.dataDictionary.citation.identifier'); let model = this.modelFor('dictionary.show.edit'); - let identifier = model.get('json.dataDictionary.domain.' + this.domainId + '.domainReference.identifier.' + identifierId); + let identifier = model.get( + 'json.dataDictionary.domain.' + + this.domainId + + '.domainReference.identifier.' + + identifierId, + ); //let identifier = identifierId && isArray(identifiers) ? identifiers.get(identifierId) : undefined; //make sure the identifier exists if (isEmpty(identifier)) { - this.flashMessages - .warning('No identifier found! Re-directing to citation...'); + this.flashMessages.warning( + 'No identifier found! Re-directing to citation...', + ); this.replaceWith('dictionary.show.edit.domain.edit.citation.index'); return; } return identifier; - } + }, }); diff --git a/app/pods/dictionary/show/edit/domain/edit/citation/index/route.js b/app/pods/dictionary/show/edit/domain/edit/citation/index/route.js index f65ca0106..fa3ab10eb 100644 --- a/app/pods/dictionary/show/edit/domain/edit/citation/index/route.js +++ b/app/pods/dictionary/show/edit/domain/edit/citation/index/route.js @@ -1,27 +1,21 @@ import Route from '@ember/routing/route'; import ScrollTo from 'mdeditor/mixins/scroll-to'; -import { - isEmpty -} from '@ember/utils'; -import { - get, - set -} from '@ember/object'; +import { isEmpty } from '@ember/utils'; +import { get, set } from '@ember/object'; export default Route.extend(ScrollTo, { init() { this._super(...arguments); this.breadCrumb = { - title: 'Reference' - } + title: 'Reference', + }; }, afterModel(model) { - let domainId = this.paramsFor('dictionary.show.edit.domain.edit') - .domain_id; + let domainId = this.paramsFor('dictionary.show.edit.domain.edit').domain_id; - if(isEmpty(get(model, 'domainReference'))) { + if (isEmpty(get(model, 'domainReference'))) { set(model, 'domainReference', {}); } @@ -32,22 +26,22 @@ export default Route.extend(ScrollTo, { // Call _super for default behavior this._super(...arguments); - this.controller.set('parentModel', this.modelFor( - 'dictionary.show.edit')); + this.controller.set('parentModel', this.modelFor('dictionary.show.edit')); }, actions: { backToDomain() { - this.transitionTo('dictionary.show.edit.domain.edit', - this.domainId); + this.transitionTo('dictionary.show.edit.domain.edit', this.domainId); }, editIdentifier(index) { this.transitionTo( - 'dictionary.show.edit.domain.edit.citation.identifier', - index) - .then(function () { + 'dictionary.show.edit.domain.edit.citation.identifier', + index, + ).then( + function () { this.setScrollTo('identifier'); - }.bind(this)); - } - } + }.bind(this), + ); + }, + }, }); diff --git a/app/pods/dictionary/show/edit/domain/edit/citation/route.js b/app/pods/dictionary/show/edit/domain/edit/citation/route.js index 4730d4e27..d69c88db8 100644 --- a/app/pods/dictionary/show/edit/domain/edit/citation/route.js +++ b/app/pods/dictionary/show/edit/domain/edit/citation/route.js @@ -5,7 +5,7 @@ export default Route.extend({ this._super(...arguments); this.breadCrumb = { - title: 'Reference' - } - } + title: 'Reference', + }; + }, }); diff --git a/app/pods/dictionary/show/edit/domain/edit/index/route.js b/app/pods/dictionary/show/edit/domain/edit/index/route.js index e0626b6aa..129020753 100644 --- a/app/pods/dictionary/show/edit/domain/edit/index/route.js +++ b/app/pods/dictionary/show/edit/domain/edit/index/route.js @@ -4,8 +4,10 @@ import ScrollTo from 'mdeditor/mixins/scroll-to'; export default Route.extend(ScrollTo, { beforeModel() { - this.set('domainId', this.paramsFor( - 'dictionary.show.edit.domain.edit').domain_id); + this.set( + 'domainId', + this.paramsFor('dictionary.show.edit.domain.edit').domain_id, + ); }, setupController: function () { @@ -17,25 +19,26 @@ export default Route.extend(ScrollTo, { this.controller.set('parentModel', this.modelFor('dictionary.show.edit')); this.controller.set('domainId', get(parent, 'domainId')); - this.controllerFor('dictionary.show.edit') - .setProperties({ - onCancel: parent.get('setupModel'), - cancelScope: this - }); + this.controllerFor('dictionary.show.edit').setProperties({ + onCancel: parent.get('setupModel'), + cancelScope: this, + }); }, actions: { editCitation(scrollTo) { - this.transitionTo('dictionary.show.edit.domain.edit.citation') - .then(function () { + this.transitionTo('dictionary.show.edit.domain.edit.citation').then( + function () { this.setScrollTo(scrollTo); - }.bind(this)); + }.bind(this), + ); }, editDomainItem(id) { - this.transitionTo('dictionary.show.edit.domain.edit.item', id) - .then(function () { + this.transitionTo('dictionary.show.edit.domain.edit.item', id).then( + function () { this.setScrollTo('md-domainitem-' + id); - }.bind(this)); - } - } + }.bind(this), + ); + }, + }, }); diff --git a/app/pods/dictionary/show/edit/domain/edit/item/route.js b/app/pods/dictionary/show/edit/domain/edit/item/route.js index 41d1b3ac4..b9fb5cae4 100644 --- a/app/pods/dictionary/show/edit/domain/edit/item/route.js +++ b/app/pods/dictionary/show/edit/domain/edit/item/route.js @@ -1,19 +1,15 @@ import Route from '@ember/routing/route'; -import { - computed -} from '@ember/object'; -import { - isArray -} from '@ember/array'; -import { - isEmpty -} from '@ember/utils'; +import { computed } from '@ember/object'; +import { isArray } from '@ember/array'; +import { isEmpty } from '@ember/utils'; import ScrollTo from 'mdeditor/mixins/scroll-to'; export default Route.extend(ScrollTo, { beforeModel() { - this.set('domainId', this.paramsFor( - 'dictionary.show.edit.domain.edit').domain_id); + this.set( + 'domainId', + this.paramsFor('dictionary.show.edit.domain.edit').domain_id, + ); }, model(params) { this.set('itemId', params.item_id); @@ -23,7 +19,7 @@ export default Route.extend(ScrollTo, { breadCrumb: computed('itemId', function () { return { - title: 'Item ' + this.itemId + title: 'Item ' + this.itemId, }; }), @@ -33,28 +29,29 @@ export default Route.extend(ScrollTo, { //let parent = this.controllerFor('dictionary.show.edit.domain.edit.index'); - this.controller.set('parentModel', this.modelFor( - 'dictionary.show.edit')); + this.controller.set('parentModel', this.modelFor('dictionary.show.edit')); this.controller.set('domainId', this.domainId); this.controller.set('itemId', this.itemId); - this.controllerFor('dictionary.show.edit') - .setProperties({ - onCancel: this.setupModel, - cancelScope: this - }); + this.controllerFor('dictionary.show.edit').setProperties({ + onCancel: this.setupModel, + cancelScope: this, + }); }, setupModel() { let itemId = this.itemId; let model = this.modelFor('dictionary.show.edit'); - let objects = model.get('json.dataDictionary.domain.' + this.domainId + '.domainItem'); - let resource = itemId && isArray(objects) ? objects.objectAt(itemId) : - undefined; + let objects = model.get( + 'json.dataDictionary.domain.' + this.domainId + '.domainItem', + ); + let resource = + itemId && isArray(objects) ? objects.objectAt(itemId) : undefined; //make sure the domain item exists - if(isEmpty(resource)) { - this.flashMessages - .warning('No Domain Item found! Re-directing to list...'); + if (isEmpty(resource)) { + this.flashMessages.warning( + 'No Domain Item found! Re-directing to list...', + ); this.replaceWith('dictionary.show.edit.domain'); return; @@ -65,8 +62,7 @@ export default Route.extend(ScrollTo, { actions: { backToDomain() { - this.transitionTo('dictionary.show.edit.domain.edit', - this.domainId); - } - } + this.transitionTo('dictionary.show.edit.domain.edit', this.domainId); + }, + }, }); diff --git a/app/pods/dictionary/show/edit/domain/edit/route.js b/app/pods/dictionary/show/edit/domain/edit/route.js index e45570a92..c58a11df9 100644 --- a/app/pods/dictionary/show/edit/domain/edit/route.js +++ b/app/pods/dictionary/show/edit/domain/edit/route.js @@ -12,7 +12,7 @@ export default Route.extend({ breadCrumb: computed('domainId', function () { return { - title: this.domainId + title: this.domainId, }; }), @@ -22,24 +22,24 @@ export default Route.extend({ this.controller.set('setupModel', this.setupModel); this.controller.set('domainId', this.domainId); - this.controllerFor('dictionary.show.edit') - .setProperties({ - onCancel: this.setupModel, - cancelScope: this - }); + this.controllerFor('dictionary.show.edit').setProperties({ + onCancel: this.setupModel, + cancelScope: this, + }); }, setupModel() { let domainId = this.domainId; let model = this.modelFor('dictionary.show.edit'); let objects = model.get('json.dataDictionary.domain'); - let resource = domainId && isArray(objects) ? objects.objectAt(domainId) : - undefined; + let resource = + domainId && isArray(objects) ? objects.objectAt(domainId) : undefined; //make sure the domain exists - if(isEmpty(resource)) { - this.flashMessages - .warning('No Domain object found! Re-directing to list...'); + if (isEmpty(resource)) { + this.flashMessages.warning( + 'No Domain object found! Re-directing to list...', + ); this.replaceWith('dictionary.show.edit.domain'); return; diff --git a/app/pods/dictionary/show/edit/domain/index/route.js b/app/pods/dictionary/show/edit/domain/index/route.js index 47ddc518d..54bca61af 100644 --- a/app/pods/dictionary/show/edit/domain/index/route.js +++ b/app/pods/dictionary/show/edit/domain/index/route.js @@ -6,20 +6,26 @@ export default Route.extend({ this._super(...arguments); let model = get(m, 'json.dataDictionary'); - set(model, 'domain', get(model, 'domain') !== undefined ? get(model, 'domain') : []); + set( + model, + 'domain', + get(model, 'domain') !== undefined ? get(model, 'domain') : [], + ); }, - setupController: function() { + setupController: function () { // Call _super for default behavior this._super(...arguments); - this.controller.set('parentModel', this.modelFor( - 'dictionary.show.edit.index')); + this.controller.set( + 'parentModel', + this.modelFor('dictionary.show.edit.index'), + ); }, actions: { editDomain(id) { this.transitionTo('dictionary.show.edit.domain.edit', id); - } - } + }, + }, }); diff --git a/app/pods/dictionary/show/edit/domain/route.js b/app/pods/dictionary/show/edit/domain/route.js index 13452a042..0de0d763d 100644 --- a/app/pods/dictionary/show/edit/domain/route.js +++ b/app/pods/dictionary/show/edit/domain/route.js @@ -5,7 +5,7 @@ export default Route.extend({ this._super(...arguments); this.breadCrumb = { - title: 'Domains' - } + title: 'Domains', + }; }, }); diff --git a/app/pods/dictionary/show/edit/entity/edit/attribute/index/route.js b/app/pods/dictionary/show/edit/entity/edit/attribute/index/route.js index f57b3431a..5fea788a7 100644 --- a/app/pods/dictionary/show/edit/entity/edit/attribute/index/route.js +++ b/app/pods/dictionary/show/edit/entity/edit/attribute/index/route.js @@ -1,44 +1,46 @@ import Route from '@ember/routing/route'; -import { - get -} from '@ember/object'; +import { get } from '@ember/object'; import ScrollTo from 'mdeditor/mixins/scroll-to'; export default Route.extend(ScrollTo, { beforeModel() { - this.set('entityId', this.paramsFor( - 'dictionary.show.edit.entity.edit').entity_id); - this.set('attributeId', this.paramsFor( - 'dictionary.show.edit.entity.edit.attribute').attribute_id); + this.set( + 'entityId', + this.paramsFor('dictionary.show.edit.entity.edit').entity_id, + ); + this.set( + 'attributeId', + this.paramsFor('dictionary.show.edit.entity.edit.attribute').attribute_id, + ); }, setupController: function () { // Call _super for default behavior this._super(...arguments); - let parent = this.controllerFor('dictionary.show.edit.entity.edit.attribute'); + let parent = this.controllerFor( + 'dictionary.show.edit.entity.edit.attribute', + ); - this.controller.set('parentModel', this.modelFor( - 'dictionary.show.edit')); + this.controller.set('parentModel', this.modelFor('dictionary.show.edit')); this.controller.set('entityId', this.entityId); this.controller.set('attributeId', this.attributeId); - this.controllerFor('dictionary.show.edit') - .setProperties({ - onCancel: get(parent, 'setupModel'), - cancelScope: this - }); + this.controllerFor('dictionary.show.edit').setProperties({ + onCancel: get(parent, 'setupModel'), + cancelScope: this, + }); }, actions: { backToEntity() { - this.transitionTo('dictionary.show.edit.entity.edit', - this.entityId); + this.transitionTo('dictionary.show.edit.entity.edit', this.entityId); }, editCitation(scrollTo) { - this.transitionTo('dictionary.show.edit.domain.edit.citation') - .then(function () { + this.transitionTo('dictionary.show.edit.domain.edit.citation').then( + function () { this.setScrollTo(scrollTo); - }.bind(this)); - } - } + }.bind(this), + ); + }, + }, }); diff --git a/app/pods/dictionary/show/edit/entity/edit/attribute/route.js b/app/pods/dictionary/show/edit/entity/edit/attribute/route.js index a6cd4b4d3..b33914c27 100644 --- a/app/pods/dictionary/show/edit/entity/edit/attribute/route.js +++ b/app/pods/dictionary/show/edit/entity/edit/attribute/route.js @@ -1,19 +1,17 @@ import Route from '@ember/routing/route'; import { //computed, - get + get, } from '@ember/object'; -import { - isArray -} from '@ember/array'; -import { - isEmpty -} from '@ember/utils'; +import { isArray } from '@ember/array'; +import { isEmpty } from '@ember/utils'; export default Route.extend({ beforeModel() { - this.set('entityId', this.paramsFor( - 'dictionary.show.edit.entity.edit').entity_id); + this.set( + 'entityId', + this.paramsFor('dictionary.show.edit.entity.edit').entity_id, + ); }, model(params) { this.set('attributeId', params.attribute_id); @@ -33,21 +31,24 @@ export default Route.extend({ this._super(controller, model); this.controller.set('setupModel', this.setupModel); - }, setupModel() { let attributeId = this.attributeId; let model = this.modelFor('dictionary.show.edit'); - let objects = model.get('json.dataDictionary.entity.' + this.entityId + '.attribute'); - let resource = attributeId && isArray(objects) ? objects.objectAt( - attributeId) : - undefined; + let objects = model.get( + 'json.dataDictionary.entity.' + this.entityId + '.attribute', + ); + let resource = + attributeId && isArray(objects) + ? objects.objectAt(attributeId) + : undefined; //make sure the entity item exists - if(isEmpty(resource)) { - this.flashMessages - .warning('No Attribute found! Re-directing to Entity...'); + if (isEmpty(resource)) { + this.flashMessages.warning( + 'No Attribute found! Re-directing to Entity...', + ); this.replaceWith('dictionary.show.edit.entity.edit'); return; @@ -58,18 +59,19 @@ export default Route.extend({ actions: { backToEntity() { - this.transitionTo('dictionary.show.edit.entity.edit', - this.entityId); + this.transitionTo('dictionary.show.edit.entity.edit', this.entityId); }, editIdentifier(index) { let model = this.currentRouteModel(); this.transitionTo( - 'dictionary.show.edit.entity.edit.attribute.identifier', - get(model, 'attributeReference.identifier.' + index)) - .then(function () { + 'dictionary.show.edit.entity.edit.attribute.identifier', + get(model, 'attributeReference.identifier.' + index), + ).then( + function () { this.setScrollTo('identifier'); - }.bind(this)); - } - } + }.bind(this), + ); + }, + }, }); diff --git a/app/pods/dictionary/show/edit/entity/edit/citation/identifier/route.js b/app/pods/dictionary/show/edit/entity/edit/citation/identifier/route.js index 73d7e0b72..900c781bc 100644 --- a/app/pods/dictionary/show/edit/entity/edit/citation/identifier/route.js +++ b/app/pods/dictionary/show/edit/entity/edit/citation/identifier/route.js @@ -1,18 +1,18 @@ import Route from '@ember/routing/route'; -import { - isEmpty -} from '@ember/utils'; -import { - isArray -} from '@ember/array'; +import { isEmpty } from '@ember/utils'; +import { isArray } from '@ember/array'; import ScrollTo from 'mdeditor/mixins/scroll-to'; export default Route.extend(ScrollTo, { beforeModel() { - this.set('entityId', this.paramsFor( - 'dictionary.show.edit.entity.edit').entity_id); - this.set('citationId', this.paramsFor( - 'dictionary.show.edit.entity.edit.citation').citation_id); + this.set( + 'entityId', + this.paramsFor('dictionary.show.edit.entity.edit').entity_id, + ); + this.set( + 'citationId', + this.paramsFor('dictionary.show.edit.entity.edit.citation').citation_id, + ); }, model(params) { this.set('identifierId', params.identifier_id); @@ -24,13 +24,11 @@ export default Route.extend(ScrollTo, { // Call _super for default behavior this._super(...arguments); - this.controller.set('parentModel', this.modelFor( - 'dictionary.show.edit')); - this.controllerFor('dictionary.show.edit') - .setProperties({ - onCancel: this.setupModel, - cancelScope: this - }); + this.controller.set('parentModel', this.modelFor('dictionary.show.edit')); + this.controllerFor('dictionary.show.edit').setProperties({ + onCancel: this.setupModel, + cancelScope: this, + }); }, setupModel() { @@ -38,14 +36,23 @@ export default Route.extend(ScrollTo, { //let model = this.modelFor('dictionary.show.edit.citation.index'); //let identifiers = model.get('json.dataDictionary.citation.identifier'); let model = this.modelFor('dictionary.show.edit'); - let identifiers = model.get('json.dataDictionary.entity.' + this.entityId + '.entityReference.' + this.citationId + '.identifier'); - let identifier = identifierId && isArray(identifiers) ? identifiers.get( - identifierId) : undefined; + let identifiers = model.get( + 'json.dataDictionary.entity.' + + this.entityId + + '.entityReference.' + + this.citationId + + '.identifier', + ); + let identifier = + identifierId && isArray(identifiers) + ? identifiers.get(identifierId) + : undefined; //make sure the identifier exists - if(isEmpty(identifier)) { - this.flashMessages - .warning('No identifier found! Re-directing to citation...'); + if (isEmpty(identifier)) { + this.flashMessages.warning( + 'No identifier found! Re-directing to citation...', + ); this.replaceWith('dictionary.show.edit.entity.edit.citation.index'); return; @@ -56,8 +63,11 @@ export default Route.extend(ScrollTo, { actions: { backToReference() { - this.transitionTo('dictionary.show.edit.entity.edit.citation', - this.entityId, this.citationId); - } - } + this.transitionTo( + 'dictionary.show.edit.entity.edit.citation', + this.entityId, + this.citationId, + ); + }, + }, }); diff --git a/app/pods/dictionary/show/edit/entity/edit/citation/index/route.js b/app/pods/dictionary/show/edit/entity/edit/citation/index/route.js index 69e90e208..e7bbb5408 100644 --- a/app/pods/dictionary/show/edit/entity/edit/citation/index/route.js +++ b/app/pods/dictionary/show/edit/entity/edit/citation/index/route.js @@ -4,14 +4,17 @@ import ScrollTo from 'mdeditor/mixins/scroll-to'; export default Route.extend(ScrollTo, { actions: { editIdentifier(index) { - this.transitionTo('dictionary.show.edit.entity.edit.citation.identifier', index) - .then(function () { + this.transitionTo( + 'dictionary.show.edit.entity.edit.citation.identifier', + index, + ).then( + function () { this.setScrollTo('entity-identifier'); - }.bind(this)); - } + }.bind(this), + ); + }, }, backToEntity() { - this.transitionTo('dictionary.show.edit.entity.edit', - this.entityId); - } + this.transitionTo('dictionary.show.edit.entity.edit', this.entityId); + }, }); diff --git a/app/pods/dictionary/show/edit/entity/edit/citation/route.js b/app/pods/dictionary/show/edit/entity/edit/citation/route.js index 94b228c56..588b14326 100644 --- a/app/pods/dictionary/show/edit/entity/edit/citation/route.js +++ b/app/pods/dictionary/show/edit/entity/edit/citation/route.js @@ -1,23 +1,21 @@ import Route from '@ember/routing/route'; -import { - isArray -} from '@ember/array'; -import { - isEmpty -} from '@ember/utils'; +import { isArray } from '@ember/array'; +import { isEmpty } from '@ember/utils'; export default Route.extend({ init() { this._super(...arguments); this.breadCrumb = { - title: 'Reference' + title: 'Reference', }; }, beforeModel() { - this.set('entityId', this.paramsFor( - 'dictionary.show.edit.entity.edit').entity_id); + this.set( + 'entityId', + this.paramsFor('dictionary.show.edit.entity.edit').entity_id, + ); }, model(params) { @@ -30,26 +28,25 @@ export default Route.extend({ // Call _super for default behavior this._super(...arguments); - this.controller.set('parentModel', this.modelFor( - 'dictionary.show.edit')); - this.controllerFor('dictionary.show.edit') - .setProperties({ - onCancel: this.setupModel, - cancelScope: this - }); + this.controller.set('parentModel', this.modelFor('dictionary.show.edit')); + this.controllerFor('dictionary.show.edit').setProperties({ + onCancel: this.setupModel, + cancelScope: this, + }); }, setupModel() { let citationId = this.citationId; let model = this.modelFor('dictionary.show.edit'); - let citations = model.get('json.dataDictionary.entity.' + this.entityId + '.entityReference'); - let citation = citationId && isArray(citations) ? citations.get( - citationId) : undefined; + let citations = model.get( + 'json.dataDictionary.entity.' + this.entityId + '.entityReference', + ); + let citation = + citationId && isArray(citations) ? citations.get(citationId) : undefined; //make sure the citation exists - if(isEmpty(citation)) { - this.flashMessages - .warning('No Entity Reference found! Re-directing...'); + if (isEmpty(citation)) { + this.flashMessages.warning('No Entity Reference found! Re-directing...'); this.replaceWith('dictionary.show.edit.entity.edit'); return; @@ -59,8 +56,7 @@ export default Route.extend({ }, actions: { backToEntity() { - this.transitionTo('dictionary.show.edit.entity.edit', - this.entityId); - } - } + this.transitionTo('dictionary.show.edit.entity.edit', this.entityId); + }, + }, }); diff --git a/app/pods/dictionary/show/edit/entity/edit/index/route.js b/app/pods/dictionary/show/edit/entity/edit/index/route.js index 1bf59dee3..3e7ae80e6 100644 --- a/app/pods/dictionary/show/edit/entity/edit/index/route.js +++ b/app/pods/dictionary/show/edit/entity/edit/index/route.js @@ -1,13 +1,13 @@ import Route from '@ember/routing/route'; -import { - get -} from '@ember/object'; +import { get } from '@ember/object'; import ScrollTo from 'mdeditor/mixins/scroll-to'; export default Route.extend(ScrollTo, { beforeModel() { - this.set('entityId', this.paramsFor( - 'dictionary.show.edit.entity.edit').entity_id); + this.set( + 'entityId', + this.paramsFor('dictionary.show.edit.entity.edit').entity_id, + ); }, setupController: function () { @@ -16,30 +16,32 @@ export default Route.extend(ScrollTo, { let parent = this.controllerFor('dictionary.show.edit.entity.edit'); - this.controller.set('parentModel', this.modelFor( - 'dictionary.show.edit')); + this.controller.set('parentModel', this.modelFor('dictionary.show.edit')); this.controller.set('entityId', get(parent, 'entityId')); - this.controllerFor('dictionary.show.edit') - .setProperties({ - onCancel: parent.get('setupModel'), - cancelScope: this - }); + this.controllerFor('dictionary.show.edit').setProperties({ + onCancel: parent.get('setupModel'), + cancelScope: this, + }); }, actions: { editCitation(id) { - this.transitionTo('dictionary.show.edit.entity.edit.citation', id) - .then(function () { + this.transitionTo('dictionary.show.edit.entity.edit.citation', id).then( + function () { this.setScrollTo('entity-reference'); - }.bind(this)); + }.bind(this), + ); }, editAttribute(id) { - this.transitionTo('dictionary.show.edit.entity.edit.attribute.index', - id) - .then(function () { + this.transitionTo( + 'dictionary.show.edit.entity.edit.attribute.index', + id, + ).then( + function () { this.setScrollTo('md-attribute-' + id); - }.bind(this)); - } - } + }.bind(this), + ); + }, + }, }); diff --git a/app/pods/dictionary/show/edit/entity/edit/route.js b/app/pods/dictionary/show/edit/entity/edit/route.js index 34320595c..d828f50c4 100644 --- a/app/pods/dictionary/show/edit/entity/edit/route.js +++ b/app/pods/dictionary/show/edit/entity/edit/route.js @@ -12,7 +12,7 @@ export default Route.extend({ breadCrumb: computed('entityId', function () { return { - title: this.entityId + title: this.entityId, }; }), @@ -22,29 +22,29 @@ export default Route.extend({ this.controller.set('setupModel', this.setupModel); this.controller.set('entityId', this.entityId); - this.controllerFor('dictionary.show.edit') - .setProperties({ - onCancel: this.setupModel, - cancelScope: this - }); + this.controllerFor('dictionary.show.edit').setProperties({ + onCancel: this.setupModel, + cancelScope: this, + }); }, setupModel() { let entityId = this.entityId; let model = this.modelFor('dictionary.show.edit'); let objects = model.get('json.dataDictionary.entity'); - let resource = entityId && isArray(objects) ? objects.objectAt(entityId) : - undefined; + let resource = + entityId && isArray(objects) ? objects.objectAt(entityId) : undefined; //make sure the entity exists - if(isEmpty(resource)) { - this.flashMessages - .warning('No Entity object found! Re-directing to list...'); + if (isEmpty(resource)) { + this.flashMessages.warning( + 'No Entity object found! Re-directing to list...', + ); this.replaceWith('dictionary.show.edit.entity'); return; } return resource; - } + }, }); diff --git a/app/pods/dictionary/show/edit/entity/import/route.js b/app/pods/dictionary/show/edit/entity/import/route.js index 128419ff7..34402d8d9 100644 --- a/app/pods/dictionary/show/edit/entity/import/route.js +++ b/app/pods/dictionary/show/edit/entity/import/route.js @@ -1,28 +1,21 @@ import Route from '@ember/routing/route'; -import { - max, - min, - equal, - not, - gt -} from '@ember/object/computed'; -import { - typeOf, - isPresent, - isBlank -} from '@ember/utils'; +import { max, min, equal, not, gt } from '@ember/object/computed'; +import { typeOf, isPresent, isBlank } from '@ember/utils'; import EmberObject, { get, set, computed } from '@ember/object'; -import uuidV4 from "uuid/v4"; +import uuidV4 from 'uuid/v4'; export default Route.extend({ setupController(controller, model) { // Call _super for default behavior this._super(controller, model); // Implement your custom setup after - controller.set('entity', EmberObject.create({ - entityId: uuidV4(), - attribute: [] - })); + controller.set( + 'entity', + EmberObject.create({ + entityId: uuidV4(), + attribute: [], + }), + ); }, /** @@ -46,7 +39,7 @@ export default Route.extend({ disableRange: not('isNumber'), example: computed('domain', function () { return this.domain.slice(0, 10); - }) + }), }), /** @@ -57,27 +50,32 @@ export default Route.extend({ * @return {string} */ columnType(type) { - return { - 'string': 'character varying', - 'number': 'numeric', - 'boolean': 'boolean', - 'integer': 'integer' - }[type] || 'unknown'; + return ( + { + string: 'character varying', + number: 'numeric', + boolean: 'boolean', + integer: 'integer', + }[type] || 'unknown' + ); }, createAttribute(columnName, column) { - let domain = get(column, 'hasDomain') ? EmberObject.create({ - domainId: uuidV4(), - codeName: columnName, - domainItem: get(column, 'domain').filter(i => isPresent(i)).map( - (itm) => { - return { - name: itm.toString(), - value: itm.toString(), - definition: null - }; + let domain = get(column, 'hasDomain') + ? EmberObject.create({ + domainId: uuidV4(), + codeName: columnName, + domainItem: get(column, 'domain') + .filter((i) => isPresent(i)) + .map((itm) => { + return { + name: itm.toString(), + value: itm.toString(), + definition: null, + }; + }), }) - }) : false; + : false; let attribute = { codeName: column.importName, @@ -85,12 +83,12 @@ export default Route.extend({ allowNull: column.allowNull, maxValue: column.get('range') ? column.get('max').toString() : null, minValue: column.get('range') ? column.get('min').toString() : null, - domainId: domain ? get(domain, 'domainId') : null + domainId: domain ? get(domain, 'domainId') : null, }; return { attribute: attribute, - domain: domain + domain: domain, }; }, @@ -102,7 +100,7 @@ export default Route.extend({ Object.keys(columns).forEach((columnName) => { let col = columns[columnName]; - if(!col.import) { + if (!col.import) { return; } @@ -110,15 +108,14 @@ export default Route.extend({ attributes.pushObject(attr.attribute); - if(attr.domain) { + if (attr.domain) { domains.pushObject(attr.domain); } - }); return { attributes: attributes, - domains: domains + domains: domains, }; }, @@ -127,7 +124,7 @@ export default Route.extend({ set(this, 'controller.columns', null); set(this, 'controller.processed', false); }, - goToEntity(){ + goToEntity() { this.transitionTo('dictionary.show.edit.entity'); }, doImport() { @@ -135,21 +132,38 @@ export default Route.extend({ let entity = this.get('controller.entity'); let dataDictionary = this.get('controller.model.json.dataDictionary'); - if(get(data,'domains.length')) { - set(dataDictionary,'domain', get(dataDictionary, 'domain') !== undefined ? get(dataDictionary, 'domain') : []); - - set(dataDictionary, 'domain', get(dataDictionary, 'domain').concat(data.domains)); + if (get(data, 'domains.length')) { + set( + dataDictionary, + 'domain', + get(dataDictionary, 'domain') !== undefined + ? get(dataDictionary, 'domain') + : [], + ); + + set( + dataDictionary, + 'domain', + get(dataDictionary, 'domain').concat(data.domains), + ); } - set(dataDictionary,'entity', get(dataDictionary, 'entity') !== undefined ? get(dataDictionary, 'entity') : []); + set( + dataDictionary, + 'entity', + get(dataDictionary, 'entity') !== undefined + ? get(dataDictionary, 'entity') + : [], + ); set(entity, 'attribute', data.attributes); get(dataDictionary, 'entity').push(entity); - this.transitionTo('dictionary.show.edit.entity.edit', get( - dataDictionary, 'entity.length') - 1); + this.transitionTo( + 'dictionary.show.edit.entity.edit', + get(dataDictionary, 'entity.length') - 1, + ); - this.flashMessages - .success('Entity imported from CSV!'); + this.flashMessages.success('Entity imported from CSV!'); }, processData(data) { let template = this.columnObject; @@ -157,19 +171,23 @@ export default Route.extend({ set(this, 'controller.processed', false); - set(this, 'controller.columns', data.meta.fields.reduce(function (map, obj) { - let type = typeOf(data.data[0][obj]); - - // Use bracket notation to set the property - map[obj] = template.create({ - dataType: type, - domain: [], - importName: obj, - importType: typer(type) - }); - - return map; - }, EmberObject.create({}))); + set( + this, + 'controller.columns', + data.meta.fields.reduce(function (map, obj) { + let type = typeOf(data.data[0][obj]); + + // Use bracket notation to set the property + map[obj] = template.create({ + dataType: type, + domain: [], + importName: obj, + importType: typer(type), + }); + + return map; + }, EmberObject.create({})), + ); }, reduceData(data) { let columns = this.get('controller.columns'); @@ -178,10 +196,10 @@ export default Route.extend({ columnNames.forEach((columnName) => { let existing = columns[columnName].domain || []; - let unique = [...new Set(data.map(item => item[columnName]))]; + let unique = [...new Set(data.map((item) => item[columnName]))]; columns[columnName].domain = [...new Set([...existing, ...unique])]; - }); + }); }, processComplete() { let columns = this.get('controller.columns'); @@ -190,17 +208,16 @@ export default Route.extend({ columnNames.forEach((columnName) => { let col = columns[columnName]; - if(col.importType === 'numeric') { - let isInteger = col.domain.any(itm => Number.isInteger(itm)); + if (col.importType === 'numeric') { + let isInteger = col.domain.any((itm) => Number.isInteger(itm)); col.importType = isInteger ? 'integer' : 'numeric'; } - col.allowNull = col.domain.any(itm => isBlank(itm)); + col.allowNull = col.domain.any((itm) => isBlank(itm)); }); set(this, 'controller.processed', true); - - } - } + }, + }, }); diff --git a/app/pods/dictionary/show/edit/entity/index/route.js b/app/pods/dictionary/show/edit/entity/index/route.js index 321c1ec69..bb18c4a8f 100644 --- a/app/pods/dictionary/show/edit/entity/index/route.js +++ b/app/pods/dictionary/show/edit/entity/index/route.js @@ -8,9 +8,12 @@ export default Route.extend({ let model = get(m, 'json.dataDictionary'); - once(this, ()=>{ - - set(model, 'entity', get(model, 'entity') !== undefined ? get(model, 'entity') : []); + once(this, () => { + set( + model, + 'entity', + get(model, 'entity') !== undefined ? get(model, 'entity') : [], + ); }); }, @@ -18,13 +21,15 @@ export default Route.extend({ // Call _super for default behavior this._super(...arguments); - this.controller.set('parentModel', this.modelFor( - 'dictionary.show.edit.index')); + this.controller.set( + 'parentModel', + this.modelFor('dictionary.show.edit.index'), + ); }, actions: { editEntity(id) { this.transitionTo('dictionary.show.edit.entity.edit', id); - } - } + }, + }, }); diff --git a/app/pods/dictionary/show/edit/entity/route.js b/app/pods/dictionary/show/edit/entity/route.js index 6c74252aa..d09f667b2 100644 --- a/app/pods/dictionary/show/edit/entity/route.js +++ b/app/pods/dictionary/show/edit/entity/route.js @@ -1,4 +1,3 @@ import Route from '@ember/routing/route'; -export default Route.extend({ -}); +export default Route.extend({}); diff --git a/app/pods/dictionary/show/edit/index/route.js b/app/pods/dictionary/show/edit/index/route.js index 338cc84bb..28cadb3b3 100644 --- a/app/pods/dictionary/show/edit/index/route.js +++ b/app/pods/dictionary/show/edit/index/route.js @@ -7,31 +7,63 @@ export default Route.extend(ScrollTo, { this._super(...arguments); let model = get(m, 'json.dataDictionary'); - set(model, 'citation', get(model, 'citation') !== undefined ? get(model, 'citation') : {}); - set(model, 'responsibleParty', get(model, 'responsibleParty') !== undefined ? get(model, 'responsibleParty') : {}); - set(model, 'subject', get(model, 'subject') !== undefined ? get(model, 'subject') : []); - set(model, 'recommendedUse', get(model, 'recommendedUse') !== undefined ? get(model, 'recommendedUse') : []); - set(model, 'locale', get(model, 'locale') !== undefined ? get(model, 'locale') : []); - set(model, 'domain', get(model, 'domain') !== undefined ? get(model, 'domain') : []); - set(model, 'entity', get(model, 'entity') !== undefined ? get(model, 'entity') : []); + set( + model, + 'citation', + get(model, 'citation') !== undefined ? get(model, 'citation') : {}, + ); + set( + model, + 'responsibleParty', + get(model, 'responsibleParty') !== undefined + ? get(model, 'responsibleParty') + : {}, + ); + set( + model, + 'subject', + get(model, 'subject') !== undefined ? get(model, 'subject') : [], + ); + set( + model, + 'recommendedUse', + get(model, 'recommendedUse') !== undefined + ? get(model, 'recommendedUse') + : [], + ); + set( + model, + 'locale', + get(model, 'locale') !== undefined ? get(model, 'locale') : [], + ); + set( + model, + 'domain', + get(model, 'domain') !== undefined ? get(model, 'domain') : [], + ); + set( + model, + 'entity', + get(model, 'entity') !== undefined ? get(model, 'entity') : [], + ); }, setupController(controller, model) { this._super(controller, model); - this.controllerFor('dictionary.show.edit') - .setProperties({ - onCancel: () => this, - cancelScope: this - }); + this.controllerFor('dictionary.show.edit').setProperties({ + onCancel: () => this, + cancelScope: this, + }); }, actions: { editCitation(scrollTo) { - this.transitionTo('dictionary.show.edit.citation') - .then(function () { + this.transitionTo('dictionary.show.edit.citation').then( + function () { this.setScrollTo(scrollTo); - }.bind(this)); - } - } + }.bind(this), + ); + }, + }, }); diff --git a/app/pods/dictionary/show/edit/route.js b/app/pods/dictionary/show/edit/route.js index 7b3e2990b..389fa7bdd 100644 --- a/app/pods/dictionary/show/edit/route.js +++ b/app/pods/dictionary/show/edit/route.js @@ -29,23 +29,18 @@ export default Route.extend(HashPoll, DoCancel, { saveDictionary: function () { let model = this.currentRouteModel(); - model - .save() - .then(() => { - this.flashMessages - .success(`Saved Dictionary: ${model.get('title')}`); - - }); + model.save().then(() => { + this.flashMessages.success(`Saved Dictionary: ${model.get('title')}`); + }); }, cancelDictionary: function () { let model = this.currentRouteModel(); - let message = - `Cancelled changes to Dictionary: ${model.get('title')}`; + let message = `Cancelled changes to Dictionary: ${model.get('title')}`; - if(this.get('settings.data.autoSave')) { + if (this.get('settings.data.autoSave')) { let json = model.get('jsonRevert'); - if(json) { + if (json) { model.set('json', JSON.parse(json)); this.doCancel(); @@ -55,13 +50,10 @@ export default Route.extend(HashPoll, DoCancel, { return; } - model - .reload() - .then(() => { - this.doCancel(); - this.flashMessages - .warning(message); - }); + model.reload().then(() => { + this.doCancel(); + this.flashMessages.warning(message); + }); }, - } + }, }); diff --git a/app/pods/dictionary/show/index/route.js b/app/pods/dictionary/show/index/route.js index 23751fc66..32ac8d075 100644 --- a/app/pods/dictionary/show/index/route.js +++ b/app/pods/dictionary/show/index/route.js @@ -3,17 +3,18 @@ import ScrollTo from 'mdeditor/mixins/scroll-to'; export default Route.extend(ScrollTo, { actions: { - linkTo(){ + linkTo() { this.transitionTo(...arguments); }, editDomain(id) { this.transitionTo('dictionary.show.edit.domain.edit', id); }, editCitation(scrollTo) { - this.transitionTo('dictionary.show.edit.citation') - .then(function () { + this.transitionTo('dictionary.show.edit.citation').then( + function () { this.setScrollTo(scrollTo); - }.bind(this)); - } - } + }.bind(this), + ); + }, + }, }); diff --git a/app/pods/dictionary/show/route.js b/app/pods/dictionary/show/route.js index 4ef6b3a12..07ce98180 100644 --- a/app/pods/dictionary/show/route.js +++ b/app/pods/dictionary/show/route.js @@ -6,8 +6,8 @@ export default Route.extend({ flashMessages: service(), store: service(), - model: function(params) { - let rec= this.store.peekRecord('dictionary', params.dictionary_id); + model: function (params) { + let rec = this.store.peekRecord('dictionary', params.dictionary_id); return rec; }, @@ -15,29 +15,26 @@ export default Route.extend({ const name = model.get('title'); const crumb = { - title: name + title: name, }; this.set('breadCrumb', crumb); }, actions: { - destroyDictionary: function() { + destroyDictionary: function () { let model = this.currentRouteModel(); - model - .destroyRecord() - .then(() => { - this.flashMessages - .success(`Deleted Dictionary: ${model.get('title')}`); - this.replaceWith('dictionaries'); - }); + model.destroyRecord().then(() => { + this.flashMessages.success(`Deleted Dictionary: ${model.get('title')}`); + this.replaceWith('dictionaries'); + }); }, - copyDictionary: function() { - - this.flashMessages - .success(`Copied Dictionary: ${this.currentRouteModel().get('title')}`); + copyDictionary: function () { + this.flashMessages.success( + `Copied Dictionary: ${this.currentRouteModel().get('title')}`, + ); this.transitionTo('dictionary.new.id', copy(this.currentRouteModel())); - } - } + }, + }, }); diff --git a/app/pods/error/route.js b/app/pods/error/route.js index 6c74252aa..d09f667b2 100644 --- a/app/pods/error/route.js +++ b/app/pods/error/route.js @@ -1,4 +1,3 @@ import Route from '@ember/routing/route'; -export default Route.extend({ -}); +export default Route.extend({}); diff --git a/app/pods/export/route.js b/app/pods/export/route.js index f90f02857..d1903bc7c 100644 --- a/app/pods/export/route.js +++ b/app/pods/export/route.js @@ -5,7 +5,15 @@ import moment from 'moment'; import ScrollTo from 'mdeditor/mixins/scroll-to'; import { singularize } from 'ember-inflector'; -const modelTypes = ['records', 'contacts', 'dictionaries', 'settings', 'schemas', 'custom-profiles', 'profiles']; +const modelTypes = [ + 'records', + 'contacts', + 'dictionaries', + 'settings', + 'schemas', + 'custom-profiles', + 'profiles', +]; const fixLiabilityTypo = async (store) => { let records = store.peekAll('record'); @@ -15,10 +23,15 @@ const fixLiabilityTypo = async (store) => { if (jsonData) { let metadata = jsonData.get('metadata'); if (metadata) { - if (metadata.resourceDistribution && metadata.resourceDistribution.length > 0) { - const liabilityStatement = metadata.resourceDistribution[0].liablityStatement; + if ( + metadata.resourceDistribution && + metadata.resourceDistribution.length > 0 + ) { + const liabilityStatement = + metadata.resourceDistribution[0].liablityStatement; if (liabilityStatement) { - metadata.resourceDistribution[0].liabilityStatement = liabilityStatement; + metadata.resourceDistribution[0].liabilityStatement = + liabilityStatement; delete metadata.resourceDistribution[0].liablityStatement; jsonData.set('metadata', metadata); promises.push(record.save()); @@ -28,7 +41,7 @@ const fixLiabilityTypo = async (store) => { } }); return Promise.all(promises); -} +}; export default Route.extend(ScrollTo, { store: service(), @@ -37,120 +50,148 @@ export default Route.extend(ScrollTo, { model() { return EmObject.create({ records: this.modelFor('application'), - settings: this.get('settings.data') + settings: this.get('settings.data'), }); - }, setupController(controller, model) { // Call _super for default behavior this._super(controller, model); // Implement your custom setup after - defineProperty(this.controller, 'hasSelected', computed( - 'model.{records.0.@each._selected,records.1.@each._selected,records.2.@each._selected,settings._selected}', - function() { - return(this.store.peekAll('record').filterBy('_selected').get( - 'length') + - this.store.peekAll('contact').filterBy('_selected').get( - 'length') + - this.store.peekAll('dictionary').filterBy('_selected').get( - 'length') + - this.store.peekAll('setting').filterBy('_selected').get( - 'length')) > 0; - - })); - defineProperty(this.controller, 'hasSelectedRecords', computed( - 'model.records.0.@each._selected', - function() { - return this.store.peekAll('record').filterBy('_selected').get( - 'length') > 0; - - })); + defineProperty( + this.controller, + 'hasSelected', + computed( + 'model.{records.0.@each._selected,records.1.@each._selected,records.2.@each._selected,settings._selected}', + function () { + return ( + this.store.peekAll('record').filterBy('_selected').get('length') + + this.store + .peekAll('contact') + .filterBy('_selected') + .get('length') + + this.store + .peekAll('dictionary') + .filterBy('_selected') + .get('length') + + this.store + .peekAll('setting') + .filterBy('_selected') + .get('length') > + 0 + ); + }, + ), + ); + defineProperty( + this.controller, + 'hasSelectedRecords', + computed('model.records.0.@each._selected', function () { + return ( + this.store.peekAll('record').filterBy('_selected').get('length') > 0 + ); + }), + ); }, columns: EmObject.create({ - record: [{ - propertyName: 'title', - title: 'Title' - }, { - propertyName: 'defaultType', - title: 'Type' - }, { - propertyName: 'recordId', - title: 'ID' - }, ], - contact: [{ - propertyName: 'title', - title: 'Title' - }, { - propertyName: 'defaultOrganization', - title: 'Organization' - }, { - propertyName: 'json.electronicMailAddress.firstObject', - title: 'E-mail' - }, { - propertyName: 'contactId', - title: 'ID' - }], - dictionary: [{ - propertyName: 'title', - title: 'Title' - }, { - propertyName: 'defaultType', - title: 'Type' - }, { - propertyName: 'dictionaryId', - title: 'ID' - }] + record: [ + { + propertyName: 'title', + title: 'Title', + }, + { + propertyName: 'defaultType', + title: 'Type', + }, + { + propertyName: 'recordId', + title: 'ID', + }, + ], + contact: [ + { + propertyName: 'title', + title: 'Title', + }, + { + propertyName: 'defaultOrganization', + title: 'Organization', + }, + { + propertyName: 'json.electronicMailAddress.firstObject', + title: 'E-mail', + }, + { + propertyName: 'contactId', + title: 'ID', + }, + ], + dictionary: [ + { + propertyName: 'title', + title: 'Title', + }, + { + propertyName: 'defaultType', + title: 'Type', + }, + { + propertyName: 'dictionaryId', + title: 'ID', + }, + ], }), actions: { exportData() { fixLiabilityTypo(this.store).then(() => { - this.store.exportData( - modelTypes, { - download: true, - filename: `mdeditor-${moment().format('YYYYMMDD-HHMMSS')}.json` - } - ); + this.store.exportData(modelTypes, { + download: true, + filename: `mdeditor-${moment().format('YYYYMMDD-HHMMSS')}.json`, + }); }); }, exportSelectedData(asMdjson) { fixLiabilityTypo(this.store).then(() => { - if(asMdjson) { - let records = this.store.peekAll('record').filterBy('_selected').map(( - itm) => { - return this.mdjson.formatRecord(itm); - }); + if (asMdjson) { + let records = this.store + .peekAll('record') + .filterBy('_selected') + .map((itm) => { + return this.mdjson.formatRecord(itm); + }); window.saveAs( new Blob([JSON.stringify(records)], { - type: 'application/json;charset=utf-8' + type: 'application/json;charset=utf-8', }), - `mdjson-${moment().format('YYYYMMDD-HHMMSS')}.json` + `mdjson-${moment().format('YYYYMMDD-HHMMSS')}.json`, ); - } else { let filterIds = {}; modelTypes.forEach((type) => { let t = singularize(type); - filterIds[t] = this.store.peekAll(t).filterBy('_selected').mapBy('id'); + filterIds[t] = this.store + .peekAll(t) + .filterBy('_selected') + .mapBy('id'); }); //export schemas with settings - if(filterIds.setting.length) { + if (filterIds.setting.length) { filterIds['schema'] = this.store.peekAll('schema').mapBy('id'); filterIds['profile'] = this.store.peekAll('profile').mapBy('id'); - filterIds['custom-profile'] = this.store.peekAll('custom-profile').mapBy('id'); + filterIds['custom-profile'] = this.store + .peekAll('custom-profile') + .mapBy('id'); } - this.store.exportSelectedData( - modelTypes, { - download: true, - filename: `mdeditor-${moment().format('YYYYMMDD-HHMMSS')}.json`, - filterIds: filterIds - } - ); + this.store.exportSelectedData(modelTypes, { + download: true, + filename: `mdeditor-${moment().format('YYYYMMDD-HHMMSS')}.json`, + filterIds: filterIds, + }); } }); }, @@ -159,6 +200,6 @@ export default Route.extend(ScrollTo, { }, hasSelected() { return this.hasSelected; - } - } + }, + }, }); diff --git a/app/pods/help/route.js b/app/pods/help/route.js index 6c74252aa..d09f667b2 100644 --- a/app/pods/help/route.js +++ b/app/pods/help/route.js @@ -1,4 +1,3 @@ import Route from '@ember/routing/route'; -export default Route.extend({ -}); +export default Route.extend({}); diff --git a/app/pods/import/route.js b/app/pods/import/route.js index 3e3b68347..0c376f670 100644 --- a/app/pods/import/route.js +++ b/app/pods/import/route.js @@ -9,7 +9,7 @@ import jquery from 'jquery'; import ScrollTo from 'mdeditor/mixins/scroll-to'; import { JsonDefault as Contact } from 'mdeditor/models/contact'; import { Promise, allSettled } from 'rsvp'; -import uuidV4 from "uuid/v4"; +import uuidV4 from 'uuid/v4'; function fixLiabilityTypo(files) { // Iterate through the records array @@ -35,8 +35,7 @@ function fixLiabilityTypo(files) { }); } -const generateIdForRecord = Base.create() - .generateIdForRecord; +const generateIdForRecord = Base.create().generateIdForRecord; export default Route.extend(ScrollTo, { flashMessages: service(), @@ -52,7 +51,7 @@ export default Route.extend(ScrollTo, { records: 'file', dictionaries: 'book', contacts: 'users', - settings: 'gear' + settings: 'gear', }; }, setupController(controller, model) { @@ -66,7 +65,7 @@ export default Route.extend(ScrollTo, { model() { return EmObject.create({ files: false, - merge: true + merge: true, }); }, @@ -76,25 +75,26 @@ export default Route.extend(ScrollTo, { let raw = record.attributes.json; let json = raw ? JSON.parse(raw) : null; - switch(record.type) { - case 'records': - return get(json, 'metadata.resourceInfo.citation.title') !== undefined ? get(json, 'metadata.resourceInfo.citation.title') : 'NO TITLE'; - case 'dictionaries': - return get(json, 'dataDictionary.citation.title') !== undefined ? get(json, 'dataDictionary.citation.title') : 'NO TITLE'; - case 'contacts': - return json.name || 'NO NAME'; - case 'schemas': - return record.attributes.title || 'NO TITLE'; - default: - return 'N/A'; + switch (record.type) { + case 'records': + return get(json, 'metadata.resourceInfo.citation.title') !== undefined + ? get(json, 'metadata.resourceInfo.citation.title') + : 'NO TITLE'; + case 'dictionaries': + return get(json, 'dataDictionary.citation.title') !== undefined + ? get(json, 'dataDictionary.citation.title') + : 'NO TITLE'; + case 'contacts': + return json.name || 'NO NAME'; + case 'schemas': + return record.attributes.title || 'NO TITLE'; + default: + return 'N/A'; } }, formatMdJSON(json) { - let { - contact, - dataDictionary - } = json; + let { contact, dataDictionary } = json; let data = A(); let template = EmObject.extend({ init() { @@ -104,49 +104,55 @@ export default Route.extend(ScrollTo, { }, attributes: computed(function () { return { - json: null //, + json: null, //, //date-updated: '2017-05-18T21:21:34.446Z' - } + }; }), - type: null + type: null, }); - if(contact){ + if (contact) { contact.forEach((item) => { - data.pushObject(template.create({ - attributes: { - json: JSON.stringify(assign(Contact.create(), item)) - }, - type: 'contacts' - })); + data.pushObject( + template.create({ + attributes: { + json: JSON.stringify(assign(Contact.create(), item)), + }, + type: 'contacts', + }), + ); }); } - if(get(json, 'metadata.metadataInfo.metadataIdentifier') === undefined) { + if (get(json, 'metadata.metadataInfo.metadataIdentifier') === undefined) { json.metadata.metadataInfo.metadataIdentifier = { identifier: uuidV4(), - namespace: 'urn:uuid' + namespace: 'urn:uuid', }; } - data.pushObject(template.create({ - attributes: { - json: JSON.stringify(json), - //profile: 'full' - }, - type: 'records' - })); + data.pushObject( + template.create({ + attributes: { + json: JSON.stringify(json), + //profile: 'full' + }, + type: 'records', + }), + ); - if(dataDictionary) { + if (dataDictionary) { dataDictionary.forEach((item) => { - data.pushObject(template.create({ - attributes: { - json: JSON.stringify({ - dataDictionary: item - }) - }, - type: 'dictionaries' - })); + data.pushObject( + template.create({ + attributes: { + json: JSON.stringify({ + dataDictionary: item, + }), + }, + type: 'dictionaries', + }), + ); }); } @@ -154,13 +160,10 @@ export default Route.extend(ScrollTo, { }, mapJSON(data) { - let { - json, - route - } = data; + let { json, route } = data; let files; - if(isArray(data.json.data)) { + if (isArray(data.json.data)) { files = this.mapEditorJSON(data); } else { //assume it's raw mdJSON for now @@ -169,17 +172,15 @@ export default Route.extend(ScrollTo, { fixLiabilityTypo(files); - route.currentRouteModel() - .set('files', files); + route.currentRouteModel().set('files', files); - route.currentRouteModel() - .set('data', json.data); + route.currentRouteModel().set('data', json.data); }, mapMdJSON(data) { let map = A(); - if(isArray(data.json)) { + if (isArray(data.json)) { data.json.forEach((item) => { map = map.concat(this.formatMdJSON(item)); }); @@ -194,8 +195,7 @@ export default Route.extend(ScrollTo, { mapRecords(records) { return records.reduce((map, item) => { - - if(!map[item.type]) { + if (!map[item.type]) { map[item.type] = []; } @@ -210,14 +210,11 @@ export default Route.extend(ScrollTo, { }, mapEditorJSON(data) { - let { - file, - json - } = data; + let { file, json } = data; let jv = get(this, 'jsonvalidator.validator'); let valid = jv.validate('jsonapi', json); - if(!valid) { + if (!valid) { throw new Error(`${file.name} is not a valid mdEditor file.`); } @@ -227,42 +224,46 @@ export default Route.extend(ScrollTo, { columns: computed(function () { let route = this; - return [{ - propertyName: 'meta.title', - title: 'Title' - }, { - propertyName: 'attributes.date-updated', - title: 'Last Updated' - }, { - propertyName: 'id', - title: 'ID' - }, { - title: 'Actions', - component: 'control/md-record-table/buttons/custom', - disableFiltering: true, - buttonConfig: { - title: 'Preview JSON', - action(model) { - route.showPreview.call(route, model); + return [ + { + propertyName: 'meta.title', + title: 'Title', + }, + { + propertyName: 'attributes.date-updated', + title: 'Last Updated', + }, + { + propertyName: 'id', + title: 'ID', + }, + { + title: 'Actions', + component: 'control/md-record-table/buttons/custom', + disableFiltering: true, + buttonConfig: { + title: 'Preview JSON', + action(model) { + route.showPreview.call(route, model); + }, + iconPath: 'meta.icon', }, - iconPath: 'meta.icon' - } - }]; + }, + ]; }), showPreview(model) { let json = {}; assign(json, model.attributes); - if(model.attributes.json) { + if (model.attributes.json) { json.json = JSON.parse(model.attributes.json); } - this.currentRouteModel() - .set('preview', { - model: model, - json: json - }); + this.currentRouteModel().set('preview', { + model: model, + json: json, + }); }, actions: { @@ -279,78 +280,73 @@ export default Route.extend(ScrollTo, { let cmp = this; new Promise((resolve, reject) => { - if(file.type.match(/.*\/xml$/)) { - set(controller, 'isTranslating', true); - this.flashMessages - .info(`Translation service provided by ${url}.`); - - this.ajax.request(url, { - type: 'POST', - data: { - file: file.data, - reader: 'fgdc', - writer: 'mdJson', - validate: 'normal', - format: 'json' - }, - context: cmp - }) - .then(function (response) { + if (file.type.match(/.*\/xml$/)) { + set(controller, 'isTranslating', true); + this.flashMessages.info(`Translation service provided by ${url}.`); + + this.ajax + .request(url, { + type: 'POST', + data: { + file: file.data, + reader: 'fgdc', + writer: 'mdJson', + validate: 'normal', + format: 'json', + }, + context: cmp, + }) + .then( + function (response) { set(controller, 'isTranslating', false); - if(response.success) { + if (response.success) { resolve({ json: JSON.parse(response.writerOutput), file: file, - route: cmp + route: cmp, }); return; } reject( - `Failed to translate file: ${file.name}. Is it valid FGDC CSDGM XML?` + `Failed to translate file: ${file.name}. Is it valid FGDC CSDGM XML?`, ); - - }, (response) => { + }, + (response) => { set(controller, 'isTranslating', false); reject( - `mdTranslator Server error: ${response.status}: ${response.statusText}. Is your file valid FGDC CSDGM XML?` + `mdTranslator Server error: ${response.status}: ${response.statusText}. Is your file valid FGDC CSDGM XML?`, ); - }); - } else { - - try { - json = JSON.parse(file.data); - } catch(e) { - reject( - `Failed to parse file: ${file.name}. Is it valid JSON?` - ); - } - resolve({ - json: json, - file: file, - route: cmp - }); + }, + ); + } else { + try { + json = JSON.parse(file.data); + } catch (e) { + reject(`Failed to parse file: ${file.name}. Is it valid JSON?`); } - }) + resolve({ + json: json, + file: file, + route: cmp, + }); + } + }) .then((data) => { //determine file type and map cmp.mapJSON(data); - }) .catch((reason) => { //catch any errors - get(cmp, 'flashMessages') - .danger(reason); + get(cmp, 'flashMessages').danger(reason); return false; }) .finally(() => { - jquery('.import-file-picker input:file') - .val(''); + jquery('.import-file-picker input:file').val(''); }); - }, readFromUri() { @@ -360,122 +356,116 @@ export default Route.extend(ScrollTo, { set(controller, 'isLoading', true); - this.ajax.request(uri, { + this.ajax + .request(uri, { type: 'GET', context: this, dataType: 'text', - crossDomain: true + crossDomain: true, }) .then(function (response) { - - if(response) { + if (response) { let json; new Promise((resolve, reject) => { - try { - json = JSON.parse(response); - } catch(e) { - reject( - `Failed to parse data. Is it valid JSON?`); - } - - resolve({ - json: json, - file: null, - route: route - }); - }) + try { + json = JSON.parse(response); + } catch (e) { + reject(`Failed to parse data. Is it valid JSON?`); + } + + resolve({ + json: json, + file: null, + route: route, + }); + }) .then((data) => { //determine file type and map route.mapJSON(data); - }) .catch((reason) => { //catch any errors - get(controller, 'flashMessages') - .danger(reason); + get(controller, 'flashMessages').danger(reason); return false; }) .finally(() => { set(controller, 'isLoading', false); - jquery('.md-import-picker input:file') - .val(''); + jquery('.md-import-picker input:file').val(''); }); } else { set(controller, 'errors', response.messages); - get(controller, 'flashMessages') - .danger('Import error!'); + get(controller, 'flashMessages').danger('Import error!'); } - }).catch((response) => { - let error = - ` Error retrieving the mdJSON: ${response.status}: ${response.statusText}`; + }) + .catch((response) => { + let error = ` Error retrieving the mdJSON: ${response.status}: ${response.statusText}`; set(controller, 'xhrError', error); set(controller, 'isLoading', false); - get(controller, 'flashMessages') - .danger(error); + get(controller, 'flashMessages').danger(error); }); - }, importData() { let store = this.store; let data = { data: this.currentRouteModel() .get('data') - .filterBy('meta.export').rejectBy('type', 'settings') + .filterBy('meta.export') + .rejectBy('type', 'settings'), }; - store.importData(data, { - truncate: !this.currentRouteModel() - .get('merge'), - json: false + store + .importData(data, { + truncate: !this.currentRouteModel().get('merge'), + json: false, }) .then(() => { - this.flashMessages - .success( - `Imported data. Records were - ${this.currentRouteModel().get('merge') ? 'merged' : 'replaced'}.`, { - extendedTimeout: 1500 - }); + this.flashMessages.success( + `Imported data. Records were + ${this.currentRouteModel().get('merge') ? 'merged' : 'replaced'}.`, + { + extendedTimeout: 1500, + }, + ); //this.transitionTo('dashboard'); }); let settingService = this.settings; - let newSettings = this.currentRouteModel().get('data').filterBy( - 'meta.export').findBy('type', 'settings'); + let newSettings = this.currentRouteModel() + .get('data') + .filterBy('meta.export') + .findBy('type', 'settings'); - if(newSettings) { + if (newSettings) { let settings = { - data: [newSettings] + data: [newSettings], }; let destroys = []; - store.findAll('setting').forEach(rec => { + store.findAll('setting').forEach((rec) => { destroys.pushObject(rec.destroyRecord()); }); allSettled(destroys).then(() => { - store.importData(settings, { - json: false + store + .importData(settings, { + json: false, }) .then(() => { settingService.setup(); - this.flashMessages - .success( - `Imported Settings.`, { - extendedTimeout: 1500 - }); + this.flashMessages.success(`Imported Settings.`, { + extendedTimeout: 1500, + }); }); }); } }, closePreview() { - this.currentRouteModel() - .set('preview', false); + this.currentRouteModel().set('preview', false); }, cancelImport() { - this.currentRouteModel() - .set('files', false); - } - } + this.currentRouteModel().set('files', false); + }, + }, }); diff --git a/app/pods/not-found/route.js b/app/pods/not-found/route.js index 638fbd8df..624ac909e 100644 --- a/app/pods/not-found/route.js +++ b/app/pods/not-found/route.js @@ -4,7 +4,7 @@ import Route from '@ember/routing/route'; export default Route.extend({ model(params) { return EmberObject.create({ - path: params.path + path: params.path, }); }, @@ -13,15 +13,15 @@ export default Route.extend({ this.breadCrumb = { title: 'Page Not Found', - linkable: false + linkable: false, }; }, redirect() { var url = this.router.location.formatURL('/not-found'); - if(window.location.pathname !== url) { + if (window.location.pathname !== url) { this.transitionTo('/not-found'); } - } + }, }); diff --git a/app/pods/publish/index/route.js b/app/pods/publish/index/route.js index 6c74252aa..d09f667b2 100644 --- a/app/pods/publish/index/route.js +++ b/app/pods/publish/index/route.js @@ -1,4 +1,3 @@ import Route from '@ember/routing/route'; -export default Route.extend({ -}); +export default Route.extend({}); diff --git a/app/pods/publish/route.js b/app/pods/publish/route.js index 82e7c7600..3fe0c3eae 100644 --- a/app/pods/publish/route.js +++ b/app/pods/publish/route.js @@ -5,5 +5,5 @@ export default Route.extend({ publish: service('publish'), model: function () { return this.get('publish.catalogs'); - } + }, }); diff --git a/app/pods/record/index/route.js b/app/pods/record/index/route.js index bd287affc..cb0619128 100644 --- a/app/pods/record/index/route.js +++ b/app/pods/record/index/route.js @@ -6,7 +6,7 @@ export default Route.extend({ this.breadCrumb = { title: 'Record', - linkable: false - } + linkable: false, + }; }, }); diff --git a/app/pods/record/new/id/route.js b/app/pods/record/new/id/route.js index f65f68eb4..e8e813502 100644 --- a/app/pods/record/new/id/route.js +++ b/app/pods/record/new/id/route.js @@ -7,7 +7,7 @@ export default Route.extend({ model(params) { let record = this.store.peekRecord('record', params.record_id); - if(record) { + if (record) { return record; } @@ -29,7 +29,7 @@ export default Route.extend({ // If we are leaving the Route we verify if the model is in // 'isDeleted' state, which means it wasn't saved to the metadata. - if(model && model.isDeleted) { + if (model && model.isDeleted) { // We call DS#unloadRecord() which removes it from the store this.store.unloadRecord(model); } @@ -56,8 +56,8 @@ export default Route.extend({ // }, actions: { - willTransition: function(transition) { - if(transition.targetName === 'record.new.index') { + willTransition: function (transition) { + if (transition.targetName === 'record.new.index') { transition.abort(); return true; } @@ -66,11 +66,11 @@ export default Route.extend({ var model = this.currentRouteModel(); // If we are leaving the Route we verify if the model is in // 'isNew' state, which means it wasn't saved to the backend. - if(model && model.get('isNew')) { + if (model && model.get('isNew')) { transition.abort(); //let contexts = transition.intent.contexts; // We call DS#destroyRecord() which removes it from the store - model.destroyRecord().then(()=> transition.retry()); + model.destroyRecord().then(() => transition.retry()); //transition.abort(); // if(contexts && contexts.length > 0) { @@ -99,9 +99,10 @@ export default Route.extend({ }, error(error) { - if(error instanceof NotFoundError) { - this.flashMessages - .warning('No record found! Re-directing to new record...'); + if (error instanceof NotFoundError) { + this.flashMessages.warning( + 'No record found! Re-directing to new record...', + ); // redirect to new this.replaceWith('record.new'); } else { @@ -119,6 +120,5 @@ export default Route.extend({ // this.profile // .set('active', profile); // } - } - + }, }); diff --git a/app/pods/record/new/index/route.js b/app/pods/record/new/index/route.js index 05402599e..63b84f897 100644 --- a/app/pods/record/new/index/route.js +++ b/app/pods/record/new/index/route.js @@ -7,5 +7,5 @@ export default Route.extend({ let rec = this.store.createRecord('record'); this.replaceWith('record.new.id', rec.id); - } + }, }); diff --git a/app/pods/record/new/route.js b/app/pods/record/new/route.js index ec48e9ea5..0a42e2bf7 100644 --- a/app/pods/record/new/route.js +++ b/app/pods/record/new/route.js @@ -6,7 +6,7 @@ export default Route.extend({ this.breadCrumb = { title: 'New', - linkable: false - } + linkable: false, + }; }, }); diff --git a/app/pods/record/route.js b/app/pods/record/route.js index bd287affc..cb0619128 100644 --- a/app/pods/record/route.js +++ b/app/pods/record/route.js @@ -6,7 +6,7 @@ export default Route.extend({ this.breadCrumb = { title: 'Record', - linkable: false - } + linkable: false, + }; }, }); diff --git a/app/pods/record/show/edit/associated/index/route.js b/app/pods/record/show/edit/associated/index/route.js index 42b205c65..2d9d05013 100644 --- a/app/pods/record/show/edit/associated/index/route.js +++ b/app/pods/record/show/edit/associated/index/route.js @@ -6,21 +6,26 @@ export default Route.extend({ this._super(...arguments); let model = get(m, 'json.metadata'); - set(model, 'associatedResource', get(model, 'associatedResource') !== undefined ? get(model, 'associatedResource') : []); + set( + model, + 'associatedResource', + get(model, 'associatedResource') !== undefined + ? get(model, 'associatedResource') + : [], + ); }, - setupController: function() { + setupController: function () { // Call _super for default behavior this._super(...arguments); - this.controller.set('parentModel', this.modelFor( - 'record.show.edit')); + this.controller.set('parentModel', this.modelFor('record.show.edit')); }, actions: { editResource(id) { this.transitionTo('record.show.edit.associated.resource', id); - } //, + }, //, // templateClass() { // return Ember.Object.extend({ // init() { @@ -29,5 +34,5 @@ export default Route.extend({ // } // }); // } - } + }, }); diff --git a/app/pods/record/show/edit/associated/resource/index/route.js b/app/pods/record/show/edit/associated/resource/index/route.js index 93a0f731e..be497641d 100644 --- a/app/pods/record/show/edit/associated/resource/index/route.js +++ b/app/pods/record/show/edit/associated/resource/index/route.js @@ -3,36 +3,44 @@ import Route from '@ember/routing/route'; import { set, get } from '@ember/object'; import ScrollTo from 'mdeditor/mixins/scroll-to'; -const sliderColumns = [{ - propertyName: 'recordId', - title: 'ID' -}, { - propertyName: 'title', - title: 'Title' -}, { - propertyName: 'defaultType', - title: 'Type' -}]; +const sliderColumns = [ + { + propertyName: 'recordId', + title: 'ID', + }, + { + propertyName: 'title', + title: 'Title', + }, + { + propertyName: 'defaultType', + title: 'Type', + }, +]; export default Route.extend(ScrollTo, { slider: service(), store: service(), sliderColumns: sliderColumns, - setupController: function() { + setupController: function () { // Call _super for default behavior this._super(...arguments); - this.controller.set('parentModel', this.modelFor( - 'record.show.edit')); - this.controller.set('resourceId', get(this.controllerFor( - 'record.show.edit.associated.resource'), 'resourceId')); + this.controller.set('parentModel', this.modelFor('record.show.edit')); + this.controller.set( + 'resourceId', + get( + this.controllerFor('record.show.edit.associated.resource'), + 'resourceId', + ), + ); }, actions: { insertResource(selected) { let slider = this.slider; let rec = selected.get('firstObject'); - if(rec) { + if (rec) { let resource = this.currentRouteModel(); set(resource, 'mdRecordId', get(rec, 'recordId')); @@ -56,6 +64,6 @@ export default Route.extend(ScrollTo, { }, editLinked(rec) { this.transitionTo('record.show.edit', rec.get('id')); - } - } + }, + }, }); diff --git a/app/pods/record/show/edit/associated/resource/route.js b/app/pods/record/show/edit/associated/resource/route.js index ef886533b..28bd87d78 100644 --- a/app/pods/record/show/edit/associated/resource/route.js +++ b/app/pods/record/show/edit/associated/resource/route.js @@ -7,7 +7,7 @@ export default Route.extend({ breadCrumb: computed('resourceId', function () { return { title: this.resourceId, - linkable: true + linkable: true, }; }), @@ -23,31 +23,29 @@ export default Route.extend({ //this.controller.set('parentModel', this.modelFor('record.show.edit.main')); this.controller.set('resourceId', this.resourceId); - this.controllerFor('record.show.edit') - .setProperties({ - onCancel: this.setupModel, - cancelScope: this - }); + this.controllerFor('record.show.edit').setProperties({ + onCancel: this.setupModel, + cancelScope: this, + }); }, setupModel() { let resourceId = this.resourceId; let model = this.modelFor('record.show.edit'); let objects = model.get('json.metadata.associatedResource'); - let resource = resourceId && isArray(objects) ? objects.objectAt( - resourceId) : - undefined; + let resource = + resourceId && isArray(objects) ? objects.objectAt(resourceId) : undefined; //make sure the identifier exists - if(isEmpty(resource)) { - this.flashMessages - .warning( - 'No Associated Resource object found! Re-directing to list...'); + if (isEmpty(resource)) { + this.flashMessages.warning( + 'No Associated Resource object found! Re-directing to list...', + ); this.replaceWith('record.show.edit.associated'); return; } return resource; - } + }, }); diff --git a/app/pods/record/show/edit/associated/route.js b/app/pods/record/show/edit/associated/route.js index 6c74252aa..d09f667b2 100644 --- a/app/pods/record/show/edit/associated/route.js +++ b/app/pods/record/show/edit/associated/route.js @@ -1,4 +1,3 @@ import Route from '@ember/routing/route'; -export default Route.extend({ -}); +export default Route.extend({}); diff --git a/app/pods/record/show/edit/constraint/index/route.js b/app/pods/record/show/edit/constraint/index/route.js index 792e1d29b..ef97c918c 100644 --- a/app/pods/record/show/edit/constraint/index/route.js +++ b/app/pods/record/show/edit/constraint/index/route.js @@ -6,14 +6,17 @@ export default Route.extend({ this._super(...arguments); let model = get(m, 'json.metadata.resourceInfo'); - set(model, 'constraint', get(model, 'constraint') !== undefined ? get(model, 'constraint') : []); + set( + model, + 'constraint', + get(model, 'constraint') !== undefined ? get(model, 'constraint') : [], + ); }, - setupController: function() { + setupController: function () { // Call _super for default behavior this._super(...arguments); - this.controller.set('parentModel', this.modelFor( - 'record.show.edit')); - } + this.controller.set('parentModel', this.modelFor('record.show.edit')); + }, }); diff --git a/app/pods/record/show/edit/constraint/route.js b/app/pods/record/show/edit/constraint/route.js index 6c74252aa..d09f667b2 100644 --- a/app/pods/record/show/edit/constraint/route.js +++ b/app/pods/record/show/edit/constraint/route.js @@ -1,4 +1,3 @@ import Route from '@ember/routing/route'; -export default Route.extend({ -}); +export default Route.extend({}); diff --git a/app/pods/record/show/edit/coverages/route.js b/app/pods/record/show/edit/coverages/route.js index 6c74252aa..d09f667b2 100644 --- a/app/pods/record/show/edit/coverages/route.js +++ b/app/pods/record/show/edit/coverages/route.js @@ -1,4 +1,3 @@ import Route from '@ember/routing/route'; -export default Route.extend({ -}); +export default Route.extend({}); diff --git a/app/pods/record/show/edit/dataquality/edit/index/route.js b/app/pods/record/show/edit/dataquality/edit/index/route.js index 4d56e39ba..96e3c086e 100644 --- a/app/pods/record/show/edit/dataquality/edit/index/route.js +++ b/app/pods/record/show/edit/dataquality/edit/index/route.js @@ -7,9 +7,13 @@ export default Route.extend(ScrollTo, { // Call _super for default behavior this._super(...arguments); - this.controller.set('parentModel', this.modelFor( - 'record.show.edit.main')); - this.controller.set('dataQualityId', get(this.controllerFor( - 'record.show.edit.dataquality.edit'), 'dataQualityId')); - } + this.controller.set('parentModel', this.modelFor('record.show.edit.main')); + this.controller.set( + 'dataQualityId', + get( + this.controllerFor('record.show.edit.dataquality.edit'), + 'dataQualityId', + ), + ); + }, }); diff --git a/app/pods/record/show/edit/dataquality/edit/route.js b/app/pods/record/show/edit/dataquality/edit/route.js index 0aa0a78b6..025ea0442 100644 --- a/app/pods/record/show/edit/dataquality/edit/route.js +++ b/app/pods/record/show/edit/dataquality/edit/route.js @@ -7,7 +7,7 @@ export default Route.extend({ breadCrumb: computed('dataQualityId', function () { return { title: get(this, 'dataQualityId'), - linkable: true + linkable: true, }; }), @@ -21,27 +21,30 @@ export default Route.extend({ this._super(...arguments); this.controller.set('dataQualityId', get(this, 'dataQualityId')); - this.controllerFor('record.show.edit') - .setProperties({ - onCancel: this.setupModel, - cancelScope: this - }); + this.controllerFor('record.show.edit').setProperties({ + onCancel: this.setupModel, + cancelScope: this, + }); }, setupModel() { let dataQualityId = get(this, 'dataQualityId'); let model = this.modelFor('record.show.edit'); let objects = model.get('json.metadata.dataQuality'); - let dataQuality = dataQualityId && isArray(objects) ? objects.get(dataQualityId) : undefined; - - if(isEmpty(dataQuality)) { - get(this, 'flashMessages') - .warning('No Data Quality object found! Re-directing to list...'); + let dataQuality = + dataQualityId && isArray(objects) + ? objects.get(dataQualityId) + : undefined; + + if (isEmpty(dataQuality)) { + get(this, 'flashMessages').warning( + 'No Data Quality object found! Re-directing to list...', + ); this.replaceWith('record.show.edit.dataquality'); return; } return dataQuality; - } -}) + }, +}); diff --git a/app/pods/record/show/edit/dataquality/index/route.js b/app/pods/record/show/edit/dataquality/index/route.js index 757451c88..f41314773 100644 --- a/app/pods/record/show/edit/dataquality/index/route.js +++ b/app/pods/record/show/edit/dataquality/index/route.js @@ -2,27 +2,27 @@ import Route from '@ember/routing/route'; import ScrollTo from 'mdeditor/mixins/scroll-to'; import { get, set } from '@ember/object'; - export default Route.extend(ScrollTo, { afterModel(m) { this._super(...arguments); let model = get(m, 'json.metadata'); - set(model, 'dataQuality', get(model, 'dataQuality') !== undefined ? get(model, 'dataQuality') : []); - + set( + model, + 'dataQuality', + get(model, 'dataQuality') !== undefined ? get(model, 'dataQuality') : [], + ); }, setupController: function () { this._super(...arguments); - this.controller.set('parentModel', this.modelFor( - 'record.show.edit')); - + this.controller.set('parentModel', this.modelFor('record.show.edit')); }, actions: { editDataQuality(id) { this.transitionTo('record.show.edit.dataquality.edit', id); - } - } + }, + }, }); diff --git a/app/pods/record/show/edit/dataquality/route.js b/app/pods/record/show/edit/dataquality/route.js index d341e78e2..d09f667b2 100644 --- a/app/pods/record/show/edit/dataquality/route.js +++ b/app/pods/record/show/edit/dataquality/route.js @@ -1,4 +1,3 @@ -import Route from '@ember/routing/route' +import Route from '@ember/routing/route'; -export default Route.extend({ -}); +export default Route.extend({}); diff --git a/app/pods/record/show/edit/dictionary/route.js b/app/pods/record/show/edit/dictionary/route.js index cb6370d5d..5a2d9a49d 100644 --- a/app/pods/record/show/edit/dictionary/route.js +++ b/app/pods/record/show/edit/dictionary/route.js @@ -1,5 +1,5 @@ import Route from '@ember/routing/route'; -import uuidV4 from "uuid/v4"; +import uuidV4 from 'uuid/v4'; import EmberObject, { get, computed, defineProperty, set } from '@ember/object'; export default Route.extend({ @@ -7,32 +7,40 @@ export default Route.extend({ this._super(...arguments); this.breadCrumb = { - title: 'Dictionaries' + title: 'Dictionaries', }; - this.columns = [{ - propertyName: 'title', - title: 'Title' - }, { - propertyName: 'subject', - title: 'Subject' - }] + this.columns = [ + { + propertyName: 'title', + title: 'Title', + }, + { + propertyName: 'subject', + title: 'Subject', + }, + ]; }, model() { //return this.store.peekAll('contact'); - let dicts = this.modelFor('application') - .findBy('modelName', 'dictionary'); + let dicts = this.modelFor('application').findBy('modelName', 'dictionary'); let rec = this.modelFor('record.show.edit'); - set(rec, 'json.mdDictionary', get(rec, 'json.mdDictionary') !== undefined ? get(rec, 'json.mdDictionary') : []); + set( + rec, + 'json.mdDictionary', + get(rec, 'json.mdDictionary') !== undefined + ? get(rec, 'json.mdDictionary') + : [], + ); let selected = rec.get('json.mdDictionary'); - return dicts.map(dict => { + return dicts.map((dict) => { let json = get(dict, 'json'); let id = get(json, 'dictionaryId'); let data = get(json, 'dataDictionary'); - if(!id) { + if (!id) { set(json, 'dictionaryId', uuidV4()); dict.save(); } @@ -42,7 +50,7 @@ export default Route.extend({ title: get(data, 'citation.title'), description: data.description, subject: data.subject, - selected: selected.includes(json.dictionaryId) + selected: selected.includes(json.dictionaryId), }); }); }, @@ -51,27 +59,28 @@ export default Route.extend({ // Call _super for default behavior this._super(...arguments); - this.controller.set('parentModel', this.modelFor( - 'record.show.edit')); + this.controller.set('parentModel', this.modelFor('record.show.edit')); - defineProperty(this.controller, 'selected', computed('model', - function () { + defineProperty( + this.controller, + 'selected', + computed('model', function () { return this.model.filterBy('selected'); - })); + }), + ); - this.controllerFor('record.show.edit') - .setProperties({ - onCancel: this.refresh, - cancelScope: this - }); + this.controllerFor('record.show.edit').setProperties({ + onCancel: this.refresh, + cancelScope: this, + }); }, _select(obj) { let rec = this.modelFor('record.show.edit'); let selected = rec.get('json.mdDictionary'); - if(obj.selected) { - if(selected.indexOf(obj.id) === -1) { + if (obj.selected) { + if (selected.indexOf(obj.id) === -1) { selected.pushObject(obj.id); this.controller.notifyPropertyChange('model'); return; @@ -79,7 +88,6 @@ export default Route.extend({ } selected.removeObject(obj.id); this.controller.notifyPropertyChange('model'); - }, actions: { @@ -94,6 +102,6 @@ export default Route.extend({ remove(obj) { set(obj, 'selected', false); this._select(obj); - } - } + }, + }, }); diff --git a/app/pods/record/show/edit/distribution/distributor/index/route.js b/app/pods/record/show/edit/distribution/distributor/index/route.js index de2921981..92bb98bb7 100644 --- a/app/pods/record/show/edit/distribution/distributor/index/route.js +++ b/app/pods/record/show/edit/distribution/distributor/index/route.js @@ -14,35 +14,44 @@ export default Route.extend(ScrollTo, { // Call _super for default behavior this._super(...arguments); - this.controller.set('parentModel', this.modelFor( - 'record.show.edit')); - this.controller.set('distributionId', get(this.controllerFor( - 'record.show.edit.distribution.distributor'), - 'distributionId')); - this.controller.set('distributorId', get(this.controllerFor( - 'record.show.edit.distribution.distributor'), - 'distributorId')); + this.controller.set('parentModel', this.modelFor('record.show.edit')); + this.controller.set( + 'distributionId', + get( + this.controllerFor('record.show.edit.distribution.distributor'), + 'distributionId', + ), + ); + this.controller.set( + 'distributorId', + get( + this.controllerFor('record.show.edit.distribution.distributor'), + 'distributorId', + ), + ); }, actions: { deleteDistributor(id) { let model = this.controller.parentModel.get( - 'json.metadata.resourceDistribution')[this.controller.distributionId] - .distributor; + 'json.metadata.resourceDistribution', + )[this.controller.distributionId].distributor; model.removeAt(id || parseInt(this.controller.distributorId, 10)); this.transitionTo('record.show.edit.distribution', { queryParams: { - scrollTo: `distribution-${this.controller.distributionId}` - } + scrollTo: `distribution-${this.controller.distributionId}`, + }, }); }, editTransferOption(id, routeParams, scrollToId) { this.setScrollTo(scrollToId); this.transitionTo( 'record.show.edit.distribution.distributor.transfer', - this.controller.distributionId, this.controller.distributorId, id + this.controller.distributionId, + this.controller.distributorId, + id, ); }, - } + }, }); diff --git a/app/pods/record/show/edit/distribution/distributor/route.js b/app/pods/record/show/edit/distribution/distributor/route.js index 631c0e781..6657b9927 100644 --- a/app/pods/record/show/edit/distribution/distributor/route.js +++ b/app/pods/record/show/edit/distribution/distributor/route.js @@ -24,11 +24,10 @@ export default Route.extend({ //this.controller.set('parentModel', this.modelFor('record.show.edit.main')); this.controller.set('distributionId', this.distributionId); this.controller.set('distributorId', this.distributorId); - this.controllerFor('record.show.edit') - .setProperties({ - onCancel: this.setupModel, - cancelScope: this - }); + this.controllerFor('record.show.edit').setProperties({ + onCancel: this.setupModel, + cancelScope: this, + }); }, setupModel() { @@ -36,23 +35,25 @@ export default Route.extend({ let distributorId = this.distributorId; let model = this.modelFor('record.show.edit'); let objects = model.get('json.metadata.resourceDistribution'); - let distribution = distributionId && isArray(objects) ? A( - objects).objectAt(distributionId) : - undefined; - let distributor = distribution && distributorId && isArray(distribution - .distributor) ? A( - distribution.distributor).objectAt(distributorId) : - undefined; + let distribution = + distributionId && isArray(objects) + ? A(objects).objectAt(distributionId) + : undefined; + let distributor = + distribution && distributorId && isArray(distribution.distributor) + ? A(distribution.distributor).objectAt(distributorId) + : undefined; //make sure the identifier exists - if(isEmpty(distributor)) { - this.flashMessages - .warning('No Distributor object found! Re-directing to Distribution List...'); + if (isEmpty(distributor)) { + this.flashMessages.warning( + 'No Distributor object found! Re-directing to Distribution List...', + ); this.replaceWith('record.show.edit.distribution'); return; } return distributor; - } + }, }); diff --git a/app/pods/record/show/edit/distribution/distributor/transfer/route.js b/app/pods/record/show/edit/distribution/distributor/transfer/route.js index 4f168599f..7920967e5 100644 --- a/app/pods/record/show/edit/distribution/distributor/transfer/route.js +++ b/app/pods/record/show/edit/distribution/distributor/transfer/route.js @@ -11,8 +11,7 @@ export default Route.extend(ScrollTo, { // }; // }), model(params) { - let tparams = this.paramsFor( - 'record.show.edit.distribution.distributor'); + let tparams = this.paramsFor('record.show.edit.distribution.distributor'); this.set('transferId', params.transfer_id); this.set('distributionId', tparams.distribution_id); @@ -25,8 +24,7 @@ export default Route.extend(ScrollTo, { // Call _super for default behavior this._super(...arguments); - this.controller.set('parentModel', this.modelFor( - 'record.show.edit')); + this.controller.set('parentModel', this.modelFor('record.show.edit')); this.controller.set('transferId', this.transferId); this.controller.set('distributionId', this.distributionId); this.controller.set('distributorId', this.distributorId); @@ -38,33 +36,32 @@ export default Route.extend(ScrollTo, { let distributorId = this.distributorId; let model = this.modelFor('record.show.edit'); let objects = model.get('json.metadata.resourceDistribution'); - let distribution = distributionId && isArray(objects) ? A( - objects).objectAt(distributionId) : - undefined; - let distributor = distribution && distributorId && isArray(distribution - .distributor) ? A( - distribution.distributor).objectAt(distributorId) : - undefined; - let transfer = distributor && transferId && isArray(distributor - .transferOption) ? A( - distributor.transferOption).objectAt(transferId) : - undefined; + let distribution = + distributionId && isArray(objects) + ? A(objects).objectAt(distributionId) + : undefined; + let distributor = + distribution && distributorId && isArray(distribution.distributor) + ? A(distribution.distributor).objectAt(distributorId) + : undefined; + let transfer = + distributor && transferId && isArray(distributor.transferOption) + ? A(distributor.transferOption).objectAt(transferId) + : undefined; - if(isEmpty(distributor)) { - this.flashMessages - .warning( - 'No Transfer Option object found! Re-directing to Distribution...' - ); + if (isEmpty(distributor)) { + this.flashMessages.warning( + 'No Transfer Option object found! Re-directing to Distribution...', + ); this.replaceWith('record.show.edit.distribution'); return; } - if(isEmpty(transfer)) { - this.flashMessages - .warning( - 'No Transfer Option object found! Re-directing to Distributor...' - ); + if (isEmpty(transfer)) { + this.flashMessages.warning( + 'No Transfer Option object found! Re-directing to Distributor...', + ); this.replaceWith('record.show.edit.distribution.distributor'); return; @@ -76,19 +73,20 @@ export default Route.extend(ScrollTo, { actions: { deleteTransfer(id) { let model = this.controller.parentModel.get( - 'json.metadata.resourceDistribution')[this.controller - .distributionId] - .distributor[this.controller.distributorId].transferOption; + 'json.metadata.resourceDistribution', + )[this.controller.distributionId].distributor[ + this.controller.distributorId + ].transferOption; model.removeAt(id || parseInt(this.transferId, 0)); this.transitionTo('record.show.edit.distribution.distributor', { queryParams: { - scrollTo: 'transfer-options' - } + scrollTo: 'transfer-options', + }, }); }, backToDistributor() { this.transitionTo('record.show.edit.distribution.distributor'); - } - } + }, + }, }); diff --git a/app/pods/record/show/edit/distribution/index/route.js b/app/pods/record/show/edit/distribution/index/route.js index 610f5af58..d785236df 100644 --- a/app/pods/record/show/edit/distribution/index/route.js +++ b/app/pods/record/show/edit/distribution/index/route.js @@ -9,34 +9,43 @@ export default Route.extend(ScrollTo, { // Call _super for default behavior this._super(...arguments); - this.controller.set('parentModel', this.modelFor( - 'record.show.edit')); - defineProperty(this.controller, 'refreshSpy', alias( - 'model.json.metadata.resourceDistribution.length')); + this.controller.set('parentModel', this.modelFor('record.show.edit')); + defineProperty( + this.controller, + 'refreshSpy', + alias('model.json.metadata.resourceDistribution.length'), + ); }, actions: { addDistribution() { - let dists = this.currentRouteModel() - .get('json.metadata.resourceDistribution'); + let dists = this.currentRouteModel().get( + 'json.metadata.resourceDistribution', + ); dists.pushObject({}); - $("html, body").animate({ - scrollTop: $(document).height() - }, "slow"); - + $('html, body').animate( + { + scrollTop: $(document).height(), + }, + 'slow', + ); }, editDistributor(id, routeParams, scrollToId) { this.setScrollTo(scrollToId); - this.transitionTo('record.show.edit.distribution.distributor', - routeParams, id); + this.transitionTo( + 'record.show.edit.distribution.distributor', + routeParams, + id, + ); }, deleteDistribution(id) { let dists = this.currentRouteModel().get( - 'json.metadata.resourceDistribution'); + 'json.metadata.resourceDistribution', + ); dists.removeAt(id); - } - } + }, + }, }); diff --git a/app/pods/record/show/edit/distribution/route.js b/app/pods/record/show/edit/distribution/route.js index a08559c65..785a72297 100644 --- a/app/pods/record/show/edit/distribution/route.js +++ b/app/pods/record/show/edit/distribution/route.js @@ -6,6 +6,12 @@ export default Route.extend({ this._super(...arguments); let model = get(m, 'json.metadata'); - set(model, 'resourceDistribution', get(model, 'resourceDistribution') !== undefined ? get(model, 'resourceDistribution') : []); + set( + model, + 'resourceDistribution', + get(model, 'resourceDistribution') !== undefined + ? get(model, 'resourceDistribution') + : [], + ); }, }); diff --git a/app/pods/record/show/edit/documents/citation/index/route.js b/app/pods/record/show/edit/documents/citation/index/route.js index 650e51f03..6bdfc109a 100644 --- a/app/pods/record/show/edit/documents/citation/index/route.js +++ b/app/pods/record/show/edit/documents/citation/index/route.js @@ -3,13 +3,17 @@ import { get } from '@ember/object'; import ScrollTo from 'mdeditor/mixins/scroll-to'; export default Route.extend(ScrollTo, { - setupController: function() { + setupController: function () { // Call _super for default behavior this._super(...arguments); - this.controller.set('parentModel', this.modelFor( - 'record.show.edit')); - this.controller.set('citationId', get(this.controllerFor( - 'record.show.edit.documents.citation'), 'citationId')); - } + this.controller.set('parentModel', this.modelFor('record.show.edit')); + this.controller.set( + 'citationId', + get( + this.controllerFor('record.show.edit.documents.citation'), + 'citationId', + ), + ); + }, }); diff --git a/app/pods/record/show/edit/documents/citation/route.js b/app/pods/record/show/edit/documents/citation/route.js index a3fe9359d..d522dd8af 100644 --- a/app/pods/record/show/edit/documents/citation/route.js +++ b/app/pods/record/show/edit/documents/citation/route.js @@ -7,7 +7,7 @@ export default Route.extend({ breadCrumb: computed('citationId', function () { return { title: this.citationId, - linkable: true + linkable: true, }; }), @@ -23,31 +23,31 @@ export default Route.extend({ //this.controller.set('parentModel', this.modelFor('record.show.edit.main')); this.controller.set('citationId', this.citationId); - this.controllerFor('record.show.edit') - .setProperties({ - onCancel: this.setupModel, - cancelScope: this - }); + this.controllerFor('record.show.edit').setProperties({ + onCancel: this.setupModel, + cancelScope: this, + }); }, setupModel() { let citationId = this.citationId; let model = this.modelFor('record.show.edit'); let objects = model.get('json.metadata.additionalDocumentation'); - let resource = citationId && isArray(objects) ? A( - objects) - .objectAt(citationId) : - undefined; + let resource = + citationId && isArray(objects) + ? A(objects).objectAt(citationId) + : undefined; //make sure the identifier exists - if(isEmpty(resource)) { - this.flashMessages - .warning('No Document object found! Re-directing to list...'); + if (isEmpty(resource)) { + this.flashMessages.warning( + 'No Document object found! Re-directing to list...', + ); this.replaceWith('record.show.edit.documents'); return; } return resource; - } + }, }); diff --git a/app/pods/record/show/edit/documents/index/route.js b/app/pods/record/show/edit/documents/index/route.js index 2dc7f66bc..7cdbd06ae 100644 --- a/app/pods/record/show/edit/documents/index/route.js +++ b/app/pods/record/show/edit/documents/index/route.js @@ -6,20 +6,25 @@ export default Route.extend({ this._super(...arguments); let model = get(m, 'json.metadata'); - set(model, 'additionalDocumentation', get(model, 'additionalDocumentation') !== undefined ? get(model, 'additionalDocumentation') : []); + set( + model, + 'additionalDocumentation', + get(model, 'additionalDocumentation') !== undefined + ? get(model, 'additionalDocumentation') + : [], + ); }, - setupController: function() { + setupController: function () { // Call _super for default behavior this._super(...arguments); - this.controller.set('parentModel', this.modelFor( - 'record.show.edit')); + this.controller.set('parentModel', this.modelFor('record.show.edit')); }, actions: { editDocument(id) { this.transitionTo('record.show.edit.documents.citation', id); - } - } + }, + }, }); diff --git a/app/pods/record/show/edit/documents/route.js b/app/pods/record/show/edit/documents/route.js index 6c74252aa..d09f667b2 100644 --- a/app/pods/record/show/edit/documents/route.js +++ b/app/pods/record/show/edit/documents/route.js @@ -1,4 +1,3 @@ import Route from '@ember/routing/route'; -export default Route.extend({ -}); +export default Route.extend({}); diff --git a/app/pods/record/show/edit/extent/index/route.js b/app/pods/record/show/edit/extent/index/route.js index 40886d4b3..e40aac242 100644 --- a/app/pods/record/show/edit/extent/index/route.js +++ b/app/pods/record/show/edit/extent/index/route.js @@ -10,7 +10,7 @@ export default Route.extend(ScrollTo, { defineProperty( this.controller, 'refreshSpy', - alias('model.json.metadata.resourceInfo.extent.length') + alias('model.json.metadata.resourceInfo.extent.length'), ); }, }); diff --git a/app/pods/record/show/edit/extent/route.js b/app/pods/record/show/edit/extent/route.js index 692bc2ff4..43fce7822 100644 --- a/app/pods/record/show/edit/extent/route.js +++ b/app/pods/record/show/edit/extent/route.js @@ -8,7 +8,13 @@ export default Route.extend({ let json = model.get('json'); let resourceInfo = json.metadata.resourceInfo; - set(resourceInfo, 'extent', get(resourceInfo, 'extent') !== undefined ? get(resourceInfo, 'extent') : []); + set( + resourceInfo, + 'extent', + get(resourceInfo, 'extent') !== undefined + ? get(resourceInfo, 'extent') + : [], + ); return model; }, @@ -16,7 +22,7 @@ export default Route.extend({ actions: { addExtent() { let extents = this.currentRouteModel().get( - 'json.metadata.resourceInfo.extent' + 'json.metadata.resourceInfo.extent', ); extents.pushObject({ @@ -38,12 +44,12 @@ export default Route.extend({ { scrollTop: $(document).height(), }, - 'slow' + 'slow', ); }, deleteExtent(id) { let extents = this.currentRouteModel().get( - 'json.metadata.resourceInfo.extent' + 'json.metadata.resourceInfo.extent', ); let extent = extents[id]; diff --git a/app/pods/record/show/edit/extent/spatial/route.js b/app/pods/record/show/edit/extent/spatial/route.js index bbcc1e8f6..cfe61ea6c 100644 --- a/app/pods/record/show/edit/extent/spatial/route.js +++ b/app/pods/record/show/edit/extent/spatial/route.js @@ -9,43 +9,38 @@ export default Route.extend({ this.set('extentId', params.extent_id); return this.setupModel(); - }, setupController: function (controller) { // Call _super for default behavior this._super(...arguments); - this.controllerFor('record.show.edit') - .setProperties({ - onCancel: this.setupModel, - cancelScope: this, - extentId: this.extentId - }); - - controller - .setProperties({ - featureGroup: null, - extentId: this.extentId - }); + this.controllerFor('record.show.edit').setProperties({ + onCancel: this.setupModel, + cancelScope: this, + extentId: this.extentId, + }); + + controller.setProperties({ + featureGroup: null, + extentId: this.extentId, + }); }, setupModel() { let model = this.modelFor('record.show.edit.extent'); let extents = model.get('json.metadata.resourceInfo.extent'); - let extent = get(extents, this.extentId || this.controller.get( - 'extentId')); + let extent = get(extents, this.extentId || this.controller.get('extentId')); //make sure the extent still exists - if(isEmpty(extent)) { - this.flashMessages - .warning('No extent found! Re-directing to list...'); + if (isEmpty(extent)) { + this.flashMessages.warning('No extent found! Re-directing to list...'); this.replaceWith('record.show.edit.extent'); return; } - if(!isArray(extent.geographicExtent[0].geographicElement)) { + if (!isArray(extent.geographicExtent[0].geographicElement)) { set(extent, 'geographicExtent.0.geographicElement', A([])); } @@ -65,45 +60,40 @@ export default Route.extend({ return this; }, handleResize() { - $('.map-file-picker .leaflet-container') - .height(($(window) - .height() - $('#md-navbars') - .outerHeight() - 15) / 2); + $('.map-file-picker .leaflet-container').height( + ($(window).height() - $('#md-navbars').outerHeight() - 15) / 2, + ); }, uploadData() { - $('.map-file-picker .file-picker__input') - .click(); + $('.map-file-picker .file-picker__input').click(); }, deleteAllFeatures() { let features = this.layers; - let group = this.controller - .get('featureGroup'); + let group = this.controller.get('featureGroup'); - if(features.length) { + if (features.length) { features.forEach((item) => { features.popObject(item); group.removeLayer(item._layer); }); - if(group._map.drawControl) { + if (group._map.drawControl) { group._map.drawControl.remove(); } features.clear(); } }, setFeatureGroup(obj) { - this.controller - .set('featureGroup', obj); + this.controller.set('featureGroup', obj); }, zoomAll() { - let layer = this.controller - .get('featureGroup'); + let layer = this.controller.get('featureGroup'); let bnds = layer.getBounds(); let map = layer._map; - if(bnds.isValid()) { + if (bnds.isValid()) { map.fitBounds(bnds, { - maxZoom: 14 + maxZoom: 14, }); return; } @@ -111,15 +101,14 @@ export default Route.extend({ map.fitWorld(); }, exportGeoJSON() { - let fg = this.controller - .get('featureGroup'); + let fg = this.controller.get('featureGroup'); let json = { - 'type': 'FeatureCollection', - 'features': [] + type: 'FeatureCollection', + features: [], }; - if(fg) { + if (fg) { let geoGroup = fg.getLayers(); geoGroup.forEach((l) => { let layers = l.getLayers(); @@ -128,29 +117,27 @@ export default Route.extend({ let feature = layer.feature; json.features.push({ - 'type': 'Feature', - 'id': feature.id, - 'geometry': feature.geometry, - 'properties': feature.properties + type: 'Feature', + id: feature.id, + geometry: feature.geometry, + properties: feature.properties, }); }); }); window.saveAs( new Blob([JSON.stringify(json)], { - type: 'application/json;charset=utf-8' + type: 'application/json;charset=utf-8', }), - 'export_features.json' + 'export_features.json', ); // return new Ember.RSVP.Promise((resolve) => { // Ember.run(null, resolve, json); // }, 'MD: ExportSpatialData'); - } else { - this.flashMessages - .warning('Found no features to export.'); + this.flashMessages.warning('Found no features to export.'); } - } - } + }, + }, }); diff --git a/app/pods/record/show/edit/funding/allocation/route.js b/app/pods/record/show/edit/funding/allocation/route.js index 34ba5c673..81c27eaee 100644 --- a/app/pods/record/show/edit/funding/allocation/route.js +++ b/app/pods/record/show/edit/funding/allocation/route.js @@ -1,19 +1,14 @@ import Route from '@ember/routing/route'; -import { - isEmpty -} from '@ember/utils'; +import { isEmpty } from '@ember/utils'; import { isArray, A } from '@ember/array'; -import { - computed, - get -} from '@ember/object'; +import { computed, get } from '@ember/object'; import ScrollTo from 'mdeditor/mixins/scroll-to'; export default Route.extend(ScrollTo, { breadCrumb: computed('allocationId', function () { return { title: 'Allocation ' + this.allocationId, - linkable: true + linkable: true, }; }), @@ -30,29 +25,31 @@ export default Route.extend(ScrollTo, { this.controller.set('parentModel', this.modelFor('record.show.edit')); this.controller.set('allocationId', this.allocationId); - this.controllerFor('record.show.edit') - .setProperties({ - onCancel: this.setupModel, - cancelScope: this - }); + this.controllerFor('record.show.edit').setProperties({ + onCancel: this.setupModel, + cancelScope: this, + }); }, setupModel() { let allocationId = this.allocationId; let model = this.modelFor('record.show.edit'); let objects = model.get('json.metadata.funding'); - let resource = allocationId && isArray(objects) ? A(objects).objectAt( - allocationId) : undefined; + let resource = + allocationId && isArray(objects) + ? A(objects).objectAt(allocationId) + : undefined; //make sure the allocation exists - if(isEmpty(resource)) { - this.flashMessages - .warning('No Funding object found! Re-directing to list...'); + if (isEmpty(resource)) { + this.flashMessages.warning( + 'No Funding object found! Re-directing to list...', + ); this.replaceWith('record.show.edit.funding'); return; } return resource; - } + }, }); diff --git a/app/pods/record/show/edit/funding/index/route.js b/app/pods/record/show/edit/funding/index/route.js index a8068ccae..38b48be10 100644 --- a/app/pods/record/show/edit/funding/index/route.js +++ b/app/pods/record/show/edit/funding/index/route.js @@ -8,15 +8,18 @@ export default Route.extend(ScrollTo, { this._super(...arguments); let model = get(m, 'json.metadata'); - set(model, 'funding', A(get(model, 'funding') !== undefined ? get(model, 'funding') : [])); + set( + model, + 'funding', + A(get(model, 'funding') !== undefined ? get(model, 'funding') : []), + ); }, - setupController: function() { + setupController: function () { // Call _super for default behavior this._super(...arguments); - this.controller.set('parentModel', this.modelFor( - 'record.show.edit')); + this.controller.set('parentModel', this.modelFor('record.show.edit')); }, actions: { @@ -24,29 +27,28 @@ export default Route.extend(ScrollTo, { this.transitionTo('record.show.edit.funding.allocation', id); }, addAllocation() { - let funding = this.currentRouteModel() - .get('json.metadata.funding'); + let funding = this.currentRouteModel().get('json.metadata.funding'); let allocation = EmberObject.create({}); // once(this, () => { - funding.pushObject(allocation); - this.setScrollTo(`funding-period-${funding.length-1}`); - this.transitionTo('record.show.edit.funding.allocation', - funding.length - 1); + funding.pushObject(allocation); + this.setScrollTo(`funding-period-${funding.length - 1}`); + this.transitionTo( + 'record.show.edit.funding.allocation', + funding.length - 1, + ); - // $("html, body").animate({ - // scrollTop: $(document).height() - // }, "slow"); + // $("html, body").animate({ + // scrollTop: $(document).height() + // }, "slow"); // }); - }, deleteAllocation(id) { - let all = this.currentRouteModel().get( - 'json.metadata.funding'); + let all = this.currentRouteModel().get('json.metadata.funding'); all.removeAt(id); this.controller.set('refresh', all.get('length')); - } - } + }, + }, }); diff --git a/app/pods/record/show/edit/funding/route.js b/app/pods/record/show/edit/funding/route.js index b3b29ec90..60aef5e74 100644 --- a/app/pods/record/show/edit/funding/route.js +++ b/app/pods/record/show/edit/funding/route.js @@ -2,7 +2,7 @@ import Route from '@ember/routing/route'; export default Route.extend({ actions: { - deleteAllocation(){}, - editAllocation(){} - } + deleteAllocation() {}, + editAllocation() {}, + }, }); diff --git a/app/pods/record/show/edit/grid/route.js b/app/pods/record/show/edit/grid/route.js index 6c74252aa..d09f667b2 100644 --- a/app/pods/record/show/edit/grid/route.js +++ b/app/pods/record/show/edit/grid/route.js @@ -1,4 +1,3 @@ import Route from '@ember/routing/route'; -export default Route.extend({ -}); +export default Route.extend({}); diff --git a/app/pods/record/show/edit/index/route.js b/app/pods/record/show/edit/index/route.js index 512cc9a9c..92036cddd 100644 --- a/app/pods/record/show/edit/index/route.js +++ b/app/pods/record/show/edit/index/route.js @@ -3,5 +3,5 @@ import Route from '@ember/routing/route'; export default Route.extend({ redirect(model) { this.replaceWith('record.show.edit.main', model); - } + }, }); diff --git a/app/pods/record/show/edit/keywords/index/route.js b/app/pods/record/show/edit/keywords/index/route.js index 81d549764..743f1121f 100644 --- a/app/pods/record/show/edit/keywords/index/route.js +++ b/app/pods/record/show/edit/keywords/index/route.js @@ -14,18 +14,44 @@ export default Route.extend(ScrollTo, { let json = model.get('json'); let info = json.metadata.resourceInfo; - set(info, 'keyword', !info.hasOwnProperty('keyword') ? A() : - A( - info.keyword)); + set( + info, + 'keyword', + !info.hasOwnProperty('keyword') ? A() : A(info.keyword), + ); //check to see if custom list info.keyword.forEach((k) => { - set(k, 'thesaurus', get(k, 'thesaurus') !== undefined ? get(k, 'thesaurus') : {}); - set(k, 'thesaurus.identifier', get(k, 'thesaurus.identifier') !== undefined ? get(k, 'thesaurus.identifier') : [{ - identifier: 'custom' - }]); - set(k, 'thesaurus.date', get(k, 'thesaurus.date') !== undefined ? get(k, 'thesaurus.date') : [{}]); - set(k, 'thesaurus.onlineResource', get(k, 'thesaurus.onlineResource') !== undefined ? get(k, 'thesaurus.onlineResource') : [{}]); + set( + k, + 'thesaurus', + get(k, 'thesaurus') !== undefined ? get(k, 'thesaurus') : {}, + ); + set( + k, + 'thesaurus.identifier', + get(k, 'thesaurus.identifier') !== undefined + ? get(k, 'thesaurus.identifier') + : [ + { + identifier: 'custom', + }, + ], + ); + set( + k, + 'thesaurus.date', + get(k, 'thesaurus.date') !== undefined + ? get(k, 'thesaurus.date') + : [{}], + ); + set( + k, + 'thesaurus.onlineResource', + get(k, 'thesaurus.onlineResource') !== undefined + ? get(k, 'thesaurus.onlineResource') + : [{}], + ); }); return model; @@ -37,19 +63,22 @@ export default Route.extend(ScrollTo, { }, addThesaurus() { let the = this.currentRouteModel().get( - 'json.metadata.resourceInfo.keyword'); + 'json.metadata.resourceInfo.keyword', + ); - $("html, body").animate({ scrollTop: $(document).height() }, "slow"); + $('html, body').animate({ scrollTop: $(document).height() }, 'slow'); the.pushObject({ keyword: [], keywordType: 'theme', thesaurus: { - identifier: [{ - identifier: null - }] + identifier: [ + { + identifier: null, + }, + ], }, - fullPath: true + fullPath: true, }); this.controller.set('refresh', the.get('length')); @@ -57,7 +86,8 @@ export default Route.extend(ScrollTo, { }, deleteThesaurus(id) { let the = this.currentRouteModel().get( - 'json.metadata.resourceInfo.keyword'); + 'json.metadata.resourceInfo.keyword', + ); the.removeAt(id); this.controller.set('refresh', the.get('length')); }, @@ -65,15 +95,14 @@ export default Route.extend(ScrollTo, { this.transitionTo('record.show.edit.keywords.thesaurus', id); }, selectThesaurus(selected, thesaurus) { - if(selected) { - set(thesaurus, 'thesaurus', copy(selected.citation, - true)); - if(selected.keywordType) { + if (selected) { + set(thesaurus, 'thesaurus', copy(selected.citation, true)); + if (selected.keywordType) { set(thesaurus, 'keywordType', selected.keywordType); } } else { set(thesaurus, 'thesaurus.identifier.0.identifier', 'custom'); } }, - } + }, }); diff --git a/app/pods/record/show/edit/keywords/route.js b/app/pods/record/show/edit/keywords/route.js index 671f73b82..aef18d557 100644 --- a/app/pods/record/show/edit/keywords/route.js +++ b/app/pods/record/show/edit/keywords/route.js @@ -8,11 +8,11 @@ export default Route.extend({ model.pushObject(k); }, deleteKeyword(model, obj) { - if(typeof obj === 'number') { + if (typeof obj === 'number') { model.removeAt(obj); } else { model.removeObject(obj); } }, - } + }, }); diff --git a/app/pods/record/show/edit/keywords/thesaurus/route.js b/app/pods/record/show/edit/keywords/thesaurus/route.js index d50a3d6d7..f80595d7e 100644 --- a/app/pods/record/show/edit/keywords/thesaurus/route.js +++ b/app/pods/record/show/edit/keywords/thesaurus/route.js @@ -14,25 +14,26 @@ export default Route.extend({ }, setupModel() { - let thesaurusId = this.thesaurusId || this.controller.get( - 'thesaurusId'); + let thesaurusId = this.thesaurusId || this.controller.get('thesaurusId'); let model = this.modelFor('record.show.edit.keywords'); - let thesaurus = model.get('json.metadata.resourceInfo.keyword') + let thesaurus = model + .get('json.metadata.resourceInfo.keyword') .get(thesaurusId); //make sure the thesaurus still exists - if(isEmpty(thesaurus)) { - this.flashMessages - .warning('No thesaurus found! Re-directing to list...'); + if (isEmpty(thesaurus)) { + this.flashMessages.warning('No thesaurus found! Re-directing to list...'); this.replaceWith('record.show.edit.keywords'); return; } - let selectedThesaurus = this.keyword.findById(thesaurus.thesaurus.identifier[0].identifier); + let selectedThesaurus = this.keyword.findById( + thesaurus.thesaurus.identifier[0].identifier, + ); if (selectedThesaurus.dynamicLoad) { return axios.get(selectedThesaurus.keywordsUrl).then((response) => { - if(!isArray(thesaurus.keyword)) { + if (!isArray(thesaurus.keyword)) { set(thesaurus, 'keyword', A()); } set(selectedThesaurus, 'keywords', response.data); @@ -41,11 +42,11 @@ export default Route.extend({ keywords: thesaurus, model: model, path: `json.metadata.resourceInfo.keyword.${thesaurusId}`, - thesaurus: selectedThesaurus + thesaurus: selectedThesaurus, }); - }) + }); } else { - if(!isArray(thesaurus.keyword)) { + if (!isArray(thesaurus.keyword)) { set(thesaurus, 'keyword', A()); } return EmberObject.create({ @@ -53,7 +54,7 @@ export default Route.extend({ keywords: thesaurus, model: model, path: `json.metadata.resourceInfo.keyword.${thesaurusId}`, - thesaurus: selectedThesaurus + thesaurus: selectedThesaurus, }); } }, @@ -62,26 +63,24 @@ export default Route.extend({ // Call _super for default behavior this._super(...arguments); - this.controllerFor('record.show.edit') - .setProperties({ - onCancel: this.setupModel, - cancelScope: this, - thesaurusId: this.thesaurusId - }); + this.controllerFor('record.show.edit').setProperties({ + onCancel: this.setupModel, + cancelScope: this, + thesaurusId: this.thesaurusId, + }); }, actions: { selectKeyword(node, path) { let model = this.currentRouteModel(); - let keywords = model.get('model') - .get(model.get('path')); + let keywords = model.get('model').get(model.get('path')); let kw = keywords.keyword; let target = kw.findBy('identifier', node.uuid); - if(node.isSelected && target === undefined) { + if (node.isSelected && target === undefined) { let pathStr = ''; - if(isArray(path)) { + if (isArray(path)) { pathStr = path.reduce(function (prev, item) { prev = prev ? `${prev} > ${item.label}` : item.label; @@ -91,10 +90,8 @@ export default Route.extend({ kw.pushObject({ identifier: node.uuid, - keyword: keywords.fullPath && pathStr ? - pathStr : node.label, - path: pathStr.split(' > ') - .slice(0, pathStr.length - 1) + keyword: keywords.fullPath && pathStr ? pathStr : node.label, + path: pathStr.split(' > ').slice(0, pathStr.length - 1), }); } else { kw.removeObject(target); @@ -105,21 +102,20 @@ export default Route.extend({ }, changeFullPath(evt) { let model = this.currentRouteModel(); - let keywords = model.get('model') - .get(model.get('path')); + let keywords = model.get('model').get(model.get('path')); let kw = get(keywords, 'keyword'); let val = evt.target.checked; set(keywords, 'fullPath', val); kw.forEach(function (curr) { - if(val) { + if (val) { set(curr, 'keyword', curr.path.join(' > ')); } else { let words = curr.keyword.split(' > '); set(curr, 'keyword', words[words.length - 1]); } }); - } - } + }, + }, }); diff --git a/app/pods/record/show/edit/lineage/index/route.js b/app/pods/record/show/edit/lineage/index/route.js index 8718ed5d2..e23820c10 100644 --- a/app/pods/record/show/edit/lineage/index/route.js +++ b/app/pods/record/show/edit/lineage/index/route.js @@ -6,21 +6,26 @@ export default Route.extend({ this._super(...arguments); let model = get(m, 'json.metadata'); - set(model, 'resourceLineage', get(model, 'resourceLineage') !== undefined ? get(model, 'resourceLineage') : []); + set( + model, + 'resourceLineage', + get(model, 'resourceLineage') !== undefined + ? get(model, 'resourceLineage') + : [], + ); }, - setupController: function() { + setupController: function () { // Call _super for default behavior this._super(...arguments); - this.controller.set('parentModel', this.modelFor( - 'record.show.edit')); + this.controller.set('parentModel', this.modelFor('record.show.edit')); }, actions: { editLineage(id) { this.transitionTo('record.show.edit.lineage.lineageobject', id); - }//, + }, //, // templateClass() { // return Ember.Object.extend({ // init() { @@ -29,5 +34,5 @@ export default Route.extend({ // } // }); // } - } + }, }); diff --git a/app/pods/record/show/edit/lineage/lineageobject/citation/identifier/route.js b/app/pods/record/show/edit/lineage/lineageobject/citation/identifier/route.js index 9989dd506..faa87589f 100644 --- a/app/pods/record/show/edit/lineage/lineageobject/citation/identifier/route.js +++ b/app/pods/record/show/edit/lineage/lineageobject/citation/identifier/route.js @@ -16,25 +16,28 @@ export default Route.extend(ScrollTo, { this._super(...arguments); this.controller.set('parentModel', this.modelFor('record.show.edit')); - this.controllerFor('record.show.edit') - .setProperties({ - onCancel: this.setupModel, - cancelScope: this - }); + this.controllerFor('record.show.edit').setProperties({ + onCancel: this.setupModel, + cancelScope: this, + }); }, setupModel() { let identifierId = this.identifierId; let model = this.modelFor( - 'record.show.edit.lineage.lineageobject.citation'); + 'record.show.edit.lineage.lineageobject.citation', + ); let identifiers = get(model, 'identifier'); - let identifier = identifierId && isArray(identifiers) ? identifiers.get( - identifierId) : undefined; + let identifier = + identifierId && isArray(identifiers) + ? identifiers.get(identifierId) + : undefined; //make sure the identifier exists - if(isEmpty(identifier)) { - this.flashMessages - .warning('No identifier found! Re-directing to Citation...'); + if (isEmpty(identifier)) { + this.flashMessages.warning( + 'No identifier found! Re-directing to Citation...', + ); this.replaceWith('record.show.edit.lineage.lineageobject.citation'); return; @@ -45,6 +48,6 @@ export default Route.extend(ScrollTo, { actions: { goBack() { this.transitionTo('record.show.edit.lineage.lineageobject.citation'); - } - } + }, + }, }); diff --git a/app/pods/record/show/edit/lineage/lineageobject/citation/index/route.js b/app/pods/record/show/edit/lineage/lineageobject/citation/index/route.js index 9abe6b593..68394ef53 100644 --- a/app/pods/record/show/edit/lineage/lineageobject/citation/index/route.js +++ b/app/pods/record/show/edit/lineage/lineageobject/citation/index/route.js @@ -4,14 +4,17 @@ import ScrollTo from 'mdeditor/mixins/scroll-to'; export default Route.extend(ScrollTo, { actions: { editIdentifier(index) { - this.transitionTo('record.show.edit.lineage.lineageobject.citation.identifier', - index) - .then(function () { + this.transitionTo( + 'record.show.edit.lineage.lineageobject.citation.identifier', + index, + ).then( + function () { this.setScrollTo('identifier'); - }.bind(this)); + }.bind(this), + ); }, - goBack(){ + goBack() { this.transitionTo('record.show.edit.lineage.lineageobject'); - } - } + }, + }, }); diff --git a/app/pods/record/show/edit/lineage/lineageobject/citation/route.js b/app/pods/record/show/edit/lineage/lineageobject/citation/route.js index 8dcd514ec..d99d5bb6e 100644 --- a/app/pods/record/show/edit/lineage/lineageobject/citation/route.js +++ b/app/pods/record/show/edit/lineage/lineageobject/citation/route.js @@ -5,8 +5,10 @@ import { isArray } from '@ember/array'; export default Route.extend({ model(params) { this.set('citationId', params.citation_id); - this.set('lineageId', this.paramsFor( - 'record.show.edit.lineage.lineageobject').lineage_id); + this.set( + 'lineageId', + this.paramsFor('record.show.edit.lineage.lineageobject').lineage_id, + ); return this.setupModel(); }, @@ -16,11 +18,10 @@ export default Route.extend({ this._super(...arguments); this.controller.set('parentModel', this.modelFor('record.show.edit')); - this.controllerFor('record.show.edit') - .setProperties({ - onCancel: this.setupModel, - cancelScope: this - }); + this.controllerFor('record.show.edit').setProperties({ + onCancel: this.setupModel, + cancelScope: this, + }); }, setupModel() { @@ -28,14 +29,14 @@ export default Route.extend({ let lineageId = this.lineageId; let model = this.modelFor('record.show.edit'); let citations = model.get( - 'json.metadata.resourceLineage.' + lineageId + '.citation'); - let citation = citationId && isArray(citations) ? citations.get( - citationId) : undefined; + 'json.metadata.resourceLineage.' + lineageId + '.citation', + ); + let citation = + citationId && isArray(citations) ? citations.get(citationId) : undefined; //make sure the identifier exists - if(isEmpty(citation)) { - this.flashMessages - .warning('No citation found! Re-directing...'); + if (isEmpty(citation)) { + this.flashMessages.warning('No citation found! Re-directing...'); this.replaceWith('record.show.edit.lineage.lineageobject'); return; @@ -46,6 +47,6 @@ export default Route.extend({ actions: { parentModel() { return this.modelFor('record.show.edit'); - } - } + }, + }, }); diff --git a/app/pods/record/show/edit/lineage/lineageobject/index/route.js b/app/pods/record/show/edit/lineage/lineageobject/index/route.js index 6fd1f774a..24d5debe1 100644 --- a/app/pods/record/show/edit/lineage/lineageobject/index/route.js +++ b/app/pods/record/show/edit/lineage/lineageobject/index/route.js @@ -7,35 +7,45 @@ export default Route.extend(ScrollTo, { // Call _super for default behavior this._super(...arguments); - this.controller.set('parentModel', this.modelFor( - 'record.show.edit.main')); - this.controller.set('lineageId', get(this.controllerFor( - 'record.show.edit.lineage.lineageobject'), 'lineageId')); + this.controller.set('parentModel', this.modelFor('record.show.edit.main')); + this.controller.set( + 'lineageId', + get( + this.controllerFor('record.show.edit.lineage.lineageobject'), + 'lineageId', + ), + ); }, actions: { editCitation(index) { - this.transitionTo('record.show.edit.lineage.lineageobject.citation', - index) - .then( - function () { - this.setScrollTo('citation'); - }.bind(this)); + this.transitionTo( + 'record.show.edit.lineage.lineageobject.citation', + index, + ).then( + function () { + this.setScrollTo('citation'); + }.bind(this), + ); }, editSource(index) { - this.transitionTo('record.show.edit.lineage.lineageobject.source', - index) - .then( - function () { - this.setScrollTo('source'); - }.bind(this)); + this.transitionTo( + 'record.show.edit.lineage.lineageobject.source', + index, + ).then( + function () { + this.setScrollTo('source'); + }.bind(this), + ); }, editProcessStep(index) { - this.transitionTo('record.show.edit.lineage.lineageobject.step', - index) - .then( - function () { - this.setScrollTo('process-step'); - }.bind(this)); - } - } + this.transitionTo( + 'record.show.edit.lineage.lineageobject.step', + index, + ).then( + function () { + this.setScrollTo('process-step'); + }.bind(this), + ); + }, + }, }); diff --git a/app/pods/record/show/edit/lineage/lineageobject/route.js b/app/pods/record/show/edit/lineage/lineageobject/route.js index 8529c7195..b18546441 100644 --- a/app/pods/record/show/edit/lineage/lineageobject/route.js +++ b/app/pods/record/show/edit/lineage/lineageobject/route.js @@ -7,7 +7,7 @@ export default Route.extend({ breadCrumb: computed('lineageId', function () { return { title: this.lineageId, - linkable: true + linkable: true, }; }), @@ -23,29 +23,29 @@ export default Route.extend({ //this.controller.set('parentModel', this.modelFor('record.show.edit.main')); this.controller.set('lineageId', this.lineageId); - this.controllerFor('record.show.edit') - .setProperties({ - onCancel: this.setupModel, - cancelScope: this - }); + this.controllerFor('record.show.edit').setProperties({ + onCancel: this.setupModel, + cancelScope: this, + }); }, setupModel() { let lineageId = this.lineageId; let model = this.modelFor('record.show.edit'); let objects = model.get('json.metadata.resourceLineage'); - let lineage = lineageId && isArray(objects) ? objects.get(lineageId) : - undefined; + let lineage = + lineageId && isArray(objects) ? objects.get(lineageId) : undefined; //make sure the identifier exists - if(isEmpty(lineage)) { - this.flashMessages - .warning('No lineage object found! Re-directing to list...'); + if (isEmpty(lineage)) { + this.flashMessages.warning( + 'No lineage object found! Re-directing to list...', + ); this.replaceWith('record.show.edit.lineage'); return; } return lineage; - } + }, }); diff --git a/app/pods/record/show/edit/lineage/lineageobject/source/index/route.js b/app/pods/record/show/edit/lineage/lineageobject/source/index/route.js index a12d87038..0f982a719 100644 --- a/app/pods/record/show/edit/lineage/lineageobject/source/index/route.js +++ b/app/pods/record/show/edit/lineage/lineageobject/source/index/route.js @@ -7,8 +7,8 @@ export default Route.extend(ScrollTo, { this._super(...arguments); let sourceId = this.paramsFor( - 'record.show.edit.lineage.lineageobject.source') - .source_id; + 'record.show.edit.lineage.lineageobject.source', + ).source_id; controller.set('parentModel', this.modelFor('record.show.edit')); controller.set('sourceId', sourceId); @@ -17,6 +17,6 @@ export default Route.extend(ScrollTo, { actions: { goBack() { this.transitionTo('record.show.edit.lineage.lineageobject'); - } - } + }, + }, }); diff --git a/app/pods/record/show/edit/lineage/lineageobject/source/route.js b/app/pods/record/show/edit/lineage/lineageobject/source/route.js index 1b3771086..e5fc41f8f 100644 --- a/app/pods/record/show/edit/lineage/lineageobject/source/route.js +++ b/app/pods/record/show/edit/lineage/lineageobject/source/route.js @@ -5,8 +5,10 @@ import { isArray } from '@ember/array'; export default Route.extend({ model(params) { this.set('sourceId', params.source_id); - this.set('lineageId', this.paramsFor( - 'record.show.edit.lineage.lineageobject').lineage_id); + this.set( + 'lineageId', + this.paramsFor('record.show.edit.lineage.lineageobject').lineage_id, + ); return this.setupModel(); }, @@ -16,11 +18,10 @@ export default Route.extend({ this._super(...arguments); this.controller.set('parentModel', this.modelFor('record.show.edit')); - this.controllerFor('record.show.edit') - .setProperties({ - onCancel: this.setupModel, - cancelScope: this - }); + this.controllerFor('record.show.edit').setProperties({ + onCancel: this.setupModel, + cancelScope: this, + }); }, setupModel() { @@ -28,14 +29,14 @@ export default Route.extend({ let lineageId = this.lineageId; let model = this.modelFor('record.show.edit'); let sources = model.get( - 'json.metadata.resourceLineage.' + lineageId + '.source'); - let source = sourceId && isArray(sources) ? sources.get( - sourceId) : undefined; + 'json.metadata.resourceLineage.' + lineageId + '.source', + ); + let source = + sourceId && isArray(sources) ? sources.get(sourceId) : undefined; //make sure the identifier exists - if(isEmpty(source)) { - this.flashMessages - .warning('No source found! Re-directing...'); + if (isEmpty(source)) { + this.flashMessages.warning('No source found! Re-directing...'); this.replaceWith('record.show.edit.lineage.lineageobject'); return; @@ -46,6 +47,6 @@ export default Route.extend({ actions: { parentModel() { return this.modelFor('record.show.edit'); - } - } + }, + }, }); diff --git a/app/pods/record/show/edit/lineage/lineageobject/step/citation/route.js b/app/pods/record/show/edit/lineage/lineageobject/step/citation/route.js index c37eb89ff..021221323 100644 --- a/app/pods/record/show/edit/lineage/lineageobject/step/citation/route.js +++ b/app/pods/record/show/edit/lineage/lineageobject/step/citation/route.js @@ -6,10 +6,14 @@ import ScrollTo from 'mdeditor/mixins/scroll-to'; export default Route.extend(ScrollTo, { model(params) { this.set('citationId', params.citation_id); - this.set('stepId', this.paramsFor( - 'record.show.edit.lineage.lineageobject.step').step_id); - this.set('lineageId', this.paramsFor( - 'record.show.edit.lineage.lineageobject').lineage_id); + this.set( + 'stepId', + this.paramsFor('record.show.edit.lineage.lineageobject.step').step_id, + ); + this.set( + 'lineageId', + this.paramsFor('record.show.edit.lineage.lineageobject').lineage_id, + ); return this.setupModel(); }, @@ -20,11 +24,10 @@ export default Route.extend(ScrollTo, { this.controller.set('parentModel', this.modelFor('record.show.edit')); this.controller.set('stepId', this.stepId); - this.controllerFor('record.show.edit') - .setProperties({ - onCancel: this.setupModel, - cancelScope: this - }); + this.controllerFor('record.show.edit').setProperties({ + onCancel: this.setupModel, + cancelScope: this, + }); }, setupModel() { @@ -33,14 +36,14 @@ export default Route.extend(ScrollTo, { let stepId = this.stepId; let model = this.modelFor('record.show.edit'); let citations = model.get( - `json.metadata.resourceLineage.${lineageId}.processStep.${stepId}.reference`); - let citation = citationId && isArray(citations) ? citations.get( - citationId) : undefined; + `json.metadata.resourceLineage.${lineageId}.processStep.${stepId}.reference`, + ); + let citation = + citationId && isArray(citations) ? citations.get(citationId) : undefined; //make sure the identifier exists - if(isEmpty(citation)) { - this.flashMessages - .warning('No citation found! Re-directing...'); + if (isEmpty(citation)) { + this.flashMessages.warning('No citation found! Re-directing...'); this.replaceWith('record.show.edit.lineage.lineageobject.step'); return; @@ -52,8 +55,8 @@ export default Route.extend(ScrollTo, { parentModel() { return this.modelFor('record.show.edit'); }, - goBack(){ + goBack() { this.transitionTo('record.show.edit.lineage.lineageobject.step'); - } - } + }, + }, }); diff --git a/app/pods/record/show/edit/lineage/lineageobject/step/index/route.js b/app/pods/record/show/edit/lineage/lineageobject/step/index/route.js index d9dcd90f9..cbacb9891 100644 --- a/app/pods/record/show/edit/lineage/lineageobject/step/index/route.js +++ b/app/pods/record/show/edit/lineage/lineageobject/step/index/route.js @@ -7,22 +7,28 @@ export default Route.extend(ScrollTo, { // Call _super for default behavior this._super(...arguments); - this.controller.set('parentModel', this.modelFor( - 'record.show.edit.main')); - this.controller.set('stepId', get(this.controllerFor( - 'record.show.edit.lineage.lineageobject.step'), 'stepId')); + this.controller.set('parentModel', this.modelFor('record.show.edit.main')); + this.controller.set( + 'stepId', + get( + this.controllerFor('record.show.edit.lineage.lineageobject.step'), + 'stepId', + ), + ); }, actions: { editCitation(index) { - this.transitionTo('record.show.edit.lineage.lineageobject.step.citation', - index) - .then( - function () { - this.setScrollTo('citation'); - }.bind(this)); + this.transitionTo( + 'record.show.edit.lineage.lineageobject.step.citation', + index, + ).then( + function () { + this.setScrollTo('citation'); + }.bind(this), + ); }, - goBack(){ + goBack() { this.transitionTo('record.show.edit.lineage.lineageobject'); - } - } + }, + }, }); diff --git a/app/pods/record/show/edit/lineage/lineageobject/step/route.js b/app/pods/record/show/edit/lineage/lineageobject/step/route.js index a66b5bcd0..83a1fbfc0 100644 --- a/app/pods/record/show/edit/lineage/lineageobject/step/route.js +++ b/app/pods/record/show/edit/lineage/lineageobject/step/route.js @@ -6,8 +6,10 @@ import { computed, get } from '@ember/object'; export default Route.extend({ model(params) { this.set('stepId', params.step_id); - this.set('lineageId', this.paramsFor( - 'record.show.edit.lineage.lineageobject').lineage_id); + this.set( + 'lineageId', + this.paramsFor('record.show.edit.lineage.lineageobject').lineage_id, + ); return this.setupModel(); }, @@ -15,7 +17,7 @@ export default Route.extend({ breadCrumb: computed('stepId', function () { return { title: 'Step ' + this.stepId, - linkable: true + linkable: true, }; }), @@ -25,11 +27,10 @@ export default Route.extend({ this.controller.set('parentModel', this.modelFor('record.show.edit')); this.controller.set('stepId', this.stepId); - this.controllerFor('record.show.edit') - .setProperties({ - onCancel: this.setupModel, - cancelScope: this - }); + this.controllerFor('record.show.edit').setProperties({ + onCancel: this.setupModel, + cancelScope: this, + }); }, setupModel() { @@ -37,14 +38,13 @@ export default Route.extend({ let lineageId = this.lineageId; let model = this.modelFor('record.show.edit'); let steps = model.get( - 'json.metadata.resourceLineage.' + lineageId + '.processStep'); - let step = stepId && isArray(steps) ? steps.get( - stepId) : undefined; + 'json.metadata.resourceLineage.' + lineageId + '.processStep', + ); + let step = stepId && isArray(steps) ? steps.get(stepId) : undefined; //make sure the identifier exists - if(isEmpty(step)) { - this.flashMessages - .warning('No Process Step found! Re-directing...'); + if (isEmpty(step)) { + this.flashMessages.warning('No Process Step found! Re-directing...'); this.replaceWith('record.show.edit.lineage.lineageobject'); return; @@ -55,6 +55,6 @@ export default Route.extend({ actions: { parentModel() { return this.modelFor('record.show.edit'); - } - } + }, + }, }); diff --git a/app/pods/record/show/edit/lineage/route.js b/app/pods/record/show/edit/lineage/route.js index 6c74252aa..d09f667b2 100644 --- a/app/pods/record/show/edit/lineage/route.js +++ b/app/pods/record/show/edit/lineage/route.js @@ -1,4 +1,3 @@ import Route from '@ember/routing/route'; -export default Route.extend({ -}); +export default Route.extend({}); diff --git a/app/pods/record/show/edit/main/citation/identifier/route.js b/app/pods/record/show/edit/main/citation/identifier/route.js index 5cecea477..ab88e21e5 100644 --- a/app/pods/record/show/edit/main/citation/identifier/route.js +++ b/app/pods/record/show/edit/main/citation/identifier/route.js @@ -10,34 +10,38 @@ export default Route.extend(ScrollTo, { return this.setupModel(); }, - setupController: function () { // Call _super for default behavior this._super(...arguments); this.controller.set('parentModel', this.modelFor('record.show.edit.main')); - this.controllerFor('record.show.edit') - .setProperties({ - onCancel: this.setupModel, - cancelScope: this - }); + this.controllerFor('record.show.edit').setProperties({ + onCancel: this.setupModel, + cancelScope: this, + }); }, setupModel() { let identifierId = this.identifierId; let model = this.modelFor('record.show.edit.main'); - let identifiers = model.get('json.metadata.resourceInfo.citation.identifier'); - let identifier = identifierId && isArray(identifiers) ? identifiers.get(identifierId) : undefined; + let identifiers = model.get( + 'json.metadata.resourceInfo.citation.identifier', + ); + let identifier = + identifierId && isArray(identifiers) + ? identifiers.get(identifierId) + : undefined; //make sure the identifier exists if (isEmpty(identifier)) { - this.flashMessages - .warning('No identifier found! Re-directing to citation...'); + this.flashMessages.warning( + 'No identifier found! Re-directing to citation...', + ); this.replaceWith('record.show.edit.main.citation'); return; } return identifier; - } + }, }); diff --git a/app/pods/record/show/edit/main/citation/index/route.js b/app/pods/record/show/edit/main/citation/index/route.js index 219f7106c..2c9777b6f 100644 --- a/app/pods/record/show/edit/main/citation/index/route.js +++ b/app/pods/record/show/edit/main/citation/index/route.js @@ -33,10 +33,14 @@ export default Route.extend(ScrollTo, { actions: { editIdentifier(index) { - this.transitionTo('record.show.edit.main.citation.identifier', index) - .then(function () { + this.transitionTo( + 'record.show.edit.main.citation.identifier', + index, + ).then( + function () { this.setScrollTo('identifier'); - }.bind(this)); - } - } + }.bind(this), + ); + }, + }, }); diff --git a/app/pods/record/show/edit/main/citation/route.js b/app/pods/record/show/edit/main/citation/route.js index 6c74252aa..d09f667b2 100644 --- a/app/pods/record/show/edit/main/citation/route.js +++ b/app/pods/record/show/edit/main/citation/route.js @@ -1,4 +1,3 @@ import Route from '@ember/routing/route'; -export default Route.extend({ -}); +export default Route.extend({}); diff --git a/app/pods/record/show/edit/main/index/route.js b/app/pods/record/show/edit/main/index/route.js index 35740d241..2af682304 100644 --- a/app/pods/record/show/edit/main/index/route.js +++ b/app/pods/record/show/edit/main/index/route.js @@ -1,49 +1,95 @@ import Route from '@ember/routing/route'; import { set, get } from '@ember/object'; import ScrollTo from 'mdeditor/mixins/scroll-to'; -import { - formatCitation -} from 'mdeditor/pods/components/object/md-citation/component'; +import { formatCitation } from 'mdeditor/pods/components/object/md-citation/component'; export default Route.extend(ScrollTo, { afterModel(m) { this._super(...arguments); let model = get(m, 'json.metadata.resourceInfo'); - set(model, 'timePeriod', get(model, 'timePeriod') !== undefined ? get(model, 'timePeriod') : {}); - set(model, 'defaultResourceLocale', get(model, 'defaultResourceLocale') !== undefined ? get(model, 'defaultResourceLocale') : {}); - set(model, 'pointOfContact', get(model, 'pointOfContact') !== undefined ? get(model, 'pointOfContact') : []); - set(model, 'status', get(model, 'status') !== undefined ? get(model, 'status') : []); - set(model, 'citation', get(model, 'citation') !== undefined ? get(model, 'citation') : formatCitation({})); - set(model, 'credit', get(model, 'credit') !== undefined ? get(model, 'credit') : []); - set(model, 'resourceType', get(model, 'resourceType') !== undefined ? get(model, 'resourceType') : []); - set(model, 'resourceMaintenance', get(model, 'resourceMaintenance') !== undefined ? get(model, 'resourceMaintenance') : []); - set(model, 'graphicOverview', get(model, 'graphicOverview') !== undefined ? get(model, 'graphicOverview') : []); + set( + model, + 'timePeriod', + get(model, 'timePeriod') !== undefined ? get(model, 'timePeriod') : {}, + ); + set( + model, + 'defaultResourceLocale', + get(model, 'defaultResourceLocale') !== undefined + ? get(model, 'defaultResourceLocale') + : {}, + ); + set( + model, + 'pointOfContact', + get(model, 'pointOfContact') !== undefined + ? get(model, 'pointOfContact') + : [], + ); + set( + model, + 'status', + get(model, 'status') !== undefined ? get(model, 'status') : [], + ); + set( + model, + 'citation', + get(model, 'citation') !== undefined + ? get(model, 'citation') + : formatCitation({}), + ); + set( + model, + 'credit', + get(model, 'credit') !== undefined ? get(model, 'credit') : [], + ); + set( + model, + 'resourceType', + get(model, 'resourceType') !== undefined + ? get(model, 'resourceType') + : [], + ); + set( + model, + 'resourceMaintenance', + get(model, 'resourceMaintenance') !== undefined + ? get(model, 'resourceMaintenance') + : [], + ); + set( + model, + 'graphicOverview', + get(model, 'graphicOverview') !== undefined + ? get(model, 'graphicOverview') + : [], + ); }, setupController(controller, model) { this._super(controller, model); - this.controllerFor('record.show.edit') - .setProperties({ - onCancel: () => this, - cancelScope: this - }); + this.controllerFor('record.show.edit').setProperties({ + onCancel: () => this, + cancelScope: this, + }); }, actions: { editCitation(scrollTo) { - this.transitionTo('record.show.edit.main.citation') - .then(function () { + this.transitionTo('record.show.edit.main.citation').then( + function () { this.setScrollTo(scrollTo); - }.bind(this)); + }.bind(this), + ); }, editId() { this.transitionTo('record.show.edit.metadata.identifier', { queryParams: { - scrollTo: 'identifier' - } + scrollTo: 'identifier', + }, }); - } - } + }, + }, }); diff --git a/app/pods/record/show/edit/main/route.js b/app/pods/record/show/edit/main/route.js index 6c74252aa..d09f667b2 100644 --- a/app/pods/record/show/edit/main/route.js +++ b/app/pods/record/show/edit/main/route.js @@ -1,4 +1,3 @@ import Route from '@ember/routing/route'; -export default Route.extend({ -}); +export default Route.extend({}); diff --git a/app/pods/record/show/edit/metadata/alternate/identifier/route.js b/app/pods/record/show/edit/metadata/alternate/identifier/route.js index 985af80f5..680bf0af1 100644 --- a/app/pods/record/show/edit/metadata/alternate/identifier/route.js +++ b/app/pods/record/show/edit/metadata/alternate/identifier/route.js @@ -11,29 +11,31 @@ export default Route.extend(ScrollTo, { return this.setupModel(); }, - setupController: function () { // Call _super for default behavior this._super(...arguments); this.controller.set('parentModel', this.modelFor('record.show.edit')); - this.controllerFor('record.show.edit') - .setProperties({ - onCancel: this.setupModel, - cancelScope: this - }); + this.controllerFor('record.show.edit').setProperties({ + onCancel: this.setupModel, + cancelScope: this, + }); }, setupModel() { let identifierId = this.identifierId; let model = this.modelFor('record.show.edit.metadata.alternate'); let identifiers = get(model, 'identifier'); - let identifier = identifierId && isArray(identifiers) ? identifiers.get(identifierId) : undefined; + let identifier = + identifierId && isArray(identifiers) + ? identifiers.get(identifierId) + : undefined; //make sure the identifier exists if (isEmpty(identifier)) { - this.flashMessages - .warning('No identifier found! Re-directing to Alternate Metadata...'); + this.flashMessages.warning( + 'No identifier found! Re-directing to Alternate Metadata...', + ); this.replaceWith('record.show.edit.metadata.alternate'); return; @@ -42,8 +44,8 @@ export default Route.extend(ScrollTo, { return identifier; }, actions: { - goBack(){ + goBack() { this.transitionTo('record.show.edit.metadata.alternate'); - } - } + }, + }, }); diff --git a/app/pods/record/show/edit/metadata/alternate/index/route.js b/app/pods/record/show/edit/metadata/alternate/index/route.js index aefde694f..2a05cecb6 100644 --- a/app/pods/record/show/edit/metadata/alternate/index/route.js +++ b/app/pods/record/show/edit/metadata/alternate/index/route.js @@ -4,11 +4,14 @@ import ScrollTo from 'mdeditor/mixins/scroll-to'; export default Route.extend(ScrollTo, { actions: { editIdentifier(index) { - this.transitionTo('record.show.edit.metadata.alternate.identifier', - index) - .then(function () { + this.transitionTo( + 'record.show.edit.metadata.alternate.identifier', + index, + ).then( + function () { this.setScrollTo('identifier'); - }.bind(this)); - } - } + }.bind(this), + ); + }, + }, }); diff --git a/app/pods/record/show/edit/metadata/alternate/route.js b/app/pods/record/show/edit/metadata/alternate/route.js index 7c4e9e6e4..2672016ed 100644 --- a/app/pods/record/show/edit/metadata/alternate/route.js +++ b/app/pods/record/show/edit/metadata/alternate/route.js @@ -14,25 +14,24 @@ export default Route.extend({ this._super(...arguments); this.controller.set('parentModel', this.modelFor('record.show.edit')); - this.controllerFor('record.show.edit') - .setProperties({ - onCancel: this.setupModel, - cancelScope: this - }); + this.controllerFor('record.show.edit').setProperties({ + onCancel: this.setupModel, + cancelScope: this, + }); }, setupModel() { let citationId = this.citationId; let model = this.modelFor('record.show.edit'); let citations = model.get( - 'json.metadata.metadataInfo.alternateMetadataReference'); - let citation = citationId && isArray(citations) ? citations.get( - citationId) : undefined; + 'json.metadata.metadataInfo.alternateMetadataReference', + ); + let citation = + citationId && isArray(citations) ? citations.get(citationId) : undefined; //make sure the identifier exists - if(isEmpty(citation)) { - this.flashMessages - .warning('No citation found! Re-directing...'); + if (isEmpty(citation)) { + this.flashMessages.warning('No citation found! Re-directing...'); this.replaceWith('record.show.edit.metadata'); return; @@ -43,6 +42,6 @@ export default Route.extend({ actions: { parentModel() { return this.modelFor('record.show.edit'); - } - } + }, + }, }); diff --git a/app/pods/record/show/edit/metadata/identifier/route.js b/app/pods/record/show/edit/metadata/identifier/route.js index f53a69163..c22358c0b 100644 --- a/app/pods/record/show/edit/metadata/identifier/route.js +++ b/app/pods/record/show/edit/metadata/identifier/route.js @@ -12,21 +12,23 @@ export default Route.extend(ScrollTo, { this._super(...arguments); this.controller.set('parentModel', this.modelFor('record.show.edit')); - this.controllerFor('record.show.edit') - .setProperties({ - onCancel: this.setupModel, - cancelScope: this - }); + this.controllerFor('record.show.edit').setProperties({ + onCancel: this.setupModel, + cancelScope: this, + }); }, setupModel() { let model = this.modelFor('record.show.edit'); //make sure the identifier exists - model.set('json.metadata.metadataInfo.metadataIdentifier', - get(model, 'json.metadata.metadataInfo.metadataIdentifier') !== undefined ? get(model, 'json.metadata.metadataInfo.metadataIdentifier') : {}); + model.set( + 'json.metadata.metadataInfo.metadataIdentifier', + get(model, 'json.metadata.metadataInfo.metadataIdentifier') !== undefined + ? get(model, 'json.metadata.metadataInfo.metadataIdentifier') + : {}, + ); - return get(model, - 'json.metadata.metadataInfo.metadataIdentifier'); - } + return get(model, 'json.metadata.metadataInfo.metadataIdentifier'); + }, }); diff --git a/app/pods/record/show/edit/metadata/index/route.js b/app/pods/record/show/edit/metadata/index/route.js index 11aab26a6..fd4242998 100644 --- a/app/pods/record/show/edit/metadata/index/route.js +++ b/app/pods/record/show/edit/metadata/index/route.js @@ -1,9 +1,7 @@ import Route from '@ember/routing/route'; import { set, get } from '@ember/object'; import ScrollTo from 'mdeditor/mixins/scroll-to'; -import { - once -} from '@ember/runloop'; +import { once } from '@ember/runloop'; export default Route.extend(ScrollTo, { afterModel(m) { @@ -12,26 +10,79 @@ export default Route.extend(ScrollTo, { let model = get(m, 'json.metadata.metadataInfo'); once(this, () => { - set(model, 'metadataContact', get(model, 'metadataContact') !== undefined ? get(model, 'metadataContact') : []); - set(model, 'metadataDate', get(model, 'metadataDate') !== undefined ? get(model, 'metadataDate') : []); - set(model, 'metadataMaintenance', get(model, 'metadataMaintenance') !== undefined ? get(model, 'metadataMaintenance') : {}); - set(model, 'metadataOnlineResource', get(model, 'metadataOnlineResource') !== undefined ? get(model, 'metadataOnlineResource') : []); - set(model, 'defaultMetadataLocale', get(model, 'defaultMetadataLocale') !== undefined ? get(model, 'defaultMetadataLocale') : {}); - set(model, 'metadataIdentifier', get(model, 'metadataIdentifier') !== undefined ? get(model, 'metadataIdentifier') : {}); - set(model, 'parentMetadata', get(model, 'parentMetadata') !== undefined ? get(model, 'parentMetadata') : {}); - set(model, 'alternateMetadataReference', get(model, 'alternateMetadataReference') !== undefined ? get(model, 'alternateMetadataReference') : []); - set(m, 'json.metadataRepository', get(m, 'json.metadataRepository') !== undefined ? get(m, 'json.metadataRepository') : []); + set( + model, + 'metadataContact', + get(model, 'metadataContact') !== undefined + ? get(model, 'metadataContact') + : [], + ); + set( + model, + 'metadataDate', + get(model, 'metadataDate') !== undefined + ? get(model, 'metadataDate') + : [], + ); + set( + model, + 'metadataMaintenance', + get(model, 'metadataMaintenance') !== undefined + ? get(model, 'metadataMaintenance') + : {}, + ); + set( + model, + 'metadataOnlineResource', + get(model, 'metadataOnlineResource') !== undefined + ? get(model, 'metadataOnlineResource') + : [], + ); + set( + model, + 'defaultMetadataLocale', + get(model, 'defaultMetadataLocale') !== undefined + ? get(model, 'defaultMetadataLocale') + : {}, + ); + set( + model, + 'metadataIdentifier', + get(model, 'metadataIdentifier') !== undefined + ? get(model, 'metadataIdentifier') + : {}, + ); + set( + model, + 'parentMetadata', + get(model, 'parentMetadata') !== undefined + ? get(model, 'parentMetadata') + : {}, + ); + set( + model, + 'alternateMetadataReference', + get(model, 'alternateMetadataReference') !== undefined + ? get(model, 'alternateMetadataReference') + : [], + ); + set( + m, + 'json.metadataRepository', + get(m, 'json.metadataRepository') !== undefined + ? get(m, 'json.metadataRepository') + : [], + ); }); }, setupController(controller, model) { this._super(controller, model); - this.controllerFor('record.show.edit') - .setProperties({ - onCancel: () => this, - cancelScope: this - }); + this.controllerFor('record.show.edit').setProperties({ + onCancel: () => this, + cancelScope: this, + }); }, actions: { @@ -39,19 +90,25 @@ export default Route.extend(ScrollTo, { this.transitionTo('record.show.edit.metadata.identifier').then( function () { this.setScrollTo('metadata-identifier'); - }.bind(this)); + }.bind(this), + ); }, editAlternate(index) { - this.transitionTo('record.show.edit.metadata.alternate.index', index) - .then( - function () { - this.setScrollTo('alternate-metadata'); - }.bind(this)); + this.transitionTo( + 'record.show.edit.metadata.alternate.index', + index, + ).then( + function () { + this.setScrollTo('alternate-metadata'); + }.bind(this), + ); }, editParent() { - this.transitionTo('record.show.edit.metadata.parent').then(function () { - this.setScrollTo('parent-metadata'); - }.bind(this)); - } - } + this.transitionTo('record.show.edit.metadata.parent').then( + function () { + this.setScrollTo('parent-metadata'); + }.bind(this), + ); + }, + }, }); diff --git a/app/pods/record/show/edit/metadata/parent/identifier/route.js b/app/pods/record/show/edit/metadata/parent/identifier/route.js index 89634d88b..57dd2319f 100644 --- a/app/pods/record/show/edit/metadata/parent/identifier/route.js +++ b/app/pods/record/show/edit/metadata/parent/identifier/route.js @@ -10,34 +10,38 @@ export default Route.extend(ScrollTo, { return this.setupModel(); }, - setupController: function () { // Call _super for default behavior this._super(...arguments); this.controller.set('parentModel', this.modelFor('record.show.edit')); - this.controllerFor('record.show.edit') - .setProperties({ - onCancel: this.setupModel, - cancelScope: this - }); + this.controllerFor('record.show.edit').setProperties({ + onCancel: this.setupModel, + cancelScope: this, + }); }, setupModel() { let identifierId = this.identifierId; let model = this.modelFor('record.show.edit'); - let identifiers = model.get('json.metadata.metadataInfo.parentMetadata.identifier'); - let identifier = identifierId && isArray(identifiers) ? identifiers.get(identifierId) : undefined; + let identifiers = model.get( + 'json.metadata.metadataInfo.parentMetadata.identifier', + ); + let identifier = + identifierId && isArray(identifiers) + ? identifiers.get(identifierId) + : undefined; //make sure the identifier exists if (isEmpty(identifier)) { - this.flashMessages - .warning('No identifier found! Re-directing to Parent Metadata...'); + this.flashMessages.warning( + 'No identifier found! Re-directing to Parent Metadata...', + ); this.replaceWith('record.show.edit.metadata.parent.index'); return; } return identifier; - } + }, }); diff --git a/app/pods/record/show/edit/metadata/parent/index/route.js b/app/pods/record/show/edit/metadata/parent/index/route.js index 9456939d5..64f9e1cbd 100644 --- a/app/pods/record/show/edit/metadata/parent/index/route.js +++ b/app/pods/record/show/edit/metadata/parent/index/route.js @@ -7,13 +7,14 @@ export default Route.extend(ScrollTo, { afterModel(model) { this._super(...arguments); - if(isNone(get(model, 'json.metadata.metadataInfo.parentMetadata'))) { - this.flashMessages - .warning('No Parent Citation found! Re-directing to Metadata...'); + if (isNone(get(model, 'json.metadata.metadataInfo.parentMetadata'))) { + this.flashMessages.warning( + 'No Parent Citation found! Re-directing to Metadata...', + ); this.replaceWith('record.show.edit.metadata', { queryParams: { - scrollTo: 'parent-metadata' - } + scrollTo: 'parent-metadata', + }, }); } @@ -22,11 +23,14 @@ export default Route.extend(ScrollTo, { actions: { editIdentifier(index) { - this.transitionTo('record.show.edit.metadata.parent.identifier', - index) - .then(function () { + this.transitionTo( + 'record.show.edit.metadata.parent.identifier', + index, + ).then( + function () { this.setScrollTo('identifier'); - }.bind(this)); - } - } + }.bind(this), + ); + }, + }, }); diff --git a/app/pods/record/show/edit/metadata/parent/route.js b/app/pods/record/show/edit/metadata/parent/route.js index 6c74252aa..d09f667b2 100644 --- a/app/pods/record/show/edit/metadata/parent/route.js +++ b/app/pods/record/show/edit/metadata/parent/route.js @@ -1,4 +1,3 @@ import Route from '@ember/routing/route'; -export default Route.extend({ -}); +export default Route.extend({}); diff --git a/app/pods/record/show/edit/metadata/route.js b/app/pods/record/show/edit/metadata/route.js index 6c74252aa..d09f667b2 100644 --- a/app/pods/record/show/edit/metadata/route.js +++ b/app/pods/record/show/edit/metadata/route.js @@ -1,4 +1,3 @@ import Route from '@ember/routing/route'; -export default Route.extend({ -}); +export default Route.extend({}); diff --git a/app/pods/record/show/edit/route.js b/app/pods/record/show/edit/route.js index 8af7de17c..5b97e1926 100644 --- a/app/pods/record/show/edit/route.js +++ b/app/pods/record/show/edit/route.js @@ -9,7 +9,7 @@ export default Route.extend(HashPoll, DoCancel, { this.breadCrumb = { title: 'Edit', - linkable: false + linkable: false, }; }, @@ -30,46 +30,39 @@ export default Route.extend(HashPoll, DoCancel, { }, actions: { - saveRecord: function () { let model = this.currentRouteModel(); - model - .save() - .then(() => { - this.flashMessages.success( - `Saved Record: ${model.get('title')}`); - }); + model.save().then(() => { + this.flashMessages.success(`Saved Record: ${model.get('title')}`); + }); }, cancelRecord: function () { let model = this.currentRouteModel(); let message = `Cancelled changes to Record: ${model.get('title')}`; - if(this.get('settings.data.autoSave')) { + if (this.get('settings.data.autoSave')) { let json = model.get('jsonRevert'); - if(json) { + if (json) { model.set('json', JSON.parse(json)); this.doCancel(); - this.flashMessages - .warning(message); + this.flashMessages.warning(message); } return; } - model - .reload() - .then(() => { - this.doCancel(); - this.flashMessages.warning(message); - }); + model.reload().then(() => { + this.doCancel(); + this.flashMessages.warning(message); + }); }, getContext() { return this; - } - } + }, + }, }); diff --git a/app/pods/record/show/edit/spatial/index/route.js b/app/pods/record/show/edit/spatial/index/route.js index 6c74252aa..d09f667b2 100644 --- a/app/pods/record/show/edit/spatial/index/route.js +++ b/app/pods/record/show/edit/spatial/index/route.js @@ -1,4 +1,3 @@ import Route from '@ember/routing/route'; -export default Route.extend({ -}); +export default Route.extend({}); diff --git a/app/pods/record/show/edit/spatial/raster/attribute/route.js b/app/pods/record/show/edit/spatial/raster/attribute/route.js index 2d5035217..39d20fea6 100644 --- a/app/pods/record/show/edit/spatial/raster/attribute/route.js +++ b/app/pods/record/show/edit/spatial/raster/attribute/route.js @@ -29,11 +29,10 @@ export default Route.extend(ScrollTo, { this.controller.set('attrGroupId', this.attrGroupId); this.controller.set('attributeId', this.attributeId); this.controller.set('rasterId', this.rasterId); - this.controllerFor('record.show.edit') - .setProperties({ - onCancel: this.setupModel, - cancelScope: this - }); + this.controllerFor('record.show.edit').setProperties({ + onCancel: this.setupModel, + cancelScope: this, + }); }, setupModel() { @@ -44,19 +43,21 @@ export default Route.extend(ScrollTo, { let rasters = model.get('json.metadata.resourceInfo.coverageDescription'); - let raster = rasterId && isArray(rasters) - ? A(rasters).objectAt(rasterId) - : undefined; - let attrGroup = raster && attrGroupId && isArray(raster.attributeGroup) - ? A(raster.attributeGroup).objectAt(attrGroupId) - : undefined; - let attribute = attrGroup && attributeId && isArray(attrGroup.attribute) - ? A(attrGroup.attribute).objectAt(attributeId) - : undefined; + let raster = + rasterId && isArray(rasters) ? A(rasters).objectAt(rasterId) : undefined; + let attrGroup = + raster && attrGroupId && isArray(raster.attributeGroup) + ? A(raster.attributeGroup).objectAt(attrGroupId) + : undefined; + let attribute = + attrGroup && attributeId && isArray(attrGroup.attribute) + ? A(attrGroup.attribute).objectAt(attributeId) + : undefined; //make sure the identifier exists - if(isEmpty(attribute)) { - this.flashMessages - .warning('No Attributes found! Re-directing to Attribute Groups...'); + if (isEmpty(attribute)) { + this.flashMessages.warning( + 'No Attributes found! Re-directing to Attribute Groups...', + ); this.replaceWith('record.show.edit.spatial.raster'); return; @@ -71,20 +72,21 @@ export default Route.extend(ScrollTo, { }, deleteAttribute(id) { - let model = this.controller.parentModel - .get('json.metadata.resourceInfo.coverageDescription')[this.controller.rasterId] - .attributeGroup[this.controller.attrGroupId].attribute; + let model = this.controller.parentModel.get( + 'json.metadata.resourceInfo.coverageDescription', + )[this.controller.rasterId].attributeGroup[this.controller.attrGroupId] + .attribute; model.removeAt(id || parseInt(this.attributeId, 0)); this.transitionTo('record.show.edit.spatial.raster', { queryParams: { - scrollTo: this.controller.attrGroupId - } + scrollTo: this.controller.attrGroupId, + }, }); }, backToAttrGroup() { this.transitionTo('record.show.edit.spatial.raster'); - } - } + }, + }, }); diff --git a/app/pods/record/show/edit/spatial/raster/index/route.js b/app/pods/record/show/edit/spatial/raster/index/route.js index 94ad0f6e9..04aa3570a 100644 --- a/app/pods/record/show/edit/spatial/raster/index/route.js +++ b/app/pods/record/show/edit/spatial/raster/index/route.js @@ -1,4 +1,4 @@ -import Route from "@ember/routing/route"; +import Route from '@ember/routing/route'; import ScrollTo from 'mdeditor/mixins/scroll-to'; import { get, defineProperty } from '@ember/object'; import { alias } from '@ember/object/computed'; @@ -8,34 +8,40 @@ export default Route.extend(ScrollTo, { // Call _super for default behavior this._super(...arguments); - this.controller.set('parentModel', this.modelFor( - 'record.show.edit')); - this.controller.set('rasterId', get(this.controllerFor( - 'record.show.edit.spatial.raster'), - 'rasterId')); - - defineProperty(this.controller, 'refreshSpy', alias( - 'model.json.metadata.resourceInfo.coverageDescription.length')); + this.controller.set('parentModel', this.modelFor('record.show.edit')); + this.controller.set( + 'rasterId', + get(this.controllerFor('record.show.edit.spatial.raster'), 'rasterId'), + ); + + defineProperty( + this.controller, + 'refreshSpy', + alias('model.json.metadata.resourceInfo.coverageDescription.length'), + ); }, actions: { editAttribute(id, routeParams, scrollToId) { this.setScrollTo(scrollToId); - this.transitionTo('record.show.edit.spatial.raster.attribute', this.controller.rasterId, - routeParams, id); + this.transitionTo( + 'record.show.edit.spatial.raster.attribute', + this.controller.rasterId, + routeParams, + id, + ); }, deleteAttrGroup(id) { let group = this.currentRouteModel()['attributeGroup']; - group.removeAt(id) + group.removeAt(id); }, addAttrGroup() { let group = this.currentRouteModel()['attributeGroup']; group.pushObject([]); - }, - } + }, }); diff --git a/app/pods/record/show/edit/spatial/raster/route.js b/app/pods/record/show/edit/spatial/raster/route.js index efbcc29e1..57e89b382 100644 --- a/app/pods/record/show/edit/spatial/raster/route.js +++ b/app/pods/record/show/edit/spatial/raster/route.js @@ -13,7 +13,7 @@ export default Route.extend({ breadCrumb: computed('rasterId', function () { return { title: 'RASTER ' + this.rasterId, - linkable: true + linkable: true, }; }), @@ -23,26 +23,24 @@ export default Route.extend({ this.controller.set('parentModel', this.modelFor('record.show.edit')); this.controller.set('rasterId', this.rasterId); - this.controllerFor('record.show.edit') - .setProperties({ - onCancel: this.setupModel, - cancelScope: this - }); + this.controllerFor('record.show.edit').setProperties({ + onCancel: this.setupModel, + cancelScope: this, + }); }, setupModel() { let rasterId = this.rasterId; let model = this.modelFor('record.show.edit'); - let rasters = model.get( - 'json.metadata.resourceInfo.coverageDescription'); - let raster = rasterId && isArray(rasters) - ? rasters.get(rasterId) - : undefined; + let rasters = model.get('json.metadata.resourceInfo.coverageDescription'); + let raster = + rasterId && isArray(rasters) ? rasters.get(rasterId) : undefined; //make sure the raster exists - if(isEmpty(raster)) { - this.flashMessages - .warning('No Raster Description found! Re-directing...'); + if (isEmpty(raster)) { + this.flashMessages.warning( + 'No Raster Description found! Re-directing...', + ); this.replaceWith('record.show.edit.spatial'); return; @@ -53,6 +51,6 @@ export default Route.extend({ actions: { parentModel() { return this.modelFor('record.show.edit'); - } - } + }, + }, }); diff --git a/app/pods/record/show/edit/spatial/route.js b/app/pods/record/show/edit/spatial/route.js index 6c74252aa..d09f667b2 100644 --- a/app/pods/record/show/edit/spatial/route.js +++ b/app/pods/record/show/edit/spatial/route.js @@ -1,4 +1,3 @@ import Route from '@ember/routing/route'; -export default Route.extend({ -}); +export default Route.extend({}); diff --git a/app/pods/record/show/edit/taxonomy/collection/index/route.js b/app/pods/record/show/edit/taxonomy/collection/index/route.js index 13fe1f48b..024f7cd67 100644 --- a/app/pods/record/show/edit/taxonomy/collection/index/route.js +++ b/app/pods/record/show/edit/taxonomy/collection/index/route.js @@ -2,37 +2,41 @@ import Route from '@ember/routing/route'; import { get } from '@ember/object'; import ScrollTo from 'mdeditor/mixins/scroll-to'; - export default Route.extend(ScrollTo, { - setupController: function() { + setupController: function () { // Call _super for default behavior this._super(...arguments); - this.controller.set('parentModel', this.modelFor( - 'record.show.edit')); - this.controller.set('collectionId', get(this.controllerFor( - 'record.show.edit.taxonomy.collection'), - 'collectionId')); + this.controller.set('parentModel', this.modelFor('record.show.edit')); + this.controller.set( + 'collectionId', + get( + this.controllerFor('record.show.edit.taxonomy.collection'), + 'collectionId', + ), + ); }, actions: { - toList(){ + toList() { this.transitionTo('record.show.edit.taxonomy'); }, - addTaxa(){ + addTaxa() { this.controller.model.taxonomicClassification.pushObject({ - _edit: true + _edit: true, }); }, - addITIS(){ + addITIS() { this.transitionTo('record.show.edit.taxonomy.collection.itis'); }, editSystem(index) { - this.transitionTo('record.show.edit.taxonomy.collection.system', - index) - .then( - function () { - this.setScrollTo('system'); - }.bind(this)); - } - } + this.transitionTo( + 'record.show.edit.taxonomy.collection.system', + index, + ).then( + function () { + this.setScrollTo('system'); + }.bind(this), + ); + }, + }, }); diff --git a/app/pods/record/show/edit/taxonomy/collection/itis/route.js b/app/pods/record/show/edit/taxonomy/collection/itis/route.js index 084811364..d475148aa 100644 --- a/app/pods/record/show/edit/taxonomy/collection/itis/route.js +++ b/app/pods/record/show/edit/taxonomy/collection/itis/route.js @@ -1,29 +1,30 @@ import Route from '@ember/routing/route'; -import { - get -} from '@ember/object'; +import { get } from '@ember/object'; export default Route.extend({ init() { this._super(...arguments); this.breadCrumb = { - "title": "ITIS" + title: 'ITIS', }; }, setupController: function () { // Call _super for default behavior this._super(...arguments); - this.controller.set('parentModel', this.modelFor( - 'record.show.edit')); - this.controller.set('collectionId', get(this.controllerFor( - 'record.show.edit.taxonomy.collection'), - 'collectionId')); + this.controller.set('parentModel', this.modelFor('record.show.edit')); + this.controller.set( + 'collectionId', + get( + this.controllerFor('record.show.edit.taxonomy.collection'), + 'collectionId', + ), + ); }, actions: { toCollection() { this.transitionTo('record.show.edit.taxonomy.collection'); - } - } + }, + }, }); diff --git a/app/pods/record/show/edit/taxonomy/collection/route.js b/app/pods/record/show/edit/taxonomy/collection/route.js index 8b36ce721..3604b4db4 100644 --- a/app/pods/record/show/edit/taxonomy/collection/route.js +++ b/app/pods/record/show/edit/taxonomy/collection/route.js @@ -14,7 +14,7 @@ export default Route.extend({ let index = this.collectionId; return { - title: `Collection ${index > 0 ? index : ''}` + title: `Collection ${index > 0 ? index : ''}`, //title: `${get(this, 'collectionId')}: Distributors` }; }), @@ -25,29 +25,31 @@ export default Route.extend({ //this.controller.set('parentModel', this.modelFor('record.show.edit.main')); this.controller.set('collectionId', this.collectionId); - this.controllerFor('record.show.edit') - .setProperties({ - onCancel: this.setupModel, - cancelScope: this - }); + this.controllerFor('record.show.edit').setProperties({ + onCancel: this.setupModel, + cancelScope: this, + }); }, setupModel() { let collectionId = this.collectionId; let model = this.modelFor('record.show.edit'); let objects = model.get('json.metadata.resourceInfo.taxonomy'); - let resource = collectionId && isArray(objects) ? A(objects).objectAt(collectionId) : - undefined; + let resource = + collectionId && isArray(objects) + ? A(objects).objectAt(collectionId) + : undefined; //make sure the identifier exists - if(isEmpty(resource)) { - this.flashMessages - .warning('No Collection object found! Re-directing to list...'); + if (isEmpty(resource)) { + this.flashMessages.warning( + 'No Collection object found! Re-directing to list...', + ); this.replaceWith('record.show.edit.taxonomy'); return; } return resource; - } + }, }); diff --git a/app/pods/record/show/edit/taxonomy/collection/system/index/route.js b/app/pods/record/show/edit/taxonomy/collection/system/index/route.js index bf289e430..fdf39ec72 100644 --- a/app/pods/record/show/edit/taxonomy/collection/system/index/route.js +++ b/app/pods/record/show/edit/taxonomy/collection/system/index/route.js @@ -7,8 +7,8 @@ export default Route.extend(ScrollTo, { this._super(...arguments); let systemId = this.paramsFor( - 'record.show.edit.taxonomy.collection.system') - .system_id; + 'record.show.edit.taxonomy.collection.system', + ).system_id; controller.set('parentModel', this.modelFor('record.show.edit')); controller.set('systemId', systemId); @@ -17,6 +17,6 @@ export default Route.extend(ScrollTo, { actions: { goBack() { this.transitionTo('record.show.edit.taxonomy.collection'); - } - } + }, + }, }); diff --git a/app/pods/record/show/edit/taxonomy/collection/system/route.js b/app/pods/record/show/edit/taxonomy/collection/system/route.js index 0ffdfa421..f5846406d 100644 --- a/app/pods/record/show/edit/taxonomy/collection/system/route.js +++ b/app/pods/record/show/edit/taxonomy/collection/system/route.js @@ -5,8 +5,10 @@ import { isArray } from '@ember/array'; export default Route.extend({ model(params) { this.set('systemId', params.system_id); - this.set('collectionId', this.paramsFor( - 'record.show.edit.taxonomy.collection').collection_id); + this.set( + 'collectionId', + this.paramsFor('record.show.edit.taxonomy.collection').collection_id, + ); return this.setupModel(); }, @@ -16,11 +18,10 @@ export default Route.extend({ this._super(...arguments); this.controller.set('parentModel', this.modelFor('record.show.edit')); - this.controllerFor('record.show.edit') - .setProperties({ - onCancel: this.setupModel, - cancelScope: this - }); + this.controllerFor('record.show.edit').setProperties({ + onCancel: this.setupModel, + cancelScope: this, + }); }, setupModel() { @@ -28,14 +29,16 @@ export default Route.extend({ let collectionId = this.collectionId; let model = this.modelFor('record.show.edit'); let systems = model.get( - 'json.metadata.resourceInfo.taxonomy.' + collectionId + '.taxonomicSystem'); - let system = systemId && isArray(systems) ? systems.get( - systemId) : undefined; + 'json.metadata.resourceInfo.taxonomy.' + + collectionId + + '.taxonomicSystem', + ); + let system = + systemId && isArray(systems) ? systems.get(systemId) : undefined; //make sure the identifier exists - if(isEmpty(system)) { - this.flashMessages - .warning('No Taxonomic System found! Re-directing...'); + if (isEmpty(system)) { + this.flashMessages.warning('No Taxonomic System found! Re-directing...'); this.replaceWith('record.show.edit.taxonomy.collection'); return; @@ -46,6 +49,6 @@ export default Route.extend({ actions: { parentModel() { return this.modelFor('record.show.edit'); - } - } + }, + }, }); diff --git a/app/pods/record/show/edit/taxonomy/index/route.js b/app/pods/record/show/edit/taxonomy/index/route.js index 77ee56de6..6a63f0710 100644 --- a/app/pods/record/show/edit/taxonomy/index/route.js +++ b/app/pods/record/show/edit/taxonomy/index/route.js @@ -8,15 +8,18 @@ export default Route.extend(ScrollTo, { this._super(...arguments); let model = get(m, 'json.metadata.resourceInfo'); - set(model, 'taxonomy', get(model, 'taxonomy') !== undefined ? get(model, 'taxonomy') : []); + set( + model, + 'taxonomy', + get(model, 'taxonomy') !== undefined ? get(model, 'taxonomy') : [], + ); }, setupController: function () { // Call _super for default behavior this._super(...arguments); - this.controller.set('parentModel', this.modelFor( - 'record.show.edit')); + this.controller.set('parentModel', this.modelFor('record.show.edit')); }, actions: { @@ -25,28 +28,34 @@ export default Route.extend(ScrollTo, { this.transitionTo('record.show.edit.taxonomy.collection.index', id); }, addCollection() { - let taxa = this.currentRouteModel() - .get('json.metadata.resourceInfo.taxonomy'); + let taxa = this.currentRouteModel().get( + 'json.metadata.resourceInfo.taxonomy', + ); let collection = EmberObject.create({}); // once(this, () => { - taxa.pushObject(collection); - this.setScrollTo(`collection-${taxa.length-1}`); - this.transitionTo('record.show.edit.taxonomy.collection.index', - taxa.length - 1); - - $("html, body").animate({ - scrollTop: $(document).height() - }, "slow"); + taxa.pushObject(collection); + this.setScrollTo(`collection-${taxa.length - 1}`); + this.transitionTo( + 'record.show.edit.taxonomy.collection.index', + taxa.length - 1, + ); + + $('html, body').animate( + { + scrollTop: $(document).height(), + }, + 'slow', + ); // }); - }, deleteCollection(id) { let taxa = this.currentRouteModel().get( - 'json.metadata.resourceInfo.taxonomy'); + 'json.metadata.resourceInfo.taxonomy', + ); taxa.removeAt(id); - } - } + }, + }, }); diff --git a/app/pods/record/show/edit/taxonomy/route.js b/app/pods/record/show/edit/taxonomy/route.js index 6c74252aa..d09f667b2 100644 --- a/app/pods/record/show/edit/taxonomy/route.js +++ b/app/pods/record/show/edit/taxonomy/route.js @@ -1,4 +1,3 @@ import Route from '@ember/routing/route'; -export default Route.extend({ -}); +export default Route.extend({}); diff --git a/app/pods/record/show/index/route.js b/app/pods/record/show/index/route.js index 36869d3dd..4489b7c79 100644 --- a/app/pods/record/show/index/route.js +++ b/app/pods/record/show/index/route.js @@ -5,15 +5,14 @@ import ScrollTo from 'mdeditor/mixins/scroll-to'; export default Route.extend(ScrollTo, { actions: { - linkTo(route){ + linkTo(route) { this.transitionTo(route); }, setupMap(features, m) { let map = m.target; - let bounds = L.geoJson(features) - .getBounds(); + let bounds = L.geoJson(features).getBounds(); map.fitBounds(bounds); - } - } + }, + }, }); diff --git a/app/pods/record/show/route.js b/app/pods/record/show/route.js index f737926ef..c9b5c319f 100644 --- a/app/pods/record/show/route.js +++ b/app/pods/record/show/route.js @@ -9,7 +9,7 @@ export default Route.extend({ const name = model.get('title'); const crumb = { - title: name + title: name, }; this.set('breadCrumb', crumb); @@ -21,20 +21,16 @@ export default Route.extend({ actions: { destroyRecord: function () { let model = this.currentRouteModel(); - model - .destroyRecord() - .then(() => { - this.flashMessages - .success(`Deleted Record: ${model.get('title')}`); - this.replaceWith('records'); - }); + model.destroyRecord().then(() => { + this.flashMessages.success(`Deleted Record: ${model.get('title')}`); + this.replaceWith('records'); + }); }, copyRecord: function () { - - this.flashMessages - .success( - `Copied Record: ${this.currentRouteModel().get('title')}`); + this.flashMessages.success( + `Copied Record: ${this.currentRouteModel().get('title')}`, + ); this.transitionTo('record.new.id', copy(this.currentRouteModel())); - } - } + }, + }, }); diff --git a/app/pods/record/show/translate/route.js b/app/pods/record/show/translate/route.js index 1887ac1fa..5870ad6b3 100644 --- a/app/pods/record/show/translate/route.js +++ b/app/pods/record/show/translate/route.js @@ -1,14 +1,13 @@ import Route from '@ember/routing/route'; export default Route.extend({ -setupController(controller, model) { - this._super(controller, model); - - controller.setProperties({ - writer: controller.writer || null, - forceValid: controller.forceValid || false, - showAllTags: controller.showAllTags || false - }); -}, + setupController(controller, model) { + this._super(controller, model); + controller.setProperties({ + writer: controller.writer || null, + forceValid: controller.forceValid || false, + showAllTags: controller.showAllTags || false, + }); + }, }); diff --git a/app/pods/records/route.js b/app/pods/records/route.js index 4ebff7a1b..a3f59fbfd 100644 --- a/app/pods/records/route.js +++ b/app/pods/records/route.js @@ -1,19 +1,21 @@ import Route from '@ember/routing/route'; -import { - inject as service -} from '@ember/service'; +import { inject as service } from '@ember/service'; -const columns = [{ - propertyName: 'title', - title: 'Title' -}, { - propertyName: 'defaultType', - title: 'Resource Type', - filterWithSelect: true -}, { - propertyName: 'recordId', - title: 'ID' -}] +const columns = [ + { + propertyName: 'title', + title: 'Title', + }, + { + propertyName: 'defaultType', + title: 'Resource Type', + filterWithSelect: true, + }, + { + propertyName: 'recordId', + title: 'ID', + }, +]; export default Route.extend({ slider: service(), @@ -38,6 +40,6 @@ export default Route.extend({ slider.toggleSlider(true); return false; - } - } + }, + }, }); diff --git a/app/pods/save/route.js b/app/pods/save/route.js index 6c74252aa..d09f667b2 100644 --- a/app/pods/save/route.js +++ b/app/pods/save/route.js @@ -1,4 +1,3 @@ import Route from '@ember/routing/route'; -export default Route.extend({ -}); +export default Route.extend({}); diff --git a/app/pods/settings/index/route.js b/app/pods/settings/index/route.js index 28e4916bc..8f82a6588 100644 --- a/app/pods/settings/index/route.js +++ b/app/pods/settings/index/route.js @@ -3,5 +3,5 @@ import Route from '@ember/routing/route'; export default Route.extend({ redirect() { this.replaceWith('settings.main'); - } + }, }); diff --git a/app/pods/settings/main/route.js b/app/pods/settings/main/route.js index e10a20dcd..bb1af843f 100644 --- a/app/pods/settings/main/route.js +++ b/app/pods/settings/main/route.js @@ -4,5 +4,5 @@ import ScrollTo from 'mdeditor/mixins/scroll-to'; export default Route.extend(ScrollTo, { model() { return this.settings.get('data'); - } + }, }); diff --git a/app/pods/settings/profile/index/controller.js b/app/pods/settings/profile/index/controller.js index c64218c67..028107ec6 100644 --- a/app/pods/settings/profile/index/controller.js +++ b/app/pods/settings/profile/index/controller.js @@ -5,18 +5,22 @@ export default Controller.extend({ store: service(), customProfiles: service('custom-profile'), /* eslint-disable ember/avoid-leaking-state-in-ember-objects */ - columns: [{ - propertyName: 'title', - title: 'Title' - }, { - propertyName: 'definition.title', - title: 'Definition' - }, { - propertyName: 'description', - title: 'Description', - truncate: true, - isHidden: false - }], + columns: [ + { + propertyName: 'title', + title: 'Title', + }, + { + propertyName: 'definition.title', + title: 'Definition', + }, + { + propertyName: 'description', + title: 'Description', + truncate: true, + isHidden: false, + }, + ], // columnSets: [], // @@ -37,7 +41,6 @@ export default Controller.extend({ let profile = this.profile; return profile.save(); - }, cancelEdit() { @@ -48,6 +51,6 @@ export default Controller.extend({ }, manageDefinitions() { this.transitionToRoute('settings.profile.manage'); - } - } + }, + }, }); diff --git a/app/pods/settings/profile/manage/controller.js b/app/pods/settings/profile/manage/controller.js index 3e2bd0a2e..01d624522 100644 --- a/app/pods/settings/profile/manage/controller.js +++ b/app/pods/settings/profile/manage/controller.js @@ -9,31 +9,39 @@ export default Controller.extend({ flashMessages: service(), /* eslint-disable ember/avoid-leaking-state-in-ember-objects */ - columns: [{ - propertyName: 'title', - title: 'Title' - }, { - propertyName: 'uri', - title: 'URL', - break: true - }, { - propertyName: 'description', - title: 'Description', - truncate: true, - isHidden: true - }], - - columnSets: [{ - label: 'URL', - showColumns: ['title', 'uri'] - }], + columns: [ + { + propertyName: 'title', + title: 'Title', + }, + { + propertyName: 'uri', + title: 'URL', + break: true, + }, + { + propertyName: 'description', + title: 'Description', + truncate: true, + isHidden: true, + }, + ], - badges: [{ - type: 'info', - icon: 'info-circle', - tip: 'Update available.', - isVisible: 'hasUpdate' - }], + columnSets: [ + { + label: 'URL', + showColumns: ['title', 'uri'], + }, + ], + + badges: [ + { + type: 'info', + icon: 'info-circle', + tip: 'Update available.', + isVisible: 'hasUpdate', + }, + ], definition: null, @@ -46,8 +54,10 @@ export default Controller.extend({ * @category computed * @requires definition.validations.isInvalid,task.isRunning */ - disableSave: or('definition.validations.attrs.uri.isInvalid', - 'task.isRunning'), + disableSave: or( + 'definition.validations.attrs.uri.isInvalid', + 'task.isRunning', + ), checkForUpdates: task(function* () { yield this.profile.checkForUpdates.perform(this.model); @@ -63,24 +73,27 @@ export default Controller.extend({ saveDefinition() { let definition = this.definition; - return definition.save().then(rec => { - let fetched = this.profile.fetchDefinition.perform(rec.uri); - - this.set('task', fetched); - - fetched.then(val => { - if(val) { - definition.set('config', val); - definition.set('remoteVersion', val.version); - - this.flashMessages.success( - `Downloaded profile definition: ${val.title}.`); - } + return definition + .save() + .then((rec) => { + let fetched = this.profile.fetchDefinition.perform(rec.uri); + + this.set('task', fetched); + + fetched.then((val) => { + if (val) { + definition.set('config', val); + definition.set('remoteVersion', val.version); + + this.flashMessages.success( + `Downloaded profile definition: ${val.title}.`, + ); + } + }); + }) + .catch((e) => { + this.flashMessages.warning(e.message); }); - }).catch(e => { - this.flashMessages.warning(e.message); - }); - }, cancelEdit() { @@ -92,6 +105,6 @@ export default Controller.extend({ toProfile() { this.transitionToRoute('settings.profile'); - } - } + }, + }, }); diff --git a/app/pods/settings/profile/route.js b/app/pods/settings/profile/route.js index 6c74252aa..d09f667b2 100644 --- a/app/pods/settings/profile/route.js +++ b/app/pods/settings/profile/route.js @@ -1,4 +1,3 @@ import Route from '@ember/routing/route'; -export default Route.extend({ -}); +export default Route.extend({}); diff --git a/app/pods/settings/route.js b/app/pods/settings/route.js index ebba58fd7..238a6143b 100644 --- a/app/pods/settings/route.js +++ b/app/pods/settings/route.js @@ -14,19 +14,23 @@ export default class SettingsRoute extends Route { setupController(controller, model) { super.setupController(controller, model); - const links = [{ - title: 'Main', - target: 'settings.main', - tip: 'Main application settings' - }, { - title: 'Profiles', - target: 'settings.profile', - tip: 'Custom profile settings' - }, { - title: 'Validation', - target: 'settings.validation', - tip: 'Custom validation settings' - }] + const links = [ + { + title: 'Main', + target: 'settings.main', + tip: 'Main application settings', + }, + { + title: 'Profiles', + target: 'settings.profile', + tip: 'Custom profile settings', + }, + { + title: 'Validation', + target: 'settings.validation', + tip: 'Custom validation settings', + }, + ]; controller.set('links', links); } @@ -37,9 +41,10 @@ export default class SettingsRoute extends Route { window.localStorage.clear(); if (this.settings.data.keepSettings) { - - window.localStorage.setItem('index-settings', - `["settings-${data.data.id}"]`); + window.localStorage.setItem( + 'index-settings', + `["settings-${data.data.id}"]`, + ); this.store.pushPayload('setting', data); let rec = this.store.peekRecord('setting', data.data.id); @@ -62,7 +67,8 @@ export default class SettingsRoute extends Route { @action resetMdTranslatorAPI() { - let url = get(Setting, 'attributes').get('mdTranslatorAPI').options.defaultValue; + let url = get(Setting, 'attributes').get('mdTranslatorAPI').options + .defaultValue; let model = this.modelFor('settings.main'); model.set('mdTranslatorAPI', url); diff --git a/app/pods/settings/validation/controller.js b/app/pods/settings/validation/controller.js index e623e2939..f6715836c 100644 --- a/app/pods/settings/validation/controller.js +++ b/app/pods/settings/validation/controller.js @@ -9,51 +9,61 @@ export default Controller.extend({ flashMessages: service(), /* eslint-disable ember/avoid-leaking-state-in-ember-objects */ - columns: [{ - propertyName: 'title', - title: 'Title' - }, { - propertyName: 'formattedType', - title: 'Type', - filterWithSelect: true - }, { - propertyName: 'uri', - title: 'URL', - break: true - }, { - propertyName: 'description', - title: 'Description', - truncate: true, - isHidden: true - }, { - propertyName: 'formattedGlobal', - title: 'Global?', - filterWithSelect: true - }], + columns: [ + { + propertyName: 'title', + title: 'Title', + }, + { + propertyName: 'formattedType', + title: 'Type', + filterWithSelect: true, + }, + { + propertyName: 'uri', + title: 'URL', + break: true, + }, + { + propertyName: 'description', + title: 'Description', + truncate: true, + isHidden: true, + }, + { + propertyName: 'formattedGlobal', + title: 'Global?', + filterWithSelect: true, + }, + ], - columnSets: [{ - label: 'URL', - showColumns: ['title', 'uri'] - }], + columnSets: [ + { + label: 'URL', + showColumns: ['title', 'uri'], + }, + ], - badges: [{ - type: 'info', - icon: 'info-circle', - tip: 'Update available.', - isVisible: 'hasUpdate' - }], + badges: [ + { + type: 'info', + icon: 'info-circle', + tip: 'Update available.', + isVisible: 'hasUpdate', + }, + ], schema: null, -/** -* Indicates whether the save button should be disabled -* -* @property disableSave -* @type {Boolean} -* @readOnly -* @category computed -* @requires schema.validations.isInvalid,task.isRunning -*/ + /** + * Indicates whether the save button should be disabled + * + * @property disableSave + * @type {Boolean} + * @readOnly + * @category computed + * @requires schema.validations.isInvalid,task.isRunning + */ disableSave: or('schema.validations.isInvalid', 'task.isRunning'), checkForUpdates: task(function* () { @@ -70,23 +80,24 @@ export default Controller.extend({ saveSchema() { let schema = this.schema; - return this.schema.save().then(rec => { - let fetched = this.schemas.fetchSchemas.perform(rec.uri); + return this.schema + .save() + .then((rec) => { + let fetched = this.schemas.fetchSchemas.perform(rec.uri); - this.set('task', fetched); + this.set('task', fetched); - return fetched.then(val => { - schema.set('customSchemas', val); - schema.set('version', val[0].schema.version); - schema.set('remoteVersion', schema.version); + return fetched.then((val) => { + schema.set('customSchemas', val); + schema.set('version', val[0].schema.version); + schema.set('remoteVersion', schema.version); - this.flashMessages.success( - `Downloaded ${val.length} schemas.`); + this.flashMessages.success(`Downloaded ${val.length} schemas.`); + }); + }) + .catch((e) => { + this.flashMessages.warning(e.message); }); - }).catch(e => { - this.flashMessages.warning(e.message); - }); - }, cancelEdit() { @@ -97,6 +108,6 @@ export default Controller.extend({ }, fetchSchemas(url) { this.schemas.fetchSchemas(url); - } - } + }, + }, }); diff --git a/app/pods/translate/route.js b/app/pods/translate/route.js index 6c74252aa..d09f667b2 100644 --- a/app/pods/translate/route.js +++ b/app/pods/translate/route.js @@ -1,4 +1,3 @@ import Route from '@ember/routing/route'; -export default Route.extend({ -}); +export default Route.extend({}); diff --git a/app/router.js b/app/router.js index 3a6fe7f27..89ac15f08 100644 --- a/app/router.js +++ b/app/router.js @@ -12,12 +12,12 @@ Router.map(function () { this.route('import'); this.route('translate'); this.route('publish', function () { - this.route('sciencebase') + this.route('sciencebase'); }); this.route('help'); - this.route('settings', function() { + this.route('settings', function () { this.route('validation'); - this.route('profile', function() { + this.route('profile', function () { this.route('manage'); }); this.route('main'); @@ -29,11 +29,13 @@ Router.map(function () { this.route('record', function () { this.route('new', function () { this.route('id', { - path: '/:record_id' + path: '/:record_id', }); }); - this.route('show', { - path: ':record_id' + this.route( + 'show', + { + path: ':record_id', }, function () { this.route('edit', function () { @@ -41,116 +43,164 @@ Router.map(function () { this.route('identifier'); this.route('parent', function () { this.route('identifier', { - path: 'identifier/:identifier_id' + path: 'identifier/:identifier_id', }); }); - this.route('alternate', { - path: 'alternate/:citation_id' - }, function () { - // this.route('index', { - // path: 'alternate/:citation_id' - // }); - this.route('identifier', { - path: 'identifier/:identifier_id' - }); - }); + this.route( + 'alternate', + { + path: 'alternate/:citation_id', + }, + function () { + // this.route('index', { + // path: 'alternate/:citation_id' + // }); + this.route('identifier', { + path: 'identifier/:identifier_id', + }); + }, + ); }); this.route('keywords', function () { this.route('thesaurus', { - path: 'thesaurus/:thesaurus_id' + path: 'thesaurus/:thesaurus_id', }); }); this.route('extent', function () { this.route('spatial', { - path: 'spatial/:extent_id' + path: 'spatial/:extent_id', }); }); this.route('lineage', function () { - this.route('lineageobject', { - path: ':lineage_id' - }, function () { - this.route('citation', { - path: 'citation/:citation_id' - }, function () { - this.route('identifier', { - path: 'identifier/:identifier_id' - }); - }); - this.route('step', { - path: 'step/:step_id' - }, function () { - this.route('citation', { - path: 'citation/:citation_id' - }); - }); - this.route('source', { - path: 'source/:source_id' - }, function () {}); - }); + this.route( + 'lineageobject', + { + path: ':lineage_id', + }, + function () { + this.route( + 'citation', + { + path: 'citation/:citation_id', + }, + function () { + this.route('identifier', { + path: 'identifier/:identifier_id', + }); + }, + ); + this.route( + 'step', + { + path: 'step/:step_id', + }, + function () { + this.route('citation', { + path: 'citation/:citation_id', + }); + }, + ); + this.route( + 'source', + { + path: 'source/:source_id', + }, + function () {}, + ); + }, + ); }); this.route('distribution', function () { - this.route('distributor', { - path: ':distribution_id/distributor/:distributor_id' - }, function () { - this.route('transfer', { - path: 'transfer/:transfer_id' - }); - }); + this.route( + 'distributor', + { + path: ':distribution_id/distributor/:distributor_id', + }, + function () { + this.route('transfer', { + path: 'transfer/:transfer_id', + }); + }, + ); }); this.route('associated', function () { - this.route('resource', { - path: ':resource_id' - }, function () {}); + this.route( + 'resource', + { + path: ':resource_id', + }, + function () {}, + ); }); this.route('documents', function () { - this.route('citation', { - path: 'documents/:citation_id' - }, function () {}); + this.route( + 'citation', + { + path: 'documents/:citation_id', + }, + function () {}, + ); }); this.route('dataquality', function () { - this.route('edit', { - path: ':data_quality_id' - }, function () {}); + this.route( + 'edit', + { + path: ':data_quality_id', + }, + function () {}, + ); }); this.route('coverages'); this.route('grid'); this.route('main', function () { this.route('citation', function () { this.route('identifier', { - path: 'identifier/:identifier_id' + path: 'identifier/:identifier_id', }); }); }); this.route('funding', function () { this.route('allocation', { - path: ':allocation_id' + path: ':allocation_id', }); }); this.route('dictionary'); this.route('spatial', function () { - this.route('raster', { - path: 'raster/:raster_id' - }, function () { - this.route('attribute', { - path: ':attrgroup_id/attribute/:attribute_id' - }); - }) + this.route( + 'raster', + { + path: 'raster/:raster_id', + }, + function () { + this.route('attribute', { + path: ':attrgroup_id/attribute/:attribute_id', + }); + }, + ); }); this.route('constraint', function () {}); this.route('taxonomy', function () { - this.route('collection', { - path: ':collection_id' - }, function () { - this.route('itis'); - this.route('system', { - path: 'system/:system_id' - }, function () {}); - }); + this.route( + 'collection', + { + path: ':collection_id', + }, + function () { + this.route('itis'); + this.route( + 'system', + { + path: 'system/:system_id', + }, + function () {}, + ); + }, + ); }); }); this.route('translate'); - } + }, ); }); //contacts @@ -159,16 +209,19 @@ Router.map(function () { this.route('contact', function () { this.route('new', function () { this.route('id', { - path: '/:contact_id' + path: '/:contact_id', }); }); - this.route('show', { - path: ':contact_id' - }, function () { - this.route('edit'); - }); - + this.route( + 'show', + { + path: ':contact_id', + }, + function () { + this.route('edit'); + }, + ); }); //dictionary this.route('dictionaries'); @@ -176,55 +229,75 @@ Router.map(function () { this.route('dictionary', function () { this.route('new', function () { this.route('id', { - path: '/:dictionary_id' + path: '/:dictionary_id', }); }); - this.route('show', { - path: ':dictionary_id' - }, function () { - this.route('edit', function () { - this.route('citation', function () { - this.route('identifier', { - path: 'identifier/:identifier_id' - }); - }); - this.route('domain', function () { - this.route('edit', { - path: ':domain_id' - }, function () { - this.route('citation', function () { - this.route('identifier', { - path: 'identifier/:identifier_id' - }); - }); - this.route('item', { - path: 'item/:item_id' + this.route( + 'show', + { + path: ':dictionary_id', + }, + function () { + this.route('edit', function () { + this.route('citation', function () { + this.route('identifier', { + path: 'identifier/:identifier_id', }); }); - }); - this.route('entity', function () { - this.route('edit', { - path: ':entity_id' - }, function () { - this.route('citation', { - path: 'citation/:citation_id' - }, function () { - this.route('identifier', { - path: 'identifier/:identifier_id' - }); - }); - this.route('attribute', { - path: 'attribute/:attribute_id' - }, function () {}); + this.route('domain', function () { + this.route( + 'edit', + { + path: ':domain_id', + }, + function () { + this.route('citation', function () { + this.route('identifier', { + path: 'identifier/:identifier_id', + }); + }); + this.route('item', { + path: 'item/:item_id', + }); + }, + ); + }); + this.route('entity', function () { + this.route( + 'edit', + { + path: ':entity_id', + }, + function () { + this.route( + 'citation', + { + path: 'citation/:citation_id', + }, + function () { + this.route('identifier', { + path: 'identifier/:identifier_id', + }); + }, + ); + this.route( + 'attribute', + { + path: 'attribute/:attribute_id', + }, + function () {}, + ); + }, + ); + this.route('import'); }); - this.route('import'); }); - }); - }); + }, + ); }); this.route('not-found', { - path: '/*path' + path: '/*path', }); this.route('error'); }); diff --git a/app/routes/application.js b/app/routes/application.js index 4bd282f28..056c55cd2 100644 --- a/app/routes/application.js +++ b/app/routes/application.js @@ -6,11 +6,10 @@ import { guidFor } from '@ember/object/internals'; import RSVP from 'rsvp'; import { inject as service } from '@ember/service'; import config from 'mdeditor/config/environment'; +import classic from 'ember-classic-decorator'; const { - APP: { - defaultProfileId - } + APP: { defaultProfileId }, } = config; const console = window.console; @@ -45,38 +44,42 @@ export default Route.extend({ * @return {Ember.RSVP.hash} */ model() { - let promises = [this.store.findAll('record', { - reload: true + let promises = [ + this.store.findAll('record', { + reload: true, }), this.store.findAll('contact', { - reload: true + reload: true, }), this.store.findAll('dictionary', { - reload: true - }) + reload: true, + }), ]; - let meta = A([EmberObject.create({ - type: 'record', - list: 'records', - title: 'Metadata Records', - icon: 'file-o' - }), EmberObject.create({ - type: 'contact', - list: 'contacts', - title: 'Contacts', - icon: 'users' - }), EmberObject.create({ - type: 'dictionary', - list: 'dictionaries', - title: 'Dictionaries', - icon: 'book' - })]); + let meta = A([ + EmberObject.create({ + type: 'record', + list: 'records', + title: 'Metadata Records', + icon: 'file-o', + }), + EmberObject.create({ + type: 'contact', + list: 'contacts', + title: 'Contacts', + icon: 'users', + }), + EmberObject.create({ + type: 'dictionary', + list: 'dictionaries', + title: 'Dictionaries', + icon: 'book', + }), + ]); let idx = 0; let mapFn = function (item) { - meta[idx].set('listId', guidFor(item)); item.set('meta', meta[idx]); idx = ++idx; @@ -84,16 +87,17 @@ export default Route.extend({ return item; }; - return RSVP.map(promises, mapFn).then(result => { - let profiles = [this.store.findAll('profile', { - reload: true + return RSVP.map(promises, mapFn).then((result) => { + let profiles = [ + this.store.findAll('profile', { + reload: true, }), this.store.findAll('schema', { - reload: true + reload: true, }), this.store.findAll('custom-profile', { - reload: true - }) + reload: true, + }), ]; return RSVP.all(profiles).then(() => result); @@ -103,13 +107,15 @@ export default Route.extend({ }, beforeModel() { - if(!defaultProfileId) { - this.router.replaceWith('error') - .then(function (route) { - route.controller.set('lastError', new Error( - 'A default profile ID is not set in "config/environment/APP"' - )); - }); + if (!defaultProfileId) { + this.router.replaceWith('error').then(function (route) { + route.controller.set( + 'lastError', + new Error( + 'A default profile ID is not set in "config/environment/APP"', + ), + ); + }); } let loadVocabulariesPromise = this.keyword.loadVocabularies(); let loadProfilesPromise = this.profile.loadProfiles.perform(); @@ -134,18 +140,16 @@ export default Route.extend({ error(error) { console.error(error); - if(error.status === 404) { + if (error.status === 404) { return this.transitionTo('not-found'); } - return this.replaceWith('error') - .then(function (route) { - route.controller.set('lastError', error); - }); + return this.replaceWith('error').then(function (route) { + route.controller.set('lastError', error); + }); }, didTransition() { - this.controller.set('currentRoute', this.router.get( - 'currentRouteName')); - } - } + this.controller.set('currentRoute', this.router.get('currentRouteName')); + }, + }, }); diff --git a/app/routes/index.js b/app/routes/index.js index 0bb39c623..826027cf2 100644 --- a/app/routes/index.js +++ b/app/routes/index.js @@ -1,8 +1,10 @@ +import classic from 'ember-classic-decorator'; import Route from '@ember/routing/route'; -export default Route.extend({ +@classic +export default class IndexRoute extends Route { /** Redirect to dashboard route */ redirect() { this.transitionTo('dashboard'); } -}); +} diff --git a/app/services/cleaner.js b/app/services/cleaner.js index 52f5a81ba..502c13ebd 100644 --- a/app/services/cleaner.js +++ b/app/services/cleaner.js @@ -5,104 +5,98 @@ import Service from '@ember/service'; import { assign } from '@ember/polyfills'; const clean = function (obj, options) { - const opt = assign({ - target: {}, - preserveArrays: true, - //preserveObjects: true, - preserveRootOnly: true - }, options); - - if(isBlank(obj)) { - if(isArray(obj) && opt.preserveArrays) { + const opt = assign( + { + target: {}, + preserveArrays: true, + //preserveObjects: true, + preserveRootOnly: true, + }, + options, + ); + + if (isBlank(obj)) { + if (isArray(obj) && opt.preserveArrays) { return []; } return; } - if((((/string|number|boolean/))) - .test(typeof obj)) { + if (/string|number|boolean/.test(typeof obj)) { return obj; } let acc = opt.target; - return Object.keys(obj) - .reduce((result, key) => { - //reject private property - if(key.match(/^_/)) { + return Object.keys(obj).reduce((result, key) => { + //reject private property + if (key.match(/^_/)) { + return result; + } + + if (isArray(obj[key])) { + if (opt.preserveArrays === false && obj[key].length === 0) { return result; } + let resultArray = []; - if(isArray(obj[key])) { - if(opt.preserveArrays === false && obj[key].length === 0) { - return result; - } - let resultArray = []; - - obj[key].forEach((itm) => { - let type = isArray(itm) ? [] : (typeof itm === 'object' ? {} : - null); - let cleanItem = clean(itm, { - target: type, - preserveArrays: opt.preserveRootOnly ? false : opt - .preserveArrays - }); - - if(!isArray(cleanItem)) { - if(isBlank(cleanItem) || (typeof cleanItem === 'object' && - Object.keys(cleanItem).length === 0)) { - return; - } - } - - //console.info(cleanItem); - resultArray.push(cleanItem); - //resultArray[idx] = cleanItem; - + obj[key].forEach((itm) => { + let type = isArray(itm) ? [] : typeof itm === 'object' ? {} : null; + let cleanItem = clean(itm, { + target: type, + preserveArrays: opt.preserveRootOnly ? false : opt.preserveArrays, }); - if(opt.preserveArrays === false && resultArray.length < 1) { - return result; + if (!isArray(cleanItem)) { + if ( + isBlank(cleanItem) || + (typeof cleanItem === 'object' && + Object.keys(cleanItem).length === 0) + ) { + return; + } } - result[key] = resultArray; + //console.info(cleanItem); + resultArray.push(cleanItem); + //resultArray[idx] = cleanItem; + }); + if (opt.preserveArrays === false && resultArray.length < 1) { return result; } - if(isBlank(obj[key])) { - //if(obj[key] === undefined) { - return result; - } + result[key] = resultArray; - if(typeOf(obj[key]) === 'object' || typeOf(obj[key]) === - 'instance') { - let objOpt = { - preserveArrays: opt.preserveArrays && !opt.preserveRootOnly, - target: {} - }; - const res = clean(obj[key], objOpt); - - if(Object.keys(res) - .length > 0) { - result[key] = res; - } - } else if(obj[key] !== '') { - result[key] = obj[key]; + return result; + } + + if (isBlank(obj[key])) { + //if(obj[key] === undefined) { + return result; + } + + if (typeOf(obj[key]) === 'object' || typeOf(obj[key]) === 'instance') { + let objOpt = { + preserveArrays: opt.preserveArrays && !opt.preserveRootOnly, + target: {}, + }; + const res = clean(obj[key], objOpt); + if (Object.keys(res).length > 0) { + result[key] = res; } + } else if (obj[key] !== '') { + result[key] = obj[key]; + } - return result; - }, acc); -} + return result; + }, acc); +}; @classic class _Service extends Service { clean = clean; } -export { - _Service as - default, - clean -}; +export { _Service as default, clean }; diff --git a/app/services/codelist.js b/app/services/codelist.js index 7e8d90689..58fc138ca 100644 --- a/app/services/codelist.js +++ b/app/services/codelist.js @@ -22,19 +22,18 @@ export default class CodelistService extends Service { let codelist = this; //remap codelist names to be more generic - Object.keys(codes) - .forEach(function (key) { - if(key === 'default') { - return; - } + Object.keys(codes).forEach(function (key) { + if (key === 'default') { + return; + } - const list = codes[key]; - const name = key.replace(/^iso_|adiwg_/, ''); + const list = codes[key]; + const name = key.replace(/^iso_|adiwg_/, ''); - codelist[name] = list; - //remove deprecated codes - codelist[name]['codelist'] = list.codelist.rejectBy('deprecated'); - }); + codelist[name] = list; + //remove deprecated codes + codelist[name]['codelist'] = list.codelist.rejectBy('deprecated'); + }); } /** @@ -60,9 +59,9 @@ export default class CodelistService extends Service { return { code: itm.id, codeName: itm.title, - description: itm.description + description: itm.description, }; - }) + }), }; } @@ -78,8 +77,8 @@ export default class CodelistService extends Service { get codeOverrides() { return { scope: { - dataset: "geographicDataset" - } - } + dataset: 'geographicDataset', + }, + }; } } diff --git a/app/services/contacts.js b/app/services/contacts.js index 2e74c1dd8..ce6e27973 100644 --- a/app/services/contacts.js +++ b/app/services/contacts.js @@ -15,26 +15,26 @@ export default Service.extend({ contacts: A(), - organizations: computed('contacts.[]', function() { + organizations: computed('contacts.[]', function () { let orgs = this.contacts.filterBy('json.isOrganization'); return orgs; }), - individuals: computed('contacts.[]', function() { + individuals: computed('contacts.[]', function () { let ind = this.contacts.rejectBy('json.isOrganization'); return ind; }), - organizationsCodes: computed('contactsCodes.[]', function() { - let orgs = this.contactsCodes.filterBy('icon','users'); + organizationsCodes: computed('contactsCodes.[]', function () { + let orgs = this.contactsCodes.filterBy('icon', 'users'); return orgs; }), - individualsCodes: computed('contactsCodes.[]', function() { - let ind = this.contactsCodes.rejectBy('icon','users'); + individualsCodes: computed('contactsCodes.[]', function () { + let ind = this.contactsCodes.rejectBy('icon', 'users'); return ind; }), @@ -47,7 +47,7 @@ export default Service.extend({ * @category computed * @requires mdCodeName */ - contactsCodes: computed('contacts.@each.name', function() { + contactsCodes: computed('contacts.@each.name', function () { //let codeId = this.get('valuePath'); //let codeName = this.get('namePath'); //let tooltip = this.get('tooltipPath'); @@ -56,16 +56,16 @@ export default Service.extend({ let defaultIcon = this.defaultIcon; let mdCodelist = this.contacts.sortBy('title'); - mdCodelist.forEach(function(item) { + mdCodelist.forEach(function (item) { let newObject = EmberObject.create({ codeId: item.get('contactId'), codeName: item.get('title'), tooltip: item.get('combinedName'), - icon: item.get('icon') || icons.get(defaultIcon) + icon: item.get('icon') || icons.get(defaultIcon), }); codelist.pushObject(newObject); }); return codelist; - }) + }), }); diff --git a/app/services/custom-profile.js b/app/services/custom-profile.js index a8eb35d38..46a76aef2 100644 --- a/app/services/custom-profile.js +++ b/app/services/custom-profile.js @@ -15,9 +15,7 @@ import config from 'mdeditor/config/environment'; * @readOnly */ const { - APP: { - defaultProfileId - } + APP: { defaultProfileId }, } = config; /** @@ -81,8 +79,8 @@ export default class CustomProfileService extends Service { id: itm.namespace + '.' + itm.identifier, title: itm.title, description: itm.description, - definition: itm - } + definition: itm, + }; }) coreProfiles; @@ -116,11 +114,11 @@ export default class CustomProfileService extends Service { return this.profiles.reduce(function (map, profile) { let alt = get(profile, 'definition.alternateId'); - if(isEmpty(alt)) { + if (isEmpty(alt)) { return map; } - alt.forEach(a => map[a] = profile.id); + alt.forEach((a) => (map[a] = profile.id)); return map; }, {}); @@ -174,31 +172,33 @@ export default class CustomProfileService extends Service { */ getActiveProfile() { const active = this.active; - const profile = active && typeof active === 'string' ? active : - defaultProfileId; + const profile = + active && typeof active === 'string' ? active : defaultProfileId; const selected = this.mapById[profile]; - if(selected) { + if (selected) { return selected; } const alternate = this.mapById[this.mapByAltId[profile]]; - if(alternate) { - this.flashMessages - .info( - `"${active}" identified as an alternate profile. Using "${alternate.title}" profile. To make this permanent, select "${alternate.title}" from the Profile list.`, { - sticky: true - } - ); + if (alternate) { + this.flashMessages.info( + `"${active}" identified as an alternate profile. Using "${alternate.title}" profile. To make this permanent, select "${alternate.title}" from the Profile list.`, + { + sticky: true, + }, + ); return alternate; } - this.flashMessages - .warning(`Profile "${active}" not found. Using default profile.`, { - sticky: true - }); + this.flashMessages.warning( + `Profile "${active}" not found. Using default profile.`, + { + sticky: true, + }, + ); return this.defaultProfile; } diff --git a/app/services/icon.js b/app/services/icon.js index e0b642d08..01f5dd744 100644 --- a/app/services/icon.js +++ b/app/services/icon.js @@ -12,7 +12,7 @@ export default Service.extend({ metadata: 'file-code-o', initiative: 'checklist', sample: 'flask', - 'document': 'file-o', + document: 'file-o', repository: 'database', aggregate: 'sitemap', collection: 'files-o', @@ -36,5 +36,5 @@ export default Service.extend({ defaultFile: 'file-o', defaultList: 'caret-right', individuals: 'user', - organizations: 'users' + organizations: 'users', }); diff --git a/app/services/itis.js b/app/services/itis.js index 16d498e63..2bc1f9006 100644 --- a/app/services/itis.js +++ b/app/services/itis.js @@ -5,7 +5,7 @@ import titleize from 'ember-cli-string-helpers/utils/titleize'; import { isAjaxError, isNotFoundError, - isForbiddenError + isForbiddenError, } from 'ember-ajax/errors'; //import moment from 'moment'; @@ -22,8 +22,7 @@ class Taxa extends EmberObject { @computed('status') get style() { let status = this.status; - return status === 'valid' || status === 'accepted' ? 'success' : - 'danger'; + return status === 'valid' || status === 'accepted' ? 'success' : 'danger'; } } @@ -33,82 +32,94 @@ export default class ItisService extends Service { super.init(...arguments); this.kingdoms = { - "class": "gov.usgs.itis.itis_service.metadata.SvcKingdomNameList", - "kingdomNames": [{ - "class": "gov.usgs.itis.itis_service.metadata.SvcKingdomName", - "kingdomId": "1", - "kingdomName": "Bacteria", - "title": "Bacteria", - "tsn": "50" - }, { - "class": "gov.usgs.itis.itis_service.metadata.SvcKingdomName", - "kingdomId": "2", - "kingdomName": "Protozoa", - "title": "Protozoa", - "tsn": "630577" - }, { - "class": "gov.usgs.itis.itis_service.metadata.SvcKingdomName", - "kingdomId": "3", - "kingdomName": "Plantae", - "title": "Plant", - "tsn": "202422" - }, { - "class": "gov.usgs.itis.itis_service.metadata.SvcKingdomName", - "kingdomId": "4", - "kingdomName": "Fungi", - "title": "Fungal", - "tsn": "555705" - }, { - "class": "gov.usgs.itis.itis_service.metadata.SvcKingdomName", - "kingdomId": "5", - "kingdomName": "Animalia", - "title": "Animal", - "tsn": "202423" - }, { - "class": "gov.usgs.itis.itis_service.metadata.SvcKingdomName", - "kingdomId": "6", - "kingdomName": "Chromista", - "title": "Chromista", - "tsn": "630578" - }, { - "class": "gov.usgs.itis.itis_service.metadata.SvcKingdomName", - "kingdomId": "7", - "kingdomName": "Archaea", - "title": "Archaea", - "tsn": "935939" - }] - } + class: 'gov.usgs.itis.itis_service.metadata.SvcKingdomNameList', + kingdomNames: [ + { + class: 'gov.usgs.itis.itis_service.metadata.SvcKingdomName', + kingdomId: '1', + kingdomName: 'Bacteria', + title: 'Bacteria', + tsn: '50', + }, + { + class: 'gov.usgs.itis.itis_service.metadata.SvcKingdomName', + kingdomId: '2', + kingdomName: 'Protozoa', + title: 'Protozoa', + tsn: '630577', + }, + { + class: 'gov.usgs.itis.itis_service.metadata.SvcKingdomName', + kingdomId: '3', + kingdomName: 'Plantae', + title: 'Plant', + tsn: '202422', + }, + { + class: 'gov.usgs.itis.itis_service.metadata.SvcKingdomName', + kingdomId: '4', + kingdomName: 'Fungi', + title: 'Fungal', + tsn: '555705', + }, + { + class: 'gov.usgs.itis.itis_service.metadata.SvcKingdomName', + kingdomId: '5', + kingdomName: 'Animalia', + title: 'Animal', + tsn: '202423', + }, + { + class: 'gov.usgs.itis.itis_service.metadata.SvcKingdomName', + kingdomId: '6', + kingdomName: 'Chromista', + title: 'Chromista', + tsn: '630578', + }, + { + class: 'gov.usgs.itis.itis_service.metadata.SvcKingdomName', + kingdomId: '7', + kingdomName: 'Archaea', + title: 'Archaea', + tsn: '935939', + }, + ], + }; this.citation = EmberObject.create({ - "title": "Integrated Taxonomic Information System (ITIS)", - "date": [ + title: 'Integrated Taxonomic Information System (ITIS)', + date: [ /*{ "date": moment().format('YYYY-MM-DD'), "dateType": "transmitted" }*/ ], - "presentationForm": [ - "webService", - "webSite" + presentationForm: ['webService', 'webSite'], + otherCitationDetails: [ + 'Retrieved from the Integrated Taxonomic Information System on-line database, https://www.itis.gov.', + ], + onlineResource: [ + { + uri: 'https://www.itis.gov', + name: 'ITIS website', + protocol: 'HTTPS', + function: 'information', + description: + 'ITIS contains taxonomic information on plants, animals, fungi, and microbes of North America and the world.', + }, ], - "otherCitationDetails": [ - "Retrieved from the Integrated Taxonomic Information System on-line database, https://www.itis.gov." + graphic: [ + { + fileName: 'itis_logo.jpg', + fileType: 'JPEG', + fileUri: [ + { + uri: 'https://itis.gov/Static/images/itis_logo.jpg', + }, + ], + }, ], - "onlineResource": [{ - "uri": "https://www.itis.gov", - "name": "ITIS website", - "protocol": "HTTPS", - "function": "information", - "description": "ITIS contains taxonomic information on plants, animals, fungi, and microbes of North America and the world." - }], - "graphic": [{ - "fileName": "itis_logo.jpg", - "fileType": "JPEG", - "fileUri": [{ - "uri": "https://itis.gov/Static/images/itis_logo.jpg" - }] - }] - }) + }); } @service @@ -124,51 +135,57 @@ export default class ItisService extends Service { sendQuery(searchString, kingdom, limit = 50) { const formatted = searchString.replace(/(-| )/g, '*'); - const titleized = titleize(searchString.replace(/(-)/g, '#')).replace(/( |#)/g, '*'); + const titleized = titleize(searchString.replace(/(-)/g, '#')).replace( + /( |#)/g, + '*', + ); const titleized2 = titleize(searchString).replace(/( )/g, '*'); const mdTranslatorApiUrl = this.settings.data.get('itisProxyUrl'); - const url = mdTranslatorApiUrl + proxy + + const url = + mdTranslatorApiUrl + + proxy + `&rows=${limit}&q=` + `(vernacular:*${formatted}*~0.5%20OR%20vernacular:*${titleized}*~0.5%20OR%20vernacular:*${titleized2}*~0.5` + `%20OR%20nameWOInd:${formatted}*~0.5%20OR%20nameWOInd:*${titleized}*~0.5` + `%20OR%20tsn:${formatted})` + (kingdom ? `%20AND%20kingdom:${kingdom}&` : ''); - return this.ajax.request( - url, { - method: 'GET' - }).catch(error => { - if(isNotFoundError(error)) { - // handle 404 errors here - console.log(error); - this.flashMessages - .warning('No taxa object found.'); - return; - } + return this.ajax + .request(url, { + method: 'GET', + }) + .catch((error) => { + if (isNotFoundError(error)) { + // handle 404 errors here + console.log(error); + this.flashMessages.warning('No taxa object found.'); + return; + } - if(isForbiddenError(error)) { - // handle 403 errors here - console.log(error); - this.flashMessages - .danger('Access to ITIS web service was denied.'); - return; - } + if (isForbiddenError(error)) { + // handle 403 errors here + console.log(error); + this.flashMessages.danger('Access to ITIS web service was denied.'); + return; + } - if(isAjaxError(error)) { - // handle all other AjaxErrors here - console.log(error); - this.flashMessages - .danger('An error occured during the ITIS query request.'); - return; - } + if (isAjaxError(error)) { + // handle all other AjaxErrors here + console.log(error); + this.flashMessages.danger( + 'An error occured during the ITIS query request.', + ); + return; + } - // other errors are handled elsewhere - //throw error; - console.log(error); - this.flashMessages - .danger('An error occured during the ITIS query request.'); - }); + // other errors are handled elsewhere + //throw error; + console.log(error); + this.flashMessages.danger( + 'An error occured during the ITIS query request.', + ); + }); } parseDoc(doc) { @@ -180,17 +197,19 @@ export default class ItisService extends Service { rank, tsn, vernacular, - usage: status + usage: status, } = doc; - const taxonomy = this.parseRanks(ranks, this.parseHierarchyTSN( - hierarchyTSN)); - const common = this.parseVernacular(vernacular); - - if(common) { - taxonomy.forEach(i => { + const taxonomy = this.parseRanks( + ranks, + this.parseHierarchyTSN(hierarchyTSN), + ); + const common = this.parseVernacular(vernacular); + + if (common) { + taxonomy.forEach((i) => { const taxa = i.findBy('tsn', tsn); - if(taxa) { + if (taxa) { set(taxa, 'common', common.mapBy('name')); } }); @@ -203,16 +222,16 @@ export default class ItisService extends Service { tsn: tsn, taxonomy: taxonomy, common: common, - status: status + status: status, }); } parseHierarchyTSN(tsn) { - return tsn.map(t => t.slice(1, t.length - 1).split('$')); + return tsn.map((t) => t.slice(1, t.length - 1).split('$')); } parseVernacular(vernacular) { - if(!vernacular) { + if (!vernacular) { return null; } @@ -221,7 +240,7 @@ export default class ItisService extends Service { return { name: v[0], - language: v[1] + language: v[1], }; }); } @@ -241,24 +260,25 @@ export default class ItisService extends Service { rank: rank[0], value: rank[1], order: idx, - tsn: tsnArray[idx] + tsn: tsnArray[idx], }; }); }); } getBranch(taxon, branches) { - let branch = branches.filterBy('taxonomicLevel', taxon.rank).findBy( - 'taxonomicName', taxon.value); + let branch = branches + .filterBy('taxonomicLevel', taxon.rank) + .findBy('taxonomicName', taxon.value); - if(!branch) { + if (!branch) { return branches.pushObject({ - "taxonomicSystemId": taxon.tsn, - "taxonomicLevel": taxon.rank, - "taxonomicName": taxon.value, - "commonName": taxon.common, - "subClassification": [], - "isITIS": true + taxonomicSystemId: taxon.tsn, + taxonomicLevel: taxon.rank, + taxonomicName: taxon.value, + commonName: taxon.common, + subClassification: [], + isITIS: true, }); } @@ -270,7 +290,7 @@ export default class ItisService extends Service { let branch = this.getBranch(taxon, tree); let sub = get(branch, 'subClassification'); - if(!sub) { + if (!sub) { set(branch, 'subClassification', []); } diff --git a/app/services/jsonvalidator.js b/app/services/jsonvalidator.js index c74f96512..23c291ccf 100644 --- a/app/services/jsonvalidator.js +++ b/app/services/jsonvalidator.js @@ -8,370 +8,413 @@ let validator = new Ajv({ allErrors: true, removeAdditional: false, meta: false, - schemaId: 'id' + schemaId: 'id', }); //support draft-04 validator.addMetaSchema(draft4); //add JSON API schema -validator.addSchema({ - "$schema": "http://json-schema.org/draft-04/schema#", - "title": "JSON API Schema", - "description": "This is a schema for responses in the JSON API format. For more, see http://jsonapi.org", - "oneOf": [{ - "$ref": "#/definitions/success" - }, { - "$ref": "#/definitions/failure" - }, { - "$ref": "#/definitions/info" - }], +validator.addSchema( + { + $schema: 'http://json-schema.org/draft-04/schema#', + title: 'JSON API Schema', + description: + 'This is a schema for responses in the JSON API format. For more, see http://jsonapi.org', + oneOf: [ + { + $ref: '#/definitions/success', + }, + { + $ref: '#/definitions/failure', + }, + { + $ref: '#/definitions/info', + }, + ], - "definitions": { - "success": { - "type": "object", - "required": [ - "data" - ], - "properties": { - "data": { - "$ref": "#/definitions/data" - }, - "included": { - "description": "To reduce the number of HTTP requests, servers **MAY** allow responses that include related resources along with the requested primary resources. Such responses are called \"compound documents\".", - "type": "array", - "items": { - "$ref": "#/definitions/resource" + definitions: { + success: { + type: 'object', + required: ['data'], + properties: { + data: { + $ref: '#/definitions/data', + }, + included: { + description: + 'To reduce the number of HTTP requests, servers **MAY** allow responses that include related resources along with the requested primary resources. Such responses are called "compound documents".', + type: 'array', + items: { + $ref: '#/definitions/resource', + }, + uniqueItems: true, + }, + meta: { + $ref: '#/definitions/meta', + }, + links: { + description: 'Link members related to the primary data.', + allOf: [ + { + $ref: '#/definitions/links', + }, + { + $ref: '#/definitions/pagination', + }, + ], + }, + jsonapi: { + $ref: '#/definitions/jsonapi', }, - "uniqueItems": true - }, - "meta": { - "$ref": "#/definitions/meta" - }, - "links": { - "description": "Link members related to the primary data.", - "allOf": [{ - "$ref": "#/definitions/links" - }, { - "$ref": "#/definitions/pagination" - }] }, - "jsonapi": { - "$ref": "#/definitions/jsonapi" - } + additionalProperties: false, }, - "additionalProperties": false - }, - "failure": { - "type": "object", - "required": [ - "errors" - ], - "properties": { - "errors": { - "type": "array", - "items": { - "$ref": "#/definitions/error" - }, - "uniqueItems": true - }, - "meta": { - "$ref": "#/definitions/meta" + failure: { + type: 'object', + required: ['errors'], + properties: { + errors: { + type: 'array', + items: { + $ref: '#/definitions/error', + }, + uniqueItems: true, + }, + meta: { + $ref: '#/definitions/meta', + }, + jsonapi: { + $ref: '#/definitions/jsonapi', + }, }, - "jsonapi": { - "$ref": "#/definitions/jsonapi" - } + additionalProperties: false, }, - "additionalProperties": false - }, - "info": { - "type": "object", - "required": [ - "meta" - ], - "properties": { - "meta": { - "$ref": "#/definitions/meta" - }, - "links": { - "$ref": "#/definitions/links" + info: { + type: 'object', + required: ['meta'], + properties: { + meta: { + $ref: '#/definitions/meta', + }, + links: { + $ref: '#/definitions/links', + }, + jsonapi: { + $ref: '#/definitions/jsonapi', + }, }, - "jsonapi": { - "$ref": "#/definitions/jsonapi" - } + additionalProperties: false, }, - "additionalProperties": false - }, - "meta": { - "description": "Non-standard meta-information that can not be represented as an attribute or relationship.", - "type": "object", - "additionalProperties": true - }, - "data": { - "description": "The document's \"primary data\" is a representation of the resource or collection of resources targeted by a request.", - "oneOf": [{ - "$ref": "#/definitions/resource" - }, { - "description": "An array of resource objects, an array of resource identifier objects, or an empty array ([]), for requests that target resource collections.", - "type": "array", - "items": { - "$ref": "#/definitions/resource" - }, - "uniqueItems": true - }, { - "description": "null if the request is one that might correspond to a single resource, but doesn't currently.", - "type": "null" - }] - }, - "resource": { - "description": "\"Resource objects\" appear in a JSON API document to represent resources.", - "type": "object", - "required": [ - "type", - "id" - ], - "properties": { - "type": { - "type": "string" - }, - "id": { - "type": "string" - }, - "attributes": { - "$ref": "#/definitions/attributes" - }, - "relationships": { - "$ref": "#/definitions/relationships" - }, - "links": { - "$ref": "#/definitions/links" + meta: { + description: + 'Non-standard meta-information that can not be represented as an attribute or relationship.', + type: 'object', + additionalProperties: true, + }, + data: { + description: + 'The document\'s "primary data" is a representation of the resource or collection of resources targeted by a request.', + oneOf: [ + { + $ref: '#/definitions/resource', + }, + { + description: + 'An array of resource objects, an array of resource identifier objects, or an empty array ([]), for requests that target resource collections.', + type: 'array', + items: { + $ref: '#/definitions/resource', + }, + uniqueItems: true, + }, + { + description: + "null if the request is one that might correspond to a single resource, but doesn't currently.", + type: 'null', + }, + ], + }, + resource: { + description: + '"Resource objects" appear in a JSON API document to represent resources.', + type: 'object', + required: ['type', 'id'], + properties: { + type: { + type: 'string', + }, + id: { + type: 'string', + }, + attributes: { + $ref: '#/definitions/attributes', + }, + relationships: { + $ref: '#/definitions/relationships', + }, + links: { + $ref: '#/definitions/links', + }, + meta: { + $ref: '#/definitions/meta', + }, }, - "meta": { - "$ref": "#/definitions/meta" - } + additionalProperties: false, }, - "additionalProperties": false - }, - "links": { - "description": "A resource object **MAY** contain references to other resource objects (\"relationships\"). Relationships may be to-one or to-many. Relationships can be specified by including a member in a resource's links object.", - "type": "object", - "properties": { - "self": { - "description": "A `self` member, whose value is a URL for the relationship itself (a \"relationship URL\"). This URL allows the client to directly manipulate the relationship. For example, it would allow a client to remove an `author` from an `article` without deleting the people resource itself.", - "type": "string", - "format": "uri" + links: { + description: + 'A resource object **MAY** contain references to other resource objects ("relationships"). Relationships may be to-one or to-many. Relationships can be specified by including a member in a resource\'s links object.', + type: 'object', + properties: { + self: { + description: + 'A `self` member, whose value is a URL for the relationship itself (a "relationship URL"). This URL allows the client to directly manipulate the relationship. For example, it would allow a client to remove an `author` from an `article` without deleting the people resource itself.', + type: 'string', + format: 'uri', + }, + related: { + $ref: '#/definitions/link', + }, }, - "related": { - "$ref": "#/definitions/link" - } + additionalProperties: true, }, - "additionalProperties": true - }, - "link": { - "description": "A link **MUST** be represented as either: a string containing the link's URL or a link object.", - "oneOf": [{ - "description": "A string containing the link's URL.", - "type": "string", - "format": "uri" - }, { - "type": "object", - "required": [ - "href" + link: { + description: + "A link **MUST** be represented as either: a string containing the link's URL or a link object.", + oneOf: [ + { + description: "A string containing the link's URL.", + type: 'string', + format: 'uri', + }, + { + type: 'object', + required: ['href'], + properties: { + href: { + description: "A string containing the link's URL.", + type: 'string', + format: 'uri', + }, + meta: { + $ref: '#/definitions/meta', + }, + }, + }, ], - "properties": { - "href": { - "description": "A string containing the link's URL.", - "type": "string", - "format": "uri" - }, - "meta": { - "$ref": "#/definitions/meta" - } - } - }] - }, + }, - "attributes": { - "description": "Members of the attributes object (\"attributes\") represent information about the resource object in which it's defined.", - "type": "object", - "patternProperties": { - "^(?!relationships$|links$)\\w[-\\w_]*$": { - "description": "Attributes may contain any valid JSON value." - } + attributes: { + description: + 'Members of the attributes object ("attributes") represent information about the resource object in which it\'s defined.', + type: 'object', + patternProperties: { + '^(?!relationships$|links$)\\w[-\\w_]*$': { + description: 'Attributes may contain any valid JSON value.', + }, + }, + additionalProperties: false, }, - "additionalProperties": false - }, - "relationships": { - "description": "Members of the relationships object (\"relationships\") represent references from the resource object in which it's defined to other resource objects.", - "type": "object", - "patternProperties": { - "^\\w[-\\w_]*$": { - "properties": { - "links": { - "$ref": "#/definitions/links" - }, - "data": { - "description": "Member, whose value represents \"resource linkage\".", - "oneOf": [{ - "$ref": "#/definitions/relationshipToOne" - }, { - "$ref": "#/definitions/relationshipToMany" - }] + relationships: { + description: + 'Members of the relationships object ("relationships") represent references from the resource object in which it\'s defined to other resource objects.', + type: 'object', + patternProperties: { + '^\\w[-\\w_]*$': { + properties: { + links: { + $ref: '#/definitions/links', + }, + data: { + description: + 'Member, whose value represents "resource linkage".', + oneOf: [ + { + $ref: '#/definitions/relationshipToOne', + }, + { + $ref: '#/definitions/relationshipToMany', + }, + ], + }, + meta: { + $ref: '#/definitions/meta', + }, }, - "meta": { - "$ref": "#/definitions/meta" - } + additionalProperties: false, }, - "additionalProperties": false - } + }, + additionalProperties: false, }, - "additionalProperties": false - }, - "relationshipToOne": { - "description": "References to other resource objects in a to-one (\"relationship\"). Relationships can be specified by including a member in a resource's links object.", - "anyOf": [{ - "$ref": "#/definitions/empty" - }, { - "$ref": "#/definitions/linkage" - }] - }, - "relationshipToMany": { - "description": "An array of objects each containing \"type\" and \"id\" members for to-many relationships.", - "type": "array", - "items": { - "$ref": "#/definitions/linkage" + relationshipToOne: { + description: + 'References to other resource objects in a to-one ("relationship"). Relationships can be specified by including a member in a resource\'s links object.', + anyOf: [ + { + $ref: '#/definitions/empty', + }, + { + $ref: '#/definitions/linkage', + }, + ], }, - "uniqueItems": true - }, - "empty": { - "description": "Describes an empty to-one relationship.", - "type": "null" - }, - "linkage": { - "description": "The \"type\" and \"id\" to non-empty members.", - "type": "object", - "required": [ - "type", - "id" - ], - "properties": { - "type": { - "type": "string" - }, - "id": { - "type": "string" + relationshipToMany: { + description: + 'An array of objects each containing "type" and "id" members for to-many relationships.', + type: 'array', + items: { + $ref: '#/definitions/linkage', }, - "meta": { - "$ref": "#/definitions/meta" - } + uniqueItems: true, }, - "additionalProperties": false - }, - "pagination": { - "type": "object", - "properties": { - "first": { - "description": "The first page of data", - "oneOf": [{ - "type": "string", - "format": "uri" - }, { - "type": "null" - }] - }, - "last": { - "description": "The last page of data", - "oneOf": [{ - "type": "string", - "format": "uri" - }, { - "type": "null" - }] + empty: { + description: 'Describes an empty to-one relationship.', + type: 'null', + }, + linkage: { + description: 'The "type" and "id" to non-empty members.', + type: 'object', + required: ['type', 'id'], + properties: { + type: { + type: 'string', + }, + id: { + type: 'string', + }, + meta: { + $ref: '#/definitions/meta', + }, }, - "prev": { - "description": "The previous page of data", - "oneOf": [{ - "type": "string", - "format": "uri" - }, { - "type": "null" - }] + additionalProperties: false, + }, + pagination: { + type: 'object', + properties: { + first: { + description: 'The first page of data', + oneOf: [ + { + type: 'string', + format: 'uri', + }, + { + type: 'null', + }, + ], + }, + last: { + description: 'The last page of data', + oneOf: [ + { + type: 'string', + format: 'uri', + }, + { + type: 'null', + }, + ], + }, + prev: { + description: 'The previous page of data', + oneOf: [ + { + type: 'string', + format: 'uri', + }, + { + type: 'null', + }, + ], + }, + next: { + description: 'The next page of data', + oneOf: [ + { + type: 'string', + format: 'uri', + }, + { + type: 'null', + }, + ], + }, }, - "next": { - "description": "The next page of data", - "oneOf": [{ - "type": "string", - "format": "uri" - }, { - "type": "null" - }] - } - } - }, + }, - "jsonapi": { - "description": "An object describing the server's implementation", - "type": "object", - "properties": { - "version": { - "type": "string" + jsonapi: { + description: "An object describing the server's implementation", + type: 'object', + properties: { + version: { + type: 'string', + }, + meta: { + $ref: '#/definitions/meta', + }, }, - "meta": { - "$ref": "#/definitions/meta" - } + additionalProperties: false, }, - "additionalProperties": false - }, - "error": { - "type": "object", - "properties": { - "id": { - "description": "A unique identifier for this particular occurrence of the problem.", - "type": "string" - }, - "links": { - "$ref": "#/definitions/links" - }, - "status": { - "description": "The HTTP status code applicable to this problem, expressed as a string value.", - "type": "string" - }, - "code": { - "description": "An application-specific error code, expressed as a string value.", - "type": "string" - }, - "title": { - "description": "A short, human-readable summary of the problem. It **SHOULD NOT** change from occurrence to occurrence of the problem, except for purposes of localization.", - "type": "string" - }, - "detail": { - "description": "A human-readable explanation specific to this occurrence of the problem.", - "type": "string" - }, - "source": { - "type": "object", - "properties": { - "pointer": { - "description": "A JSON Pointer [RFC6901] to the associated entity in the request document [e.g. \"/data\" for a primary data object, or \"/data/attributes/title\" for a specific attribute].", - "type": "string" + error: { + type: 'object', + properties: { + id: { + description: + 'A unique identifier for this particular occurrence of the problem.', + type: 'string', + }, + links: { + $ref: '#/definitions/links', + }, + status: { + description: + 'The HTTP status code applicable to this problem, expressed as a string value.', + type: 'string', + }, + code: { + description: + 'An application-specific error code, expressed as a string value.', + type: 'string', + }, + title: { + description: + 'A short, human-readable summary of the problem. It **SHOULD NOT** change from occurrence to occurrence of the problem, except for purposes of localization.', + type: 'string', + }, + detail: { + description: + 'A human-readable explanation specific to this occurrence of the problem.', + type: 'string', + }, + source: { + type: 'object', + properties: { + pointer: { + description: + 'A JSON Pointer [RFC6901] to the associated entity in the request document [e.g. "/data" for a primary data object, or "/data/attributes/title" for a specific attribute].', + type: 'string', + }, + parameter: { + description: + 'A string indicating which query parameter caused the error.', + type: 'string', + }, }, - "parameter": { - "description": "A string indicating which query parameter caused the error.", - "type": "string" - } - } + }, + meta: { + $ref: '#/definitions/meta', + }, }, - "meta": { - "$ref": "#/definitions/meta" - } + additionalProperties: false, }, - "additionalProperties": false - } - } -}, 'jsonapi'); + }, + }, + 'jsonapi', +); @classic export default class JsonvalidatorService extends Service { diff --git a/app/services/keycloak.js b/app/services/keycloak.js index fdf4f13c4..0f0ba9358 100644 --- a/app/services/keycloak.js +++ b/app/services/keycloak.js @@ -1,8 +1,8 @@ -import Service from "@ember/service"; -import Keycloak from "keycloak-js"; -import { action, set } from "@ember/object"; -import { tracked } from "@glimmer/tracking"; -import ENV from "mdeditor/config/environment"; +import Service from '@ember/service'; +import Keycloak from 'keycloak-js'; +import { action, set } from '@ember/object'; +import { tracked } from '@glimmer/tracking'; +import ENV from 'mdeditor/config/environment'; export default class KeycloakService extends Service { keycloak = null; @@ -23,21 +23,21 @@ export default class KeycloakService extends Service { } try { await this.keycloak.init({ - onLoad: "check-sso", - flow: "standard", - pkceMethod: "S256", + onLoad: 'check-sso', + flow: 'standard', + pkceMethod: 'S256', checkLoginIframe: false, tokenMinValidity: 30, }); - set(this, "isInitialized", true); + set(this, 'isInitialized', true); if (this.keycloak.authenticated) { - set(this, "isAuthenticated", true); + set(this, 'isAuthenticated', true); const profile = await this.keycloak.loadUserProfile(); const profileUser = profile.username; - set(this, "username", profileUser); + set(this, 'username', profileUser); } } catch (error) { - console.error("Error initializing Keycloak:", error); + console.error('Error initializing Keycloak:', error); } } @@ -46,7 +46,7 @@ export default class KeycloakService extends Service { if (this.isLoggingIn) { return; } - set(this, "isLoggingIn", true); + set(this, 'isLoggingIn', true); return this.keycloak.login(); } } diff --git a/app/services/keyword.js b/app/services/keyword.js index 96d84ce93..70ec9e054 100644 --- a/app/services/keyword.js +++ b/app/services/keyword.js @@ -9,10 +9,9 @@ import ENV from 'mdeditor/config/environment'; let service = EmberObject.create({ thesaurus: A(), findById(id) { - return this.thesaurus - .find(function(t) { - return t.citation.identifier[0].identifier === id; - }); + return this.thesaurus.find(function (t) { + return t.citation.identifier[0].identifier === id; + }); }, loadVocabularies() { if (ENV.vocabulariesUrl) { @@ -22,39 +21,42 @@ let service = EmberObject.create({ }); }); } - } + }, }); - let isoKeywords = ISO.codelist.map((topic) => { return { label: topic.codeName, definition: topic.description, - uuid: topic.code + uuid: topic.code, }; - }); -service.get('thesaurus') - .pushObject({ - citation: { - date: [{ +service.get('thesaurus').pushObject({ + citation: { + date: [ + { date: '2014-04', - dateType: 'revision' - }], - title: 'ISO 19115 Topic Category', - edition: 'ISO 19115-1:2014', - onlineResource: [{ - uri: 'https://doi.org/10.18123/D6RP4M' - }], - identifier: [{ - identifier: 'ISO 19115 Topic Category' - }] - }, - keywords: isoKeywords, - keywordType: 'isoTopicCategory', - label: 'ISO Topic Category' - }); + dateType: 'revision', + }, + ], + title: 'ISO 19115 Topic Category', + edition: 'ISO 19115-1:2014', + onlineResource: [ + { + uri: 'https://doi.org/10.18123/D6RP4M', + }, + ], + identifier: [ + { + identifier: 'ISO 19115 Topic Category', + }, + ], + }, + keywords: isoKeywords, + keywordType: 'isoTopicCategory', + label: 'ISO Topic Category', +}); @classic export default class KeywordService extends Service.extend(service) {} diff --git a/app/services/mdjson.js b/app/services/mdjson.js index a6eb0371b..8073ca280 100644 --- a/app/services/mdjson.js +++ b/app/services/mdjson.js @@ -68,10 +68,23 @@ export default class MdjsonService extends Service { let info = get(record, 'json.metadata.metadataInfo') || {}; let metadata = { title: `Metadata for ${get(record, 'title')}`, - responsibleParty: get(info, 'metadataContact') !== undefined ? get(info, 'metadataContact') : [], - date: get(info, 'metadataDate') !== undefined ? get(info, 'metadataDate') : [], - onlineResource: get(info, 'metadataOnlineResource') !== undefined ? get(info, 'metadataOnlineResource') : [], - identifier: [get(info, 'metadataIdentifier') !== undefined ? get(info, 'metadataIdentifier') : {}], + responsibleParty: + get(info, 'metadataContact') !== undefined + ? get(info, 'metadataContact') + : [], + date: + get(info, 'metadataDate') !== undefined + ? get(info, 'metadataDate') + : [], + onlineResource: + get(info, 'metadataOnlineResource') !== undefined + ? get(info, 'metadataOnlineResource') + : [], + identifier: [ + get(info, 'metadataIdentifier') !== undefined + ? get(info, 'metadataIdentifier') + : {}, + ], }; let citation = @@ -82,12 +95,12 @@ export default class MdjsonService extends Service { set( ref, 'resourceCitation', - EmberObject.create(formatCitation(citation)) + EmberObject.create(formatCitation(citation)), ); set( ref, 'metadataCitation', - EmberObject.create(formatCitation(metadata)) + EmberObject.create(formatCitation(metadata)), ); set(ref, 'resourceType', resourceType); set(ref, 'mdRecordId', null); @@ -224,7 +237,7 @@ export default class MdjsonService extends Service { validateDictionary(dictionary) { validator.validate( 'dataDictionary', - dictionary.get('cleanJson').dataDictionary + dictionary.get('cleanJson').dataDictionary, ); return validator; diff --git a/app/services/patch.js b/app/services/patch.js index f4b19bc0e..83f0e4498 100644 --- a/app/services/patch.js +++ b/app/services/patch.js @@ -1,10 +1,7 @@ import classic from 'ember-classic-decorator'; import Service from '@ember/service'; import { get, set, setProperties } from '@ember/object'; -import { - isArray, - A -} from '@ember/array'; +import { isArray, A } from '@ember/array'; import Schemas from 'mdjson-schemas/resources/js/schemas'; @classic @@ -12,41 +9,47 @@ export default class PatchService extends Service { applyModelPatch(record) { let type = record.constructor.modelName; - switch(type) { - case 'contact': - record.get('json.address') - .forEach(itm => { + switch (type) { + case 'contact': + record.get('json.address').forEach((itm) => { let oldAdm = get(itm, 'adminstrativeArea'); - if(oldAdm) { + if (oldAdm) { set(itm, 'administrativeArea', oldAdm); set(itm, 'adminstrativeArea', null); } }); - record.set('json.memberOfOrganization', A(record.get( - 'json.memberOfOrganization')).uniq()); + record.set( + 'json.memberOfOrganization', + A(record.get('json.memberOfOrganization')).uniq(), + ); - if(record.get('json.externalIdentifier') == null) { - record.set('json.externalIdentifier', A()); - } - record.save().then(function () { - record.notifyPropertyChange('currentHash'); - }); + if (record.get('json.externalIdentifier') == null) { + record.set('json.externalIdentifier', A()); + } + record.save().then(function () { + record.notifyPropertyChange('currentHash'); + }); - break; - case 'record': - { + break; + case 'record': { //fix lineage let lineage = record.get('json.metadata.resourceLineage'); - if(isArray(lineage)) { - lineage.forEach(itm => { + if (isArray(lineage)) { + lineage.forEach((itm) => { let source = get(itm, 'source'); - if(isArray(source)) { - source.forEach(src => { - set(src, 'description', get(src, 'description') !== undefined ? get(src, 'description') : get(src, 'value')); + if (isArray(source)) { + source.forEach((src) => { + set( + src, + 'description', + get(src, 'description') !== undefined + ? get(src, 'description') + : get(src, 'value'), + ); set(src, 'value', null); }); record.save().then(function () { @@ -56,13 +59,19 @@ export default class PatchService extends Service { let step = get(itm, 'processStep'); - if(isArray(step)) { - step.forEach(step => { + if (isArray(step)) { + step.forEach((step) => { let source = get(step, 'stepSource'); - if(isArray(source)) { - source.forEach(src => { - set(src, 'description', get(src, 'description') !== undefined ? get(src, 'description') : get(src, 'value')); + if (isArray(source)) { + source.forEach((src) => { + set( + src, + 'description', + get(src, 'description') !== undefined + ? get(src, 'description') + : get(src, 'value'), + ); set(src, 'value', null); }); record.save().then(function () { @@ -76,22 +85,23 @@ export default class PatchService extends Service { //fix taxonomy let taxonomy = record.get('json.metadata.resourceInfo.taxonomy'); - if(taxonomy) { - if(!isArray(taxonomy)) { + if (taxonomy) { + if (!isArray(taxonomy)) { taxonomy = [taxonomy]; record.set('json.metadata.resourceInfo.taxonomy', taxonomy); } - taxonomy.forEach(itm => { + taxonomy.forEach((itm) => { let classification = get(itm, 'taxonomicClassification'); - if(classification && !isArray(classification)) { + if (classification && !isArray(classification)) { let fixNames = (taxon) => { taxon.taxonomicName = taxon.taxonomicName || taxon.latinName; - taxon.taxonomicLevel = taxon.taxonomicLevel || taxon.taxonomicRank; + taxon.taxonomicLevel = + taxon.taxonomicLevel || taxon.taxonomicRank; - if(isArray(taxon.subClassification)) { - taxon.subClassification.forEach(t => fixNames(t)); + if (isArray(taxon.subClassification)) { + taxon.subClassification.forEach((t) => fixNames(t)); } }; @@ -100,12 +110,12 @@ export default class PatchService extends Service { let refs = get(itm, 'identificationReference'); - if(isArray(refs)) { + if (isArray(refs)) { let fixedRefs = []; - refs.forEach(ref => { + refs.forEach((ref) => { fixedRefs.pushObject({ - "identifier": [ref] + identifier: [ref], }); }); set(itm, 'identificationReference', fixedRefs); @@ -116,60 +126,55 @@ export default class PatchService extends Service { //fix srs identifiers let srs = record.get( - 'json.metadata.resourceInfo.spatialReferenceSystem'); - - if(srs) { - srs.forEach(itm => { - let projObj = get(itm, - 'referenceSystemParameterSet.projection'); - let geoObj = get(itm, - 'referenceSystemParameterSet.geodetic'); - let vertObj = get(itm, - 'referenceSystemParameterSet.verticalDatum'); - - if(projObj) { - let { - projection, - projectionName, - projectionIdentifier - } = projObj; - - if(!projectionIdentifier || projection) { + 'json.metadata.resourceInfo.spatialReferenceSystem', + ); + + if (srs) { + srs.forEach((itm) => { + let projObj = get(itm, 'referenceSystemParameterSet.projection'); + let geoObj = get(itm, 'referenceSystemParameterSet.geodetic'); + let vertObj = get(itm, 'referenceSystemParameterSet.verticalDatum'); + + if (projObj) { + let { projection, projectionName, projectionIdentifier } = + projObj; + + if (!projectionIdentifier || projection) { set(projObj, 'projectionIdentifier', { identifier: projection, - name: projectionName + name: projectionName, }); setProperties(projObj, { projection: null, - projectionName: null + projectionName: null, }); } } - if(geoObj && (geoObj.datumName || geoObj.ellipsoidName)) { - if(geoObj.datumName) { - set(geoObj,'datumIdentifier', { - identifier: geoObj.datumName + if (geoObj && (geoObj.datumName || geoObj.ellipsoidName)) { + if (geoObj.datumName) { + set(geoObj, 'datumIdentifier', { + identifier: geoObj.datumName, }); } - if(geoObj.ellipsoidName) { - set(geoObj,'ellipsoidIdentifier', { - identifier: geoObj.ellipsoidName + if (geoObj.ellipsoidName) { + set(geoObj, 'ellipsoidIdentifier', { + identifier: geoObj.ellipsoidName, }); } setProperties(geoObj, { datumName: null, - ellipsoidName: null + ellipsoidName: null, }); } - if(vertObj && vertObj.datumName) { - if(vertObj.datumName) { - set(vertObj,'datumIdentifier', { - identifier: vertObj.datumName + if (vertObj && vertObj.datumName) { + if (vertObj.datumName) { + set(vertObj, 'datumIdentifier', { + identifier: vertObj.datumName, }); } @@ -179,26 +184,34 @@ export default class PatchService extends Service { } //fix transfer format edition - let distribution = record.get( - 'json.metadata.resourceDistribution'); - - if(distribution) { - distribution.forEach(itm => { - if(itm.distributor) { - itm.distributor.forEach(itm => { - if(itm.transferOption) { - itm.transferOption.forEach(itm => { - if(itm.distributionFormat) { - itm.distributionFormat.forEach(format => { - if(format.amendmentNumber && format.formatSpecification && - !format.formatSpecification.edition) { - set(format, 'formatSpecification.edition', - format.amendmentNumber); + let distribution = record.get('json.metadata.resourceDistribution'); + + if (distribution) { + distribution.forEach((itm) => { + if (itm.distributor) { + itm.distributor.forEach((itm) => { + if (itm.transferOption) { + itm.transferOption.forEach((itm) => { + if (itm.distributionFormat) { + itm.distributionFormat.forEach((format) => { + if ( + format.amendmentNumber && + format.formatSpecification && + !format.formatSpecification.edition + ) { + set( + format, + 'formatSpecification.edition', + format.amendmentNumber, + ); return; } - if(format.amendmentNumber && !format.formatSpecification) { + if ( + format.amendmentNumber && + !format.formatSpecification + ) { set(format, 'formatSpecification', { - edition: format.amendmentNumber + edition: format.amendmentNumber, }); return; } @@ -212,14 +225,13 @@ export default class PatchService extends Service { } //fix allocation comment - let funding = record.get( - 'json.metadata.funding'); - - if(funding) { - funding.forEach(itm => { - if(itm.allocation) { - itm.allocation.forEach(itm => { - if(itm.description && !itm.comment) { + let funding = record.get('json.metadata.funding'); + + if (funding) { + funding.forEach((itm) => { + if (itm.allocation) { + itm.allocation.forEach((itm) => { + if (itm.description && !itm.comment) { set(itm, 'comment', itm.description); set(itm, 'description', null); } @@ -231,12 +243,18 @@ export default class PatchService extends Service { //fix metadataRepository title let repo = record.get('json.metadataRepository'); - if(isArray(repo)) { - repo.forEach(itm => { + if (isArray(repo)) { + repo.forEach((itm) => { let titles = get(itm, 'citation.titles'); - if(titles) { - set(itm, 'citation.title', get(itm, 'citation.titles') !== undefined ? get(itm, 'citation.titles') : get(itm, 'title')); + if (titles) { + set( + itm, + 'citation.title', + get(itm, 'citation.titles') !== undefined + ? get(itm, 'citation.titles') + : get(itm, 'title'), + ); set(itm, 'citation.titles', null); record.save().then(function () { record.notifyPropertyChange('currentHash'); diff --git a/app/services/profile.js b/app/services/profile.js index 28bed7d43..5f8c07c17 100644 --- a/app/services/profile.js +++ b/app/services/profile.js @@ -62,22 +62,20 @@ export default Service.extend({ let response = yield request(uri); - if(response && !semver.valid(response.version)) { - throw new Error("Invalid version"); + if (response && !semver.valid(response.version)) { + throw new Error('Invalid version'); } return response; } catch (error) { - if(isNotFoundError(error)) { - this.flashMessages - .danger( - `Could not load profile definition from ${uri}. Definition not found.` - ); + if (isNotFoundError(error)) { + this.flashMessages.danger( + `Could not load profile definition from ${uri}. Definition not found.`, + ); } else { - this.flashMessages - .danger( - `Could not load profile definition from "${uri}". Error: ${error.message}` - ); + this.flashMessages.danger( + `Could not load profile definition from "${uri}". Error: ${error.message}`, + ); } } }).drop(), @@ -93,37 +91,38 @@ export default Service.extend({ checkForUpdates: task(function* (records) { yield timeout(1000); - yield all(records.map(itm => { - if(itm.validations.attrs.uri.isInvalid) { - this.flashMessages - .warning( - `Did not load definition for "${itm.title}". URL is Invalid.` + yield all( + records.map((itm) => { + if (itm.validations.attrs.uri.isInvalid) { + this.flashMessages.warning( + `Did not load definition for "${itm.title}". URL is Invalid.`, ); - return; - } - - return request(itm.uri).then(response => { - // `response` is the data from the server - if(semver.valid(response.version)) { - itm.set('remoteVersion', response.version); - } else { - throw new Error("Invalid version"); + return; } - return response; - }).catch(error => { - if(isNotFoundError(error)) { - this.flashMessages - .danger( - `Could not load definition for "${itm.title}". Definition not found.` - ); - } else { - this.flashMessages - .danger( - `Could not load definition for "${itm.title}". Error: ${error.message}` - ); - } - }); - })); + return request(itm.uri) + .then((response) => { + // `response` is the data from the server + if (semver.valid(response.version)) { + itm.set('remoteVersion', response.version); + } else { + throw new Error('Invalid version'); + } + + return response; + }) + .catch((error) => { + if (isNotFoundError(error)) { + this.flashMessages.danger( + `Could not load definition for "${itm.title}". Definition not found.`, + ); + } else { + this.flashMessages.danger( + `Could not load definition for "${itm.title}". Error: ${error.message}`, + ); + } + }); + }), + ); }).drop(), }); diff --git a/app/services/publish.js b/app/services/publish.js index 33ccb47c2..d9fed03cd 100644 --- a/app/services/publish.js +++ b/app/services/publish.js @@ -2,5 +2,5 @@ import { A } from '@ember/array'; import Service from '@ember/service'; export default Service.extend({ - catalogs: A() + catalogs: A(), }); diff --git a/app/services/schemas.js b/app/services/schemas.js index 50e1bb58c..ccc77bbee 100644 --- a/app/services/schemas.js +++ b/app/services/schemas.js @@ -29,21 +29,21 @@ export default Service.extend({ }, store: service(), flashMessages: service(), - globalSchemas: filterBy('schemas','isGlobal'), + globalSchemas: filterBy('schemas', 'isGlobal'), fetchSchemas: task(function* (url) { yield timeout(1000); - return yield this.parser.resolve(url).then($refs => { + return yield this.parser.resolve(url).then(($refs) => { let paths = $refs.paths(); let values = parser.$refs.values(); return paths.map((path) => { return { id: path, - schema: values[path] - } + schema: values[path], + }; }); - }) + }); }).drop(), // compileSchemas(schemas) { @@ -59,38 +59,38 @@ export default Service.extend({ checkForUpdates: task(function* (records) { yield timeout(1000); - yield all(records.map(itm => { - if(itm.validations.attrs.uri.isInvalid) { - this.flashMessages - .warning( - `Did not load schema for "${itm.title}". URL is Invalid.` + yield all( + records.map((itm) => { + if (itm.validations.attrs.uri.isInvalid) { + this.flashMessages.warning( + `Did not load schema for "${itm.title}". URL is Invalid.`, ); - return; - } - - return request(itm.uri).then(response => { - // `response` is the data from the server - if(semver.valid(response.version)) { - itm.set('remoteVersion', response.version); - } else { - throw new Error("Invalid version"); + return; } - return response; - }).catch(error => { - if(isNotFoundError(error)) { - this.flashMessages - .danger( - `Could not load schema for "${itm.title}". Schema not found.` - ); - } else { - this.flashMessages - .danger( - `Could not load schema for "${itm.title}". Error: ${error.message}` - ); - } - }); - })); - }).drop(), + return request(itm.uri) + .then((response) => { + // `response` is the data from the server + if (semver.valid(response.version)) { + itm.set('remoteVersion', response.version); + } else { + throw new Error('Invalid version'); + } + return response; + }) + .catch((error) => { + if (isNotFoundError(error)) { + this.flashMessages.danger( + `Could not load schema for "${itm.title}". Schema not found.`, + ); + } else { + this.flashMessages.danger( + `Could not load schema for "${itm.title}". Error: ${error.message}`, + ); + } + }); + }), + ); + }).drop(), }); diff --git a/app/services/settings.js b/app/services/settings.js index 73611036e..baf2aff5f 100644 --- a/app/services/settings.js +++ b/app/services/settings.js @@ -6,10 +6,8 @@ import { defaultValues } from 'mdeditor/models/setting'; import { isEmpty } from '@ember/utils'; const { - APP: { - version - }, - environment + APP: { version }, + environment, } = config; @classic @@ -30,40 +28,46 @@ export default class SettingsService extends Service { let settings; let store = this.store; - store - .findAll('setting') - .then(function (s) { - let rec = s.get('firstObject'); - - settings = rec ? rec : store.createRecord('setting'); - - if(settings.get('lastVersion') !== version) { - settings.set('showSplash', environment !== 'test'); - settings.set('lastVersion', version); - } - - set(settings, 'repositoryDefaults', get(settings, 'repositoryDefaults') !== undefined ? get(settings, 'repositoryDefaults') : []); - - //update mdTranslatorAPI if default is being used - let isDefaultAPI = isEmpty(settings.get('mdTranslatorAPI')) || settings.get('mdTranslatorAPI').match( - 'https://mdtranslator.herokuapp.com/api/v(.)/translator'); - - if(isDefaultAPI) { - settings.set('mdTranslatorAPI', defaultValues.mdTranslatorAPI); - } - - settings.notifyPropertyChange('hasDirtyAttributes'); - - if(!(me.get('isDestroyed') || me.get('isDestroying'))) { - me.set('data', settings); - } - - }); + store.findAll('setting').then(function (s) { + let rec = s.get('firstObject'); + + settings = rec ? rec : store.createRecord('setting'); + + if (settings.get('lastVersion') !== version) { + settings.set('showSplash', environment !== 'test'); + settings.set('lastVersion', version); + } + + set( + settings, + 'repositoryDefaults', + get(settings, 'repositoryDefaults') !== undefined + ? get(settings, 'repositoryDefaults') + : [], + ); + + //update mdTranslatorAPI if default is being used + let isDefaultAPI = + isEmpty(settings.get('mdTranslatorAPI')) || + settings + .get('mdTranslatorAPI') + .match('https://mdtranslator.herokuapp.com/api/v(.)/translator'); + + if (isDefaultAPI) { + settings.set('mdTranslatorAPI', defaultValues.mdTranslatorAPI); + } + + settings.notifyPropertyChange('hasDirtyAttributes'); + + if (!(me.get('isDestroyed') || me.get('isDestroying'))) { + me.set('data', settings); + } + }); } repositoryTemplate = EmberObject.extend({ init() { super.init(...arguments); - } + }, }); } diff --git a/app/services/slider.js b/app/services/slider.js index 0e64d94de..600943771 100644 --- a/app/services/slider.js +++ b/app/services/slider.js @@ -25,7 +25,7 @@ export default class SliderService extends Service { onClose() {} toggleSlider(state) { - if(state === undefined) { + if (state === undefined) { this.toggleProperty('showSlider'); return; diff --git a/app/services/spotlight.js b/app/services/spotlight.js index 12442108b..4617bc121 100644 --- a/app/services/spotlight.js +++ b/app/services/spotlight.js @@ -11,13 +11,13 @@ export default Service.extend({ setTarget(id, onClose, scope) { let el = this.elementId; - if(id === el) { + if (id === el) { this.close(); return; } - if(id && id !== el) { + if (id && id !== el) { $('#' + el).removeClass('md-spotlight-target'); } @@ -25,40 +25,39 @@ export default Service.extend({ show: true, elementId: id, onClose: onClose, - scope: scope + scope: scope, }); $('body').addClass('md-no-liquid'); $('#' + id).addClass('md-spotlight-target'); }, - closeTask: task(function * () { + closeTask: task(function* () { let id = this.elementId; let onClose = this.onClose; $('.md-spotlight-overlay').addClass('fade-out-fast'); - if(onClose) { + if (onClose) { onClose.call(this.scope || this); } yield timeout(250); - if(isPresent(id)) { + if (isPresent(id)) { $('body').removeClass('md-no-liquid'); $('#' + id).removeClass('md-spotlight-target'); } - setProperties(this, { show: false, elementId: undefined, onClose: undefined, - scope: undefined + scope: undefined, }); }).drop(), - close(){ + close() { this.closeTask.perform(); - } + }, }); diff --git a/app/transforms/json.js b/app/transforms/json.js index a1186b352..bb4148bfe 100644 --- a/app/transforms/json.js +++ b/app/transforms/json.js @@ -3,14 +3,13 @@ import { inject as service } from '@ember/service'; import EmberObject from '@ember/object'; import { A, isArray } from '@ember/array'; - export default Transform.extend({ clean: service('cleaner'), deserialize(serialized) { let json = JSON.parse(serialized); - if(isArray(json)){ + if (isArray(json)) { return A(json); } @@ -18,8 +17,7 @@ export default Transform.extend({ }, serialize(deserialized) { - let target = isArray(deserialized) ? [] :{}; - return JSON.stringify(this.clean.clean(deserialized, {target:target})); - } - + let target = isArray(deserialized) ? [] : {}; + return JSON.stringify(this.clean.clean(deserialized, { target: target })); + }, }); diff --git a/app/transitions.js b/app/transitions.js index c1af81608..bf460a42d 100644 --- a/app/transitions.js +++ b/app/transitions.js @@ -3,150 +3,150 @@ export default function () { this.toRoute('record.show.edit.main.citation'), this.fromRoute('record.show.edit.main.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), //,this.debug() ); this.transition( this.toRoute('record.show.edit.main.citation.identifier'), this.fromRoute('record.show.edit.main.citation.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), //,this.debug() ); this.transition( this.toRoute('record.show.edit.metadata.identifier'), this.fromRoute('record.show.edit.metadata.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), //,this.debug() ); this.transition( this.toRoute('record.show.edit.metadata.alternate'), this.fromRoute('record.show.edit.metadata.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), //,this.debug() ); this.transition( this.toRoute('record.show.edit.metadata.alternate.identifier'), this.fromRoute('record.show.edit.metadata.alternate.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), //,this.debug() ); this.transition( this.toRoute('record.show.edit.metadata.parent'), this.fromRoute('record.show.edit.metadata.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), ); this.transition( this.toRoute('record.show.edit.metadata.parent.identifier'), this.fromRoute('record.show.edit.metadata.parent.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), ); this.transition( this.toRoute('record.show.edit.spatial.raster'), this.fromRoute('record.show.edit.spatial.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), ); this.transition( this.toRoute('record.show.edit.spatial.raster.attribute'), this.fromRoute('record.show.edit.spatial.raster.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), ); this.transition( this.toRoute('record.show.edit.taxonomy.collection'), this.fromRoute('record.show.edit.taxonomy.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), ); this.transition( this.toRoute('record.show.edit.taxonomy.collection.itis'), this.fromRoute('record.show.edit.taxonomy.collection.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), ); this.transition( this.toRoute('record.show.edit.taxonomy.collection.system'), this.fromRoute('record.show.edit.taxonomy.collection.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), ); this.transition( this.toRoute('record.show.edit.lineage.lineageobject'), this.fromRoute('record.show.edit.lineage.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), ); this.transition( this.toRoute('record.show.edit.lineage.lineageobject.citation'), this.fromRoute('record.show.edit.lineage.lineageobject.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), ); this.transition( this.toRoute('record.show.edit.lineage.lineageobject.citation.identifier'), this.fromRoute('record.show.edit.lineage.lineageobject.citation.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), ); this.transition( this.toRoute('record.show.edit.lineage.lineageobject.step'), this.fromRoute('record.show.edit.lineage.lineageobject.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), ); this.transition( this.toRoute('record.show.edit.lineage.lineageobject.step.citation'), this.fromRoute('record.show.edit.lineage.lineageobject.step.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), ); this.transition( this.toRoute('record.show.edit.lineage.lineageobject.source'), this.fromRoute('record.show.edit.lineage.lineageobject.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), ); this.transition( this.toRoute('record.show.edit.associated.resource'), this.fromRoute('record.show.edit.associated.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), ); this.transition( this.toRoute('record.show.edit.documents.citation'), this.fromRoute('record.show.edit.documents.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), ); this.transition( this.toRoute('record.show.edit.funding.allocation'), this.fromRoute('record.show.edit.funding.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), ); this.transition( this.toRoute('record.show.edit.dataquality.edit'), this.fromRoute('record.show.edit.dataquality.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), ); this.transition( this.toRoute('record.show.edit.distribution.distributor'), this.fromRoute('record.show.edit.distribution.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), ); this.transition( this.toRoute('record.show.edit.distribution.distributor.transfer'), this.fromRoute('record.show.edit.distribution.distributor.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), ); this.transition( this.toRoute('dictionary.show.edit'), @@ -159,67 +159,67 @@ export default function () { this.toRoute('dictionary.show.edit.citation.identifier'), this.fromRoute('dictionary.show.edit.citation.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), ); this.transition( this.toRoute('dictionary.show.edit.domain.edit'), this.fromRoute('dictionary.show.edit.domain.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), ); this.transition( this.toRoute('dictionary.show.edit.domain.edit.item'), this.fromRoute('dictionary.show.edit.domain.edit.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), ); this.transition( this.toRoute('dictionary.show.edit.domain.edit.citation'), this.fromRoute('dictionary.show.edit.domain.edit.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), ); this.transition( this.toRoute('dictionary.show.edit.domain.edit.citation.identifier'), this.fromRoute('dictionary.show.edit.domain.edit.citation.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), ); this.transition( this.toRoute('dictionary.show.edit.entity.edit'), this.fromRoute('dictionary.show.edit.entity.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), ); this.transition( this.toRoute('dictionary.show.edit.entity.edit'), this.fromRoute('dictionary.show.edit.entity.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), ); this.transition( this.toRoute('dictionary.show.edit.entity.edit.citation'), this.fromRoute('dictionary.show.edit.entity.edit.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), ); this.transition( this.toRoute('dictionary.show.edit.entity.edit.citation.identifier'), this.fromRoute('dictionary.show.edit.entity.edit.citation.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), ); this.transition( this.toRoute('dictionary.show.edit.entity.edit.attribute'), this.fromRoute('dictionary.show.edit.entity.edit.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), ); this.transition( this.toRoute('dictionary.show.edit.entity.import'), this.fromRoute('dictionary.show.edit.entity.index'), this.use('toLeft'), - this.reverse('toRight') + this.reverse('toRight'), ); //non-route transitions @@ -228,11 +228,11 @@ export default function () { this.includingInitialRender(), this.toValue(true), this.use('toRight', { - duration: 250 + duration: 250, }), this.reverse('toLeft', { - duration: 250 - })//, + duration: 250, + }), //, //this.debug() ); this.transition( @@ -240,11 +240,11 @@ export default function () { this.includingInitialRender(), this.toValue(true), this.use('toLeft', { - duration: 250 + duration: 250, }), this.reverse('toRight', { - duration: 250 - })//, + duration: 250, + }), //, //this.debug() ); } diff --git a/app/utils/md-interpolate.js b/app/utils/md-interpolate.js index 6dca00e23..977928aa5 100644 --- a/app/utils/md-interpolate.js +++ b/app/utils/md-interpolate.js @@ -1,15 +1,17 @@ - let interpolate = function (str, obj) { - let parts = str.split(/\$\{(?!\d)[^0-9][a-zA-Z0-9.]+\}/); - let args = parseArgs(str); - let parameters = args.map(argument => obj[argument] || (obj[argument] === - undefined ? "" : obj[argument])); +let interpolate = function (str, obj) { + let parts = str.split(/\$\{(?!\d)[^0-9][a-zA-Z0-9.]+\}/); + let args = parseArgs(str); + let parameters = args.map( + (argument) => + obj[argument] || (obj[argument] === undefined ? '' : obj[argument]), + ); - return String.raw({ raw: parts }, ...parameters); - }; + return String.raw({ raw: parts }, ...parameters); +}; - let parseArgs = function (str) { - let args = str.match(/[^{}]+(?=})/g) || []; - return args; - }; +let parseArgs = function (str) { + let args = str.match(/[^{}]+(?=})/g) || []; + return args; +}; - export { interpolate, parseArgs }; +export { interpolate, parseArgs }; diff --git a/app/utils/md-object.js b/app/utils/md-object.js index 877135e8d..12ae6aba8 100644 --- a/app/utils/md-object.js +++ b/app/utils/md-object.js @@ -1,10 +1,14 @@ import { clean } from 'mdeditor/services/cleaner'; const isEmpty = function (obj) { - if(obj !== null) { - let empty = obj ? Object.keys(clean(obj, { - preserveArrays: false - })).length === 0 : true; + if (obj !== null) { + let empty = obj + ? Object.keys( + clean(obj, { + preserveArrays: false, + }), + ).length === 0 + : true; return empty; } diff --git a/app/validators/array-required.js b/app/validators/array-required.js index c51f38635..543f4cbfd 100644 --- a/app/validators/array-required.js +++ b/app/validators/array-required.js @@ -27,8 +27,8 @@ const ArrayRequired = BaseValidator.extend({ * */ validate(value, options) { - if(isArray(value)) { - if(value.length) { + if (isArray(value)) { + if (value.length) { return true; } } @@ -36,7 +36,7 @@ const ArrayRequired = BaseValidator.extend({ options.item = this.options.description || this.options.attribute; return this.createErrorMessage('arrayRequired', value, options); - } + }, }); ArrayRequired.reopenClass({ @@ -60,16 +60,17 @@ ArrayRequired.reopenClass({ assert( `[validator:array-valid] [${attribute}] option 'track' must be an array`, - isArray(opts)); + isArray(opts), + ); - if(!isArray(opts)) return track; + if (!isArray(opts)) return track; opts.forEach((itm) => { track.push(`model.${attribute}.@each.${itm}`); }); return track; - } + }, }); export default ArrayRequired; diff --git a/app/validators/array-valid.js b/app/validators/array-valid.js index 4fa87785e..1384e7687 100644 --- a/app/validators/array-valid.js +++ b/app/validators/array-valid.js @@ -3,21 +3,21 @@ import BaseValidator from 'ember-cp-validations/validators/base'; const ArrayValid = BaseValidator.extend({ /** - * Validation that checks validity of all array members - * - * @module mdeditor - * @submodule validator - * @class array-valid - * @extends BaseValidator - * @example - * validator('array-valid') - */ - validate(value /*, options, model, attribute*/ ) { + * Validation that checks validity of all array members + * + * @module mdeditor + * @submodule validator + * @class array-valid + * @extends BaseValidator + * @example + * validator('array-valid') + */ + validate(value /*, options, model, attribute*/) { let check = value.some((itm) => { return get(itm, 'validations.isInvalid'); }); return check ? 'At least one item is invalid.' : true; - } + }, }); ArrayValid.reopenClass({ @@ -34,9 +34,9 @@ ArrayValid.reopenClass({ * @param {Unknown} options Options passed into your validator * @return {Array} */ - getDependentsFor(attribute /*, options */ ) { + getDependentsFor(attribute /*, options */) { return [`model.${attribute}.@each`]; - } + }, }); export default ArrayValid; diff --git a/app/validators/messages.js b/app/validators/messages.js index c47d3bf62..67d79c4f9 100644 --- a/app/validators/messages.js +++ b/app/validators/messages.js @@ -1,5 +1,5 @@ import Messages from 'ember-cp-validations/validators/messages'; export default Messages.extend({ - arrayRequired: 'At least one {item} is required.' + arrayRequired: 'At least one {item} is required.', }); diff --git a/config/deploy.js b/config/deploy.js index 17eda3960..752778a75 100644 --- a/config/deploy.js +++ b/config/deploy.js @@ -1,8 +1,8 @@ /* jshint node: true */ -module.exports = function(deployTarget) { +module.exports = function (deployTarget) { var ENV = { - build: {} + build: {}, // include other plugin configuration that applies to all deploy targets here }; diff --git a/config/deprecation-workflow.js b/config/deprecation-workflow.js index 5eda65307..7ac0444e6 100644 --- a/config/deprecation-workflow.js +++ b/config/deprecation-workflow.js @@ -2,18 +2,21 @@ window.deprecationWorkflow = window.deprecationWorkflow || {}; window.deprecationWorkflow.config = { workflow: [ - { handler: "log", matchId: "ember-routing.route-router" }, - { handler: "silence", matchId: "ember-data:method-calls-on-destroyed-store" }, - { handler: "log", matchId: "ember-component.send-action" }, - { handler: "log", matchId: "ember-runtime.using-array-copy" }, - { handler: "log", matchId: "ember-runtime.deprecate-copy-copyable" }, - { handler: "silence", matchId: "ember-name-key-usage" }, - { handler: "silence", matchId: "events.remove-all-listeners" }, - { handler: "log", matchId: "object.new-constructor" }, - { handler: "log", matchId: "ember-polyfills.deprecate-merge" }, - { handler: "log", matchId: "ember-views.curly-components.jquery-element" }, - { handler: "log", matchId: "computed-property.volatile" }, - { handler: "silence", matchId: "computed-property.override" }, - { handler: "silence", matchId: "ember-data:evented-api-usage" }, - ] + { handler: 'log', matchId: 'ember-routing.route-router' }, + { + handler: 'silence', + matchId: 'ember-data:method-calls-on-destroyed-store', + }, + { handler: 'log', matchId: 'ember-component.send-action' }, + { handler: 'log', matchId: 'ember-runtime.using-array-copy' }, + { handler: 'log', matchId: 'ember-runtime.deprecate-copy-copyable' }, + { handler: 'silence', matchId: 'ember-name-key-usage' }, + { handler: 'silence', matchId: 'events.remove-all-listeners' }, + { handler: 'log', matchId: 'object.new-constructor' }, + { handler: 'log', matchId: 'ember-polyfills.deprecate-merge' }, + { handler: 'log', matchId: 'ember-views.curly-components.jquery-element' }, + { handler: 'log', matchId: 'computed-property.volatile' }, + { handler: 'silence', matchId: 'computed-property.override' }, + { handler: 'silence', matchId: 'ember-data:evented-api-usage' }, + ], }; diff --git a/config/ember-intl.js b/config/ember-intl.js index 0ca9f4a20..58c1ad0c2 100644 --- a/config/ember-intl.js +++ b/config/ember-intl.js @@ -1,74 +1,74 @@ /*jshint node:true*/ -module.exports = function(/* env */) { +module.exports = function (/* env */) { return { /** - * The locales that are application supports. - * - * This is optional and is automatically set if project stores translations - * where ember-intl is able to look them up (/translations/). - * - * If the project relies on side-loading translations, then you must explicitly - * list out the locales. i.e: ['en-us', 'en-gb', 'fr-fr'] - * - * @property locales - * @type {Array?} - * @default "null" - */ + * The locales that are application supports. + * + * This is optional and is automatically set if project stores translations + * where ember-intl is able to look them up (/translations/). + * + * If the project relies on side-loading translations, then you must explicitly + * list out the locales. i.e: ['en-us', 'en-gb', 'fr-fr'] + * + * @property locales + * @type {Array?} + * @default "null" + */ locales: null, /** - * baseLocale is used to determine if translation keys are missing from other locales. - * This property is optional, and if you rely on sideloading translations then - * this should be null - * - * @property baseLocale - * @type {String?} - * @default "null" - */ + * baseLocale is used to determine if translation keys are missing from other locales. + * This property is optional, and if you rely on sideloading translations then + * this should be null + * + * @property baseLocale + * @type {String?} + * @default "null" + */ baseLocale: null, /** - * autoPolyfill, when true will automatically inject the IntlJS polyfill - * into index.html - * - * @property autoPolyfill - * @type {Boolean} - * @default "false" - */ + * autoPolyfill, when true will automatically inject the IntlJS polyfill + * into index.html + * + * @property autoPolyfill + * @type {Boolean} + * @default "false" + */ autoPolyfill: false, /** - * disablePolyfill prevents the polyfill from being bundled in the asset folder of the build - * - * @property disablePolyfill - * @type {Boolean} - * @default "false" - */ + * disablePolyfill prevents the polyfill from being bundled in the asset folder of the build + * + * @property disablePolyfill + * @type {Boolean} + * @default "false" + */ disablePolyfill: true, /** - * prevents the translations from being bundled with the application code. - * This enables asynchronously loading the translations for the active locale - * by fetching them from the asset folder of the build. - * - * See: https://github.com/jasonmit/ember-intl/blob/master/docs/asynchronously-loading-translations.md - * - * @property publicOnly - * @type {Boolean} - * @default "false" - */ + * prevents the translations from being bundled with the application code. + * This enables asynchronously loading the translations for the active locale + * by fetching them from the asset folder of the build. + * + * See: https://github.com/jasonmit/ember-intl/blob/master/docs/asynchronously-loading-translations.md + * + * @property publicOnly + * @type {Boolean} + * @default "false" + */ publicOnly: false, /** - * Path where translations are kept. This is relative to the project root. - * For example, if your translations are an npm dependency, set this to: - *`'./node_modules/path/to/translations'` - * - * @property inputPath - * @type {String} - * @default "translations" + * Path where translations are kept. This is relative to the project root. + * For example, if your translations are an npm dependency, set this to: + *`'./node_modules/path/to/translations'` + * + * @property inputPath + * @type {String} + * @default "translations" */ - inputPath: 'translations' + inputPath: 'translations', }; }; diff --git a/config/ember-try.js b/config/ember-try.js index 1d01fe400..7d5d3d745 100644 --- a/config/ember-try.js +++ b/config/ember-try.js @@ -5,11 +5,11 @@ const pkg = require('../package.json'); const semver = require('semver'); const getChannelURL = require('ember-source-channel-url'); -module.exports = function() { +module.exports = function () { return Promise.all([ getChannelURL('release'), getChannelURL('beta'), - getChannelURL('canary') + getChannelURL('canary'), ]).then((urls) => { return { /* @@ -17,8 +17,9 @@ module.exports = function() { P.S. The command doesn't need to be an `ember ` command, they can be anything. Keep in mind that this config file is JavaScript, so you can code in here to determine the command. */ - command: semver.lt(semver.coerce(pkg.version), '1.0.0') ? - 'ember test' : 'ember test', + command: semver.lt(semver.coerce(pkg.version), '1.0.0') + ? 'ember test' + : 'ember test', /* If set to true, the `versionCompatibility` key under `ember-addon` in `package.json` will be used to automatically generate scenarios that will deep merge with any in this configuration file. @@ -57,8 +58,8 @@ module.exports = function() { { name: 'ember-default', npm: { - devDependencies: {} - } + devDependencies: {}, + }, }, // { // name: 'ember-default-with-jquery', @@ -78,9 +79,9 @@ module.exports = function() { allowedToFail: true, npm: { devDependencies: { - 'ember-source': urls[0] - } - } + 'ember-source': urls[0], + }, + }, }, { name: 'ember-beta', @@ -88,9 +89,9 @@ module.exports = function() { allowedToFail: true, npm: { devDependencies: { - 'ember-source': urls[1] - } - } + 'ember-source': urls[1], + }, + }, }, { name: 'ember-canary', @@ -98,11 +99,11 @@ module.exports = function() { allowedToFail: true, npm: { devDependencies: { - 'ember-source': urls[2] - } - } + 'ember-source': urls[2], + }, + }, }, - ] + ], }; }); }; diff --git a/config/environment.js b/config/environment.js index f7410bb17..736e45556 100644 --- a/config/environment.js +++ b/config/environment.js @@ -1,20 +1,20 @@ -"use strict"; +'use strict'; module.exports = function (environment) { let deployTarget = process.env.DEPLOY_TARGET; let ENV = { contentSecurityPolicy: { - "style-src": "'self' 'unsafe-inline'", + 'style-src': "'self' 'unsafe-inline'", }, - modulePrefix: "mdeditor", - podModulePrefix: "mdeditor/pods", + modulePrefix: 'mdeditor', + podModulePrefix: 'mdeditor/pods', environment: environment, - rootURL: "/", - locationType: "history", + rootURL: '/', + locationType: 'history', vocabulariesUrl: - "https://cdn.jsdelivr.net/gh/adiwg/mdKeywords@master/resources/vocabularies.json", + 'https://cdn.jsdelivr.net/gh/adiwg/mdKeywords@master/resources/vocabularies.json', profilesListUrl: - "https://cdn.jsdelivr.net/gh/adiwg/mdProfiles@master/resources/profiles-list.json", + 'https://cdn.jsdelivr.net/gh/adiwg/mdProfiles@master/resources/profiles-list.json', EmberENV: { FEATURES: { // Here you can enable experimental features on an ember canary build @@ -25,25 +25,25 @@ module.exports = function (environment) { Date: false, }, }, - "ember-local-storage": { + 'ember-local-storage': { fileExport: true, }, APP: { // Here you can pass flags/options to your application instance // when it is created - repository: "https://github.com/adiwg/mdEditor", - defaultProfileId: "org.adiwg.profile.full", + repository: 'https://github.com/adiwg/mdEditor', + defaultProfileId: 'org.adiwg.profile.full', }, - "ember-load": { - loadingIndicatorClass: "md-load-indicator", + 'ember-load': { + loadingIndicatorClass: 'md-load-indicator', }, - "ember-toggle": { + 'ember-toggle': { includedThemes: [], //excludedThemes: ['flip'], // defaultShowLabels: true, // defaults to false - defaultTheme: "light", // defaults to 'default' + defaultTheme: 'light', // defaults to 'default' //defaultSize: 'small', // defaults to 'medium' // defaultOffLabel: 'False', // defaults to 'Off' // defaultOnLabel: 'True' // defaults to 'On' @@ -55,65 +55,65 @@ module.exports = function (environment) { preventDuplicates: true, //sticky: true }, - "ember-cli-bootstrap-datetimepicker": { + 'ember-cli-bootstrap-datetimepicker': { icons: { - time: "fa fa-clock-o", - date: "fa fa-calendar", - up: "fa fa-chevron-up", - down: "fa fa-chevron-down", - previous: "fa fa-angle-double-left", - next: "fa fa-angle-double-right", - close: "fa fa-times", - clear: "fa fa-trash", - today: "fa fa-home", + time: 'fa fa-clock-o', + date: 'fa fa-calendar', + up: 'fa fa-chevron-up', + down: 'fa fa-chevron-down', + previous: 'fa fa-angle-double-left', + next: 'fa fa-angle-double-right', + close: 'fa fa-times', + clear: 'fa fa-trash', + today: 'fa fa-home', }, }, }; - console.log("environment", environment); + console.log('environment', environment); - if (environment === "development") { + if (environment === 'development') { ENV.keycloakConfig = { - realm: "ScienceBase-B", - clientId: "catalog", - url: "https://www.sciencebase.gov/auth", + realm: 'ScienceBase-B', + clientId: 'catalog', + url: 'https://www.sciencebase.gov/auth', }; } - if (environment === "test") { + if (environment === 'test') { // Testem prefers this... - ENV.rootURL = "/"; - ENV.locationType = "history"; + ENV.rootURL = '/'; + ENV.locationType = 'history'; - ENV["ember-local-storage"] = { - namespace: "test", + ENV['ember-local-storage'] = { + namespace: 'test', }; // keep test console output quieter ENV.APP.LOG_ACTIVE_GENERATION = false; ENV.APP.LOG_VIEW_LOOKUPS = false; - ENV.APP.rootElement = "#ember-testing"; + ENV.APP.rootElement = '#ember-testing'; ENV.APP.autoboot = false; } - if (environment === "staging") { - ENV.rootURL = "/"; - ENV.locationType = "history"; + if (environment === 'staging') { + ENV.rootURL = '/'; + ENV.locationType = 'history'; } - if (environment === "production") { - ENV.locationType = "history"; + if (environment === 'production') { + ENV.locationType = 'history'; ENV.keycloakConfig = { - realm: "ScienceBase", - clientId: "catalog", - url: "https://www.sciencebase.gov/auth", + realm: 'ScienceBase', + clientId: 'catalog', + url: 'https://www.sciencebase.gov/auth', }; } - if (deployTarget === "dev") { - ENV.rootURL = "/"; - ENV.locationType = "history"; + if (deployTarget === 'dev') { + ENV.rootURL = '/'; + ENV.locationType = 'history'; } return ENV; }; diff --git a/ember-cli-build.js b/ember-cli-build.js index 7dddc2bed..73ed9fc87 100644 --- a/ember-cli-build.js +++ b/ember-cli-build.js @@ -12,12 +12,12 @@ module.exports = function (defaults) { 'node_modules/bootstrap-3-card/sass', // 'node_modules/select2/src/scss', // 'node_modules/select2-bootstrap-theme/src', - 'node_modules/jquery-jsonview/src' - ] + 'node_modules/jquery-jsonview/src', + ], }, 'ember-math-helpers': { - only: ['round'] + only: ['round'], }, fingerprint: { @@ -29,26 +29,26 @@ module.exports = function (defaults) { 'images/marker-shadow.png', 'images/spritesheet-2x.png', 'images/spritesheet.png', - 'worker' - ] + 'worker', + ], }, autoImport: { webpack: { resolve: { fallback: { - "path": require.resolve("path-browserify"), - "http": require.resolve("http-browserify"), - "https": require.resolve("https-browserify"), - "stream": require.resolve("stream-browserify"), - } - } + path: require.resolve('path-browserify'), + http: require.resolve('http-browserify'), + https: require.resolve('https-browserify'), + stream: require.resolve('stream-browserify'), + }, + }, }, }, 'ember-models-table': { - includeDefaultCss: true - } + includeDefaultCss: true, + }, }); // Use `app.import` to add additional libraries to the generated @@ -66,21 +66,24 @@ module.exports = function (defaults) { //bootstrap js app.import( - 'node_modules/bootstrap-sass/assets/javascripts/bootstrap/transition.js' + 'node_modules/bootstrap-sass/assets/javascripts/bootstrap/transition.js', ); app.import( - 'node_modules/bootstrap-sass/assets/javascripts/bootstrap/collapse.js'); - app.import( - 'node_modules/bootstrap-sass/assets/javascripts/bootstrap/dropdown.js'); + 'node_modules/bootstrap-sass/assets/javascripts/bootstrap/collapse.js', + ); app.import( - 'node_modules/bootstrap-sass/assets/javascripts/bootstrap/tab.js'); + 'node_modules/bootstrap-sass/assets/javascripts/bootstrap/dropdown.js', + ); + app.import('node_modules/bootstrap-sass/assets/javascripts/bootstrap/tab.js'); app.import( - 'node_modules/bootstrap-sass/assets/javascripts/bootstrap/scrollspy.js' + 'node_modules/bootstrap-sass/assets/javascripts/bootstrap/scrollspy.js', ); //jquery-jsonview app.import('node_modules/jquery-jsonview/dist/jquery.jsonview.js'); //papaparse for worker - app.import('node_modules/papaparse/papaparse.js', { outputFile: 'assets/workers/worker_papaparse.js' }); + app.import('node_modules/papaparse/papaparse.js', { + outputFile: 'assets/workers/worker_papaparse.js', + }); //marked app.import('node_modules/marked/marked.min.js'); diff --git a/package.json b/package.json index c75c7745b..68a574d94 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,7 @@ "lint:fix": "npm-run-all --aggregate-output --continue-on-error --parallel lint:*:fix", "lint:hbs": "ember-template-lint .", "lint:hbs:fix": "ember-template-lint . --fix", - "lint:js": "eslint . --cache", + "lint:js": "eslint .", "lint:sass": "stylelint 'app/styles/**/*.scss'", "lint:sass:fix": "stylelint 'app/styles/**/*.scss' --fix", "format": "npm-run-all format:*", @@ -52,6 +52,7 @@ "edition": "octane" }, "devDependencies": { + "@babel/plugin-proposal-decorators": "^7.21.0", "@ember/jquery": "^0.6.0", "@ember/optional-features": "^2.0.0", "@ember/render-modifiers": "^2.1.0", @@ -167,7 +168,14 @@ "text-encoding": "^0.7.0", "uuid": "^3.3.3", "validator": "^12.1.0", - "webpack": "^5.0.0" + "webpack": "^5.0.0", + "@apidevtools/json-schema-ref-parser": "^11.6.0", + "@babel/core": "7.24.4", + "@babel/eslint-parser": "^7.24.1", + "http-browserify": "^1.7.0", + "https-browserify": "^1.0.0", + "path-browserify": "^1.0.1", + "stream-browserify": "^3.0.0" }, "config": { "commitizen": { @@ -180,14 +188,5 @@ "lib/ember-leaflet-table", "lib/mdeditor-sciencebase" ] - }, - "dependencies": { - "@apidevtools/json-schema-ref-parser": "^11.6.0", - "@babel/core": "7.24.4", - "@babel/eslint-parser": "^7.24.1", - "http-browserify": "^1.7.0", - "https-browserify": "^1.0.0", - "path-browserify": "^1.0.1", - "stream-browserify": "^3.0.0" } } diff --git a/tests/.eslintrc.js b/tests/.eslintrc.js index 6107db8ed..76bf8c40d 100644 --- a/tests/.eslintrc.js +++ b/tests/.eslintrc.js @@ -1,6 +1,6 @@ module.exports = { env: { embertest: true, - jquery: true - } + jquery: true, + }, }; diff --git a/tests/acceptance/pods/components/layout/md-breadcrumb-test.js b/tests/acceptance/pods/components/layout/md-breadcrumb-test.js index 526ad78d6..197e63261 100644 --- a/tests/acceptance/pods/components/layout/md-breadcrumb-test.js +++ b/tests/acceptance/pods/components/layout/md-breadcrumb-test.js @@ -2,10 +2,10 @@ import { module, test } from 'qunit'; import { setupApplicationTest } from 'ember-qunit'; import { visit, currentURL, findAll } from '@ember/test-helpers'; -module('Acceptance | pods/components/md breadcrumb', function(hooks) { +module('Acceptance | pods/components/md breadcrumb', function (hooks) { setupApplicationTest(hooks); - test('visiting /record/new', async function(assert) { + test('visiting /record/new', async function (assert) { assert.expect(4); await visit('/record/new'); @@ -23,7 +23,7 @@ module('Acceptance | pods/components/md breadcrumb', function(hooks) { assert.ok(hasRecordInallList, 'renders the right inferred name'); assert.ok(hasNewTextInallList, 'renders the right inferred name'); - assert.equal(linkItems.length,0, 'no links rendered',); + assert.equal(linkItems.length, 0, 'no links rendered'); // assert.ok(doesNotHaveRecordInLinkList, 'renders the right inferred name'); // assert.ok(doesNotHaveNewInLinkList, 'renders the right inferred name'); }); diff --git a/tests/acceptance/pods/contact/copy-test.js b/tests/acceptance/pods/contact/copy-test.js index 04b20889f..7e091528b 100644 --- a/tests/acceptance/pods/contact/copy-test.js +++ b/tests/acceptance/pods/contact/copy-test.js @@ -1,16 +1,6 @@ -import { - module, - test -} from 'qunit'; -import { - findAll, - visit, - currentURL, - click -} from '@ember/test-helpers'; -import { - setupApplicationTest -} from 'ember-qunit'; +import { module, test } from 'qunit'; +import { findAll, visit, currentURL, click } from '@ember/test-helpers'; +import { setupApplicationTest } from 'ember-qunit'; import createContact from 'mdeditor/tests/helpers/create-contact'; module('Acceptance | pods/contact copy', function (hooks) { @@ -29,7 +19,11 @@ module('Acceptance | pods/contact copy', function (hooks) { //await settled(); assert.equal(currentURL(), '/contact/' + contact.id); await click('.md-crud-buttons .btn-info'); - assert.equal(findAll('.md-input-input input')[1].value, 'Copy of Contact0', 'created copy'); + assert.equal( + findAll('.md-input-input input')[1].value, + 'Copy of Contact0', + 'created copy', + ); //change route to prevent error during teardown await visit('/'); diff --git a/tests/acceptance/pods/contact/new-test.js b/tests/acceptance/pods/contact/new-test.js index bcb0c3c91..baac2553a 100644 --- a/tests/acceptance/pods/contact/new-test.js +++ b/tests/acceptance/pods/contact/new-test.js @@ -5,21 +5,21 @@ import { find, findAll, fillIn, - click + click, } from '@ember/test-helpers'; import { setupApplicationTest } from 'ember-qunit'; -module('Acceptance | pods/contact/new', function(hooks) { +module('Acceptance | pods/contact/new', function (hooks) { setupApplicationTest(hooks); - test('visiting /pods/contact/new', async function(assert) { + test('visiting /pods/contact/new', async function (assert) { await visit('/contact/new'); assert.ok(currentURL().match(/contact\/new\/[a-z0-9]+/)); //change route to prevent error during teardown await visit('/'); }); - test('test new contact initial page conditions', async function(assert) { + test('test new contact initial page conditions', async function (assert) { assert.expect(5); await visit('/contact/new'); assert.ok(find('.x-toggle-component.toggle-off')); @@ -31,7 +31,7 @@ module('Acceptance | pods/contact/new', function(hooks) { await visit('/'); }); - test('test new contact individual', async function(assert) { + test('test new contact individual', async function (assert) { assert.expect(2); await visit('/contact/new'); await fillIn(findAll('.md-input-input input')[1], 'Individual Name'); @@ -42,20 +42,23 @@ module('Acceptance | pods/contact/new', function(hooks) { await visit('/'); }); - test('test new contact organization', async function(assert) { + test('test new contact organization', async function (assert) { assert.expect(4); await visit('/contact/new'); await click('.x-toggle-btn'); await fillIn(findAll('.md-input-input input')[1], 'Organization Name'); assert.ok(find('.x-toggle-component.toggle-on')); assert.equal(findAll('.md-input-input input')[0].value.length, 36); - assert.equal(findAll('.md-input-input input')[1].value, "Organization Name"); + assert.equal( + findAll('.md-input-input input')[1].value, + 'Organization Name', + ); assert.equal(find('button.md-form-save').disabled, false); //change route to prevent error during teardown await visit('/'); }); - test('test new contact missing contact ID', async function(assert) { + test('test new contact missing contact ID', async function (assert) { assert.expect(1); await visit('/contact/new'); await fillIn(findAll('.md-input-input input')[0], ''); diff --git a/tests/acceptance/pods/contacts/contacts-test.js b/tests/acceptance/pods/contacts/contacts-test.js index 4ca923fce..9e7bc1799 100644 --- a/tests/acceptance/pods/contacts/contacts-test.js +++ b/tests/acceptance/pods/contacts/contacts-test.js @@ -1,16 +1,6 @@ -import { - module, - test -} from 'qunit'; -import { - find, - visit, - currentURL, - click -} from '@ember/test-helpers'; -import { - setupApplicationTest -} from 'ember-qunit'; +import { module, test } from 'qunit'; +import { find, visit, currentURL, click } from '@ember/test-helpers'; +import { setupApplicationTest } from 'ember-qunit'; module('Acceptance | pods/contacts', function (hooks) { setupApplicationTest(hooks); @@ -30,7 +20,9 @@ module('Acceptance | pods/contacts', function (hooks) { store.createRecord('contact'); await visit('/contacts'); await click('button.md-button-confirm.btn-danger'); - assert.equal(find('button.md-button-confirm.btn-danger').innerText - .trim(), 'Confirm'); + assert.equal( + find('button.md-button-confirm.btn-danger').innerText.trim(), + 'Confirm', + ); }); }); diff --git a/tests/acceptance/pods/dictionary/copy-test.js b/tests/acceptance/pods/dictionary/copy-test.js index 53598efa3..7ab7dde89 100644 --- a/tests/acceptance/pods/dictionary/copy-test.js +++ b/tests/acceptance/pods/dictionary/copy-test.js @@ -1,16 +1,6 @@ -import { - module, - test -} from 'qunit'; -import { - findAll, - visit, - currentURL, - click -} from '@ember/test-helpers'; -import { - setupApplicationTest -} from 'ember-qunit'; +import { module, test } from 'qunit'; +import { findAll, visit, currentURL, click } from '@ember/test-helpers'; +import { setupApplicationTest } from 'ember-qunit'; import { createDictionary } from 'mdeditor/tests/helpers/create-dictionary'; module('Acceptance | pods/dictionary copy', function (hooks) { @@ -29,7 +19,11 @@ module('Acceptance | pods/dictionary copy', function (hooks) { //await settled(); assert.equal(currentURL(), '/dictionary/' + dictionary.id); await click('.md-crud-buttons .btn-info'); - assert.equal(findAll('.md-input-input input')[0].value, 'Copy of My Dictionary0', 'created copy'); + assert.equal( + findAll('.md-input-input input')[0].value, + 'Copy of My Dictionary0', + 'created copy', + ); //change route to prevent error during teardown await visit('/'); diff --git a/tests/acceptance/pods/dictionary/new-test.js b/tests/acceptance/pods/dictionary/new-test.js index 7667bbc28..596ec4461 100644 --- a/tests/acceptance/pods/dictionary/new-test.js +++ b/tests/acceptance/pods/dictionary/new-test.js @@ -1,26 +1,19 @@ import { module, test } from 'qunit'; -import { - visit, - currentURL, - find, - findAll, - fillIn -} from '@ember/test-helpers'; +import { visit, currentURL, find, findAll, fillIn } from '@ember/test-helpers'; import { setupApplicationTest } from 'ember-qunit'; import { selectChoose } from 'ember-power-select/test-support'; - -module('Acceptance | pods/dictionary/new', function(hooks) { +module('Acceptance | pods/dictionary/new', function (hooks) { setupApplicationTest(hooks); - test('visiting /pods/dictionary/new', async function(assert) { + test('visiting /pods/dictionary/new', async function (assert) { await visit('/dictionary/new'); assert.ok(currentURL().match(/dictionary\/new\/[a-z0-9]+/)); //change route to prevent error during teardown await visit('/'); }); - test('test new dictionary initial page conditions', async function(assert) { + test('test new dictionary initial page conditions', async function (assert) { assert.expect(4); await visit('/dictionary/new'); assert.equal(find('.md-input-input input').value, ''); @@ -31,7 +24,7 @@ module('Acceptance | pods/dictionary/new', function(hooks) { await visit('/'); }); - test('test new dictionary completed form', async function(assert) { + test('test new dictionary completed form', async function (assert) { assert.expect(4); await visit('/dictionary/new'); await fillIn('.md-input-input input', 'Dictionary Name'); @@ -44,7 +37,7 @@ module('Acceptance | pods/dictionary/new', function(hooks) { await visit('/'); }); - test('test new dictionary missing dictionary name', async function(assert) { + test('test new dictionary missing dictionary name', async function (assert) { assert.expect(2); await visit('/dictionary/new'); await selectChoose('div.md-select', 'aggregate'); @@ -54,7 +47,7 @@ module('Acceptance | pods/dictionary/new', function(hooks) { await visit('/'); }); - test('test new dictionary missing data resource type', async function(assert) { + test('test new dictionary missing data resource type', async function (assert) { assert.expect(2); await visit('/dictionary/new'); await fillIn('.md-input-input input', 'Dictionary Name'); diff --git a/tests/acceptance/pods/record/copy-test.js b/tests/acceptance/pods/record/copy-test.js index cba8b16c0..5f4d5ee6a 100644 --- a/tests/acceptance/pods/record/copy-test.js +++ b/tests/acceptance/pods/record/copy-test.js @@ -3,34 +3,33 @@ import { visit, currentURL } from '@ember/test-helpers'; import { setupApplicationTest } from 'ember-qunit'; import { createRecord, - createCoverageDescription + createCoverageDescription, } from 'mdeditor/tests/helpers/create-record'; import createContact from 'mdeditor/tests/helpers/create-contact'; import { lsClean } from 'mdeditor/tests/helpers/md-helpers'; - -module('Acceptance | raster view', function(hooks) { +module('Acceptance | raster view', function (hooks) { setupApplicationTest(hooks); hooks.afterEach(function () { lsClean(); }); - skip('visiting /raster', async function(assert) { - let json = createRecord(1)[0] + skip('visiting /raster', async function (assert) { + let json = createRecord(1)[0]; - let contact = createContact(2) - json.json.contact = contact + let contact = createContact(2); + json.json.contact = contact; let coverageDescription = createCoverageDescription(1); json.json.metadata.resourceInfo.coverageDescription = coverageDescription; - let store = this.owner.lookup('service:store') - let record = store.createRecord('record', json) - record.save() + let store = this.owner.lookup('service:store'); + let record = store.createRecord('record', json); + record.save(); await visit(`/record/${record.id}/edit`); - assert.equal(currentURL(), `/record/${record.id}/edit`) - }) + assert.equal(currentURL(), `/record/${record.id}/edit`); + }); // need to figure out why the Promise is being rejected when asserting the currentURL // is equal to asyny helper diff --git a/tests/acceptance/pods/record/new-test.js b/tests/acceptance/pods/record/new-test.js index 194ce53a0..c05bead22 100644 --- a/tests/acceptance/pods/record/new-test.js +++ b/tests/acceptance/pods/record/new-test.js @@ -1,33 +1,30 @@ import { module, test } from 'qunit'; -import { - visit, - currentURL, - find, - findAll, - fillIn -} from '@ember/test-helpers'; +import { visit, currentURL, find, findAll, fillIn } from '@ember/test-helpers'; import { setupApplicationTest } from 'ember-qunit'; import { selectChoose } from 'ember-power-select/test-support'; -module('Acceptance | pods/record/new', function(hooks) { +module('Acceptance | pods/record/new', function (hooks) { setupApplicationTest(hooks); - test('visiting /pods/record/new', async function(assert) { + test('visiting /pods/record/new', async function (assert) { await visit('/record/new'); assert.ok(currentURL().match(/record\/new\/[a-z0-9]+/)); }); - test('test new metadata record initial page conditions', async function(assert) { + test('test new metadata record initial page conditions', async function (assert) { assert.expect(3); await visit('/record/new'); assert.equal(findAll('.md-input-input input')[0].value, ''); - assert.equal(find('.md-select').innerText.trim(), 'Choose type of resource'); + assert.equal( + find('.md-select').innerText.trim(), + 'Choose type of resource', + ); assert.equal(find('button.md-form-save').disabled, true); //change route to prevent error during teardown await visit('/'); }); - test('test new metadata record completed form', async function(assert) { + test('test new metadata record completed form', async function (assert) { assert.expect(3); await visit('/record/new'); await fillIn(findAll('.md-input-input input')[0], 'Record Title'); @@ -39,7 +36,7 @@ module('Acceptance | pods/record/new', function(hooks) { await visit('/'); }); - test('test new metadata record missing record title', async function(assert) { + test('test new metadata record missing record title', async function (assert) { assert.expect(1); await visit('/record/new'); await selectChoose('.md-select', 'attribute'); @@ -48,7 +45,7 @@ module('Acceptance | pods/record/new', function(hooks) { await visit('/'); }); - test('test new metadata record missing data record type (scope)', async function(assert) { + test('test new metadata record missing data record type (scope)', async function (assert) { assert.expect(2); await visit('/record/new'); await fillIn(findAll('.md-input-input input')[1], 'Record Title'); diff --git a/tests/helpers/create-citation.js b/tests/helpers/create-citation.js index 632079167..0219b8211 100644 --- a/tests/helpers/create-citation.js +++ b/tests/helpers/create-citation.js @@ -1,89 +1,95 @@ import EmberObject from '@ember/object'; export default function createCitation(total) { - const citations = []; - for(let i = 0; i < total; i++) { - + for (let i = 0; i < total; i++) { const citation = EmberObject.create({ - "title": "title" + i, - "alternateTitle": [ - "alternateTitle0", - "alternateTitle1" - ], - "date": [{ - "date": "2016-10-13", - "dateType": "dateType" + title: 'title' + i, + alternateTitle: ['alternateTitle0', 'alternateTitle1'], + date: [ + { + date: '2016-10-13', + dateType: 'dateType', }, { - "date": "2016-10-22", - "dateType": "dateType" - } + date: '2016-10-22', + dateType: 'dateType', + }, ], - "edition": "edition", - "responsibleParty": [{ - "role": "role", - "roleExtent": [{ - "temporalExtent": [{ - "timePeriod": { - "startDateTime": "2016-10-24T11:10:15.2-10:00" - } - }] - }], - "party": [{ - "contactId": "individualId0" - }] + edition: 'edition', + responsibleParty: [ + { + role: 'role', + roleExtent: [ + { + temporalExtent: [ + { + timePeriod: { + startDateTime: '2016-10-24T11:10:15.2-10:00', + }, + }, + ], + }, + ], + party: [ + { + contactId: 'individualId0', + }, + ], }, { - "role": "role", - "roleExtent": [{ - "temporalExtent": [{ - "timePeriod": { - "startDateTime": "2016-10-24T11:10:15.2-10:00" - } - }] - }], - "party": [{ - "contactId": "individualId0" - }] - } - ], - "presentationForm": [ - "presentationForm0", - "presentationForm1" + role: 'role', + roleExtent: [ + { + temporalExtent: [ + { + timePeriod: { + startDateTime: '2016-10-24T11:10:15.2-10:00', + }, + }, + ], + }, + ], + party: [ + { + contactId: 'individualId0', + }, + ], + }, ], - "identifier": [{ - "identifier": "identifier" + i, - "authority": { - "title": "title" - } + presentationForm: ['presentationForm0', 'presentationForm1'], + identifier: [ + { + identifier: 'identifier' + i, + authority: { + title: 'title', + }, }, { - "identifier": "identifier-" + i - } + identifier: 'identifier-' + i, + }, ], - "series": { - "seriesName": "seriesName" + series: { + seriesName: 'seriesName', }, - "otherCitationDetails": [ - "otherCitationDetails0", - "otherCitationDetails1" - ], - "onlineResource": [{ - "uri": "http://adiwg.org" + otherCitationDetails: ['otherCitationDetails0', 'otherCitationDetails1'], + onlineResource: [ + { + uri: 'http://adiwg.org', }, { - "uri": "http://mdeditor.org" - } + uri: 'http://mdeditor.org', + }, ], - "graphic": [{ - "fileName": "fileName" + graphic: [ + { + fileName: 'fileName', }, { - "fileName": "fileName" - } - ] + fileName: 'fileName', + }, + ], }); citations.push(citation); diff --git a/tests/helpers/create-contact.js b/tests/helpers/create-contact.js index 9cf05cfc4..e8ba35288 100644 --- a/tests/helpers/create-contact.js +++ b/tests/helpers/create-contact.js @@ -1,32 +1,27 @@ import EmberObject from '@ember/object'; export default function createContact(total) { - const contacts = []; - for(let i = 0; i < total; i++) { - + for (let i = 0; i < total; i++) { const contact = EmberObject.create({ - json: { - "contactId": i, - "isOrganization": false, - "name": "Contact" + i, - "positionName": null, - "phoneBook": [], - "address": {}, - "onlineResource": [], - "contactInstructions": null + contactId: i, + isOrganization: false, + name: 'Contact' + i, + positionName: null, + phoneBook: [], + address: {}, + onlineResource: [], + contactInstructions: null, }, title: 'Contact' + i, icon: 'user', - contactId: i + contactId: i, }); contacts.push(contact); - } return contacts; - } diff --git a/tests/helpers/create-dictionary.js b/tests/helpers/create-dictionary.js index e0240a14b..984b38f6d 100644 --- a/tests/helpers/create-dictionary.js +++ b/tests/helpers/create-dictionary.js @@ -1,142 +1,121 @@ import EmberObject from '@ember/object'; let createDictionary = function (total) { - const dictionaries = []; - for(let i = 0; i < total; i++) { - + for (let i = 0; i < total; i++) { const dictionary = EmberObject.create({ - json: { - "dataDictionary": { - "citation": { - "title": "My Dictionary" + i, - "date": [{ - "date": new Date() - .toISOString(), - "dateType": "creation" - }] + dataDictionary: { + citation: { + title: 'My Dictionary' + i, + date: [ + { + date: new Date().toISOString(), + dateType: 'creation', + }, + ], }, - "description": "Data dictionary." + i, + description: 'Data dictionary.' + i, subject: [], responsibleParty: {}, domain: createDomain(2), - entity: createEntity(2) + entity: createEntity(2), }, }, title: 'My Dictionary' + i, - icon: 'book' + icon: 'book', }); dictionaries.push(dictionary); - } return dictionaries; - }; let createDomain = function (total) { - const domains = []; - for(let i = 0; i < total; i++) { - + for (let i = 0; i < total; i++) { const domain = EmberObject.create({ - "domainId": "domainId" + i, - "commonName": "commonName" + i, - "codeName": "codeName" + i, - "description": "description" + i, - "domainItem": [{ - "name": "name" + i, - "value": "value" + i, - "definition": "definition" + i - }] + domainId: 'domainId' + i, + commonName: 'commonName' + i, + codeName: 'codeName' + i, + description: 'description' + i, + domainItem: [ + { + name: 'name' + i, + value: 'value' + i, + definition: 'definition' + i, + }, + ], }); domains.push(domain); - } return domains; - }; let createAttribute = function (total) { - const attributes = []; - for(let i = 0; i < total; i++) { - + for (let i = 0; i < total; i++) { const attribute = EmberObject.create({ - "commonName": "attributeCommonName" + i, - "codeName": "attributeCodeName0-" + i, - "alias": [ - "attributeAlias0-" + i - ], - "definition": "definition" + i, - "dataType": "dataType" + i, - "allowNull": true, - "units": "units" + i, - "domainId": "domainId" + i, - "minValue": "0" + i, - "maxValue": "99" + commonName: 'attributeCommonName' + i, + codeName: 'attributeCodeName0-' + i, + alias: ['attributeAlias0-' + i], + definition: 'definition' + i, + dataType: 'dataType' + i, + allowNull: true, + units: 'units' + i, + domainId: 'domainId' + i, + minValue: '0' + i, + maxValue: '99', }); attributes.push(attribute); - } return attributes; - -} +}; let createEntity = function (total) { - const entities = []; - for(let i = 0; i < total; i++) { - + for (let i = 0; i < total; i++) { const entity = EmberObject.create({ - "entityId": "entityId" + i, - "commonName": "commonName" + i, - "codeName": "codeName" + i, - "alias": [ - "alias0-" + i, - "alias1-" + i, + entityId: 'entityId' + i, + commonName: 'commonName' + i, + codeName: 'codeName' + i, + alias: ['alias0-' + i, 'alias1-' + i], + definition: 'definition' + i, + primaryKeyAttributeCodeName: [ + 'primaryKeyAttributeCodeName0-' + i, + 'primaryKeyAttributeCodeName1-' + i, + ], + index: [ + { + codeName: 'attributeIndex0-' + i, + allowDuplicates: false, + attributeCodeName: ['attributeCodeName0-' + i], + }, ], - "definition": "definition" + i, - "primaryKeyAttributeCodeName": [ - "primaryKeyAttributeCodeName0-" + i, - "primaryKeyAttributeCodeName1-" + i, + attribute: createAttribute(3), + foreignKey: [ + { + localAttributeCodeName: ['attributeCommonName0-' + i], + referencedEntityCodeName: 'referencedEntityCodeName0' + i, + referencedAttributeCodeName: ['referencedAttributeCodeName0-' + i], + }, ], - "index": [{ - "codeName": "attributeIndex0-" + i, - "allowDuplicates": false, - "attributeCodeName": [ - "attributeCodeName0-" + i - ] - }], - "attribute": createAttribute(3), - "foreignKey": [{ - "localAttributeCodeName": [ - "attributeCommonName0-" + i - ], - "referencedEntityCodeName": "referencedEntityCodeName0" + i, - "referencedAttributeCodeName": [ - "referencedAttributeCodeName0-" + i - ] - }], - "fieldSeparatorCharacter": ",", - "numberOfHeaderLines": 9, - "quoteCharacter": "\"" + fieldSeparatorCharacter: ',', + numberOfHeaderLines: 9, + quoteCharacter: '"', }); entities.push(entity); - } return entities; - }; export { createDomain, createEntity, createAttribute, createDictionary }; diff --git a/tests/helpers/create-extent.js b/tests/helpers/create-extent.js index e5abec37a..3c353e3b8 100644 --- a/tests/helpers/create-extent.js +++ b/tests/helpers/create-extent.js @@ -1,92 +1,85 @@ import EmberObject from '@ember/object'; export default function createExtent(total) { - const contacts = []; - for(let i = 0; i < total; i++) { - + for (let i = 0; i < total; i++) { const contact = EmberObject.create({ - "description": "description" + i, - "geographicExtent": [{ - "description": "description" + i, - "boundingBox": { - "westLongitude": -87.52179241764053, - "eastLongitude": -85.30119385960293, - "southLatitude": 29.640690610830635, - "northLatitude": 30.42485959910817 + description: 'description' + i, + geographicExtent: [ + { + description: 'description' + i, + boundingBox: { + westLongitude: -87.52179241764053, + eastLongitude: -85.30119385960293, + southLatitude: 29.640690610830635, + northLatitude: 30.42485959910817, }, - "containsData": false, - "geographicElement": [{ - "type": "Point", - "coordinates": [ - 100, - 0 - ] + containsData: false, + geographicElement: [ + { + type: 'Point', + coordinates: [100, 0], }, { - "type": "LineString", - "coordinates": [ - [ - 100, 0 - ], - [ - 101, 1 - ] - ] - } - ] + type: 'LineString', + coordinates: [ + [100, 0], + [101, 1], + ], + }, + ], }, { - "geographicElement": [{ - "type": "Point", - "coordinates": [ - 100, 0 - ] - }] - } + geographicElement: [ + { + type: 'Point', + coordinates: [100, 0], + }, + ], + }, ], - "temporalExtent": [{ - "timeInstant": { - "description": "description" + i, - "dateTime": "2016-10-24T11:10:15.2-10:00" - } + temporalExtent: [ + { + timeInstant: { + description: 'description' + i, + dateTime: '2016-10-24T11:10:15.2-10:00', + }, }, { - "timePeriod": { - "description": "description" + i, - "startDateTime": "2016-10-24T11:10:15.2-10:00" - } - } + timePeriod: { + description: 'description' + i, + startDateTime: '2016-10-24T11:10:15.2-10:00', + }, + }, ], - "verticalExtent": [{ - "description": "description" + i, - "minValue": 9.9, - "maxValue": 9.9, - "crsId": { - "referenceSystemType": "referenceSystemType", - "referenceSystemIdentifier": { - "identifier": "identifier" - } - } + verticalExtent: [ + { + description: 'description' + i, + minValue: 9.9, + maxValue: 9.9, + crsId: { + referenceSystemType: 'referenceSystemType', + referenceSystemIdentifier: { + identifier: 'identifier', + }, + }, }, { - "minValue": 9.9, - "maxValue": 9.9, - "crsId": { - "referenceSystemType": "referenceSystemType", - "referenceSystemIdentifier": { - "identifier": "identifier" - } - } - } - ] + minValue: 9.9, + maxValue: 9.9, + crsId: { + referenceSystemType: 'referenceSystemType', + referenceSystemIdentifier: { + identifier: 'identifier', + }, + }, + }, + ], }); contacts.push(contact); - } return contacts; - } diff --git a/tests/helpers/create-identifier.js b/tests/helpers/create-identifier.js index d1faf0c34..e0ef82b02 100644 --- a/tests/helpers/create-identifier.js +++ b/tests/helpers/create-identifier.js @@ -1,19 +1,17 @@ import EmberObject from '@ember/object'; export default function createIdentifier(total) { - const identifiers = []; - for(let i = 0; i < total; i++) { - + for (let i = 0; i < total; i++) { const identifier = EmberObject.create({ - "identifier": "identifier" + i, - "namespace": "namespace" + i, - "version": "version" + i, - "description": "description" + i, - "authority": { - "title": "title" + i - } + identifier: 'identifier' + i, + namespace: 'namespace' + i, + version: 'version' + i, + description: 'description' + i, + authority: { + title: 'title' + i, + }, }); identifiers.push(identifier); diff --git a/tests/helpers/create-map-layer.js b/tests/helpers/create-map-layer.js index 922ca22f1..bc69733e9 100644 --- a/tests/helpers/create-map-layer.js +++ b/tests/helpers/create-map-layer.js @@ -1,30 +1,26 @@ import EmberObject from '@ember/object'; export default function createMapLayer(total) { - const layers = { type: 'FeatureCollection', - features: [] + features: [], }; - for(let i = 1; i < (total + 1); i++) { - + for (let i = 1; i < total + 1; i++) { const layer = EmberObject.create({ type: 'Feature', id: i, geometry: { type: 'Point', - coordinates: [-104.99404, 39.75621 + i] + coordinates: [-104.99404, 39.75621 + i], }, properties: { - name: `Feature ` + i - } + name: `Feature ` + i, + }, }); layers.features.push(layer); - } return layers; - } diff --git a/tests/helpers/create-profile.js b/tests/helpers/create-profile.js index e5999997c..ef739e20d 100644 --- a/tests/helpers/create-profile.js +++ b/tests/helpers/create-profile.js @@ -1,119 +1,117 @@ import EmberObject from '@ember/object'; export default function createProfile(total) { - const profiles = []; - for(let i = 0; i < total; i++) { - + for (let i = 0; i < total; i++) { const profile = EmberObject.create({ - "uri": "https://jlblcc.github.io/test-profile/profiles/minimal.json", - "alias": 'My alias' + i, - "altDescription": 'alternate decscription' + i, - "remoteVersion": "0.0.1", + uri: 'https://jlblcc.github.io/test-profile/profiles/minimal.json', + alias: 'My alias' + i, + altDescription: 'alternate decscription' + i, + remoteVersion: '0.0.1', components: { - "record": { - "main": { - "recordId": false, - "purpose": false, - "environmentDescription": false, - "supplementalInfo": false, - "credit": false, - "timePeriod": { - "id": false, - "description": false, - "periodName": false, - "duration": false, - "interval": false + record: { + main: { + recordId: false, + purpose: false, + environmentDescription: false, + supplementalInfo: false, + credit: false, + timePeriod: { + id: false, + description: false, + periodName: false, + duration: false, + interval: false, }, - "citation": { - "edition": false, - "onlineResource": { - "protocol": false + citation: { + edition: false, + onlineResource: { + protocol: false, }, - "presentationForm": false, - "otherCitationDetails": false, - "graphic": false, - "series": false, - "identifier": false, - "graphicOverview": false + presentationForm: false, + otherCitationDetails: false, + graphic: false, + series: false, + identifier: false, + graphicOverview: false, }, - "graphicOverview": false + graphicOverview: false, }, - "metadata": { - "identifier": { - "identifier": true, - "namespace": true, - "version": false, - "description": false, - "authority": false + metadata: { + identifier: { + identifier: true, + namespace: true, + version: false, + description: false, + authority: false, }, - "parentMetadata": false, - "alternateMetadataReference": false, - "defaultLocale": false, - "maintenance": false - } - } + parentMetadata: false, + alternateMetadataReference: false, + defaultLocale: false, + maintenance: false, + }, + }, }, - description: "A Minimalist Profile" + i, + description: 'A Minimalist Profile' + i, hasUpdate: true, - identifier: "minimal", - localVersion: "0.0.0", - namespace: "org.adiwg.profile", + identifier: 'minimal', + localVersion: '0.0.0', + namespace: 'org.adiwg.profile', nav: { - "record": [{ - "title": "Basic Info", - "target": "record.show.edit.main", - "tip": "This is a customized tip." + record: [ + { + title: 'Basic Info', + target: 'record.show.edit.main', + tip: 'This is a customized tip.', }, { - "title": "About Metadata", - "target": "record.show.edit.metadata", - "tip": "Information about the metadata for the resource." + title: 'About Metadata', + target: 'record.show.edit.metadata', + tip: 'Information about the metadata for the resource.', }, { - "title": "Keywords", - "target": "record.show.edit.keywords", - "tip": "Terms used to describe the resource." + title: 'Keywords', + target: 'record.show.edit.keywords', + tip: 'Terms used to describe the resource.', }, { - "title": "Boundaries", - "target": "record.show.edit.extent", - "tip": "Information describing the bounds of the resource." + title: 'Boundaries', + target: 'record.show.edit.extent', + tip: 'Information describing the bounds of the resource.', }, { - "title": "Distribution", - "target": "record.show.edit.distribution", - "tip": "Information about obtaining the resource." - } + title: 'Distribution', + target: 'record.show.edit.distribution', + tip: 'Information about obtaining the resource.', + }, ], - "dictionary": [{ - "title": "Main", - "target": "dictionary.show.edit.index", - "tip": "Basic information about the dictionary." + dictionary: [ + { + title: 'Main', + target: 'dictionary.show.edit.index', + tip: 'Basic information about the dictionary.', }, { - "title": "Citation", - "target": "dictionary.show.edit.citation", - "tip": "The citation for the dictionary." + title: 'Citation', + target: 'dictionary.show.edit.citation', + tip: 'The citation for the dictionary.', }, { - "title": "Tables", - "target": "dictionary.show.edit.entity", - "tip": "Information about entities(tables) and attributes(columns or fields)." - } - ] + title: 'Tables', + target: 'dictionary.show.edit.entity', + tip: 'Information about entities(tables) and attributes(columns or fields).', + }, + ], }, - title: "Minimal", + title: 'Minimal', config: JSON.parse( - "{\"identifier\":\"minimal\",\"namespace\":\"org.adiwg.profile\",\"alternateId\":[],\"title\":\"Minimal\",\"description\":\"A Minimalist Profile\",\"version\":\"0.0.0\",\"components\":{\"record\":{\"main\":{\"recordId\":false,\"purpose\":false,\"environmentDescription\":false,\"supplementalInfo\":false,\"credit\":false,\"timePeriod\":{\"id\":false,\"description\":false,\"periodName\":false,\"duration\":false,\"interval\":false},\"citation\":{\"edition\":false,\"onlineResource\":{\"protocol\":false},\"presentationForm\":false,\"otherCitationDetails\":false,\"graphic\":false,\"series\":false,\"identifier\":false,\"graphicOverview\":false},\"graphicOverview\":false},\"metadata\":{\"identifier\":{\"identifier\":true,\"namespace\":true,\"version\":false,\"description\":false,\"authority\":false},\"parentMetadata\":false,\"alternateMetadataReference\":false,\"defaultLocale\":false,\"maintenance\":false}}},\"nav\":{\"record\":[{\"title\":\"Basic Info\",\"target\":\"record.show.edit.main\",\"tip\":\"This is a customized tip.\"},{\"title\":\"About Metadata\",\"target\":\"record.show.edit.metadata\",\"tip\":\"Information about the metadata for the resource.\"},{\"title\":\"Keywords\",\"target\":\"record.show.edit.keywords\",\"tip\":\"Terms used to describe the resource.\"},{\"title\":\"Boundaries\",\"target\":\"record.show.edit.extent\",\"tip\":\"Information describing the bounds of the resource.\"},{\"title\":\"Distribution\",\"target\":\"record.show.edit.distribution\",\"tip\":\"Information about obtaining the resource.\"}],\"dictionary\":[{\"title\":\"Main\",\"target\":\"dictionary.show.edit.index\",\"tip\":\"Basic information about the dictionary.\"},{\"title\":\"Citation\",\"target\":\"dictionary.show.edit.citation\",\"tip\":\"The citation for the dictionary.\"},{\"title\":\"Tables\",\"target\":\"dictionary.show.edit.entity\",\"tip\":\"Information about entities(tables) and attributes(columns or fields).\"}]}}" - ) + '{"identifier":"minimal","namespace":"org.adiwg.profile","alternateId":[],"title":"Minimal","description":"A Minimalist Profile","version":"0.0.0","components":{"record":{"main":{"recordId":false,"purpose":false,"environmentDescription":false,"supplementalInfo":false,"credit":false,"timePeriod":{"id":false,"description":false,"periodName":false,"duration":false,"interval":false},"citation":{"edition":false,"onlineResource":{"protocol":false},"presentationForm":false,"otherCitationDetails":false,"graphic":false,"series":false,"identifier":false,"graphicOverview":false},"graphicOverview":false},"metadata":{"identifier":{"identifier":true,"namespace":true,"version":false,"description":false,"authority":false},"parentMetadata":false,"alternateMetadataReference":false,"defaultLocale":false,"maintenance":false}}},"nav":{"record":[{"title":"Basic Info","target":"record.show.edit.main","tip":"This is a customized tip."},{"title":"About Metadata","target":"record.show.edit.metadata","tip":"Information about the metadata for the resource."},{"title":"Keywords","target":"record.show.edit.keywords","tip":"Terms used to describe the resource."},{"title":"Boundaries","target":"record.show.edit.extent","tip":"Information describing the bounds of the resource."},{"title":"Distribution","target":"record.show.edit.distribution","tip":"Information about obtaining the resource."}],"dictionary":[{"title":"Main","target":"dictionary.show.edit.index","tip":"Basic information about the dictionary."},{"title":"Citation","target":"dictionary.show.edit.citation","tip":"The citation for the dictionary."},{"title":"Tables","target":"dictionary.show.edit.entity","tip":"Information about entities(tables) and attributes(columns or fields)."}]}}', + ), }); profiles.push(profile); - } return profiles; - } diff --git a/tests/helpers/create-record.js b/tests/helpers/create-record.js index a081a40d5..8a3c9a02b 100644 --- a/tests/helpers/create-record.js +++ b/tests/helpers/create-record.js @@ -1,138 +1,135 @@ import EmberObject from '@ember/object'; let createRecord = (total) => { - const records = []; - for(let i = 0; i < total; i++) { - + for (let i = 0; i < total; i++) { const record = EmberObject.create({ - json: { schema: { name: 'mdJson', - version: '2.7.0' + version: '2.7.0', }, - "metadata": { - "metadataInfo": { - "metadataIdentifier": { - "identifier": 'r' +i, - "type": "uuid" - } + metadata: { + metadataInfo: { + metadataIdentifier: { + identifier: 'r' + i, + type: 'uuid', + }, }, - "associatedResource": [], - "resourceInfo": { - "resourceType": [{ - "type": "project" - }], - "citation": { - "title": "My Record"+ i, - "date": [{ - "date": new Date() - .toISOString(), - "dateType": "creation" - }] + associatedResource: [], + resourceInfo: { + resourceType: [ + { + type: 'project', + }, + ], + citation: { + title: 'My Record' + i, + date: [ + { + date: new Date().toISOString(), + dateType: 'creation', + }, + ], }, - "pointOfContact": [{ - "role": "administrator", - }], - "pointOfrecord": [], - "abstract": "An abstract.", - "status": ["completed"], - "language": ["eng; USA"] + pointOfContact: [ + { + role: 'administrator', + }, + ], + pointOfrecord: [], + abstract: 'An abstract.', + status: ['completed'], + language: ['eng; USA'], }, - "resourceDistribution":[] - } + resourceDistribution: [], + }, }, title: 'My Record' + i, - icon: 'project' + icon: 'project', }); records.push(record); - } return records; - }; let createCoverageDescription = (total) => { - const coverageDescriptions = []; for (let i = 0; i < total; i++) { - const coverageDescription = EmberObject.create({ - - "coverageName": "coverageName" + i, - "coverageDescription": "coverageDescription" + i, - "attributeGroup": [{ - "attributeContentType": ["attributeContentType" + i], - "attribute": createAttribute(1).attributeDescription - }], - "processingLevelCode": { - "identifier": "identifier" + i, - "namespace": "namespace" + i + coverageName: 'coverageName' + i, + coverageDescription: 'coverageDescription' + i, + attributeGroup: [ + { + attributeContentType: ['attributeContentType' + i], + attribute: createAttribute(1).attributeDescription, + }, + ], + processingLevelCode: { + identifier: 'identifier' + i, + namespace: 'namespace' + i, }, - "imageDescription": { - "illuminationElevationAngle": i.toString(), - "illuminationAzimuthAngle": i.toString(), - "imagingCondition": "imagingCondition" + i, - "imageQualityCode": { - "identifier": "identifier" + i, - "namespace": "namespace" + i + imageDescription: { + illuminationElevationAngle: i.toString(), + illuminationAzimuthAngle: i.toString(), + imagingCondition: 'imagingCondition' + i, + imageQualityCode: { + identifier: 'identifier' + i, + namespace: 'namespace' + i, }, - "cloudCoverPercent": i.toString(), - "compressionQuantity": i.toString(), - "triangulationIndicator": true, - "radiometricCalibrationAvailable": false, - "cameraCalibrationAvailable": true, - "filmDistortionAvailable": false, - "lensDistortionAvailable": false - } + cloudCoverPercent: i.toString(), + compressionQuantity: i.toString(), + triangulationIndicator: true, + radiometricCalibrationAvailable: false, + cameraCalibrationAvailable: true, + filmDistortionAvailable: false, + lensDistortionAvailable: false, + }, }); coverageDescriptions.push(coverageDescription); } return coverageDescriptions; - }; let createAttribute = (total) => { - const attributes = []; for (var i = 0; i < total; i++) { - const attribute = EmberObject.create({ - - "attributeDescription" : "attributeDescription" + i, - "attributeIdentifier": [{ - "identifier": "identifier" + i, - "namespace": "namespace" + i - }], - "bandBoundaryDefinition": ["bandBoundaryDefinition" + i], - "transferFunctionType": ["transferFunctionType" + i], - "transmittedPolarization": ["transmittedPolarization" + i], - "detectedPolarization": ["detectedPolarization" + i], - "sequenceIdentifier": "sequenceIdentifier" + i, - "sequenceIdentifierType": "sequenceIdentifierType" + i, - "minValue": i.toString(), - "maxValue": i.toString(), - "units": "units" + i, - "scaleFactor": i.toString(), - "offset": i.toString(), - "meanValue": i.toString(), - "numberOfValues": i.toString(), - "standardDeviation": i.toString(), - "bitsPerValue": i.toString(), - "boundMin": i.toString(), - "boundMax": i.toString(), - "boundUnits": i.toString(), - "peakResponse": i.toString(), - "toneGradations": i.toString(), - "nominalSpatialResolution": i.toString() + attributeDescription: 'attributeDescription' + i, + attributeIdentifier: [ + { + identifier: 'identifier' + i, + namespace: 'namespace' + i, + }, + ], + bandBoundaryDefinition: ['bandBoundaryDefinition' + i], + transferFunctionType: ['transferFunctionType' + i], + transmittedPolarization: ['transmittedPolarization' + i], + detectedPolarization: ['detectedPolarization' + i], + sequenceIdentifier: 'sequenceIdentifier' + i, + sequenceIdentifierType: 'sequenceIdentifierType' + i, + minValue: i.toString(), + maxValue: i.toString(), + units: 'units' + i, + scaleFactor: i.toString(), + offset: i.toString(), + meanValue: i.toString(), + numberOfValues: i.toString(), + standardDeviation: i.toString(), + bitsPerValue: i.toString(), + boundMin: i.toString(), + boundMax: i.toString(), + boundUnits: i.toString(), + peakResponse: i.toString(), + toneGradations: i.toString(), + nominalSpatialResolution: i.toString(), }); attributes.push(attribute); @@ -141,5 +138,4 @@ let createAttribute = (total) => { return attributes; }; - export { createRecord, createCoverageDescription, createAttribute }; diff --git a/tests/helpers/create-taxonomy.js b/tests/helpers/create-taxonomy.js index e7bde6564..935e4b78b 100644 --- a/tests/helpers/create-taxonomy.js +++ b/tests/helpers/create-taxonomy.js @@ -1,327 +1,396 @@ export default function createTaxonomy() { - - const taxonomies = [{ - "taxonomicClassification": [{ - "taxonomicSystemId": "555705", - "taxonomicLevel": "Kingdom", - "taxonomicName": "Fungi", - "subClassification": [{ - "taxonomicSystemId": "936287", - "taxonomicLevel": "Subkingdom", - "taxonomicName": "Dikarya", - "subClassification": [{ - "taxonomicSystemId": "623881", - "taxonomicLevel": "Division", - "taxonomicName": "Basidiomycota", - "isITIS": true - }], - "isITIS": true - }], - "isITIS": true, - "commonName": ["Kingdom"] + const taxonomies = [ + { + taxonomicClassification: [ + { + taxonomicSystemId: '555705', + taxonomicLevel: 'Kingdom', + taxonomicName: 'Fungi', + subClassification: [ + { + taxonomicSystemId: '936287', + taxonomicLevel: 'Subkingdom', + taxonomicName: 'Dikarya', + subClassification: [ + { + taxonomicSystemId: '623881', + taxonomicLevel: 'Division', + taxonomicName: 'Basidiomycota', + isITIS: true, + }, + ], + isITIS: true, + }, + ], + isITIS: true, + commonName: ['Kingdom'], }, { - "taxonomicSystemId": "202423", - "taxonomicLevel": "Kingdom", - "taxonomicName": "Animalia", - "subClassification": [{ - "taxonomicSystemId": "914153", - "taxonomicLevel": "Subkingdom", - "taxonomicName": "Radiata", - "subClassification": [{ - "taxonomicSystemId": "48738", - "taxonomicLevel": "Phylum", - "taxonomicName": "Cnidaria", - "subClassification": [{ - "taxonomicSystemId": "718920", - "taxonomicLevel": "Subphylum", - "taxonomicName": "Medusozoa", - "subClassification": [{ - "taxonomicSystemId": "51483", - "taxonomicLevel": "Class", - "taxonomicName": "Scyphozoa", - "subClassification": [{ - "taxonomicSystemId": "718923", - "taxonomicLevel": "Subclass", - "taxonomicName": "Discomedusae", - "subClassification": [{ - "taxonomicSystemId": "51756", - "taxonomicLevel": "Order", - "taxonomicName": "Rhizostomeae", - "subClassification": [{ - "taxonomicSystemId": "51911", - "taxonomicLevel": "Family", - "taxonomicName": "Rhizostomatidae", - "subClassification": [{ - "taxonomicSystemId": "51919", - "taxonomicLevel": "Genus", - "taxonomicName": "Rhopilema", - "subClassification": [{ - "taxonomicSystemId": "51920", - "taxonomicLevel": "Species", - "taxonomicName": "Rhopilema verrilli", - "commonName": [ - "mushroom jellyfish" - ], - "isITIS": true - }], - "isITIS": true - }], - "isITIS": true - }], - "isITIS": true - }], - "isITIS": true - }], - "isITIS": true - }], - "isITIS": true - }], - "isITIS": true - }], - "isITIS": true - }], - "isITIS": true - } - ], - "taxonomicSystem": [{ - "citation": { - "title": "Integrated Taxonomic Information System (ITIS)", - "date": [{ - "date": "2019-02-26", - "dateType": "transmitted", - "description": "Taxa imported from ITIS" - }], - "presentationForm": [ - "webService", - "webSite" + taxonomicSystemId: '202423', + taxonomicLevel: 'Kingdom', + taxonomicName: 'Animalia', + subClassification: [ + { + taxonomicSystemId: '914153', + taxonomicLevel: 'Subkingdom', + taxonomicName: 'Radiata', + subClassification: [ + { + taxonomicSystemId: '48738', + taxonomicLevel: 'Phylum', + taxonomicName: 'Cnidaria', + subClassification: [ + { + taxonomicSystemId: '718920', + taxonomicLevel: 'Subphylum', + taxonomicName: 'Medusozoa', + subClassification: [ + { + taxonomicSystemId: '51483', + taxonomicLevel: 'Class', + taxonomicName: 'Scyphozoa', + subClassification: [ + { + taxonomicSystemId: '718923', + taxonomicLevel: 'Subclass', + taxonomicName: 'Discomedusae', + subClassification: [ + { + taxonomicSystemId: '51756', + taxonomicLevel: 'Order', + taxonomicName: 'Rhizostomeae', + subClassification: [ + { + taxonomicSystemId: '51911', + taxonomicLevel: 'Family', + taxonomicName: 'Rhizostomatidae', + subClassification: [ + { + taxonomicSystemId: '51919', + taxonomicLevel: 'Genus', + taxonomicName: 'Rhopilema', + subClassification: [ + { + taxonomicSystemId: '51920', + taxonomicLevel: 'Species', + taxonomicName: + 'Rhopilema verrilli', + commonName: [ + 'mushroom jellyfish', + ], + isITIS: true, + }, + ], + isITIS: true, + }, + ], + isITIS: true, + }, + ], + isITIS: true, + }, + ], + isITIS: true, + }, + ], + isITIS: true, + }, + ], + isITIS: true, + }, + ], + isITIS: true, + }, + ], + isITIS: true, + }, ], - "otherCitationDetails": [ - "Retrieved from the Integrated Taxonomic Information System on-line database, https://www.itis.gov." + isITIS: true, + }, + ], + taxonomicSystem: [ + { + citation: { + title: 'Integrated Taxonomic Information System (ITIS)', + date: [ + { + date: '2019-02-26', + dateType: 'transmitted', + description: 'Taxa imported from ITIS', + }, + ], + presentationForm: ['webService', 'webSite'], + otherCitationDetails: [ + 'Retrieved from the Integrated Taxonomic Information System on-line database, https://www.itis.gov.', + ], + onlineResource: [ + { + uri: 'https://www.itis.gov', + name: 'ITIS website', + protocol: 'HTTPS', + function: 'information', + description: + 'ITIS contains taxonomic information on plants, animals, fungi, and microbes of North America and the world.', + }, + ], + graphic: [ + { + fileName: 'itis_logo.jpg', + fileType: 'JPEG', + fileUri: [ + { + uri: 'https://itis.gov/Static/images/itis_logo.jpg', + }, + ], + }, + ], + }, + modifications: 'modifications', + }, + ], + observer: [ + { + party: [ + { + contactId: 'CID003', + }, ], - "onlineResource": [{ - "uri": "https://www.itis.gov", - "name": "ITIS website", - "protocol": "HTTPS", - "function": "information", - "description": "ITIS contains taxonomic information on plants, animals, fungi, and microbes of North America and the world." - }], - "graphic": [{ - "fileName": "itis_logo.jpg", - "fileType": "JPEG", - "fileUri": [{ - "uri": "https://itis.gov/Static/images/itis_logo.jpg" - }] - }] + role: 'pointOfContact', }, - modifications: "modifications" - }], - "observer": [{ - "party": [{ - "contactId": "CID003" - }], - "role": "pointOfContact" - }], - "voucher": [{ - "repository": { - "party": [{ - "contactId": "CID003" - }], - "role": "custodian" + ], + voucher: [ + { + repository: { + party: [ + { + contactId: 'CID003', + }, + ], + role: 'custodian', + }, + specimen: 'Specimen', }, - "specimen": "Specimen" - }], - "generalScope": "Scope", - "identificationProcedure": "Id Procedure", - "identificationCompleteness": "Id Completeness" + ], + generalScope: 'Scope', + identificationProcedure: 'Id Procedure', + identificationCompleteness: 'Id Completeness', }, { - "taxonomicSystem": [{ - "citation": { - "title": "ITIS - Integrated Taxonomic Information System", - "alternateTitle": [ - "Citation for ITIS" + taxonomicSystem: [ + { + citation: { + title: 'ITIS - Integrated Taxonomic Information System', + alternateTitle: ['Citation for ITIS'], + date: [ + { + date: '2013-06-22', + dateType: 'publication', + }, + ], + responsibleParty: [ + { + role: 'originator', + party: [ + { + contactId: 'CID004', + }, + ], + }, ], - "date": [{ - "date": "2013-06-22", - "dateType": "publication" - }], - "responsibleParty": [{ - "role": "originator", - "party": [{ - "contactId": "CID004" - }] - }] }, - "modifications": "Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur." + modifications: + 'Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.', }, { - "citation": { - "title": "Some OTHER Taxonomic System", - "date": [{ - "date": "2013-06-22", - "dateType": "publication" - }], - "responsibleParty": [{ - "role": "originator", - "party": [{ - "contactId": "CID004" - }] - }] - } - } + citation: { + title: 'Some OTHER Taxonomic System', + date: [ + { + date: '2013-06-22', + dateType: 'publication', + }, + ], + responsibleParty: [ + { + role: 'originator', + party: [ + { + contactId: 'CID004', + }, + ], + }, + ], + }, + }, ], - "generalScope": "Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.", - "identificationReference": [{ - "title": "citation", - "identifier": [{ - "identifier": "identifier0", - "namespace": "namespace0", - "version": "version0", - "description": "Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.", - "authority": { - "title": "title0", - "date": [{ - "date": "2013-06-22", - "dateType": "publication" - }], - "responsibleParty": [{ - "role": "originator", - "party": [{ - "contactId": "CID004" - }] - }] - } - }] + generalScope: + 'Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.', + identificationReference: [ + { + title: 'citation', + identifier: [ + { + identifier: 'identifier0', + namespace: 'namespace0', + version: 'version0', + description: + 'Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.', + authority: { + title: 'title0', + date: [ + { + date: '2013-06-22', + dateType: 'publication', + }, + ], + responsibleParty: [ + { + role: 'originator', + party: [ + { + contactId: 'CID004', + }, + ], + }, + ], + }, + }, + ], }, { - "title": "citation1", - "identifier": [{ - "identifier": "identifier1", - "namespace": "namespace1", - "version": "version1", - "description": "Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.", - "authority": { - "title": "title1", - "date": [{ - "date": "2013-06-22", - "dateType": "publication" - }], - "responsibleParty": [{ - "role": "originator", - "party": [{ - "contactId": "CID004" - }] - }] - } - }] - } + title: 'citation1', + identifier: [ + { + identifier: 'identifier1', + namespace: 'namespace1', + version: 'version1', + description: + 'Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.', + authority: { + title: 'title1', + date: [ + { + date: '2013-06-22', + dateType: 'publication', + }, + ], + responsibleParty: [ + { + role: 'originator', + party: [ + { + contactId: 'CID004', + }, + ], + }, + ], + }, + }, + ], + }, ], - "observer": [{ - "party": [{ - "contactId": "CID006" + observer: [ + { + party: [ + { + contactId: 'CID006', }, { - "contactId": "CID004" - } + contactId: 'CID004', + }, ], - "role": "coPrincipalInvestigator" + role: 'coPrincipalInvestigator', }, { - "party": [{ - "contactId": "CID001" - }], - "role": "editor" - } + party: [ + { + contactId: 'CID001', + }, + ], + role: 'editor', + }, ], - "identificationProcedure": "Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.", - "identificationCompleteness": "Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.", - "voucher": [{ - "repository": { - "role": "custodian", - "party": [{ - "contactId": "CID002" - }] + identificationProcedure: + 'Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.', + identificationCompleteness: + 'Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.', + voucher: [ + { + repository: { + role: 'custodian', + party: [ + { + contactId: 'CID002', + }, + ], }, - "specimen": "bear claw" + specimen: 'bear claw', }, { - "repository": { - "role": "custodian", - "party": [{ - "contactId": "CID002" - }] + repository: { + role: 'custodian', + party: [ + { + contactId: 'CID002', + }, + ], }, - "specimen": "moose tooth" - } + specimen: 'moose tooth', + }, ], - "taxonomicClassification": [{ - "taxonomicLevel": "taxonomicLevel0", - "taxonomicName": "taxonomicName", - "commonName": [ - "commonName0", - "commonName1" - ], - "subClassification": [{ - "taxonomicSystemId": "taxonomicSystemId00", - "taxonomicLevel": "taxonomicLevel00", - "taxonomicName": "taxonomicName", - "commonName": [ - "commonName0", - "commonName1" + taxonomicClassification: [ + { + taxonomicLevel: 'taxonomicLevel0', + taxonomicName: 'taxonomicName', + commonName: ['commonName0', 'commonName1'], + subClassification: [ + { + taxonomicSystemId: 'taxonomicSystemId00', + taxonomicLevel: 'taxonomicLevel00', + taxonomicName: 'taxonomicName', + commonName: ['commonName0', 'commonName1'], + subClassification: [ + { + taxonomicLevel: 'taxonomicLevel000', + taxonomicName: 'taxonomicName', + commonName: ['commonName0', 'commonName1'], + subClassification: [ + { + taxonomicSystemId: 'taxonomicSystemId0000.1', + taxonomicLevel: 'taxonomicLevel0000.1', + taxonomicName: 'taxonomicName', + commonName: ['commonName0', 'commonName1'], + }, + { + taxonomicSystemId: 'taxonomicSystemId0000.2', + taxonomicLevel: 'taxonomicLevel0000.2', + taxonomicName: 'taxonomicName', + commonName: ['commonName0', 'commonName1'], + }, + ], + }, ], - "subClassification": [{ - "taxonomicLevel": "taxonomicLevel000", - "taxonomicName": "taxonomicName", - "commonName": [ - "commonName0", - "commonName1" - ], - "subClassification": [{ - "taxonomicSystemId": "taxonomicSystemId0000.1", - "taxonomicLevel": "taxonomicLevel0000.1", - "taxonomicName": "taxonomicName", - "commonName": [ - "commonName0", - "commonName1" - ] - }, - { - "taxonomicSystemId": "taxonomicSystemId0000.2", - "taxonomicLevel": "taxonomicLevel0000.2", - "taxonomicName": "taxonomicName", - "commonName": [ - "commonName0", - "commonName1" - ] - } - ] - }] }, { - "taxonomicLevel": "taxonomicLevel01", - "taxonomicName": "taxonomicName", - "commonName": [ - "commonName0", - "commonName1" + taxonomicLevel: 'taxonomicLevel01', + taxonomicName: 'taxonomicName', + commonName: ['commonName0', 'commonName1'], + subClassification: [ + { + taxonomicLevel: 'taxonomicLevel010', + taxonomicName: 'taxonomicName', + commonName: ['commonName0', 'commonName1'], + }, ], - "subClassification": [{ - "taxonomicLevel": "taxonomicLevel010", - "taxonomicName": "taxonomicName", - "commonName": [ - "commonName0", - "commonName1" - ] - }] - } - ] + }, + ], }, { - "taxonomicLevel": "taxonomicLevel0201", - "taxonomicName": "taxonomicName" - } - ] - } + taxonomicLevel: 'taxonomicLevel0201', + taxonomicName: 'taxonomicName', + }, + ], + }, ]; return taxonomies; diff --git a/tests/helpers/destroy-app.js b/tests/helpers/destroy-app.js index df7764032..7e3b35dc6 100644 --- a/tests/helpers/destroy-app.js +++ b/tests/helpers/destroy-app.js @@ -3,8 +3,8 @@ import { run } from '@ember/runloop'; export default function destroyApp(application) { var store = application.__container__.lookup('service:store'); - if(store) { - run(function() { + if (store) { + run(function () { store.unloadAll(); application.destroy(); }); diff --git a/tests/helpers/flash-message.js b/tests/helpers/flash-message.js index d1881093e..5f895b929 100644 --- a/tests/helpers/flash-message.js +++ b/tests/helpers/flash-message.js @@ -3,5 +3,5 @@ import FlashObject from 'ember-cli-flash/flash/object'; FlashObject.reopen({ init() { return this; - } + }, }); diff --git a/tests/helpers/md-helpers.js b/tests/helpers/md-helpers.js index a8689cb01..831b4dafb 100644 --- a/tests/helpers/md-helpers.js +++ b/tests/helpers/md-helpers.js @@ -10,14 +10,16 @@ * @static * @return {String|Array} */ - function parseInput(e, delimiter = '|') { +function parseInput(e, delimiter = '|') { // TODO: Support md-toggle - let text = Array.from(e.querySelectorAll( - 'input,textarea,.md-select')) - .map(i => (i.type === 'checkbox' ? i.checked.toString() : false) || + let text = Array.from(e.querySelectorAll('input,textarea,.md-select')).map( + (i) => + (i.type === 'checkbox' ? i.checked.toString() : false) || i.value || Array.from(i.querySelectorAll('.select-value')) - .map(n => n.textContent).join('|')); + .map((n) => n.textContent) + .join('|'), + ); return delimiter ? text.join(delimiter) : text; } @@ -27,9 +29,7 @@ function formatContent(t) { } let nestedValues = (obj) => - typeof obj === 'object' - ? Object.values(obj).map(nestedValues).flat() - : [obj]; + typeof obj === 'object' ? Object.values(obj).map(nestedValues).flat() : [obj]; let lsClean = () => { let ls = window.localStorage; @@ -40,9 +40,7 @@ let lsClean = () => { ls.removeItem(k); console.info('Removed record:' + k); } - }) -} - - + }); +}; export { parseInput, formatContent, nestedValues, lsClean }; diff --git a/tests/helpers/modal-asserts.js b/tests/helpers/modal-asserts.js index b67ae9964..b8eaf4c6c 100644 --- a/tests/helpers/modal-asserts.js +++ b/tests/helpers/modal-asserts.js @@ -6,26 +6,28 @@ export default function registerAssertHelpers() { const overlaySelector = '.md-modal-overlay'; const dialogSelector = '.ember-modal-dialog'; - assert.isPresentOnce = function(selector, message) { + assert.isPresentOnce = function (selector, message) { message = message || `${selector} is present in DOM once`; return this.equal($(selector).length, 1, message); }; - assert.isAbsent = function(selector, message) { + assert.isAbsent = function (selector, message) { message = message || `${selector} is absent from DOM`; return this.equal($(selector).length, 0, message); }; - assert.isVisible = function(selector, message) { + assert.isVisible = function (selector, message) { message = message || `${selector} is not visible`; return this.ok($(selector).is(':visible'), message); }; - assert.dialogOpensAndCloses = function(options/*, message*/) { + assert.dialogOpensAndCloses = function (options /*, message*/) { //message = message || `Dialog triggered by ${options.openSelector} failed to open and close`; - const dialogContent = options.dialogText ? [dialogSelector, `:contains(${options.dialogText})`].join('') : dialogSelector; + const dialogContent = options.dialogText + ? [dialogSelector, `:contains(${options.dialogText})`].join('') + : dialogSelector; const self = this; - return click(options.openSelector, options.context).then(function() { + return click(options.openSelector, options.context).then(function () { if (options.hasOverlay) { self.isPresentOnce(overlaySelector); } @@ -33,7 +35,7 @@ export default function registerAssertHelpers() { if (options.whileOpen) { options.whileOpen(); } - return click(options.closeSelector, options.context).then(function() { + return click(options.closeSelector, options.context).then(function () { self.isAbsent(overlaySelector); self.isAbsent(dialogContent); }); diff --git a/tests/helpers/start-app.js b/tests/helpers/start-app.js index 368a8d890..5c0b50be3 100644 --- a/tests/helpers/start-app.js +++ b/tests/helpers/start-app.js @@ -18,5 +18,4 @@ export default function startApp(attrs) { registerModalAssertHelpers(); return application; }); - } diff --git a/tests/integration/components/feature-form-test.js b/tests/integration/components/feature-form-test.js index ba7bbd133..1973d9cdf 100644 --- a/tests/integration/components/feature-form-test.js +++ b/tests/integration/components/feature-form-test.js @@ -3,39 +3,41 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | feature form', function(hooks) { +module('Integration | Component | feature form', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); this.set('model', { id: 'foo', properties: { name: 'bar', - description: 'foobar' - } + description: 'foobar', + }, }); - await render(hbs `{{feature-form model=model}}`); + await render(hbs`{{feature-form model=model}}`); - assert.equal(find('.ember-view').textContent - .replace(/[ \n]+/g, '|') - .trim(), - '|Feature|ID|Name|Description|Other|Properties|read-only|Name|Value|None|found.|' + assert.equal( + find('.ember-view') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Feature|ID|Name|Description|Other|Properties|read-only|Name|Value|None|found.|', ); // Template block usage: - await render(hbs ` + await render(hbs` {{#feature-form model=model}} template block text {{/feature-form}} `); - assert.equal(find('.ember-view').textContent - .replace(/[ \n]+/g, '|') - .trim(), - '|Feature|ID|Name|Description|Other|Properties|read-only|Name|Value|None|found.|template|block|text|' + assert.equal( + find('.ember-view') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Feature|ID|Name|Description|Other|Properties|read-only|Name|Value|None|found.|template|block|text|', ); }); }); diff --git a/tests/integration/components/feature-group-test.js b/tests/integration/components/feature-group-test.js index 1be0ffa39..41fb10e61 100644 --- a/tests/integration/components/feature-group-test.js +++ b/tests/integration/components/feature-group-test.js @@ -4,11 +4,10 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import createMapLayer from 'mdeditor/tests/helpers/create-map-layer'; - -module('Integration | Component | feature group', function(hooks) { +module('Integration | Component | feature group', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); this.set('layers', createMapLayer(2)); @@ -31,7 +30,9 @@ module('Integration | Component | feature group', function(hooks) { {{/leaflet-draw}} `); - assert.equal(find('.leaflet-container').innerText.trim().replace(/\n/g,'|'), - '+|−|Draw a polyline|Draw a polygon|Draw a rectangle|Draw a marker|3000 km|2000 mi|Leaflet'); + assert.equal( + find('.leaflet-container').innerText.trim().replace(/\n/g, '|'), + '+|−|Draw a polyline|Draw a polygon|Draw a rectangle|Draw a marker|3000 km|2000 mi|Leaflet', + ); }); }); diff --git a/tests/integration/components/feature-table-test.js b/tests/integration/components/feature-table-test.js index 14c88aba1..cfdc50d83 100644 --- a/tests/integration/components/feature-table-test.js +++ b/tests/integration/components/feature-table-test.js @@ -22,7 +22,7 @@ module('Integration | Component | feature table', function (hooks) { assert.expect(4); - await render(hbs `{{feature-table + await render(hbs`{{feature-table data=data.features columnComponents=(hash leaflet-table-row-actions=(component "leaflet-table-row-actions" @@ -32,17 +32,16 @@ module('Integration | Component | feature table', function (hooks) { )) }}`); - assert.equal(find('.feature-table') - .textContent - .replace(/[\s, \t]/g, '\n') - .trim() - .replace(/[ +\n]+/g, '|'), - 'Search:|Columns|Show|All|Hide|All|Restore|Defaults|ID|Name|Description|ID|Name|Description|ID|Name|Description|1|Feature|1|2|Feature|2|Show|1|-|2|of|2|Clear|all|filters|Rows:|10|25|50|500|Page:|1' + assert.equal( + find('.feature-table') + .textContent.replace(/[\s, \t]/g, '\n') + .trim() + .replace(/[ +\n]+/g, '|'), + 'Search:|Columns|Show|All|Hide|All|Restore|Defaults|ID|Name|Description|ID|Name|Description|ID|Name|Description|1|Feature|1|2|Feature|2|Show|1|-|2|of|2|Clear|all|filters|Rows:|10|25|50|500|Page:|1', ); await click(find('td .btn-success')); await click(find('td .btn-info')); await click(find('td .btn-danger')); - }); }); diff --git a/tests/integration/components/geojson-layer-test.js b/tests/integration/components/geojson-layer-test.js index d221a2454..34d023b3b 100644 --- a/tests/integration/components/geojson-layer-test.js +++ b/tests/integration/components/geojson-layer-test.js @@ -4,17 +4,17 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import createMapLayer from 'mdeditor/tests/helpers/create-map-layer'; -module('Integration | Component | geojson layer', function(hooks) { +module('Integration | Component | geojson layer', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); this.set('layers', createMapLayer(2)); // Template block usage: - await render(hbs ` + await render(hbs` {{#leaflet-draw lat=0 lng=0 zoom=2}} {{!-- Specify child layer components here --}} {{#layer-group name="Terrain" baselayer=true default=true}} @@ -31,7 +31,9 @@ module('Integration | Component | geojson layer', function(hooks) { {{/leaflet-draw}} `); - assert.equal(find('.leaflet-container').innerText.trim().replace(/\n/g,'|'), - '+|−|Draw a polyline|Draw a polygon|Draw a rectangle|Draw a marker|3000 km|2000 mi|Leaflet'); + assert.equal( + find('.leaflet-container').innerText.trim().replace(/\n/g, '|'), + '+|−|Draw a polyline|Draw a polygon|Draw a rectangle|Draw a marker|3000 km|2000 mi|Leaflet', + ); }); }); diff --git a/tests/integration/components/leaflet-draw-test.js b/tests/integration/components/leaflet-draw-test.js index b14db3245..f5a83df24 100644 --- a/tests/integration/components/leaflet-draw-test.js +++ b/tests/integration/components/leaflet-draw-test.js @@ -4,10 +4,10 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import createMapLayer from 'mdeditor/tests/helpers/create-map-layer'; -module('Integration | Component | leaflet draw', function(hooks) { +module('Integration | Component | leaflet draw', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); @@ -25,7 +25,9 @@ module('Integration | Component | leaflet draw', function(hooks) { {{/leaflet-draw}} `); - assert.equal(find('.leaflet-container').innerText.trim().replace(/\n/g,'|'), - '+|−|Draw a polyline|Draw a polygon|Draw a rectangle|Draw a marker|3000 km|2000 mi|Leaflet'); + assert.equal( + find('.leaflet-container').innerText.trim().replace(/\n/g, '|'), + '+|−|Draw a polyline|Draw a polygon|Draw a rectangle|Draw a marker|3000 km|2000 mi|Leaflet', + ); }); }); diff --git a/tests/integration/components/leaflet-table-row-actions-test.js b/tests/integration/components/leaflet-table-row-actions-test.js index 1ff33d624..9d8f97e96 100644 --- a/tests/integration/components/leaflet-table-row-actions-test.js +++ b/tests/integration/components/leaflet-table-row-actions-test.js @@ -13,7 +13,7 @@ module('Integration | Component | leaflet table row actions', function (hooks) { this.showForm = function () {}; this.deleteFeature = function () {}; - await render(hbs `{{leaflet-table-row-actions + await render(hbs`{{leaflet-table-row-actions zoomTo=zoomTo showForm=showForm deleteFeature=deleteFeature diff --git a/tests/integration/components/leaflet-table-row-test.js b/tests/integration/components/leaflet-table-row-test.js index 092d0e1d7..77776c160 100644 --- a/tests/integration/components/leaflet-table-row-test.js +++ b/tests/integration/components/leaflet-table-row-test.js @@ -3,10 +3,10 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | leaflet table row', function(hooks) { +module('Integration | Component | leaflet table row', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); diff --git a/tests/integration/components/leaflet-table-test.js b/tests/integration/components/leaflet-table-test.js index 850829edf..c29831a66 100644 --- a/tests/integration/components/leaflet-table-test.js +++ b/tests/integration/components/leaflet-table-test.js @@ -4,23 +4,23 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import createMapLayer from 'mdeditor/tests/helpers/create-map-layer'; -module('Integration | Component | leaflet table', function(hooks) { +module('Integration | Component | leaflet table', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); this.set('layers', createMapLayer(2)); - await render(hbs `{{leaflet-table layers=layers.features + await render(hbs`{{leaflet-table layers=layers.features resizeDebouncedEventsEnabled=true}}`); - assert.equal(find('.feature-table') - .textContent - .replace(/[\s\t]/g, '\n') + assert.equal( + find('.feature-table') + .textContent.replace(/[\s\t]/g, '\n') .trim() .replace(/[ \n]+/g, '|'), - 'ID|Name|Description|ID|Name|Description|1|Feature|1|2|Feature|2|Show|1|-|2|of|2|Clear|all|filters|Rows:|10|25|50|500|Page:|1' + 'ID|Name|Description|ID|Name|Description|1|Feature|1|2|Feature|2|Show|1|-|2|of|2|Clear|all|filters|Rows:|10|25|50|500|Page:|1', ); }); }); diff --git a/tests/integration/components/sb-publisher-test.js b/tests/integration/components/sb-publisher-test.js index 034d81035..aabeab0a7 100644 --- a/tests/integration/components/sb-publisher-test.js +++ b/tests/integration/components/sb-publisher-test.js @@ -1,41 +1,41 @@ -import { findAll, render } from "@ember/test-helpers"; -import EmberObject from "@ember/object"; -import { module, test } from "qunit"; -import { setupRenderingTest } from "ember-qunit"; -import hbs from "htmlbars-inline-precompile"; -import createRecord from "../../helpers/create-record"; +import { findAll, render } from '@ember/test-helpers'; +import EmberObject from '@ember/object'; +import { module, test } from 'qunit'; +import { setupRenderingTest } from 'ember-qunit'; +import hbs from 'htmlbars-inline-precompile'; +import createRecord from '../../helpers/create-record'; -module("Integration | Component | sb publisher", function (hooks) { +module('Integration | Component | sb publisher', function (hooks) { setupRenderingTest(hooks); - test("it renders", async function (assert) { - this.set("config", { - name: "ScienceBase", - route: "sciencebase", + test('it renders', async function (assert) { + this.set('config', { + name: 'ScienceBase', + route: 'sciencebase', description: - "ScienceBase is a collaborative scientific data and information management platform", - icon: "globe", - rootURI: "https://api.sciencebase.gov/sbmd-service/", - rootItemURL: "https://www.sciencebase.gov/catalog/item/", - defaultParent: "59ef8a34e4b0220bbd98d449", - settingsComponent: "sb-settings", + 'ScienceBase is a collaborative scientific data and information management platform', + icon: 'globe', + rootURI: 'https://api.sciencebase.gov/sbmd-service/', + rootItemURL: 'https://www.sciencebase.gov/catalog/item/', + defaultParent: '59ef8a34e4b0220bbd98d449', + settingsComponent: 'sb-settings', }); this.set( - "settings", + 'settings', EmberObject.create({ data: { publishOptions: {}, }, - }) + }), ); - this.set("records", createRecord(3)); + this.set('records', createRecord(3)); await render( - hbs`{{sb-publisher config=config settings=settings records=records}}` + hbs`{{sb-publisher config=config settings=settings records=records}}`, ); - assert.equal(findAll(".tree-leaf").length, 4); + assert.equal(findAll('.tree-leaf').length, 4); }); }); diff --git a/tests/integration/components/sb-settings-test.js b/tests/integration/components/sb-settings-test.js index ddd9b7f7e..5cb43b5ec 100644 --- a/tests/integration/components/sb-settings-test.js +++ b/tests/integration/components/sb-settings-test.js @@ -3,10 +3,10 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | sb settings', function(hooks) { +module('Integration | Component | sb settings', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); diff --git a/tests/integration/components/sb-tree-label-test.js b/tests/integration/components/sb-tree-label-test.js index 5e39b5dfd..eefaa0bed 100644 --- a/tests/integration/components/sb-tree-label-test.js +++ b/tests/integration/components/sb-tree-label-test.js @@ -1,14 +1,6 @@ -import { - find, - render -} from '@ember/test-helpers'; -import { - module, - test -} from 'qunit'; -import { - setupRenderingTest -} from 'ember-qunit'; +import { find, render } from '@ember/test-helpers'; +import { module, test } from 'qunit'; +import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; module('Integration | Component | sb tree label', function (hooks) { @@ -19,7 +11,8 @@ module('Integration | Component | sb tree label', function (hooks) { // Handle any actions with this.on('myAction', function(val) { ... }); this.set('model', { - definition: 'Final report outlining the Data Management Strategy for the Science Agency.', + definition: + 'Final report outlining the Data Management Strategy for the Science Agency.', hideCheck: false, icon: 'android', id: '4ebb8fe5-f88f-49a4-9964-ff5395e234b8', @@ -34,10 +27,13 @@ module('Integration | Component | sb tree label', function (hooks) { sbParentIdObj: undefined, sortOrder: 0, type: 'application', - uuid: '4ebb8fe5-f88f-49a4-9964-ff5395e234b8' - }) - await render(hbs `{{sb-tree-label model=model}}`); + uuid: '4ebb8fe5-f88f-49a4-9964-ff5395e234b8', + }); + await render(hbs`{{sb-tree-label model=model}}`); - assert.equal(find('.tree-cell').innerText.trim(), 'Data Management Strategy : test Parent Id: None --'); + assert.equal( + find('.tree-cell').innerText.trim(), + 'Data Management Strategy : test Parent Id: None --', + ); }); }); diff --git a/tests/integration/components/sb-tree-test.js b/tests/integration/components/sb-tree-test.js index d77ca3d2b..388f6823e 100644 --- a/tests/integration/components/sb-tree-test.js +++ b/tests/integration/components/sb-tree-test.js @@ -1,15 +1,6 @@ -import { - find, - findAll, - render -} from '@ember/test-helpers'; -import { - module, - test -} from 'qunit'; -import { - setupRenderingTest -} from 'ember-qunit'; +import { find, findAll, render } from '@ember/test-helpers'; +import { module, test } from 'qunit'; +import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; module('Integration | Component | sb tree', function (hooks) { @@ -19,56 +10,65 @@ module('Integration | Component | sb tree', function (hooks) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); - this.set('model', [{ - children: [{ - definition: 'Child 1.', + this.set('model', [ + { + children: [ + { + definition: 'Child 1.', + hideCheck: false, + icon: 'globe', + id: '4ebb8fe5-f88f-49a4-9964-1', + identifier: '4ebb8fe5-f88f-49a4-9964-1', + isSelected: false, + label: 'Child 1', + nodeClass: 'tree-node-rooted', + notSelectable: false, + sbDate: null, + sbId: 'test1', + sbParentId: null, + sbParentIdObj: undefined, + sortOrder: 0, + type: 'map', + uuid: '4ebb8fe5-f88f-49a4-9964-1', + }, + ], + definition: + 'Final report outlining the Data Management Strategy for the Science Agency.', hideCheck: false, - icon: 'globe', - id: '4ebb8fe5-f88f-49a4-9964-1', - identifier: '4ebb8fe5-f88f-49a4-9964-1', + isExpanded: true, + isRoot: true, + icon: 'android', + id: '4ebb8fe5-f88f-49a4-9964-ff5395e234b8', + identifier: '4ebb8fe5-f88f-49a4-9964-ff5395e234b8', isSelected: false, - label: 'Child 1', + label: 'Data Management Strategy', nodeClass: 'tree-node-rooted', notSelectable: false, sbDate: null, - sbId: 'test1', + sbId: 'test', sbParentId: null, sbParentIdObj: undefined, sortOrder: 0, - type: 'map', - uuid: '4ebb8fe5-f88f-49a4-9964-1' - }], - definition: 'Final report outlining the Data Management Strategy for the Science Agency.', - hideCheck: false, - isExpanded: true, - isRoot: true, - icon: 'android', - id: '4ebb8fe5-f88f-49a4-9964-ff5395e234b8', - identifier: '4ebb8fe5-f88f-49a4-9964-ff5395e234b8', - isSelected: false, - label: 'Data Management Strategy', - nodeClass: 'tree-node-rooted', - notSelectable: false, - sbDate: null, - sbId: 'test', - sbParentId: null, - sbParentIdObj: undefined, - sortOrder: 0, - type: 'application', - uuid: '4ebb8fe5-f88f-49a4-9964-ff5395e234b8' - }]) + type: 'application', + uuid: '4ebb8fe5-f88f-49a4-9964-ff5395e234b8', + }, + ]); - await render(hbs `{{sb-tree model=model labelComponent="sb-tree-label"}}`); - assert.equal(find('.tree-trunk').innerText - .replace(/[\s\t]/g, '\n') - .trim() - .replace(/[ \n]+/g, '|'), - 'Data|Management|Strategy|:|test|?|Child|1|:|test1|Parent|Id:|None|--|?'); + await render(hbs`{{sb-tree model=model labelComponent="sb-tree-label"}}`); + assert.equal( + find('.tree-trunk') + .innerText.replace(/[\s\t]/g, '\n') + .trim() + .replace(/[ \n]+/g, '|'), + 'Data|Management|Strategy|:|test|?|Child|1|:|test1|Parent|Id:|None|--|?', + ); - assert.equal(findAll('.tree-branch')[1].innerText - .replace(/[\s\t]/g, '\n') - .trim() - .replace(/[ \n]+/g, '|'), - 'Child|1|:|test1|Parent|Id:|None|--|?'); + assert.equal( + findAll('.tree-branch')[1] + .innerText.replace(/[\s\t]/g, '\n') + .trim() + .replace(/[ \n]+/g, '|'), + 'Child|1|:|test1|Parent|Id:|None|--|?', + ); }); }); diff --git a/tests/integration/components/tree-branch-test.js b/tests/integration/components/tree-branch-test.js index 0dc94eadd..5d772c47c 100644 --- a/tests/integration/components/tree-branch-test.js +++ b/tests/integration/components/tree-branch-test.js @@ -3,40 +3,44 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | tree branch', function(hooks) { +module('Integration | Component | tree branch', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); this.set('model', { broader: 'foo0', - children: [{ - broader: 'foo2', - children: [], - label: 'foo2label', - uuid: 'foo2' - }], + children: [ + { + broader: 'foo2', + children: [], + label: 'foo2label', + uuid: 'foo2', + }, + ], label: 'foo1label', - uuid: 'foo1' + uuid: 'foo1', }); - this.set('selected', [{ - identifier: 'bar1' - }]); + this.set('selected', [ + { + identifier: 'bar1', + }, + ]); this.set('path', [ - {label: 'fiz', identifier:1}, - {label: 'faz', identifier:10}, - {label: 'foz', identifier:100} + { label: 'fiz', identifier: 1 }, + { label: 'faz', identifier: 10 }, + { label: 'foz', identifier: 100 }, ]); this.set('select', function () { assert.ok(true, 'called select'); }); - await render(hbs ` + await render(hbs` {{tree-branch model=model select=select selected=selected @@ -46,11 +50,10 @@ module('Integration | Component | tree branch', function(hooks) { assert.expect(3); - assert.equal(find('.tree-branch').innerText - .trim(), 'foo1label'); + assert.equal(find('.tree-branch').innerText.trim(), 'foo1label'); // Template block usage: - await render(hbs ` + await render(hbs` {{#tree-branch model=model select=select selected=selected @@ -63,11 +66,15 @@ module('Integration | Component | tree branch', function(hooks) { await click('.tree-leaf .toggle-icon'); - assert.equal(find('.tree-branch').innerText - .replace(/[\s\n]+/g, '|'), '|foo1label|foo2label'); - - assert.equal(findAll('.tree-leaf')[1].querySelectorAll('.tree-indent').length, - 3, 'proper indentation'); + assert.equal( + find('.tree-branch').innerText.replace(/[\s\n]+/g, '|'), + '|foo1label|foo2label', + ); + assert.equal( + findAll('.tree-leaf')[1].querySelectorAll('.tree-indent').length, + 3, + 'proper indentation', + ); }); }); diff --git a/tests/integration/components/tree-label-test.js b/tests/integration/components/tree-label-test.js index bb958dd29..c9046d78a 100644 --- a/tests/integration/components/tree-label-test.js +++ b/tests/integration/components/tree-label-test.js @@ -3,37 +3,37 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | tree label', function(hooks) { +module('Integration | Component | tree label', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); this.set('model', { broader: 'foo0', - children: [{ - broader: 'foo2', - children: [], - label: 'foo2label', - uuid: 'foo2' - }], + children: [ + { + broader: 'foo2', + children: [], + label: 'foo2label', + uuid: 'foo2', + }, + ], label: 'foo1label', - uuid: 'foo1' + uuid: 'foo1', }); // Handle any actions with this.on('myAction', function(val) { ... }); - await render(hbs `{{tree-label model=model}}`); + await render(hbs`{{tree-label model=model}}`); - assert.equal(find('.tree-label-text').innerText - .trim(), 'foo1label'); + assert.equal(find('.tree-label-text').innerText.trim(), 'foo1label'); // Template block usage: - await render(hbs ` + await render(hbs` {{#tree-label model=model}} template block text {{/tree-label}} `); - assert.equal(find('.tree-label-text').innerText - .trim(), 'foo1label'); + assert.equal(find('.tree-label-text').innerText.trim(), 'foo1label'); }); }); diff --git a/tests/integration/components/tree-leaf-test.js b/tests/integration/components/tree-leaf-test.js index b5fb6e486..785a0c942 100644 --- a/tests/integration/components/tree-leaf-test.js +++ b/tests/integration/components/tree-leaf-test.js @@ -3,33 +3,37 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | tree leaf', function(hooks) { +module('Integration | Component | tree leaf', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); this.set('model', { broader: 'foo0', - children: [{ - broader: 'foo2', - children: [], - label: 'foo2label', - uuid: 'foo2' - }], + children: [ + { + broader: 'foo2', + children: [], + label: 'foo2label', + uuid: 'foo2', + }, + ], label: 'foo1label', - uuid: 'foo1' + uuid: 'foo1', }); - this.set('selected', [{ - identifier: 'foo1' - }]); + this.set('selected', [ + { + identifier: 'foo1', + }, + ]); this.set('nodePath', [ - {label: 'fiz', identifier:1}, - {label: 'faz', identifier:10}, - {label: 'foz', identifier:100} + { label: 'fiz', identifier: 1 }, + { label: 'faz', identifier: 10 }, + { label: 'foz', identifier: 100 }, ]); this.set('select', function () { diff --git a/tests/integration/components/tree-search-test.js b/tests/integration/components/tree-search-test.js index e6820243b..0c94175f8 100644 --- a/tests/integration/components/tree-search-test.js +++ b/tests/integration/components/tree-search-test.js @@ -3,39 +3,46 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | tree search', function(hooks) { +module('Integration | Component | tree search', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); - this.set('model', [{ - broader: 'foo0', - children: [{ - broader: 'foo2', + this.set('model', [ + { + broader: 'foo0', + children: [ + { + broader: 'foo2', + children: [], + label: 'foo2label', + uuid: 'foo2', + }, + ], + label: 'foo1label', + uuid: 'foo1', + }, + { + broader: 'barfoo0', children: [], - label: 'foo2label', - uuid: 'foo2' - }], - label: 'foo1label', - uuid: 'foo1' - }, { - broader: 'barfoo0', - children: [], - label: 'barfoo1label', - uuid: 'barfoo1' - }]); + label: 'barfoo1label', + uuid: 'barfoo1', + }, + ]); - this.set('selected', [{ - identifier: 'bar1' - }]); + this.set('selected', [ + { + identifier: 'bar1', + }, + ]); this.set('select', function () { assert.ok(true, 'called select'); }); this.set('searchString', 'foo'); - await render(hbs ` + await render(hbs` {{tree-search model=model selected=selected @@ -44,22 +51,22 @@ module('Integration | Component | tree search', function(hooks) { exactMatch=exactMatch }}`); - assert.equal(find('.tree-search').innerText - .replace(/[ \n]+/g, '|'), + assert.equal( + find('.tree-search').innerText.replace(/[ \n]+/g, '|'), 'Search|Tree:|Exact|Match|3|matches|found.|barfoo1label|foo1label|foo2label', - 'search OK' + 'search OK', ); this.set('exactMatch', true); - assert.equal(find('.tree-search').innerText - .replace(/[ \n]+/g, '|'), + assert.equal( + find('.tree-search').innerText.replace(/[ \n]+/g, '|'), 'Search|Tree:|Exact|Match|2|matches|found.|foo1label|foo2label', - 'exact match' + 'exact match', ); // Template block usage: - await render(hbs ` + await render(hbs` {{#tree-search model=model selected=selected @@ -69,9 +76,10 @@ module('Integration | Component | tree search', function(hooks) { {{/tree-search}} `); - assert.equal(find('.tree-search').innerText - .replace(/[ \n]+/g, '|'), 'Search|Tree:|Exact|Match|template|block|text', - 'block' + assert.equal( + find('.tree-search').innerText.replace(/[ \n]+/g, '|'), + 'Search|Tree:|Exact|Match|template|block|text', + 'block', ); }); }); diff --git a/tests/integration/components/tree-view-test.js b/tests/integration/components/tree-view-test.js index 3f8bceebf..9b2f9deb2 100644 --- a/tests/integration/components/tree-view-test.js +++ b/tests/integration/components/tree-view-test.js @@ -3,65 +3,85 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | tree view', function(hooks) { +module('Integration | Component | tree view', function (hooks) { setupRenderingTest(hooks); - test('it renders and expands', async function(assert) { + test('it renders and expands', async function (assert) { // Set any properties with this.set('myProperty', 'value'); - this.set('model', [{ - broader: 'foo0', - children: [{ - broader: 'foo2', + this.set('model', [ + { + broader: 'foo0', + children: [ + { + broader: 'foo2', + children: [], + label: 'foo2label', + uuid: 'foo2', + }, + ], + label: 'foo1label', + uuid: 'foo1', + }, + { + broader: 'bar0', children: [], - label: 'foo2label', - uuid: 'foo2' - }], - label: 'foo1label', - uuid: 'foo1' - }, { - broader: 'bar0', - children: [], - label: 'bar1label', - uuid: 'bar1' - }]); + label: 'bar1label', + uuid: 'bar1', + }, + ]); - this.set('selected', [{ - identifier: 'bar1' - }]); + this.set('selected', [ + { + identifier: 'bar1', + }, + ]); - this.set('select', function(){ + this.set('select', function () { assert.ok(true, 'called select'); }); // Handle any actions with this.on('myAction', function(val) { ... }); assert.expect(7); - await render(hbs `{{tree-view model=model selected=selected}}`); + await render(hbs`{{tree-view model=model selected=selected}}`); - assert.equal(find('.tree-trunk').innerText - .replace(/[\s\n]+/g, '|'), '|bar1label|foo1label'); + assert.equal( + find('.tree-trunk').innerText.replace(/[\s\n]+/g, '|'), + '|bar1label|foo1label', + ); - assert.ok(find('.tree-leaf') - .classList.contains('tree-highlight'), 'selected leaf highlighted'); + assert.ok( + find('.tree-leaf').classList.contains('tree-highlight'), + 'selected leaf highlighted', + ); - assert.equal(findAll('.tree-leaf .expand-icon') - .length, 1, 'node expand icon rendered'); + assert.equal( + findAll('.tree-leaf .expand-icon').length, + 1, + 'node expand icon rendered', + ); await click(find('.expand-icon')); assert.equal(findAll('.tree-leaf').length, 3, 'node expanded'); // Template block usage: - await render(hbs ` + await render(hbs` {{#tree-view model=model select=select}} template block text {{/tree-view}} `); - assert.equal(find('.tree-trunk').innerText - .replace(/[\s\n]+/g, '|'), '|bar1label|foo1label|foo2label'); + assert.equal( + find('.tree-trunk').innerText.replace(/[\s\n]+/g, '|'), + '|bar1label|foo1label|foo2label', + ); await click(findAll('.tree-leaf')[1]); - assert.equal(findAll('.tree-leaf.tree-highlight').length, 2, 'node selected'); + assert.equal( + findAll('.tree-leaf.tree-highlight').length, + 2, + 'node selected', + ); }); }); diff --git a/tests/integration/helpers/object-is-empty-test.js b/tests/integration/helpers/object-is-empty-test.js index 23090400b..58fe0dd78 100644 --- a/tests/integration/helpers/object-is-empty-test.js +++ b/tests/integration/helpers/object-is-empty-test.js @@ -3,15 +3,15 @@ import { setupRenderingTest } from 'ember-qunit'; import { render } from '@ember/test-helpers'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Helper | object-is-empty', function(hooks) { +module('Integration | Helper | object-is-empty', function (hooks) { setupRenderingTest(hooks); // Replace this with your real tests. - test('it renders', async function(assert) { + test('it renders', async function (assert) { this.set('inputValue', '1234'); await render(hbs`{{object-is-empty inputValue}}`); - assert.equal(this.element.textContent.trim(), "false"); + assert.equal(this.element.textContent.trim(), 'false'); }); }); diff --git a/tests/integration/helpers/present-test.js b/tests/integration/helpers/present-test.js index e1a467fd3..294c0613a 100644 --- a/tests/integration/helpers/present-test.js +++ b/tests/integration/helpers/present-test.js @@ -1,14 +1,13 @@ - import { find, render } from '@ember/test-helpers'; import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('helper:present', function(hooks) { +module('helper:present', function (hooks) { setupRenderingTest(hooks); // Replace this with your real tests. - test('it renders', async function(assert) { + test('it renders', async function (assert) { this.set('inputValue', '1234'); await render(hbs`
    {{present inputValue}}
    `); diff --git a/tests/integration/helpers/word-limit-test.js b/tests/integration/helpers/word-limit-test.js index 6a2bcbec8..bfb9763bb 100644 --- a/tests/integration/helpers/word-limit-test.js +++ b/tests/integration/helpers/word-limit-test.js @@ -1,25 +1,27 @@ - import { find, render } from '@ember/test-helpers'; import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('helper:word-limit', function(hooks) { +module('helper:word-limit', function (hooks) { setupRenderingTest(hooks); // Replace this with your real tests. test('it renders', async function (assert) { - this.set('inputValue', + this.set( + 'inputValue', `Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam rutrum, neque nec sagittis maximus, lacus lectus placerat libero, finibus varius arcu enim - eget ante. Duis.` + eget ante. Duis.`, ); - await render(hbs`
    {{word-limit inputValue limit=20 wordLength=10}}
    `); - - assert.equal(find('section').textContent.trim(), - `Lorem ipsum dolor sit amet, consectetu... adipiscing...elit. Etiam rutrum, neque nec sagittis maximus, lacus lectus placerat libero, finibus varius ...` + await render( + hbs`
    {{word-limit inputValue limit=20 wordLength=10}}
    `, ); + assert.equal( + find('section').textContent.trim(), + `Lorem ipsum dolor sit amet, consectetu... adipiscing...elit. Etiam rutrum, neque nec sagittis maximus, lacus lectus placerat libero, finibus varius ...`, + ); }); }); diff --git a/tests/integration/pods/components/control/md-alert-table/component-test.js b/tests/integration/pods/components/control/md-alert-table/component-test.js index 5a33e11ee..6050be771 100644 --- a/tests/integration/pods/components/control/md-alert-table/component-test.js +++ b/tests/integration/pods/components/control/md-alert-table/component-test.js @@ -11,29 +11,32 @@ module('Integration | Component | control/md-alert-table', function (hooks) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.set('myAction', function(val) { ... }); - await render(hbs `{{control/md-alert-table + await render(hbs`{{control/md-alert-table title="Foos" required=true tipMessage="Biz is baz." }}`); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - 'No|Foos|found.|Add|Foo|'); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + 'No|Foos|found.|Add|Foo|', + ); - await triggerEvent('.md-danger.ember-tooltip-target', - 'mouseenter'); + await triggerEvent('.md-danger.ember-tooltip-target', 'mouseenter'); assertTooltipContent(assert, { contentString: 'Biz is baz.' }); assert.dom('.md-alert-table.alert-danger').exists(); // Template block usage: - await render(hbs ` + await render(hbs` {{#control/md-alert-table title="Bars"}} template block text {{/control/md-alert-table}} `); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|No|Bars|found.|Add|Bar|template|block|text|'); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|No|Bars|found.|Add|Bar|template|block|text|', + ); }); }); diff --git a/tests/integration/pods/components/control/md-button-confirm/component-test.js b/tests/integration/pods/components/control/md-button-confirm/component-test.js index 180edb6e1..046a31b1a 100644 --- a/tests/integration/pods/components/control/md-button-confirm/component-test.js +++ b/tests/integration/pods/components/control/md-button-confirm/component-test.js @@ -3,58 +3,50 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | control/md button confirm', function(hooks) { +module('Integration | Component | control/md button confirm', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... });" + EOL + EOL + - await render(hbs `{{control/md-button-confirm}}`); + await render(hbs`{{control/md-button-confirm}}`); - assert.equal(find('button').innerText - .trim(), ''); + assert.equal(find('button').innerText.trim(), ''); // Template block usage:" + EOL + - await render(hbs ` + await render(hbs` {{#control/md-button-confirm}} template block text {{/control/md-button-confirm}} `); - assert.equal(find('button').innerText - .trim(), 'template block text'); + assert.equal(find('button').innerText.trim(), 'template block text'); }); - test('shows and cancels confirm', async function(assert) { - + test('shows and cancels confirm', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... });" + EOL + EOL + // Template block usage:" + EOL + - await render(hbs ` + await render(hbs` Test {{#control/md-button-confirm}} Test {{/control/md-button-confirm}} `); - assert.equal(find('button').innerText - .trim(), 'Test', 'renders button'); + assert.equal(find('button').innerText.trim(), 'Test', 'renders button'); await click('button'); - assert.equal(find('button').innerText - .trim(), 'Confirm', 'renders confirm'); + assert.equal(find('button').innerText.trim(), 'Confirm', 'renders confirm'); - await triggerEvent('button','blur'); - assert.equal(find('button').innerText - .trim(), 'Test', 'cancels confirm'); + await triggerEvent('button', 'blur'); + assert.equal(find('button').innerText.trim(), 'Test', 'cancels confirm'); }); - test('performs confirm action', async function(assert) { - + test('performs confirm action', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... });" + EOL + EOL + this.set('externalAction', (type) => { @@ -62,7 +54,7 @@ module('Integration | Component | control/md button confirm', function(hooks) { }); // Template block usage:" + EOL + - await render(hbs ` + await render(hbs` {{#control/md-button-confirm onConfirm=(action externalAction "onConfirm")}} Test {{/control/md-button-confirm}} diff --git a/tests/integration/pods/components/control/md-button-modal/component-test.js b/tests/integration/pods/components/control/md-button-modal/component-test.js index c695ee596..95450a924 100644 --- a/tests/integration/pods/components/control/md-button-modal/component-test.js +++ b/tests/integration/pods/components/control/md-button-modal/component-test.js @@ -1,10 +1,4 @@ -import { - click, - find, - findAll, - render, - clearRender -} from '@ember/test-helpers'; +import { click, find, findAll, render, clearRender } from '@ember/test-helpers'; import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; @@ -12,30 +6,32 @@ import registerHelper from '../../../../../helpers/modal-asserts'; registerHelper(); -module('Integration | Component | control/md button modal', function(hooks) { +module('Integration | Component | control/md button modal', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... });" + EOL + EOL + - await render(hbs `{{control/md-button-modal}}`); + await render(hbs`{{control/md-button-modal}}`); assert.equal(find('.md-button-modal').innerText.trim(), ''); // Template block usage:" + EOL + - await render(hbs ` + await render(hbs` {{#control/md-button-modal}} template block text {{/control/md-button-modal}} `); - assert.equal(find('.md-button-modal').innerText.trim(), 'template block text', 'block'); + assert.equal( + find('.md-button-modal').innerText.trim(), + 'template block text', + 'block', + ); }); - test('shows modal and performs actions', async function(assert) { - + test('shows modal and performs actions', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... });" + EOL + EOL + // let modalDialogService = this.owner.lookup('service:modal-dialog'); @@ -45,7 +41,7 @@ module('Integration | Component | control/md button modal', function(hooks) { assert.ok(type, `${type} called`); }); - await render(hbs ` + await render(hbs`
    {{#control/md-button-modal message="Hello" onConfirm=(action externalAction "confirm") @@ -60,7 +56,7 @@ module('Integration | Component | control/md button modal', function(hooks) { await clearRender(); - await render(hbs ` + await render(hbs`
    {{#control/md-button-modal renderInPlace=true @@ -75,17 +71,15 @@ module('Integration | Component | control/md button modal', function(hooks) { assert.isAbsent('.md-modal-overlay'); - // click the modal buttons await click('.md-button-modal'); let num = findAll('.md-modal-buttons button').length; let i = 0; - while(i < num) { + while (i < num) { await click(findAll('.md-modal-buttons button')[i]); i++; } - }); }); diff --git a/tests/integration/pods/components/control/md-button/component-test.js b/tests/integration/pods/components/control/md-button/component-test.js index a3b796927..119fc1549 100644 --- a/tests/integration/pods/components/control/md-button/component-test.js +++ b/tests/integration/pods/components/control/md-button/component-test.js @@ -3,17 +3,19 @@ import { setupRenderingTest } from 'ember-qunit'; import { render, click } from '@ember/test-helpers'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | control/md-button', function(hooks) { +module('Integration | Component | control/md-button', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.set('myAction', function(val) { ... }); - this.set('myAction', function(val) { + this.set('myAction', function (val) { assert.ok(val, 'Click action'); }); - await render(hbs`{{control/md-button text="Click me" click=(action myAction true)}}`); + await render( + hbs`{{control/md-button text="Click me" click=(action myAction true)}}`, + ); assert.equal(this.element.textContent.trim(), 'Click me'); click('.md-button'); diff --git a/tests/integration/pods/components/control/md-contact-link/component-test.js b/tests/integration/pods/components/control/md-contact-link/component-test.js index fa542f8b1..984e31f5a 100644 --- a/tests/integration/pods/components/control/md-contact-link/component-test.js +++ b/tests/integration/pods/components/control/md-contact-link/component-test.js @@ -4,23 +4,22 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import createContact from 'mdeditor/tests/helpers/create-contact'; - -module('Integration | Component | control/md contact link', function(hooks) { +module('Integration | Component | control/md contact link', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { var store = this.owner.lookup('service:store'); this.set('contacts', this.owner.lookup('service:contacts')); - store.createRecord('contact', createContact(1)[0]) - + store.createRecord('contact', createContact(1)[0]); // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); - await render(hbs`{{control/md-contact-link contacts=contacts contactId=0}}`); + await render( + hbs`{{control/md-contact-link contacts=contacts contactId=0}}`, + ); assert.equal(find('a').innerText.trim(), 'Contact0', 'renders link'); @@ -31,6 +30,10 @@ module('Integration | Component | control/md contact link', function(hooks) { {{/control/md-contact-link}} `); - assert.equal(find('a').textContent.trim(), 'template block text', 'renders as block'); + assert.equal( + find('a').textContent.trim(), + 'template block text', + 'renders as block', + ); }); }); diff --git a/tests/integration/pods/components/control/md-contact-title/component-test.js b/tests/integration/pods/components/control/md-contact-title/component-test.js index 14b7cee2d..7e110dba5 100644 --- a/tests/integration/pods/components/control/md-contact-title/component-test.js +++ b/tests/integration/pods/components/control/md-contact-title/component-test.js @@ -4,11 +4,10 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import createContact from 'mdeditor/tests/helpers/create-contact'; -module('Integration | Component | control/md contact title', function(hooks) { +module('Integration | Component | control/md contact title', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); var store = this.owner.lookup('service:store'); @@ -27,6 +26,9 @@ module('Integration | Component | control/md contact title', function(hooks) {
    `); - assert.equal(find('.test1').textContent.trim(), 'template block text Contact0'); + assert.equal( + find('.test1').textContent.trim(), + 'template block text Contact0', + ); }); }); diff --git a/tests/integration/pods/components/control/md-crud-buttons/component-test.js b/tests/integration/pods/components/control/md-crud-buttons/component-test.js index cbb3b9f1f..ae2c22552 100644 --- a/tests/integration/pods/components/control/md-crud-buttons/component-test.js +++ b/tests/integration/pods/components/control/md-crud-buttons/component-test.js @@ -3,36 +3,46 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | control/md crud buttons', function(hooks) { +module('Integration | Component | control/md crud buttons', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { assert.expect(3); // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... });" + EOL + EOL + - await render(hbs `{{control/md-crud-buttons allowCopy=true allowDelete=true}}`); + await render( + hbs`{{control/md-crud-buttons allowCopy=true allowDelete=true}}`, + ); await triggerEvent('.md-crud-buttons', 'mouseenter'); - assert.equal(find('.md-crud-buttons').textContent - .replace(/[ \n]+/g, '|'), '|Copy|Delete|'); + assert.equal( + find('.md-crud-buttons').textContent.replace(/[ \n]+/g, '|'), + '|Copy|Delete|', + ); // Template block usage:" + EOL + - await render(hbs ` + await render(hbs` {{#control/md-crud-buttons doSave=true allowCopy=true}} template block text {{/control/md-crud-buttons}} `); - assert.equal(find('.md-crud-buttons').textContent - .replace(/[ \n]+/g, '|'), - '|Save|Cancel|Copy|template|block|text|', 'block, doSave'); + assert.equal( + find('.md-crud-buttons').textContent.replace(/[ \n]+/g, '|'), + '|Save|Cancel|Copy|template|block|text|', + 'block, doSave', + ); - assert.equal(find('.md-crud-buttons .btn-success').disabled, true, 'save disabled'); + assert.equal( + find('.md-crud-buttons .btn-success').disabled, + true, + 'save disabled', + ); }); - test('should trigger external action', async function(assert) { + test('should trigger external action', async function (assert) { assert.expect(4); // test double for the external action @@ -43,10 +53,10 @@ module('Integration | Component | control/md crud buttons', function(hooks) { //enable save and delete this.set('model', { hasDirtyHash: true, - canRevert: true + canRevert: true, }); - await render(hbs `{{control/md-crud-buttons model=model doSave=(action externalAction + await render(hbs`{{control/md-crud-buttons model=model doSave=(action externalAction 'doSave') doCancel=(action externalAction 'doCancel') doCopy=(action externalAction 'doCopy') doDelete=(action externalAction 'doDelete') allowCopy=true allowDelete=true}}`); diff --git a/tests/integration/pods/components/control/md-definition/component-test.js b/tests/integration/pods/components/control/md-definition/component-test.js index 29411ccce..dda48750d 100644 --- a/tests/integration/pods/components/control/md-definition/component-test.js +++ b/tests/integration/pods/components/control/md-definition/component-test.js @@ -3,23 +3,31 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | control/md definition', function(hooks) { +module('Integration | Component | control/md definition', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); await render(hbs`{{control/md-definition title="foobar" text="bizbaz"}}`); - assert.equal(find('.ember-view').textContent.replace(/[ \n]+/g, '|').trim(), - 'foobar|bizbaz|'); + assert.equal( + find('.ember-view') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + 'foobar|bizbaz|', + ); await render(hbs`{{control/md-definition title="foobar"}}`); - assert.equal(find('.ember-view').textContent.replace(/[ \n]+/g, '|').trim(), - 'foobar|Not|Defined|', 'no text'); + assert.equal( + find('.ember-view') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + 'foobar|Not|Defined|', + 'no text', + ); // Template block usage: await render(hbs` @@ -28,7 +36,11 @@ module('Integration | Component | control/md definition', function(hooks) { {{/control/md-definition}} `); - assert.equal(find('.ember-view').textContent.replace(/[ \n]+/g, '|').trim(), - '|foobar|template|block|text|'); + assert.equal( + find('.ember-view') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|foobar|template|block|text|', + ); }); }); diff --git a/tests/integration/pods/components/control/md-edit-table/component-test.js b/tests/integration/pods/components/control/md-edit-table/component-test.js index f1651a4c7..8735e69bc 100644 --- a/tests/integration/pods/components/control/md-edit-table/component-test.js +++ b/tests/integration/pods/components/control/md-edit-table/component-test.js @@ -4,33 +4,43 @@ import { render, click, find } from '@ember/test-helpers'; import hbs from 'htmlbars-inline-precompile'; import EmberObject from '@ember/object'; -module('Integration | Component | control/md-edit-table', function(hooks) { +module('Integration | Component | control/md-edit-table', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.set('myAction', function(val) { ... }); - this.set('data', [EmberObject.create({ - title: 'foo', - type: 'bar' - }), EmberObject.create({ - title: 'biz', - type: 'baz' - })]); - - this.set('columns', [{ - propertyName: 'title', - title: 'Title' - }, { - propertyName: 'type', - title: 'Type' - }]); - - await render(hbs`{{control/md-edit-table data=data dataColumns=columns rowBodyComponent="object/md-schema"}}`); - - assert.equal(this.element.textContent.replace(/[ \s\n]+/g, '|').trim(), - '|Search:|Columns|Show|All|Hide|All|Restore|Defaults|Title|Type|Title|Type|Title|Type|foo|bar|Edit|Delete|biz|baz|Edit|Delete|Show|1|-|2|of|2|Clear|all|filters|Rows:|10|25|50|500|Page:|1|'); + this.set('data', [ + EmberObject.create({ + title: 'foo', + type: 'bar', + }), + EmberObject.create({ + title: 'biz', + type: 'baz', + }), + ]); + + this.set('columns', [ + { + propertyName: 'title', + title: 'Title', + }, + { + propertyName: 'type', + title: 'Type', + }, + ]); + + await render( + hbs`{{control/md-edit-table data=data dataColumns=columns rowBodyComponent="object/md-schema"}}`, + ); + + assert.equal( + this.element.textContent.replace(/[ \s\n]+/g, '|').trim(), + '|Search:|Columns|Show|All|Hide|All|Restore|Defaults|Title|Type|Title|Type|Title|Type|foo|bar|Edit|Delete|biz|baz|Edit|Delete|Show|1|-|2|of|2|Clear|all|filters|Rows:|10|25|50|500|Page:|1|', + ); await click('.md-row-buttons .btn-success'); diff --git a/tests/integration/pods/components/control/md-errors/component-test.js b/tests/integration/pods/components/control/md-errors/component-test.js index c908ec472..47cc00900 100644 --- a/tests/integration/pods/components/control/md-errors/component-test.js +++ b/tests/integration/pods/components/control/md-errors/component-test.js @@ -10,37 +10,49 @@ module('Integration | Component | control/md errors', function (hooks) { assert.expect(3); // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); - this.set('errors', [{ - title: 'Test', - errors: [{ - dataPath: '/foo/biz', - message: 'message1' - }, { - message: 'message2' - }] - }, { title: 'Test2', errors: [] }]); - - await render(hbs `{{control/md-errors errors=errors}}`); - - assert.equal(find('.md-error-list').textContent.replace(/[ \n]+/g, - '|').trim(), - '|Test|0|message1|/foo/biz|1|message2|Test2|'); - - assert.ok(findAll('.md-error-list .label')[1].classList.contains( - 'label-danger'), - 'class applied'); + this.set('errors', [ + { + title: 'Test', + errors: [ + { + dataPath: '/foo/biz', + message: 'message1', + }, + { + message: 'message2', + }, + ], + }, + { title: 'Test2', errors: [] }, + ]); + + await render(hbs`{{control/md-errors errors=errors}}`); + + assert.equal( + find('.md-error-list') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Test|0|message1|/foo/biz|1|message2|Test2|', + ); + + assert.ok( + findAll('.md-error-list .label')[1].classList.contains('label-danger'), + 'class applied', + ); // Template block usage: - await render(hbs ` + await render(hbs` {{#control/md-errors errors=errors}} template block text {{/control/md-errors}} `); - assert.equal(find('.md-error-list').textContent.replace(/[ \n]+/g, - '|').trim(), + assert.equal( + find('.md-error-list') + .textContent.replace(/[ \n]+/g, '|') + .trim(), '|Test|0|message1|/foo/biz|1|message2|Test2|template|block|text|', - 'block'); - + 'block', + ); }); }); diff --git a/tests/integration/pods/components/control/md-fiscalyear/component-test.js b/tests/integration/pods/components/control/md-fiscalyear/component-test.js index ab57af55c..3c8b8a8dd 100644 --- a/tests/integration/pods/components/control/md-fiscalyear/component-test.js +++ b/tests/integration/pods/components/control/md-fiscalyear/component-test.js @@ -4,33 +4,33 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import { selectChoose } from 'ember-power-select/test-support'; import { clickTrigger } from 'ember-power-select/test-support/helpers'; -import moment from'moment'; +import moment from 'moment'; - - -module('Integration | Component | control/md fiscalyear', function(hooks) { +module('Integration | Component | control/md fiscalyear', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); await render(hbs`{{control/md-fiscalyear context=this}}`); - assert.equal(find('.md-select.md-fiscalyear').innerText.replace(/[\n]+/g, - '|').trim(), 'Pick Fiscal Year|Pick a Fiscal Year'); + assert.equal( + find('.md-select.md-fiscalyear').innerText.replace(/[\n]+/g, '|').trim(), + 'Pick Fiscal Year|Pick a Fiscal Year', + ); }); - test('select a year', async function(assert) { + test('select a year', async function (assert) { assert.expect(3); // Set any properties with this.set('myProperty', 'value'); this.set('end', null); this.set('start', null); this.set('settings', { - data: { - fiscalStartMonth: 1 - } + data: { + fiscalStartMonth: 1, + }, }); // Handle any actions with this.on('myAction', function(val) { ... }); var year = new Date().getFullYear(); @@ -54,14 +54,31 @@ module('Integration | Component | control/md fiscalyear', function(hooks) { await clickTrigger('.md-fiscalyear'); await selectChoose('.md-fiscalyear', year); - assert.equal(this.end, moment(year, 'YYYY').month(this.settings.data.fiscalStartMonth + - 10).endOf('month').toISOString(), 'end set'); - assert.equal(this.start, moment(year, 'YYYY').month(this.settings.data.fiscalStartMonth - - 1).startOf('month').toISOString(), 'start set'); + assert.equal( + this.end, + moment(year, 'YYYY') + .month(this.settings.data.fiscalStartMonth + 10) + .endOf('month') + .toISOString(), + 'end set', + ); + assert.equal( + this.start, + moment(year, 'YYYY') + .month(this.settings.data.fiscalStartMonth - 1) + .startOf('month') + .toISOString(), + 'start set', + ); this.set('settings.data.fiscalStartMonth', null); - assert.equal(find('.md-fiscalyear .ember-power-select-trigger').getAttribute( - 'aria-disabled'), 'true', 'disabled if fiscalStartMonth empty'); + assert.equal( + find('.md-fiscalyear .ember-power-select-trigger').getAttribute( + 'aria-disabled', + ), + 'true', + 'disabled if fiscalStartMonth empty', + ); }); }); diff --git a/tests/integration/pods/components/control/md-import-csv/component-test.js b/tests/integration/pods/components/control/md-import-csv/component-test.js index 5f7178ee3..7c1628562 100644 --- a/tests/integration/pods/components/control/md-import-csv/component-test.js +++ b/tests/integration/pods/components/control/md-import-csv/component-test.js @@ -3,10 +3,10 @@ import { module, test, skip } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | control/md import csv', function(hooks) { +module('Integration | Component | control/md import csv', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { assert.expect(3); // Set any properties with this.set('myProperty', 'value'); @@ -15,20 +15,35 @@ module('Integration | Component | control/md import csv', function(hooks) { await render(hbs`{{control/md-import-csv}}`); - assert.equal(find('.md-import-picker').textContent.trim(), 'Click or Drop a CSV here.'); + assert.equal( + find('.md-import-picker').textContent.trim(), + 'Click or Drop a CSV here.', + ); - await render(hbs`{{control/md-import-csv isProcessing=true progress=progress}}`); + await render( + hbs`{{control/md-import-csv isProcessing=true progress=progress}}`, + ); - assert.equal(find('.ember-view').textContent.replace(/[ \n]+/g, '|').trim(), - '|Processing...|Stop|0%|Complete|', 'renders progressbar'); + assert.equal( + find('.ember-view') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Processing...|Stop|0%|Complete|', + 'renders progressbar', + ); this.set('progress', 57); - assert.equal(find('.ember-view').textContent.replace(/[ \n]+/g, '|').trim(), - '|Processing...|Stop|57%|Complete|', 'updates progressbar'); + assert.equal( + find('.ember-view') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Processing...|Stop|57%|Complete|', + 'updates progressbar', + ); }); - skip('upload csv', async function(assert) { - assert.ok(); + skip('upload csv', async function (assert) { + assert.ok(); }); }); diff --git a/tests/integration/pods/components/control/md-indicator/component-test.js b/tests/integration/pods/components/control/md-indicator/component-test.js index 1761ef1c9..272d4940a 100644 --- a/tests/integration/pods/components/control/md-indicator/component-test.js +++ b/tests/integration/pods/components/control/md-indicator/component-test.js @@ -8,15 +8,15 @@ module('Integration | Component | control/md-indicator', function (hooks) { setupRenderingTest(hooks); test('it renders', async function (assert) { - assert.expect(2) + assert.expect(2); // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.set('myAction', function(val) { ... }); this.set('values', { foo: 'This', - bar: 'warning' - }) + bar: 'warning', + }); - await render(hbs `{{control/md-indicator + await render(hbs`{{control/md-indicator icon="sticky-note" title="Hello" note="\${foo} is a \${bar}" diff --git a/tests/integration/pods/components/control/md-indicator/related/component-test.js b/tests/integration/pods/components/control/md-indicator/related/component-test.js index 841df7a22..faa4208e0 100644 --- a/tests/integration/pods/components/control/md-indicator/related/component-test.js +++ b/tests/integration/pods/components/control/md-indicator/related/component-test.js @@ -6,38 +6,38 @@ import { createDictionary } from 'mdeditor/tests/helpers/create-dictionary'; import { assertTooltipContent } from 'ember-tooltips/test-support/dom'; import Service from '@ember/service'; -module('Integration | Component | control/md-indicator/related', function ( - hooks) { - setupRenderingTest(hooks); +module( + 'Integration | Component | control/md-indicator/related', + function (hooks) { + setupRenderingTest(hooks); - hooks.beforeEach(function (assert) { - let router = Service.extend({ - transitionTo() { - assert.ok(true, 'Transition started'); - }, - generateURL(route, models) { - assert.equal(route, 'dictionary.show.edit.entity', 'route OK'); - assert.deepEqual(models, ['attribute1'], 'model ids OK'); - } + hooks.beforeEach(function (assert) { + let router = Service.extend({ + transitionTo() { + assert.ok(true, 'Transition started'); + }, + generateURL(route, models) { + assert.equal(route, 'dictionary.show.edit.entity', 'route OK'); + assert.deepEqual(models, ['attribute1'], 'model ids OK'); + }, + }); + this.owner.register('service:-routing', router); + //this.router=router; + this.owner.setupRouter(); }); - this.owner.register('service:-routing', router); - //this.router=router; - this.owner.setupRouter(); - }); - test('it renders', async function (assert) { - assert.expect(6); + test('it renders', async function (assert) { + assert.expect(6); - this.set('values', { - foo: 'attribute1', - bar: 'codeName0', - }); + this.set('values', { + foo: 'attribute1', + bar: 'codeName0', + }); - this.set('dictionary', createDictionary(1)[0].json - .dataDictionary); - this.set('model', this.dictionary.entity[0].attribute[0]); + this.set('dictionary', createDictionary(1)[0].json.dataDictionary); + this.set('model', this.dictionary.entity[0].attribute[0]); - await render(hbs `{{control/md-indicator/related + await render(hbs`{{control/md-indicator/related model=model route=true icon="cog" @@ -54,16 +54,16 @@ module('Integration | Component | control/md-indicator/related', function ( routeIdPaths=(array "values.foo") }}`); - assert.dom('.md-indicator-related .md-indicator').isVisible({ count: 1 }); - assert.dom('.md-indicator .fa').hasClass('fa-cog'); + assert.dom('.md-indicator-related .md-indicator').isVisible({ count: 1 }); + assert.dom('.md-indicator .fa').hasClass('fa-cog'); - await triggerEvent('.md-indicator-related .md-indicator', - 'mouseenter'); + await triggerEvent('.md-indicator-related .md-indicator', 'mouseenter'); - assertTooltipContent(assert, { - contentString: `Related Indicator Test\nThe attribute attribute1 has an associated domain: codeName0.\nGo to Domain` - }); + assertTooltipContent(assert, { + contentString: `Related Indicator Test\nThe attribute attribute1 has an associated domain: codeName0.\nGo to Domain`, + }); - await click('.btn'); - }); -}); + await click('.btn'); + }); + }, +); diff --git a/tests/integration/pods/components/control/md-infotip/component-test.js b/tests/integration/pods/components/control/md-infotip/component-test.js index 50a1ac642..f91c84eb4 100644 --- a/tests/integration/pods/components/control/md-infotip/component-test.js +++ b/tests/integration/pods/components/control/md-infotip/component-test.js @@ -3,10 +3,10 @@ import { setupRenderingTest } from 'ember-qunit'; import { render } from '@ember/test-helpers'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | control/md-infotip', function(hooks) { +module('Integration | Component | control/md-infotip', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.set('myAction', function(val) { ... }); diff --git a/tests/integration/pods/components/control/md-itis/component-test.js b/tests/integration/pods/components/control/md-itis/component-test.js index 071f5112b..1747217de 100644 --- a/tests/integration/pods/components/control/md-itis/component-test.js +++ b/tests/integration/pods/components/control/md-itis/component-test.js @@ -4,71 +4,89 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import EmberObject from '@ember/object'; -module('Integration | Component | control/md itis', function(hooks) { +module('Integration | Component | control/md itis', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { assert.expect(3); // Set any properties with this.set('myProperty', 'value'); this.set('taxonomy', { - taxonomicClassification: [] + taxonomicClassification: [], }); - this.set('taxa', [EmberObject.create({ - "kingdom": "Animalia", - "name": "Calotes rouxii", - "rank": "Species", - "tsn": "1055525", - "taxonomy": [ - [{ - "rank": "Kingdom", - "value": "Animalia", - "order": 0, - "tsn": "202423" - }, { - "rank": "Subkingdom", - "value": "Bilateria", - "order": 1, - "tsn": "914154" - }, { - "rank": "Genus", - "value": "Calotes", - "order": 12, - "tsn": "209043" - }, { - "rank": "Species", - "value": "Calotes rouxii", - "order": 13, - "tsn": "1055525", - "common": ["Roux's Forest Lizard", "Forest Blood Sucker"] - }] - ], - "common": [{ - "name": "Roux's Forest Lizard", - "language": "English" - }, { - "name": "Forest Blood Sucker", - "language": "English" - }], - "status": "valid" - })]); + this.set('taxa', [ + EmberObject.create({ + kingdom: 'Animalia', + name: 'Calotes rouxii', + rank: 'Species', + tsn: '1055525', + taxonomy: [ + [ + { + rank: 'Kingdom', + value: 'Animalia', + order: 0, + tsn: '202423', + }, + { + rank: 'Subkingdom', + value: 'Bilateria', + order: 1, + tsn: '914154', + }, + { + rank: 'Genus', + value: 'Calotes', + order: 12, + tsn: '209043', + }, + { + rank: 'Species', + value: 'Calotes rouxii', + order: 13, + tsn: '1055525', + common: ["Roux's Forest Lizard", 'Forest Blood Sucker'], + }, + ], + ], + common: [ + { + name: "Roux's Forest Lizard", + language: 'English', + }, + { + name: 'Forest Blood Sucker', + language: 'English', + }, + ], + status: 'valid', + }), + ]); // Handle any actions with this.on('myAction', function(val) { ... }); await render(hbs`{{control/md-itis taxonomy=taxonomy}}`); - assert.equal(find('.md-itis').textContent.replace(/[ \n]+/g, '|').trim(), - '|Search|Value|Kingdom|(optional)|Select|a|kingdom.|Search|' + assert.equal( + find('.md-itis') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Search|Value|Kingdom|(optional)|Select|a|kingdom.|Search|', ); // await fillIn('.md-input-input input.ember-text-field', 'shark'); // await click('button[type=submit]'); // await settled(); - await render(hbs`{{control/md-itis taxonomy=taxonomy searchResult=taxa found=true}}`); + await render( + hbs`{{control/md-itis taxonomy=taxonomy searchResult=taxa found=true}}`, + ); assert.ok(find('.md-itis-taxalist'), 'renders search result'); await click('.md-itis-taxalist .list-group-item .btn-success'); - assert.ok(find('.md-itis-selectedlist .list-group-item'), 'renders selected item'); + assert.ok( + find('.md-itis-selectedlist .list-group-item'), + 'renders selected item', + ); }); }); diff --git a/tests/integration/pods/components/control/md-json-button/component-test.js b/tests/integration/pods/components/control/md-json-button/component-test.js index 532bff98f..314936abf 100644 --- a/tests/integration/pods/components/control/md-json-button/component-test.js +++ b/tests/integration/pods/components/control/md-json-button/component-test.js @@ -3,56 +3,55 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | control/md json button', function(hooks) { +module('Integration | Component | control/md json button', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); this.set('json', { - foo: 'bar' + foo: 'bar', }); - await render(hbs `{{control/md-json-button}}`); + await render(hbs`{{control/md-json-button}}`); - assert.equal(find('button').textContent - .trim(), 'Preview JSON'); + assert.equal(find('button').textContent.trim(), 'Preview JSON'); // Template block usage: - await render(hbs ` + await render(hbs` {{#control/md-json-button}} template block text {{/control/md-json-button}} `); - assert.equal(find('button').textContent - .trim(), 'template block text'); + assert.equal(find('button').textContent.trim(), 'template block text'); }); - test('render json modal', async function(assert) { + test('render json modal', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); this.set('json', { - foo: 'bar' + foo: 'bar', }); - await render(hbs `{{control/md-json-button json=json preview=true}}`); + await render(hbs`{{control/md-json-button json=json preview=true}}`); await click('button.btn'); - assert.equal(document.querySelector('.md-jsmodal-container') - .textContent - .trim(), '{"foo": "bar"}'); + assert.equal( + document.querySelector('.md-jsmodal-container').textContent.trim(), + '{"foo": "bar"}', + ); }); - test('render json slider', async function(assert) { + test('render json slider', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); this.set('json', { - foo: 'bar' + foo: 'bar', }); - await render(hbs `{{control/md-json-button json=json title="foobar"}} + await render(hbs`{{control/md-json-button json=json title="foobar"}}
    {{#from-elsewhere name="md-slider-json" as |slider|}}

    {{slider.title}}

    @@ -63,7 +62,11 @@ module('Integration | Component | control/md json button', function(hooks) { await click('button.btn'); - assert.equal(find('.slider').textContent.replace(/[ \n]+/g, '|').trim(), - '|Viewing|JSON|for:|foobar|{"foo":|"bar"}|'); + assert.equal( + find('.slider') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Viewing|JSON|for:|foobar|{"foo":|"bar"}|', + ); }); }); diff --git a/tests/integration/pods/components/control/md-json-viewer/component-test.js b/tests/integration/pods/components/control/md-json-viewer/component-test.js index acdd2786f..448dd07d3 100644 --- a/tests/integration/pods/components/control/md-json-viewer/component-test.js +++ b/tests/integration/pods/components/control/md-json-viewer/component-test.js @@ -4,33 +4,30 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | control/md json viewer', function(hooks) { +module('Integration | Component | control/md json viewer', function (hooks) { setupRenderingTest(hooks); - test('render json modal', async function(assert) { + test('render json modal', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); this.set('json', { - foo: 'bar' + foo: 'bar', }); - await render(hbs `{{control/md-json-viewer json=json}}`); + await render(hbs`{{control/md-json-viewer json=json}}`); - assert.equal($('.md-jsmodal-container') - .text() - .trim(), '{"foo": "bar"}'); + assert.equal($('.md-jsmodal-container').text().trim(), '{"foo": "bar"}'); }); - test('render json viewer', async function(assert) { + test('render json viewer', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); this.set('json', { - foo: 'bar' + foo: 'bar', }); - await render(hbs `{{control/md-json-viewer json=json modal=false}}`); + await render(hbs`{{control/md-json-viewer json=json modal=false}}`); - assert.equal(find('.md-json-viewer').textContent - .trim(), '{"foo": "bar"}'); + assert.equal(find('.md-json-viewer').textContent.trim(), '{"foo": "bar"}'); }); }); diff --git a/tests/integration/pods/components/control/md-modal/component-test.js b/tests/integration/pods/components/control/md-modal/component-test.js index 16478202e..ccc0795e6 100644 --- a/tests/integration/pods/components/control/md-modal/component-test.js +++ b/tests/integration/pods/components/control/md-modal/component-test.js @@ -3,10 +3,10 @@ import { setupRenderingTest } from 'ember-qunit'; import { render } from '@ember/test-helpers'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | control/md modal', function(hooks) { +module('Integration | Component | control/md modal', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); @@ -21,7 +21,9 @@ module('Integration | Component | control/md modal', function(hooks) { {{/control/md-modal}} `); - assert.equal(document.querySelector('.md-modal-container').textContent.trim(), - 'template block text'); + assert.equal( + document.querySelector('.md-modal-container').textContent.trim(), + 'template block text', + ); }); }); diff --git a/tests/integration/pods/components/control/md-record-table/buttons/component-test.js b/tests/integration/pods/components/control/md-record-table/buttons/component-test.js index d03bdfe63..12aff1472 100644 --- a/tests/integration/pods/components/control/md-record-table/buttons/component-test.js +++ b/tests/integration/pods/components/control/md-record-table/buttons/component-test.js @@ -3,33 +3,42 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | control/md record table/buttons', function ( - hooks) { - setupRenderingTest(hooks); +module( + 'Integration | Component | control/md record table/buttons', + function (hooks) { + setupRenderingTest(hooks); - test('it renders', async function (assert) { - assert.expect(4); - // Set any properties with this.set('myProperty', 'value'); - this.set('model', { - hasDirtyHash: true, - hasSchemaErrors: true - }); - // Handle any actions with this.on('myAction', function(val) { ... }); + test('it renders', async function (assert) { + assert.expect(4); + // Set any properties with this.set('myProperty', 'value'); + this.set('model', { + hasDirtyHash: true, + hasSchemaErrors: true, + }); + // Handle any actions with this.on('myAction', function(val) { ... }); - await render(hbs `{{control/md-record-table/buttons record=model}}`); + await render(hbs`{{control/md-record-table/buttons record=model}}`); - assert.equal(find('.md-dashboard-buttons').textContent.replace( - /[ \n]+/g, '|').trim(), '|Show|Edit|Delete|Preview|JSON|'); - assert.dom('.md-status-icon .btn-danger').isVisible(); - assert.dom('.md-status-icon .btn-warning').isVisible(); - // Template block usage: + assert.equal( + find('.md-dashboard-buttons') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Show|Edit|Delete|Preview|JSON|', + ); + assert.dom('.md-status-icon .btn-danger').isVisible(); + assert.dom('.md-status-icon .btn-warning').isVisible(); + // Template block usage: await render(hbs`{{#control/md-record-table/buttons}} template block text - {{/control/md-record-table/buttons}}` - ); + {{/control/md-record-table/buttons}}`); - assert.equal(find('.md-dashboard-buttons').textContent.replace( - /[ \n]+/g, '|').trim(), '|Show|Edit|Delete|Preview|JSON|template|block|text|', 'block'); - }); - -}); + assert.equal( + find('.md-dashboard-buttons') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Show|Edit|Delete|Preview|JSON|template|block|text|', + 'block', + ); + }); + }, +); diff --git a/tests/integration/pods/components/control/md-record-table/buttons/custom/component-test.js b/tests/integration/pods/components/control/md-record-table/buttons/custom/component-test.js index b01581c33..6b0bd5dea 100644 --- a/tests/integration/pods/components/control/md-record-table/buttons/custom/component-test.js +++ b/tests/integration/pods/components/control/md-record-table/buttons/custom/component-test.js @@ -3,32 +3,37 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | control/md record table/buttons/custom', function(hooks) { - setupRenderingTest(hooks); +module( + 'Integration | Component | control/md record table/buttons/custom', + function (hooks) { + setupRenderingTest(hooks); - test('it renders', async function(assert) { - assert.expect(2); + test('it renders', async function (assert) { + assert.expect(2); - this.set('rec', { - biz: 'baz' - }); + this.set('rec', { + biz: 'baz', + }); - this.set('column', { - buttonConfig: { - title: 'foobar', - style: 'warning', - action: function(rec){ - assert.equal(rec.biz, 'baz', 'action fired'); - } - } - }); + this.set('column', { + buttonConfig: { + title: 'foobar', + style: 'warning', + action: function (rec) { + assert.equal(rec.biz, 'baz', 'action fired'); + }, + }, + }); - // Handle any actions with this.on('myAction', function(val) { ... }); + // Handle any actions with this.on('myAction', function(val) { ... }); - await render(hbs`{{control/md-record-table/buttons/custom column=column record=rec}}`); + await render( + hbs`{{control/md-record-table/buttons/custom column=column record=rec}}`, + ); - assert.equal(find('button.btn-warning').textContent.trim(), 'foobar'); + assert.equal(find('button.btn-warning').textContent.trim(), 'foobar'); - click('button.btn-warning'); - }); -}); + click('button.btn-warning'); + }); + }, +); diff --git a/tests/integration/pods/components/control/md-record-table/buttons/filter/component-test.js b/tests/integration/pods/components/control/md-record-table/buttons/filter/component-test.js index 77aa273ff..3073699d5 100644 --- a/tests/integration/pods/components/control/md-record-table/buttons/filter/component-test.js +++ b/tests/integration/pods/components/control/md-record-table/buttons/filter/component-test.js @@ -3,24 +3,32 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | control/md record table/buttons/filter', function(hooks) { - setupRenderingTest(hooks); +module( + 'Integration | Component | control/md record table/buttons/filter', + function (hooks) { + setupRenderingTest(hooks); - test('it renders', async function(assert) { - assert.expect(2); + test('it renders', async function (assert) { + assert.expect(2); - var items = ['foo', 'bar']; - // Set any properties with this.set('myProperty', 'value'); - this.set('selectedItems', items); - // Handle any actions with this.on('myAction', function(val) { ... }); - this.set('deleteSelected', function(selectedItems) { - assert.equal(selectedItems, items, 'fires action') - }); + var items = ['foo', 'bar']; + // Set any properties with this.set('myProperty', 'value'); + this.set('selectedItems', items); + // Handle any actions with this.on('myAction', function(val) { ... }); + this.set('deleteSelected', function (selectedItems) { + assert.equal(selectedItems, items, 'fires action'); + }); - await render(hbs`{{control/md-record-table/buttons/filter deleteSelected=deleteSelected selectedItems=selectedItems}}`); + await render( + hbs`{{control/md-record-table/buttons/filter deleteSelected=deleteSelected selectedItems=selectedItems}}`, + ); - assert.equal(find('button.btn-danger').textContent.trim(), 'Delete Selected'); + assert.equal( + find('button.btn-danger').textContent.trim(), + 'Delete Selected', + ); - doubleClick('button.btn-danger'); - }); -}); + doubleClick('button.btn-danger'); + }); + }, +); diff --git a/tests/integration/pods/components/control/md-record-table/buttons/show/component-test.js b/tests/integration/pods/components/control/md-record-table/buttons/show/component-test.js index 741a99bfd..3b4c2dbf2 100644 --- a/tests/integration/pods/components/control/md-record-table/buttons/show/component-test.js +++ b/tests/integration/pods/components/control/md-record-table/buttons/show/component-test.js @@ -3,15 +3,18 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | control/md record table/buttons/show', function(hooks) { - setupRenderingTest(hooks); +module( + 'Integration | Component | control/md record table/buttons/show', + function (hooks) { + setupRenderingTest(hooks); - test('it renders', async function(assert) { - // Set any properties with this.set('myProperty', 'value'); - // Handle any actions with this.on('myAction', function(val) { ... }); + test('it renders', async function (assert) { + // Set any properties with this.set('myProperty', 'value'); + // Handle any actions with this.on('myAction', function(val) { ... }); - await render(hbs`{{control/md-record-table/buttons/show}}`); + await render(hbs`{{control/md-record-table/buttons/show}}`); - assert.equal(find('.btn-info').textContent.trim(), 'Show'); - }); -}); + assert.equal(find('.btn-info').textContent.trim(), 'Show'); + }); + }, +); diff --git a/tests/integration/pods/components/control/md-record-table/component-test.js b/tests/integration/pods/components/control/md-record-table/component-test.js index 367312624..94c5ced70 100644 --- a/tests/integration/pods/components/control/md-record-table/component-test.js +++ b/tests/integration/pods/components/control/md-record-table/component-test.js @@ -3,34 +3,45 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | control/md record table', function(hooks) { +module('Integration | Component | control/md record table', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); - this.set('data', [{ - title: 'foo', - type: 'bar' - }, { - title: 'biz', - type: 'baz' - }]); - - this.set('columns', [{ + this.set('data', [ + { + title: 'foo', + type: 'bar', + }, + { + title: 'biz', + type: 'baz', + }, + ]); + + this.set('columns', [ + { propertyName: 'title', - title: 'Title' - }, { + title: 'Title', + }, + { propertyName: 'type', - title: 'Type' - }]); + title: 'Type', + }, + ]); // Handle any actions with this.on('myAction', function(val) { ... }); - await render(hbs`{{control/md-record-table dataColumns=columns data=data}}`); + await render( + hbs`{{control/md-record-table dataColumns=columns data=data}}`, + ); - assert.equal(find('.md-record-table').textContent.replace(/[ \n\t\s]+/g, '|').trim(), - '|Search:|Columns|Show|All|Hide|All|Restore|Defaults|Title|Type|Actions|Title|Type|Actions|Title|Type|foo|bar|Show|biz|baz|Show|Show|1|-|2|of|2|Clear|all|filters|Rows:|10|25|50|500|Page:|1|'); + assert.equal( + find('.md-record-table') + .textContent.replace(/[ \n\t\s]+/g, '|') + .trim(), + '|Search:|Columns|Show|All|Hide|All|Restore|Defaults|Title|Type|Actions|Title|Type|Actions|Title|Type|foo|bar|Show|biz|baz|Show|Show|1|-|2|of|2|Clear|all|filters|Rows:|10|25|50|500|Page:|1|', + ); // Template block usage: await render(hbs` @@ -39,6 +50,9 @@ module('Integration | Component | control/md record table', function(hooks) { {{/control/md-record-table}} `); - assert.equal(find('.md-record-table').textContent.trim(), 'template block text'); + assert.equal( + find('.md-record-table').textContent.trim(), + 'template block text', + ); }); }); diff --git a/tests/integration/pods/components/control/md-repo-link/component-test.js b/tests/integration/pods/components/control/md-repo-link/component-test.js index 6e6b52853..22836d413 100644 --- a/tests/integration/pods/components/control/md-repo-link/component-test.js +++ b/tests/integration/pods/components/control/md-repo-link/component-test.js @@ -5,34 +5,36 @@ import hbs from 'htmlbars-inline-precompile'; import config from 'mdeditor/config/environment'; const { - APP: { - repository, - version - } + APP: { repository, version }, } = config; -module('Integration | Component | control/md repo link', function(hooks) { +module('Integration | Component | control/md repo link', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); - await render(hbs `{{control/md-repo-link}}`); + await render(hbs`{{control/md-repo-link}}`); - assert.equal(find('a').textContent - .trim(), version); - assert.equal(find('a').getAttribute('href'), - `${repository}/tree/${version.substring(version.indexOf('+') + 1)}`, 'link ok'); + assert.equal(find('a').textContent.trim(), version); + assert.equal( + find('a').getAttribute('href'), + `${repository}/tree/${version.substring(version.indexOf('+') + 1)}`, + 'link ok', + ); // Template block usage: - await render(hbs ` + await render(hbs` {{#control/md-repo-link}} template block text {{/control/md-repo-link}} `); - assert.equal(find('a').textContent - .trim(), 'template block text', 'block ok'); + assert.equal( + find('a').textContent.trim(), + 'template block text', + 'block ok', + ); }); }); diff --git a/tests/integration/pods/components/control/md-scroll-into-view/component-test.js b/tests/integration/pods/components/control/md-scroll-into-view/component-test.js index 172c0da64..f8820fd98 100644 --- a/tests/integration/pods/components/control/md-scroll-into-view/component-test.js +++ b/tests/integration/pods/components/control/md-scroll-into-view/component-test.js @@ -3,24 +3,27 @@ import { setupRenderingTest } from 'ember-qunit'; import { render } from '@ember/test-helpers'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | control/md-scroll-into-view', function(hooks) { - setupRenderingTest(hooks); +module( + 'Integration | Component | control/md-scroll-into-view', + function (hooks) { + setupRenderingTest(hooks); - test('it renders', async function(assert) { - // Set any properties with this.set('myProperty', 'value'); - // Handle any actions with this.set('myAction', function(val) { ... }); + test('it renders', async function (assert) { + // Set any properties with this.set('myProperty', 'value'); + // Handle any actions with this.set('myAction', function(val) { ... }); - await render(hbs`{{control/md-scroll-into-view}}`); + await render(hbs`{{control/md-scroll-into-view}}`); - assert.equal(this.element.textContent.trim(), ''); + assert.equal(this.element.textContent.trim(), ''); - // Template block usage: - await render(hbs` + // Template block usage: + await render(hbs` {{#control/md-scroll-into-view}} template block text {{/control/md-scroll-into-view}} `); - assert.equal(this.element.textContent.trim(), 'template block text'); - }); -}); + assert.equal(this.element.textContent.trim(), 'template block text'); + }); + }, +); diff --git a/tests/integration/pods/components/control/md-scroll-spy/component-test.js b/tests/integration/pods/components/control/md-scroll-spy/component-test.js index 2856423c2..86a6218d3 100644 --- a/tests/integration/pods/components/control/md-scroll-spy/component-test.js +++ b/tests/integration/pods/components/control/md-scroll-spy/component-test.js @@ -3,13 +3,13 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | control/md scroll spy', function(hooks) { +module('Integration | Component | control/md scroll spy', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { assert.expect(3); // Set any properties with this.set('myProperty', 'value'); - this.set('setScrollTo', function(target){ + this.set('setScrollTo', function (target) { assert.equal(target, 'foo', 'calls action'); }); @@ -21,7 +21,12 @@ module('Integration | Component | control/md scroll spy', function(hooks) {
    Bar
    {{control/md-scroll-spy setScrollTo=setScrollTo}}`); - assert.equal(find('ul').textContent.replace(/[ \n\t\s]+/g,'|').trim(), '|Foo|Bar|'); + assert.equal( + find('ul') + .textContent.replace(/[ \n\t\s]+/g, '|') + .trim(), + '|Foo|Bar|', + ); await click('ul a'); // Template block usage: diff --git a/tests/integration/pods/components/control/md-select-table/component-test.js b/tests/integration/pods/components/control/md-select-table/component-test.js index 172e3811e..f86052d7e 100644 --- a/tests/integration/pods/components/control/md-select-table/component-test.js +++ b/tests/integration/pods/components/control/md-select-table/component-test.js @@ -3,37 +3,49 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | control/md select table', function(hooks) { +module('Integration | Component | control/md select table', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { assert.expect(3); // Set any properties with this.set('myProperty', 'value'); - this.set('data', [{ - title: 'foo', - type: 'bar' - }, { - title: 'biz', - type: 'baz' - }]); - - this.set('columns', [{ - propertyName: 'title', - title: 'Title' - }, { - propertyName: 'type', - title: 'Type' - }]); - - this.set('select', function(selected){ + this.set('data', [ + { + title: 'foo', + type: 'bar', + }, + { + title: 'biz', + type: 'baz', + }, + ]); + + this.set('columns', [ + { + propertyName: 'title', + title: 'Title', + }, + { + propertyName: 'type', + title: 'Type', + }, + ]); + + this.set('select', function (selected) { assert.equal(selected[0].title, 'foo', 'calls action'); }); - await render(hbs`{{control/md-select-table columns=columns data=data select=select}}`); + await render( + hbs`{{control/md-select-table columns=columns data=data select=select}}`, + ); - assert.equal(find('.md-select-table').textContent.replace(/[ \n\t\s]+/g, '|').trim(), - '|Search:|Columns|Show|All|Hide|All|Restore|Defaults|Title|Type|Title|Type|Title|Type|foo|bar|biz|baz|Show|1|-|2|of|2|Clear|all|filters|Rows:|10|25|50|500|Page:|1|'); + assert.equal( + find('.md-select-table') + .textContent.replace(/[ \n\t\s]+/g, '|') + .trim(), + '|Search:|Columns|Show|All|Hide|All|Restore|Defaults|Title|Type|Title|Type|Title|Type|foo|bar|biz|baz|Show|1|-|2|of|2|Clear|all|filters|Rows:|10|25|50|500|Page:|1|', + ); click('.md-select-table tbody tr'); @@ -44,7 +56,12 @@ module('Integration | Component | control/md select table', function(hooks) { {{/control/md-select-table}} `); - assert.equal(find('.md-select-table').textContent.replace(/[ \n\t\s]+/g, '|').trim(), - '|template|block|text|', 'block ok'); + assert.equal( + find('.md-select-table') + .textContent.replace(/[ \n\t\s]+/g, '|') + .trim(), + '|template|block|text|', + 'block ok', + ); }); }); diff --git a/tests/integration/pods/components/control/md-spinner/component-test.js b/tests/integration/pods/components/control/md-spinner/component-test.js index 757dc85de..83a3c4f69 100644 --- a/tests/integration/pods/components/control/md-spinner/component-test.js +++ b/tests/integration/pods/components/control/md-spinner/component-test.js @@ -3,18 +3,20 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | control/md spinner', function(hooks) { +module('Integration | Component | control/md spinner', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); await render(hbs`{{control/md-spinner text="foobar" size="5"}}`); assert.equal(find('.md-spinner').textContent.trim(), 'foobar'); - assert.ok(find('.md-spinner .md-spinner-text').classList.contains('size-5'), 'adds class'); + assert.ok( + find('.md-spinner .md-spinner-text').classList.contains('size-5'), + 'adds class', + ); // Template block usage: await render(hbs` @@ -23,6 +25,10 @@ module('Integration | Component | control/md spinner', function(hooks) { {{/control/md-spinner}} `); - assert.equal(find('.md-spinner').textContent.trim(), 'template block text', 'block ok'); + assert.equal( + find('.md-spinner').textContent.trim(), + 'template block text', + 'block ok', + ); }); }); diff --git a/tests/integration/pods/components/control/md-spotlight/component-test.js b/tests/integration/pods/components/control/md-spotlight/component-test.js index 64882ec02..50208eb33 100644 --- a/tests/integration/pods/components/control/md-spotlight/component-test.js +++ b/tests/integration/pods/components/control/md-spotlight/component-test.js @@ -3,16 +3,16 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | control/md spotlight', function(hooks) { +module('Integration | Component | control/md spotlight', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { assert.expect(4); // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); var spotlight = this.owner.lookup('service:spotlight'); var scope = { - foo: 'bar' + foo: 'bar', }; var close = function () { assert.equal(this.foo, 'bar', 'calls close action'); @@ -25,7 +25,10 @@ module('Integration | Component | control/md spotlight', function(hooks) { assert.ok(document.querySelector('.md-modal-overlay'), 'render overlay'); assert.equal(find('#foo').textContent.trim(), 'foobar', 'render target'); - assert.ok(find('#foo').classList.contains('md-spotlight-target'), 'adds class'); + assert.ok( + find('#foo').classList.contains('md-spotlight-target'), + 'adds class', + ); spotlight.setTarget('foo'); }); diff --git a/tests/integration/pods/components/control/md-status/component-test.js b/tests/integration/pods/components/control/md-status/component-test.js index 619f96e75..f9c986129 100644 --- a/tests/integration/pods/components/control/md-status/component-test.js +++ b/tests/integration/pods/components/control/md-status/component-test.js @@ -3,16 +3,15 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | control/md status', function(hooks) { +module('Integration | Component | control/md status', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); - this.set('model',{ + this.set('model', { hasDirtyHash: true, - hasSchemaErrors: false - }) + hasSchemaErrors: false, + }); // Handle any actions with this.on('myAction', function(val) { ... }); await render(hbs`{{control/md-status model=model}}`); diff --git a/tests/integration/pods/components/control/subbar-citation/component-test.js b/tests/integration/pods/components/control/subbar-citation/component-test.js index 303e23dc4..e87bb94ad 100644 --- a/tests/integration/pods/components/control/subbar-citation/component-test.js +++ b/tests/integration/pods/components/control/subbar-citation/component-test.js @@ -3,18 +3,21 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | control/subbar citation', function(hooks) { +module('Integration | Component | control/subbar citation', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); await render(hbs`{{control/subbar-citation text="foobar"}}`); - assert.equal(find('.btn-group-vertical').textContent.replace(/[ \n\t\s]+/g, '|').trim(), - '|Select|a|Record|foobar|'); + assert.equal( + find('.btn-group-vertical') + .textContent.replace(/[ \n\t\s]+/g, '|') + .trim(), + '|Select|a|Record|foobar|', + ); // Template block usage: await render(hbs` @@ -23,7 +26,11 @@ module('Integration | Component | control/subbar citation', function(hooks) { {{/control/subbar-citation}} `); - assert.equal(find('.btn-group-vertical').textContent.replace(/[ \n\t\s]+/g, '|').trim(), - '|Select|a|Record|template|block|text|'); + assert.equal( + find('.btn-group-vertical') + .textContent.replace(/[ \n\t\s]+/g, '|') + .trim(), + '|Select|a|Record|template|block|text|', + ); }); }); diff --git a/tests/integration/pods/components/control/subbar-importcsv/component-test.js b/tests/integration/pods/components/control/subbar-importcsv/component-test.js index 08be1642c..9b1179d70 100644 --- a/tests/integration/pods/components/control/subbar-importcsv/component-test.js +++ b/tests/integration/pods/components/control/subbar-importcsv/component-test.js @@ -4,28 +4,34 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import Route from '@ember/routing/route'; -module('Integration | Component | control/subbar importcsv', function(hooks) { +module('Integration | Component | control/subbar importcsv', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { assert.expect(3); // Set any properties with this.set('myProperty', 'value'); var Target = Route.extend({ actions: { doImport() { assert.ok(true, 'calls target action'); - } - } + }, + }, }); this.set('foo', Target.create({})); // Handle any actions with this.on('myAction', function(val) { ... }); - await render(hbs`{{control/subbar-importcsv class="importcsv" actionContext=foo}}`); + await render( + hbs`{{control/subbar-importcsv class="importcsv" actionContext=foo}}`, + ); - assert.equal(find('.importcsv').textContent.replace(/[ \n]+/g, '|').trim(), - '|Do|Import|Cancel|Import|'); + assert.equal( + find('.importcsv') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Do|Import|Cancel|Import|', + ); click('.importcsv .btn-info'); @@ -36,7 +42,12 @@ module('Integration | Component | control/subbar importcsv', function(hooks) { {{/control/subbar-importcsv}} `); - assert.equal(find('.importcsv').textContent.replace(/[ \n]+/g, '|').trim(), - '|Do|Import|Cancel|Import|template|block|text|', 'block'); + assert.equal( + find('.importcsv') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Do|Import|Cancel|Import|template|block|text|', + 'block', + ); }); }); diff --git a/tests/integration/pods/components/control/subbar-link/component-test.js b/tests/integration/pods/components/control/subbar-link/component-test.js index f6975c8f8..865e2b142 100644 --- a/tests/integration/pods/components/control/subbar-link/component-test.js +++ b/tests/integration/pods/components/control/subbar-link/component-test.js @@ -3,13 +3,13 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | control/subbar link', function(hooks) { +module('Integration | Component | control/subbar link', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { assert.expect(3); // Set any properties with this.set('myProperty', 'value'); - this.set('test', function(){ + this.set('test', function () { assert.ok(true, 'called action'); }); // Handle any actions with this.on('myAction', function(val) { ... }); diff --git a/tests/integration/pods/components/control/subbar-spatial/component-test.js b/tests/integration/pods/components/control/subbar-spatial/component-test.js index 46035bc4a..bd9bd45cb 100644 --- a/tests/integration/pods/components/control/subbar-spatial/component-test.js +++ b/tests/integration/pods/components/control/subbar-spatial/component-test.js @@ -1,10 +1,4 @@ -import { - click, - doubleClick, - find, - findAll, - render -} from '@ember/test-helpers'; +import { click, doubleClick, find, findAll, render } from '@ember/test-helpers'; import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; @@ -16,25 +10,27 @@ module('Integration | Component | control/subbar spatial', function (hooks) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); - await render(hbs `{{control/subbar-spatial class="testme"}}`); + await render(hbs`{{control/subbar-spatial class="testme"}}`); - assert.equal(find('.testme').textContent - .replace(/[ \n]+/g, '|') - .trim(), - '|Zoom|All|Import|Features|Export|Features|Delete|All|Back|to|List|' + assert.equal( + find('.testme') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Zoom|All|Import|Features|Export|Features|Delete|All|Back|to|List|', ); // Template block usage: - await render(hbs ` + await render(hbs` {{#control/subbar-spatial class="testme"}} template block text {{/control/subbar-spatial}} `); - assert.equal(find('.testme').textContent - .replace(/[ \n]+/g, '|') - .trim(), - '|Zoom|All|Import|Features|Export|Features|Delete|All|Back|to|List|template|block|text|' + assert.equal( + find('.testme') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Zoom|All|Import|Features|Export|Features|Delete|All|Back|to|List|template|block|text|', ); }); @@ -45,17 +41,24 @@ module('Integration | Component | control/subbar spatial', function (hooks) { assert.expect(5); this.setProperties({ - test1: function () { assert.ok(true, 'called zoomAll'); }, - test2: function () { assert.ok(true, 'called uploadData'); }, - test3: function () { assert.ok(true, 'called exportGeoJSON'); }, + test1: function () { + assert.ok(true, 'called zoomAll'); + }, + test2: function () { + assert.ok(true, 'called uploadData'); + }, + test3: function () { + assert.ok(true, 'called exportGeoJSON'); + }, test4: function () { - assert.ok(true, - 'called deleteAllFeatures'); + assert.ok(true, 'called deleteAllFeatures'); + }, + test5: function () { + assert.ok(true, 'called toList'); }, - test5: function () { assert.ok(true, 'called toList'); } }); - await render(hbs `{{control/subbar-spatial + await render(hbs`{{control/subbar-spatial zoomAll=test1 uploadData=test2 exportGeoJSON=test3 @@ -63,7 +66,7 @@ module('Integration | Component | control/subbar spatial', function (hooks) { toList=test5 }}`); - findAll('button').forEach(async btn => await click(btn)); + findAll('button').forEach(async (btn) => await click(btn)); await doubleClick('.btn-danger'); }); }); diff --git a/tests/integration/pods/components/ember-tooltip/component-test.js b/tests/integration/pods/components/ember-tooltip/component-test.js index e6bf4fac2..9dd0cb3ed 100644 --- a/tests/integration/pods/components/ember-tooltip/component-test.js +++ b/tests/integration/pods/components/ember-tooltip/component-test.js @@ -4,11 +4,10 @@ import { render } from '@ember/test-helpers'; import hbs from 'htmlbars-inline-precompile'; import { assertTooltipContent } from 'ember-tooltips/test-support'; - -module('Integration | Component | ember-tooltip', function(hooks) { +module('Integration | Component | ember-tooltip', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.set('myAction', function(val) { ... }); diff --git a/tests/integration/pods/components/input/md-boolean/component-test.js b/tests/integration/pods/components/input/md-boolean/component-test.js index 8844f48d5..9c38090fe 100644 --- a/tests/integration/pods/components/input/md-boolean/component-test.js +++ b/tests/integration/pods/components/input/md-boolean/component-test.js @@ -3,28 +3,33 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | input/md boolean', function(hooks) { +module('Integration | Component | input/md boolean', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... });" + EOL + EOL + - await render(hbs `{{input/md-boolean value=false text="Foo Bar" label="Baz" }}`); + await render( + hbs`{{input/md-boolean value=false text="Foo Bar" label="Baz" }}`, + ); - assert.equal(find('.form-group').textContent - .replace(/[ \n]+/g, '|'), '|Baz|Foo|Bar|'); + assert.equal( + find('.form-group').textContent.replace(/[ \n]+/g, '|'), + '|Baz|Foo|Bar|', + ); // Template block usage:" + EOL + - await render(hbs ` + await render(hbs` {{#input/md-boolean value=true text="Foo Bar" label="Baz"}} template block text {{/input/md-boolean}} `); - assert.equal(find('.form-group').textContent - .replace(/[ \n]+/g, '|'), '|Baz|Foo|Bar|template|block|text|'); + assert.equal( + find('.form-group').textContent.replace(/[ \n]+/g, '|'), + '|Baz|Foo|Bar|template|block|text|', + ); assert.ok(find('input').checked); }); diff --git a/tests/integration/pods/components/input/md-codelist-multi/component-test.js b/tests/integration/pods/components/input/md-codelist-multi/component-test.js index e4791c0fe..808d8cc75 100644 --- a/tests/integration/pods/components/input/md-codelist-multi/component-test.js +++ b/tests/integration/pods/components/input/md-codelist-multi/component-test.js @@ -2,53 +2,57 @@ import { find, getRootElement, render, - triggerEvent + triggerEvent, } from '@ember/test-helpers'; import Service from '@ember/service'; import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -import { clickTrigger, typeInSearch } from 'ember-power-select/test-support/helpers'; +import { + clickTrigger, + typeInSearch, +} from 'ember-power-select/test-support/helpers'; const foobar = { - codelist: [{ - code: '001', - codeName: 'foo', - description: 'This is foo.' - }, { - code: '002', - codeName: 'bar', - description: 'This is bar.' - }] + codelist: [ + { + code: '001', + codeName: 'foo', + description: 'This is foo.', + }, + { + code: '002', + codeName: 'bar', + description: 'This is bar.', + }, + ], }; const codelist = Service.extend({ - foobar: foobar + foobar: foobar, }); - - -module('Integration | Component | input/md codelist multi', function(hooks) { +module('Integration | Component | input/md codelist multi', function (hooks) { setupRenderingTest(hooks); - hooks.beforeEach(function() { + hooks.beforeEach(function () { this.actions = {}; - this.send = (actionName, ...args) => this.actions[actionName].apply(this, args); + this.send = (actionName, ...args) => + this.actions[actionName].apply(this, args); }); - hooks.beforeEach(function() { + hooks.beforeEach(function () { this.owner.register('service:codelist', codelist); this.codelist = this.owner.lookup('service:codelist'); }); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... });" + EOL + EOL + this.set('fooVal', ['foo', 'bar']); // Template block usage:" + EOL + - await render(hbs ` + await render(hbs` {{#input/md-codelist-multi mdCodeName="foobar" value=fooVal @@ -57,59 +61,68 @@ module('Integration | Component | input/md codelist multi', function(hooks) { {{/input/md-codelist-multi}} `); - assert.equal(find('.md-select').textContent - .replace(/[ \n]+/g, '|'), '|×|bar|×|foo|', - 'renders block with array value'); + assert.equal( + find('.md-select').textContent.replace(/[ \n]+/g, '|'), + '|×|bar|×|foo|', + 'renders block with array value', + ); }); - test('set value action', async function(assert) { + test('set value action', async function (assert) { assert.expect(2); //this.set('fooVal', ['foo']); this.set('value', ['foo']); this.actions.update = (actual) => { - assert.equal(actual, this.value, - 'submitted value is passed to external action'); + assert.equal( + actual, + this.value, + 'submitted value is passed to external action', + ); }; - await render(hbs `{{input/md-codelist-multi + await render(hbs`{{input/md-codelist-multi create=false value=value mdCodeName="foobar" change=(action "update" value)}}`); - await clickTrigger(); - await triggerEvent(find('.ember-power-select-option'),'mouseup'); + await clickTrigger(); + await triggerEvent(find('.ember-power-select-option'), 'mouseup'); - assert.equal(getRootElement() - .textContent - .replace(/[ \n]+/g, '|'), '|×|bar|×|foo|bar|foo|', - 'value updated'); + assert.equal( + getRootElement().textContent.replace(/[ \n]+/g, '|'), + '|×|bar|×|foo|bar|foo|', + 'value updated', + ); }); - test('create option', async function(assert) { - + test('create option', async function (assert) { assert.expect(3); this.set('value', ['foo']); this.actions.update = (actual) => { - assert.equal(actual, this.value, - 'submitted value is passed to external action'); + assert.equal( + actual, + this.value, + 'submitted value is passed to external action', + ); }; - await render(hbs `{{input/md-codelist-multi + await render(hbs`{{input/md-codelist-multi create=true value=value mdCodeName="foobar" change=(action "update" value)}}`); - await clickTrigger(); - await typeInSearch('biz'); - await triggerEvent(find('.ember-power-select-option'),'mouseup'); + await clickTrigger(); + await typeInSearch('biz'); + await triggerEvent(find('.ember-power-select-option'), 'mouseup'); - assert.equal(getRootElement() - .textContent - .replace(/[ \n]+/g, '|'), '|×|foo|×|biz|bar|foo|biz|', - 'value updated'); + assert.equal( + getRootElement().textContent.replace(/[ \n]+/g, '|'), + '|×|foo|×|biz|bar|foo|biz|', + 'value updated', + ); }); }); diff --git a/tests/integration/pods/components/input/md-codelist/component-test.js b/tests/integration/pods/components/input/md-codelist/component-test.js index f5ebb2869..207f7c268 100644 --- a/tests/integration/pods/components/input/md-codelist/component-test.js +++ b/tests/integration/pods/components/input/md-codelist/component-test.js @@ -4,96 +4,113 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import { selectChoose } from 'ember-power-select/test-support'; -import { clickTrigger, typeInSearch } from 'ember-power-select/test-support/helpers'; +import { + clickTrigger, + typeInSearch, +} from 'ember-power-select/test-support/helpers'; const foobar = { - codelist: [{ - code: '001', - codeName: 'foo', - description: 'This is foo.' - }, { - code: '002', - codeName: 'bar', - description: 'This is bar.' - }] + codelist: [ + { + code: '001', + codeName: 'foo', + description: 'This is foo.', + }, + { + code: '002', + codeName: 'bar', + description: 'This is bar.', + }, + ], }; const codelist = Service.extend({ - foobar: foobar + foobar: foobar, }); -module('Integration | Component | input/md-codelist', function(hooks) { +module('Integration | Component | input/md-codelist', function (hooks) { setupRenderingTest(hooks); - hooks.beforeEach(function() { + hooks.beforeEach(function () { this.actions = {}; - this.send = (actionName, ...args) => this.actions[actionName].apply(this, args); + this.send = (actionName, ...args) => + this.actions[actionName].apply(this, args); }); - hooks.beforeEach(function() { + hooks.beforeEach(function () { this.owner.register('service:codelist', codelist); this.codelist = this.owner.lookup('service:codelist'); }); - test('it renders', async function(assert) { + test('it renders', async function (assert) { assert.expect(1); // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... });" + EOL + EOL + - await render(hbs `{{input/md-codelist + await render(hbs`{{input/md-codelist value='foo' mdCodeName="foobar"}}`); - assert.equal(find('.md-select').textContent - .replace(/[ \n]+/g, '|'), '|foo|×|'); + assert.equal( + find('.md-select').textContent.replace(/[ \n]+/g, '|'), + '|foo|×|', + ); }); - test('set value action', async function(assert) { + test('set value action', async function (assert) { assert.expect(2); this.set('value', ['foo']); this.actions.update = (actual) => { - assert.equal(actual, this.value, - 'submitted value is passed to external action'); + assert.equal( + actual, + this.value, + 'submitted value is passed to external action', + ); }; - await render(hbs `{{input/md-codelist + await render(hbs`{{input/md-codelist value=value mdCodeName="foobar" change=(action "update" value)}}`); - await selectChoose('.md-select','bar'); + await selectChoose('.md-select', 'bar'); - // return settled().then(() => { - assert.equal(find('.md-select') - .textContent - .replace(/[ \n]+/g, '|'), '|bar|×|', - 'value updated'); - // }); + // return settled().then(() => { + assert.equal( + find('.md-select').textContent.replace(/[ \n]+/g, '|'), + '|bar|×|', + 'value updated', + ); + // }); }); - test('create option', async function(assert) { + test('create option', async function (assert) { assert.expect(2); this.set('value', ['foo']); this.actions.update = (actual) => { - assert.equal(actual, this.value, - 'submitted value is passed to external action'); + assert.equal( + actual, + this.value, + 'submitted value is passed to external action', + ); }; - await render(hbs `{{input/md-codelist + await render(hbs`{{input/md-codelist create=true value=value mdCodeName="foobar" change=(action "update" value)}}`); - await clickTrigger(); - await typeInSearch('biz'); - await triggerEvent(find('.ember-power-select-option'),'mouseup'); - - //return settled().then(() => { - assert.equal(find('.md-select') - .textContent - .replace(/[ \n]+/g, '|'), '|biz|×|', - 'value updated'); - //}); + await clickTrigger(); + await typeInSearch('biz'); + await triggerEvent(find('.ember-power-select-option'), 'mouseup'); + + //return settled().then(() => { + assert.equal( + find('.md-select').textContent.replace(/[ \n]+/g, '|'), + '|biz|×|', + 'value updated', + ); + //}); }); }); diff --git a/tests/integration/pods/components/input/md-date-range/component-test.js b/tests/integration/pods/components/input/md-date-range/component-test.js index 6ab30fbd2..c91fa0984 100644 --- a/tests/integration/pods/components/input/md-date-range/component-test.js +++ b/tests/integration/pods/components/input/md-date-range/component-test.js @@ -3,23 +3,36 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | input/md date range', function(hooks) { +module('Integration | Component | input/md date range', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); this.set('start', new Date('2016-01-01')); this.set('end', new Date('2017-01-01')); // Handle any actions with this.on('myAction', function(val) { ... }); - await render(hbs`{{input/md-date-range class="testme" startDateTime=start endDateTime=end profilePath="foobar"}}`); + await render( + hbs`{{input/md-date-range class="testme" startDateTime=start endDateTime=end profilePath="foobar"}}`, + ); - assert.equal(find('.testme').textContent.replace(/[ \n]+/g, '|').trim(), - 'Dates|Start|Date|End|Date|Pick|Fiscal|Year|Pick|a|Fiscal|Year|'); + assert.equal( + find('.testme') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + 'Dates|Start|Date|End|Date|Pick|Fiscal|Year|Pick|a|Fiscal|Year|', + ); - assert.equal(new Date(findAll('.date input')[0].value).toISOString(), this.start.toISOString(), 'set start'); - assert.equal(new Date(findAll('.date input')[1].value).toISOString(), this.end.toISOString(), 'set end'); + assert.equal( + new Date(findAll('.date input')[0].value).toISOString(), + this.start.toISOString(), + 'set start', + ); + assert.equal( + new Date(findAll('.date input')[1].value).toISOString(), + this.end.toISOString(), + 'set end', + ); // Template block usage: await render(hbs` {{#input/md-date-range class="testme" startDateTime=start endDateTime=end profilePath="foobar"}} @@ -27,7 +40,12 @@ module('Integration | Component | input/md date range', function(hooks) { {{/input/md-date-range}} `); - assert.equal(find('.testme').textContent.replace(/[ \n]+/g, '|').trim(), - 'Dates|Start|Date|End|Date|Pick|Fiscal|Year|Pick|a|Fiscal|Year|template|block|text|', 'block'); + assert.equal( + find('.testme') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + 'Dates|Start|Date|End|Date|Pick|Fiscal|Year|Pick|a|Fiscal|Year|template|block|text|', + 'block', + ); }); }); diff --git a/tests/integration/pods/components/input/md-datetime/component-test.js b/tests/integration/pods/components/input/md-datetime/component-test.js index 995794ae8..4a583f443 100644 --- a/tests/integration/pods/components/input/md-datetime/component-test.js +++ b/tests/integration/pods/components/input/md-datetime/component-test.js @@ -3,16 +3,15 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | input/md datetime', function(hooks) { +module('Integration | Component | input/md datetime', function (hooks) { setupRenderingTest(hooks); - test('renders and binds', async function(assert) { - + test('renders and binds', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... });" + EOL + EOL + this.set('mydate', '1999-12-31T23:59:59.999+0900'); - await render(hbs `{{input/md-datetime + await render(hbs`{{input/md-datetime date=mydate format="YYYY-MM-DD" placeholder="Enter date"}}`); diff --git a/tests/integration/pods/components/input/md-input-confirm/component-test.js b/tests/integration/pods/components/input/md-input-confirm/component-test.js index c2ed456b5..ae5ad4fa3 100644 --- a/tests/integration/pods/components/input/md-input-confirm/component-test.js +++ b/tests/integration/pods/components/input/md-input-confirm/component-test.js @@ -3,11 +3,10 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | input/md input confirm', function(hooks) { +module('Integration | Component | input/md input confirm', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); @@ -31,7 +30,12 @@ module('Integration | Component | input/md input confirm', function(hooks) { {{/input/md-input-confirm}} `); - assert.equal(find('.md-input').textContent.replace(/[ \n]+/g, '|').trim(), - '|Edit|template|block|text|', 'block'); + assert.equal( + find('.md-input') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Edit|template|block|text|', + 'block', + ); }); }); diff --git a/tests/integration/pods/components/input/md-input/component-test.js b/tests/integration/pods/components/input/md-input/component-test.js index 072a83d75..ffbec1e8f 100644 --- a/tests/integration/pods/components/input/md-input/component-test.js +++ b/tests/integration/pods/components/input/md-input/component-test.js @@ -3,12 +3,11 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | input/md input', function(hooks) { +module('Integration | Component | input/md input', function (hooks) { setupRenderingTest(hooks); - test('it renders md-input', async function(assert) { - - await render(hbs ` + test('it renders md-input', async function (assert) { + await render(hbs` {{input/md-input label="Foo" value="Bar" @@ -27,13 +26,16 @@ module('Integration | Component | input/md input', function(hooks) { input.prop('maxlength'), input.val(), input.prop('placeholder'), - input.hasClass('test') + input.hasClass('test'), ]; - assert.deepEqual(props, [true, 100, 'Bar', 'Enter FooBar', true], - 'properties set OK'); + assert.deepEqual( + props, + [true, 100, 'Bar', 'Enter FooBar', true], + 'properties set OK', + ); // Template block usage:" + EOL + - await render(hbs ` + await render(hbs` {{#input/md-input}}

    help text

    {{/input/md-input}} diff --git a/tests/integration/pods/components/input/md-markdown-area/component-test.js b/tests/integration/pods/components/input/md-markdown-area/component-test.js index 5b2d88b7a..fa5fcff7d 100644 --- a/tests/integration/pods/components/input/md-markdown-area/component-test.js +++ b/tests/integration/pods/components/input/md-markdown-area/component-test.js @@ -3,25 +3,34 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | input/md markdown area', function(hooks) { +module('Integration | Component | input/md markdown area', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); await render(hbs`{{input/md-markdown-area required=true}}`); - assert.equal(find('.md-markdown-editor').innerText.replace(/[ \n\s]+/g, '').trim(), - '||||Entertext,Markdownissupported.​length:0100:0'); + assert.equal( + find('.md-markdown-editor') + .innerText.replace(/[ \n\s]+/g, '') + .trim(), + '||||Entertext,Markdownissupported.​length:0100:0', + ); assert.ok(find('.md-markdown-editor .length.md-error'), 'required ok'); this.set('markdownValue', 'This is foobar.'); - await render(hbs`{{input/md-markdown-area value=markdownValue maxlength=10 required=false}}`); + await render( + hbs`{{input/md-markdown-area value=markdownValue maxlength=10 required=false}}`, + ); - assert.equal(find('.md-markdown-editor .length.md-error').textContent, 'length: 15', 'maxlength ok'); + assert.equal( + find('.md-markdown-editor .length.md-error').textContent, + 'length: 15', + 'maxlength ok', + ); // Template block usage: await render(hbs` @@ -30,7 +39,12 @@ module('Integration | Component | input/md markdown area', function(hooks) { {{/input/md-markdown-area}} `); - assert.equal(find('.md-markdown-editor').innerText.replace(/[ \n\s]+/g, '').trim(), - '||||Entertext,Markdownissupported.​length:0100:0templateblocktext', 'block'); + assert.equal( + find('.md-markdown-editor') + .innerText.replace(/[ \n\s]+/g, '') + .trim(), + '||||Entertext,Markdownissupported.​length:0100:0templateblocktext', + 'block', + ); }); }); diff --git a/tests/integration/pods/components/input/md-month/component-test.js b/tests/integration/pods/components/input/md-month/component-test.js index f95704355..9ae138d39 100644 --- a/tests/integration/pods/components/input/md-month/component-test.js +++ b/tests/integration/pods/components/input/md-month/component-test.js @@ -3,10 +3,10 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | input/md month', function(hooks) { +module('Integration | Component | input/md month', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); diff --git a/tests/integration/pods/components/input/md-select-contact/component-test.js b/tests/integration/pods/components/input/md-select-contact/component-test.js index 31d2b7501..548b59eaf 100644 --- a/tests/integration/pods/components/input/md-select-contact/component-test.js +++ b/tests/integration/pods/components/input/md-select-contact/component-test.js @@ -4,11 +4,10 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import createContact from 'mdeditor/tests/helpers/create-contact'; - -module('Integration | Component | input/md select contact', function(hooks) { +module('Integration | Component | input/md select contact', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { var contacts = createContact(3); var cs = this.owner.lookup('service:contacts'); @@ -18,7 +17,12 @@ module('Integration | Component | input/md select contact', function(hooks) { await render(hbs`{{input/md-select-contact value=1}}`); - assert.equal(find('.md-select-contact').textContent.replace(/[ \n]+/g, '|').trim(), '|Contact1|×|'); + assert.equal( + find('.md-select-contact') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Contact1|×|', + ); // Template block usage: await render(hbs` @@ -27,6 +31,9 @@ module('Integration | Component | input/md select contact', function(hooks) { {{/input/md-select-contact}} `); - assert.equal(find('.md-select-contact').textContent.trim(), 'Select one option'); + assert.equal( + find('.md-select-contact').textContent.trim(), + 'Select one option', + ); }); }); diff --git a/tests/integration/pods/components/input/md-select-contacts/component-test.js b/tests/integration/pods/components/input/md-select-contacts/component-test.js index 96ea7be7f..424d0483e 100644 --- a/tests/integration/pods/components/input/md-select-contacts/component-test.js +++ b/tests/integration/pods/components/input/md-select-contacts/component-test.js @@ -5,11 +5,10 @@ import hbs from 'htmlbars-inline-precompile'; import createContact from 'mdeditor/tests/helpers/create-contact'; import { selectChoose } from 'ember-power-select/test-support'; -module('Integration | Component | input/md select contacts', function(hooks) { +module('Integration | Component | input/md select contacts', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); await render(hbs`{{input/md-select-contacts}}`); @@ -17,8 +16,7 @@ module('Integration | Component | input/md select contacts', function(hooks) { assert.ok(find('.md-select-contact')); }); - test('contact selected', async function(assert) { - + test('contact selected', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); //make sure there's at least one record visible @@ -34,7 +32,12 @@ module('Integration | Component | input/md select contacts', function(hooks) { await selectChoose('.md-select-contact', 'Contact0'); await selectChoose('.md-select-contact', 'Contact1'); - assert.equal(find('.md-select-contact').innerText.replace(/[\s\n]+/g, '|').trim(), - '×|Contact0|×|Contact1', 'select multiple contacts'); + assert.equal( + find('.md-select-contact') + .innerText.replace(/[\s\n]+/g, '|') + .trim(), + '×|Contact0|×|Contact1', + 'select multiple contacts', + ); }); }); diff --git a/tests/integration/pods/components/input/md-select-profile/component-test.js b/tests/integration/pods/components/input/md-select-profile/component-test.js index 16b229dc0..394d63487 100644 --- a/tests/integration/pods/components/input/md-select-profile/component-test.js +++ b/tests/integration/pods/components/input/md-select-profile/component-test.js @@ -1,9 +1,4 @@ -import { - find, - findAll, - render, - triggerEvent -} from '@ember/test-helpers'; +import { find, findAll, render, triggerEvent } from '@ember/test-helpers'; import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; @@ -14,39 +9,48 @@ module('Integration | Component | input/md select profile', function (hooks) { setupRenderingTest(hooks); test('it renders', async function (assert) { - // Set any properties with this.set('myProperty', 'value'); // test dummy for the external profile action this.set('updateProfile', () => {}); this.set('profileId', config.APP.defaultProfileId); - await render(hbs `{{input/md-select-profile + await render(hbs`{{input/md-select-profile value=profileId updateProfile=updateProfile class="testme" }}`); - assert.equal(find('.testme').textContent - .replace(/[ \n]+/g, '|'), '|Profile|Full|?|'); + assert.equal( + find('.testme').textContent.replace(/[ \n]+/g, '|'), + '|Profile|Full|?|', + ); }); test('should trigger external action on change', async function (assert) { - // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... });" + EOL + EOL + // test dummy for the external profile action this.set('updateProfile', (actual) => { - assert.equal(actual, config.APP.defaultProfileId, - 'submitted value is passed to external action'); + assert.equal( + actual, + config.APP.defaultProfileId, + 'submitted value is passed to external action', + ); }); - await render(hbs `{{input/md-select-profile value=null updateProfile=(action updateProfile)}}`); + await render( + hbs`{{input/md-select-profile value=null updateProfile=(action updateProfile)}}`, + ); // select a value and force an onchange await clickTrigger(); - await triggerEvent(findAll( - '.ember-power-select-option .select-value').findBy( - 'innerText', 'Full'), 'mouseup'); + await triggerEvent( + findAll('.ember-power-select-option .select-value').findBy( + 'innerText', + 'Full', + ), + 'mouseup', + ); }); }); diff --git a/tests/integration/pods/components/input/md-select-thesaurus/component-test.js b/tests/integration/pods/components/input/md-select-thesaurus/component-test.js index 9aa69be67..edd82ad69 100644 --- a/tests/integration/pods/components/input/md-select-thesaurus/component-test.js +++ b/tests/integration/pods/components/input/md-select-thesaurus/component-test.js @@ -1,51 +1,52 @@ -import { - find, - findAll, - render, - triggerEvent -} from '@ember/test-helpers'; +import { find, findAll, render, triggerEvent } from '@ember/test-helpers'; import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -import { - clickTrigger -} from 'ember-power-select/test-support/helpers'; +import { clickTrigger } from 'ember-power-select/test-support/helpers'; -module('Integration | Component | input/md select thesaurus', function(hooks) { +module('Integration | Component | input/md select thesaurus', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); - await render(hbs `{{input/md-select-thesaurus}}`); + await render(hbs`{{input/md-select-thesaurus}}`); - assert.equal(find('.md-select').textContent - .replace(/[ \n]+/g, '|'), '|Pick|a|thesaurus|'); + assert.equal( + find('.md-select').textContent.replace(/[ \n]+/g, '|'), + '|Pick|a|thesaurus|', + ); // Template block usage: - await render(hbs ` + await render(hbs` {{#input/md-select-thesaurus}} template block text {{/input/md-select-thesaurus}} `); - assert.equal(find('.md-select').textContent - .replace(/[ \n]+/g, '|'), '|Pick|a|thesaurus|'); + assert.equal( + find('.md-select').textContent.replace(/[ \n]+/g, '|'), + '|Pick|a|thesaurus|', + ); }); - test('should trigger external action on change', async function(assert) { - + test('should trigger external action on change', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... });" + EOL + EOL + // test dummy for the external profile action this.set('selectThesaurus', (id) => { - assert.equal(id.citation.identifier[0].identifier, 'ISO 19115 Topic Category', - 'submitted value is passed to external action'); + assert.equal( + id.citation.identifier[0].identifier, + 'ISO 19115 Topic Category', + 'submitted value is passed to external action', + ); }); - await render(hbs `{{input/md-select-thesaurus selectThesaurus=selectThesaurus}}`); + await render( + hbs`{{input/md-select-thesaurus selectThesaurus=selectThesaurus}}`, + ); // select a value and force an onchange await clickTrigger(); diff --git a/tests/integration/pods/components/input/md-select/component-test.js b/tests/integration/pods/components/input/md-select/component-test.js index 220574d21..4f1aa0aca 100644 --- a/tests/integration/pods/components/input/md-select/component-test.js +++ b/tests/integration/pods/components/input/md-select/component-test.js @@ -1,29 +1,28 @@ -import { - find, - findAll, - render, - triggerEvent -} from '@ember/test-helpers'; +import { find, findAll, render, triggerEvent } from '@ember/test-helpers'; import EmberObject from '@ember/object'; import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -import { clickTrigger, typeInSearch } from 'ember-power-select/test-support/helpers'; +import { + clickTrigger, + typeInSearch, +} from 'ember-power-select/test-support/helpers'; -module('Integration | Component | input/md select', function(hooks) { +module('Integration | Component | input/md select', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... });" + EOL + EOL + - this.set('objArray', [EmberObject.create({ - id: 1, - name: 'foo', - tip: 'bar' - })]); - - await render(hbs ` + this.set('objArray', [ + EmberObject.create({ + id: 1, + name: 'foo', + tip: 'bar', + }), + ]); + + await render(hbs` {{input/md-select value=1 objectArray=objArray @@ -33,28 +32,34 @@ module('Integration | Component | input/md select', function(hooks) { placeholder="Select one"}} `); - assert.equal(find('.md-select').textContent - .replace(/[ \n]+/g, '|'), '|foo|', 'renders ok'); + assert.equal( + find('.md-select').textContent.replace(/[ \n]+/g, '|'), + '|foo|', + 'renders ok', + ); }); - test('set value', async function(assert) { + test('set value', async function (assert) { assert.expect(3); // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... });" + EOL + EOL + - this.set('objArray', [EmberObject.create({ - id: 1, - name: 'foo', - tip: 'bar' - }), EmberObject.create({ - id: 2, - name: 'baz', - tip: 'biz' - })]); + this.set('objArray', [ + EmberObject.create({ + id: 1, + name: 'foo', + tip: 'bar', + }), + EmberObject.create({ + id: 2, + name: 'baz', + tip: 'biz', + }), + ]); this.set('value', 1); - await render(hbs ` + await render(hbs` {{input/md-select value=value objectArray=objArray @@ -62,36 +67,45 @@ module('Integration | Component | input/md select', function(hooks) { namePath="name"}} `); - assert.equal(find('.md-select').textContent - .replace(/[ \n]+/g, '|'), '|foo|', 'value set'); + assert.equal( + find('.md-select').textContent.replace(/[ \n]+/g, '|'), + '|foo|', + 'value set', + ); - await clickTrigger(); - await triggerEvent(findAll('.ember-power-select-option')[1],'mouseup'); + await clickTrigger(); + await triggerEvent(findAll('.ember-power-select-option')[1], 'mouseup'); - assert.equal(find('.md-select').textContent - .replace(/[ \n]+/g, '|'), '|baz|', 'display value updates'); + assert.equal( + find('.md-select').textContent.replace(/[ \n]+/g, '|'), + '|baz|', + 'display value updates', + ); - assert.equal(this.value, 2, 'value is updated'); + assert.equal(this.value, 2, 'value is updated'); }); - test('create option', async function(assert) { + test('create option', async function (assert) { assert.expect(3); // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... });" + EOL + EOL + - this.set('objArray', [EmberObject.create({ - id: 1, - name: 'foo', - tip: 'bar' - }), EmberObject.create({ - id: 2, - name: 'baz', - tip: 'biz' - })]); + this.set('objArray', [ + EmberObject.create({ + id: 1, + name: 'foo', + tip: 'bar', + }), + EmberObject.create({ + id: 2, + name: 'baz', + tip: 'biz', + }), + ]); this.set('value', 1); - await render(hbs ` + await render(hbs` {{input/md-select value=value create=true @@ -100,16 +114,22 @@ module('Integration | Component | input/md select', function(hooks) { namePath="name"}} `); - assert.equal(find('.md-select').textContent - .replace(/[ \n]+/g, '|'), '|foo|', 'value set'); + assert.equal( + find('.md-select').textContent.replace(/[ \n]+/g, '|'), + '|foo|', + 'value set', + ); - await clickTrigger(); - await typeInSearch('biz'); - await triggerEvent(find('.ember-power-select-option'),'mouseup'); + await clickTrigger(); + await typeInSearch('biz'); + await triggerEvent(find('.ember-power-select-option'), 'mouseup'); - assert.equal(find('.md-select').textContent - .replace(/[ \n]+/g, '|'), '|biz|', 'display value updates'); + assert.equal( + find('.md-select').textContent.replace(/[ \n]+/g, '|'), + '|biz|', + 'display value updates', + ); - assert.equal(this.value, 'biz', 'value is updated'); + assert.equal(this.value, 'biz', 'value is updated'); }); }); diff --git a/tests/integration/pods/components/input/md-textarea/component-test.js b/tests/integration/pods/components/input/md-textarea/component-test.js index aa071be47..5beac2bba 100644 --- a/tests/integration/pods/components/input/md-textarea/component-test.js +++ b/tests/integration/pods/components/input/md-textarea/component-test.js @@ -3,15 +3,14 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | input/md textarea', function(hooks) { +module('Integration | Component | input/md textarea', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... });" + EOL + EOL + - await render(hbs ` + await render(hbs` {{input/md-textarea value="Foo bar baz" label="FooBar" @@ -24,13 +23,16 @@ module('Integration | Component | input/md textarea', function(hooks) { assert.equal(find('label').textContent, 'FooBar', 'label renders'); // Template block usage:" + EOL + - await render(hbs ` + await render(hbs` {{#input/md-textarea class="testme"}} template block text {{/input/md-textarea}} `); - assert.equal(find('.testme').textContent - .trim(), 'template block text', 'block renders'); + assert.equal( + find('.testme').textContent.trim(), + 'template block text', + 'block renders', + ); }); }); diff --git a/tests/integration/pods/components/input/md-toggle/component-test.js b/tests/integration/pods/components/input/md-toggle/component-test.js index 4ff73dadd..9991ad606 100644 --- a/tests/integration/pods/components/input/md-toggle/component-test.js +++ b/tests/integration/pods/components/input/md-toggle/component-test.js @@ -3,11 +3,10 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | input/md toggle', function(hooks) { +module('Integration | Component | input/md toggle', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); this.set('value', false); // Handle any actions with this.on('myAction', function(val) { ... }); @@ -19,11 +18,16 @@ module('Integration | Component | input/md toggle', function(hooks) { offLabel="No" onLabel="Yes" }}`); - assert.equal(find('.x-toggle-component').textContent.replace(/[ \n]+/g, '|').trim(), '|No|Yes|'); + assert.equal( + find('.x-toggle-component') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|No|Yes|', + ); await click('.x-toggle-btn'); - assert.ok(find('.toggle-on'), 'toggle on') + assert.ok(find('.toggle-on'), 'toggle on'); // Template block usage: await render(hbs` {{#input/md-toggle class="testme"}} diff --git a/tests/integration/pods/components/layout/md-card/component-test.js b/tests/integration/pods/components/layout/md-card/component-test.js index a4847c832..db29bd46e 100644 --- a/tests/integration/pods/components/layout/md-card/component-test.js +++ b/tests/integration/pods/components/layout/md-card/component-test.js @@ -3,11 +3,10 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | layout/md card', function(hooks) { +module('Integration | Component | layout/md card', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); @@ -26,7 +25,11 @@ module('Integration | Component | layout/md card', function(hooks) { {{/layout/md-card}} `); - assert.equal(find('.md-card').textContent.trim(), 'template block text', 'block'); + assert.equal( + find('.md-card').textContent.trim(), + 'template block text', + 'block', + ); await render(hbs` {{#layout/md-card title="foo" collapsed=true collapsible=true}} diff --git a/tests/integration/pods/components/layout/md-footer/component-test.js b/tests/integration/pods/components/layout/md-footer/component-test.js index 7ba963740..47917bb32 100644 --- a/tests/integration/pods/components/layout/md-footer/component-test.js +++ b/tests/integration/pods/components/layout/md-footer/component-test.js @@ -3,25 +3,28 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | layout/md footer', function(hooks) { +module('Integration | Component | layout/md footer', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); this.set('settings', { data: { - autoSave: false - } - }) + autoSave: false, + }, + }); await render(hbs`{{layout/md-footer settings=settings}}`); - assert.equal(find('.md-footer').textContent.replace(/[ \n]+/g, '|').trim(), - '|Report|Issue|AutoSave:|Off|'); + assert.equal( + find('.md-footer') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Report|Issue|AutoSave:|Off|', + ); - this.set('settings.data.autoSave', true); + this.set('settings.data.autoSave', true); // Template block usage: await render(hbs` {{#layout/md-footer settings=settings}} @@ -29,7 +32,11 @@ module('Integration | Component | layout/md footer', function(hooks) { {{/layout/md-footer}} `); - assert.equal(find('.md-footer').textContent.replace(/[ \n]+/g, '|').trim(), - '|Report|Issue|AutoSave:|On|template|block|text|'); + assert.equal( + find('.md-footer') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Report|Issue|AutoSave:|On|template|block|text|', + ); }); }); diff --git a/tests/integration/pods/components/layout/md-nav-main/component-test.js b/tests/integration/pods/components/layout/md-nav-main/component-test.js index 2c8ed29b0..6e0352eb9 100644 --- a/tests/integration/pods/components/layout/md-nav-main/component-test.js +++ b/tests/integration/pods/components/layout/md-nav-main/component-test.js @@ -3,31 +3,32 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | md nav main', function(hooks) { +module('Integration | Component | md nav main', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { assert.expect(2); // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); - await render(hbs `{{layout/md-nav-main}}`); + await render(hbs`{{layout/md-nav-main}}`); - assert.equal(find('nav').innerText - .replace(/[ \n]+/g, '|'), - '|Dashboard|Export|Import|Publish|Settings'); + assert.equal( + find('nav').innerText.replace(/[ \n]+/g, '|'), + '|Dashboard|Export|Import|Publish|Settings', + ); // Template block usage: - await render(hbs ` + await render(hbs` {{#layout/md-nav-main}} template block text {{/layout/md-nav-main}} `); - assert.equal(find('nav').innerText - .replace(/[ \n]+/g, '|'), - '|Dashboard|Export|Import|Publish|template|block|text|Settings' + assert.equal( + find('nav').innerText.replace(/[ \n]+/g, '|'), + '|Dashboard|Export|Import|Publish|template|block|text|Settings', ); }); }); diff --git a/tests/integration/pods/components/layout/md-nav-secondary/component-test.js b/tests/integration/pods/components/layout/md-nav-secondary/component-test.js index 2d0bb1661..8f7df73a3 100644 --- a/tests/integration/pods/components/layout/md-nav-secondary/component-test.js +++ b/tests/integration/pods/components/layout/md-nav-secondary/component-test.js @@ -5,48 +5,51 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; //Stub profile service -const profiles = [{ - identifier: "full", - namespace: "org.adiwg.profile", +const profiles = [ + { + identifier: 'full', + namespace: 'org.adiwg.profile', nav: { - record: [{ - title: 'Foo', - target: 'record.show.edit.index' - - }, { - title: 'Bar', - target: 'record.show.edit.metadata' - - }] - } + record: [ + { + title: 'Foo', + target: 'record.show.edit.index', + }, + { + title: 'Bar', + target: 'record.show.edit.metadata', + }, + ], + }, }, { identifier: 'basic', - namespace: "org.adiwg.profile", + namespace: 'org.adiwg.profile', nav: { - record: [{ - title: 'FooBar', - target: 'record.show.edit.index' - - }, { - title: 'BarFoo', - target: 'record.show.edit.metadata' - - }, { - title: 'FooBar1', - target: 'record.show.edit.index' - - }, { - title: 'BarFoo2', - target: 'record.show.edit.metadata' - - }] - } - } + record: [ + { + title: 'FooBar', + target: 'record.show.edit.index', + }, + { + title: 'BarFoo', + target: 'record.show.edit.metadata', + }, + { + title: 'FooBar1', + target: 'record.show.edit.index', + }, + { + title: 'BarFoo2', + target: 'record.show.edit.metadata', + }, + ], + }, + }, ]; const profileStub = Service.extend({ - coreProfiles: profiles + coreProfiles: profiles, }); module('Integration | Component | md nav secondary', function (hooks) { @@ -60,9 +63,9 @@ module('Integration | Component | md nav secondary', function (hooks) { this.customService = this.owner.lookup('service:custom-profile'); this.model = { constructor: { - modelName: 'record' - } - } + modelName: 'record', + }, + }; }); test('it renders', async function (assert) { @@ -71,15 +74,17 @@ module('Integration | Component | md nav secondary', function (hooks) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); - await render(hbs `{{layout/md-nav-secondary model=model}}`); + await render(hbs`{{layout/md-nav-secondary model=model}}`); var more = findAll('.overflow-nav').length ? '|More' : ''; - assert.equal(find('.nav').textContent - .replace(/[ \n]+/g, '|'), more + '|Foo|Bar|'); + assert.equal( + find('.nav').textContent.replace(/[ \n]+/g, '|'), + more + '|Foo|Bar|', + ); // Template block usage: - await render(hbs ` + await render(hbs` {{#layout/md-nav-secondary model=model}}
  • template block text
  • {{/layout/md-nav-secondary}} @@ -87,8 +92,10 @@ module('Integration | Component | md nav secondary', function (hooks) { more = findAll('.overflow-nav').length ? '|More' : ''; - assert.equal(find('.nav').textContent - .replace(/[ \n]+/g, '|'), more + '|Foo|Bar|'); + assert.equal( + find('.nav').textContent.replace(/[ \n]+/g, '|'), + more + '|Foo|Bar|', + ); }); test('render after setting profile', async function (assert) { @@ -99,15 +106,22 @@ module('Integration | Component | md nav secondary', function (hooks) { this.set('customService.active', 'org.adiwg.profile.basic'); - await render(hbs `{{layout/md-nav-secondary model=model}}`); + await render(hbs`{{layout/md-nav-secondary model=model}}`); var more = findAll('.overflow-nav').length ? '|More' : ''; - assert.equal(find('.nav').textContent - .replace(/[ \n]+/g, '|'), more + '|FooBar|BarFoo|FooBar1|BarFoo2|'); + assert.equal( + find('.nav').textContent.replace(/[ \n]+/g, '|'), + more + '|FooBar|BarFoo|FooBar1|BarFoo2|', + ); - await render(hbs `
    {{layout/md-nav-secondary model=model}}
    `); + await render( + hbs`
    {{layout/md-nav-secondary model=model}}
    `, + ); - assert.ok(findAll('.dropdown .dropdown-menu').length, 'render more dropdown'); + assert.ok( + findAll('.dropdown .dropdown-menu').length, + 'render more dropdown', + ); }); }); diff --git a/tests/integration/pods/components/layout/md-nav-secondary/link/component-test.js b/tests/integration/pods/components/layout/md-nav-secondary/link/component-test.js index 3f26b381e..f6409233d 100644 --- a/tests/integration/pods/components/layout/md-nav-secondary/link/component-test.js +++ b/tests/integration/pods/components/layout/md-nav-secondary/link/component-test.js @@ -4,39 +4,44 @@ import { render } from '@ember/test-helpers'; import hbs from 'htmlbars-inline-precompile'; import EmberObject from '@ember/object'; -module('Integration | Component | layout/md-nav-secondary/link', function ( - hooks) { - setupRenderingTest(hooks); - - test('it renders', async function (assert) { - // Set any properties with this.set('myProperty', 'value'); - // Handle any actions with this.set('myAction', function(val) { ... }); - this.links = [EmberObject.create({ - title: 'Foo', - target: 'record.show.edit.index', - tip: 'Foo not bar' - }), EmberObject.create({ - title: 'Bar', - target: 'record.show.edit.metadata' - - })]; - - this.nav = { - links: this.links - } - - await render(hbs `{{layout/md-nav-secondary/link link=links.firstObject nav=nav}}`); - - assert.equal(this.element.textContent.trim(), 'Foo'); - - // Template block usage: - await render(hbs ` +module( + 'Integration | Component | layout/md-nav-secondary/link', + function (hooks) { + setupRenderingTest(hooks); + + test('it renders', async function (assert) { + // Set any properties with this.set('myProperty', 'value'); + // Handle any actions with this.set('myAction', function(val) { ... }); + this.links = [ + EmberObject.create({ + title: 'Foo', + target: 'record.show.edit.index', + tip: 'Foo not bar', + }), + EmberObject.create({ + title: 'Bar', + target: 'record.show.edit.metadata', + }), + ]; + + this.nav = { + links: this.links, + }; + + await render( + hbs`{{layout/md-nav-secondary/link link=links.firstObject nav=nav}}`, + ); + + assert.equal(this.element.textContent.trim(), 'Foo'); + + // Template block usage: + await render(hbs` {{#layout/md-nav-secondary/link link=links.lastObject nav=nav}} template block text {{/layout/md-nav-secondary/link}} `); - assert.equal(this.element.textContent.trim(), - 'Bar'); - }); -}); + assert.equal(this.element.textContent.trim(), 'Bar'); + }); + }, +); diff --git a/tests/integration/pods/components/layout/md-nav-sidebar/component-test.js b/tests/integration/pods/components/layout/md-nav-sidebar/component-test.js index fca55264a..343ad58ed 100644 --- a/tests/integration/pods/components/layout/md-nav-sidebar/component-test.js +++ b/tests/integration/pods/components/layout/md-nav-sidebar/component-test.js @@ -6,31 +6,31 @@ import createContact from 'mdeditor/tests/helpers/create-contact'; import { createRecord } from 'mdeditor/tests/helpers/create-record'; import { createDictionary } from 'mdeditor/tests/helpers/create-dictionary'; -module('Integration | Component | md nav sidebar', function(hooks) { +module('Integration | Component | md nav sidebar', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { assert.expect(1); const contacts = createContact(2); contacts.meta = { type: 'contact', list: 'contacts', - title: 'Contacts' + title: 'Contacts', }; const records = createRecord(2); records.meta = { type: 'record', list: 'records', - title: 'Records' + title: 'Records', }; const dicts = createDictionary(2); dicts.meta = { type: 'dictionary', list: 'dictionaries', - title: 'Dictionaries' + title: 'Dictionaries', }; // Set any properties with this.set('myProperty', 'value'); @@ -38,22 +38,22 @@ module('Integration | Component | md nav sidebar', function(hooks) { this.set('model', [records, contacts, dicts]); - await render(hbs `{{layout/md-nav-sidebar items=model version="test"}}`); + await render(hbs`{{layout/md-nav-sidebar items=model version="test"}}`); - assert.equal(find('.sidebar-nav').textContent - .replace(/[ \n]+/g, '|'), - '|mdditorvtest|Records|(2)|My|Record0|My|Record1|Contacts|(2)|Contact0|Contact1|Dictionaries|(2)|My|Dictionary0|My|Dictionary1|' + assert.equal( + find('.sidebar-nav').textContent.replace(/[ \n]+/g, '|'), + '|mdditorvtest|Records|(2)|My|Record0|My|Record1|Contacts|(2)|Contact0|Contact1|Dictionaries|(2)|My|Dictionary0|My|Dictionary1|', ); }); - test('toggle help action', async function(assert) { - await render(hbs `{{layout/md-nav-sidebar}}`); + test('toggle help action', async function (assert) { + await render(hbs`{{layout/md-nav-sidebar}}`); await click('.md-btn-help'); assert.ok(find('.md-sidebar-wrapper').classList.contains('help')); }); - test('toggle sidebar action', async function(assert) { - await render(hbs `
    {{layout/md-nav-sidebar}}
    `); + test('toggle sidebar action', async function (assert) { + await render(hbs`
    {{layout/md-nav-sidebar}}
    `); await click('.sidebar-brand-link'); assert.ok(find('#md-wrapper').classList.contains('toggled')); }); diff --git a/tests/integration/pods/components/layout/md-object-container/component-test.js b/tests/integration/pods/components/layout/md-object-container/component-test.js index 57ee978f9..5cab9d9e1 100644 --- a/tests/integration/pods/components/layout/md-object-container/component-test.js +++ b/tests/integration/pods/components/layout/md-object-container/component-test.js @@ -3,34 +3,40 @@ import { setupRenderingTest } from 'ember-qunit'; import { render, click } from '@ember/test-helpers'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | layout/md-object-container', function (hooks) { - setupRenderingTest(hooks); +module( + 'Integration | Component | layout/md-object-container', + function (hooks) { + setupRenderingTest(hooks); - test('it renders', async function (assert) { - // Set any properties with this.set('myProperty', 'value'); - // Handle any actions with this.set('myAction', function(val) { ... }); + test('it renders', async function (assert) { + // Set any properties with this.set('myProperty', 'value'); + // Handle any actions with this.set('myAction', function(val) { ... }); - await render(hbs `{{layout/md-object-container + await render(hbs`{{layout/md-object-container title="Foo" isCollapsible=true index="1" }}`); - assert.equal(this.element.textContent.trim(), 'Foo #1'); - assert.dom('.md-object-container').hasClass('even'); + assert.equal(this.element.textContent.trim(), 'Foo #1'); + assert.dom('.md-object-container').hasClass('even'); - await click('.md-object-container-header a'); + await click('.md-object-container-header a'); - assert.dom('.md-object-container .btn-collapse').hasClass('collapsed'); + assert.dom('.md-object-container .btn-collapse').hasClass('collapsed'); - // Template block usage: - await render(hbs ` + // Template block usage: + await render(hbs` {{#layout/md-object-container}} template block text {{/layout/md-object-container}} `); - assert.equal(this.element.textContent.trim(), - 'template block text', 'block renders'); - }); -}); + assert.equal( + this.element.textContent.trim(), + 'template block text', + 'block renders', + ); + }); + }, +); diff --git a/tests/integration/pods/components/layout/md-slider/component-test.js b/tests/integration/pods/components/layout/md-slider/component-test.js index 1f79d4d06..92b291a12 100644 --- a/tests/integration/pods/components/layout/md-slider/component-test.js +++ b/tests/integration/pods/components/layout/md-slider/component-test.js @@ -3,11 +3,10 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | layout/md slider', function(hooks) { +module('Integration | Component | layout/md slider', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); @@ -27,7 +26,12 @@ module('Integration | Component | layout/md slider', function(hooks) { }} `); - assert.equal(find('.md-slider').textContent.replace(/[ \n]+/g, '|').trim(), '|Close|biz|foobar|template|block|text|'); - assert.ok(find('.md-card'),'rendered slider content'); + assert.equal( + find('.md-slider') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Close|biz|foobar|template|block|text|', + ); + assert.ok(find('.md-card'), 'rendered slider content'); }); }); diff --git a/tests/integration/pods/components/layout/md-wrap/component-test.js b/tests/integration/pods/components/layout/md-wrap/component-test.js index d2460f348..8a8deb189 100644 --- a/tests/integration/pods/components/layout/md-wrap/component-test.js +++ b/tests/integration/pods/components/layout/md-wrap/component-test.js @@ -3,11 +3,10 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | layout/md wrap', function(hooks) { +module('Integration | Component | layout/md wrap', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); diff --git a/tests/integration/pods/components/layout/nav/dictionary/nav-main/component-test.js b/tests/integration/pods/components/layout/nav/dictionary/nav-main/component-test.js index 2b0f5676c..4a4e66797 100644 --- a/tests/integration/pods/components/layout/nav/dictionary/nav-main/component-test.js +++ b/tests/integration/pods/components/layout/nav/dictionary/nav-main/component-test.js @@ -41,40 +41,42 @@ import hbs from 'htmlbars-inline-precompile'; // coreProfiles: profiles // }); -module('Integration | Component | layout/nav/dictionary/nav-main', function ( - hooks) { - setupRenderingTest(hooks); +module( + 'Integration | Component | layout/nav/dictionary/nav-main', + function (hooks) { + setupRenderingTest(hooks); - // hooks.beforeEach(function () { - // this.owner.register('service:profile', profileStub); - // // Calling inject puts the service instance in the test's context, - // // making it accessible as "profileService" within each test - // this.profileService = this.owner.lookup('service:profile'); - // this.customService = this.owner.lookup('service:custom-profile'); - // this.model = { - // constructor: { - // modelName: 'record' - // } - // } - // }); + // hooks.beforeEach(function () { + // this.owner.register('service:profile', profileStub); + // // Calling inject puts the service instance in the test's context, + // // making it accessible as "profileService" within each test + // this.profileService = this.owner.lookup('service:profile'); + // this.customService = this.owner.lookup('service:custom-profile'); + // this.model = { + // constructor: { + // modelName: 'record' + // } + // } + // }); - test('it renders', async function (assert) { - // Set any properties with this.set('myProperty', 'value'); - // Handle any actions with this.set('myAction', function(val) { ... }); - await render(hbs `{{layout/nav/dictionary/nav-main model=model}} + test('it renders', async function (assert) { + // Set any properties with this.set('myProperty', 'value'); + // Handle any actions with this.set('myAction', function(val) { ... }); + await render(hbs`{{layout/nav/dictionary/nav-main model=model}} {{to-elsewhere named="dictionary-nav" send=(component "control/md-button" text="testme")}} `); - assert.equal(this.element.textContent.trim(), 'testme'); + assert.equal(this.element.textContent.trim(), 'testme'); - // Template block usage: - await render(hbs ` + // Template block usage: + await render(hbs` {{#layout/nav/dictionary/nav-main model=model}} template block text {{/layout/nav/dictionary/nav-main}} {{to-elsewhere named="dictionary-nav" send=(component "control/md-button" text="testme")}} `); - assert.equal(this.element.textContent.trim(), 'testme'); - }); -}); + assert.equal(this.element.textContent.trim(), 'testme'); + }); + }, +); diff --git a/tests/integration/pods/components/layout/nav/record/nav-main/component-test.js b/tests/integration/pods/components/layout/nav/record/nav-main/component-test.js index 657578011..674c0231b 100644 --- a/tests/integration/pods/components/layout/nav/record/nav-main/component-test.js +++ b/tests/integration/pods/components/layout/nav/record/nav-main/component-test.js @@ -4,29 +4,34 @@ import { render } from '@ember/test-helpers'; import hbs from 'htmlbars-inline-precompile'; import config from 'mdeditor/config/environment'; -module('Integration | Component | layout/nav/record/nav-main', function (hooks) { - setupRenderingTest(hooks); +module( + 'Integration | Component | layout/nav/record/nav-main', + function (hooks) { + setupRenderingTest(hooks); - test('it renders', async function (assert) { - // Set any properties with this.set('myProperty', 'value'); - // Handle any actions with this.set('myAction', function(val) { ... }); - this.foo = function () {}; - this.profileId = config.APP.defaultProfileId; + test('it renders', async function (assert) { + // Set any properties with this.set('myProperty', 'value'); + // Handle any actions with this.set('myAction', function(val) { ... }); + this.foo = function () {}; + this.profileId = config.APP.defaultProfileId; - await render(hbs `{{layout/nav/record/nav-main}} + await render(hbs`{{layout/nav/record/nav-main}} {{to-elsewhere named="record-nav" send=(component "input/md-select-profile" value=profileId updateProfile=this.foo)}} `); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|Translate|Profile|Full|?|'); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Translate|Profile|Full|?|', + ); - // Template block usage: - await render(hbs ` + // Template block usage: + await render(hbs` {{#layout/nav/record/nav-main}} template block text {{/layout/nav/record/nav-main}} `); - assert.equal(this.element.textContent.trim(), 'Translate'); - }); -}); + assert.equal(this.element.textContent.trim(), 'Translate'); + }); + }, +); diff --git a/tests/integration/pods/components/md-help/component-test.js b/tests/integration/pods/components/md-help/component-test.js index cca60f5db..685171d7b 100644 --- a/tests/integration/pods/components/md-help/component-test.js +++ b/tests/integration/pods/components/md-help/component-test.js @@ -3,30 +3,31 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | md help', function(hooks) { +module('Integration | Component | md help', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { assert.expect(2); // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); - await render(hbs `{{md-help}}`); + await render(hbs`{{md-help}}`); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|Help|Main|Tour|The|mdEditor|is|a|web|application|that|allows|users|to|author|and|edit|metadata|for|projects|and|datasets.|The|primary|design|goal|is|to|develop|an|editor|that|will|allow|creation|and|management|of|archival|quality|metadata|without|requiring|extensive|knowledge|of|metadata|standards.|A|comprehensive|User|Manual|is|available.|The|manual|includes|a|tutorial,|reference,|and|best|practices.|View|User|Manual|If|you|would|like|to|receive|announcements|regarding|the|mdEditor,|join|our|email|list!|Join|Email|list|' - ); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Help|Main|Tour|The|mdEditor|is|a|web|application|that|allows|users|to|author|and|edit|metadata|for|projects|and|datasets.|The|primary|design|goal|is|to|develop|an|editor|that|will|allow|creation|and|management|of|archival|quality|metadata|without|requiring|extensive|knowledge|of|metadata|standards.|A|comprehensive|User|Manual|is|available.|The|manual|includes|a|tutorial,|reference,|and|best|practices.|View|User|Manual|If|you|would|like|to|receive|announcements|regarding|the|mdEditor,|join|our|email|list!|Join|Email|list|', + ); // Template block usage: - await render(hbs ` + await render(hbs` {{#md-help}} template block text {{/md-help}} `); - assert.ok(this.element.textContent - .trim() - .indexOf('template block text') > 0); + assert.ok( + this.element.textContent.trim().indexOf('template block text') > 0, + ); }); }); diff --git a/tests/integration/pods/components/md-models-table/component-test.js b/tests/integration/pods/components/md-models-table/component-test.js index ac476d9f8..896d62268 100644 --- a/tests/integration/pods/components/md-models-table/component-test.js +++ b/tests/integration/pods/components/md-models-table/component-test.js @@ -3,32 +3,40 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | md models table', function(hooks) { +module('Integration | Component | md models table', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); - this.set('data', [{ - title: 'foo', - type: 'bar' - }, { - title: 'biz', - type: 'baz' - }]); + this.set('data', [ + { + title: 'foo', + type: 'bar', + }, + { + title: 'biz', + type: 'baz', + }, + ]); - this.set('columns', [{ - propertyName: 'title', - title: 'Title' - }, { - propertyName: 'type', - title: 'Type' - }]); + this.set('columns', [ + { + propertyName: 'title', + title: 'Title', + }, + { + propertyName: 'type', + title: 'Type', + }, + ]); await render(hbs`{{md-models-table data=data columns=columns}}`); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|Search:|Columns|Show|All|Hide|All|Restore|Defaults|Title|Type|Title|Type|Title|Type|foo|bar|biz|baz|Show|1|-|2|of|2|Clear|all|filters|Rows:|10|25|50|500|Page:|1|'); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Search:|Columns|Show|All|Hide|All|Restore|Defaults|Title|Type|Title|Type|Title|Type|foo|bar|biz|baz|Show|1|-|2|of|2|Clear|all|filters|Rows:|10|25|50|500|Page:|1|', + ); // Template block usage: await render(hbs` @@ -37,6 +45,9 @@ module('Integration | Component | md models table', function(hooks) { {{/md-models-table}} `); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), '|template|block|text|'); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|template|block|text|', + ); }); }); diff --git a/tests/integration/pods/components/md-models-table/components/check-all/component-test.js b/tests/integration/pods/components/md-models-table/components/check-all/component-test.js index 64988ba5d..45b035eee 100644 --- a/tests/integration/pods/components/md-models-table/components/check-all/component-test.js +++ b/tests/integration/pods/components/md-models-table/components/check-all/component-test.js @@ -3,47 +3,52 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | md models table/components/check all', function(hooks) { - setupRenderingTest(hooks); - - test('it renders', async function(assert) { - assert.expect(4); - // Set any properties with this.set('myProperty', 'value'); - // Handle any actions with this.on('myAction', function(val) { ... }); - this.data = { - themeInstance: { - 'select-all-rows': 'select', - 'deselect-all-rows': 'deselect' - }, - selectedItems: { - length: 0 - }, - length: 1 - }; - - this.toggleAllSelection=function(){ +module( + 'Integration | Component | md models table/components/check all', + function (hooks) { + setupRenderingTest(hooks); + + test('it renders', async function (assert) { + assert.expect(4); + // Set any properties with this.set('myProperty', 'value'); + // Handle any actions with this.on('myAction', function(val) { ... }); + this.data = { + themeInstance: { + 'select-all-rows': 'select', + 'deselect-all-rows': 'deselect', + }, + selectedItems: { + length: 0, + }, + length: 1, + }; + + this.toggleAllSelection = function () { assert.ok(true, 'toggleAll action'); this.set('selectedItems.length', 1); - }; + }; - await render(hbs`{{md-models-table/components/check-all data=data selectedItems=data.selectedItems themeInstance=data.themeInstance toggleAllSelection=toggleAllSelection}}`); + await render( + hbs`{{md-models-table/components/check-all data=data selectedItems=data.selectedItems themeInstance=data.themeInstance toggleAllSelection=toggleAllSelection}}`, + ); - assert.ok(find('span').classList.contains('deselect'), 'add class'); + assert.ok(find('span').classList.contains('deselect'), 'add class'); - await click('span'); + await click('span'); - // await render(hbs`{{md-models-table/components/check-all data=data themeInstance=data.themeInstance toggleAllSelection=toggleAllSelection}}`); + // await render(hbs`{{md-models-table/components/check-all data=data themeInstance=data.themeInstance toggleAllSelection=toggleAllSelection}}`); - assert.ok(find('span').classList.contains('select'), 'deselect'); + assert.ok(find('span').classList.contains('select'), 'deselect'); - // Template block usage: - await render(hbs` + // Template block usage: + await render(hbs` {{#md-models-table/components/check-all}} template block text {{/md-models-table/components/check-all}} `); - assert.equal(this.element.textContent.trim(), ''); - }); -}); + assert.equal(this.element.textContent.trim(), ''); + }); + }, +); diff --git a/tests/integration/pods/components/md-models-table/components/check/component-test.js b/tests/integration/pods/components/md-models-table/components/check/component-test.js index 44d6400bc..35a7f12aa 100644 --- a/tests/integration/pods/components/md-models-table/components/check/component-test.js +++ b/tests/integration/pods/components/md-models-table/components/check/component-test.js @@ -3,34 +3,39 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | md models table/components/check', function(hooks) { - setupRenderingTest(hooks); - - test('it renders', async function(assert) { - // Set any properties with this.set('myProperty', 'value'); - // Handle any actions with this.on('myAction', function(val) { ... }); - this.themeInstance = { +module( + 'Integration | Component | md models table/components/check', + function (hooks) { + setupRenderingTest(hooks); + + test('it renders', async function (assert) { + // Set any properties with this.set('myProperty', 'value'); + // Handle any actions with this.on('myAction', function(val) { ... }); + this.themeInstance = { 'select-row': 'select', - 'deselect-row': 'deselect' + 'deselect-row': 'deselect', }; - this.set('isSelected', false); + this.set('isSelected', false); - await render(hbs`{{md-models-table/components/check isSelected=isSelected themeInstance=themeInstance}}`); + await render( + hbs`{{md-models-table/components/check isSelected=isSelected themeInstance=themeInstance}}`, + ); - assert.ok(find('span').classList.contains('deselect'), 'add class'); + assert.ok(find('span').classList.contains('deselect'), 'add class'); - this.set('isSelected', true); + this.set('isSelected', true); - assert.ok(find('span').classList.contains('select'), 'update class'); + assert.ok(find('span').classList.contains('select'), 'update class'); - // Template block usage: - await render(hbs` + // Template block usage: + await render(hbs` {{#md-models-table/components/check}} template block text {{/md-models-table/components/check}} `); - assert.equal(this.element.textContent.trim(), ''); - }); -}); + assert.equal(this.element.textContent.trim(), ''); + }); + }, +); diff --git a/tests/integration/pods/components/md-models-table/components/row-body/component-test.js b/tests/integration/pods/components/md-models-table/components/row-body/component-test.js index 79909c962..ec39dc282 100644 --- a/tests/integration/pods/components/md-models-table/components/row-body/component-test.js +++ b/tests/integration/pods/components/md-models-table/components/row-body/component-test.js @@ -3,17 +3,22 @@ import { setupRenderingTest } from 'ember-qunit'; import { render } from '@ember/test-helpers'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | md-models-table/components/row-body', function(hooks) { - setupRenderingTest(hooks); +module( + 'Integration | Component | md-models-table/components/row-body', + function (hooks) { + setupRenderingTest(hooks); - test('it renders', async function(assert) { - assert.expect(1); - // Set any properties with this.set('myProperty', 'value'); - // Handle any actions with this.set('myAction', function(val) { ... }); - this.set('myAction', function() { - assert.ok(true, 'call collapseRow'); - }); + test('it renders', async function (assert) { + assert.expect(1); + // Set any properties with this.set('myProperty', 'value'); + // Handle any actions with this.set('myAction', function(val) { ... }); + this.set('myAction', function () { + assert.ok(true, 'call collapseRow'); + }); - await render(hbs`{{md-models-table/components/row-body collapseRow=myAction}}`); - }); -}); + await render( + hbs`{{md-models-table/components/row-body collapseRow=myAction}}`, + ); + }); + }, +); diff --git a/tests/integration/pods/components/md-models-table/components/row-buttons/component-test.js b/tests/integration/pods/components/md-models-table/components/row-buttons/component-test.js index e5f6d98fd..37a26c18d 100644 --- a/tests/integration/pods/components/md-models-table/components/row-buttons/component-test.js +++ b/tests/integration/pods/components/md-models-table/components/row-buttons/component-test.js @@ -3,64 +3,79 @@ import { setupRenderingTest } from 'ember-qunit'; import { render, findAll, click } from '@ember/test-helpers'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | md-models-table/components/row-buttons', function(hooks) { - setupRenderingTest(hooks); +module( + 'Integration | Component | md-models-table/components/row-buttons', + function (hooks) { + setupRenderingTest(hooks); - test('it renders', async function(assert) { - assert.expect(6); - // Set any properties with this.set('myProperty', 'value'); - // Handle any actions with this.set('myAction', function(val) { ... }); - this.set('myAction', function (col, index, record) { - assert.equal(record.title, 'foo', 'called passed action'); - this.expandRow(index, record); - }); + test('it renders', async function (assert) { + assert.expect(6); + // Set any properties with this.set('myProperty', 'value'); + // Handle any actions with this.set('myAction', function(val) { ... }); + this.set('myAction', function (col, index, record) { + assert.equal(record.title, 'foo', 'called passed action'); + this.expandRow(index, record); + }); - await render(hbs`{{md-models-table/components/row-buttons}}`); + await render(hbs`{{md-models-table/components/row-buttons}}`); - this.set('data', [{ - title: 'foo', - type: 'bar' - }, { - title: 'biz', - type: 'baz' - }]); + this.set('data', [ + { + title: 'foo', + type: 'bar', + }, + { + title: 'biz', + type: 'baz', + }, + ]); - this.set('columns', [{ - propertyName: 'title', - title: 'Title' - }, { - propertyName: 'type', - title: 'Type' - }, { - component: 'components/md-models-table/components/row-buttons', - disableFiltering: true, - disableSorting : true, - mayBeHidden: false, - className: 'text-center', - buttons: [{ - title: 'foo', - type: 'info', - icon: 'house', - action: this.myAction - },{ - title: 'biz', - type: 'danger', - icon: 'times', - confirm: true, - action: this.myAction - }] - }]); + this.set('columns', [ + { + propertyName: 'title', + title: 'Title', + }, + { + propertyName: 'type', + title: 'Type', + }, + { + component: 'components/md-models-table/components/row-buttons', + disableFiltering: true, + disableSorting: true, + mayBeHidden: false, + className: 'text-center', + buttons: [ + { + title: 'foo', + type: 'info', + icon: 'house', + action: this.myAction, + }, + { + title: 'biz', + type: 'danger', + icon: 'times', + confirm: true, + action: this.myAction, + }, + ], + }, + ]); - await render(hbs`{{md-models-table data=data columns=columns expandedRowComponent=(component "md-models-table/components/row-body" spotlighted=true)}}`); + await render( + hbs`{{md-models-table data=data columns=columns expandedRowComponent=(component "md-models-table/components/row-body" spotlighted=true)}}`, + ); - assert.equal(findAll('.md-row-buttons .btn').length, 4); - assert.equal(findAll('.md-row-buttons .btn-danger').length, 2); - assert.dom('.md-button-confirm').hasText('biz'); - assert.dom('.md-button-confirm.btn-danger .fa').hasClass('fa-times'); + assert.equal(findAll('.md-row-buttons .btn').length, 4); + assert.equal(findAll('.md-row-buttons .btn-danger').length, 2); + assert.dom('.md-button-confirm').hasText('biz'); + assert.dom('.md-button-confirm.btn-danger .fa').hasClass('fa-times'); - await click('.md-button-confirm'); - assert.dom('.md-button-confirm').hasText('Confirm'); + await click('.md-button-confirm'); + assert.dom('.md-button-confirm').hasText('Confirm'); - await click('.btn-info'); - }); -}); + await click('.btn-info'); + }); + }, +); diff --git a/tests/integration/pods/components/md-title/component-test.js b/tests/integration/pods/components/md-title/component-test.js index ee52e2f34..9c787649b 100644 --- a/tests/integration/pods/components/md-title/component-test.js +++ b/tests/integration/pods/components/md-title/component-test.js @@ -3,10 +3,10 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | md title', function(hooks) { +module('Integration | Component | md title', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); diff --git a/tests/integration/pods/components/md-translate/component-test.js b/tests/integration/pods/components/md-translate/component-test.js index 069464ca2..74aca0ec8 100644 --- a/tests/integration/pods/components/md-translate/component-test.js +++ b/tests/integration/pods/components/md-translate/component-test.js @@ -4,25 +4,24 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import { createRecord } from 'mdeditor/tests/helpers/create-record'; -module('Integration | Component | md translate', function(hooks) { +module('Integration | Component | md translate', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); this.model = createRecord(1)[0]; this.isLoading = false; this.messages = null; - this.result=null; - this.writer= { - type: 'json' - } + this.result = null; + this.writer = { + type: 'json', + }; - window.saveAs = function(blob, title){ + window.saveAs = function (blob, title) { assert.ok(title, 'save title'); assert.equal(blob.constructor.name, 'Blob', 'save blob'); - } + }; await render(hbs`{{md-translate model=model @@ -34,28 +33,53 @@ module('Integration | Component | md translate', function(hooks) { writeObj=writer }}`); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|Options|Choose|Format|Select|one|option|Force|Valid|Ouput?|No|Yes|Show|Empty|Tags?|No|Yes|Translate|'); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Options|Choose|Format|Select|one|option|Force|Valid|Ouput?|No|Yes|Show|Empty|Tags?|No|Yes|Translate|', + ); this.set('isLoading', true); assert.ok(find('.md-spinner'), 'loading'); - this.set('messages', [["WARNING"," FGDC writer"," citation originator role is missing"," CONTEXT is lineage method"],["WARNING"," FGDC writer"," citation publication date is missing"," CONTEXT is lineage method"]]); - - assert.equal(find('.md-translator-error').textContent.replace(/[\s\n]+/g, '|').trim(), + this.set('messages', [ + [ + 'WARNING', + ' FGDC writer', + ' citation originator role is missing', + ' CONTEXT is lineage method', + ], + [ + 'WARNING', + ' FGDC writer', + ' citation publication date is missing', + ' CONTEXT is lineage method', + ], + ]); + + assert.equal( + find('.md-translator-error') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), '|Translation|Warning|Warning|ocurred|during|translation.|WARNING|citation|originator|role|is|missing|FGDC|writer|context|is|lineage|method|WARNING|citation|publication|date|is|missing|FGDC|writer|context|is|lineage|method|', - 'messages'); + 'messages', + ); this.set('result', '{"foo":"bar"}'); - assert.equal(find('.md-translator-preview.warning').textContent.replace(/[\s\n]+/g, '|').trim(), + assert.equal( + find('.md-translator-preview.warning') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), '|Result|Preview|JSON|Format|Save|Result|', - 'result'); + 'result', + ); - assert.equal(find('.md-translator-preview.warning textarea').value, + assert.equal( + find('.md-translator-preview.warning textarea').value, '{"foo":"bar"}', - 'textarea value set'); + 'textarea value set', + ); click('.md-translator-preview.warning .btn-success'); @@ -66,9 +90,10 @@ module('Integration | Component | md translate', function(hooks) { {{/md-translate}} `); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), '|Options|Choose|Format|Select|one|option|Force|Valid|Ouput?|No|Yes|Show|Empty|Tags?|No|Yes|Translate|template|block|text|', - 'block'); - + 'block', + ); }); }); diff --git a/tests/integration/pods/components/models-table/cell-content-display/component-test.js b/tests/integration/pods/components/models-table/cell-content-display/component-test.js index 01555f54f..5c2a3ac2d 100644 --- a/tests/integration/pods/components/models-table/cell-content-display/component-test.js +++ b/tests/integration/pods/components/models-table/cell-content-display/component-test.js @@ -4,31 +4,41 @@ import { render } from '@ember/test-helpers'; import hbs from 'htmlbars-inline-precompile'; import EmberObject from '@ember/object'; -module('Integration | Component | models-table/cell-content-display', function(hooks) { - setupRenderingTest(hooks); +module( + 'Integration | Component | models-table/cell-content-display', + function (hooks) { + setupRenderingTest(hooks); - test('it renders', async function(assert) { - // Set any properties with this.set('myProperty', 'value'); - // Handle any actions with this.set('myAction', function(val) { ... }); - this.set('column', { - propertyName: 'title' - }); + test('it renders', async function (assert) { + // Set any properties with this.set('myProperty', 'value'); + // Handle any actions with this.set('myAction', function(val) { ... }); + this.set('column', { + propertyName: 'title', + }); - this.set('data', EmberObject.create({ - title: 'foo biz baz', - uri: 'bar' - })); + this.set( + 'data', + EmberObject.create({ + title: 'foo biz baz', + uri: 'bar', + }), + ); - await render(hbs`{{models-table/cell-content-display column=column record=data}}`); - assert.equal(this.element.textContent.trim(), 'foo biz baz'); + await render( + hbs`{{models-table/cell-content-display column=column record=data}}`, + ); + assert.equal(this.element.textContent.trim(), 'foo biz baz'); - this.set('column1', { - propertyName: 'title', - truncate: true, - wordLimit: 2 - }); + this.set('column1', { + propertyName: 'title', + truncate: true, + wordLimit: 2, + }); - await render(hbs`{{models-table/cell-content-display column=column1 record=data}}`); - assert.equal(this.element.textContent.trim(), 'foo biz ...'); - }); -}); + await render( + hbs`{{models-table/cell-content-display column=column1 record=data}}`, + ); + assert.equal(this.element.textContent.trim(), 'foo biz ...'); + }); + }, +); diff --git a/tests/integration/pods/components/models-table/row-expand/component-test.js b/tests/integration/pods/components/models-table/row-expand/component-test.js index 3cb514852..45c844dee 100644 --- a/tests/integration/pods/components/models-table/row-expand/component-test.js +++ b/tests/integration/pods/components/models-table/row-expand/component-test.js @@ -3,10 +3,10 @@ import { setupRenderingTest } from 'ember-qunit'; import { render } from '@ember/test-helpers'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | models-table/row-expand', function(hooks) { +module('Integration | Component | models-table/row-expand', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.set('myAction', function(val) { ... }); diff --git a/tests/integration/pods/components/models-table/table-body/component-test.js b/tests/integration/pods/components/models-table/table-body/component-test.js index 63b1e0ad6..10a2e64c6 100644 --- a/tests/integration/pods/components/models-table/table-body/component-test.js +++ b/tests/integration/pods/components/models-table/table-body/component-test.js @@ -3,10 +3,10 @@ import { setupRenderingTest } from 'ember-qunit'; import { render } from '@ember/test-helpers'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | models-table/table-body', function(hooks) { +module('Integration | Component | models-table/table-body', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.set('myAction', function(val) { ... }); diff --git a/tests/integration/pods/components/object/md-address/md-address-block/component-test.js b/tests/integration/pods/components/object/md-address/md-address-block/component-test.js index 81f068438..d4181ee13 100644 --- a/tests/integration/pods/components/object/md-address/md-address-block/component-test.js +++ b/tests/integration/pods/components/object/md-address/md-address-block/component-test.js @@ -3,41 +3,45 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | object/md address/md address block', function(hooks) { - setupRenderingTest(hooks); +module( + 'Integration | Component | object/md address/md address block', + function (hooks) { + setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { + // Set any properties with this.set('myProperty', 'value'); + this.set('address', { + addressType: ['mailing', 'physical'], + description: 'description', + deliveryPoint: ['deliveryPoint0', 'deliveryPoint1'], + city: 'city', + administrativeArea: 'administrativeArea', + postalCode: 'postalCode', + country: 'country', + }); - // Set any properties with this.set('myProperty', 'value'); - this.set('address', { - "addressType": [ - "mailing", - "physical" - ], - "description": "description", - "deliveryPoint": [ - "deliveryPoint0", - "deliveryPoint1" - ], - "city": "city", - "administrativeArea": "administrativeArea", - "postalCode": "postalCode", - "country": "country" - }); - - await render(hbs`{{object/md-address/md-address-block item=address}}`); + await render(hbs`{{object/md-address/md-address-block item=address}}`); - assert.equal(find('address').textContent.replace(/[ \n]+/g, '|').trim(), - '|deliveryPoint0|deliveryPoint1|city,|administrativeArea|postalCode|country|mailing,|physical|'); + assert.equal( + find('address') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|deliveryPoint0|deliveryPoint1|city,|administrativeArea|postalCode|country|mailing,|physical|', + ); - // Template block usage: - await render(hbs` + // Template block usage: + await render(hbs` {{#object/md-address/md-address-block item=address}} template block text {{/object/md-address/md-address-block}} `); - assert.equal(find('address').textContent.replace(/[ \n]+/g, '|').trim(), - '|deliveryPoint0|deliveryPoint1|city,|administrativeArea|postalCode|country|mailing,|physical|'); - }); -}); + assert.equal( + find('address') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|deliveryPoint0|deliveryPoint1|city,|administrativeArea|postalCode|country|mailing,|physical|', + ); + }); + }, +); diff --git a/tests/integration/pods/components/object/md-allocation/component-test.js b/tests/integration/pods/components/object/md-allocation/component-test.js index b1034b776..7f1990f1e 100644 --- a/tests/integration/pods/components/object/md-allocation/component-test.js +++ b/tests/integration/pods/components/object/md-allocation/component-test.js @@ -3,26 +3,31 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | object/md allocation', function(hooks) { +module('Integration | Component | object/md allocation', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); this.set('allocation', { - 'amount': 9.9, - 'currency': 'currency', - 'sourceId': 'source', - 'recipientId': 'recipient', - 'matching': true, - 'comment': 'comment', - sourceAllocationId: 'sourceAllocationId' + amount: 9.9, + currency: 'currency', + sourceId: 'source', + recipientId: 'recipient', + matching: true, + comment: 'comment', + sourceAllocationId: 'sourceAllocationId', }); - await render(hbs`{{object/md-allocation profilePath="test" model=allocation}}`); + await render( + hbs`{{object/md-allocation profilePath="test" model=allocation}}`, + ); - assert.equal(find('.md-card').textContent.replace(/[ \n]+/g, '|').trim(), - '|Amount|Amount|Currency|Choose|unit|of|currency|Award|ID|Source|Pick|contact|that|supplied|funds|Recipient|Pick|contact|that|received|funds|No|Other|Contacts|found.|Add|Other|Contact|Matching|Matching|funds|or|in-kind|services|Comment|No|Online|Resource|found.|Add|Online|Resource|'); + assert.equal( + find('.md-card') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Amount|Amount|Currency|Choose|unit|of|currency|Award|ID|Source|Pick|contact|that|supplied|funds|Recipient|Pick|contact|that|received|funds|No|Other|Contacts|found.|Add|Other|Contact|Matching|Matching|funds|or|in-kind|services|Comment|No|Online|Resource|found.|Add|Online|Resource|', + ); // Template block usage: await render(hbs` @@ -31,7 +36,11 @@ module('Integration | Component | object/md allocation', function(hooks) { {{/object/md-allocation}} `); - assert.equal(find('.testme').textContent.replace(/[ \n]+/g, '|').trim(), - '|Amount|Amount|Currency|Choose|unit|of|currency|Award|ID|Source|Pick|contact|that|supplied|funds|Recipient|Pick|contact|that|received|funds|No|Other|Contacts|found.|Add|Other|Contact|Matching|Matching|funds|or|in-kind|services|Comment|No|Online|Resource|found.|Add|Online|Resource|template|block|text|'); + assert.equal( + find('.testme') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Amount|Amount|Currency|Choose|unit|of|currency|Award|ID|Source|Pick|contact|that|supplied|funds|Recipient|Pick|contact|that|received|funds|No|Other|Contacts|found.|Add|Other|Contact|Matching|Matching|funds|or|in-kind|services|Comment|No|Online|Resource|found.|Add|Online|Resource|template|block|text|', + ); }); }); diff --git a/tests/integration/pods/components/object/md-array-table/component-test.js b/tests/integration/pods/components/object/md-array-table/component-test.js index 10f19681b..80df1a393 100644 --- a/tests/integration/pods/components/object/md-array-table/component-test.js +++ b/tests/integration/pods/components/object/md-array-table/component-test.js @@ -3,19 +3,21 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | object/md array table', function(hooks) { +module('Integration | Component | object/md array table', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); - this.set('data', [{ - biz: 'biz1', - baz: 'baz1' - }, { - biz: 'biz2', - baz: 'baz2' - }]); + this.set('data', [ + { + biz: 'biz1', + baz: 'baz1', + }, + { + biz: 'biz2', + baz: 'baz2', + }, + ]); await render(hbs` {{#object/md-array-table @@ -33,8 +35,12 @@ module('Integration | Component | object/md array table', function(hooks) { {{/object/md-array-table}} `); - assert.equal(find('.panel').textContent.replace(/[ \n]+/g, '|').trim(), - '|FooBars|2|Add|#|Biz|Baz|0|biz1|baz1|Delete|1|biz2|baz2|Delete|'); + assert.equal( + find('.panel') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|FooBars|2|Add|#|Biz|Baz|0|biz1|baz1|Delete|1|biz2|baz2|Delete|', + ); // Template block usage: await render(hbs` @@ -47,7 +53,12 @@ module('Integration | Component | object/md array table', function(hooks) { {{/object/md-array-table}} `); - assert.equal(find('.panel').textContent.replace(/[ \n]+/g, '|').trim(), - '|FooBars|2|Add|#|Biz|Baz|0|template|block|text|Delete|1|template|block|text|Delete|', 'block'); + assert.equal( + find('.panel') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|FooBars|2|Add|#|Biz|Baz|0|template|block|text|Delete|1|template|block|text|Delete|', + 'block', + ); }); }); diff --git a/tests/integration/pods/components/object/md-associated/component-test.js b/tests/integration/pods/components/object/md-associated/component-test.js index 7031595ed..e70134854 100644 --- a/tests/integration/pods/components/object/md-associated/component-test.js +++ b/tests/integration/pods/components/object/md-associated/component-test.js @@ -3,61 +3,79 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | object/md associated', function(hooks) { +module('Integration | Component | object/md associated', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); this.set('model', { - "associationType": "product", - "resourceCitation": { - "title": "Pacific Connectivity Website", - "date": [{ - "date": "2015-09-30T04:00:00.000Z", - "dateType": "publication" - }], - "identifier": [{ - "authority": { - "date": [{ - "date": "2018-01-30T19:09:24.029Z", - "dateType": "published", - "description": "Published using mdEditor" - } - ], - "title": "ScienceBase" + associationType: 'product', + resourceCitation: { + title: 'Pacific Connectivity Website', + date: [ + { + date: '2015-09-30T04:00:00.000Z', + dateType: 'publication', }, - "identifier": "5a70c2dee4b0a9a2e9dafbe7", - "namespace": "gov.sciencebase.catalog", - "description": "Identifier imported from ScienceBase during publication" - }] + ], + identifier: [ + { + authority: { + date: [ + { + date: '2018-01-30T19:09:24.029Z', + dateType: 'published', + description: 'Published using mdEditor', + }, + ], + title: 'ScienceBase', + }, + identifier: '5a70c2dee4b0a9a2e9dafbe7', + namespace: 'gov.sciencebase.catalog', + description: + 'Identifier imported from ScienceBase during publication', + }, + ], }, - "metadataCitation": { - "title": "Metadata for Pacific Connectivity Website", - "responsibleParty": [{ - "party": [{ - "contactId": "05413626-e57e-4121-9f15-39f5df4575fe" - }], - "role": "author" - }], - "identifier": [{ - "identifier": "f4abb4e0-a3d6-450f-adca-6d07eac19b0b", - "namespace": "urn:uuid" - }] + metadataCitation: { + title: 'Metadata for Pacific Connectivity Website', + responsibleParty: [ + { + party: [ + { + contactId: '05413626-e57e-4121-9f15-39f5df4575fe', + }, + ], + role: 'author', + }, + ], + identifier: [ + { + identifier: 'f4abb4e0-a3d6-450f-adca-6d07eac19b0b', + namespace: 'urn:uuid', + }, + ], }, - "resourceType": [{ - "type": "website" + resourceType: [ + { + type: 'website', }, { - "type": "product" - } - ] + type: 'product', + }, + ], }); - await render(hbs`{{object/md-associated profilePath="foobar" model=model}}`); + await render( + hbs`{{object/md-associated profilePath="foobar" model=model}}`, + ); - assert.equal(find('form').textContent.replace(/[ \n]+/g, '|').trim(), - '|Association|Type|product|?|×|Initiative|Type|Choose|Type|of|Initiative|Resource|Types|2|Add|#|Type|Name|0|website|?|×|Delete|1|product|?|×|Delete|Basic|Information|Title|No|Alternate|Title|found.|Add|Alternate|Title|Dates|1|Add|Date|#|Date|Date|Type|Description|0|publication|?|×|Delete|Edition|Presentation|Form|No|Responsible|Party|found.|Add|Responsible|Party|No|Online|Resource|found.|Add|Online|Resource|Identifier|1|Add|OK|#|Identifier|Namespace|Description|0|5a70c2dee4b0a9a2e9dafbe7|gov.sciencebase.catalog|Identifier|imported|from|ScienceBase|during|publication|More...|Delete|Identifier|1|Add|OK|#|Identifier|Namespace|0|5a70c2dee4b0a9a2e9dafbe7|gov.sciencebase.catalog|Edit|Delete|Identifier|1|Add|OK|#|Identifier|Namespace|0|5a70c2dee4b0a9a2e9dafbe7|gov.sciencebase.catalog|Edit|Delete|Series|Name|Issue|Page|No|Other|Details|found.|Add|Other|Detail|No|Graphic|found.|Add|Graphic|Metadata|Citation|Basic|Information|Title|No|Alternate|Title|found.|Add|Alternate|Title|No|Date|found.|Add|Date|Responsible|Parties|1|Add|#|Role|Contacts|0|author|?|×|Delete|No|Online|Resource|found.|Add|Online|Resource|Identifier|1|Add|OK|#|Identifier|Namespace|Description|0|f4abb4e0-a3d6-450f-adca-6d07eac19b0b|urn:uuid|Not|Defined|More...|Delete|Identifier|1|Add|OK|#|Identifier|Namespace|0|f4abb4e0-a3d6-450f-adca-6d07eac19b0b|urn:uuid|Edit|Delete|Identifier|1|Add|OK|#|Identifier|Namespace|0|f4abb4e0-a3d6-450f-adca-6d07eac19b0b|urn:uuid|Edit|Delete|'); + assert.equal( + find('form') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Association|Type|product|?|×|Initiative|Type|Choose|Type|of|Initiative|Resource|Types|2|Add|#|Type|Name|0|website|?|×|Delete|1|product|?|×|Delete|Basic|Information|Title|No|Alternate|Title|found.|Add|Alternate|Title|Dates|1|Add|Date|#|Date|Date|Type|Description|0|publication|?|×|Delete|Edition|Presentation|Form|No|Responsible|Party|found.|Add|Responsible|Party|No|Online|Resource|found.|Add|Online|Resource|Identifier|1|Add|OK|#|Identifier|Namespace|Description|0|5a70c2dee4b0a9a2e9dafbe7|gov.sciencebase.catalog|Identifier|imported|from|ScienceBase|during|publication|More...|Delete|Identifier|1|Add|OK|#|Identifier|Namespace|0|5a70c2dee4b0a9a2e9dafbe7|gov.sciencebase.catalog|Edit|Delete|Identifier|1|Add|OK|#|Identifier|Namespace|0|5a70c2dee4b0a9a2e9dafbe7|gov.sciencebase.catalog|Edit|Delete|Series|Name|Issue|Page|No|Other|Details|found.|Add|Other|Detail|No|Graphic|found.|Add|Graphic|Metadata|Citation|Basic|Information|Title|No|Alternate|Title|found.|Add|Alternate|Title|No|Date|found.|Add|Date|Responsible|Parties|1|Add|#|Role|Contacts|0|author|?|×|Delete|No|Online|Resource|found.|Add|Online|Resource|Identifier|1|Add|OK|#|Identifier|Namespace|Description|0|f4abb4e0-a3d6-450f-adca-6d07eac19b0b|urn:uuid|Not|Defined|More...|Delete|Identifier|1|Add|OK|#|Identifier|Namespace|0|f4abb4e0-a3d6-450f-adca-6d07eac19b0b|urn:uuid|Edit|Delete|Identifier|1|Add|OK|#|Identifier|Namespace|0|f4abb4e0-a3d6-450f-adca-6d07eac19b0b|urn:uuid|Edit|Delete|', + ); // Template block usage: await render(hbs` @@ -66,8 +84,12 @@ module('Integration | Component | object/md associated', function(hooks) { {{/object/md-associated}} `); - assert.equal(find('form').textContent.replace(/[ \n]+/g, '|').trim(), + assert.equal( + find('form') + .textContent.replace(/[ \n]+/g, '|') + .trim(), '|Association|Type|product|?|×|Initiative|Type|Choose|Type|of|Initiative|Resource|Types|2|Add|#|Type|Name|0|website|?|×|Delete|1|product|?|×|Delete|Basic|Information|Title|No|Alternate|Title|found.|Add|Alternate|Title|Dates|1|Add|Date|#|Date|Date|Type|Description|0|publication|?|×|Delete|Edition|Presentation|Form|No|Responsible|Party|found.|Add|Responsible|Party|No|Online|Resource|found.|Add|Online|Resource|Identifier|1|Add|OK|#|Identifier|Namespace|Description|0|5a70c2dee4b0a9a2e9dafbe7|gov.sciencebase.catalog|Identifier|imported|from|ScienceBase|during|publication|More...|Delete|Identifier|1|Add|OK|#|Identifier|Namespace|0|5a70c2dee4b0a9a2e9dafbe7|gov.sciencebase.catalog|Edit|Delete|Identifier|1|Add|OK|#|Identifier|Namespace|0|5a70c2dee4b0a9a2e9dafbe7|gov.sciencebase.catalog|Edit|Delete|Series|Name|Issue|Page|No|Other|Details|found.|Add|Other|Detail|No|Graphic|found.|Add|Graphic|Metadata|Citation|Basic|Information|Title|No|Alternate|Title|found.|Add|Alternate|Title|No|Date|found.|Add|Date|Responsible|Parties|1|Add|#|Role|Contacts|0|author|?|×|Delete|No|Online|Resource|found.|Add|Online|Resource|Identifier|1|Add|OK|#|Identifier|Namespace|Description|0|f4abb4e0-a3d6-450f-adca-6d07eac19b0b|urn:uuid|Not|Defined|More...|Delete|Identifier|1|Add|OK|#|Identifier|Namespace|0|f4abb4e0-a3d6-450f-adca-6d07eac19b0b|urn:uuid|Edit|Delete|Identifier|1|Add|OK|#|Identifier|Namespace|0|f4abb4e0-a3d6-450f-adca-6d07eac19b0b|urn:uuid|Edit|Delete|template|block|text|', - 'block'); + 'block', + ); }); }); diff --git a/tests/integration/pods/components/object/md-associated/preview/component-test.js b/tests/integration/pods/components/object/md-associated/preview/component-test.js index 1313e2aab..97d6dd2fe 100644 --- a/tests/integration/pods/components/object/md-associated/preview/component-test.js +++ b/tests/integration/pods/components/object/md-associated/preview/component-test.js @@ -3,70 +3,95 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | object/md associated/preview', function(hooks) { - setupRenderingTest(hooks); +module( + 'Integration | Component | object/md associated/preview', + function (hooks) { + setupRenderingTest(hooks); - test('it renders', async function(assert) { - - // Set any properties with this.set('myProperty', 'value'); - this.set('model', { - "associationType": "product", - "resourceCitation": { - "title": "Pacific Connectivity Website", - "date": [{ - "date": "2015-09-30T12:00:00.000Z", - "dateType": "publication" - }], - "identifier": [{ - "authority": { - "date": [{ - "date": "2018-01-30T12:00:00.000Z", - "dateType": "published", - "description": "Published using mdEditor" - } - ], - "title": "ScienceBase" - }, - "identifier": "5a70c2dee4b0a9a2e9dafbe7", - "namespace": "gov.sciencebase.catalog", - "description": "Identifier imported from ScienceBase during publication" - }] - }, - "metadataCitation": { - "title": "Metadata for Pacific Connectivity Website", - "responsibleParty": [{ - "party": [{ - "contactId": "05413626-e57e-4121-9f15-39f5df4575fe" - }], - "role": "author" - }], - "identifier": [{ - "identifier": "f4abb4e0-a3d6-450f-adca-6d07eac19b0b", - "namespace": "urn:uuid" - }] - }, - "resourceType": [{ - "type": "website" + test('it renders', async function (assert) { + // Set any properties with this.set('myProperty', 'value'); + this.set('model', { + associationType: 'product', + resourceCitation: { + title: 'Pacific Connectivity Website', + date: [ + { + date: '2015-09-30T12:00:00.000Z', + dateType: 'publication', + }, + ], + identifier: [ + { + authority: { + date: [ + { + date: '2018-01-30T12:00:00.000Z', + dateType: 'published', + description: 'Published using mdEditor', + }, + ], + title: 'ScienceBase', + }, + identifier: '5a70c2dee4b0a9a2e9dafbe7', + namespace: 'gov.sciencebase.catalog', + description: + 'Identifier imported from ScienceBase during publication', + }, + ], }, - { - "type": "product" - } - ] - }); + metadataCitation: { + title: 'Metadata for Pacific Connectivity Website', + responsibleParty: [ + { + party: [ + { + contactId: '05413626-e57e-4121-9f15-39f5df4575fe', + }, + ], + role: 'author', + }, + ], + identifier: [ + { + identifier: 'f4abb4e0-a3d6-450f-adca-6d07eac19b0b', + namespace: 'urn:uuid', + }, + ], + }, + resourceType: [ + { + type: 'website', + }, + { + type: 'product', + }, + ], + }); - await render(hbs`{{object/md-associated/preview item=model class="testme"}}`); + await render( + hbs`{{object/md-associated/preview item=model class="testme"}}`, + ); - assert.equal(find('.testme').textContent.replace(/[ \n]+/g, '|').trim(), - '|Resource|#|Association|Type|product|Initiative|Type|Not|Defined|Title|Pacific|Connectivity|Website|Alternate|Titles|No|alternate|titles|assigned.|Dates|September|30th|2015|(publication)|Identifier|5a70c2dee4b0a9a2e9dafbe7|(gov.sciencebase.catalog)|Responsible|Party|No|responsibility|assigned.|Metadata|Identifier|f4abb4e0-a3d6-450f-adca-6d07eac19b0b|(urn:uuid)|'); + assert.equal( + find('.testme') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Resource|#|Association|Type|product|Initiative|Type|Not|Defined|Title|Pacific|Connectivity|Website|Alternate|Titles|No|alternate|titles|assigned.|Dates|September|30th|2015|(publication)|Identifier|5a70c2dee4b0a9a2e9dafbe7|(gov.sciencebase.catalog)|Responsible|Party|No|responsibility|assigned.|Metadata|Identifier|f4abb4e0-a3d6-450f-adca-6d07eac19b0b|(urn:uuid)|', + ); - // Template block usage: - await render(hbs` + // Template block usage: + await render(hbs` {{#object/md-associated/preview item=model class="testme"}} template block text {{/object/md-associated/preview}} `); - assert.equal(find('.testme').textContent.replace(/[ \n]+/g, '|').trim(), - '|Resource|#|Association|Type|product|Initiative|Type|Not|Defined|Title|Pacific|Connectivity|Website|Alternate|Titles|No|alternate|titles|assigned.|Dates|September|30th|2015|(publication)|Identifier|5a70c2dee4b0a9a2e9dafbe7|(gov.sciencebase.catalog)|Responsible|Party|No|responsibility|assigned.|Metadata|Identifier|f4abb4e0-a3d6-450f-adca-6d07eac19b0b|(urn:uuid)|'); - }); -}); + assert.equal( + find('.testme') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Resource|#|Association|Type|product|Initiative|Type|Not|Defined|Title|Pacific|Connectivity|Website|Alternate|Titles|No|alternate|titles|assigned.|Dates|September|30th|2015|(publication)|Identifier|5a70c2dee4b0a9a2e9dafbe7|(gov.sciencebase.catalog)|Responsible|Party|No|responsibility|assigned.|Metadata|Identifier|f4abb4e0-a3d6-450f-adca-6d07eac19b0b|(urn:uuid)|', + ); + }); + }, +); diff --git a/tests/integration/pods/components/object/md-attribute/component-test.js b/tests/integration/pods/components/object/md-attribute/component-test.js index 6bd170e20..ac14006c1 100644 --- a/tests/integration/pods/components/object/md-attribute/component-test.js +++ b/tests/integration/pods/components/object/md-attribute/component-test.js @@ -11,26 +11,28 @@ module('Integration | Component | object/md attribute', function (hooks) { // Set any properties with this.set('myProperty', 'value'); this.set('model', createAttribute(1)[0]); - await render( - hbs `{{object/md-attribute model=model profilePath="foobar"}}` - ); + await render(hbs`{{object/md-attribute model=model profilePath="foobar"}}`); - assert.equal(find('.md-card').textContent.replace(/[ \n]+/g, '|') - .trim(), - '|Attribute|Information|Code|Name|Definition|Data|Type|dataType0|×|Allow|Null?|Allow|null|values|Common|Name|Domain|Select|or|enter|the|domain|for|this|attribute.|Aliases|1|Add|Alias|0|Delete|Units|Units|Resolution|Case|Sensitive?|Is|the|attribute|content|case|sensitive?|Field|Width|Missing|Value|Minimum|Value|Maximum|Value|' - ); + assert.equal( + find('.md-card') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Attribute|Information|Code|Name|Definition|Data|Type|dataType0|×|Allow|Null?|Allow|null|values|Common|Name|Domain|Select|or|enter|the|domain|for|this|attribute.|Aliases|1|Add|Alias|0|Delete|Units|Units|Resolution|Case|Sensitive?|Is|the|attribute|content|case|sensitive?|Field|Width|Missing|Value|Minimum|Value|Maximum|Value|', + ); // Template block usage: - await render(hbs ` + await render(hbs` {{#object/md-attribute model=model profilePath="foobar"}} template block text {{/object/md-attribute}} `); - assert.equal(find('.md-card').textContent.replace(/[ \n]+/g, '|') - .trim(), + assert.equal( + find('.md-card') + .textContent.replace(/[ \n]+/g, '|') + .trim(), '|Attribute|Information|Code|Name|Definition|Data|Type|dataType0|×|Allow|Null?|Allow|null|values|Common|Name|Domain|Select|or|enter|the|domain|for|this|attribute.|Aliases|1|Add|Alias|0|Delete|Units|Units|Resolution|Case|Sensitive?|Is|the|attribute|content|case|sensitive?|Field|Width|Missing|Value|Minimum|Value|Maximum|Value|', - 'block' + 'block', ); }); }); diff --git a/tests/integration/pods/components/object/md-attribute/preview/component-test.js b/tests/integration/pods/components/object/md-attribute/preview/component-test.js index 973eb8391..cd70d46f1 100644 --- a/tests/integration/pods/components/object/md-attribute/preview/component-test.js +++ b/tests/integration/pods/components/object/md-attribute/preview/component-test.js @@ -4,17 +4,27 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import { createAttribute } from 'mdeditor/tests/helpers/create-dictionary'; -module('Integration | Component | object/md attribute/preview', function(hooks) { - setupRenderingTest(hooks); +module( + 'Integration | Component | object/md attribute/preview', + function (hooks) { + setupRenderingTest(hooks); - test('it renders', async function(assert) { - // Set any properties with this.set('myProperty', 'value'); - this.set('model', createAttribute(1)[0]); + test('it renders', async function (assert) { + // Set any properties with this.set('myProperty', 'value'); + this.set('model', createAttribute(1)[0]); - await render(hbs`
    {{object/md-attribute/preview model=model profilePath="foobar"}}
    `); + await render( + hbs`
    {{object/md-attribute/preview model=model profilePath="foobar"}}
    `, + ); - assert.equal(find('.testme').textContent.replace(/[ \n]+/g, '|').trim(), '|dataType0|×|'); - assert.equal(findAll('.testme input').length, 3, 'render inputs'); - assert.ok(find('.testme .md-select'), 'render select'); - }); -}); + assert.equal( + find('.testme') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|dataType0|×|', + ); + assert.equal(findAll('.testme input').length, 3, 'render inputs'); + assert.ok(find('.testme .md-select'), 'render select'); + }); + }, +); diff --git a/tests/integration/pods/components/object/md-bbox/component-test.js b/tests/integration/pods/components/object/md-bbox/component-test.js index 70ffe6ab1..fd63c329e 100644 --- a/tests/integration/pods/components/object/md-bbox/component-test.js +++ b/tests/integration/pods/components/object/md-bbox/component-test.js @@ -3,22 +3,26 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | object/md bbox', function(hooks) { +module('Integration | Component | object/md bbox', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); this.set('model', { - "westLongitude": -87.52179241764053, - "eastLongitude": -85.30119385960293, - "southLatitude": 29.640690610830635, - "northLatitude": 30.42485959910817 + westLongitude: -87.52179241764053, + eastLongitude: -85.30119385960293, + southLatitude: 29.640690610830635, + northLatitude: 30.42485959910817, }); await render(hbs`{{object/md-bbox profilePath="foobar" model=model}}`); - assert.equal(find('.form').textContent.replace(/[ \n]+/g, '|').trim(), '|North|East|South|West|'); + assert.equal( + find('.form') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|North|East|South|West|', + ); var inputs = findAll('input'); assert.equal(inputs[0].value, this.model.northLatitude, 'north'); @@ -33,7 +37,12 @@ module('Integration | Component | object/md bbox', function(hooks) { {{/object/md-bbox}} `); - assert.equal(find('.form').textContent.replace(/[ \n]+/g, '|').trim(), - '|North|East|South|West|template|block|text|', 'block'); + assert.equal( + find('.form') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|North|East|South|West|template|block|text|', + 'block', + ); }); }); diff --git a/tests/integration/pods/components/object/md-citation-array/component-test.js b/tests/integration/pods/components/object/md-citation-array/component-test.js index ebd7447c3..a109ba056 100644 --- a/tests/integration/pods/components/object/md-citation-array/component-test.js +++ b/tests/integration/pods/components/object/md-citation-array/component-test.js @@ -4,23 +4,31 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import createCitation from 'mdeditor/tests/helpers/create-citation'; -module('Integration | Component | object/md citation array', function(hooks) { +module('Integration | Component | object/md citation array', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); this.set('citation', createCitation(3)); await render(hbs`{{object/md-citation-array}}`); - assert.equal(find('.md-object-table').textContent.replace(/[ \n]+/g, '|').trim(), '|No|Citation|found.|Add|Citation|'); + assert.equal( + find('.md-object-table') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|No|Citation|found.|Add|Citation|', + ); await render(hbs`{{object/md-citation-array model=citation}}`); - assert.equal(find('.md-object-table').textContent.replace(/[ \n]+/g, '|').trim(), + assert.equal( + find('.md-object-table') + .textContent.replace(/[ \n]+/g, '|') + .trim(), '|Citation|3|Add|OK|#|Title|0|title0|More...|Delete|1|title1|More...|Delete|2|title2|More...|Delete|', - 'renders rows'); + 'renders rows', + ); // Template block usage: await render(hbs` @@ -29,6 +37,11 @@ module('Integration | Component | object/md citation array', function(hooks) { {{/object/md-citation-array}} `); - assert.equal(find('.md-object-table').textContent.replace(/[ \n]+/g, '|').trim(), '|No|Citation|found.|Add|Citation|'); + assert.equal( + find('.md-object-table') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|No|Citation|found.|Add|Citation|', + ); }); }); diff --git a/tests/integration/pods/components/object/md-citation/component-test.js b/tests/integration/pods/components/object/md-citation/component-test.js index af6675a7c..8114b4c97 100644 --- a/tests/integration/pods/components/object/md-citation/component-test.js +++ b/tests/integration/pods/components/object/md-citation/component-test.js @@ -4,18 +4,23 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import createCitation from 'mdeditor/tests/helpers/create-citation'; -module('Integration | Component | object/md citation', function(hooks) { +module('Integration | Component | object/md citation', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); this.set('citation', createCitation(1)[0]); - await render(hbs`{{object/md-citation profilePath="foobar" model=citation}}`); + await render( + hbs`{{object/md-citation profilePath="foobar" model=citation}}`, + ); - assert.equal(find('form').textContent.replace(/[ \n]+/g, '|').trim(), - '|Basic|Information|Title|Alternate|Titles|2|Add|Alternate|Title|0|Delete|1|Delete|Dates|2|Add|Date|#|Date|Date|Type|Description|0|dateType|×|Delete|1|dateType|×|Delete|Edition|Presentation|Form|×|presentationForm0|×|presentationForm1|Responsible|Parties|2|Add|#|Role|Contacts|0|role|×|Delete|1|role|×|Delete|Online|Resource|2|Add|OK|#|Name|Uri|0|Not|Defined|http://adiwg.org|Edit|Delete|1|Not|Defined|http://mdeditor.org|Edit|Delete|Identifier|2|Add|OK|#|Identifier|Namespace|Description|0|identifier0|Not|Defined|Not|Defined|More...|Delete|1|identifier-0|Not|Defined|Not|Defined|More...|Delete|Identifier|2|Add|OK|#|Identifier|Namespace|0|identifier0|Not|Defined|Edit|Delete|1|identifier-0|Not|Defined|Edit|Delete|Identifier|2|Add|OK|#|Identifier|Namespace|0|identifier0|Not|Defined|Edit|Delete|1|identifier-0|Not|Defined|Edit|Delete|Series|Name|Issue|Page|Other|Details|2|Add|0|Delete|1|Delete|Graphic|2|Add|OK|0|fileName:|Edit|Delete|1|fileName:|Edit|Delete|'); + assert.equal( + find('form') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Basic|Information|Title|Alternate|Titles|2|Add|Alternate|Title|0|Delete|1|Delete|Dates|2|Add|Date|#|Date|Date|Type|Description|0|dateType|×|Delete|1|dateType|×|Delete|Edition|Presentation|Form|×|presentationForm0|×|presentationForm1|Responsible|Parties|2|Add|#|Role|Contacts|0|role|×|Delete|1|role|×|Delete|Online|Resource|2|Add|OK|#|Name|Uri|0|Not|Defined|http://adiwg.org|Edit|Delete|1|Not|Defined|http://mdeditor.org|Edit|Delete|Identifier|2|Add|OK|#|Identifier|Namespace|Description|0|identifier0|Not|Defined|Not|Defined|More...|Delete|1|identifier-0|Not|Defined|Not|Defined|More...|Delete|Identifier|2|Add|OK|#|Identifier|Namespace|0|identifier0|Not|Defined|Edit|Delete|1|identifier-0|Not|Defined|Edit|Delete|Identifier|2|Add|OK|#|Identifier|Namespace|0|identifier0|Not|Defined|Edit|Delete|1|identifier-0|Not|Defined|Edit|Delete|Series|Name|Issue|Page|Other|Details|2|Add|0|Delete|1|Delete|Graphic|2|Add|OK|0|fileName:|Edit|Delete|1|fileName:|Edit|Delete|', + ); // Template block usage: await render(hbs` @@ -24,8 +29,12 @@ module('Integration | Component | object/md citation', function(hooks) { {{/object/md-citation}} `); - assert.equal(find('form').textContent.replace(/[ \n]+/g, '|').trim(), + assert.equal( + find('form') + .textContent.replace(/[ \n]+/g, '|') + .trim(), '|Basic|Information|Title|No|Alternate|Title|found.|Add|Alternate|Title|No|Date|found.|Add|Date|Edition|Presentation|Form|No|Responsible|Party|found.|Add|Responsible|Party|No|Online|Resource|found.|Add|Online|Resource|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|Series|Name|Issue|Page|No|Other|Details|found.|Add|Other|Detail|No|Graphic|found.|Add|Graphic|template|block|text|', - 'block'); + 'block', + ); }); }); diff --git a/tests/integration/pods/components/object/md-citation/preview/body/component-test.js b/tests/integration/pods/components/object/md-citation/preview/body/component-test.js index 09536ff49..ab039b991 100644 --- a/tests/integration/pods/components/object/md-citation/preview/body/component-test.js +++ b/tests/integration/pods/components/object/md-citation/preview/body/component-test.js @@ -4,28 +4,38 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import createCitation from 'mdeditor/tests/helpers/create-citation'; -module('Integration | Component | object/md citation/preview/body', function(hooks) { - setupRenderingTest(hooks); +module( + 'Integration | Component | object/md citation/preview/body', + function (hooks) { + setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { + // Set any properties with this.set('myProperty', 'value'); + this.set('citation', createCitation(1)[0]); - // Set any properties with this.set('myProperty', 'value'); - this.set('citation', createCitation(1)[0]); + await render(hbs`{{object/md-citation/preview/body citation=citation}}`); - await render(hbs`{{object/md-citation/preview/body citation=citation}}`); + assert.equal( + find('.row') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Title|title0|Alternate|Titles|alternateTitle0|alternateTitle1|Dates|October|13th|2016|(dateType)|October|22nd|2016|(dateType)|Identifier|identifier0|identifier-0|Responsible|Party|role|(|)|role|(|)|', + ); - assert.equal(find('.row').textContent.replace(/[ \n]+/g, '|').trim(), - '|Title|title0|Alternate|Titles|alternateTitle0|alternateTitle1|Dates|October|13th|2016|(dateType)|October|22nd|2016|(dateType)|Identifier|identifier0|identifier-0|Responsible|Party|role|(|)|role|(|)|'); - - // Template block usage: - await render(hbs` + // Template block usage: + await render(hbs` {{#object/md-citation/preview/body}} template block text {{/object/md-citation/preview/body}} `); - assert.equal(find('.row').textContent.replace(/[ \n]+/g, '|').trim(), - '|Title|Not|Defined|Alternate|Titles|No|alternate|titles|assigned.|Dates|No|dates|assigned.|Identifier|No|identifiers|assigned.|Responsible|Party|No|responsibility|assigned.|template|block|text|', - 'block'); - }); -}); + assert.equal( + find('.row') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Title|Not|Defined|Alternate|Titles|No|alternate|titles|assigned.|Dates|No|dates|assigned.|Identifier|No|identifiers|assigned.|Responsible|Party|No|responsibility|assigned.|template|block|text|', + 'block', + ); + }); + }, +); diff --git a/tests/integration/pods/components/object/md-citation/preview/component-test.js b/tests/integration/pods/components/object/md-citation/preview/component-test.js index 0af7e6ee7..53714f612 100644 --- a/tests/integration/pods/components/object/md-citation/preview/component-test.js +++ b/tests/integration/pods/components/object/md-citation/preview/component-test.js @@ -4,35 +4,48 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import createCitation from 'mdeditor/tests/helpers/create-citation'; -module('Integration | Component | object/md citation/preview', function(hooks) { - setupRenderingTest(hooks); +module( + 'Integration | Component | object/md citation/preview', + function (hooks) { + setupRenderingTest(hooks); - test('it renders', async function(assert) { - assert.expect(3); + test('it renders', async function (assert) { + assert.expect(3); - // Set any properties with this.set('myProperty', 'value'); - this.set('citation', createCitation(1)[0]); + // Set any properties with this.set('myProperty', 'value'); + this.set('citation', createCitation(1)[0]); - this.set('editCitation', function(v){ - assert.ok(v, 'Called external action'); - }); + this.set('editCitation', function (v) { + assert.ok(v, 'Called external action'); + }); - await render(hbs`{{object/md-citation/preview editCitation=editCitation citation=citation}}`); + await render( + hbs`{{object/md-citation/preview editCitation=editCitation citation=citation}}`, + ); - assert.equal(find('.md-card').textContent.replace(/[ \n]+/g, '|').trim(), - '|Citation|Edit|Title|title0|Alternate|Titles|alternateTitle0|alternateTitle1|Dates|October|13th|2016|(dateType)|October|22nd|2016|(dateType)|Identifier|identifier0|identifier-0|Responsible|Party|role|(|)|role|(|)|Edit|Citation|'); + assert.equal( + find('.md-card') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Citation|Edit|Title|title0|Alternate|Titles|alternateTitle0|alternateTitle1|Dates|October|13th|2016|(dateType)|October|22nd|2016|(dateType)|Identifier|identifier0|identifier-0|Responsible|Party|role|(|)|role|(|)|Edit|Citation|', + ); - await click('.btn-success'); + await click('.btn-success'); - // Template block usage: - await render(hbs` + // Template block usage: + await render(hbs` {{#object/md-citation/preview editCitation=editCitation}} template block text {{/object/md-citation/preview}} `); - assert.equal(find('.md-card').textContent.replace(/[ \n]+/g, '|').trim(), - '|Citation|Edit|Title|Not|Defined|Alternate|Titles|No|alternate|titles|assigned.|Dates|No|dates|assigned.|Identifier|No|identifiers|assigned.|Responsible|Party|No|responsibility|assigned.|template|block|text|Edit|Citation|', - 'block'); - }); -}); + assert.equal( + find('.md-card') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Citation|Edit|Title|Not|Defined|Alternate|Titles|No|alternate|titles|assigned.|Dates|No|dates|assigned.|Identifier|No|identifiers|assigned.|Responsible|Party|No|responsibility|assigned.|template|block|text|Edit|Citation|', + 'block', + ); + }); + }, +); diff --git a/tests/integration/pods/components/object/md-constraint/component-test.js b/tests/integration/pods/components/object/md-constraint/component-test.js index b8152def0..37c041b6c 100644 --- a/tests/integration/pods/components/object/md-constraint/component-test.js +++ b/tests/integration/pods/components/object/md-constraint/component-test.js @@ -3,18 +3,23 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | object/md constraint', function(hooks) { +module('Integration | Component | object/md constraint', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); - this.set('model',{}); + this.set('model', {}); - await render(hbs`{{object/md-constraint profilePath="foobar" model=model}}`); + await render( + hbs`{{object/md-constraint profilePath="foobar" model=model}}`, + ); - assert.equal(find('form').textContent.replace(/[ \n]+/g, '|').trim(), - '|Constraint|Type|The|type|of|constraint.|No|Use|Limitations|found.|Add|Use|Limitation|Legal|Access|Constraints|Use|Constraints|No|Other|Constraint|found.|Add|Other|Constraint|Security|Classification|Name|of|the|handling|restrictions|on|the|resource|or|metadata.|Classification|System|Name|Note|Handling|Description|No|Responsible|Party|found.|Add|Responsible|Party|No|Graphic|or|Logo|found.|Add|Graphic|or|Logo|'); + assert.equal( + find('form') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Constraint|Type|The|type|of|constraint.|No|Use|Limitations|found.|Add|Use|Limitation|Legal|Access|Constraints|Use|Constraints|No|Other|Constraint|found.|Add|Other|Constraint|Security|Classification|Name|of|the|handling|restrictions|on|the|resource|or|metadata.|Classification|System|Name|Note|Handling|Description|No|Responsible|Party|found.|Add|Responsible|Party|No|Graphic|or|Logo|found.|Add|Graphic|or|Logo|', + ); // Template block usage: await render(hbs` @@ -23,8 +28,12 @@ module('Integration | Component | object/md constraint', function(hooks) { {{/object/md-constraint}} `); - assert.equal(find('form').textContent.replace(/[ \n]+/g, '|').trim(), + assert.equal( + find('form') + .textContent.replace(/[ \n]+/g, '|') + .trim(), '|Constraint|Type|The|type|of|constraint.|No|Use|Limitations|found.|Add|Use|Limitation|Legal|Access|Constraints|Use|Constraints|No|Other|Constraint|found.|Add|Other|Constraint|Security|Classification|Name|of|the|handling|restrictions|on|the|resource|or|metadata.|Classification|System|Name|Note|Handling|Description|No|Responsible|Party|found.|Add|Responsible|Party|No|Graphic|or|Logo|found.|Add|Graphic|or|Logo|template|block|text|', - 'block'); + 'block', + ); }); }); diff --git a/tests/integration/pods/components/object/md-date-array/component-test.js b/tests/integration/pods/components/object/md-date-array/component-test.js index 83b88e5fc..9bda62c42 100644 --- a/tests/integration/pods/components/object/md-date-array/component-test.js +++ b/tests/integration/pods/components/object/md-date-array/component-test.js @@ -3,28 +3,37 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | object/md date array', function(hooks) { +module('Integration | Component | object/md date array', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); - await render(hbs`{{object/md-date-array value=model profilePath="foobar"}}`); - - assert.equal(this.element.textContent.replace(/[ \n]+/g, '|').trim(), - '|No|Date|found.|Add|Date|'); - - this.set('model', [{ - "date": "2016-10-12", - "dateType": "dateType", - description: 'description' - }]); - - assert.equal(find('.panel').textContent.replace(/[ \n]+/g, '|').trim(), + await render( + hbs`{{object/md-date-array value=model profilePath="foobar"}}`, + ); + + assert.equal( + this.element.textContent.replace(/[ \n]+/g, '|').trim(), + '|No|Date|found.|Add|Date|', + ); + + this.set('model', [ + { + date: '2016-10-12', + dateType: 'dateType', + description: 'description', + }, + ]); + + assert.equal( + find('.panel') + .textContent.replace(/[ \n]+/g, '|') + .trim(), '|Dates|1|Add|#|Date|Date|Type|Description|0|dateType|×|Delete|', - 'item'); + 'item', + ); // Template block usage: await render(hbs` @@ -33,8 +42,12 @@ module('Integration | Component | object/md date array', function(hooks) { {{/object/md-date-array}} `); - assert.equal(find('.panel').textContent.replace(/[ \n]+/g, '|').trim(), + assert.equal( + find('.panel') + .textContent.replace(/[ \n]+/g, '|') + .trim(), '|Dates|1|Add|#|Date|Date|Type|Description|0|dateType|×|template|block|text|Delete|', - 'block'); + 'block', + ); }); }); diff --git a/tests/integration/pods/components/object/md-date/component-test.js b/tests/integration/pods/components/object/md-date/component-test.js index 34eea1afc..b28c824d0 100644 --- a/tests/integration/pods/components/object/md-date/component-test.js +++ b/tests/integration/pods/components/object/md-date/component-test.js @@ -3,24 +3,35 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | object/md date', function(hooks) { +module('Integration | Component | object/md date', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); - await render(hbs`
    {{#if entity.description}} {{word-limit entity.description}} {{else}} Not Described{{/if}}{{#link-to - 'dictionary.show.edit.entity.edit' - index + + >Edit
    - {{input/md-input - value=credit.item.value - placeholder='Additional credits for the resource.' - }} +
    {{object/md-date model=model profilePath="foobar"}}
    `); + await render( + hbs`{{object/md-date model=model profilePath="foobar"}}
    `, + ); - assert.equal(find('table').textContent.replace(/[ \n]+/g, '|').trim(), "|Choose|date|type|"); + assert.equal( + find('table') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Choose|date|type|', + ); this.set('model', { - "date": "2016-10-12", - "dateType": "dateType", - description: 'description' - }) - - assert.equal(find('table').textContent.replace(/[ \n]+/g, '|').trim(), "|dateType|×|"); + date: '2016-10-12', + dateType: 'dateType', + description: 'description', + }); + + assert.equal( + find('table') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|dateType|×|', + ); // Template block usage: await render(hbs` @@ -29,7 +40,11 @@ module('Integration | Component | object/md date', function(hooks) { {{/object/md-date}}
    `); - assert.equal(find('table').textContent.replace(/[ \n]+/g, '|').trim(), - "|Choose|date|type|template|block|text|"); + assert.equal( + find('table') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Choose|date|type|template|block|text|', + ); }); }); diff --git a/tests/integration/pods/components/object/md-distribution/component-test.js b/tests/integration/pods/components/object/md-distribution/component-test.js index 0c571cd93..a5982c8e8 100644 --- a/tests/integration/pods/components/object/md-distribution/component-test.js +++ b/tests/integration/pods/components/object/md-distribution/component-test.js @@ -7,55 +7,70 @@ module('Integration | Component | object/md distribution', function (hooks) { setupRenderingTest(hooks); test('it renders', async function (assert) { - // Set any properties with this.set('myProperty', 'value'); this.set('model', { - "description": "description", - "liabilityStatement": "liabilityStatement", - "distributor": [{ - "contact": { - "role": "role", - "roleExtent": [{ - "temporalExtent": [{ - "timePeriod": { - "startDateTime": "2016-10-24T11:10:15.2-10:00" - } - }] - }], - "party": [{ - "contactId": "individualId0" - }] - } - }, { - "contact": { - "role": "role", - "party": [{ - "contactId": "individualId0" - }] - } - }] + description: 'description', + liabilityStatement: 'liabilityStatement', + distributor: [ + { + contact: { + role: 'role', + roleExtent: [ + { + temporalExtent: [ + { + timePeriod: { + startDateTime: '2016-10-24T11:10:15.2-10:00', + }, + }, + ], + }, + ], + party: [ + { + contactId: 'individualId0', + }, + ], + }, + }, + { + contact: { + role: 'role', + party: [ + { + contactId: 'individualId0', + }, + ], + }, + }, + ], }); - await render(hbs `{{object/md-distribution model=model profilePath="foobar"}}`); + await render( + hbs`{{object/md-distribution model=model profilePath="foobar"}}`, + ); - assert.equal(find('section').textContent.replace(/[\s\n]+/g, - '|') - .trim(), - '|Distribution|#|Delete|Description|Liability|Statement|Distributors|2|Add|OK|#|Contacts|0|role|(|)|More...|Delete|1|role|(|)|More...|Delete|' + assert.equal( + find('section') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), + '|Distribution|#|Delete|Description|Liability|Statement|Distributors|2|Add|OK|#|Contacts|0|role|(|)|More...|Delete|1|role|(|)|More...|Delete|', ); // Template block usage: - await render(hbs ` + await render(hbs` {{#object/md-distribution model=model profilePath="foobar"}} template block text {{/object/md-distribution}} `); - assert.equal(find('section').textContent.replace(/[\s\n]+/g, - '|') - .trim(), + assert.equal( + find('section') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), '|Distribution|#|Delete|Description|Liability|Statement|Distributors|2|Add|OK|#|Contacts|0|role|(|)|More...|Delete|1|role|(|)|More...|Delete|', - 'block and list'); + 'block and list', + ); }); skip('call actions', async function (assert) { diff --git a/tests/integration/pods/components/object/md-distributor/component-test.js b/tests/integration/pods/components/object/md-distributor/component-test.js index 0cf31de2b..916b458dd 100644 --- a/tests/integration/pods/components/object/md-distributor/component-test.js +++ b/tests/integration/pods/components/object/md-distributor/component-test.js @@ -7,54 +7,69 @@ module('Integration | Component | object/md distributor', function (hooks) { setupRenderingTest(hooks); test('it renders', async function (assert) { - // Set any properties with this.set('myProperty', 'value'); this.set('distributor', { - "contact": { - "role": "role", - "roleExtent": [{ - "temporalExtent": [{ - "timePeriod": { - "startDateTime": "2016-10-24T11:10:15.2-10:00" - } - }] - }], - "party": [{ - "contactId": "individualId0" - }] + contact: { + role: 'role', + roleExtent: [ + { + temporalExtent: [ + { + timePeriod: { + startDateTime: '2016-10-24T11:10:15.2-10:00', + }, + }, + ], + }, + ], + party: [ + { + contactId: 'individualId0', + }, + ], }, - "orderProcess": [{ - "fees": "1.00USD" + orderProcess: [ + { + fees: '1.00USD', }, { - "fees": "2.00USD" - } + fees: '2.00USD', + }, ], - "transferOption": [{ - "transferSize": 9.9 + transferOption: [ + { + transferSize: 9.9, }, { - "transferSize": 10.9 - } - ] + transferSize: 10.9, + }, + ], }); - await render(hbs `{{object/md-distributor model=distributor profilePath="foobar"}}`); + await render( + hbs`{{object/md-distributor model=distributor profilePath="foobar"}}`, + ); - assert.equal(find('form').textContent.replace(/[\s\n]+/g, '|').trim(), - '|Contacts|Role|role|×|Transfer|Options|2|Add|OK|#|Size(mb)|Online?|Offline?|Format?|0|9.9|no|no|no|More...|Delete|1|10.9|no|no|no|More...|Delete|Order|Process|Fees|Planned|Availability|Ordering|Instructions|Turnaround|' + assert.equal( + find('form') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), + '|Contacts|Role|role|×|Transfer|Options|2|Add|OK|#|Size(mb)|Online?|Offline?|Format?|0|9.9|no|no|no|More...|Delete|1|10.9|no|no|no|More...|Delete|Order|Process|Fees|Planned|Availability|Ordering|Instructions|Turnaround|', ); // Template block usage: - await render(hbs ` + await render(hbs` {{#object/md-distributor model=distributor profilePath="foobar"}} template block text {{/object/md-distributor}} `); - assert.equal(find('form').textContent.replace(/[\s\n]+/g, '|').trim(), + assert.equal( + find('form') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), '|Contacts|Role|role|×|Transfer|Options|2|Add|OK|#|Size(mb)|Online?|Offline?|Format?|0|9.9|no|no|no|More...|Delete|1|10.9|no|no|no|More...|Delete|Order|Process|Fees|Planned|Availability|Ordering|Instructions|Turnaround|template|block|text|', - 'block' + 'block', ); }); }); diff --git a/tests/integration/pods/components/object/md-distributor/preview/component-test.js b/tests/integration/pods/components/object/md-distributor/preview/component-test.js index 48459a3bb..b1a69df20 100644 --- a/tests/integration/pods/components/object/md-distributor/preview/component-test.js +++ b/tests/integration/pods/components/object/md-distributor/preview/component-test.js @@ -4,61 +4,77 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import createContact from 'mdeditor/tests/helpers/create-contact'; -module('Integration | Component | object/md distributor/preview', function ( - hooks) { - setupRenderingTest(hooks); +module( + 'Integration | Component | object/md distributor/preview', + function (hooks) { + setupRenderingTest(hooks); - test('it renders', async function (assert) { + test('it renders', async function (assert) { + var store = this.owner.lookup('service:store'); - var store = this.owner.lookup('service:store'); + this.set('contacts', this.owner.lookup('service:contacts')); - this.set('contacts', this.owner.lookup('service:contacts')); + store.createRecord('contact', createContact(1)[0]); - store.createRecord('contact', createContact(1)[0]); - - // Set any properties with this.set('myProperty', 'value'); - this.set('distributor', { - "contact": { - "role": "role", - "roleExtent": [{ - "temporalExtent": [{ - "timePeriod": { - "startDateTime": "2016-10-24T11:10:15.2-10:00" - } - }] - }], - "party": [{ - "contactId": 0 - }] - }, - "orderProcess": [{ - "fees": "1.00USD" - }, - { - "fees": "2.00USD" - } - ], - "transferOption": [{ - "transferSize": 9.9 + // Set any properties with this.set('myProperty', 'value'); + this.set('distributor', { + contact: { + role: 'role', + roleExtent: [ + { + temporalExtent: [ + { + timePeriod: { + startDateTime: '2016-10-24T11:10:15.2-10:00', + }, + }, + ], + }, + ], + party: [ + { + contactId: 0, + }, + ], }, - { - "transferSize": 10.9 - } - ] - }); + orderProcess: [ + { + fees: '1.00USD', + }, + { + fees: '2.00USD', + }, + ], + transferOption: [ + { + transferSize: 9.9, + }, + { + transferSize: 10.9, + }, + ], + }); - await render(hbs `{{object/md-distributor/preview item=distributor}}`); + await render(hbs`{{object/md-distributor/preview item=distributor}}`); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), '|role|(|Contact0|)|'); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|role|(|Contact0|)|', + ); - // Template block usage: - await render(hbs ` + // Template block usage: + await render(hbs` {{#object/md-distributor/preview class="testme" item=distributor}} template block text {{/object/md-distributor/preview}} `); - assert.equal(find('.testme').textContent.replace(/[\s\n]+/g, '|').trim(), - '|role|(|Contact0|)|template|block|text|'); - }); -}); + assert.equal( + find('.testme') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), + '|role|(|Contact0|)|template|block|text|', + ); + }); + }, +); diff --git a/tests/integration/pods/components/object/md-documentation/component-test.js b/tests/integration/pods/components/object/md-documentation/component-test.js index 8632248ff..1c4a81d02 100644 --- a/tests/integration/pods/components/object/md-documentation/component-test.js +++ b/tests/integration/pods/components/object/md-documentation/component-test.js @@ -4,24 +4,31 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import createCitation from 'mdeditor/tests/helpers/create-citation'; -module('Integration | Component | object/md documentation', function(hooks) { +module('Integration | Component | object/md documentation', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); this.set('doc', { - resourceType: [{ - "type": "foo", - "name": "bar" - }], - citation: createCitation(2) + resourceType: [ + { + type: 'foo', + name: 'bar', + }, + ], + citation: createCitation(2), }); - await render(hbs`{{object/md-documentation profilePath="foobar" model=doc}}`); + await render( + hbs`{{object/md-documentation profilePath="foobar" model=doc}}`, + ); - assert.equal(find('form').textContent.replace(/[\s\n]+/g, '|').trim(), - '|Resource|Types|1|Add|#|Type|Name|0|foo|×|Delete|Basic|Information|Title|Alternate|Titles|2|Add|Alternate|Title|0|Delete|1|Delete|Dates|2|Add|Date|#|Date|Date|Type|Description|0|dateType|×|Delete|1|dateType|×|Delete|Edition|Presentation|Form|×|presentationForm0|×|presentationForm1|Responsible|Parties|2|Add|#|Role|Contacts|0|role|×|Delete|1|role|×|Delete|Online|Resource|2|Add|OK|#|Name|Uri|0|Not|Defined|http://adiwg.org|Edit|Delete|1|Not|Defined|http://mdeditor.org|Edit|Delete|Identifier|2|Add|OK|#|Identifier|Namespace|Description|0|identifier0|Not|Defined|Not|Defined|More...|Delete|1|identifier-0|Not|Defined|Not|Defined|More...|Delete|Identifier|2|Add|OK|#|Identifier|Namespace|0|identifier0|Not|Defined|Edit|Delete|1|identifier-0|Not|Defined|Edit|Delete|Identifier|2|Add|OK|#|Identifier|Namespace|0|identifier0|Not|Defined|Edit|Delete|1|identifier-0|Not|Defined|Edit|Delete|Series|Name|Issue|Page|Other|Details|2|Add|0|Delete|1|Delete|Graphic|2|Add|OK|0|fileName:|Edit|Delete|1|fileName:|Edit|Delete|'); + assert.equal( + find('form') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), + '|Resource|Types|1|Add|#|Type|Name|0|foo|×|Delete|Basic|Information|Title|Alternate|Titles|2|Add|Alternate|Title|0|Delete|1|Delete|Dates|2|Add|Date|#|Date|Date|Type|Description|0|dateType|×|Delete|1|dateType|×|Delete|Edition|Presentation|Form|×|presentationForm0|×|presentationForm1|Responsible|Parties|2|Add|#|Role|Contacts|0|role|×|Delete|1|role|×|Delete|Online|Resource|2|Add|OK|#|Name|Uri|0|Not|Defined|http://adiwg.org|Edit|Delete|1|Not|Defined|http://mdeditor.org|Edit|Delete|Identifier|2|Add|OK|#|Identifier|Namespace|Description|0|identifier0|Not|Defined|Not|Defined|More...|Delete|1|identifier-0|Not|Defined|Not|Defined|More...|Delete|Identifier|2|Add|OK|#|Identifier|Namespace|0|identifier0|Not|Defined|Edit|Delete|1|identifier-0|Not|Defined|Edit|Delete|Identifier|2|Add|OK|#|Identifier|Namespace|0|identifier0|Not|Defined|Edit|Delete|1|identifier-0|Not|Defined|Edit|Delete|Series|Name|Issue|Page|Other|Details|2|Add|0|Delete|1|Delete|Graphic|2|Add|OK|0|fileName:|Edit|Delete|1|fileName:|Edit|Delete|', + ); // Template block usage: await render(hbs` @@ -30,9 +37,12 @@ module('Integration | Component | object/md documentation', function(hooks) { {{/object/md-documentation}} `); - assert.equal(find('form').textContent.replace(/[\s\n]+/g, '|').trim(), + assert.equal( + find('form') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), '|Resource|Types|1|Add|#|Type|Name|0|foo|×|Delete|Basic|Information|Title|Alternate|Titles|2|Add|Alternate|Title|0|Delete|1|Delete|Dates|2|Add|Date|#|Date|Date|Type|Description|0|dateType|×|Delete|1|dateType|×|Delete|Edition|Presentation|Form|×|presentationForm0|×|presentationForm1|Responsible|Parties|2|Add|#|Role|Contacts|0|role|×|Delete|1|role|×|Delete|Online|Resource|2|Add|OK|#|Name|Uri|0|Not|Defined|http://adiwg.org|Edit|Delete|1|Not|Defined|http://mdeditor.org|Edit|Delete|Identifier|2|Add|OK|#|Identifier|Namespace|Description|0|identifier0|Not|Defined|Not|Defined|More...|Delete|1|identifier-0|Not|Defined|Not|Defined|More...|Delete|Identifier|2|Add|OK|#|Identifier|Namespace|0|identifier0|Not|Defined|Edit|Delete|1|identifier-0|Not|Defined|Edit|Delete|Identifier|2|Add|OK|#|Identifier|Namespace|0|identifier0|Not|Defined|Edit|Delete|1|identifier-0|Not|Defined|Edit|Delete|Series|Name|Issue|Page|Other|Details|2|Add|0|Delete|1|Delete|Graphic|2|Add|OK|0|fileName:|Edit|Delete|1|fileName:|Edit|Delete|template|block|text|', - 'block' + 'block', ); }); }); diff --git a/tests/integration/pods/components/object/md-documentation/preview/component-test.js b/tests/integration/pods/components/object/md-documentation/preview/component-test.js index d8dbd2b10..860c3ac31 100644 --- a/tests/integration/pods/components/object/md-documentation/preview/component-test.js +++ b/tests/integration/pods/components/object/md-documentation/preview/component-test.js @@ -4,33 +4,45 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import createCitation from 'mdeditor/tests/helpers/create-citation'; -module('Integration | Component | object/md documentation/preview', function(hooks) { - setupRenderingTest(hooks); +module( + 'Integration | Component | object/md documentation/preview', + function (hooks) { + setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { + // Set any properties with this.set('myProperty', 'value'); + this.set('doc', { + resourceType: [ + { + type: 'foo', + name: 'bar', + }, + ], + citation: createCitation(2), + }); + await render(hbs`{{object/md-documentation/preview item=doc}}`); - // Set any properties with this.set('myProperty', 'value'); - this.set('doc', { - resourceType: [{ - "type": "foo", - "name": "bar" - }], - citation: createCitation(2) - }); - await render(hbs`{{object/md-documentation/preview item=doc}}`); - - assert.equal(find('.text-muted').textContent.replace(/[\s\n]+/g, '|').trim(), - '|Document|#|Resource|Type(s)|foo:|bar|Title|title0|Alternate|Titles|alternateTitle0|alternateTitle1|Dates|October|13th|2016|(dateType)|October|22nd|2016|(dateType)|Identifier|identifier0|identifier-0|Responsible|Party|role|(|)|role|(|)|'); + assert.equal( + find('.text-muted') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), + '|Document|#|Resource|Type(s)|foo:|bar|Title|title0|Alternate|Titles|alternateTitle0|alternateTitle1|Dates|October|13th|2016|(dateType)|October|22nd|2016|(dateType)|Identifier|identifier0|identifier-0|Responsible|Party|role|(|)|role|(|)|', + ); - // Template block usage: - await render(hbs` + // Template block usage: + await render(hbs` {{#object/md-documentation/preview class="testme" item=doc}} template block text {{/object/md-documentation/preview}} `); - assert.equal(find('.testme').textContent.replace(/[\s\n]+/g, '|').trim(), - '|Document|#|Resource|Type(s)|foo:|bar|Title|title0|Alternate|Titles|alternateTitle0|alternateTitle1|Dates|October|13th|2016|(dateType)|October|22nd|2016|(dateType)|Identifier|identifier0|identifier-0|Responsible|Party|role|(|)|role|(|)|', - 'block'); - }); -}); + assert.equal( + find('.testme') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), + '|Document|#|Resource|Type(s)|foo:|bar|Title|title0|Alternate|Titles|alternateTitle0|alternateTitle1|Dates|October|13th|2016|(dateType)|October|22nd|2016|(dateType)|Identifier|identifier0|identifier-0|Responsible|Party|role|(|)|role|(|)|', + 'block', + ); + }); + }, +); diff --git a/tests/integration/pods/components/object/md-domain/component-test.js b/tests/integration/pods/components/object/md-domain/component-test.js index 8efa25ad6..cc4b49b3f 100644 --- a/tests/integration/pods/components/object/md-domain/component-test.js +++ b/tests/integration/pods/components/object/md-domain/component-test.js @@ -4,18 +4,21 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import { createDomain } from 'mdeditor/tests/helpers/create-dictionary'; -module('Integration | Component | object/md domain', function(hooks) { +module('Integration | Component | object/md domain', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); this.set('domain', createDomain(1)[0]); - await render(hbs`{{object/md-domain profilePath="foobar" model=domain}}`); - assert.equal(find('form').textContent.replace(/[\s\n]+/g, '|').trim(), - '|Domain|Information|Domain|Identifier|Code|Name|Common|Name|Description|Domain|Items|1|Add|OK|#|Domain|Item|Name|Value|Definition|0|More...|Delete|Domain|Reference|Edit|Title|Not|Defined|Alternate|Titles|No|alternate|titles|assigned.|Dates|No|dates|assigned.|Identifier|No|identifiers|assigned.|Responsible|Party|No|responsibility|assigned.|Edit|Citation|'); + assert.equal( + find('form') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), + '|Domain|Information|Domain|Identifier|Code|Name|Common|Name|Description|Domain|Items|1|Add|OK|#|Domain|Item|Name|Value|Definition|0|More...|Delete|Domain|Reference|Edit|Title|Not|Defined|Alternate|Titles|No|alternate|titles|assigned.|Dates|No|dates|assigned.|Identifier|No|identifiers|assigned.|Responsible|Party|No|responsibility|assigned.|Edit|Citation|', + ); // Template block usage: await render(hbs` @@ -24,8 +27,12 @@ module('Integration | Component | object/md domain', function(hooks) { {{/object/md-domain}} `); - assert.equal(find('form').textContent.replace(/[\s\n]+/g, '|').trim(), + assert.equal( + find('form') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), '|Domain|Information|Domain|Identifier|Code|Name|Common|Name|Description|Domain|Items|1|Add|OK|#|Domain|Item|Name|Value|Definition|0|More...|Delete|Domain|Reference|Edit|Title|Not|Defined|Alternate|Titles|No|alternate|titles|assigned.|Dates|No|dates|assigned.|Identifier|No|identifiers|assigned.|Responsible|Party|No|responsibility|assigned.|Edit|Citation|', - 'block'); + 'block', + ); }); }); diff --git a/tests/integration/pods/components/object/md-domainitem/component-test.js b/tests/integration/pods/components/object/md-domainitem/component-test.js index 093bd5bc0..b25652897 100644 --- a/tests/integration/pods/components/object/md-domainitem/component-test.js +++ b/tests/integration/pods/components/object/md-domainitem/component-test.js @@ -9,29 +9,36 @@ module('Integration | Component | object/md domainitem', function (hooks) { test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); this.set('item', { - "name": "name0", - "value": "value0", - "definition": "definition0", - "reference": { - "title": "domainReference" - } + name: 'name0', + value: 'value0', + definition: 'definition0', + reference: { + title: 'domainReference', + }, }); - await render(hbs `{{object/md-domainitem profilePath="foobar" model=item}}`); + await render(hbs`{{object/md-domainitem profilePath="foobar" model=item}}`); - assert.equal(find('form').textContent.replace(/[\s\n]+/g, '|').trim(), - '|Name|Value|Definition|Item|Reference|Basic|Information|Title|No|Alternate|Title|found.|Add|Alternate|Title|No|Date|found.|Add|Date|No|Responsible|Party|found.|Add|Responsible|Party|No|Online|Resource|found.|Add|Online|Resource|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|' + assert.equal( + find('form') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), + '|Name|Value|Definition|Item|Reference|Basic|Information|Title|No|Alternate|Title|found.|Add|Alternate|Title|No|Date|found.|Add|Date|No|Responsible|Party|found.|Add|Responsible|Party|No|Online|Resource|found.|Add|Online|Resource|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|', ); // Template block usage: - await render(hbs ` + await render(hbs` {{#object/md-domainitem profilePath="foobar" model=(hash)}} template block text {{/object/md-domainitem}} `); - assert.equal(find('form').textContent.replace(/[\s\n]+/g, '|').trim(), + assert.equal( + find('form') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), '|Name|Value|Definition|Item|Reference|Basic|Information|Title|No|Alternate|Title|found.|Add|Alternate|Title|No|Date|found.|Add|Date|No|Responsible|Party|found.|Add|Responsible|Party|No|Online|Resource|found.|Add|Online|Resource|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|', - 'block'); + 'block', + ); }); }); diff --git a/tests/integration/pods/components/object/md-domainitem/preview/component-test.js b/tests/integration/pods/components/object/md-domainitem/preview/component-test.js index 51ee38629..beb5a9225 100644 --- a/tests/integration/pods/components/object/md-domainitem/preview/component-test.js +++ b/tests/integration/pods/components/object/md-domainitem/preview/component-test.js @@ -3,34 +3,45 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | object/md domainitem/preview', function(hooks) { - setupRenderingTest(hooks); +module( + 'Integration | Component | object/md domainitem/preview', + function (hooks) { + setupRenderingTest(hooks); - test('it renders', async function(assert) { - // Set any properties with this.set('myProperty', 'value'); - this.set('item', { - "name": "name0", - "value": "value0", - "definition": "definition0", - "reference": { - "title": "domainReference" - } - }); + test('it renders', async function (assert) { + // Set any properties with this.set('myProperty', 'value'); + this.set('item', { + name: 'name0', + value: 'value0', + definition: 'definition0', + reference: { + title: 'domainReference', + }, + }); - await render(hbs`{{object/md-domainitem/preview profilePath="foobar" model=item tagName="table"}}`); + await render( + hbs`{{object/md-domainitem/preview profilePath="foobar" model=item tagName="table"}}`, + ); - assert.equal(findAll('input').length, 3); - assert.equal(findAll('input')[0].value, 'name0', 'name'); - assert.equal(findAll('input')[1].value, 'value0', 'value'); - assert.equal(findAll('input')[2].value, 'definition0', 'definition'); + assert.equal(findAll('input').length, 3); + assert.equal(findAll('input')[0].value, 'name0', 'name'); + assert.equal(findAll('input')[1].value, 'value0', 'value'); + assert.equal(findAll('input')[2].value, 'definition0', 'definition'); - // Template block usage: - await render(hbs` + // Template block usage: + await render(hbs` {{#object/md-domainitem/preview profilePath="foobar" model=item tagName="table"}} template block text {{/object/md-domainitem/preview}} `); - assert.equal(find('table').textContent.replace(/[\s\n]+/g, '|').trim(), '|', 'block'); - }); -}); + assert.equal( + find('table') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), + '|', + 'block', + ); + }); + }, +); diff --git a/tests/integration/pods/components/object/md-entity/component-test.js b/tests/integration/pods/components/object/md-entity/component-test.js index e93d7dc17..e2b6f85c1 100644 --- a/tests/integration/pods/components/object/md-entity/component-test.js +++ b/tests/integration/pods/components/object/md-entity/component-test.js @@ -4,18 +4,24 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import { createDictionary } from 'mdeditor/tests/helpers/create-dictionary'; -module('Integration | Component | object/md entity', function(hooks) { +module('Integration | Component | object/md entity', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); this.set('dictionary', createDictionary(1)[0].json.dataDictionary); this.set('entity', this.dictionary.entity[0]); - await render(hbs`{{object/md-entity dictionary=dictionary profilePath="foobar" model=entity}}`); + await render( + hbs`{{object/md-entity dictionary=dictionary profilePath="foobar" model=entity}}`, + ); - assert.equal(find('form').textContent.replace(/[\s\n]+/g, '|').trim(), - '|Entity|Information|Entity|Identifier|Code|Name|Definition|Common|Name|Aliases|2|Add|Alias|0|Delete|1|Delete|Attributes|3|Add|OK|#|Attribute|Name|Data|Type|Definition|Allow|Null?|0|dataType0|×|More...|Delete|1|dataType1|×|More...|Delete|2|dataType2|×|More...|Delete|Entity|Structure|Field|Separator|Character|#|Header|Lines|Quote|Character|Entity|Keys|Primary|Key|Attributes|×|primaryKeyAttributeCodeName0-0|×|primaryKeyAttributeCodeName1-0|Foreign|Keys|1|Add|Foreign|Key|#|Local|Attributes|Referenced|Entity|Referenced|Attributes|0|×|attributeCommonName0-0|referencedEntityCodeName00|×|×|referencedAttributeCodeName0-0|Delete|Entity|Indices|1|Add|#|Name|Attributes|Duplicates?|0|×|attributeCodeName0-0|?|Delete|No|Entity|Reference|found.|Add|Entity|Reference|'); + assert.equal( + find('form') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), + '|Entity|Information|Entity|Identifier|Code|Name|Definition|Common|Name|Aliases|2|Add|Alias|0|Delete|1|Delete|Attributes|3|Add|OK|#|Attribute|Name|Data|Type|Definition|Allow|Null?|0|dataType0|×|More...|Delete|1|dataType1|×|More...|Delete|2|dataType2|×|More...|Delete|Entity|Structure|Field|Separator|Character|#|Header|Lines|Quote|Character|Entity|Keys|Primary|Key|Attributes|×|primaryKeyAttributeCodeName0-0|×|primaryKeyAttributeCodeName1-0|Foreign|Keys|1|Add|Foreign|Key|#|Local|Attributes|Referenced|Entity|Referenced|Attributes|0|×|attributeCommonName0-0|referencedEntityCodeName00|×|×|referencedAttributeCodeName0-0|Delete|Entity|Indices|1|Add|#|Name|Attributes|Duplicates?|0|×|attributeCodeName0-0|?|Delete|No|Entity|Reference|found.|Add|Entity|Reference|', + ); assert.dom('.md-indicator-related').isVisible({ count: 2 }); @@ -26,8 +32,12 @@ module('Integration | Component | object/md entity', function(hooks) { {{/object/md-entity}} `); - assert.equal(find('form').textContent.replace(/[\s\n]+/g, '|').trim(), - '|Entity|Information|Entity|Identifier|Code|Name|Definition|Common|Name|No|Alias|found.|Add|Alias|No|Attributes|found.|Add|Attribute|Entity|Structure|Field|Separator|Character|#|Header|Lines|Quote|Character|Entity|Keys|Primary|Key|Attributes|No|Foreign|Key|found.|Add|Foreign|Key|No|Entity|Index|found.|Add|Entity|Index|No|Entity|Reference|found.|Add|Entity|Reference|', - 'block'); + assert.equal( + find('form') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), + '|Entity|Information|Entity|Identifier|Code|Name|Definition|Common|Name|No|Alias|found.|Add|Alias|No|Attributes|found.|Add|Attribute|Entity|Structure|Field|Separator|Character|#|Header|Lines|Quote|Character|Entity|Keys|Primary|Key|Attributes|No|Foreign|Key|found.|Add|Foreign|Key|No|Entity|Index|found.|Add|Entity|Index|No|Entity|Reference|found.|Add|Entity|Reference|', + 'block', + ); }); }); diff --git a/tests/integration/pods/components/object/md-extent/component-test.js b/tests/integration/pods/components/object/md-extent/component-test.js index 1b3a35260..5573aeb01 100644 --- a/tests/integration/pods/components/object/md-extent/component-test.js +++ b/tests/integration/pods/components/object/md-extent/component-test.js @@ -12,29 +12,30 @@ module('Integration | Component | object/md-extent', function (hooks) { // Set any properties with this.set('myProperty', 'value'); this.set('model', createExtent(1)[0]); - await render(hbs `{{object/md-extent profilePath="foobar" extent=model}}`); + await render(hbs`{{object/md-extent profilePath="foobar" extent=model}}`); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|Extent|Description|Geographic|Extent|Bounding|Box|North|East|South|West|Calculate|Clear|Description|Contains|Data|The|geographic|extent|contains|some|or|all|of|the|data|Edit|Features|Clear|Features|+−|Terrain|Features|Bounding|BoxLeaflet|' + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Extent|Description|Geographic|Extent|Bounding|Box|North|East|South|West|Calculate|Clear|Description|Contains|Data|The|geographic|extent|contains|some|or|all|of|the|data|Edit|Features|Clear|Features|+−|Terrain|Features|Bounding|BoxLeaflet|', ); const inputs = findAll('.form-group input, .form-group textarea'); - inputs.forEach(i => assert.dom(i).hasValue()); + inputs.forEach((i) => assert.dom(i).hasValue()); - this.set('model.geographicExtent.firstObject.geographicElement', - []); + this.set('model.geographicExtent.firstObject.geographicElement', []); this.set('model.geographicExtent.firstObject.boundingBox', {}); // Template block usage: - await render(hbs ` + await render(hbs` {{#object/md-extent profilePath="foobar" extent=model}} template block text {{/object/md-extent}} `); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|Extent|Description|Geographic|Extent|Bounding|Box|North|East|South|West|Calculate|Clear|Description|Contains|Data|The|geographic|extent|contains|some|or|all|of|the|data|No|Features|to|display.|Add|Features|' + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Extent|Description|Geographic|Extent|Bounding|Box|North|East|South|West|Calculate|Clear|Description|Contains|Data|The|geographic|extent|contains|some|or|all|of|the|data|No|Features|to|display.|Add|Features|', ); }); }); diff --git a/tests/integration/pods/components/object/md-extent/spatial/component-test.js b/tests/integration/pods/components/object/md-extent/spatial/component-test.js index c64657179..fc94877ad 100644 --- a/tests/integration/pods/components/object/md-extent/spatial/component-test.js +++ b/tests/integration/pods/components/object/md-extent/spatial/component-test.js @@ -18,49 +18,41 @@ module('Integration | Component | object/md extent/spatial', function (hooks) { }; this.extent = { - "geographicExtent": [{ - // "boundingBox": { - // "northLatitude": 34.741612, - // "southLatitude": 32.472695, - // "eastLongitude": -116.542054, - // "westLongitude": -117.729264 - // }, - "geographicElement": [{ - "type": "Feature", - "id": "3843b29f-bec7-418d-919a-4f794ce749cf", - "geometry": { - "type": "Polygon", - "coordinates": [ - [ - [ - -116.542054, 32.472695 + geographicExtent: [ + { + // "boundingBox": { + // "northLatitude": 34.741612, + // "southLatitude": 32.472695, + // "eastLongitude": -116.542054, + // "westLongitude": -117.729264 + // }, + geographicElement: [ + { + type: 'Feature', + id: '3843b29f-bec7-418d-919a-4f794ce749cf', + geometry: { + type: 'Polygon', + coordinates: [ + [ + [-116.542054, 32.472695], + [-117.596742, 34.741612], + [-117.596742, 34.741612], + [-117.729264, 32.805745], + [-117.729264, 32.805745], + [-116.542054, 32.472695], + ], ], - [ - -117.596742, 34.741612 - ], - [ - -117.596742, 34.741612 - ], - [ - -117.729264, 32.805745 - ], - [ - -117.729264, 32.805745 - ], - [ - -116.542054, 32.472695 - ] - ] - ] - }, - "properties": { - "name": "New Feature" - } - }] - }] + }, + properties: { + name: 'New Feature', + }, + }, + ], + }, + ], }; - await render(hbs `{{object/md-extent/spatial + await render(hbs`{{object/md-extent/spatial extent=extent index=9 deleteFeatures=deleteFeatures @@ -68,44 +60,53 @@ module('Integration | Component | object/md extent/spatial', function (hooks) { profilePath="foobar" }}`); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|Geographic|Extent|Bounding|Box|North|East|South|West|Calculate|Clear|Description|Contains|Data|The|geographic|extent|contains|some|or|all|of|the|data|Edit|Features|Clear|Features|+−|Terrain|FeaturesLeaflet|' + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Geographic|Extent|Bounding|Box|North|East|South|West|Calculate|Clear|Description|Contains|Data|The|geographic|extent|contains|some|or|all|of|the|data|Edit|Features|Clear|Features|+−|Terrain|FeaturesLeaflet|', ); await click('.btn-primary'); - assert.equal(JSON.stringify(this.extent.geographicExtent[0].boundingBox), + assert.equal( + JSON.stringify(this.extent.geographicExtent[0].boundingBox), JSON.stringify({ - "northLatitude": 34.741612, - "southLatitude": 32.472695, - "eastLongitude": -116.542054, - "westLongitude": -117.729264 - }), 'calculateBox'); + northLatitude: 34.741612, + southLatitude: 32.472695, + eastLongitude: -116.542054, + westLongitude: -117.729264, + }), + 'calculateBox', + ); await doubleClick('.btn-danger'); - assert.equal(JSON.stringify(this.extent.geographicExtent[0].boundingBox), + assert.equal( + JSON.stringify(this.extent.geographicExtent[0].boundingBox), JSON.stringify({ - "northLatitude": null, - "southLatitude": null, - "eastLongitude": null, - "westLongitude": null - }), 'clearBox'); + northLatitude: null, + southLatitude: null, + eastLongitude: null, + westLongitude: null, + }), + 'clearBox', + ); await click('.btn-toolbar .btn-success'); await doubleClick('.btn-toolbar .btn-danger'); this.empty = { geographicExtent: [{}] }; // Template block usage: - await render(hbs ` + await render(hbs` {{#object/md-extent/spatial extent=empty profilePath="foobar" }} template block text {{/object/md-extent/spatial}} `); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), '|Geographic|Extent|Bounding|Box|North|East|South|West|Calculate|Clear|Description|Contains|Data|The|geographic|extent|contains|some|or|all|of|the|data|No|Features|to|display.|Add|Features|', - 'block'); + 'block', + ); }); }); diff --git a/tests/integration/pods/components/object/md-funding/component-test.js b/tests/integration/pods/components/object/md-funding/component-test.js index 6e427ffbf..1bc79b59c 100644 --- a/tests/integration/pods/components/object/md-funding/component-test.js +++ b/tests/integration/pods/components/object/md-funding/component-test.js @@ -7,59 +7,64 @@ module('Integration | Component | object/md funding', function (hooks) { setupRenderingTest(hooks); test('it renders', async function (assert) { - // Set any properties with this.set('myProperty', 'value'); this.set('funding', { - "allocation": [{ - "amount": 9.9, - "currency": "currency", - "onlineResource": [], - "responsibleParty": [] - }], - "timePeriod": { - "id": "id", - "description": "description", - "identifier": { - "identifier": "identifier", - "namespace": "namespace" + allocation: [ + { + amount: 9.9, + currency: 'currency', + onlineResource: [], + responsibleParty: [], + }, + ], + timePeriod: { + id: 'id', + description: 'description', + identifier: { + identifier: 'identifier', + namespace: 'namespace', }, - "periodName": [ - "periodName0", - "periodName1" - ], + periodName: ['periodName0', 'periodName1'], // "startDateTime": date, - "endDateTime": "2016-12-31", - "timeInterval": { - "interval": 9, - "units": "year" + endDateTime: '2016-12-31', + timeInterval: { + interval: 9, + units: 'year', + }, + duration: { + years: 1, + months: 1, + days: 1, + hours: 1, + minutes: 1, + seconds: 1, }, - "duration": { - "years": 1, - "months": 1, - "days": 1, - "hours": 1, - "minutes": 1, - "seconds": 1 - } }, - description: 'foo is bar.' + description: 'foo is bar.', }); - await render(hbs `{{object/md-funding model=funding profilePath="foobar"}}`); + await render(hbs`{{object/md-funding model=funding profilePath="foobar"}}`); - assert.equal(find('form').textContent.replace(/[\s\n]+/g, '|').trim(), - '|Allocation|1|Add|OK|#|Amount|Currency|Matching|0|9.9|currency|Not|Defined|Edit|Delete|Time|Period|Dates|Start|Date|End|Date|Pick|Fiscal|Year|Pick|a|Fiscal|Year|Identifier|Description|Time|Period|Names|2|Add|Time|Period|Name|0|Delete|1|Delete|Interval|Interval|Amount|Time|Unit|year|×|Duration|Years|Months|Days|Hours|Minutes|Seconds|Description|' + assert.equal( + find('form') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), + '|Allocation|1|Add|OK|#|Amount|Currency|Matching|0|9.9|currency|Not|Defined|Edit|Delete|Time|Period|Dates|Start|Date|End|Date|Pick|Fiscal|Year|Pick|a|Fiscal|Year|Identifier|Description|Time|Period|Names|2|Add|Time|Period|Name|0|Delete|1|Delete|Interval|Interval|Amount|Time|Unit|year|×|Duration|Years|Months|Days|Hours|Minutes|Seconds|Description|', ); // Template block usage: - await render(hbs ` + await render(hbs` {{#object/md-funding model=(hash) profilePath="foobar"}} template block text {{/object/md-funding}} `); - assert.equal(find('form').textContent.replace(/[\s\n]+/g, '|').trim(), + assert.equal( + find('form') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), '|No|Allocation|found.|Add|Allocation|Time|Period|Dates|Start|Date|End|Date|Pick|Fiscal|Year|Pick|a|Fiscal|Year|Identifier|Description|No|Time|Period|Name|found.|Add|Time|Period|Name|Interval|Interval|Amount|Time|Unit|Choose|unit|of|time|Duration|Years|Months|Days|Hours|Minutes|Seconds|Description|', - 'block'); + 'block', + ); }); }); diff --git a/tests/integration/pods/components/object/md-funding/preview/component-test.js b/tests/integration/pods/components/object/md-funding/preview/component-test.js index 0f4d86fcb..a6751d4c4 100644 --- a/tests/integration/pods/components/object/md-funding/preview/component-test.js +++ b/tests/integration/pods/components/object/md-funding/preview/component-test.js @@ -3,26 +3,33 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | object/md funding/preview', function(hooks) { +module('Integration | Component | object/md funding/preview', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); this.set('funding', { - "allocation": [{ - "amount": 9.9, - "currency": "currency" - }], - "timePeriod": { - "endDateTime": "2016-12-31" - } + allocation: [ + { + amount: 9.9, + currency: 'currency', + }, + ], + timePeriod: { + endDateTime: '2016-12-31', + }, }); - await render(hbs`
    {{object/md-funding/preview item=funding}}
    `); + await render( + hbs`
    {{object/md-funding/preview item=funding}}
    `, + ); - assert.equal(find('section').textContent.replace(/[\s\n]+/g, '|').trim(), - '|Start|Date:|Not|defined|End|Date:|12-31-2016|Allocations|Amount|Currency|Source|Recipient|Match?|9.9|currency|--|--|--|'); + assert.equal( + find('section') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), + '|Start|Date:|Not|defined|End|Date:|12-31-2016|Allocations|Amount|Currency|Source|Recipient|Match?|9.9|currency|--|--|--|', + ); // Template block usage: await render(hbs`
    @@ -31,8 +38,12 @@ module('Integration | Component | object/md funding/preview', function(hooks) { {{/object/md-funding/preview}}
    `); - assert.equal(find('section').textContent.replace(/[\s\n]+/g, '|').trim(), + assert.equal( + find('section') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), '|Start|Date:|Not|defined|End|Date:|Not|defined|Allocations|Amount|Currency|Source|Recipient|Match?|No|allocations|found.|', - 'block'); + 'block', + ); }); }); diff --git a/tests/integration/pods/components/object/md-graphic-array/component-test.js b/tests/integration/pods/components/object/md-graphic-array/component-test.js index 40d8e5b43..ec5b53f93 100644 --- a/tests/integration/pods/components/object/md-graphic-array/component-test.js +++ b/tests/integration/pods/components/object/md-graphic-array/component-test.js @@ -3,32 +3,42 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | object/md graphic array', function(hooks) { +module('Integration | Component | object/md graphic array', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); - this.set('graphic', [{ - "fileName": "fileName", - "fileDescription": "fileDescription", - "fileType": "fileType", - "fileUri": [{ - "uri": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==" - }] - }, { - "fileName": "fileName1", - "fileDescription": "fileDescription1", - "fileType": "fileType1", - "fileUri": [{ - "uri": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==" - }] - }]); - + this.set('graphic', [ + { + fileName: 'fileName', + fileDescription: 'fileDescription', + fileType: 'fileType', + fileUri: [ + { + uri: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==', + }, + ], + }, + { + fileName: 'fileName1', + fileDescription: 'fileDescription1', + fileType: 'fileType1', + fileUri: [ + { + uri: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==', + }, + ], + }, + ]); await render(hbs`{{object/md-graphic-array model=graphic}}`); - assert.equal(find('.md-object-table').textContent.replace(/[\s\n]+/g, '|').trim(), '|Graphic|2|Add|OK|0|fileName:|Edit|Delete|1|fileName1:|Edit|Delete|'); + assert.equal( + find('.md-object-table') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), + '|Graphic|2|Add|OK|0|fileName:|Edit|Delete|1|fileName1:|Edit|Delete|', + ); assert.ok(find('.md-logo-preview').complete, 'loaded image'); // Template block usage: @@ -38,8 +48,12 @@ module('Integration | Component | object/md graphic array', function(hooks) { {{/object/md-graphic-array}} `); - assert.equal(find('.md-object-table').textContent.replace(/[\s\n]+/g, '|').trim(), + assert.equal( + find('.md-object-table') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), '|Graphic|2|Add|OK|0|fileName:|Edit|Delete|1|fileName1:|Edit|Delete|', - 'block'); + 'block', + ); }); }); diff --git a/tests/integration/pods/components/object/md-identifier-array/component-test.js b/tests/integration/pods/components/object/md-identifier-array/component-test.js index c3974cdb8..d9409c0f0 100644 --- a/tests/integration/pods/components/object/md-identifier-array/component-test.js +++ b/tests/integration/pods/components/object/md-identifier-array/component-test.js @@ -3,51 +3,66 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | object/md identifier array', function(hooks) { - setupRenderingTest(hooks); - - test('it renders', async function(assert) { - assert.expect(5); - - // Set any properties with this.set('myProperty', 'value'); - this.set('id', [{ - "identifier": "identifier", - "authority": { - "title": "title" - } - },{ - "identifier": "identifier1", - "authority": { - "title": "title1" - } - }]); - - this.set('edit', function(id){ - assert.ok(id, 'called edit'); - }); +module( + 'Integration | Component | object/md identifier array', + function (hooks) { + setupRenderingTest(hooks); + + test('it renders', async function (assert) { + assert.expect(5); + + // Set any properties with this.set('myProperty', 'value'); + this.set('id', [ + { + identifier: 'identifier', + authority: { + title: 'title', + }, + }, + { + identifier: 'identifier1', + authority: { + title: 'title1', + }, + }, + ]); - await render(hbs`{{object/md-identifier-array model=id editItem=edit}}`); + this.set('edit', function (id) { + assert.ok(id, 'called edit'); + }); - assert.equal(find('.md-object-table').textContent.replace(/[\s\n]+/g, '|').trim(), '|Identifier|2|Add|OK|#|Identifier|Namespace|Description|0|identifier|Not|Defined|Not|Defined|More...|Delete|1|identifier1|Not|Defined|Not|Defined|More...|Delete|'); + await render(hbs`{{object/md-identifier-array model=id editItem=edit}}`); - await click('.btn-info'); + assert.equal( + find('.md-object-table') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), + '|Identifier|2|Add|OK|#|Identifier|Namespace|Description|0|identifier|Not|Defined|Not|Defined|More...|Delete|1|identifier1|Not|Defined|Not|Defined|More...|Delete|', + ); - assert.equal(this.id.length, 3, 'add item'); + await click('.btn-info'); - await doubleClick('.btn-danger'); + assert.equal(this.id.length, 3, 'add item'); - assert.equal(this.id.length, 2), 'delete item'; + await doubleClick('.btn-danger'); - // Template block usage: - await render(hbs`
    + assert.equal(this.id.length, 2), 'delete item'; + + // Template block usage: + await render(hbs`
    {{#object/md-identifier-array}} template block text {{/object/md-identifier-array}}
    `); - assert.equal(find('section').textContent.replace(/[\s\n]+/g, '|').trim(), - '|No|Identifier|found.|Add|Identifier|template|block|text|', - 'block'); - }); -}); + assert.equal( + find('section') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), + '|No|Identifier|found.|Add|Identifier|template|block|text|', + 'block', + ); + }); + }, +); diff --git a/tests/integration/pods/components/object/md-identifier-object-table/component-test.js b/tests/integration/pods/components/object/md-identifier-object-table/component-test.js index b7e44752b..f50a1c7ad 100644 --- a/tests/integration/pods/components/object/md-identifier-object-table/component-test.js +++ b/tests/integration/pods/components/object/md-identifier-object-table/component-test.js @@ -4,28 +4,38 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import createIdentifier from 'mdeditor/tests/helpers/create-identifier'; -module('Integration | Component | object/md identifier object table', function(hooks) { - setupRenderingTest(hooks); +module( + 'Integration | Component | object/md identifier object table', + function (hooks) { + setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { + // Set any properties with this.set('myProperty', 'value'); + this.set('id', createIdentifier(2)); - // Set any properties with this.set('myProperty', 'value'); - this.set('id', createIdentifier(2)); + await render(hbs`{{object/md-identifier-object-table model=id}}`); - await render(hbs`{{object/md-identifier-object-table model=id}}`); + assert.equal( + find('.md-object-table') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), + '|Identifier|2|Add|OK|#|Identifier|Namespace|0|identifier0|namespace0|Edit|Delete|1|identifier1|namespace1|Edit|Delete|', + ); - assert.equal(find('.md-object-table').textContent.replace(/[\s\n]+/g, '|').trim(), - '|Identifier|2|Add|OK|#|Identifier|Namespace|0|identifier0|namespace0|Edit|Delete|1|identifier1|namespace1|Edit|Delete|'); - - // Template block usage: - await render(hbs` + // Template block usage: + await render(hbs` {{#object/md-identifier-object-table}} template block text {{/object/md-identifier-object-table}} `); - assert.equal(find('.md-object-table').textContent.replace(/[\s\n]+/g, '|').trim(), - '|No|Identifier|found.|Add|Identifier|', - 'block'); - }); -}); + assert.equal( + find('.md-object-table') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), + '|No|Identifier|found.|Add|Identifier|', + 'block', + ); + }); + }, +); diff --git a/tests/integration/pods/components/object/md-identifier/component-test.js b/tests/integration/pods/components/object/md-identifier/component-test.js index a4ebd560e..8a63b839e 100644 --- a/tests/integration/pods/components/object/md-identifier/component-test.js +++ b/tests/integration/pods/components/object/md-identifier/component-test.js @@ -8,28 +8,32 @@ module('Integration | Component | object/md identifier', function (hooks) { setupRenderingTest(hooks); test('it renders', async function (assert) { - // Set any properties with this.set('myProperty', 'value'); this.set('id', createIdentifier(1)[0]); - await render(hbs `{{object/md-identifier model=id profilePath="foobar"}}`); + await render(hbs`{{object/md-identifier model=id profilePath="foobar"}}`); - assert.equal(find('.md-identifier').textContent.replace( - /[\s\n]+/g, '|').trim(), - '|Identifier|Namespace|namespace0|×|Version|Description|Authority|Basic|Information|Title|No|Alternate|Title|found.|Add|Alternate|Title|No|Date|found.|Add|Date|No|Responsible|Party|found.|Add|Responsible|Party|No|Online|Resource|found.|Add|Online|Resource|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|' + assert.equal( + find('.md-identifier') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), + '|Identifier|Namespace|namespace0|×|Version|Description|Authority|Basic|Information|Title|No|Alternate|Title|found.|Add|Alternate|Title|No|Date|found.|Add|Date|No|Responsible|Party|found.|Add|Responsible|Party|No|Online|Resource|found.|Add|Online|Resource|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|', ); assert.equal(find('input').value, 'identifier0', 'assign value'); // Template block usage: - await render(hbs ` + await render(hbs` {{#object/md-identifier profilePath="foobar" model=(hash)}} template block text {{/object/md-identifier}} `); - assert.equal(find('.md-identifier').textContent.replace( - /[\s\n]+/g, '|').trim(), - "|Identifier|Namespace|Select|or|type|a|namespace|for|the|identifier.|Version|Description|Authority|Basic|Information|Title|No|Alternate|Title|found.|Add|Alternate|Title|No|Date|found.|Add|Date|No|Responsible|Party|found.|Add|Responsible|Party|No|Online|Resource|found.|Add|Online|Resource|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|template|block|text|", - 'block'); + assert.equal( + find('.md-identifier') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), + '|Identifier|Namespace|Select|or|type|a|namespace|for|the|identifier.|Version|Description|Authority|Basic|Information|Title|No|Alternate|Title|found.|Add|Alternate|Title|No|Date|found.|Add|Date|No|Responsible|Party|found.|Add|Responsible|Party|No|Online|Resource|found.|Add|Online|Resource|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|template|block|text|', + 'block', + ); }); }); diff --git a/tests/integration/pods/components/object/md-keyword-citation/component-test.js b/tests/integration/pods/components/object/md-keyword-citation/component-test.js index 7c65d1455..7fc176976 100644 --- a/tests/integration/pods/components/object/md-keyword-citation/component-test.js +++ b/tests/integration/pods/components/object/md-keyword-citation/component-test.js @@ -4,34 +4,51 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import createCitation from 'mdeditor/tests/helpers/create-citation'; -module('Integration | Component | object/md keyword citation', function(hooks) { - setupRenderingTest(hooks); - - test('it renders', async function(assert) { - // Set any properties with this.set('myProperty', 'value'); - this.set('keyword', { - keywordType: 'theme', - thesaurus: createCitation(1)[0] - }); - - await render(hbs`{{object/md-keyword-citation model=keyword profilePath="foobar"}}`); - - assert.equal(find('form').textContent.replace(/[\s\n]+/g, '|').trim(), - '|Title|Date|Date|Type|Choose|date|type|Type|theme|?|Edition|URL|'); - - var input = findAll('form input').mapBy('value').join('|'); - - assert.equal(input, "title0|2016-10-13|edition|http://adiwg.org", 'input values'); - - // Template block usage: - await render(hbs` +module( + 'Integration | Component | object/md keyword citation', + function (hooks) { + setupRenderingTest(hooks); + + test('it renders', async function (assert) { + // Set any properties with this.set('myProperty', 'value'); + this.set('keyword', { + keywordType: 'theme', + thesaurus: createCitation(1)[0], + }); + + await render( + hbs`{{object/md-keyword-citation model=keyword profilePath="foobar"}}`, + ); + + assert.equal( + find('form') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), + '|Title|Date|Date|Type|Choose|date|type|Type|theme|?|Edition|URL|', + ); + + var input = findAll('form input').mapBy('value').join('|'); + + assert.equal( + input, + 'title0|2016-10-13|edition|http://adiwg.org', + 'input values', + ); + + // Template block usage: + await render(hbs` {{#object/md-keyword-citation model=(hash thesaurus=(hash)) profilePath="foobar"}} template block text {{/object/md-keyword-citation}} `); - assert.equal(find('form').textContent.replace(/[\s\n]+/g, '|').trim(), - "|Title|Date|Date|Type|Choose|date|type|Type|Choose|keyword|type|Edition|URL|", - 'block'); - }); -}); + assert.equal( + find('form') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), + '|Title|Date|Date|Type|Choose|date|type|Type|Choose|keyword|type|Edition|URL|', + 'block', + ); + }); + }, +); diff --git a/tests/integration/pods/components/object/md-keyword-list/component-test.js b/tests/integration/pods/components/object/md-keyword-list/component-test.js index d86b5bc36..adc77373b 100644 --- a/tests/integration/pods/components/object/md-keyword-list/component-test.js +++ b/tests/integration/pods/components/object/md-keyword-list/component-test.js @@ -3,48 +3,74 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | object/md keyword list', function(hooks) { +module('Integration | Component | object/md keyword list', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); this.set('model', { - 'keyword': [{ - 'identifier': 'id1', - 'keyword': 'foo1', - 'path': ['foo1'] - }, { - 'identifier': 'id2', - 'keyword': 'bar1', - 'path': ['foo1', 'bar1'] - }] + keyword: [ + { + identifier: 'id1', + keyword: 'foo1', + path: ['foo1'], + }, + { + identifier: 'id2', + keyword: 'bar1', + path: ['foo1', 'bar1'], + }, + ], }); - await render(hbs `{{object/md-keyword-list model=model profilePath="foobar"}}`); + await render( + hbs`{{object/md-keyword-list model=model profilePath="foobar"}}`, + ); - assert.equal(find('ul').textContent - .replace(/[ \n]+/g, '|') - .trim(), '|Delete|foo1|Delete|bar1|'); + assert.equal( + find('ul') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Delete|foo1|Delete|bar1|', + ); - await render(hbs `{{object/md-keyword-list model=model readOnly=false profilePath="foobar"}}`); + await render( + hbs`{{object/md-keyword-list model=model readOnly=false profilePath="foobar"}}`, + ); assert.equal(findAll('tr').length, 4, 'Check number of rows.'); assert.equal(findAll('input').length, 4, 'Check number of input el.'); - assert.equal(this.$('input')[2].value, 'bar1', 'Correct value for keyword input.'); - assert.equal(this.$('input')[3].value, 'id2', 'Correct value for id input.'); - assert.equal(find('table').textContent - .replace(/[ \n]+/g, '|') - .trim(), '|Keyword|Id|(Optional)|Delete|Delete|Add|Keyword|Toggle|Thesaurus|', 'readOnly = false.'); + assert.equal( + this.$('input')[2].value, + 'bar1', + 'Correct value for keyword input.', + ); + assert.equal( + this.$('input')[3].value, + 'id2', + 'Correct value for id input.', + ); + assert.equal( + find('table') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Keyword|Id|(Optional)|Delete|Delete|Add|Keyword|Toggle|Thesaurus|', + 'readOnly = false.', + ); // Template block usage: - await render(hbs `
    + await render(hbs`
    {{#object/md-keyword-list profilePath="foobar"}} template block text {{/object/md-keyword-list}}
    `); - assert.equal(find('section').textContent - .replace(/[ \n]+/g, '|') - .trim(), '|Add|some|keywords.|template|block|text|', 'Block form renders.'); + assert.equal( + find('section') + .textContent.replace(/[ \n]+/g, '|') + .trim(), + '|Add|some|keywords.|template|block|text|', + 'Block form renders.', + ); }); }); diff --git a/tests/integration/pods/components/object/md-lineage/component-test.js b/tests/integration/pods/components/object/md-lineage/component-test.js index c5a4095ef..81b15bb49 100644 --- a/tests/integration/pods/components/object/md-lineage/component-test.js +++ b/tests/integration/pods/components/object/md-lineage/component-test.js @@ -3,44 +3,52 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | object/md lineage', function(hooks) { +module('Integration | Component | object/md lineage', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); this.set('lineage', { - "statement": "statement", - "scope": { - "scopeCode": "scopeCode" + statement: 'statement', + scope: { + scopeCode: 'scopeCode', }, - "citation": [{ - "title": "title" + citation: [ + { + title: 'title', }, { - "title": "title" - } + title: 'title', + }, ], - "source": [{ - "description": "description" + source: [ + { + description: 'description', }, { - "description": "description" - } + description: 'description', + }, ], - "sourceProcessStep": [{ - "description": "description" + sourceProcessStep: [ + { + description: 'description', }, { - "description": "description" - } - ] + description: 'description', + }, + ], }); - await render(hbs`
    {{object/md-lineage profilePath="foobar" model=lineage}}
    `); + await render( + hbs`
    {{object/md-lineage profilePath="foobar" model=lineage}}
    `, + ); - assert.equal(find('section').textContent.replace(/[\s\n]+/g, '|').trim(), - '|Statement|No|Process|Step|found.|Add|Process|Step|Source|2|Add|OK|#|Description|0|More...|Delete|1|More...|Delete|Citation|2|Add|OK|#|Title|0|title|More...|Delete|1|title|More...|Delete|Scope|scopeCode|×|'); + assert.equal( + find('section') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), + '|Statement|No|Process|Step|found.|Add|Process|Step|Source|2|Add|OK|#|Description|0|More...|Delete|1|More...|Delete|Citation|2|Add|OK|#|Title|0|title|More...|Delete|1|title|More...|Delete|Scope|scopeCode|×|', + ); // Template block usage: await render(hbs`
    @@ -49,8 +57,12 @@ module('Integration | Component | object/md lineage', function(hooks) { {{/object/md-lineage}}
    `); - assert.equal(find('section').textContent.replace(/[\s\n]+/g, '|').trim(), + assert.equal( + find('section') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), '|Statement|No|Process|Step|found.|Add|Process|Step|No|Source|found.|Add|Source|No|Citation|found.|Add|Citation|Scope|Select|type|of|resource.|template|block|text|', - 'block'); + 'block', + ); }); }); diff --git a/tests/integration/pods/components/object/md-lineage/preview/component-test.js b/tests/integration/pods/components/object/md-lineage/preview/component-test.js index 4ca0de260..9b8a74df6 100644 --- a/tests/integration/pods/components/object/md-lineage/preview/component-test.js +++ b/tests/integration/pods/components/object/md-lineage/preview/component-test.js @@ -3,45 +3,53 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | object/md lineage/preview', function(hooks) { +module('Integration | Component | object/md lineage/preview', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); this.set('lineage', { - "statement": "statement", - "scope": { - "scopeCode": "scopeCode" + statement: 'statement', + scope: { + scopeCode: 'scopeCode', }, - "citation": [{ - "title": "title" + citation: [ + { + title: 'title', }, { - "title": "title" - } + title: 'title', + }, ], - "source": [{ - "description": "description" + source: [ + { + description: 'description', }, { - "description": "description" - } + description: 'description', + }, ], - "sourceProcessStep": [{ - "description": "description" + sourceProcessStep: [ + { + description: 'description', }, { - "description": "description" - } - ] + description: 'description', + }, + ], }); - await render(hbs`
    {{object/md-lineage/preview item=lineage}}
    `); + await render( + hbs`
    {{object/md-lineage/preview item=lineage}}
    `, + ); - assert.equal(find('section').textContent.replace(/[\s\n]+/g, '|').trim(), - '|Lineage|#|Statement|statement|Process|Step|No|process|steps|assigned.|'); + assert.equal( + find('section') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), + '|Lineage|#|Statement|statement|Process|Step|No|process|steps|assigned.|', + ); // Template block usage: await render(hbs`
    @@ -50,8 +58,12 @@ module('Integration | Component | object/md lineage/preview', function(hooks) { {{/object/md-lineage/preview}}
    `); - assert.equal(find('section').textContent.replace(/[\s\n]+/g, '|').trim(), + assert.equal( + find('section') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), '|Lineage|#|Statement|Not|Defined|Process|Step|No|process|steps|assigned.|', - 'template block'); + 'template block', + ); }); }); diff --git a/tests/integration/pods/components/object/md-locale-array/component-test.js b/tests/integration/pods/components/object/md-locale-array/component-test.js index 84fad8927..d43fed25c 100644 --- a/tests/integration/pods/components/object/md-locale-array/component-test.js +++ b/tests/integration/pods/components/object/md-locale-array/component-test.js @@ -3,25 +3,32 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | object/md locale array', function(hooks) { +module('Integration | Component | object/md locale array', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); - this.set('locales', [{ - language: "eng", - characterSet: "UTF-8", - country: "USA" - }, { - language: "spa", - characterSet: "UTF-32", - country: "BDI" - }]); + this.set('locales', [ + { + language: 'eng', + characterSet: 'UTF-8', + country: 'USA', + }, + { + language: 'spa', + characterSet: 'UTF-32', + country: 'BDI', + }, + ]); await render(hbs`{{object/md-locale-array value=locales}}`); - assert.equal(find('.panel').textContent.replace(/[\s\n]+/g, '|').trim(), - '|2|Add|#|Language|Character|Set|Country|0|eng|?|×|UTF-8|?|×|USA|?|×|Delete|1|spa|?|×|UTF-32|?|×|BDI|?|×|Delete|'); + assert.equal( + find('.panel') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), + '|2|Add|#|Language|Character|Set|Country|0|eng|?|×|UTF-8|?|×|USA|?|×|Delete|1|spa|?|×|UTF-32|?|×|BDI|?|×|Delete|', + ); // Template block usage: await render(hbs` @@ -30,8 +37,12 @@ module('Integration | Component | object/md locale array', function(hooks) { {{/object/md-locale-array}} `); - assert.equal(find('.panel').textContent.replace(/[\s\n]+/g, '|').trim(), + assert.equal( + find('.panel') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), '|Add|#|Language|Character|Set|Country|Add|', - 'block'); + 'block', + ); }); }); diff --git a/tests/integration/pods/components/object/md-locale/component-test.js b/tests/integration/pods/components/object/md-locale/component-test.js index fb494faab..eb5fd0c4e 100644 --- a/tests/integration/pods/components/object/md-locale/component-test.js +++ b/tests/integration/pods/components/object/md-locale/component-test.js @@ -4,23 +4,32 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import EmberObject from '@ember/object'; -module('Integration | Component | object/md locale', function(hooks) { +module('Integration | Component | object/md locale', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); - this.set('settings', EmberObject.create({ - data: EmberObject.create({ - language: "eng", - characterSet: "UTF-8", - country: "USA" - }) - })); + this.set( + 'settings', + EmberObject.create({ + data: EmberObject.create({ + language: 'eng', + characterSet: 'UTF-8', + country: 'USA', + }), + }), + ); - await render(hbs`
    {{object/md-locale settings=settings model=(hash) profilePath="foobar"}}
    `); + await render( + hbs`
    {{object/md-locale settings=settings model=(hash) profilePath="foobar"}}
    `, + ); - assert.equal(find('section').textContent.replace(/[\s\n]+/g, '|').trim(), - '|Language|eng|?|×|Character|Set|UTF-8|?|×|Country|USA|?|×|'); + assert.equal( + find('section') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), + '|Language|eng|?|×|Character|Set|UTF-8|?|×|Country|USA|?|×|', + ); // Template block usage: await render(hbs`
    @@ -29,8 +38,12 @@ module('Integration | Component | object/md locale', function(hooks) { {{/object/md-locale}}
    `); - assert.equal(find('section').textContent.replace(/[\s\n]+/g, '|').trim(), + assert.equal( + find('section') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), '|Language|eng|?|×|Character|Set|UTF-8|?|×|Country|USA|?|×|template|block|text|', - 'template block'); + 'template block', + ); }); }); diff --git a/tests/integration/pods/components/object/md-maintenance/component-test.js b/tests/integration/pods/components/object/md-maintenance/component-test.js index 4aab513e8..8576989b2 100644 --- a/tests/integration/pods/components/object/md-maintenance/component-test.js +++ b/tests/integration/pods/components/object/md-maintenance/component-test.js @@ -3,67 +3,84 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | object/md maintenance', function(hooks) { +module('Integration | Component | object/md maintenance', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); this.model = { - "frequency": "frequency", - "date": [{ - "date": "2016-10-12", - "dateType": "creation" + frequency: 'frequency', + date: [ + { + date: '2016-10-12', + dateType: 'creation', }, { - "date": "2016-10-12", - "dateType": "publication" - } + date: '2016-10-12', + dateType: 'publication', + }, ], - "scope": [{ - "scopeCode": "scopeCode0" + scope: [ + { + scopeCode: 'scopeCode0', }, { - "scopeCode": "scopeCode1" - } - ], - "note": [ - "note0", - "note1" + scopeCode: 'scopeCode1', + }, ], - "contact": [{ - "role": "author", - "roleExtent": [{ - "temporalExtent": [{ - "timePeriod": { - "startDateTime": "2016-10-24T11:10:15.2-10:00" - } - }] - }], - "party": [{ - "contactId": "individualId0" - }] + note: ['note0', 'note1'], + contact: [ + { + role: 'author', + roleExtent: [ + { + temporalExtent: [ + { + timePeriod: { + startDateTime: '2016-10-24T11:10:15.2-10:00', + }, + }, + ], + }, + ], + party: [ + { + contactId: 'individualId0', + }, + ], }, { - "role": "publisher", - "roleExtent": [{ - "temporalExtent": [{ - "timePeriod": { - "startDateTime": "2016-10-24T11:10:15.2-10:00" - } - }] - }], - "party": [{ - "contactId": "individualId1" - }] - } - ] + role: 'publisher', + roleExtent: [ + { + temporalExtent: [ + { + timePeriod: { + startDateTime: '2016-10-24T11:10:15.2-10:00', + }, + }, + ], + }, + ], + party: [ + { + contactId: 'individualId1', + }, + ], + }, + ], }; - await render(hbs`{{object/md-maintenance profilePath="foobar" model=model}}`); + await render( + hbs`{{object/md-maintenance profilePath="foobar" model=model}}`, + ); - assert.equal(find('form').textContent.replace(/[\s\n]+/g, '|').trim(), - '|Frequency|frequency|×|Dates|2|Add|Date|#|Date|Date|Type|Description|0|creation|?|×|Delete|1|publication|?|×|Delete|Contacts|2|Add|Contact|#|Role|Contacts|0|author|?|×|Delete|1|publisher|?|×|Delete|Notes|2|Add|Notes|0|Delete|1|Delete|Scope|×|scopeCode0|×|scopeCode1|'); + assert.equal( + find('form') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), + '|Frequency|frequency|×|Dates|2|Add|Date|#|Date|Date|Type|Description|0|creation|?|×|Delete|1|publication|?|×|Delete|Contacts|2|Add|Contact|#|Role|Contacts|0|author|?|×|Delete|1|publisher|?|×|Delete|Notes|2|Add|Notes|0|Delete|1|Delete|Scope|×|scopeCode0|×|scopeCode1|', + ); // Template block usage: await render(hbs` @@ -72,8 +89,12 @@ module('Integration | Component | object/md maintenance', function(hooks) { {{/object/md-maintenance}} `); - assert.equal(find('form').textContent.replace(/[\s\n]+/g, '|').trim(), + assert.equal( + find('form') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), '|Frequency|Choose|a|value.|No|Date|found.|Add|Date|No|Contact|found.|Add|Contact|No|Notes|found.|Add|Note|Scope|template|block|text|', - 'block'); + 'block', + ); }); }); diff --git a/tests/integration/pods/components/object/md-medium/component-test.js b/tests/integration/pods/components/object/md-medium/component-test.js index e9fa05749..1f275e27a 100644 --- a/tests/integration/pods/components/object/md-medium/component-test.js +++ b/tests/integration/pods/components/object/md-medium/component-test.js @@ -3,33 +3,33 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | object/md medium', function(hooks) { +module('Integration | Component | object/md medium', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); this.model = { - "mediumSpecification": { - "title": "title" + mediumSpecification: { + title: 'title', + }, + density: 9.9, + units: 'units', + numberOfVolumes: 9, + mediumFormat: ['mediumFormat0', 'mediumFormat1'], + note: 'note', + identifier: { + identifier: 'identifier', }, - "density": 9.9, - "units": "units", - "numberOfVolumes": 9, - "mediumFormat": [ - "mediumFormat0", - "mediumFormat1" - ], - "note": "note", - "identifier": { - "identifier": "identifier" - } }; await render(hbs`{{object/md-medium profilePath="foobar" model=model}}`); - assert.equal(find('form').textContent.replace(/[\s\n]+/g, '|').trim(), - '|Medium|Title|Storage|Density|Density|Units|Number|Of|Volumes|Storage|Format|×|mediumFormat0|×|mediumFormat1|Identifier|Namespace|Select|or|type|a|namespace|for|the|identifier.|Version|Description|Note|'); + assert.equal( + find('form') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), + '|Medium|Title|Storage|Density|Density|Units|Number|Of|Volumes|Storage|Format|×|mediumFormat0|×|mediumFormat1|Identifier|Namespace|Select|or|type|a|namespace|for|the|identifier.|Version|Description|Note|', + ); // Template block usage: await render(hbs` @@ -38,8 +38,12 @@ module('Integration | Component | object/md medium', function(hooks) { {{/object/md-medium}} `); - assert.equal(find('form').textContent.replace(/[\s\n]+/g, '|').trim(), - "|Medium|Title|Storage|Density|Density|Units|Number|Of|Volumes|Storage|Format|Identifier|Namespace|Select|or|type|a|namespace|for|the|identifier.|Version|Description|Note|template|block|text|", - 'block'); + assert.equal( + find('form') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), + '|Medium|Title|Storage|Density|Density|Units|Number|Of|Volumes|Storage|Format|Identifier|Namespace|Select|or|type|a|namespace|for|the|identifier.|Version|Description|Note|template|block|text|', + 'block', + ); }); }); diff --git a/tests/integration/pods/components/object/md-object-table/component-test.js b/tests/integration/pods/components/object/md-object-table/component-test.js index d49eac84e..19b22c718 100644 --- a/tests/integration/pods/components/object/md-object-table/component-test.js +++ b/tests/integration/pods/components/object/md-object-table/component-test.js @@ -9,21 +9,28 @@ module('Integration | Component | object/md-object-table', function (hooks) { test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.set('myAction', function(val) { ... }); - this.model = [{ - biz: 'biz0', - baz: 'baz0' - }, { - biz: 'biz1', - baz: 'baz1' - }]; + this.model = [ + { + biz: 'biz0', + baz: 'baz0', + }, + { + biz: 'biz1', + baz: 'baz1', + }, + ]; - await render(hbs `{{object/md-object-table header="Foo Bars" attributes="biz,baz"}}`); + await render( + hbs`{{object/md-object-table header="Foo Bars" attributes="biz,baz"}}`, + ); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|No|Foo|Bars|found.|Add|Foo|Bar|'); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|No|Foo|Bars|found.|Add|Foo|Bar|', + ); // Template block usage: - await render(hbs ` + await render(hbs` {{#object/md-object-table items=model header="FooBar" @@ -37,8 +44,10 @@ module('Integration | Component | object/md-object-table', function (hooks) { {{/object/md-object-table}} `); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), '|FooBar|2|Add|OK|#|Biz|Baz|0|biz0|baz0|Edit|Delete|1|biz1|baz1|Edit|Delete|', - 'block'); + 'block', + ); }); }); diff --git a/tests/integration/pods/components/object/md-objectroute-table/component-test.js b/tests/integration/pods/components/object/md-objectroute-table/component-test.js index a46656c1a..07abfd7ce 100644 --- a/tests/integration/pods/components/object/md-objectroute-table/component-test.js +++ b/tests/integration/pods/components/object/md-objectroute-table/component-test.js @@ -3,27 +3,36 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | object/md objectroute table', function(hooks) { - setupRenderingTest(hooks); +module( + 'Integration | Component | object/md objectroute table', + function (hooks) { + setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { + // Set any properties with this.set('myProperty', 'value'); + // Handle any actions with this.on('myAction', function(val) { ... }); + this.model = [ + { + biz: 'biz0', + baz: 'baz0', + }, + { + biz: 'biz1', + baz: 'baz1', + }, + ]; - // Set any properties with this.set('myProperty', 'value'); - // Handle any actions with this.on('myAction', function(val) { ... }); - this.model=[{ - biz: 'biz0', - baz: 'baz0' - }, { - biz: 'biz1', - baz: 'baz1' - }]; + await render( + hbs`{{object/md-objectroute-table attributes="biz,baz" header="FooBar"}}`, + ); - await render(hbs`{{object/md-objectroute-table attributes="biz,baz" header="FooBar"}}`); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|No|FooBar|found.|Add|FooBar|', + ); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), '|No|FooBar|found.|Add|FooBar|'); - - // Template block usage: - await render(hbs` + // Template block usage: + await render(hbs` {{#object/md-objectroute-table items=model header="FooBar" @@ -37,8 +46,11 @@ module('Integration | Component | object/md objectroute table', function(hooks) {{/object/md-objectroute-table}} `); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|FooBar|2|Add|OK|#|Biz|Baz|0|biz0|baz0|More...|Delete|1|biz1|baz1|More...|Delete|', - 'block'); - }); -}); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|FooBar|2|Add|OK|#|Biz|Baz|0|biz0|baz0|More...|Delete|1|biz1|baz1|More...|Delete|', + 'block', + ); + }); + }, +); diff --git a/tests/integration/pods/components/object/md-online-resource/component-test.js b/tests/integration/pods/components/object/md-online-resource/component-test.js index 7b41187ce..b39f5319b 100644 --- a/tests/integration/pods/components/object/md-online-resource/component-test.js +++ b/tests/integration/pods/components/object/md-online-resource/component-test.js @@ -3,27 +3,30 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | object/md online resource', function(hooks) { +module('Integration | Component | object/md online resource', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); this.model = { - "uri": "http://URI.example.com", - "protocol": "protocol", - "name": "name", - "description": "description", - "function": "download", - "applicationProfile": "applicationProfile", - "protocolRequest": "protocolRequest" + uri: 'http://URI.example.com', + protocol: 'protocol', + name: 'name', + description: 'description', + function: 'download', + applicationProfile: 'applicationProfile', + protocolRequest: 'protocolRequest', }; - await render(hbs`{{object/md-online-resource model=model profilePath="foobar"}}`); + await render( + hbs`{{object/md-online-resource model=model profilePath="foobar"}}`, + ); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|Name|URI|Protocol|Description|Function|download|?|×|Application|Profile|applicationProfile|×|Protocol|Request|'); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Name|URI|Protocol|Description|Function|download|?|×|Application|Profile|applicationProfile|×|Protocol|Request|', + ); // Template block usage: await render(hbs` @@ -32,8 +35,10 @@ module('Integration | Component | object/md online resource', function(hooks) { {{/object/md-online-resource}} `); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), '|Name|URI|Protocol|Description|Function|download|?|×|Application|Profile|applicationProfile|×|Protocol|Request|template|block|text|', - 'block'); + 'block', + ); }); }); diff --git a/tests/integration/pods/components/object/md-party-array/component-test.js b/tests/integration/pods/components/object/md-party-array/component-test.js index bf290d665..2ed76fd85 100644 --- a/tests/integration/pods/components/object/md-party-array/component-test.js +++ b/tests/integration/pods/components/object/md-party-array/component-test.js @@ -4,41 +4,55 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import createContact from 'mdeditor/tests/helpers/create-contact'; -module('Integration | Component | object/md party array', function(hooks) { +module('Integration | Component | object/md party array', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); - this.party = [{ - "role": "author", - "roleExtent": [{ - "temporalExtent": [{ - "timePeriod": { - "startDateTime": "2016-10-24T11:10:15.2-10:00" - } - }] - }], - "party": [{ - "contactId": 0 - }] - }, { - "role": "publisher", - "party": [{ - "contactId": 1 - }] - }]; + this.party = [ + { + role: 'author', + roleExtent: [ + { + temporalExtent: [ + { + timePeriod: { + startDateTime: '2016-10-24T11:10:15.2-10:00', + }, + }, + ], + }, + ], + party: [ + { + contactId: 0, + }, + ], + }, + { + role: 'publisher', + party: [ + { + contactId: 1, + }, + ], + }, + ]; var contacts = createContact(2); var cs = this.owner.lookup('service:contacts'); cs.set('contacts', contacts); - await render(hbs`{{object/md-party-array value=party profilePath="foobar"}}`); + await render( + hbs`{{object/md-party-array value=party profilePath="foobar"}}`, + ); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|2|Add|#|Role|Contacts|0|author|?|×|×|Contact0|Delete|1|publisher|?|×|×|Contact1|Delete|'); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|2|Add|#|Role|Contacts|0|author|?|×|×|Contact0|Delete|1|publisher|?|×|×|Contact1|Delete|', + ); // Template block usage: await render(hbs` @@ -47,8 +61,10 @@ module('Integration | Component | object/md party array', function(hooks) { {{/object/md-party-array}} `); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), '|Add|#|Role|Contacts|Add|', - 'block'); + 'block', + ); }); }); diff --git a/tests/integration/pods/components/object/md-party/component-test.js b/tests/integration/pods/components/object/md-party/component-test.js index 0d58a61bc..4a87b19b6 100644 --- a/tests/integration/pods/components/object/md-party/component-test.js +++ b/tests/integration/pods/components/object/md-party/component-test.js @@ -4,23 +4,29 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import createContact from 'mdeditor/tests/helpers/create-contact'; -module('Integration | Component | object/md party', function(hooks) { +module('Integration | Component | object/md party', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); this.party = { - "role": "author", - "roleExtent": [{ - "temporalExtent": [{ - "timePeriod": { - "startDateTime": "2016-10-24T11:10:15.2-10:00" - } - }] - }], - "party": [{ - "contactId": 0 - }] + role: 'author', + roleExtent: [ + { + temporalExtent: [ + { + timePeriod: { + startDateTime: '2016-10-24T11:10:15.2-10:00', + }, + }, + ], + }, + ], + party: [ + { + contactId: 0, + }, + ], }; var contacts = createContact(2); @@ -30,8 +36,10 @@ module('Integration | Component | object/md party', function(hooks) { await render(hbs`{{object/md-party model=party}}`); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|Role|author|?|×|Contacts|×|Contact0|'); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Role|author|?|×|Contacts|×|Contact0|', + ); // Template block usage: await render(hbs` @@ -40,9 +48,10 @@ module('Integration | Component | object/md party', function(hooks) { {{/object/md-party}} `); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - "|Role|Select|or|enter|a|role|Contacts|", - 'block'); - + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Role|Select|or|enter|a|role|Contacts|', + 'block', + ); }); }); diff --git a/tests/integration/pods/components/object/md-process-step/component-test.js b/tests/integration/pods/components/object/md-process-step/component-test.js index 68313cf7f..bbe94681d 100644 --- a/tests/integration/pods/components/object/md-process-step/component-test.js +++ b/tests/integration/pods/components/object/md-process-step/component-test.js @@ -8,7 +8,6 @@ module('Integration | Component | object/md process step', function (hooks) { setupRenderingTest(hooks); test('it renders', async function (assert) { - // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); var contacts = createContact(2); @@ -17,115 +16,134 @@ module('Integration | Component | object/md process step', function (hooks) { cs.set('contacts', contacts); // this.step = { - "stepId": "stepId", - "description": "description", - "rationale": "rationale", - "timePeriod": { - "startDateTime": "2016-10-15" + stepId: 'stepId', + description: 'description', + rationale: 'rationale', + timePeriod: { + startDateTime: '2016-10-15', }, - "processor": [{ - "role": "role", - "party": [{ - "contactId": "0" - }] + processor: [ + { + role: 'role', + party: [ + { + contactId: '0', + }, + ], }, { - "role": "role", - "party": [{ - "contactId": "1" - }] - } - ], - "stepSource": [{ - "description": "description", - "sourceCitation": { - "title": "title" + role: 'role', + party: [ + { + contactId: '1', + }, + ], }, - "metadataCitation": [{ - "title": "title0" + ], + stepSource: [ + { + description: 'description', + sourceCitation: { + title: 'title', }, - { - "title": "title1" - } - ], - "spatialResolution": { - "measure": { - "type": "distance", - "value": 99.9, - "unitOfMeasure": "unitOfMeasure" - } - }, - "referenceSystem": { - "referenceSystemType": "referenceSystemType", - "referenceSystemIdentifier": { - "identifier": "identifier" - } - }, - "sourceProcessStep": [{ - "description": "description0" + metadataCitation: [ + { + title: 'title0', + }, + { + title: 'title1', + }, + ], + spatialResolution: { + measure: { + type: 'distance', + value: 99.9, + unitOfMeasure: 'unitOfMeasure', + }, }, - { - "description": "description1" - } - ] - }], - "stepProduct": [{ - "description": "description", - "sourceCitation": { - "title": "title" - }, - "metadataCitation": [{ - "title": "title0" + referenceSystem: { + referenceSystemType: 'referenceSystemType', + referenceSystemIdentifier: { + identifier: 'identifier', + }, }, - { - "title": "title1" - } - ], - "spatialResolution": { - "measure": { - "type": "distance", - "value": 99.9, - "unitOfMeasure": "unitOfMeasure" - } + sourceProcessStep: [ + { + description: 'description0', + }, + { + description: 'description1', + }, + ], }, - "referenceSystem": { - "referenceSystemType": "referenceSystemType", - "referenceSystemIdentifier": { - "identifier": "identifier" - } - }, - "sourceProcessStep": [{ - "description": "description0" + ], + stepProduct: [ + { + description: 'description', + sourceCitation: { + title: 'title', + }, + metadataCitation: [ + { + title: 'title0', + }, + { + title: 'title1', + }, + ], + spatialResolution: { + measure: { + type: 'distance', + value: 99.9, + unitOfMeasure: 'unitOfMeasure', + }, + }, + referenceSystem: { + referenceSystemType: 'referenceSystemType', + referenceSystemIdentifier: { + identifier: 'identifier', + }, }, - { - "description": "description1" - } - ] - }], - "reference": [{ - "title": "title0" + sourceProcessStep: [ + { + description: 'description0', + }, + { + description: 'description1', + }, + ], + }, + ], + reference: [ + { + title: 'title0', }, { - "title": "title1" - } - ] + title: 'title1', + }, + ], }; - await render(hbs `{{object/md-process-step profilePath="foobar" model=step}}`); + await render( + hbs`{{object/md-process-step profilePath="foobar" model=step}}`, + ); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - "|Step|ID|Description|Step|Sources|1|Add|#|Description|0|Delete|Step|Products|1|Add|#|Description|0|Delete|Processors|2|Add|#|Role|Contacts|0|role|×|Delete|1|role|×|Delete|Step|Reference|2|Add|OK|#|Title|0|title0|More...|Delete|1|title1|More...|Delete|Time|Period|Dates|Start|Date|End|Date|Pick|Fiscal|Year|Pick|a|Fiscal|Year|Identifier|Description|No|Time|Period|Name|found.|Add|Time|Period|Name|Interval|Interval|Amount|Time|Unit|Choose|unit|of|time|Duration|Years|Months|Days|Hours|Minutes|Seconds|Scope|Select|type|of|resource.|" + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Step|ID|Description|Step|Sources|1|Add|#|Description|0|Delete|Step|Products|1|Add|#|Description|0|Delete|Processors|2|Add|#|Role|Contacts|0|role|×|Delete|1|role|×|Delete|Step|Reference|2|Add|OK|#|Title|0|title0|More...|Delete|1|title1|More...|Delete|Time|Period|Dates|Start|Date|End|Date|Pick|Fiscal|Year|Pick|a|Fiscal|Year|Identifier|Description|No|Time|Period|Name|found.|Add|Time|Period|Name|Interval|Interval|Amount|Time|Unit|Choose|unit|of|time|Duration|Years|Months|Days|Hours|Minutes|Seconds|Scope|Select|type|of|resource.|', ); // Template block usage: - await render(hbs ` + await render(hbs` {{#object/md-process-step profilePath="foobar" model=step}} template block text {{/object/md-process-step}} `); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - "|Step|ID|Description|Step|Sources|1|Add|#|Description|0|Delete|Step|Products|1|Add|#|Description|0|Delete|Processors|2|Add|#|Role|Contacts|0|role|×|Delete|1|role|×|Delete|Step|Reference|2|Add|OK|#|Title|0|title0|More...|Delete|1|title1|More...|Delete|Time|Period|Dates|Start|Date|End|Date|Pick|Fiscal|Year|Pick|a|Fiscal|Year|Identifier|Description|No|Time|Period|Name|found.|Add|Time|Period|Name|Interval|Interval|Amount|Time|Unit|Choose|unit|of|time|Duration|Years|Months|Days|Hours|Minutes|Seconds|Scope|Select|type|of|resource.|template|block|text|", - 'block'); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Step|ID|Description|Step|Sources|1|Add|#|Description|0|Delete|Step|Products|1|Add|#|Description|0|Delete|Processors|2|Add|#|Role|Contacts|0|role|×|Delete|1|role|×|Delete|Step|Reference|2|Add|OK|#|Title|0|title0|More...|Delete|1|title1|More...|Delete|Time|Period|Dates|Start|Date|End|Date|Pick|Fiscal|Year|Pick|a|Fiscal|Year|Identifier|Description|No|Time|Period|Name|found.|Add|Time|Period|Name|Interval|Interval|Amount|Time|Unit|Choose|unit|of|time|Duration|Years|Months|Days|Hours|Minutes|Seconds|Scope|Select|type|of|resource.|template|block|text|', + 'block', + ); }); }); diff --git a/tests/integration/pods/components/object/md-process-step/preview/component-test.js b/tests/integration/pods/components/object/md-process-step/preview/component-test.js index 67bda9e71..5e0488ef7 100644 --- a/tests/integration/pods/components/object/md-process-step/preview/component-test.js +++ b/tests/integration/pods/components/object/md-process-step/preview/component-test.js @@ -3,58 +3,65 @@ import { setupRenderingTest } from 'ember-qunit'; import { render, find } from '@ember/test-helpers'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | object/md-process-step/preview', function(hooks) { - setupRenderingTest(hooks); +module( + 'Integration | Component | object/md-process-step/preview', + function (hooks) { + setupRenderingTest(hooks); - test('it renders', async function(assert) { - // Set any properties with this.set('myProperty', 'value'); - // Handle any actions with this.set('myAction', function(val) { ... }); + test('it renders', async function (assert) { + // Set any properties with this.set('myProperty', 'value'); + // Handle any actions with this.set('myAction', function(val) { ... }); - this.source = { - "description": "description", - "sourceCitation": { - "title": "title" - }, - "metadataCitation": [{ - "title": "title0" + this.source = { + description: 'description', + sourceCitation: { + title: 'title', }, - { - "title": "title1" - } - ], - "spatialResolution": { - "measure": { - "type": "distance", - "value": 99.9, - "unitOfMeasure": "unitOfMeasure" - } - }, - "referenceSystem": { - "referenceSystemType": "referenceSystemType", - "referenceSystemIdentifier": { - "identifier": "identifier" - } - }, - "sourceProcessStep": [{ - "description": "description0" + metadataCitation: [ + { + title: 'title0', + }, + { + title: 'title1', + }, + ], + spatialResolution: { + measure: { + type: 'distance', + value: 99.9, + unitOfMeasure: 'unitOfMeasure', + }, }, - { - "description": "description1" - } - ] - }; + referenceSystem: { + referenceSystemType: 'referenceSystemType', + referenceSystemIdentifier: { + identifier: 'identifier', + }, + }, + sourceProcessStep: [ + { + description: 'description0', + }, + { + description: 'description1', + }, + ], + }; - await render(hbs`{{object/md-process-step/preview model=source profilePath="foobar"}}`); + await render( + hbs`{{object/md-process-step/preview model=source profilePath="foobar"}}`, + ); - assert.equal(find('textarea').value, 'description'); + assert.equal(find('textarea').value, 'description'); - // Template block usage: - await render(hbs` + // Template block usage: + await render(hbs` {{#object/md-process-step/preview model=source profilePath="foobar"}} template block text {{/object/md-process-step/preview}} `); - assert.equal(find('textarea').value, 'description'); - }); -}); + assert.equal(find('textarea').value, 'description'); + }); + }, +); diff --git a/tests/integration/pods/components/object/md-profile/component-test.js b/tests/integration/pods/components/object/md-profile/component-test.js index 6e9b6fee3..391061a43 100644 --- a/tests/integration/pods/components/object/md-profile/component-test.js +++ b/tests/integration/pods/components/object/md-profile/component-test.js @@ -12,21 +12,23 @@ module('Integration | Component | object/md-profile', function (hooks) { // Handle any actions with this.set('myAction', function(val) { ... }); this.model = createProfile(1)[0]; - await render(hbs `{{object/md-profile record=model}}`); + await render(hbs`{{object/md-profile record=model}}`); - assert.equal(this.element.textContent.replace(/[ \n]+/g, '|').trim(), - '|URL|Alias|Version|0.0.0|Update|Available|(0.0.1)|Title|Minimal|Description|A|Minimalist|Profile|Identifier|minimal|Namespace|org.adiwg.profile|' + assert.equal( + this.element.textContent.replace(/[ \n]+/g, '|').trim(), + '|URL|Alias|Version|0.0.0|Update|Available|(0.0.1)|Title|Minimal|Description|A|Minimalist|Profile|Identifier|minimal|Namespace|org.adiwg.profile|', ); // Template block usage: - await render(hbs ` + await render(hbs` {{#object/md-profile record=model}} template block text {{/object/md-profile}} `); - assert.equal(this.element.textContent.replace(/[ \n]+/g, '|').trim(), - '|URL|Alias|Version|0.0.0|Update|Available|(0.0.1)|Title|Minimal|Description|A|Minimalist|Profile|Identifier|minimal|Namespace|org.adiwg.profile|' + assert.equal( + this.element.textContent.replace(/[ \n]+/g, '|').trim(), + '|URL|Alias|Version|0.0.0|Update|Available|(0.0.1)|Title|Minimal|Description|A|Minimalist|Profile|Identifier|minimal|Namespace|org.adiwg.profile|', ); }); }); diff --git a/tests/integration/pods/components/object/md-profile/custom/component-test.js b/tests/integration/pods/components/object/md-profile/custom/component-test.js index 1751774af..fc5ea7a6e 100644 --- a/tests/integration/pods/components/object/md-profile/custom/component-test.js +++ b/tests/integration/pods/components/object/md-profile/custom/component-test.js @@ -11,24 +11,26 @@ module('Integration | Component | object/md-profile/custom', function (hooks) { // Handle any actions with this.set('myAction', function(val) { ... }); this.model = { title: 'testme', - description: 'testing description' - } + description: 'testing description', + }; - await render(hbs `{{object/md-profile/custom record=model}}`); + await render(hbs`{{object/md-profile/custom record=model}}`); - assert.equal(this.element.textContent.replace(/[ \n]+/g, '|').trim(), - '|Title|Description|Profile|Definition|Select|the|profile|definition.|Select|Schemas|No|schemas|avialable.|Schemas|Selected|Select|schemas|from|the|list.|' + assert.equal( + this.element.textContent.replace(/[ \n]+/g, '|').trim(), + '|Title|Description|Profile|Definition|Select|the|profile|definition.|Select|Schemas|No|schemas|avialable.|Schemas|Selected|Select|schemas|from|the|list.|', ); // Template block usage: - await render(hbs ` + await render(hbs` {{#object/md-profile/custom record=model}} template block text {{/object/md-profile/custom}} `); - assert.equal(this.element.textContent.replace(/[ \n]+/g, '|').trim(), - '|Title|Description|Profile|Definition|Select|the|profile|definition.|Select|Schemas|No|schemas|avialable.|Schemas|Selected|Select|schemas|from|the|list.|template|block|text|' + assert.equal( + this.element.textContent.replace(/[ \n]+/g, '|').trim(), + '|Title|Description|Profile|Definition|Select|the|profile|definition.|Select|Schemas|No|schemas|avialable.|Schemas|Selected|Select|schemas|from|the|list.|template|block|text|', ); }); }); diff --git a/tests/integration/pods/components/object/md-profile/form/component-test.js b/tests/integration/pods/components/object/md-profile/form/component-test.js index 8d8b37274..25cb97367 100644 --- a/tests/integration/pods/components/object/md-profile/form/component-test.js +++ b/tests/integration/pods/components/object/md-profile/form/component-test.js @@ -12,21 +12,23 @@ module('Integration | Component | object/md-profile/form', function (hooks) { // Handle any actions with this.set('myAction', function(val) { ... }); this.model = createProfile(1)[0]; - await render(hbs `{{object/md-profile/form record=model}}`); + await render(hbs`{{object/md-profile/form record=model}}`); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|URL|Alias|Version|0.0.0|Update|Available|(0.0.1)|Title|Minimal|Description|A|Minimalist|Profile|Identifier|minimal|Namespace|org.adiwg.profile|' + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|URL|Alias|Version|0.0.0|Update|Available|(0.0.1)|Title|Minimal|Description|A|Minimalist|Profile|Identifier|minimal|Namespace|org.adiwg.profile|', ); // Template block usage: - await render(hbs ` + await render(hbs` {{#object/md-profile/form record=model}} template block text {{/object/md-profile/form}} `); - assert.equal(this.element.textContent.replace(/[ \n]+/g, '|').trim(), - '|URL|Alias|Version|0.0.0|Update|Available|(0.0.1)|Title|Minimal|Description|A|Minimalist|Profile|Identifier|minimal|Namespace|org.adiwg.profile|template|block|text|' + assert.equal( + this.element.textContent.replace(/[ \n]+/g, '|').trim(), + '|URL|Alias|Version|0.0.0|Update|Available|(0.0.1)|Title|Minimal|Description|A|Minimalist|Profile|Identifier|minimal|Namespace|org.adiwg.profile|template|block|text|', ); }); }); diff --git a/tests/integration/pods/components/object/md-profile/preview/component-test.js b/tests/integration/pods/components/object/md-profile/preview/component-test.js index 462abfad9..4e069fc6b 100644 --- a/tests/integration/pods/components/object/md-profile/preview/component-test.js +++ b/tests/integration/pods/components/object/md-profile/preview/component-test.js @@ -12,21 +12,23 @@ module('Integration | Component | object/md-profile/preview', function (hooks) { // Handle any actions with this.set('myAction', function(val) { ... }); this.model = createProfile(1)[0]; - await render(hbs `{{object/md-profile/preview record=model}}`); + await render(hbs`{{object/md-profile/preview record=model}}`); - assert.equal(this.element.textContent.replace(/[ \n]+/g, '|').trim(), - '|Title|Minimal|Description|A|Minimalist|Profile|Identifier|minimal|Namespace|org.adiwg.profile|' + assert.equal( + this.element.textContent.replace(/[ \n]+/g, '|').trim(), + '|Title|Minimal|Description|A|Minimalist|Profile|Identifier|minimal|Namespace|org.adiwg.profile|', ); // Template block usage: - await render(hbs ` + await render(hbs` {{#object/md-profile/preview record=model}} template block text {{/object/md-profile/preview}} `); - assert.equal(this.element.textContent.replace(/[ \n]+/g, '|').trim(), - '|Title|Minimal|Description|A|Minimalist|Profile|Identifier|minimal|Namespace|org.adiwg.profile|template|block|text|' + assert.equal( + this.element.textContent.replace(/[ \n]+/g, '|').trim(), + '|Title|Minimal|Description|A|Minimalist|Profile|Identifier|minimal|Namespace|org.adiwg.profile|template|block|text|', ); }); }); diff --git a/tests/integration/pods/components/object/md-raster/attrgroup/attribute/component-test.js b/tests/integration/pods/components/object/md-raster/attrgroup/attribute/component-test.js index 2ecb31e0c..232d07001 100644 --- a/tests/integration/pods/components/object/md-raster/attrgroup/attribute/component-test.js +++ b/tests/integration/pods/components/object/md-raster/attrgroup/attribute/component-test.js @@ -6,28 +6,34 @@ import { createAttribute } from 'mdeditor/tests/helpers/create-record'; import { parseInput, formatContent, - nestedValues + nestedValues, } from 'mdeditor/tests/helpers/md-helpers'; -module('Integration | Component | object/md-raster/attrgroup/attribute', function(hooks) { - setupRenderingTest(hooks); +module( + 'Integration | Component | object/md-raster/attrgroup/attribute', + function (hooks) { + setupRenderingTest(hooks); - - /* + /* The searchable element in the codelist is causing extra pipe characters in the test, we need to find a solution to fix. */ - todo('it renders', async function(assert) { - let attribute = createAttribute(1); + todo('it renders', async function (assert) { + let attribute = createAttribute(1); - this.set('model', attribute[0]); + this.set('model', attribute[0]); - let input = nestedValues(attribute[0]).join('|'); + let input = nestedValues(attribute[0]).join('|'); - await render(hbs`{{object/md-raster/attrgroup/attribute profilePath="foobar" model=model}}`); + await render( + hbs`{{object/md-raster/attrgroup/attribute profilePath="foobar" model=model}}`, + ); - assert.equal(formatContent(this.element).trim(), - "|Attribute|Description|Attribute|Identifier|1|Add|OK|#|Identifier|Namespace|0|identifier0|namespace0|Edit|Delete|Band|Boundary|Definition|×|bandBoundaryDefinition0|Transfer|Function|Type|×|transferFunctionType0|Transmitted|Polarization|×|transmittedPolarization0|Detected|Polarization|×|detectedPolarization0|Sequence|Identifier|Sequence|Identifier|Type|Min|Value|Max|Value|Units|Scale|Factor|Offset|Mean|Value|Number|Of|Values|Standard|Deviation|Bits|Per|Value|Bound|Min|Bound|Max|Bound|Units|Peak|Response|Tone|Gradations|Nominal|Spatial|Resolution|"); + assert.equal( + formatContent(this.element).trim(), + '|Attribute|Description|Attribute|Identifier|1|Add|OK|#|Identifier|Namespace|0|identifier0|namespace0|Edit|Delete|Band|Boundary|Definition|×|bandBoundaryDefinition0|Transfer|Function|Type|×|transferFunctionType0|Transmitted|Polarization|×|transmittedPolarization0|Detected|Polarization|×|detectedPolarization0|Sequence|Identifier|Sequence|Identifier|Type|Min|Value|Max|Value|Units|Scale|Factor|Offset|Mean|Value|Number|Of|Values|Standard|Deviation|Bits|Per|Value|Bound|Min|Bound|Max|Bound|Units|Peak|Response|Tone|Gradations|Nominal|Spatial|Resolution|', + ); - assert.equal(parseInput(this.element), input); - }); -}); + assert.equal(parseInput(this.element), input); + }); + }, +); diff --git a/tests/integration/pods/components/object/md-raster/attrgroup/component-test.js b/tests/integration/pods/components/object/md-raster/attrgroup/component-test.js index 2cc22e555..0ed4ab994 100644 --- a/tests/integration/pods/components/object/md-raster/attrgroup/component-test.js +++ b/tests/integration/pods/components/object/md-raster/attrgroup/component-test.js @@ -3,16 +3,19 @@ import { setupRenderingTest } from 'ember-qunit'; import { render } from '@ember/test-helpers'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | object/md-raster/attrgroup', function(hooks) { - setupRenderingTest(hooks); +module( + 'Integration | Component | object/md-raster/attrgroup', + function (hooks) { + setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { + await render(hbs`{{object/md-raster/attrgroup }}`); - await render(hbs`{{object/md-raster/attrgroup }}`); - - - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|No|Item|found.|Add|Item|', 'attrgroup component renders' - ); - }); -}); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|No|Item|found.|Add|Item|', + 'attrgroup component renders', + ); + }); + }, +); diff --git a/tests/integration/pods/components/object/md-raster/component-test.js b/tests/integration/pods/components/object/md-raster/component-test.js index a663cf5d7..82b1d69ed 100644 --- a/tests/integration/pods/components/object/md-raster/component-test.js +++ b/tests/integration/pods/components/object/md-raster/component-test.js @@ -4,55 +4,63 @@ import { render } from '@ember/test-helpers'; import hbs from 'htmlbars-inline-precompile'; import { parseInput, formatContent } from 'mdeditor/tests/helpers/md-helpers'; -module('Integration | Component | object/md-raster', function(hooks) { +module('Integration | Component | object/md-raster', function (hooks) { setupRenderingTest(hooks); /* The searchable element in the codelist is causing extra pipe characters in the test, we need to find a solution to fix. */ - todo('it renders', async function(assert) { - + todo('it renders', async function (assert) { this.model = { - "coverageName": "coverageName", - "coverageDescription": "coverageDescription", - "attributeGroup": [{ - "attributeContentType": ["attributeContentType1", "attributeContentType2"], - "attribute": [{ - "attributeDescription": "attributeDescription" - }], - }], - "processingLevelCode": { - "identifier": "identifier1", - "namespace": "namespace1", + coverageName: 'coverageName', + coverageDescription: 'coverageDescription', + attributeGroup: [ + { + attributeContentType: [ + 'attributeContentType1', + 'attributeContentType2', + ], + attribute: [ + { + attributeDescription: 'attributeDescription', + }, + ], + }, + ], + processingLevelCode: { + identifier: 'identifier1', + namespace: 'namespace1', }, - "imageDescription": { - "imageQualityCode": { - "identifier": "identifier2", - "namespace": "namespace2", + imageDescription: { + imageQualityCode: { + identifier: 'identifier2', + namespace: 'namespace2', }, - "illuminationElevationAngle": 45, - "illuminationAzimuthAngle": 90, - "imagingCondition": "imageCondition", - "cloudCoverPercent": 88, - "compressionQuantity": 23, - "triangulationIndicator": "true", - "radiometricCalibrationAvailable": "true", - "cameraCalibrationAvailable": "false", - "filmDistortionAvailable": "false", - "lensDistortionAvailable": "true" - } - } - - let nestedValues = (obj) => typeof obj === 'object' - ? Object.values(obj).map(nestedValues).flat() - : [obj] - let input = nestedValues(this.model).join('|') + illuminationElevationAngle: 45, + illuminationAzimuthAngle: 90, + imagingCondition: 'imageCondition', + cloudCoverPercent: 88, + compressionQuantity: 23, + triangulationIndicator: 'true', + radiometricCalibrationAvailable: 'true', + cameraCalibrationAvailable: 'false', + filmDistortionAvailable: 'false', + lensDistortionAvailable: 'true', + }, + }; + let nestedValues = (obj) => + typeof obj === 'object' + ? Object.values(obj).map(nestedValues).flat() + : [obj]; + let input = nestedValues(this.model).join('|'); await render(hbs`{{object/md-raster profilePath="foobar" model=model}}`); - assert.equal(formatContent(this.element).trim(), - '|Name|Description|Attribute|Groups|1|Add|Attribute|Group|#0|Attribute|Content|Type|×|attributeContentType1|×|attributeContentType2|Attribute|1|Add|OK|#|Attribute|Description|0|More...|Delete|Processing|Level|Code|Identifier|Namespace|namespace1|×|More|Image|Description|Image|Quality|Code|Identifier|Namespace|namespace2|×|More|Illumination|Elevation|Angle|Illumination|Azimuth|Angle|Imaging|Condition|Cloud|Cover|Percent|Compression|Quantity|Triangulation|Indicator|Radiometric|Calibration|Available|Camera|Calibration|Available|Film|Distortion|Available|Lens|Distortion|Available|') + assert.equal( + formatContent(this.element).trim(), + '|Name|Description|Attribute|Groups|1|Add|Attribute|Group|#0|Attribute|Content|Type|×|attributeContentType1|×|attributeContentType2|Attribute|1|Add|OK|#|Attribute|Description|0|More...|Delete|Processing|Level|Code|Identifier|Namespace|namespace1|×|More|Image|Description|Image|Quality|Code|Identifier|Namespace|namespace2|×|More|Illumination|Elevation|Angle|Illumination|Azimuth|Angle|Imaging|Condition|Cloud|Cover|Percent|Compression|Quantity|Triangulation|Indicator|Radiometric|Calibration|Available|Camera|Calibration|Available|Film|Distortion|Available|Lens|Distortion|Available|', + ); assert.equal(parseInput(this.element), input, 'input renders'); }); diff --git a/tests/integration/pods/components/object/md-raster/image-desc/component-test.js b/tests/integration/pods/components/object/md-raster/image-desc/component-test.js index 27ba18a8a..9cf617762 100644 --- a/tests/integration/pods/components/object/md-raster/image-desc/component-test.js +++ b/tests/integration/pods/components/object/md-raster/image-desc/component-test.js @@ -5,39 +5,49 @@ import hbs from 'htmlbars-inline-precompile'; import { parseInput, formatContent, - nestedValues + nestedValues, } from 'mdeditor/tests/helpers/md-helpers'; -module('Integration | Component | object/md-raster/image-desc', function(hooks) { - setupRenderingTest(hooks); +module( + 'Integration | Component | object/md-raster/image-desc', + function (hooks) { + setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { + this.model = { + imageQualityCode: { + identifier: 'identifier', + namespace: 'namespace', + }, + illuminationElevationAngle: 45, + illuminationAzimuthAngle: 90, + imagingCondition: 'imageCondition', + cloudCoverPercent: 88, + compressionQuantity: 23, + triangulationIndicator: 'true', + radiometricCalibrationAvailable: 'true', + cameraCalibrationAvailable: 'false', + filmDistortionAvailable: 'false', + lensDistortionAvailable: 'true', + }; - this.model = { - "imageQualityCode": { - "identifier": "identifier", - "namespace": "namespace", - }, - "illuminationElevationAngle": 45, - "illuminationAzimuthAngle": 90, - "imagingCondition": "imageCondition", - "cloudCoverPercent": 88, - "compressionQuantity": 23, - "triangulationIndicator": "true", - "radiometricCalibrationAvailable": "true", - "cameraCalibrationAvailable": "false", - "filmDistortionAvailable": "false", - "lensDistortionAvailable": "true" - } + let input = nestedValues(this.model).join('|'); - let input = nestedValues(this.model).join('|') + await render( + hbs`{{object/md-raster/image-desc profilePath="foobar" model=model}}`, + ); - await render(hbs`{{object/md-raster/image-desc profilePath="foobar" model=model}}`); + assert.equal( + formatContent(this.element).trim(), + '|Image|Quality|Code|Identifier|Namespace|namespace|×|More|Illumination|Elevation|Angle|Illumination|Azimuth|Angle|Imaging|Condition|Cloud|Cover|Percent|Compression|Quantity|Triangulation|Indicator|Radiometric|Calibration|Available|Camera|Calibration|Available|Film|Distortion|Available|Lens|Distortion|Available|', + 'md-raster/image-desc component renders', + ); - assert.equal(formatContent(this.element).trim(), - '|Image|Quality|Code|Identifier|Namespace|namespace|×|More|Illumination|Elevation|Angle|Illumination|Azimuth|Angle|Imaging|Condition|Cloud|Cover|Percent|Compression|Quantity|Triangulation|Indicator|Radiometric|Calibration|Available|Camera|Calibration|Available|Film|Distortion|Available|Lens|Distortion|Available|', 'md-raster/image-desc component renders' - ); - - assert.equal(parseInput(this.element), input, 'md-raster/image-desc inputs render') - }); -}); + assert.equal( + parseInput(this.element), + input, + 'md-raster/image-desc inputs render', + ); + }); + }, +); diff --git a/tests/integration/pods/components/object/md-raster/preview/component-test.js b/tests/integration/pods/components/object/md-raster/preview/component-test.js index d26ca1d98..10aa59123 100644 --- a/tests/integration/pods/components/object/md-raster/preview/component-test.js +++ b/tests/integration/pods/components/object/md-raster/preview/component-test.js @@ -4,24 +4,31 @@ import { render } from '@ember/test-helpers'; import hbs from 'htmlbars-inline-precompile'; import { parseInput, formatContent } from 'mdeditor/tests/helpers/md-helpers'; -module('Integration | Component | object/md-raster/preview', function(hooks) { +module('Integration | Component | object/md-raster/preview', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { this.model = { - "coverageName": "coverageName", - "coverageDescription": "coverageDescription" - } + coverageName: 'coverageName', + coverageDescription: 'coverageDescription', + }; - let input = Object.values(this.model).join('|') + let input = Object.values(this.model).join('|'); - await render(hbs`{{object/md-raster/preview profilePath="foobar" model=model}}`); + await render( + hbs`{{object/md-raster/preview profilePath="foobar" model=model}}`, + ); - assert.equal(formatContent(this.element).trim(), - '|Raster|Name|Raster|Description|', 'md-raster-preview component renders' + assert.equal( + formatContent(this.element).trim(), + '|Raster|Name|Raster|Description|', + 'md-raster-preview component renders', ); - assert.equal(parseInput(this.element), input, 'md-raster-preview inputs renders'); + assert.equal( + parseInput(this.element), + input, + 'md-raster-preview inputs renders', + ); }); }); diff --git a/tests/integration/pods/components/object/md-repository-array/component-test.js b/tests/integration/pods/components/object/md-repository-array/component-test.js index 26824cae8..d342db790 100644 --- a/tests/integration/pods/components/object/md-repository-array/component-test.js +++ b/tests/integration/pods/components/object/md-repository-array/component-test.js @@ -3,41 +3,52 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | object/md repository array', function(hooks) { - setupRenderingTest(hooks); +module( + 'Integration | Component | object/md repository array', + function (hooks) { + setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { + // Set any properties with this.set('myProperty', 'value'); + // Handle any actions with this.on('myAction', function(val) { ... }); + this.repo = [ + { + citation: { + title: 'Arctic LCC data.gov', + }, + repository: 'data.gov', + }, + { + citation: { + title: 'Something', + }, + repository: 'data.gov', + }, + ]; - // Set any properties with this.set('myProperty', 'value'); - // Handle any actions with this.on('myAction', function(val) { ... }); - this.repo = [{ - "citation": { - "title": "Arctic LCC data.gov" - }, - "repository": "data.gov" - }, { - "citation": { - "title": "Something" - }, - "repository": "data.gov" - }]; + await render( + hbs`{{object/md-repository-array value=repo profilePath="foo"}}`, + ); - await render(hbs`{{object/md-repository-array value=repo profilePath="foo"}}`); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Metadata|Repositories|2|Add|#|Repository|Collection|Title|0|data.gov|?|×|Delete|1|data.gov|?|×|Delete|', + ); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|Metadata|Repositories|2|Add|#|Repository|Collection|Title|0|data.gov|?|×|Delete|1|data.gov|?|×|Delete|'); - - assert.dom('.md-input input').hasValue('Arctic LCC data.gov'); - assert.dom('.select-value').hasText('data.gov'); - // Template block usage: - await render(hbs` + assert.dom('.md-input input').hasValue('Arctic LCC data.gov'); + assert.dom('.select-value').hasText('data.gov'); + // Template block usage: + await render(hbs` {{#object/md-repository-array profilePath="foo"}} template block text {{/object/md-repository-array}} `); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|Metadata|Repositories|Add|#|Repository|Collection|Title|Add|Metadata|Repository|', - 'block'); - }); -}); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Metadata|Repositories|Add|#|Repository|Collection|Title|Add|Metadata|Repository|', + 'block', + ); + }); + }, +); diff --git a/tests/integration/pods/components/object/md-resource-type-array/component-test.js b/tests/integration/pods/components/object/md-resource-type-array/component-test.js index 193a71d06..5d90b2cf5 100644 --- a/tests/integration/pods/components/object/md-resource-type-array/component-test.js +++ b/tests/integration/pods/components/object/md-resource-type-array/component-test.js @@ -3,34 +3,45 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | object/md resource type array', function(hooks) { - setupRenderingTest(hooks); +module( + 'Integration | Component | object/md resource type array', + function (hooks) { + setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { + // Set any properties with this.set('myProperty', 'value'); + // Handle any actions with this.on('myAction', function(val) { ... }); + this.rt = [ + { + type: 'project', + name: 'foobar', + }, + { + type: 'map', + }, + ]; - // Set any properties with this.set('myProperty', 'value'); - // Handle any actions with this.on('myAction', function(val) { ... }); - this.rt = [{ - "type": "project", - "name": "foobar" - }, { - "type": "map" - }]; + await render( + hbs`{{object/md-resource-type-array value=rt profilePath="foobar"}}`, + ); - await render(hbs`{{object/md-resource-type-array value=rt profilePath="foobar"}}`); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Resource|Types|2|Add|#|Type|Name|0|project|?|×|Delete|1|map|?|×|Delete|', + ); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|Resource|Types|2|Add|#|Type|Name|0|project|?|×|Delete|1|map|?|×|Delete|'); - - // Template block usage: - await render(hbs` + // Template block usage: + await render(hbs` {{#object/md-resource-type-array profilePath="foobar"}} template block text {{/object/md-resource-type-array}} `); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|Resource|Types|Add|#|Type|Name|Add|Resource|Type|', - 'block'); - }); -}); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Resource|Types|Add|#|Type|Name|Add|Resource|Type|', + 'block', + ); + }); + }, +); diff --git a/tests/integration/pods/components/object/md-schema/component-test.js b/tests/integration/pods/components/object/md-schema/component-test.js index 7c34b3612..490d0fac8 100644 --- a/tests/integration/pods/components/object/md-schema/component-test.js +++ b/tests/integration/pods/components/object/md-schema/component-test.js @@ -4,24 +4,29 @@ import { render, find } from '@ember/test-helpers'; import hbs from 'htmlbars-inline-precompile'; import EmberObject from '@ember/object'; -module('Integration | Component | object/md-schema', function(hooks) { +module('Integration | Component | object/md-schema', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.set('myAction', function(val) { ... }); - this.set('data', EmberObject.create({ - title: 'foo', - uri: 'bar', - remoteVersion: '1.1', - localVersion: '1.0', - hasUpdate: true - })); + this.set( + 'data', + EmberObject.create({ + title: 'foo', + uri: 'bar', + remoteVersion: '1.1', + localVersion: '1.0', + hasUpdate: true, + }), + ); await render(hbs`{{object/md-schema record=data}}`); - assert.equal(this.element.textContent.replace(/[ \s\n]+/g, '|').trim(), - '|Info|Schemas|Title|URL|Version|1.0|Update|Available|(1.1)|Description|Type|Select|the|record|type|for|schema.|Apply|Globally?|No|Yes|'); + assert.equal( + this.element.textContent.replace(/[ \s\n]+/g, '|').trim(), + '|Info|Schemas|Title|URL|Version|1.0|Update|Available|(1.1)|Description|Type|Select|the|record|type|for|schema.|Apply|Globally?|No|Yes|', + ); assert.equal(find('.md-schema input').value, 'foo', 'render form'); // Template block usage: @@ -31,7 +36,9 @@ module('Integration | Component | object/md-schema', function(hooks) { {{/object/md-schema}} `); - assert.equal(this.element.textContent.replace(/[ \s\n]+/g, '|').trim(), - '|Info|Schemas|Title|URL|Version|1.0|Update|Available|(1.1)|Description|Type|Select|the|record|type|for|schema.|Apply|Globally?|No|Yes|'); + assert.equal( + this.element.textContent.replace(/[ \s\n]+/g, '|').trim(), + '|Info|Schemas|Title|URL|Version|1.0|Update|Available|(1.1)|Description|Type|Select|the|record|type|for|schema.|Apply|Globally?|No|Yes|', + ); }); }); diff --git a/tests/integration/pods/components/object/md-schema/form/component-test.js b/tests/integration/pods/components/object/md-schema/form/component-test.js index 21f4aec1f..cb791ce31 100644 --- a/tests/integration/pods/components/object/md-schema/form/component-test.js +++ b/tests/integration/pods/components/object/md-schema/form/component-test.js @@ -4,24 +4,29 @@ import { render, find } from '@ember/test-helpers'; import hbs from 'htmlbars-inline-precompile'; import EmberObject from '@ember/object'; -module('Integration | Component | object/md-schema/form', function(hooks) { +module('Integration | Component | object/md-schema/form', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.set('myAction', function(val) { ... }); - this.set('data', EmberObject.create({ - title: 'foo', - uri: 'bar', - remoteVersion: '1.1', - localVersion: '1.0', - hasUpdate: true - })); + this.set( + 'data', + EmberObject.create({ + title: 'foo', + uri: 'bar', + remoteVersion: '1.1', + localVersion: '1.0', + hasUpdate: true, + }), + ); await render(hbs`{{object/md-schema/form record=data}}`); - assert.equal(this.element.textContent.replace(/[ \s\n]+/g, '|').trim(), - '|Title|URL|Version|1.0|Update|Available|(1.1)|Description|Type|Select|the|record|type|for|schema.|Apply|Globally?|No|Yes|'); + assert.equal( + this.element.textContent.replace(/[ \s\n]+/g, '|').trim(), + '|Title|URL|Version|1.0|Update|Available|(1.1)|Description|Type|Select|the|record|type|for|schema.|Apply|Globally?|No|Yes|', + ); assert.equal(find('input').value, 'foo', 'render form'); @@ -32,7 +37,9 @@ module('Integration | Component | object/md-schema/form', function(hooks) { {{/object/md-schema/form}} `); - assert.equal(this.element.textContent.replace(/[ \s\n]+/g, '|').trim(), - '|Title|URL|Version|1.0|Update|Available|(1.1)|Description|Type|Select|the|record|type|for|schema.|Apply|Globally?|No|Yes|template|block|text|'); + assert.equal( + this.element.textContent.replace(/[ \s\n]+/g, '|').trim(), + '|Title|URL|Version|1.0|Update|Available|(1.1)|Description|Type|Select|the|record|type|for|schema.|Apply|Globally?|No|Yes|template|block|text|', + ); }); }); diff --git a/tests/integration/pods/components/object/md-simple-array-table/component-test.js b/tests/integration/pods/components/object/md-simple-array-table/component-test.js index 49b26c951..51deb20db 100644 --- a/tests/integration/pods/components/object/md-simple-array-table/component-test.js +++ b/tests/integration/pods/components/object/md-simple-array-table/component-test.js @@ -1,37 +1,34 @@ -import { - doubleClick, - click, - findAll, - render -} from '@ember/test-helpers'; +import { doubleClick, click, findAll, render } from '@ember/test-helpers'; import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | object/md simple array table', function ( - hooks) { - setupRenderingTest(hooks); +module( + 'Integration | Component | object/md simple array table', + function (hooks) { + setupRenderingTest(hooks); - test('it renders', async function (assert) { + test('it renders', async function (assert) { + // Set any properties with this.set('myProperty', 'value'); + // Handle any actions with this.on('myAction', function(val) { ... }); - // Set any properties with this.set('myProperty', 'value'); - // Handle any actions with this.on('myAction', function(val) { ... }); + this.model = ['biz', 'baz']; + // this.on('addItem', function(val) { + // this.model.pushObject(val); + // }); + // this.on('addItem', function(val) { + // this.model.pushObject(val); + // }); - this.model = ['biz', 'baz']; - // this.on('addItem', function(val) { - // this.model.pushObject(val); - // }); - // this.on('addItem', function(val) { - // this.model.pushObject(val); - // }); + await render(hbs`{{object/md-simple-array-table}}`); - await render(hbs `{{object/md-simple-array-table}}`); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|No|Item|found.|Add|Item|', + ); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|No|Item|found.|Add|Item|'); - - // Template block usage: - await render(hbs ` + // Template block usage: + await render(hbs` {{#object/md-simple-array-table title="FooBar" required=false @@ -44,15 +41,18 @@ module('Integration | Component | object/md simple array table', function ( {{/object/md-simple-array-table}} `); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|FooBars|2|Add|FooBar|0|biz|Delete|1|baz|Delete|'); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|FooBars|2|Add|FooBar|0|biz|Delete|1|baz|Delete|', + ); - await click('.btn-info'); + await click('.btn-info'); - assert.equal(findAll('.table tr').length, 3, 'addItem'); + assert.equal(findAll('.table tr').length, 3, 'addItem'); - await doubleClick('.btn-danger'); + await doubleClick('.btn-danger'); - assert.equal(this.model.length, 1, 'deleteItem'); - }); -}); + assert.equal(this.model.length, 1, 'deleteItem'); + }); + }, +); diff --git a/tests/integration/pods/components/object/md-source/component-test.js b/tests/integration/pods/components/object/md-source/component-test.js index 00a5b69be..9488fcfac 100644 --- a/tests/integration/pods/components/object/md-source/component-test.js +++ b/tests/integration/pods/components/object/md-source/component-test.js @@ -3,50 +3,54 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | object/md source', function(hooks) { +module('Integration | Component | object/md source', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); this.source = { - "description": "description", - "sourceCitation": { - "title": "title" + description: 'description', + sourceCitation: { + title: 'title', }, - "metadataCitation": [{ - "title": "title0" + metadataCitation: [ + { + title: 'title0', }, { - "title": "title1" - } + title: 'title1', + }, ], - "spatialResolution": { - "measure": { - "type": "distance", - "value": 99.9, - "unitOfMeasure": "unitOfMeasure" - } + spatialResolution: { + measure: { + type: 'distance', + value: 99.9, + unitOfMeasure: 'unitOfMeasure', + }, }, - "referenceSystem": { - "referenceSystemType": "referenceSystemType", - "referenceSystemIdentifier": { - "identifier": "identifier" - } + referenceSystem: { + referenceSystemType: 'referenceSystemType', + referenceSystemIdentifier: { + identifier: 'identifier', + }, }, - "sourceProcessStep": [{ - "description": "description0" + sourceProcessStep: [ + { + description: 'description0', }, { - "description": "description1" - } - ] + description: 'description1', + }, + ], }; await render(hbs`{{object/md-source profilePath="foobar" model=source}}`); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|Source|ID|Description|Scope|Select|type|of|resource.|Source|Citation|Basic|Information|Title|No|Alternate|Title|found.|Add|Alternate|Title|No|Date|found.|Add|Date|No|Responsible|Party|found.|Add|Responsible|Party|No|Online|Resource|found.|Add|Online|Resource|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|Metadata|Citation|2|Add|OK|#|Title|0|title0|Edit|Delete|1|title1|Edit|Delete|Spatial|Reference|System|Reference|System|Type|referenceSystemType|×|Reference|System|Identifier|Identifier|Namespace|Select|or|type|a|namespace|for|the|identifier.|Version|Description|Authority|Basic|Information|Title|No|Alternate|Title|found.|Add|Alternate|Title|No|Date|found.|Add|Date|No|Responsible|Party|found.|Add|Responsible|Party|No|Online|Resource|found.|Add|Online|Resource|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|Spatial|Resolution|Scale|Factor|Level|Of|Detail|Measure|Measure|Type|distance|Value|Units|'); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Source|ID|Description|Scope|Select|type|of|resource.|Source|Citation|Basic|Information|Title|No|Alternate|Title|found.|Add|Alternate|Title|No|Date|found.|Add|Date|No|Responsible|Party|found.|Add|Responsible|Party|No|Online|Resource|found.|Add|Online|Resource|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|Metadata|Citation|2|Add|OK|#|Title|0|title0|Edit|Delete|1|title1|Edit|Delete|Spatial|Reference|System|Reference|System|Type|referenceSystemType|×|Reference|System|Identifier|Identifier|Namespace|Select|or|type|a|namespace|for|the|identifier.|Version|Description|Authority|Basic|Information|Title|No|Alternate|Title|found.|Add|Alternate|Title|No|Date|found.|Add|Date|No|Responsible|Party|found.|Add|Responsible|Party|No|Online|Resource|found.|Add|Online|Resource|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|Spatial|Resolution|Scale|Factor|Level|Of|Detail|Measure|Measure|Type|distance|Value|Units|', + ); // Template block usage: await render(hbs` @@ -55,8 +59,10 @@ module('Integration | Component | object/md source', function(hooks) { {{/object/md-source}} `); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - "|Source|ID|Description|Scope|Select|type|of|resource.|Source|Citation|Basic|Information|Title|No|Alternate|Title|found.|Add|Alternate|Title|No|Date|found.|Add|Date|No|Responsible|Party|found.|Add|Responsible|Party|No|Online|Resource|found.|Add|Online|Resource|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|No|Metadata|Citation|found.|Add|Metadata|Citation|Spatial|Reference|System|Reference|System|Type|Select|type|of|reference|system|used.|Reference|System|Identifier|Identifier|Namespace|Select|or|type|a|namespace|for|the|identifier.|Version|Description|Authority|Basic|Information|Title|No|Alternate|Title|found.|Add|Alternate|Title|No|Date|found.|Add|Date|No|Responsible|Party|found.|Add|Responsible|Party|No|Online|Resource|found.|Add|Online|Resource|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|Spatial|Resolution|Scale|Factor|Level|Of|Detail|Measure|Measure|Type|The|type|of|measurement.|Value|Units|", - 'block'); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Source|ID|Description|Scope|Select|type|of|resource.|Source|Citation|Basic|Information|Title|No|Alternate|Title|found.|Add|Alternate|Title|No|Date|found.|Add|Date|No|Responsible|Party|found.|Add|Responsible|Party|No|Online|Resource|found.|Add|Online|Resource|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|No|Metadata|Citation|found.|Add|Metadata|Citation|Spatial|Reference|System|Reference|System|Type|Select|type|of|reference|system|used.|Reference|System|Identifier|Identifier|Namespace|Select|or|type|a|namespace|for|the|identifier.|Version|Description|Authority|Basic|Information|Title|No|Alternate|Title|found.|Add|Alternate|Title|No|Date|found.|Add|Date|No|Responsible|Party|found.|Add|Responsible|Party|No|Online|Resource|found.|Add|Online|Resource|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|Spatial|Resolution|Scale|Factor|Level|Of|Detail|Measure|Measure|Type|The|type|of|measurement.|Value|Units|', + 'block', + ); }); }); diff --git a/tests/integration/pods/components/object/md-source/preview/component-test.js b/tests/integration/pods/components/object/md-source/preview/component-test.js index d6e86ba67..8af353f6c 100644 --- a/tests/integration/pods/components/object/md-source/preview/component-test.js +++ b/tests/integration/pods/components/object/md-source/preview/component-test.js @@ -3,47 +3,51 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | object/md source/preview', function(hooks) { +module('Integration | Component | object/md source/preview', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); this.source = { - "description": "description", - "sourceCitation": { - "title": "title" + description: 'description', + sourceCitation: { + title: 'title', }, - "metadataCitation": [{ - "title": "title0" + metadataCitation: [ + { + title: 'title0', }, { - "title": "title1" - } + title: 'title1', + }, ], - "spatialResolution": { - "measure": { - "type": "distance", - "value": 99.9, - "unitOfMeasure": "unitOfMeasure" - } + spatialResolution: { + measure: { + type: 'distance', + value: 99.9, + unitOfMeasure: 'unitOfMeasure', + }, }, - "referenceSystem": { - "referenceSystemType": "referenceSystemType", - "referenceSystemIdentifier": { - "identifier": "identifier" - } + referenceSystem: { + referenceSystemType: 'referenceSystemType', + referenceSystemIdentifier: { + identifier: 'identifier', + }, }, - "sourceProcessStep": [{ - "description": "description0" + sourceProcessStep: [ + { + description: 'description0', }, { - "description": "description1" - } - ] + description: 'description1', + }, + ], }; - await render(hbs`{{object/md-source/preview model=source profilePath="foobar"}}`); + await render( + hbs`{{object/md-source/preview model=source profilePath="foobar"}}`, + ); assert.equal(find('textarea').value, 'description'); @@ -54,5 +58,6 @@ module('Integration | Component | object/md source/preview', function(hooks) { {{/object/md-source/preview}} `); - assert.equal(find('textarea').value, 'description'); }); + assert.equal(find('textarea').value, 'description'); + }); }); diff --git a/tests/integration/pods/components/object/md-spatial-info/component-test.js b/tests/integration/pods/components/object/md-spatial-info/component-test.js index ae6e73c41..77a155d73 100644 --- a/tests/integration/pods/components/object/md-spatial-info/component-test.js +++ b/tests/integration/pods/components/object/md-spatial-info/component-test.js @@ -3,106 +3,112 @@ import { module, test, skip } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | object/md spatial info', function(hooks) { +module('Integration | Component | object/md spatial info', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); this.model = { - spatialReferenceSystem: [{ - "referenceSystemType": "referenceSystemType", - "referenceSystemIdentifier": { - "identifier": "identifier" - } + spatialReferenceSystem: [ + { + referenceSystemType: 'referenceSystemType', + referenceSystemIdentifier: { + identifier: 'identifier', + }, }, { - "referenceSystemType": "projected", - "referenceSystemIdentifier": { - "identifier": "Zone 10", - "namespace": "UTM", - "description": "Universal Transverse Mercator Zone 10 Seattle, Washington" - } + referenceSystemType: 'projected', + referenceSystemIdentifier: { + identifier: 'Zone 10', + namespace: 'UTM', + description: + 'Universal Transverse Mercator Zone 10 Seattle, Washington', + }, }, { - "referenceSystemType": "geodeticGeographic2D", - "referenceSystemIdentifier": { - "identifier": "4326", - "namespace": "urn:ogc:def:crs:EPSG", - "description": "epsg projection 4326 - wgs 84 - Latitude Longitude", - "authority": { - "title": "European Petroleum Survey Group" - } - } + referenceSystemType: 'geodeticGeographic2D', + referenceSystemIdentifier: { + identifier: '4326', + namespace: 'urn:ogc:def:crs:EPSG', + description: 'epsg projection 4326 - wgs 84 - Latitude Longitude', + authority: { + title: 'European Petroleum Survey Group', + }, + }, }, { - "referenceSystemType": "projected", - "referenceSystemWKT": "PROJCS ['Wyoming 4901, Eastern Zone (1983, meters)', GEOGCS ['GRS 80', DATUM ['GRS 80', SPHEROID ['GRS 80', 6378137.000000, 298.257222]], PRIMEM ['Greenwich', 0.000000 ], UNIT ['Decimal Degree', 0.01745329251994330]], PROJECTION ['Transverse Mercator'], PARAMETER ['Scale_Factor', 0.999938], PARAMETER ['Central_Meridian', -105.166667], PARAMETER ['Latitude_Of_Origin', 40.500000], PARAMETER ['False_Easting', 200000.000000], UNIT ['Meter', 1.000000000000]]" + referenceSystemType: 'projected', + referenceSystemWKT: + "PROJCS ['Wyoming 4901, Eastern Zone (1983, meters)', GEOGCS ['GRS 80', DATUM ['GRS 80', SPHEROID ['GRS 80', 6378137.000000, 298.257222]], PRIMEM ['Greenwich', 0.000000 ], UNIT ['Decimal Degree', 0.01745329251994330]], PROJECTION ['Transverse Mercator'], PARAMETER ['Scale_Factor', 0.999938], PARAMETER ['Central_Meridian', -105.166667], PARAMETER ['Latitude_Of_Origin', 40.500000], PARAMETER ['False_Easting', 200000.000000], UNIT ['Meter', 1.000000000000]]", }, { - "referenceSystemType": "geodeticGeographic2D", - "referenceSystemParameterSet": { - "geodetic": { - "datumIdentifier": { - "identifier": "identifier" + referenceSystemType: 'geodeticGeographic2D', + referenceSystemParameterSet: { + geodetic: { + datumIdentifier: { + identifier: 'identifier', }, - "ellipsoidIdentifier": { - "identifier": "identifier" + ellipsoidIdentifier: { + identifier: 'identifier', }, - "semiMajorAxis": 9.9, - "axisUnits": "axisUnits", - "denominatorOfFlatteningRatio": 9.9 - } - } - } + semiMajorAxis: 9.9, + axisUnits: 'axisUnits', + denominatorOfFlatteningRatio: 9.9, + }, + }, + }, ], - spatialResolution: [{ - "scaleFactor": 99999 + spatialResolution: [ + { + scaleFactor: 99999, }, { - "measure": { - "type": "distance", - "value": 99.9, - "unitOfMeasure": "unitOfMeasure" - } + measure: { + type: 'distance', + value: 99.9, + unitOfMeasure: 'unitOfMeasure', + }, }, { - "levelOfDetail": "levelOfDetail" + levelOfDetail: 'levelOfDetail', }, { - "geographicResolution": { - "latitudeResolution": 9.9, - "longitudeResolution": 9.9, - "unitOfMeasure": "unitOfMeasure" - } + geographicResolution: { + latitudeResolution: 9.9, + longitudeResolution: 9.9, + unitOfMeasure: 'unitOfMeasure', + }, }, { - "bearingDistanceResolution": { - "distanceResolution": 9.9, - "distanceUnitOfMeasure": "", - "bearingResolution": 9.9, - "bearingUnitOfMeasure": "", - "bearingReferenceDirection": "north", - "bearingReferenceMeridian": "assumed" - } + bearingDistanceResolution: { + distanceResolution: 9.9, + distanceUnitOfMeasure: '', + bearingResolution: 9.9, + bearingUnitOfMeasure: '', + bearingReferenceDirection: 'north', + bearingReferenceMeridian: 'assumed', + }, }, { - "coordinateResolution": { - "abscissaResolutionX": 9.9, - "ordinateResolutionY": 9.9, - "unitOfMeasure": "unitOfMeasure" - } - } + coordinateResolution: { + abscissaResolutionX: 9.9, + ordinateResolutionY: 9.9, + unitOfMeasure: 'unitOfMeasure', + }, + }, ], - spatialRepresentationType: ["vector", "stereoModel"] - } - + spatialRepresentationType: ['vector', 'stereoModel'], + }; - await render(hbs`{{object/md-spatial-info profilePath="foobar" model=model}}`); + await render( + hbs`{{object/md-spatial-info profilePath="foobar" model=model}}`, + ); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|Spatial|Representation|Type|×|stereoModel|?|×|vector|?|Spatial|Reference|System|5|Add|OK|#|Reference|System|Type|Identifier|0|referenceSystemType|identifier|Edit|Delete|1|projected|Zone|10|Edit|Delete|2|geodeticGeographic2D|4326|Edit|Delete|3|projected|Not|Defined|Edit|Delete|4|geodeticGeographic2D|Not|Defined|Edit|Delete|Spatial|Resolution|6|Add|OK|#|Scale|Factor|Level|Of|Detail|Type|0|99999|Not|Defined|Not|Defined|Edit|Delete|1|Not|Defined|Not|Defined|distance|Edit|Delete|2|Not|Defined|levelOfDetail|Not|Defined|Edit|Delete|3|Not|Defined|Not|Defined|Not|Defined|Edit|Delete|4|Not|Defined|Not|Defined|Not|Defined|Edit|Delete|5|Not|Defined|Not|Defined|Not|Defined|Edit|Delete|Add|Spatial|Resolution|No|Raster|Description|found.|Add|Raster|Description|'); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Spatial|Representation|Type|×|stereoModel|?|×|vector|?|Spatial|Reference|System|5|Add|OK|#|Reference|System|Type|Identifier|0|referenceSystemType|identifier|Edit|Delete|1|projected|Zone|10|Edit|Delete|2|geodeticGeographic2D|4326|Edit|Delete|3|projected|Not|Defined|Edit|Delete|4|geodeticGeographic2D|Not|Defined|Edit|Delete|Spatial|Resolution|6|Add|OK|#|Scale|Factor|Level|Of|Detail|Type|0|99999|Not|Defined|Not|Defined|Edit|Delete|1|Not|Defined|Not|Defined|distance|Edit|Delete|2|Not|Defined|levelOfDetail|Not|Defined|Edit|Delete|3|Not|Defined|Not|Defined|Not|Defined|Edit|Delete|4|Not|Defined|Not|Defined|Not|Defined|Edit|Delete|5|Not|Defined|Not|Defined|Not|Defined|Edit|Delete|Add|Spatial|Resolution|No|Raster|Description|found.|Add|Raster|Description|', + ); // Template block usage: await render(hbs` @@ -111,9 +117,11 @@ module('Integration | Component | object/md spatial info', function(hooks) { {{/object/md-spatial-info}} `); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), '|Spatial|Representation|Type|No|Spatial|Reference|System|found.|Add|Spatial|Reference|System|No|Spatial|Resolution|found.|Add|Spatial|Resolution|No|Raster|Description|found.|Add|Raster|Description|template|block|text|', - 'block'); + 'block', + ); }); skip('test actions', async function (assert) { diff --git a/tests/integration/pods/components/object/md-spatial-resolution/component-test.js b/tests/integration/pods/components/object/md-spatial-resolution/component-test.js index 8ee315237..5a32c06a9 100644 --- a/tests/integration/pods/components/object/md-spatial-resolution/component-test.js +++ b/tests/integration/pods/components/object/md-spatial-resolution/component-test.js @@ -3,97 +3,149 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | object/md spatial resolution', function(hooks) { - setupRenderingTest(hooks); - - test('it renders', async function(assert) { - - // Set any properties with this.set('myProperty', 'value'); - // Handle any actions with this.on('myAction', function(val) { ... }); - this.model = { - "scaleFactor": { - scaleFactor: 99999 - }, - "measure": { - "measure": { - "type": "distance", - "value": 99.9, - "unitOfMeasure": "unitOfMeasure" - } - }, - "levelOfDetail": { - levelOfDetail: "levelOfDetail" - }, - "geographicResolution": { +module( + 'Integration | Component | object/md spatial resolution', + function (hooks) { + setupRenderingTest(hooks); + + test('it renders', async function (assert) { + // Set any properties with this.set('myProperty', 'value'); + // Handle any actions with this.on('myAction', function(val) { ... }); + this.model = { + scaleFactor: { + scaleFactor: 99999, + }, + measure: { + measure: { + type: 'distance', + value: 99.9, + unitOfMeasure: 'unitOfMeasure', + }, + }, + levelOfDetail: { + levelOfDetail: 'levelOfDetail', + }, geographicResolution: { - "latitudeResolution": 9.9, - "longitudeResolution": 9.9, - "unitOfMeasure": "unitOfMeasure" - } - }, - "bearingDistanceResolution": { + geographicResolution: { + latitudeResolution: 9.9, + longitudeResolution: 9.9, + unitOfMeasure: 'unitOfMeasure', + }, + }, bearingDistanceResolution: { - "distanceResolution": 9.9, - "distanceUnitOfMeasure": "", - "bearingResolution": 9.9, - "bearingUnitOfMeasure": "", - "bearingReferenceDirection": "north", - "bearingReferenceMeridian": "assumed" - } - }, - "coordinateResolution": { + bearingDistanceResolution: { + distanceResolution: 9.9, + distanceUnitOfMeasure: '', + bearingResolution: 9.9, + bearingUnitOfMeasure: '', + bearingReferenceDirection: 'north', + bearingReferenceMeridian: 'assumed', + }, + }, coordinateResolution: { - "abscissaResolutionX": 9.9, - "ordinateResolutionY": 9.9, - "unitOfMeasure": "unitOfMeasure" - } - } - }; - - //Todo: Look into this - //! this option was giving not working well with the regex experesson - //var empty = "Scale|Factor|Level|Of|Detail|Measure|Measure|Type|The|type|of|measurement.|Value|Units|"; - - await render(hbs`{{object/md-spatial-resolution profilePath="foobar" model=model.scaleFactor}}`); - - assert.equal(findAll('.md-input-input input')[0].value, this.model.scaleFactor.scaleFactor, 'scaleFactor'); - assert.ok(findAll('.md-input-input input')[1].disabled, 'level disabled'); - assert.ok(findAll('.md-input-input input')[2].disabled, 'measure disabled'); - - await render(hbs`{{object/md-spatial-resolution profilePath="foobar" model=model.measure}}`); - - assert.equal(findAll('.md-input-input input')[2].value, this.model.measure.measure.value, 'measure'); - assert.ok(findAll('.md-input-input input')[1].disabled, 'level disabled'); - assert.ok(findAll('.md-input-input input')[0].disabled, 'scaleFactor disabled'); - - await render(hbs`{{object/md-spatial-resolution profilePath="foobar" model=model.levelOfDetail}}`); - - assert.equal(findAll('.md-input-input input')[1].value, this.model.levelOfDetail.levelOfDetail, 'levelOfDetail'); - assert.ok(findAll('.md-input-input input')[2].disabled, 'measure disabled'); - assert.ok(findAll('.md-input-input input')[0].disabled, 'scaleFactor disabled'); - - await render(hbs`{{object/md-spatial-resolution profilePath="foobar" model=model.geographicResolution}}`); - - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|Scale|Factor|Level|Of|Detail|Measure|Measure|Type|The|type|of|measurement.|Value|Units|', 'geographicResolution'); - - await render(hbs`{{object/md-spatial-resolution profilePath="foobar" model=model.bearingDistanceResolution}}`); - - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|Scale|Factor|Level|Of|Detail|Measure|Measure|Type|The|type|of|measurement.|Value|Units|', 'bearingDistanceResolution'); - - await render(hbs`{{object/md-spatial-resolution profilePath="foobar" model=model.coordinateResolution}}`); - - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|Scale|Factor|Level|Of|Detail|Measure|Measure|Type|The|type|of|measurement.|Value|Units|', 'coordinateResolution'); - - // Template block usage: - await render(hbs` + coordinateResolution: { + abscissaResolutionX: 9.9, + ordinateResolutionY: 9.9, + unitOfMeasure: 'unitOfMeasure', + }, + }, + }; + + //Todo: Look into this + //! this option was giving not working well with the regex experesson + //var empty = "Scale|Factor|Level|Of|Detail|Measure|Measure|Type|The|type|of|measurement.|Value|Units|"; + + await render( + hbs`{{object/md-spatial-resolution profilePath="foobar" model=model.scaleFactor}}`, + ); + + assert.equal( + findAll('.md-input-input input')[0].value, + this.model.scaleFactor.scaleFactor, + 'scaleFactor', + ); + assert.ok(findAll('.md-input-input input')[1].disabled, 'level disabled'); + assert.ok( + findAll('.md-input-input input')[2].disabled, + 'measure disabled', + ); + + await render( + hbs`{{object/md-spatial-resolution profilePath="foobar" model=model.measure}}`, + ); + + assert.equal( + findAll('.md-input-input input')[2].value, + this.model.measure.measure.value, + 'measure', + ); + assert.ok(findAll('.md-input-input input')[1].disabled, 'level disabled'); + assert.ok( + findAll('.md-input-input input')[0].disabled, + 'scaleFactor disabled', + ); + + await render( + hbs`{{object/md-spatial-resolution profilePath="foobar" model=model.levelOfDetail}}`, + ); + + assert.equal( + findAll('.md-input-input input')[1].value, + this.model.levelOfDetail.levelOfDetail, + 'levelOfDetail', + ); + assert.ok( + findAll('.md-input-input input')[2].disabled, + 'measure disabled', + ); + assert.ok( + findAll('.md-input-input input')[0].disabled, + 'scaleFactor disabled', + ); + + await render( + hbs`{{object/md-spatial-resolution profilePath="foobar" model=model.geographicResolution}}`, + ); + + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Scale|Factor|Level|Of|Detail|Measure|Measure|Type|The|type|of|measurement.|Value|Units|', + 'geographicResolution', + ); + + await render( + hbs`{{object/md-spatial-resolution profilePath="foobar" model=model.bearingDistanceResolution}}`, + ); + + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Scale|Factor|Level|Of|Detail|Measure|Measure|Type|The|type|of|measurement.|Value|Units|', + 'bearingDistanceResolution', + ); + + await render( + hbs`{{object/md-spatial-resolution profilePath="foobar" model=model.coordinateResolution}}`, + ); + + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Scale|Factor|Level|Of|Detail|Measure|Measure|Type|The|type|of|measurement.|Value|Units|', + 'coordinateResolution', + ); + + // Template block usage: + await render(hbs` {{#object/md-spatial-resolution model=(hash) profilePath="foobar"}} template block text {{/object/md-spatial-resolution}} `); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), '|Scale|Factor|Level|Of|Detail|Measure|Measure|Type|The|type|of|measurement.|Value|Units|' + 'template|block|text|', 'block'); - }); -}); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Scale|Factor|Level|Of|Detail|Measure|Measure|Type|The|type|of|measurement.|Value|Units|' + + 'template|block|text|', + 'block', + ); + }); + }, +); diff --git a/tests/integration/pods/components/object/md-srs/component-test.js b/tests/integration/pods/components/object/md-srs/component-test.js index 6a324a94d..e73ae7cab 100644 --- a/tests/integration/pods/components/object/md-srs/component-test.js +++ b/tests/integration/pods/components/object/md-srs/component-test.js @@ -3,31 +3,31 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | object/md srs', function(hooks) { +module('Integration | Component | object/md srs', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); this.srs = { - "referenceSystemType": "projected", - "referenceSystemIdentifier": { - "identifier": "identifier", - "version": "version", - "description": "description" - } + referenceSystemType: 'projected', + referenceSystemIdentifier: { + identifier: 'identifier', + version: 'version', + description: 'description', + }, }; await render(hbs`{{object/md-srs profilePath="foobar" model=srs}}`); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|Reference|System|Type|projected|?|×|Reference|System|Identifier|Identifier|Namespace|Select|or|type|a|namespace|for|the|identifier.|Version|Description|Authority|Basic|Information|Title|No|Alternate|Title|found.|Add|Alternate|Title|No|Date|found.|Add|Date|No|Responsible|Party|found.|Add|Responsible|Party|No|Online|Resource|found.|Add|Online|Resource|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|'); - + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Reference|System|Type|projected|?|×|Reference|System|Identifier|Identifier|Namespace|Select|or|type|a|namespace|for|the|identifier.|Version|Description|Authority|Basic|Information|Title|No|Alternate|Title|found.|Add|Alternate|Title|No|Date|found.|Add|Date|No|Responsible|Party|found.|Add|Responsible|Party|No|Online|Resource|found.|Add|Online|Resource|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|', + ); var input = findAll('input, textarea').mapBy('value').join('|'); - assert.equal(input,'identifier|version|description|', 'input values'); + assert.equal(input, 'identifier|version|description|', 'input values'); // Template block usage: await render(hbs` @@ -36,8 +36,10 @@ module('Integration | Component | object/md srs', function(hooks) { {{/object/md-srs}} `); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - "|Reference|System|Type|Select|type|of|reference|system|used.|template|block|text|", - 'block'); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Reference|System|Type|Select|type|of|reference|system|used.|template|block|text|', + 'block', + ); }); }); diff --git a/tests/integration/pods/components/object/md-taxonomy/classification/component-test.js b/tests/integration/pods/components/object/md-taxonomy/classification/component-test.js index 8c944314f..8868cd19b 100644 --- a/tests/integration/pods/components/object/md-taxonomy/classification/component-test.js +++ b/tests/integration/pods/components/object/md-taxonomy/classification/component-test.js @@ -4,33 +4,46 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import createTaxonomy from 'mdeditor/tests/helpers/create-taxonomy'; -module('Integration | Component | object/md taxonomy/classification', function(hooks) { - setupRenderingTest(hooks); - - test('it renders', async function(assert) { - // Set any properties with this.set('myProperty', 'value'); - // Handle any actions with this.on('myAction', function(val) { ... }); - this.model = createTaxonomy()[0].taxonomicClassification; - - await render(hbs`{{object/md-taxonomy/classification model=model profilePath="foobar"}}`); - - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|Kingdom|Fungi|(555705)|Kingdom|Edit|Delete|Add|Child|Subkingdom|Dikarya|(936287)|Edit|Delete|Add|Child|Division|Basidiomycota|(623881)|Edit|Delete|Add|Child|Kingdom|Animalia|(202423)|Edit|Delete|Add|Child|Subkingdom|Radiata|(914153)|Edit|Delete|Add|Child|Phylum|Cnidaria|(48738)|Edit|Delete|Add|Child|Subphylum|Medusozoa|(718920)|Edit|Delete|Add|Child|Class|Scyphozoa|(51483)|Edit|Delete|Add|Child|Subclass|Discomedusae|(718923)|Edit|Delete|Add|Child|Order|Rhizostomeae|(51756)|Edit|Delete|Add|Child|Family|Rhizostomatidae|(51911)|Edit|Delete|Add|Child|Genus|Rhopilema|(51919)|Edit|Delete|Add|Child|Species|Rhopilema|verrilli|(51920)|mushroom|jellyfish|Edit|Delete|Add|Child|'); - - await render(hbs`{{object/md-taxonomy/classification model=model preview=true profilePath="foobar"}}`); - - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|Kingdom|Fungi|(555705)|Kingdom|Kingdom|Animalia|(202423)|'); - - // Template block usage: - await render(hbs` +module( + 'Integration | Component | object/md taxonomy/classification', + function (hooks) { + setupRenderingTest(hooks); + + test('it renders', async function (assert) { + // Set any properties with this.set('myProperty', 'value'); + // Handle any actions with this.on('myAction', function(val) { ... }); + this.model = createTaxonomy()[0].taxonomicClassification; + + await render( + hbs`{{object/md-taxonomy/classification model=model profilePath="foobar"}}`, + ); + + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Kingdom|Fungi|(555705)|Kingdom|Edit|Delete|Add|Child|Subkingdom|Dikarya|(936287)|Edit|Delete|Add|Child|Division|Basidiomycota|(623881)|Edit|Delete|Add|Child|Kingdom|Animalia|(202423)|Edit|Delete|Add|Child|Subkingdom|Radiata|(914153)|Edit|Delete|Add|Child|Phylum|Cnidaria|(48738)|Edit|Delete|Add|Child|Subphylum|Medusozoa|(718920)|Edit|Delete|Add|Child|Class|Scyphozoa|(51483)|Edit|Delete|Add|Child|Subclass|Discomedusae|(718923)|Edit|Delete|Add|Child|Order|Rhizostomeae|(51756)|Edit|Delete|Add|Child|Family|Rhizostomatidae|(51911)|Edit|Delete|Add|Child|Genus|Rhopilema|(51919)|Edit|Delete|Add|Child|Species|Rhopilema|verrilli|(51920)|mushroom|jellyfish|Edit|Delete|Add|Child|', + ); + + await render( + hbs`{{object/md-taxonomy/classification model=model preview=true profilePath="foobar"}}`, + ); + + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Kingdom|Fungi|(555705)|Kingdom|Kingdom|Animalia|(202423)|', + ); + + // Template block usage: + await render(hbs` {{#object/md-taxonomy/classification profilePath="foobar"}} template block text {{/object/md-taxonomy/classification}} `); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|No|Classification|found.|', - 'block'); - }); -}); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|No|Classification|found.|', + 'block', + ); + }); + }, +); diff --git a/tests/integration/pods/components/object/md-taxonomy/classification/taxon/component-test.js b/tests/integration/pods/components/object/md-taxonomy/classification/taxon/component-test.js index df026ed8b..3b4b6b9e4 100644 --- a/tests/integration/pods/components/object/md-taxonomy/classification/taxon/component-test.js +++ b/tests/integration/pods/components/object/md-taxonomy/classification/taxon/component-test.js @@ -4,65 +4,77 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import createTaxonomy from 'mdeditor/tests/helpers/create-taxonomy'; -module('Integration | Component | object/md taxonomy/classification/taxon', function(hooks) { - setupRenderingTest(hooks); +module( + 'Integration | Component | object/md taxonomy/classification/taxon', + function (hooks) { + setupRenderingTest(hooks); - test('it renders', async function(assert) { - assert.expect(7); - this.model = createTaxonomy()[0].taxonomicClassification[0]; + test('it renders', async function (assert) { + assert.expect(7); + this.model = createTaxonomy()[0].taxonomicClassification[0]; - this.delete = function(taxa){ + this.delete = function (taxa) { assert.ok(taxa, 'called delete'); - }; + }; - await render(hbs`{{object/md-taxonomy/classification/taxon model=model deleteTaxa=delete top=top profilePath="foobar"}}`); + await render( + hbs`{{object/md-taxonomy/classification/taxon model=model deleteTaxa=delete top=top profilePath="foobar"}}`, + ); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|Kingdom|Fungi|(555705)|Kingdom|Edit|Delete|Add|Child|Subkingdom|Dikarya|(936287)|Edit|Delete|Add|Child|Division|Basidiomycota|(623881)|Edit|Delete|Add|Child|'); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Kingdom|Fungi|(555705)|Kingdom|Edit|Delete|Add|Child|Subkingdom|Dikarya|(936287)|Edit|Delete|Add|Child|Division|Basidiomycota|(623881)|Edit|Delete|Add|Child|', + ); // await click('.btn-info'); - await click('.btn-success'); + await click('.btn-success'); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|Kingdom|Fungi|(555705)|Kingdom|Taxonomic|Level|Taxonomic|Name|Taxonomic|ID|Common|Names|1|Add|Common|Name|0|Delete|OK|Subkingdom|Dikarya|(936287)|Edit|Delete|Add|Child|Division|Basidiomycota|(623881)|Edit|Delete|Add|Child|', - 'edit' - ); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Kingdom|Fungi|(555705)|Kingdom|Taxonomic|Level|Taxonomic|Name|Taxonomic|ID|Common|Names|1|Add|Common|Name|0|Delete|OK|Subkingdom|Dikarya|(936287)|Edit|Delete|Add|Child|Division|Basidiomycota|(623881)|Edit|Delete|Add|Child|', + 'edit', + ); - await click('.md-taxon-form footer .btn-info'); + await click('.md-taxon-form footer .btn-info'); - await click('.btn-danger'); - await click('.btn-danger'); + await click('.btn-danger'); + await click('.btn-danger'); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|Kingdom|Fungi|(555705)|Kingdom|Edit|Delete|Add|Child|Subkingdom|Dikarya|(936287)|Edit|Delete|Add|Child|Division|Basidiomycota|(623881)|Edit|Delete|Add|Child|'); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Kingdom|Fungi|(555705)|Kingdom|Edit|Delete|Add|Child|Subkingdom|Dikarya|(936287)|Edit|Delete|Add|Child|Division|Basidiomycota|(623881)|Edit|Delete|Add|Child|', + ); - await click('.md-taxon .md-taxon .btn-info'); + await click('.md-taxon .md-taxon .btn-info'); - await render(hbs`
      + await render(hbs`
        {{object/md-taxonomy/classification/taxon model=model preview=false top=top profilePath="foobar"}}
      `); - await waitFor('.md-taxon-form', { timeout: 2000, count: 1 }); + await waitFor('.md-taxon-form', { timeout: 2000, count: 1 }); - assert.dom('.md-taxon-body').isVisible({count:4}); - assert.dom('.md-taxon-body.md-spotlight-target').isVisible(); + assert.dom('.md-taxon-body').isVisible({ count: 4 }); + assert.dom('.md-taxon-body.md-spotlight-target').isVisible(); - await click('.md-taxon-form footer .btn-info'); + await click('.md-taxon-form footer .btn-info'); - let del = findAll('.md-taxon .md-taxon .btn-danger').lastObject; + let del = findAll('.md-taxon .md-taxon .btn-danger').lastObject; - await click(del); - await click(del); + await click(del); + await click(del); - // Template block usage: - await render(hbs` + // Template block usage: + await render(hbs` {{#object/md-taxonomy/classification/taxon model=model profilePath="foobar"}} template block text {{/object/md-taxonomy/classification/taxon}} `); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|Kingdom|Fungi|(555705)|Kingdom|Edit|Delete|Add|Child|Subkingdom|Dikarya|(936287)|Edit|Delete|Add|Child|Division|Basidiomycota|(623881)|Edit|Delete|Add|Child|', - 'block'); - }); -}); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Kingdom|Fungi|(555705)|Kingdom|Edit|Delete|Add|Child|Subkingdom|Dikarya|(936287)|Edit|Delete|Add|Child|Division|Basidiomycota|(623881)|Edit|Delete|Add|Child|', + 'block', + ); + }); + }, +); diff --git a/tests/integration/pods/components/object/md-taxonomy/collection/component-test.js b/tests/integration/pods/components/object/md-taxonomy/collection/component-test.js index c2b09f565..942cbb7b7 100644 --- a/tests/integration/pods/components/object/md-taxonomy/collection/component-test.js +++ b/tests/integration/pods/components/object/md-taxonomy/collection/component-test.js @@ -4,33 +4,45 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import createTaxonomy from 'mdeditor/tests/helpers/create-taxonomy'; -module('Integration | Component | object/md taxonomy/collection', function(hooks) { - setupRenderingTest(hooks); - - test('it renders', async function(assert) { - // Set any properties with this.set('myProperty', 'value'); - // Handle any actions with this.on('myAction', function(val) { ... }); - this.model = createTaxonomy()[0]; - - await render(hbs`{{object/md-taxonomy/collection model=model profilePath="foobar"}}`); - - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|Taxonomic|System|1|Add|OK|#|Title|Modifications|0|More...|Delete|Classification|Kingdom|Fungi|(555705)|Kingdom|Edit|Delete|Add|Child|Subkingdom|Dikarya|(936287)|Edit|Delete|Add|Child|Division|Basidiomycota|(623881)|Edit|Delete|Add|Child|Kingdom|Animalia|(202423)|Edit|Delete|Add|Child|Subkingdom|Radiata|(914153)|Edit|Delete|Add|Child|Phylum|Cnidaria|(48738)|Edit|Delete|Add|Child|Subphylum|Medusozoa|(718920)|Edit|Delete|Add|Child|Class|Scyphozoa|(51483)|Edit|Delete|Add|Child|Subclass|Discomedusae|(718923)|Edit|Delete|Add|Child|Order|Rhizostomeae|(51756)|Edit|Delete|Add|Child|Family|Rhizostomatidae|(51911)|Edit|Delete|Add|Child|Genus|Rhopilema|(51919)|Edit|Delete|Add|Child|Species|Rhopilema|verrilli|(51920)|mushroom|jellyfish|Edit|Delete|Add|Child|Observers|1|Add|#|Role|Contacts|0|pointOfContact|?|×|Delete|General|Scope|Identification|Procedure|Identification|Completeness|Voucher|1|Add|OK|#|Specimen|0|Specimen|Edit|Delete|' - ); - - var input = findAll('form input, form textarea').mapBy('value').join('|'); - - assert.equal(input, "Integrated Taxonomic Information System (ITIS)|modifications||Scope|Id Procedure|Id Completeness", 'input values'); - - // Template block usage: - await render(hbs` +module( + 'Integration | Component | object/md taxonomy/collection', + function (hooks) { + setupRenderingTest(hooks); + + test('it renders', async function (assert) { + // Set any properties with this.set('myProperty', 'value'); + // Handle any actions with this.on('myAction', function(val) { ... }); + this.model = createTaxonomy()[0]; + + await render( + hbs`{{object/md-taxonomy/collection model=model profilePath="foobar"}}`, + ); + + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Taxonomic|System|1|Add|OK|#|Title|Modifications|0|More...|Delete|Classification|Kingdom|Fungi|(555705)|Kingdom|Edit|Delete|Add|Child|Subkingdom|Dikarya|(936287)|Edit|Delete|Add|Child|Division|Basidiomycota|(623881)|Edit|Delete|Add|Child|Kingdom|Animalia|(202423)|Edit|Delete|Add|Child|Subkingdom|Radiata|(914153)|Edit|Delete|Add|Child|Phylum|Cnidaria|(48738)|Edit|Delete|Add|Child|Subphylum|Medusozoa|(718920)|Edit|Delete|Add|Child|Class|Scyphozoa|(51483)|Edit|Delete|Add|Child|Subclass|Discomedusae|(718923)|Edit|Delete|Add|Child|Order|Rhizostomeae|(51756)|Edit|Delete|Add|Child|Family|Rhizostomatidae|(51911)|Edit|Delete|Add|Child|Genus|Rhopilema|(51919)|Edit|Delete|Add|Child|Species|Rhopilema|verrilli|(51920)|mushroom|jellyfish|Edit|Delete|Add|Child|Observers|1|Add|#|Role|Contacts|0|pointOfContact|?|×|Delete|General|Scope|Identification|Procedure|Identification|Completeness|Voucher|1|Add|OK|#|Specimen|0|Specimen|Edit|Delete|', + ); + + var input = findAll('form input, form textarea').mapBy('value').join('|'); + + assert.equal( + input, + 'Integrated Taxonomic Information System (ITIS)|modifications||Scope|Id Procedure|Id Completeness', + 'input values', + ); + + // Template block usage: + await render(hbs` {{#object/md-taxonomy/collection profilePath="foobar" model=(hash)}} template block text {{/object/md-taxonomy/collection}} `); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|No|Taxonomic|System|found.|Add|Taxonomic|System|Classification|No|Classification|found.|No|Observer|found.|Add|Observer|General|Scope|Identification|Procedure|Identification|Completeness|No|Voucher|found.|Add|Voucher|', - 'block'); - }); -}); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|No|Taxonomic|System|found.|Add|Taxonomic|System|Classification|No|Classification|found.|No|Observer|found.|Add|Observer|General|Scope|Identification|Procedure|Identification|Completeness|No|Voucher|found.|Add|Voucher|', + 'block', + ); + }); + }, +); diff --git a/tests/integration/pods/components/object/md-taxonomy/collection/system/component-test.js b/tests/integration/pods/components/object/md-taxonomy/collection/system/component-test.js index a86b312a2..4a74380f2 100644 --- a/tests/integration/pods/components/object/md-taxonomy/collection/system/component-test.js +++ b/tests/integration/pods/components/object/md-taxonomy/collection/system/component-test.js @@ -4,32 +4,45 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import createTaxonomy from 'mdeditor/tests/helpers/create-taxonomy'; -module('Integration | Component | object/md taxonomy/collection/system', function(hooks) { - setupRenderingTest(hooks); - - test('it renders', async function(assert) { - // Set any properties with this.set('myProperty', 'value'); - // Handle any actions with this.on('myAction', function(val) { ... }); - this.model = createTaxonomy()[0].taxonomicSystem[0]; - - await render(hbs`{{object/md-taxonomy/collection/system model=model profilePath="foobar"}}`); - - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|Modifications|Basic|Information|Title|No|Alternate|Title|found.|Add|Alternate|Title|Dates|1|Add|Date|#|Date|Date|Type|Description|0|transmitted|?|×|Delete|Edition|Presentation|Form|×|webService|?|×|webSite|?|No|Responsible|Party|found.|Add|Responsible|Party|Online|Resource|1|Add|OK|#|Name|Uri|0|ITIS|website|https://www.itis.gov|Edit|Delete|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|Series|Name|Issue|Page|Other|Details|1|Add|0|Delete|Graphic|1|Add|OK|0|itis_logo.jpg:|Edit|Delete|'); - - var input = findAll('form input, form textarea').mapBy('value').join('|'); - - assert.equal(input, "modifications|Integrated Taxonomic Information System (ITIS)|2019-02-26|Taxa imported from ITIS||||||Retrieved from the Integrated Taxonomic Information System on-line database, https://www.itis.gov.", 'input values'); - - // Template block usage: - await render(hbs` +module( + 'Integration | Component | object/md taxonomy/collection/system', + function (hooks) { + setupRenderingTest(hooks); + + test('it renders', async function (assert) { + // Set any properties with this.set('myProperty', 'value'); + // Handle any actions with this.on('myAction', function(val) { ... }); + this.model = createTaxonomy()[0].taxonomicSystem[0]; + + await render( + hbs`{{object/md-taxonomy/collection/system model=model profilePath="foobar"}}`, + ); + + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Modifications|Basic|Information|Title|No|Alternate|Title|found.|Add|Alternate|Title|Dates|1|Add|Date|#|Date|Date|Type|Description|0|transmitted|?|×|Delete|Edition|Presentation|Form|×|webService|?|×|webSite|?|No|Responsible|Party|found.|Add|Responsible|Party|Online|Resource|1|Add|OK|#|Name|Uri|0|ITIS|website|https://www.itis.gov|Edit|Delete|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|Series|Name|Issue|Page|Other|Details|1|Add|0|Delete|Graphic|1|Add|OK|0|itis_logo.jpg:|Edit|Delete|', + ); + + var input = findAll('form input, form textarea').mapBy('value').join('|'); + + assert.equal( + input, + 'modifications|Integrated Taxonomic Information System (ITIS)|2019-02-26|Taxa imported from ITIS||||||Retrieved from the Integrated Taxonomic Information System on-line database, https://www.itis.gov.', + 'input values', + ); + + // Template block usage: + await render(hbs` {{#object/md-taxonomy/collection/system model=(hash) profilePath="foobar"}} template block text {{/object/md-taxonomy/collection/system}} `); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|Modifications|Basic|Information|Title|No|Alternate|Title|found.|Add|Alternate|Title|No|Date|found.|Add|Date|Edition|Presentation|Form|No|Responsible|Party|found.|Add|Responsible|Party|No|Online|Resource|found.|Add|Online|Resource|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|Series|Name|Issue|Page|No|Other|Details|found.|Add|Other|Detail|No|Graphic|found.|Add|Graphic|', - 'block'); - }); -}); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Modifications|Basic|Information|Title|No|Alternate|Title|found.|Add|Alternate|Title|No|Date|found.|Add|Date|Edition|Presentation|Form|No|Responsible|Party|found.|Add|Responsible|Party|No|Online|Resource|found.|Add|Online|Resource|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|No|Identifier|found.|Add|Identifier|Series|Name|Issue|Page|No|Other|Details|found.|Add|Other|Detail|No|Graphic|found.|Add|Graphic|', + 'block', + ); + }); + }, +); diff --git a/tests/integration/pods/components/object/md-taxonomy/collection/system/preview/component-test.js b/tests/integration/pods/components/object/md-taxonomy/collection/system/preview/component-test.js index 0e52ce8bb..0c5876276 100644 --- a/tests/integration/pods/components/object/md-taxonomy/collection/system/preview/component-test.js +++ b/tests/integration/pods/components/object/md-taxonomy/collection/system/preview/component-test.js @@ -4,27 +4,39 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import createTaxonomy from 'mdeditor/tests/helpers/create-taxonomy'; -module('Integration | Component | object/md taxonomy/collection/system/preview', function(hooks) { - setupRenderingTest(hooks); +module( + 'Integration | Component | object/md taxonomy/collection/system/preview', + function (hooks) { + setupRenderingTest(hooks); - test('it renders', async function(assert) { - // Set any properties with this.set('myProperty', 'value'); - // Handle any actions with this.on('myAction', function(val) { ... }); - this.model = createTaxonomy()[0].taxonomicSystem[0]; + test('it renders', async function (assert) { + // Set any properties with this.set('myProperty', 'value'); + // Handle any actions with this.on('myAction', function(val) { ... }); + this.model = createTaxonomy()[0].taxonomicSystem[0]; - await render(hbs`{{object/md-taxonomy/collection/system/preview model=model profilePath="foobar"}}`); + await render( + hbs`{{object/md-taxonomy/collection/system/preview model=model profilePath="foobar"}}`, + ); - var input = findAll('input, textarea').mapBy('value').join('|'); + var input = findAll('input, textarea').mapBy('value').join('|'); - assert.equal(input, "Integrated Taxonomic Information System (ITIS)|modifications", 'input values'); + assert.equal( + input, + 'Integrated Taxonomic Information System (ITIS)|modifications', + 'input values', + ); - // Template block usage: - await render(hbs` + // Template block usage: + await render(hbs` {{#object/md-taxonomy/collection/system/preview model=(hash) profilePath="foobar"}} template block text {{/object/md-taxonomy/collection/system/preview}} `); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), "|"); - }); -}); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|', + ); + }); + }, +); diff --git a/tests/integration/pods/components/object/md-taxonomy/collection/voucher/component-test.js b/tests/integration/pods/components/object/md-taxonomy/collection/voucher/component-test.js index e24360cc9..e4210ccc0 100644 --- a/tests/integration/pods/components/object/md-taxonomy/collection/voucher/component-test.js +++ b/tests/integration/pods/components/object/md-taxonomy/collection/voucher/component-test.js @@ -4,31 +4,41 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import createTaxonomy from 'mdeditor/tests/helpers/create-taxonomy'; -module('Integration | Component | object/md taxonomy/collection/voucher', function(hooks) { - setupRenderingTest(hooks); +module( + 'Integration | Component | object/md taxonomy/collection/voucher', + function (hooks) { + setupRenderingTest(hooks); - test('it renders', async function(assert) { - // Set any properties with this.set('myProperty', 'value'); - // Handle any actions with this.on('myAction', function(val) { ... }); - this.model = createTaxonomy()[0].voucher[0]; + test('it renders', async function (assert) { + // Set any properties with this.set('myProperty', 'value'); + // Handle any actions with this.on('myAction', function(val) { ... }); + this.model = createTaxonomy()[0].voucher[0]; - await render(hbs`{{object/md-taxonomy/collection/voucher profilePath="foobar" model=model}}`); + await render( + hbs`{{object/md-taxonomy/collection/voucher profilePath="foobar" model=model}}`, + ); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), '|Specimen|Repository|Role|custodian|?|×|Contacts|'); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Specimen|Repository|Role|custodian|?|×|Contacts|', + ); - var input = findAll('input, textarea').mapBy('value').join('|'); + var input = findAll('input, textarea').mapBy('value').join('|'); - assert.equal(input, "Specimen|", 'input values'); + assert.equal(input, 'Specimen|', 'input values'); - // Template block usage: - await render(hbs` + // Template block usage: + await render(hbs` {{#object/md-taxonomy/collection/voucher profilePath="foobar" model=(hash repository=(hash))}} template block text {{/object/md-taxonomy/collection/voucher}} `); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - "|Specimen|Repository|Role|Select|or|enter|a|role|Contacts|", - 'block'); - }); -}); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Specimen|Repository|Role|Select|or|enter|a|role|Contacts|', + 'block', + ); + }); + }, +); diff --git a/tests/integration/pods/components/object/md-taxonomy/component-test.js b/tests/integration/pods/components/object/md-taxonomy/component-test.js index 2fe1ba00a..f3026f337 100644 --- a/tests/integration/pods/components/object/md-taxonomy/component-test.js +++ b/tests/integration/pods/components/object/md-taxonomy/component-test.js @@ -4,23 +4,31 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import createTaxonomy from 'mdeditor/tests/helpers/create-taxonomy'; -module('Integration | Component | object/md taxonomy', function(hooks) { +module('Integration | Component | object/md taxonomy', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); this.model = createTaxonomy()[0]; - await render(hbs`{{object/md-taxonomy model=model index=0 profilePath="foobar"}}`); + await render( + hbs`{{object/md-taxonomy model=model index=0 profilePath="foobar"}}`, + ); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|Collection|#0:|Integrated|Taxonomic|Information|System|(ITIS)|Edit|Collection|Delete|Collection|Kingdom|Fungi|(555705)|Kingdom|Kingdom|Animalia|(202423)|'); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Collection|#0:|Integrated|Taxonomic|Information|System|(ITIS)|Edit|Collection|Delete|Collection|Kingdom|Fungi|(555705)|Kingdom|Kingdom|Animalia|(202423)|', + ); await click('li .icon'); - assert.equal(find('li').textContent.replace(/[\s\n]+/g, '|').trim(), - '|Kingdom|Fungi|(555705)|Kingdom|Subkingdom|Dikarya|(936287)|Division|Basidiomycota|(623881)|'); + assert.equal( + find('li') + .textContent.replace(/[\s\n]+/g, '|') + .trim(), + '|Kingdom|Fungi|(555705)|Kingdom|Subkingdom|Dikarya|(936287)|Division|Basidiomycota|(623881)|', + ); // Template block usage: await render(hbs` @@ -29,8 +37,10 @@ module('Integration | Component | object/md taxonomy', function(hooks) { {{/object/md-taxonomy}} `); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), '|Collection|#undefined|Edit|Collection|Delete|Collection|No|Classification|found.|', - 'block'); + 'block', + ); }); }); diff --git a/tests/integration/pods/components/object/md-time-period/component-test.js b/tests/integration/pods/components/object/md-time-period/component-test.js index 7372c2c58..927bef728 100644 --- a/tests/integration/pods/components/object/md-time-period/component-test.js +++ b/tests/integration/pods/components/object/md-time-period/component-test.js @@ -4,82 +4,92 @@ import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; import moment from 'moment'; -module('Integration | Component | object/md time period', function(hooks) { +module('Integration | Component | object/md time period', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); - var date = new Date("2016-10-14T13:10:15-0800"); + var date = new Date('2016-10-14T13:10:15-0800'); - this.model = [{ - "id": "id", - "description": "description", - "identifier": { - "identifier": "identifier", - "namespace": "namespace" + this.model = [ + { + id: 'id', + description: 'description', + identifier: { + identifier: 'identifier', + namespace: 'namespace', + }, + periodName: ['periodName0', 'periodName1'], + startDateTime: date, + endDateTime: '2016-12-31', + timeInterval: { + interval: 9, + units: 'year', }, - "periodName": [ - "periodName0", - "periodName1" - ], - "startDateTime": date, - "endDateTime": "2016-12-31", - "timeInterval": { - "interval": 9, - "units": "year" + duration: { + years: 1, + months: 1, + days: 1, + hours: 1, + minutes: 1, + seconds: 1, }, - "duration": { - "years": 1, - "months": 1, - "days": 1, - "hours": 1, - "minutes": 1, - "seconds": 1 - } }, { - "id": "id", - "description": "description", - "identifier": { - "identifier": "identifier", - "namespace": "namespace" + id: 'id', + description: 'description', + identifier: { + identifier: 'identifier', + namespace: 'namespace', }, - "periodName": [ - "periodName0", - "periodName1" - ], - "startGeologicAge": { - "ageTimeScale": "ageTimeScale", - "ageEstimate": "ageEstimate" + periodName: ['periodName0', 'periodName1'], + startGeologicAge: { + ageTimeScale: 'ageTimeScale', + ageEstimate: 'ageEstimate', }, - "endGeologicAge": { - "ageTimeScale": "ageTimeScale", - "ageEstimate": "ageEstimate" - } - } + endGeologicAge: { + ageTimeScale: 'ageTimeScale', + ageEstimate: 'ageEstimate', + }, + }, ]; - await render(hbs`{{object/md-time-period profilePath="foobar" model=model.firstObject}}`); - - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|Time|Period|Dates|Start|Date|End|Date|Pick|Fiscal|Year|Pick|a|Fiscal|Year|Identifier|Description|Time|Period|Names|2|Add|Time|Period|Name|0|Delete|1|Delete|Interval|Interval|Amount|Time|Unit|year|×|Duration|Years|Months|Days|Hours|Minutes|Seconds|'); + await render( + hbs`{{object/md-time-period profilePath="foobar" model=model.firstObject}}`, + ); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Time|Period|Dates|Start|Date|End|Date|Pick|Fiscal|Year|Pick|a|Fiscal|Year|Identifier|Description|Time|Period|Names|2|Add|Time|Period|Name|0|Delete|1|Delete|Interval|Interval|Amount|Time|Unit|year|×|Duration|Years|Months|Days|Hours|Minutes|Seconds|', + ); var input = findAll('form input, form textarea').mapBy('value').join('|'); - assert.equal(input, moment(date).format('YYYY-MM-DD HH:mm:ss') + '|2016-12-31 00:00:00|identifier|description|periodName0|periodName1|9|1|1|1|1|1|1', 'input values'); + assert.equal( + input, + moment(date).format('YYYY-MM-DD HH:mm:ss') + + '|2016-12-31 00:00:00|identifier|description|periodName0|periodName1|9|1|1|1|1|1|1', + 'input values', + ); - await render(hbs`{{object/md-time-period profilePath="foobar" model=model.lastObject}}`); + await render( + hbs`{{object/md-time-period profilePath="foobar" model=model.lastObject}}`, + ); var input1 = findAll('form input, form textarea').mapBy('value').join('|'); - assert.equal(input1, "||identifier|description|periodName0|periodName1|||||||", 'geologic input values'); + assert.equal( + input1, + '||identifier|description|periodName0|periodName1|||||||', + 'geologic input values', + ); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - "|Time|Period|Dates|Start|Date|End|Date|Pick|Fiscal|Year|Pick|a|Fiscal|Year|Identifier|Description|Time|Period|Names|2|Add|Time|Period|Name|0|Delete|1|Delete|Interval|Interval|Amount|Time|Unit|Choose|unit|of|time|Duration|Years|Months|Days|Hours|Minutes|Seconds|", - 'geologic age'); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Time|Period|Dates|Start|Date|End|Date|Pick|Fiscal|Year|Pick|a|Fiscal|Year|Identifier|Description|Time|Period|Names|2|Add|Time|Period|Name|0|Delete|1|Delete|Interval|Interval|Amount|Time|Unit|Choose|unit|of|time|Duration|Years|Months|Days|Hours|Minutes|Seconds|', + 'geologic age', + ); // Template block usage: await render(hbs` {{#object/md-time-period profilePath="foobar" model=(hash)}} @@ -87,8 +97,10 @@ module('Integration | Component | object/md time period', function(hooks) { {{/object/md-time-period}} `); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), '|Time|Period|Dates|Start|Date|End|Date|Pick|Fiscal|Year|Pick|a|Fiscal|Year|Identifier|Description|No|Time|Period|Name|found.|Add|Time|Period|Name|Interval|Interval|Amount|Time|Unit|Choose|unit|of|time|Duration|Years|Months|Days|Hours|Minutes|Seconds|template|block|text|', - 'block'); + 'block', + ); }); }); diff --git a/tests/integration/pods/components/object/md-transfer/component-test.js b/tests/integration/pods/components/object/md-transfer/component-test.js index a4ce667e4..475f7e05c 100644 --- a/tests/integration/pods/components/object/md-transfer/component-test.js +++ b/tests/integration/pods/components/object/md-transfer/component-test.js @@ -3,58 +3,66 @@ import { module, test } from 'qunit'; import { setupRenderingTest } from 'ember-qunit'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | object/md transfer', function(hooks) { +module('Integration | Component | object/md transfer', function (hooks) { setupRenderingTest(hooks); - test('it renders', async function(assert) { - + test('it renders', async function (assert) { // Set any properties with this.set('myProperty', 'value'); // Handle any actions with this.on('myAction', function(val) { ... }); this.model = { - "unitsOfDistribution": "unitsOfDistribution", - "transferSize": 9.9, - "onlineOption": [{ - "uri": "http://adiwg.org" + unitsOfDistribution: 'unitsOfDistribution', + transferSize: 9.9, + onlineOption: [ + { + uri: 'http://adiwg.org', }, { - "uri": "http://adiwg.org/" - } + uri: 'http://adiwg.org/', + }, ], - "offlineOption": [{ - "mediumSpecification": { - "title": "title0" - } + offlineOption: [ + { + mediumSpecification: { + title: 'title0', + }, }, { - "mediumSpecification": { - "title": "title1" - } - } + mediumSpecification: { + title: 'title1', + }, + }, ], - "transferFrequency": { - "months": 9 + transferFrequency: { + months: 9, }, - "distributionFormat": [{ - "formatSpecification": { - "title": "title0" - } + distributionFormat: [ + { + formatSpecification: { + title: 'title0', + }, }, { - "formatSpecification": { - "title": "title1" - } - } - ] + formatSpecification: { + title: 'title1', + }, + }, + ], }; await render(hbs`{{object/md-transfer profilePath="foobar" model=model}}`); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|Transfer|Size|(MB)|Distribution|units|Online|Option|2|Add|OK|#|Name|Uri|0|Not|Defined|http://adiwg.org|Edit|Delete|1|Not|Defined|http://adiwg.org/|Edit|Delete|Offline|Option|2|Add|OK|#|Title|0|title0|Edit|Delete|1|title1|Edit|Delete|Distribution|Formats|2|Add|#|Format|Name|Version|Compression|Method|URL|0|Delete|1|Delete|Transfer|Frequency|Years|Months|Days|Hours|Minutes|Seconds|'); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|Transfer|Size|(MB)|Distribution|units|Online|Option|2|Add|OK|#|Name|Uri|0|Not|Defined|http://adiwg.org|Edit|Delete|1|Not|Defined|http://adiwg.org/|Edit|Delete|Offline|Option|2|Add|OK|#|Title|0|title0|Edit|Delete|1|title1|Edit|Delete|Distribution|Formats|2|Add|#|Format|Name|Version|Compression|Method|URL|0|Delete|1|Delete|Transfer|Frequency|Years|Months|Days|Hours|Minutes|Seconds|', + ); var input = findAll('form input').mapBy('value').join('|'); - assert.equal(input, "9.9|unitsOfDistribution|title0||||title1|||||9||||", 'input values'); + assert.equal( + input, + '9.9|unitsOfDistribution|title0||||title1|||||9||||', + 'input values', + ); // Template block usage: await render(hbs` @@ -63,8 +71,10 @@ module('Integration | Component | object/md transfer', function(hooks) { {{/object/md-transfer}} `); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), '|Transfer|Size|(MB)|Distribution|units|No|Online|Option|found.|Add|Online|Option|No|Offline|Option|found.|Add|Offline|Option|No|Distribution|Format|found.|Add|Distribution|Format|Transfer|Frequency|Years|Months|Days|Hours|Minutes|Seconds|template|block|text|', - 'block'); + 'block', + ); }); }); diff --git a/tests/integration/pods/components/object/md-transfer/preview/component-test.js b/tests/integration/pods/components/object/md-transfer/preview/component-test.js index 1c8b5dfde..89d37f688 100644 --- a/tests/integration/pods/components/object/md-transfer/preview/component-test.js +++ b/tests/integration/pods/components/object/md-transfer/preview/component-test.js @@ -3,61 +3,71 @@ import { setupRenderingTest } from 'ember-qunit'; import { render } from '@ember/test-helpers'; import hbs from 'htmlbars-inline-precompile'; -module('Integration | Component | object/md-transfer/preview', function (hooks) { - setupRenderingTest(hooks); +module( + 'Integration | Component | object/md-transfer/preview', + function (hooks) { + setupRenderingTest(hooks); - test('it renders', async function (assert) { - // Set any properties with this.set('myProperty', 'value'); - this.model = { - "unitsOfDistribution": "unitsOfDistribution", - "transferSize": 9.9, - "onlineOption": [{ - "uri": "http://adiwg.org" + test('it renders', async function (assert) { + // Set any properties with this.set('myProperty', 'value'); + this.model = { + unitsOfDistribution: 'unitsOfDistribution', + transferSize: 9.9, + onlineOption: [ + { + uri: 'http://adiwg.org', + }, + { + uri: 'http://adiwg.org/', + }, + ], + offlineOption: [ + { + mediumSpecification: { + title: 'title0', + }, + }, + { + mediumSpecification: { + title: 'title1', + }, + }, + ], + transferFrequency: { + months: 9, }, - { - "uri": "http://adiwg.org/" - } - ], - "offlineOption": [{ - "mediumSpecification": { - "title": "title0" - } - }, - { - "mediumSpecification": { - "title": "title1" - } - } - ], - "transferFrequency": { - "months": 9 - }, - "distributionFormat": [{ - "formatSpecification": { - "title": "title0" - } - }, - { - "formatSpecification": { - "title": "title1" - } - } - ] - }; + distributionFormat: [ + { + formatSpecification: { + title: 'title0', + }, + }, + { + formatSpecification: { + title: 'title1', + }, + }, + ], + }; - await render(hbs `{{object/md-transfer/preview item=model}}`); + await render(hbs`{{object/md-transfer/preview item=model}}`); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|9.9|yes(2)|yes(2)|yes(2)|'); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|9.9|yes(2)|yes(2)|yes(2)|', + ); - // Template block usage: - await render(hbs ` + // Template block usage: + await render(hbs` {{#object/md-transfer/preview isTable=false item=model as |t|}} transferSize: {{t.transferSize}} {{/object/md-transfer/preview}} `); - assert.equal(this.element.textContent.replace(/[\s\n]+/g, '|').trim(), - '|transferSize:|9.9|'); - }); -}); + assert.equal( + this.element.textContent.replace(/[\s\n]+/g, '|').trim(), + '|transferSize:|9.9|', + ); + }); + }, +); diff --git a/tests/unit/adapters/application-test.js b/tests/unit/adapters/application-test.js index bf9ab5b34..e24f08596 100644 --- a/tests/unit/adapters/application-test.js +++ b/tests/unit/adapters/application-test.js @@ -1,21 +1,21 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Adapter | application', function(hooks) { +module('Unit | Adapter | application', function (hooks) { setupTest(hooks); // Replace this with your real tests. - test('it exists', function(assert) { + test('it exists', function (assert) { var adapter = this.owner.lookup('adapter:application'); assert.ok(adapter); }); - test('it has a importData method', function(assert) { + test('it has a importData method', function (assert) { var adapter = this.owner.lookup('adapter:application'); assert.ok(typeof adapter.importData === 'function'); }); - test('it has a exportData method', function(assert) { + test('it has a exportData method', function (assert) { var adapter = this.owner.lookup('adapter:application'); assert.ok(typeof adapter.exportData === 'function'); }); diff --git a/tests/unit/helpers/bbox-to-poly-test.js b/tests/unit/helpers/bbox-to-poly-test.js index 2d26a45d5..27e659f28 100644 --- a/tests/unit/helpers/bbox-to-poly-test.js +++ b/tests/unit/helpers/bbox-to-poly-test.js @@ -1,14 +1,16 @@ import { bboxToPoly } from 'mdeditor/helpers/bbox-to-poly'; import { module, test } from 'qunit'; -module('Unit | Helper | bbox to poly', function() { - test('it works', function(assert) { - let result = bboxToPoly([{ - southLatitude: 1, - northLatitude: 2, - westLongitude: 3, - eastLongitude: 4 - }]); - assert.equal("[[1,3],[2,3],[2,4],[1,4]]", JSON.stringify(result)); +module('Unit | Helper | bbox to poly', function () { + test('it works', function (assert) { + let result = bboxToPoly([ + { + southLatitude: 1, + northLatitude: 2, + westLongitude: 3, + eastLongitude: 4, + }, + ]); + assert.equal('[[1,3],[2,3],[2,4],[1,4]]', JSON.stringify(result)); }); }); diff --git a/tests/unit/helpers/get-dash-test.js b/tests/unit/helpers/get-dash-test.js index 4db14587f..7077bb397 100644 --- a/tests/unit/helpers/get-dash-test.js +++ b/tests/unit/helpers/get-dash-test.js @@ -1,10 +1,9 @@ - import { getDash } from 'mdeditor/helpers/get-dash'; import { module, test } from 'qunit'; -module('Unit | Helper | get dash', function() { - test('it works', function(assert) { - let obj={foo:'bar'}; +module('Unit | Helper | get dash', function () { + test('it works', function (assert) { + let obj = { foo: 'bar' }; let result = getDash([obj, 'foo']); assert.equal(result, 'bar', 'value'); diff --git a/tests/unit/helpers/make-range-test.js b/tests/unit/helpers/make-range-test.js index fa2a5e07b..114d0c83e 100644 --- a/tests/unit/helpers/make-range-test.js +++ b/tests/unit/helpers/make-range-test.js @@ -1,12 +1,10 @@ - import { makeRange } from 'mdeditor/helpers/make-range'; import { module, test } from 'qunit'; -module('Unit | Helper | make range', function() { +module('Unit | Helper | make range', function () { // Replace this with your real tests. - test('it works', function(assert) { + test('it works', function (assert) { let result = makeRange([42]); assert.ok(result); }); }); - diff --git a/tests/unit/helpers/md-markdown-test.js b/tests/unit/helpers/md-markdown-test.js index 1eac5644d..cfa59e8c4 100644 --- a/tests/unit/helpers/md-markdown-test.js +++ b/tests/unit/helpers/md-markdown-test.js @@ -1,10 +1,9 @@ - import { mdMarkdown } from 'mdeditor/helpers/md-markdown'; import { module, test } from 'qunit'; -module('Unit | Helper | md markdown', function() { +module('Unit | Helper | md markdown', function () { // Replace this with your real tests. - test('it works', function(assert) { + test('it works', function (assert) { let result = mdMarkdown('# Test'); assert.equal(result.string.trim(), '

      #

      '); }); diff --git a/tests/unit/helpers/mod-test.js b/tests/unit/helpers/mod-test.js index 4033d5207..f7ad7d9fd 100644 --- a/tests/unit/helpers/mod-test.js +++ b/tests/unit/helpers/mod-test.js @@ -1,12 +1,10 @@ - import { mod } from 'mdeditor/helpers/mod'; import { module, test } from 'qunit'; -module('Unit | Helper | mod', function() { +module('Unit | Helper | mod', function () { // Replace this with your real tests. - test('it works', function(assert) { + test('it works', function (assert) { let result = mod([42]); assert.ok(result); }); }); - diff --git a/tests/unit/initializers/leaflet-test.js b/tests/unit/initializers/leaflet-test.js index a6c7cfcc2..d5c24dacf 100644 --- a/tests/unit/initializers/leaflet-test.js +++ b/tests/unit/initializers/leaflet-test.js @@ -5,16 +5,16 @@ import { module, test } from 'qunit'; let application; -module('Unit | Initializer | leaflet', function(hooks) { - hooks.beforeEach(function() { - run(function() { +module('Unit | Initializer | leaflet', function (hooks) { + hooks.beforeEach(function () { + run(function () { application = Application.create(); application.deferReadiness(); }); }); // Replace this with your real tests. - test('it works', function(assert) { + test('it works', function (assert) { LeafletInitializer.initialize(application); // you would normally confirm the results of the initializer here diff --git a/tests/unit/initializers/local-storage-export-test.js b/tests/unit/initializers/local-storage-export-test.js index 6446c33e4..24c59db4f 100644 --- a/tests/unit/initializers/local-storage-export-test.js +++ b/tests/unit/initializers/local-storage-export-test.js @@ -4,20 +4,20 @@ import { initialize } from 'mdeditor/initializers/local-storage-export'; import { module, test } from 'qunit'; import destroyApp from '../../helpers/destroy-app'; -module('Unit | Initializer | local storage export', function(hooks) { - hooks.beforeEach(function() { +module('Unit | Initializer | local storage export', function (hooks) { + hooks.beforeEach(function () { run(() => { this.application = Application.create(); this.application.deferReadiness(); }); }); - hooks.afterEach(function() { + hooks.afterEach(function () { destroyApp(this.application); }); // Replace this with your real tests. - test('it works', function(assert) { + test('it works', function (assert) { initialize(this.application); // you would normally confirm the results of the initializer here diff --git a/tests/unit/instance-initializers/profile-test.js b/tests/unit/instance-initializers/profile-test.js index 28dea9ee9..0273b095a 100644 --- a/tests/unit/instance-initializers/profile-test.js +++ b/tests/unit/instance-initializers/profile-test.js @@ -4,21 +4,21 @@ import { initialize } from 'mdeditor/instance-initializers/profile'; import { module, test } from 'qunit'; import destroyApp from '../../helpers/destroy-app'; -module('Unit | Instance Initializer | profile', function(hooks) { - hooks.beforeEach(function() { +module('Unit | Instance Initializer | profile', function (hooks) { + hooks.beforeEach(function () { run(() => { this.application = Application.create(); this.appInstance = this.application.buildInstance(); }); }); - hooks.afterEach(function() { + hooks.afterEach(function () { run(this.appInstance, 'destroy'); destroyApp(this.application); }); // Replace this with your real tests. - test('it works', function(assert) { + test('it works', function (assert) { initialize(this.appInstance); // you would normally confirm the results of the initializer here diff --git a/tests/unit/instance-initializers/route-publish-test.js b/tests/unit/instance-initializers/route-publish-test.js index 7cd5809e9..1f7baf0be 100644 --- a/tests/unit/instance-initializers/route-publish-test.js +++ b/tests/unit/instance-initializers/route-publish-test.js @@ -5,23 +5,26 @@ import { module, test } from 'qunit'; import destroyApp from '../../helpers/destroy-app'; import Service from '@ember/service'; -module('Unit | Instance Initializer | route publish', function(hooks) { - hooks.beforeEach(function() { +module('Unit | Instance Initializer | route publish', function (hooks) { + hooks.beforeEach(function () { run(() => { this.application = Application.create(); this.appInstance = this.application.buildInstance(); }); }); - hooks.afterEach(function() { + hooks.afterEach(function () { run(this.appInstance, 'destroy'); destroyApp(this.application); }); - test('it works', function(assert) { - let a =[{route:'test'}]; + test('it works', function (assert) { + let a = [{ route: 'test' }]; - this.appInstance.register('service:publish', Service.extend({ catalogs: a })); + this.appInstance.register( + 'service:publish', + Service.extend({ catalogs: a }), + ); initialize(this.appInstance); assert.ok(true); diff --git a/tests/unit/instance-initializers/settings-sciencebase-test.js b/tests/unit/instance-initializers/settings-sciencebase-test.js index 1d912cd1b..954390d0b 100644 --- a/tests/unit/instance-initializers/settings-sciencebase-test.js +++ b/tests/unit/instance-initializers/settings-sciencebase-test.js @@ -5,15 +5,15 @@ import { module, test } from 'qunit'; import destroyApp from '../../helpers/destroy-app'; import Service from '@ember/service'; -module('Unit | Instance Initializer | settings sciencebase', function(hooks) { - hooks.beforeEach(function() { +module('Unit | Instance Initializer | settings sciencebase', function (hooks) { + hooks.beforeEach(function () { run(() => { this.application = Application.create(); this.appInstance = this.application.buildInstance(); }); }); - hooks.afterEach(function() { + hooks.afterEach(function () { run(this.appInstance, 'destroy'); destroyApp(this.application); }); @@ -21,11 +21,18 @@ module('Unit | Instance Initializer | settings sciencebase', function(hooks) { let a = []; // Replace this with your real tests. - test('it works', function(assert) { - this.appInstance.register('service:publish', Service.extend({ catalogs: a })); + test('it works', function (assert) { + this.appInstance.register( + 'service:publish', + Service.extend({ catalogs: a }), + ); initialize(this.appInstance); // you would normally confirm the results of the initializer here - assert.ok(this.appInstance.lookup('service:publish').catalogs.findBy('route','sciencebase')); + assert.ok( + this.appInstance + .lookup('service:publish') + .catalogs.findBy('route', 'sciencebase'), + ); }); }); diff --git a/tests/unit/instance-initializers/settings-test.js b/tests/unit/instance-initializers/settings-test.js index df386159b..0daf7f65b 100644 --- a/tests/unit/instance-initializers/settings-test.js +++ b/tests/unit/instance-initializers/settings-test.js @@ -4,21 +4,21 @@ import { initialize } from 'mdeditor/instance-initializers/settings'; import { module, test } from 'qunit'; import destroyApp from '../../helpers/destroy-app'; -module('Unit | Instance Initializer | settings', function(hooks) { - hooks.beforeEach(function() { +module('Unit | Instance Initializer | settings', function (hooks) { + hooks.beforeEach(function () { run(() => { this.application = Application.create(); this.appInstance = this.application.buildInstance(); }); }); - hooks.afterEach(function() { + hooks.afterEach(function () { run(this.appInstance, 'destroy'); destroyApp(this.application); }); // Replace this with your real tests. - test('it works', function(assert) { + test('it works', function (assert) { initialize(this.appInstance); // you would normally confirm the results of the initializer here diff --git a/tests/unit/mixins/cancel-test.js b/tests/unit/mixins/cancel-test.js index ee733fbc1..8e0e39840 100644 --- a/tests/unit/mixins/cancel-test.js +++ b/tests/unit/mixins/cancel-test.js @@ -2,7 +2,7 @@ import EmberObject from '@ember/object'; import CancelMixin from 'mdeditor/mixins/cancel'; import { module, test } from 'qunit'; -module('Unit | Mixin | cancel', function() { +module('Unit | Mixin | cancel', function () { // Replace this with your real tests. test('it works', function (assert) { let CancelObject = EmberObject.extend(CancelMixin); diff --git a/tests/unit/mixins/hash-poll-test.js b/tests/unit/mixins/hash-poll-test.js index 1cb7320a9..a39b04523 100644 --- a/tests/unit/mixins/hash-poll-test.js +++ b/tests/unit/mixins/hash-poll-test.js @@ -2,9 +2,9 @@ import EmberObject from '@ember/object'; import HashPollMixin from 'mdeditor/mixins/hash-poll'; import { module, test } from 'qunit'; -module('Unit | Mixin | hash poll', function() { +module('Unit | Mixin | hash poll', function () { // Replace this with your real tests. - test('it works', function(assert) { + test('it works', function (assert) { let HashPollObject = EmberObject.extend(HashPollMixin); let subject = HashPollObject.create(); assert.ok(subject); diff --git a/tests/unit/mixins/object-template-test.js b/tests/unit/mixins/object-template-test.js index f8c784557..1bf6ce1dd 100644 --- a/tests/unit/mixins/object-template-test.js +++ b/tests/unit/mixins/object-template-test.js @@ -2,9 +2,9 @@ import EmberObject from '@ember/object'; import ObjectTemplateMixin from 'mdeditor/mixins/object-template'; import { module, test } from 'qunit'; -module('Unit | Mixin | object template', function() { +module('Unit | Mixin | object template', function () { // Replace this with your real tests. - test('it works', function(assert) { + test('it works', function (assert) { let ObjectTemplateObject = EmberObject.extend(ObjectTemplateMixin); let subject = ObjectTemplateObject.create(); assert.ok(subject); diff --git a/tests/unit/mixins/scroll-to-test.js b/tests/unit/mixins/scroll-to-test.js index 4cf6dba7d..39caf7555 100644 --- a/tests/unit/mixins/scroll-to-test.js +++ b/tests/unit/mixins/scroll-to-test.js @@ -2,9 +2,9 @@ import EmberObject from '@ember/object'; import ScrollToMixin from 'mdeditor/mixins/scroll-to'; import { module, test } from 'qunit'; -module('Unit | Mixin | scroll to', function() { +module('Unit | Mixin | scroll to', function () { // Replace this with your real tests. - test('it works', function(assert) { + test('it works', function (assert) { let ScrollToObject = EmberObject.extend(ScrollToMixin); let subject = ScrollToObject.create(); assert.ok(subject); diff --git a/tests/unit/models/base-test.js b/tests/unit/models/base-test.js index f79b27c93..61edfedb0 100644 --- a/tests/unit/models/base-test.js +++ b/tests/unit/models/base-test.js @@ -3,10 +3,10 @@ import { setupTest } from 'ember-qunit'; import { run } from '@ember/runloop'; -module('Unit | Model | base', function(hooks) { +module('Unit | Model | base', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let model = run(() => this.owner.lookup('service:store').modelFor('base')); // let store = this.store(); assert.equal(model.modelName, 'base'); diff --git a/tests/unit/models/contact-test.js b/tests/unit/models/contact-test.js index 495e84cb7..64379dba4 100644 --- a/tests/unit/models/contact-test.js +++ b/tests/unit/models/contact-test.js @@ -3,17 +3,21 @@ import { setupTest } from 'ember-qunit'; import { run } from '@ember/runloop'; -module('Unit | Model | contact', function(hooks) { +module('Unit | Model | contact', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { - let model = run(() => this.owner.lookup('service:store').createRecord('contact')); + test('it exists', function (assert) { + let model = run(() => + this.owner.lookup('service:store').createRecord('contact'), + ); // var store = this.store(); assert.ok(!!model); }); - test('should correctly compute title', function(assert) { - const me = run(() => this.owner.lookup('service:store').createRecord('contact')); + test('should correctly compute title', function (assert) { + const me = run(() => + this.owner.lookup('service:store').createRecord('contact'), + ); assert.expect(3); me.set('json.name', 'bar'); @@ -26,8 +30,10 @@ module('Unit | Model | contact', function(hooks) { assert.equal(me.get('title'), null); }); - test('should correctly compute icon', function(assert) { - const me = run(() => this.owner.lookup('service:store').createRecord('contact')); + test('should correctly compute icon', function (assert) { + const me = run(() => + this.owner.lookup('service:store').createRecord('contact'), + ); assert.expect(2); me.set('json.isOrganization', true); diff --git a/tests/unit/models/dictionary-test.js b/tests/unit/models/dictionary-test.js index c3f72e6df..ed2ea2433 100644 --- a/tests/unit/models/dictionary-test.js +++ b/tests/unit/models/dictionary-test.js @@ -3,17 +3,21 @@ import { setupTest } from 'ember-qunit'; import { run } from '@ember/runloop'; -module('Unit | Model | dictionary', function(hooks) { +module('Unit | Model | dictionary', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { - var model = run(() => this.owner.lookup('service:store').createRecord('dictionary')); + test('it exists', function (assert) { + var model = run(() => + this.owner.lookup('service:store').createRecord('dictionary'), + ); // var store = this.store(); assert.ok(!!model); }); - test('should correctly compute title', function(assert) { - const me = run(() => this.owner.lookup('service:store').createRecord('dictionary')); + test('should correctly compute title', function (assert) { + const me = run(() => + this.owner.lookup('service:store').createRecord('dictionary'), + ); assert.expect(1); me.set('json.dataDictionary.citation.title', 'bar'); diff --git a/tests/unit/models/record-test.js b/tests/unit/models/record-test.js index 9f02de941..cd1ba0d05 100644 --- a/tests/unit/models/record-test.js +++ b/tests/unit/models/record-test.js @@ -3,30 +3,38 @@ import { setupTest } from 'ember-qunit'; import { run } from '@ember/runloop'; -module('Unit | Model | record', function(hooks) { +module('Unit | Model | record', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { - var model = run(() => this.owner.lookup('service:store').createRecord('record')); + test('it exists', function (assert) { + var model = run(() => + this.owner.lookup('service:store').createRecord('record'), + ); // var store = this.store(); assert.ok(!!model); }); - test('should correctly compute title', function(assert) { - const me = run(() => this.owner.lookup('service:store').createRecord('record')); + test('should correctly compute title', function (assert) { + const me = run(() => + this.owner.lookup('service:store').createRecord('record'), + ); assert.expect(1); me.set('json.metadata.resourceInfo.citation.title', 'foo'); assert.equal(me.get('title'), 'foo'); }); - test('should correctly compute icon', function(assert) { - const me = run(() => this.owner.lookup('service:store').createRecord('record')); - const list = this.owner - .lookup('service:icon'); + test('should correctly compute icon', function (assert) { + const me = run(() => + this.owner.lookup('service:store').createRecord('record'), + ); + const list = this.owner.lookup('service:icon'); assert.expect(1); - me.set('json.metadata.resourceInfo.resourceType.firstObject.type', 'project'); + me.set( + 'json.metadata.resourceInfo.resourceType.firstObject.type', + 'project', + ); assert.equal(me.get('icon'), list.get('project')); }); }); diff --git a/tests/unit/models/setting-test.js b/tests/unit/models/setting-test.js index 7af8b692e..0d97fed67 100644 --- a/tests/unit/models/setting-test.js +++ b/tests/unit/models/setting-test.js @@ -3,11 +3,13 @@ import { setupTest } from 'ember-qunit'; import { run } from '@ember/runloop'; -module('Unit | Model | setting', function(hooks) { +module('Unit | Model | setting', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { - let model = run(() => this.owner.lookup('service:store').createRecord('setting')); + test('it exists', function (assert) { + let model = run(() => + this.owner.lookup('service:store').createRecord('setting'), + ); // let store = this.store(); assert.ok(!!model); }); diff --git a/tests/unit/pods/contact/new/id/route-test.js b/tests/unit/pods/contact/new/id/route-test.js index 46942d108..30d80917f 100644 --- a/tests/unit/pods/contact/new/id/route-test.js +++ b/tests/unit/pods/contact/new/id/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | contact/new/id', function(hooks) { +module('Unit | Route | contact/new/id', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:contact/new/id'); assert.ok(route); }); diff --git a/tests/unit/pods/contact/new/index/route-test.js b/tests/unit/pods/contact/new/index/route-test.js index b11434406..f3c42d395 100644 --- a/tests/unit/pods/contact/new/index/route-test.js +++ b/tests/unit/pods/contact/new/index/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | contact/new/index', function(hooks) { +module('Unit | Route | contact/new/index', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:contact/new/index'); assert.ok(route); }); diff --git a/tests/unit/pods/contact/show/edit/route-test.js b/tests/unit/pods/contact/show/edit/route-test.js index b3664d828..8efc7e3d5 100644 --- a/tests/unit/pods/contact/show/edit/route-test.js +++ b/tests/unit/pods/contact/show/edit/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | contact/edit', function(hooks) { +module('Unit | Route | contact/edit', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { var route = this.owner.lookup('route:contact/show/edit'); assert.ok(route); }); diff --git a/tests/unit/pods/contact/show/index/route-test.js b/tests/unit/pods/contact/show/index/route-test.js index aeb3ac29f..54b8af306 100644 --- a/tests/unit/pods/contact/show/index/route-test.js +++ b/tests/unit/pods/contact/show/index/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | contact/show/index', function(hooks) { +module('Unit | Route | contact/show/index', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:contact/show/index'); assert.ok(route); }); diff --git a/tests/unit/pods/contact/show/route-test.js b/tests/unit/pods/contact/show/route-test.js index cea210cc3..0d598ce07 100644 --- a/tests/unit/pods/contact/show/route-test.js +++ b/tests/unit/pods/contact/show/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | contact/show', function(hooks) { +module('Unit | Route | contact/show', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { var route = this.owner.lookup('route:contact/show'); assert.ok(route); }); diff --git a/tests/unit/pods/contacts/route-test.js b/tests/unit/pods/contacts/route-test.js index 18a358c13..e2cdbef1a 100644 --- a/tests/unit/pods/contacts/route-test.js +++ b/tests/unit/pods/contacts/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | contacts', function(hooks) { +module('Unit | Route | contacts', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { var route = this.owner.lookup('route:contacts'); assert.ok(route); }); diff --git a/tests/unit/pods/dashboard/route-test.js b/tests/unit/pods/dashboard/route-test.js index b94e5426a..0d990be0d 100644 --- a/tests/unit/pods/dashboard/route-test.js +++ b/tests/unit/pods/dashboard/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | dashboard', function(hooks) { +module('Unit | Route | dashboard', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { var route = this.owner.lookup('route:dashboard'); assert.ok(route); }); diff --git a/tests/unit/pods/dictionaries/route-test.js b/tests/unit/pods/dictionaries/route-test.js index 83fed938a..57c42b20b 100644 --- a/tests/unit/pods/dictionaries/route-test.js +++ b/tests/unit/pods/dictionaries/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | dictionaries', function(hooks) { +module('Unit | Route | dictionaries', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { var route = this.owner.lookup('route:dictionaries'); assert.ok(route); }); diff --git a/tests/unit/pods/dictionary/new/id/route-test.js b/tests/unit/pods/dictionary/new/id/route-test.js index 56cc65930..bcfdd9bc2 100644 --- a/tests/unit/pods/dictionary/new/id/route-test.js +++ b/tests/unit/pods/dictionary/new/id/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | dictionary/new/id', function(hooks) { +module('Unit | Route | dictionary/new/id', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:dictionary/new/id'); assert.ok(route); }); diff --git a/tests/unit/pods/dictionary/new/index/route-test.js b/tests/unit/pods/dictionary/new/index/route-test.js index 945df1b8e..6838b39bc 100644 --- a/tests/unit/pods/dictionary/new/index/route-test.js +++ b/tests/unit/pods/dictionary/new/index/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | dictionary/new/index', function(hooks) { +module('Unit | Route | dictionary/new/index', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:dictionary/new/index'); assert.ok(route); }); diff --git a/tests/unit/pods/dictionary/show/edit/citation/identifier/route-test.js b/tests/unit/pods/dictionary/show/edit/citation/identifier/route-test.js index f9b36a56e..59886d392 100644 --- a/tests/unit/pods/dictionary/show/edit/citation/identifier/route-test.js +++ b/tests/unit/pods/dictionary/show/edit/citation/identifier/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | dictionary/show/edit/citation/identifier', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | dictionary/show/edit/citation/identifier', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:dictionary/show/edit/citation/identifier'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:dictionary/show/edit/citation/identifier', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/dictionary/show/edit/citation/index/route-test.js b/tests/unit/pods/dictionary/show/edit/citation/index/route-test.js index d3e6a3d7b..78ae1431d 100644 --- a/tests/unit/pods/dictionary/show/edit/citation/index/route-test.js +++ b/tests/unit/pods/dictionary/show/edit/citation/index/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | dictionary/show/edit/citation/index', function(hooks) { +module('Unit | Route | dictionary/show/edit/citation/index', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:dictionary/show/edit/citation/index'); assert.ok(route); }); diff --git a/tests/unit/pods/dictionary/show/edit/citation/route-test.js b/tests/unit/pods/dictionary/show/edit/citation/route-test.js index a0f541ecd..6998f9299 100644 --- a/tests/unit/pods/dictionary/show/edit/citation/route-test.js +++ b/tests/unit/pods/dictionary/show/edit/citation/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | dictionary/show/edit/citation', function(hooks) { +module('Unit | Route | dictionary/show/edit/citation', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:dictionary/show/edit/citation'); assert.ok(route); }); diff --git a/tests/unit/pods/dictionary/show/edit/domain/edit/citation/identifier/route-test.js b/tests/unit/pods/dictionary/show/edit/domain/edit/citation/identifier/route-test.js index 7038a16c8..b1bfbc4f0 100644 --- a/tests/unit/pods/dictionary/show/edit/domain/edit/citation/identifier/route-test.js +++ b/tests/unit/pods/dictionary/show/edit/domain/edit/citation/identifier/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | dictionary/show/edit/domain/edit/citation/identifier', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | dictionary/show/edit/domain/edit/citation/identifier', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:dictionary/show/edit/domain/edit/citation/identifier'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:dictionary/show/edit/domain/edit/citation/identifier', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/dictionary/show/edit/domain/edit/citation/index/route-test.js b/tests/unit/pods/dictionary/show/edit/domain/edit/citation/index/route-test.js index ec63ae782..5a78d673c 100644 --- a/tests/unit/pods/dictionary/show/edit/domain/edit/citation/index/route-test.js +++ b/tests/unit/pods/dictionary/show/edit/domain/edit/citation/index/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | dictionary/show/edit/domain/edit/citation/index', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | dictionary/show/edit/domain/edit/citation/index', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:dictionary/show/edit/domain/edit/citation/index'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:dictionary/show/edit/domain/edit/citation/index', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/dictionary/show/edit/domain/edit/citation/route-test.js b/tests/unit/pods/dictionary/show/edit/domain/edit/citation/route-test.js index 33ae3c51f..7f6d3c681 100644 --- a/tests/unit/pods/dictionary/show/edit/domain/edit/citation/route-test.js +++ b/tests/unit/pods/dictionary/show/edit/domain/edit/citation/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | dictionary/show/edit/domain/edit/citation', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | dictionary/show/edit/domain/edit/citation', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:dictionary/show/edit/domain/edit/citation'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:dictionary/show/edit/domain/edit/citation', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/dictionary/show/edit/domain/edit/index/route-test.js b/tests/unit/pods/dictionary/show/edit/domain/edit/index/route-test.js index 064383895..22727baa4 100644 --- a/tests/unit/pods/dictionary/show/edit/domain/edit/index/route-test.js +++ b/tests/unit/pods/dictionary/show/edit/domain/edit/index/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | dictionary/show/edit/domain/edit/index', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | dictionary/show/edit/domain/edit/index', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:dictionary/show/edit/domain/edit/index'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:dictionary/show/edit/domain/edit/index', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/dictionary/show/edit/domain/edit/item/route-test.js b/tests/unit/pods/dictionary/show/edit/domain/edit/item/route-test.js index 3f79025e9..3221c40e0 100644 --- a/tests/unit/pods/dictionary/show/edit/domain/edit/item/route-test.js +++ b/tests/unit/pods/dictionary/show/edit/domain/edit/item/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | dictionary/show/edit/domain/edit/item', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | dictionary/show/edit/domain/edit/item', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:dictionary/show/edit/domain/edit/item'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:dictionary/show/edit/domain/edit/item', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/dictionary/show/edit/domain/edit/route-test.js b/tests/unit/pods/dictionary/show/edit/domain/edit/route-test.js index 8a1f8a640..b93884cf5 100644 --- a/tests/unit/pods/dictionary/show/edit/domain/edit/route-test.js +++ b/tests/unit/pods/dictionary/show/edit/domain/edit/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | dictionary/show/edit/domain/edit', function(hooks) { +module('Unit | Route | dictionary/show/edit/domain/edit', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:dictionary/show/edit/domain/edit'); assert.ok(route); }); diff --git a/tests/unit/pods/dictionary/show/edit/domain/index/route-test.js b/tests/unit/pods/dictionary/show/edit/domain/index/route-test.js index 6287e4564..53a97188f 100644 --- a/tests/unit/pods/dictionary/show/edit/domain/index/route-test.js +++ b/tests/unit/pods/dictionary/show/edit/domain/index/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | dictionary/show/edit/domain/index', function(hooks) { +module('Unit | Route | dictionary/show/edit/domain/index', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:dictionary/show/edit/domain/index'); assert.ok(route); }); diff --git a/tests/unit/pods/dictionary/show/edit/domain/route-test.js b/tests/unit/pods/dictionary/show/edit/domain/route-test.js index 67efd2a77..c92986b7f 100644 --- a/tests/unit/pods/dictionary/show/edit/domain/route-test.js +++ b/tests/unit/pods/dictionary/show/edit/domain/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | dictionary/show/edit/domain', function(hooks) { +module('Unit | Route | dictionary/show/edit/domain', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:dictionary/show/edit/domain'); assert.ok(route); }); diff --git a/tests/unit/pods/dictionary/show/edit/entity/edit/attribute/index/route-test.js b/tests/unit/pods/dictionary/show/edit/entity/edit/attribute/index/route-test.js index bdc072132..ee920d256 100644 --- a/tests/unit/pods/dictionary/show/edit/entity/edit/attribute/index/route-test.js +++ b/tests/unit/pods/dictionary/show/edit/entity/edit/attribute/index/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | dictionary/show/edit/entity/edit/attribute/index', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | dictionary/show/edit/entity/edit/attribute/index', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:dictionary/show/edit/entity/edit/attribute/index'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:dictionary/show/edit/entity/edit/attribute/index', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/dictionary/show/edit/entity/edit/attribute/route-test.js b/tests/unit/pods/dictionary/show/edit/entity/edit/attribute/route-test.js index 1dbdfc450..ae73a47bf 100644 --- a/tests/unit/pods/dictionary/show/edit/entity/edit/attribute/route-test.js +++ b/tests/unit/pods/dictionary/show/edit/entity/edit/attribute/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | dictionary/show/edit/entity/edit/attribute', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | dictionary/show/edit/entity/edit/attribute', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:dictionary/show/edit/entity/edit/attribute'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:dictionary/show/edit/entity/edit/attribute', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/dictionary/show/edit/entity/edit/citation/identifier/route-test.js b/tests/unit/pods/dictionary/show/edit/entity/edit/citation/identifier/route-test.js index 9a9e89fda..934e6231a 100644 --- a/tests/unit/pods/dictionary/show/edit/entity/edit/citation/identifier/route-test.js +++ b/tests/unit/pods/dictionary/show/edit/entity/edit/citation/identifier/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | dictionary/show/edit/entity/edit/citation/identifier', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | dictionary/show/edit/entity/edit/citation/identifier', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:dictionary/show/edit/entity/edit/citation/identifier'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:dictionary/show/edit/entity/edit/citation/identifier', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/dictionary/show/edit/entity/edit/citation/index/route-test.js b/tests/unit/pods/dictionary/show/edit/entity/edit/citation/index/route-test.js index 3b7019652..692dc7baa 100644 --- a/tests/unit/pods/dictionary/show/edit/entity/edit/citation/index/route-test.js +++ b/tests/unit/pods/dictionary/show/edit/entity/edit/citation/index/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | dictionary/show/edit/entity/edit/citation/index', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | dictionary/show/edit/entity/edit/citation/index', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:dictionary/show/edit/entity/edit/citation/index'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:dictionary/show/edit/entity/edit/citation/index', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/dictionary/show/edit/entity/edit/citation/route-test.js b/tests/unit/pods/dictionary/show/edit/entity/edit/citation/route-test.js index 38e381c45..7e70e3295 100644 --- a/tests/unit/pods/dictionary/show/edit/entity/edit/citation/route-test.js +++ b/tests/unit/pods/dictionary/show/edit/entity/edit/citation/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | dictionary/show/edit/entity/edit/citation', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | dictionary/show/edit/entity/edit/citation', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:dictionary/show/edit/entity/edit/citation'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:dictionary/show/edit/entity/edit/citation', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/dictionary/show/edit/entity/edit/index/route-test.js b/tests/unit/pods/dictionary/show/edit/entity/edit/index/route-test.js index 5c3889a80..458847d72 100644 --- a/tests/unit/pods/dictionary/show/edit/entity/edit/index/route-test.js +++ b/tests/unit/pods/dictionary/show/edit/entity/edit/index/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | dictionary/show/edit/entity/edit/index', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | dictionary/show/edit/entity/edit/index', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:dictionary/show/edit/entity/edit/index'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:dictionary/show/edit/entity/edit/index', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/dictionary/show/edit/entity/edit/route-test.js b/tests/unit/pods/dictionary/show/edit/entity/edit/route-test.js index 9af513640..4f59184f0 100644 --- a/tests/unit/pods/dictionary/show/edit/entity/edit/route-test.js +++ b/tests/unit/pods/dictionary/show/edit/entity/edit/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | dictionary/show/edit/entity/edit', function(hooks) { +module('Unit | Route | dictionary/show/edit/entity/edit', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:dictionary/show/edit/entity/edit'); assert.ok(route); }); diff --git a/tests/unit/pods/dictionary/show/edit/entity/import/route-test.js b/tests/unit/pods/dictionary/show/edit/entity/import/route-test.js index 78c899e17..e22a603bf 100644 --- a/tests/unit/pods/dictionary/show/edit/entity/import/route-test.js +++ b/tests/unit/pods/dictionary/show/edit/entity/import/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | dictionary/show/edit/entity/import', function(hooks) { +module('Unit | Route | dictionary/show/edit/entity/import', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:dictionary/show/edit/entity/import'); assert.ok(route); }); diff --git a/tests/unit/pods/dictionary/show/edit/entity/index/route-test.js b/tests/unit/pods/dictionary/show/edit/entity/index/route-test.js index f525f6482..8d155b9ac 100644 --- a/tests/unit/pods/dictionary/show/edit/entity/index/route-test.js +++ b/tests/unit/pods/dictionary/show/edit/entity/index/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | dictionary/show/edit/entity/index', function(hooks) { +module('Unit | Route | dictionary/show/edit/entity/index', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:dictionary/show/edit/entity/index'); assert.ok(route); }); diff --git a/tests/unit/pods/dictionary/show/edit/entity/route-test.js b/tests/unit/pods/dictionary/show/edit/entity/route-test.js index 8b83646dc..bab2a59cb 100644 --- a/tests/unit/pods/dictionary/show/edit/entity/route-test.js +++ b/tests/unit/pods/dictionary/show/edit/entity/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | dictionary/show/edit/entity', function(hooks) { +module('Unit | Route | dictionary/show/edit/entity', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:dictionary/show/edit/entity'); assert.ok(route); }); diff --git a/tests/unit/pods/dictionary/show/edit/index/route-test.js b/tests/unit/pods/dictionary/show/edit/index/route-test.js index c19326acb..4e9ef8d18 100644 --- a/tests/unit/pods/dictionary/show/edit/index/route-test.js +++ b/tests/unit/pods/dictionary/show/edit/index/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | dictionary/show/edit/index', function(hooks) { +module('Unit | Route | dictionary/show/edit/index', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { var route = this.owner.lookup('route:dictionary/show/edit/index'); assert.ok(route); }); diff --git a/tests/unit/pods/dictionary/show/edit/route-test.js b/tests/unit/pods/dictionary/show/edit/route-test.js index 28af76543..ad1e405c1 100644 --- a/tests/unit/pods/dictionary/show/edit/route-test.js +++ b/tests/unit/pods/dictionary/show/edit/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | dictionary/edit', function(hooks) { +module('Unit | Route | dictionary/edit', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { var route = this.owner.lookup('route:dictionary/show/edit'); assert.ok(route); }); diff --git a/tests/unit/pods/dictionary/show/index/route-test.js b/tests/unit/pods/dictionary/show/index/route-test.js index c49465907..a2666f05c 100644 --- a/tests/unit/pods/dictionary/show/index/route-test.js +++ b/tests/unit/pods/dictionary/show/index/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | dictionary/show/index', function(hooks) { +module('Unit | Route | dictionary/show/index', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:dictionary/show/index'); assert.ok(route); }); diff --git a/tests/unit/pods/dictionary/show/route-test.js b/tests/unit/pods/dictionary/show/route-test.js index 47679788c..22d5c168d 100644 --- a/tests/unit/pods/dictionary/show/route-test.js +++ b/tests/unit/pods/dictionary/show/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | dictionary/show', function(hooks) { +module('Unit | Route | dictionary/show', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { var route = this.owner.lookup('route:dictionary/show'); assert.ok(route); }); diff --git a/tests/unit/pods/error/route-test.js b/tests/unit/pods/error/route-test.js index 3752aaad9..94365eedb 100644 --- a/tests/unit/pods/error/route-test.js +++ b/tests/unit/pods/error/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | error', function(hooks) { +module('Unit | Route | error', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:error'); assert.ok(route); }); diff --git a/tests/unit/pods/export/route-test.js b/tests/unit/pods/export/route-test.js index 49e6ec92e..27bfba4f8 100644 --- a/tests/unit/pods/export/route-test.js +++ b/tests/unit/pods/export/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | save', function(hooks) { +module('Unit | Route | save', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { var route = this.owner.lookup('route:save'); assert.ok(route); }); diff --git a/tests/unit/pods/help/route-test.js b/tests/unit/pods/help/route-test.js index c13de5f3a..2ffa6b183 100644 --- a/tests/unit/pods/help/route-test.js +++ b/tests/unit/pods/help/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | help', function(hooks) { +module('Unit | Route | help', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { var route = this.owner.lookup('route:help'); assert.ok(route); }); diff --git a/tests/unit/pods/import/route-test.js b/tests/unit/pods/import/route-test.js index d143aef95..887f0313e 100644 --- a/tests/unit/pods/import/route-test.js +++ b/tests/unit/pods/import/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | import', function(hooks) { +module('Unit | Route | import', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { var route = this.owner.lookup('route:import'); assert.ok(route); }); diff --git a/tests/unit/pods/not-found/route-test.js b/tests/unit/pods/not-found/route-test.js index 3c34ec0ac..496d3b8e4 100644 --- a/tests/unit/pods/not-found/route-test.js +++ b/tests/unit/pods/not-found/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | not found', function(hooks) { +module('Unit | Route | not found', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:not-found'); assert.ok(route); }); diff --git a/tests/unit/pods/publish/index/route-test.js b/tests/unit/pods/publish/index/route-test.js index 4c04bd1cc..46ca8d017 100644 --- a/tests/unit/pods/publish/index/route-test.js +++ b/tests/unit/pods/publish/index/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | publish/index', function(hooks) { +module('Unit | Route | publish/index', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:publish/index'); assert.ok(route); }); diff --git a/tests/unit/pods/record/index/route-test.js b/tests/unit/pods/record/index/route-test.js index d369717e2..95bee4473 100644 --- a/tests/unit/pods/record/index/route-test.js +++ b/tests/unit/pods/record/index/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/index', function(hooks) { +module('Unit | Route | record/index', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/index'); assert.ok(route); }); diff --git a/tests/unit/pods/record/new/id/route-test.js b/tests/unit/pods/record/new/id/route-test.js index fff0006e4..d5c992d99 100644 --- a/tests/unit/pods/record/new/id/route-test.js +++ b/tests/unit/pods/record/new/id/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/new/id', function(hooks) { +module('Unit | Route | record/new/id', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/new/id'); assert.ok(route); }); diff --git a/tests/unit/pods/record/new/index/route-test.js b/tests/unit/pods/record/new/index/route-test.js index ece5d7380..50e7775d7 100644 --- a/tests/unit/pods/record/new/index/route-test.js +++ b/tests/unit/pods/record/new/index/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/new/index', function(hooks) { +module('Unit | Route | record/new/index', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/new/index'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/associated/index/route-test.js b/tests/unit/pods/record/show/edit/associated/index/route-test.js index 270707df8..d0c2fd812 100644 --- a/tests/unit/pods/record/show/edit/associated/index/route-test.js +++ b/tests/unit/pods/record/show/edit/associated/index/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/associated/index', function(hooks) { +module('Unit | Route | record/show/edit/associated/index', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/show/edit/associated/index'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/associated/resource/index/route-test.js b/tests/unit/pods/record/show/edit/associated/resource/index/route-test.js index c91e8e7bf..d40e16b74 100644 --- a/tests/unit/pods/record/show/edit/associated/resource/index/route-test.js +++ b/tests/unit/pods/record/show/edit/associated/resource/index/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/associated/resource/index', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | record/show/edit/associated/resource/index', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:record/show/edit/associated/resource/index'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:record/show/edit/associated/resource/index', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/record/show/edit/associated/resource/route-test.js b/tests/unit/pods/record/show/edit/associated/resource/route-test.js index 2f385a9c2..d1884835a 100644 --- a/tests/unit/pods/record/show/edit/associated/resource/route-test.js +++ b/tests/unit/pods/record/show/edit/associated/resource/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/associated/resource', function(hooks) { +module('Unit | Route | record/show/edit/associated/resource', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/show/edit/associated/resource'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/associated/route-test.js b/tests/unit/pods/record/show/edit/associated/route-test.js index 864b138f9..fd064ef1f 100644 --- a/tests/unit/pods/record/show/edit/associated/route-test.js +++ b/tests/unit/pods/record/show/edit/associated/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/edit/associated', function(hooks) { +module('Unit | Route | record/edit/associated', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { var route = this.owner.lookup('route:record/show/edit/associated'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/constraint/index/route-test.js b/tests/unit/pods/record/show/edit/constraint/index/route-test.js index 0fb9e57ee..6a5b48735 100644 --- a/tests/unit/pods/record/show/edit/constraint/index/route-test.js +++ b/tests/unit/pods/record/show/edit/constraint/index/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/constraint/index', function(hooks) { +module('Unit | Route | record/show/edit/constraint/index', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/show/edit/constraint/index'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/constraint/route-test.js b/tests/unit/pods/record/show/edit/constraint/route-test.js index a9e24f0e8..8334c4c5b 100644 --- a/tests/unit/pods/record/show/edit/constraint/route-test.js +++ b/tests/unit/pods/record/show/edit/constraint/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/constraint', function(hooks) { +module('Unit | Route | record/show/edit/constraint', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/show/edit/constraint'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/coverages/route-test.js b/tests/unit/pods/record/show/edit/coverages/route-test.js index c513158af..7e58b6565 100644 --- a/tests/unit/pods/record/show/edit/coverages/route-test.js +++ b/tests/unit/pods/record/show/edit/coverages/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/edit/coverages', function(hooks) { +module('Unit | Route | record/edit/coverages', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { var route = this.owner.lookup('route:record/show/edit/coverages'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/dictionary/route-test.js b/tests/unit/pods/record/show/edit/dictionary/route-test.js index 65d7c76e8..ef3ad4bb3 100644 --- a/tests/unit/pods/record/show/edit/dictionary/route-test.js +++ b/tests/unit/pods/record/show/edit/dictionary/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/dictionary', function(hooks) { +module('Unit | Route | record/show/edit/dictionary', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/show/edit/dictionary'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/distribution/distributor/index/route-test.js b/tests/unit/pods/record/show/edit/distribution/distributor/index/route-test.js index 932a243e9..d95575415 100644 --- a/tests/unit/pods/record/show/edit/distribution/distributor/index/route-test.js +++ b/tests/unit/pods/record/show/edit/distribution/distributor/index/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/distribution/distributor/index', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | record/show/edit/distribution/distributor/index', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:record/show/edit/distribution/distributor/index'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:record/show/edit/distribution/distributor/index', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/record/show/edit/distribution/distributor/route-test.js b/tests/unit/pods/record/show/edit/distribution/distributor/route-test.js index e2eedfd7b..841f0b6ab 100644 --- a/tests/unit/pods/record/show/edit/distribution/distributor/route-test.js +++ b/tests/unit/pods/record/show/edit/distribution/distributor/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/distribution/distributor', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | record/show/edit/distribution/distributor', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:record/show/edit/distribution/distributor'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:record/show/edit/distribution/distributor', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/record/show/edit/distribution/distributor/transfer/route-test.js b/tests/unit/pods/record/show/edit/distribution/distributor/transfer/route-test.js index 405a42174..9d428ced0 100644 --- a/tests/unit/pods/record/show/edit/distribution/distributor/transfer/route-test.js +++ b/tests/unit/pods/record/show/edit/distribution/distributor/transfer/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/distribution/distributor/transfer', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | record/show/edit/distribution/distributor/transfer', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:record/show/edit/distribution/distributor/transfer'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:record/show/edit/distribution/distributor/transfer', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/record/show/edit/distribution/index/route-test.js b/tests/unit/pods/record/show/edit/distribution/index/route-test.js index 21b0012f3..3ede06da3 100644 --- a/tests/unit/pods/record/show/edit/distribution/index/route-test.js +++ b/tests/unit/pods/record/show/edit/distribution/index/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/distribution/index', function(hooks) { +module('Unit | Route | record/show/edit/distribution/index', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/show/edit/distribution/index'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/distribution/route-test.js b/tests/unit/pods/record/show/edit/distribution/route-test.js index 35f393f61..447c57e8a 100644 --- a/tests/unit/pods/record/show/edit/distribution/route-test.js +++ b/tests/unit/pods/record/show/edit/distribution/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/edit/distribution', function(hooks) { +module('Unit | Route | record/edit/distribution', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { var route = this.owner.lookup('route:record/show/edit/distribution'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/documents/citation/index/route-test.js b/tests/unit/pods/record/show/edit/documents/citation/index/route-test.js index 37a988d10..c4673364e 100644 --- a/tests/unit/pods/record/show/edit/documents/citation/index/route-test.js +++ b/tests/unit/pods/record/show/edit/documents/citation/index/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/documents/citation/index', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | record/show/edit/documents/citation/index', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:record/show/edit/documents/citation/index'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:record/show/edit/documents/citation/index', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/record/show/edit/documents/citation/route-test.js b/tests/unit/pods/record/show/edit/documents/citation/route-test.js index 57ba5cb43..17bdd6114 100644 --- a/tests/unit/pods/record/show/edit/documents/citation/route-test.js +++ b/tests/unit/pods/record/show/edit/documents/citation/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/documents/citation', function(hooks) { +module('Unit | Route | record/show/edit/documents/citation', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/show/edit/documents/citation'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/documents/index/route-test.js b/tests/unit/pods/record/show/edit/documents/index/route-test.js index 4396f6e22..7dad7c232 100644 --- a/tests/unit/pods/record/show/edit/documents/index/route-test.js +++ b/tests/unit/pods/record/show/edit/documents/index/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/documents/index', function(hooks) { +module('Unit | Route | record/show/edit/documents/index', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/show/edit/documents/index'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/documents/route-test.js b/tests/unit/pods/record/show/edit/documents/route-test.js index 8e90fb275..41fe93b78 100644 --- a/tests/unit/pods/record/show/edit/documents/route-test.js +++ b/tests/unit/pods/record/show/edit/documents/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/edit/documents', function(hooks) { +module('Unit | Route | record/edit/documents', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { var route = this.owner.lookup('route:record/show/edit/documents'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/extent/index/route-test.js b/tests/unit/pods/record/show/edit/extent/index/route-test.js index 56e71cc59..db947c140 100644 --- a/tests/unit/pods/record/show/edit/extent/index/route-test.js +++ b/tests/unit/pods/record/show/edit/extent/index/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/extent/index', function(hooks) { +module('Unit | Route | record/show/edit/extent/index', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/show/edit/extent/index'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/funding/allocation/route-test.js b/tests/unit/pods/record/show/edit/funding/allocation/route-test.js index 5e264dd6e..822ac1f99 100644 --- a/tests/unit/pods/record/show/edit/funding/allocation/route-test.js +++ b/tests/unit/pods/record/show/edit/funding/allocation/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/funding/allocation', function(hooks) { +module('Unit | Route | record/show/edit/funding/allocation', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/show/edit/funding/allocation'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/funding/index/route-test.js b/tests/unit/pods/record/show/edit/funding/index/route-test.js index 731385e37..26c5b01e7 100644 --- a/tests/unit/pods/record/show/edit/funding/index/route-test.js +++ b/tests/unit/pods/record/show/edit/funding/index/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/funding/index', function(hooks) { +module('Unit | Route | record/show/edit/funding/index', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/show/edit/funding/index'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/funding/route-test.js b/tests/unit/pods/record/show/edit/funding/route-test.js index f01dd0fc6..4afbb0168 100644 --- a/tests/unit/pods/record/show/edit/funding/route-test.js +++ b/tests/unit/pods/record/show/edit/funding/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/funding', function(hooks) { +module('Unit | Route | record/show/edit/funding', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/show/edit/funding'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/grid/route-test.js b/tests/unit/pods/record/show/edit/grid/route-test.js index 3ee891cd0..f650c61cb 100644 --- a/tests/unit/pods/record/show/edit/grid/route-test.js +++ b/tests/unit/pods/record/show/edit/grid/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/edit/grid', function(hooks) { +module('Unit | Route | record/edit/grid', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { var route = this.owner.lookup('route:record/show/edit/grid'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/index/route-test.js b/tests/unit/pods/record/show/edit/index/route-test.js index c24397a6c..ad667bc7c 100644 --- a/tests/unit/pods/record/show/edit/index/route-test.js +++ b/tests/unit/pods/record/show/edit/index/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/index', function(hooks) { +module('Unit | Route | record/show/edit/index', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/show/edit/index'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/keywords/index/route-test.js b/tests/unit/pods/record/show/edit/keywords/index/route-test.js index 10a291376..c27965d33 100644 --- a/tests/unit/pods/record/show/edit/keywords/index/route-test.js +++ b/tests/unit/pods/record/show/edit/keywords/index/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/keywords/index', function(hooks) { +module('Unit | Route | record/show/edit/keywords/index', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/show/edit/keywords/index'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/keywords/route-test.js b/tests/unit/pods/record/show/edit/keywords/route-test.js index 6b1e6e99d..b94fa1d7e 100644 --- a/tests/unit/pods/record/show/edit/keywords/route-test.js +++ b/tests/unit/pods/record/show/edit/keywords/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/edit/keywords', function(hooks) { +module('Unit | Route | record/edit/keywords', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { var route = this.owner.lookup('route:record/show/edit/keywords'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/keywords/thesaurus/route-test.js b/tests/unit/pods/record/show/edit/keywords/thesaurus/route-test.js index 3ea067e4e..a8e9bef2d 100644 --- a/tests/unit/pods/record/show/edit/keywords/thesaurus/route-test.js +++ b/tests/unit/pods/record/show/edit/keywords/thesaurus/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/keywords/thesaurus', function(hooks) { +module('Unit | Route | record/show/edit/keywords/thesaurus', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/show/edit/keywords/thesaurus'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/lineage/lineageobject/citation/identifier/route-test.js b/tests/unit/pods/record/show/edit/lineage/lineageobject/citation/identifier/route-test.js index 55b598a7d..82cf2f909 100644 --- a/tests/unit/pods/record/show/edit/lineage/lineageobject/citation/identifier/route-test.js +++ b/tests/unit/pods/record/show/edit/lineage/lineageobject/citation/identifier/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/lineage/lineageobject/citation/identifier', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | record/show/edit/lineage/lineageobject/citation/identifier', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:record/show/edit/lineage/lineageobject/citation/identifier'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:record/show/edit/lineage/lineageobject/citation/identifier', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/record/show/edit/lineage/lineageobject/citation/index/route-test.js b/tests/unit/pods/record/show/edit/lineage/lineageobject/citation/index/route-test.js index a02a6a797..9c999898b 100644 --- a/tests/unit/pods/record/show/edit/lineage/lineageobject/citation/index/route-test.js +++ b/tests/unit/pods/record/show/edit/lineage/lineageobject/citation/index/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/lineage/lineageobject/citation/index', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | record/show/edit/lineage/lineageobject/citation/index', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:record/show/edit/lineage/lineageobject/citation/index'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:record/show/edit/lineage/lineageobject/citation/index', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/record/show/edit/lineage/lineageobject/citation/route-test.js b/tests/unit/pods/record/show/edit/lineage/lineageobject/citation/route-test.js index f9092f02b..a0abc1058 100644 --- a/tests/unit/pods/record/show/edit/lineage/lineageobject/citation/route-test.js +++ b/tests/unit/pods/record/show/edit/lineage/lineageobject/citation/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/lineage/lineageobject/citation', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | record/show/edit/lineage/lineageobject/citation', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:record/show/edit/lineage/lineageobject/citation'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:record/show/edit/lineage/lineageobject/citation', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/record/show/edit/lineage/lineageobject/index/route-test.js b/tests/unit/pods/record/show/edit/lineage/lineageobject/index/route-test.js index 371234382..2e791fc91 100644 --- a/tests/unit/pods/record/show/edit/lineage/lineageobject/index/route-test.js +++ b/tests/unit/pods/record/show/edit/lineage/lineageobject/index/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/lineage/lineageobject/index', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | record/show/edit/lineage/lineageobject/index', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:record/show/edit/lineage/lineageobject/index'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:record/show/edit/lineage/lineageobject/index', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/record/show/edit/lineage/lineageobject/route-test.js b/tests/unit/pods/record/show/edit/lineage/lineageobject/route-test.js index d31a82978..06796785a 100644 --- a/tests/unit/pods/record/show/edit/lineage/lineageobject/route-test.js +++ b/tests/unit/pods/record/show/edit/lineage/lineageobject/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/lineage/lineageobject', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | record/show/edit/lineage/lineageobject', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:record/show/edit/lineage/lineageobject'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:record/show/edit/lineage/lineageobject', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/record/show/edit/lineage/lineageobject/source/index/route-test.js b/tests/unit/pods/record/show/edit/lineage/lineageobject/source/index/route-test.js index 8c4c8063b..a5c131a27 100644 --- a/tests/unit/pods/record/show/edit/lineage/lineageobject/source/index/route-test.js +++ b/tests/unit/pods/record/show/edit/lineage/lineageobject/source/index/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/lineage/lineageobject/source/index', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | record/show/edit/lineage/lineageobject/source/index', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:record/show/edit/lineage/lineageobject/source/index'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:record/show/edit/lineage/lineageobject/source/index', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/record/show/edit/lineage/lineageobject/source/route-test.js b/tests/unit/pods/record/show/edit/lineage/lineageobject/source/route-test.js index 463e2bfd0..b40ac4c36 100644 --- a/tests/unit/pods/record/show/edit/lineage/lineageobject/source/route-test.js +++ b/tests/unit/pods/record/show/edit/lineage/lineageobject/source/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/lineage/lineageobject/source', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | record/show/edit/lineage/lineageobject/source', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:record/show/edit/lineage/lineageobject/source'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:record/show/edit/lineage/lineageobject/source', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/record/show/edit/lineage/lineageobject/step/citation/route-test.js b/tests/unit/pods/record/show/edit/lineage/lineageobject/step/citation/route-test.js index bb2cbb9ce..f4351ea67 100644 --- a/tests/unit/pods/record/show/edit/lineage/lineageobject/step/citation/route-test.js +++ b/tests/unit/pods/record/show/edit/lineage/lineageobject/step/citation/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/lineage/lineageobject/step/citation', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | record/show/edit/lineage/lineageobject/step/citation', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:record/show/edit/lineage/lineageobject/step/citation'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:record/show/edit/lineage/lineageobject/step/citation', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/record/show/edit/lineage/lineageobject/step/index/route-test.js b/tests/unit/pods/record/show/edit/lineage/lineageobject/step/index/route-test.js index b169d883f..b3f9b9ffc 100644 --- a/tests/unit/pods/record/show/edit/lineage/lineageobject/step/index/route-test.js +++ b/tests/unit/pods/record/show/edit/lineage/lineageobject/step/index/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/lineage/lineageobject/step/index', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | record/show/edit/lineage/lineageobject/step/index', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:record/show/edit/lineage/lineageobject/step/index'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:record/show/edit/lineage/lineageobject/step/index', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/record/show/edit/lineage/lineageobject/step/route-test.js b/tests/unit/pods/record/show/edit/lineage/lineageobject/step/route-test.js index df598bdcb..303837409 100644 --- a/tests/unit/pods/record/show/edit/lineage/lineageobject/step/route-test.js +++ b/tests/unit/pods/record/show/edit/lineage/lineageobject/step/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/lineage/lineageobject/step', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | record/show/edit/lineage/lineageobject/step', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:record/show/edit/lineage/lineageobject/step'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:record/show/edit/lineage/lineageobject/step', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/record/show/edit/main/citation/identifier/route-test.js b/tests/unit/pods/record/show/edit/main/citation/identifier/route-test.js index 0135ca129..fd1f9f8ce 100644 --- a/tests/unit/pods/record/show/edit/main/citation/identifier/route-test.js +++ b/tests/unit/pods/record/show/edit/main/citation/identifier/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/main/citation/identifier', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | record/show/edit/main/citation/identifier', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:record/show/edit/main/citation/identifier'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:record/show/edit/main/citation/identifier', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/record/show/edit/main/citation/index/route-test.js b/tests/unit/pods/record/show/edit/main/citation/index/route-test.js index 1b2ed811d..334aeb987 100644 --- a/tests/unit/pods/record/show/edit/main/citation/index/route-test.js +++ b/tests/unit/pods/record/show/edit/main/citation/index/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/main/citation/index', function(hooks) { +module('Unit | Route | record/show/edit/main/citation/index', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/show/edit/main/citation/index'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/main/citation/route-test.js b/tests/unit/pods/record/show/edit/main/citation/route-test.js index d73f114a1..39ea4b25f 100644 --- a/tests/unit/pods/record/show/edit/main/citation/route-test.js +++ b/tests/unit/pods/record/show/edit/main/citation/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/main/citation', function(hooks) { +module('Unit | Route | record/show/edit/main/citation', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/show/edit/main/citation'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/main/index/route-test.js b/tests/unit/pods/record/show/edit/main/index/route-test.js index fb91e1428..fa2201f81 100644 --- a/tests/unit/pods/record/show/edit/main/index/route-test.js +++ b/tests/unit/pods/record/show/edit/main/index/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/main/index', function(hooks) { +module('Unit | Route | record/show/edit/main/index', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/show/edit/main/index'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/main/route-test.js b/tests/unit/pods/record/show/edit/main/route-test.js index b279e278f..4c074f1a6 100644 --- a/tests/unit/pods/record/show/edit/main/route-test.js +++ b/tests/unit/pods/record/show/edit/main/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/main', function(hooks) { +module('Unit | Route | record/show/edit/main', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/show/edit/main'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/metadata/alternate/identifier/route-test.js b/tests/unit/pods/record/show/edit/metadata/alternate/identifier/route-test.js index 3095d5372..f71958f51 100644 --- a/tests/unit/pods/record/show/edit/metadata/alternate/identifier/route-test.js +++ b/tests/unit/pods/record/show/edit/metadata/alternate/identifier/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/metadata/alternate/identifier', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | record/show/edit/metadata/alternate/identifier', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:record/show/edit/metadata/alternate/identifier'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:record/show/edit/metadata/alternate/identifier', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/record/show/edit/metadata/alternate/index/route-test.js b/tests/unit/pods/record/show/edit/metadata/alternate/index/route-test.js index 105eb7203..bd575a9bb 100644 --- a/tests/unit/pods/record/show/edit/metadata/alternate/index/route-test.js +++ b/tests/unit/pods/record/show/edit/metadata/alternate/index/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/metadata/alternate/index', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | record/show/edit/metadata/alternate/index', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:record/show/edit/metadata/alternate/index'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:record/show/edit/metadata/alternate/index', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/record/show/edit/metadata/alternate/route-test.js b/tests/unit/pods/record/show/edit/metadata/alternate/route-test.js index a408dad3c..5ac5dad95 100644 --- a/tests/unit/pods/record/show/edit/metadata/alternate/route-test.js +++ b/tests/unit/pods/record/show/edit/metadata/alternate/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/metadata/alternate', function(hooks) { +module('Unit | Route | record/show/edit/metadata/alternate', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/show/edit/metadata/alternate'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/metadata/identifier/route-test.js b/tests/unit/pods/record/show/edit/metadata/identifier/route-test.js index 57e6d70ae..e442b1a23 100644 --- a/tests/unit/pods/record/show/edit/metadata/identifier/route-test.js +++ b/tests/unit/pods/record/show/edit/metadata/identifier/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/metadata/identifier', function(hooks) { +module('Unit | Route | record/show/edit/metadata/identifier', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/show/edit/metadata/identifier'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/metadata/index/route-test.js b/tests/unit/pods/record/show/edit/metadata/index/route-test.js index dddc2e756..a4b091504 100644 --- a/tests/unit/pods/record/show/edit/metadata/index/route-test.js +++ b/tests/unit/pods/record/show/edit/metadata/index/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/metadata/index', function(hooks) { +module('Unit | Route | record/show/edit/metadata/index', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/show/edit/metadata/index'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/metadata/parent/identifier/route-test.js b/tests/unit/pods/record/show/edit/metadata/parent/identifier/route-test.js index aed806783..01210bde2 100644 --- a/tests/unit/pods/record/show/edit/metadata/parent/identifier/route-test.js +++ b/tests/unit/pods/record/show/edit/metadata/parent/identifier/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/metadata/parent/identifier', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | record/show/edit/metadata/parent/identifier', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:record/show/edit/metadata/parent/identifier'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:record/show/edit/metadata/parent/identifier', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/record/show/edit/metadata/parent/index/route-test.js b/tests/unit/pods/record/show/edit/metadata/parent/index/route-test.js index 5b6512f52..88633b190 100644 --- a/tests/unit/pods/record/show/edit/metadata/parent/index/route-test.js +++ b/tests/unit/pods/record/show/edit/metadata/parent/index/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/metadata/parent/index', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | record/show/edit/metadata/parent/index', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:record/show/edit/metadata/parent/index'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:record/show/edit/metadata/parent/index', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/record/show/edit/metadata/parent/route-test.js b/tests/unit/pods/record/show/edit/metadata/parent/route-test.js index 4260a3484..45054818b 100644 --- a/tests/unit/pods/record/show/edit/metadata/parent/route-test.js +++ b/tests/unit/pods/record/show/edit/metadata/parent/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/metadata/parent', function(hooks) { +module('Unit | Route | record/show/edit/metadata/parent', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/show/edit/metadata/parent'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/metadata/route-test.js b/tests/unit/pods/record/show/edit/metadata/route-test.js index 2ae6013a6..834c1188d 100644 --- a/tests/unit/pods/record/show/edit/metadata/route-test.js +++ b/tests/unit/pods/record/show/edit/metadata/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/metadata', function(hooks) { +module('Unit | Route | record/show/edit/metadata', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/show/edit/metadata'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/route-test.js b/tests/unit/pods/record/show/edit/route-test.js index 5074e0b63..2600fb724 100644 --- a/tests/unit/pods/record/show/edit/route-test.js +++ b/tests/unit/pods/record/show/edit/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/edit', function(hooks) { +module('Unit | Route | record/edit', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { var route = this.owner.lookup('route:record/show/edit'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/spatial/extent/route-test.js b/tests/unit/pods/record/show/edit/spatial/extent/route-test.js index 7cca24937..f8686c84b 100644 --- a/tests/unit/pods/record/show/edit/spatial/extent/route-test.js +++ b/tests/unit/pods/record/show/edit/spatial/extent/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/extent/spatial', function(hooks) { +module('Unit | Route | record/show/edit/extent/spatial', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/show/edit/extent/spatial'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/spatial/index/route-test.js b/tests/unit/pods/record/show/edit/spatial/index/route-test.js index 1402d5fc6..baf59b01d 100644 --- a/tests/unit/pods/record/show/edit/spatial/index/route-test.js +++ b/tests/unit/pods/record/show/edit/spatial/index/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/spatial/index', function(hooks) { +module('Unit | Route | record/show/edit/spatial/index', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/show/edit/spatial/index'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/spatial/raster/attribute/route-test.js b/tests/unit/pods/record/show/edit/spatial/raster/attribute/route-test.js index ec071ff6d..38545a498 100644 --- a/tests/unit/pods/record/show/edit/spatial/raster/attribute/route-test.js +++ b/tests/unit/pods/record/show/edit/spatial/raster/attribute/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/spatial/raster/attribute', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | record/show/edit/spatial/raster/attribute', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:record/show/edit/spatial/raster/attribute'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:record/show/edit/spatial/raster/attribute', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/record/show/edit/spatial/raster/index/route-test.js b/tests/unit/pods/record/show/edit/spatial/raster/index/route-test.js index 272b8a714..f8ccc166d 100644 --- a/tests/unit/pods/record/show/edit/spatial/raster/index/route-test.js +++ b/tests/unit/pods/record/show/edit/spatial/raster/index/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/spatial/raster/index', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | record/show/edit/spatial/raster/index', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:record/show/edit/spatial/raster/index'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:record/show/edit/spatial/raster/index', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/record/show/edit/spatial/raster/route-test.js b/tests/unit/pods/record/show/edit/spatial/raster/route-test.js index 0fee32823..77718a5a2 100644 --- a/tests/unit/pods/record/show/edit/spatial/raster/route-test.js +++ b/tests/unit/pods/record/show/edit/spatial/raster/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/spatial/raster', function(hooks) { +module('Unit | Route | record/show/edit/spatial/raster', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/show/edit/spatial/raster'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/spatial/route-test.js b/tests/unit/pods/record/show/edit/spatial/route-test.js index 5431b4837..15d50a265 100644 --- a/tests/unit/pods/record/show/edit/spatial/route-test.js +++ b/tests/unit/pods/record/show/edit/spatial/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/spatial', function(hooks) { +module('Unit | Route | record/show/edit/spatial', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/show/edit/spatial'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/taxonomy/collection/index/route-test.js b/tests/unit/pods/record/show/edit/taxonomy/collection/index/route-test.js index 60b98336c..17ee73407 100644 --- a/tests/unit/pods/record/show/edit/taxonomy/collection/index/route-test.js +++ b/tests/unit/pods/record/show/edit/taxonomy/collection/index/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/taxonomy/collection/index', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | record/show/edit/taxonomy/collection/index', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:record/show/edit/taxonomy/collection/index'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:record/show/edit/taxonomy/collection/index', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/record/show/edit/taxonomy/collection/itis/route-test.js b/tests/unit/pods/record/show/edit/taxonomy/collection/itis/route-test.js index 3dc6c4752..359a59bfc 100644 --- a/tests/unit/pods/record/show/edit/taxonomy/collection/itis/route-test.js +++ b/tests/unit/pods/record/show/edit/taxonomy/collection/itis/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/taxonomy/collection/itis', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | record/show/edit/taxonomy/collection/itis', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:record/show/edit/taxonomy/collection/itis'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:record/show/edit/taxonomy/collection/itis', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/record/show/edit/taxonomy/collection/route-test.js b/tests/unit/pods/record/show/edit/taxonomy/collection/route-test.js index 31c993667..84aeddaf3 100644 --- a/tests/unit/pods/record/show/edit/taxonomy/collection/route-test.js +++ b/tests/unit/pods/record/show/edit/taxonomy/collection/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/taxonomy/collection', function(hooks) { +module('Unit | Route | record/show/edit/taxonomy/collection', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/show/edit/taxonomy/collection'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/taxonomy/collection/system/index/route-test.js b/tests/unit/pods/record/show/edit/taxonomy/collection/system/index/route-test.js index 92195f447..4a9569407 100644 --- a/tests/unit/pods/record/show/edit/taxonomy/collection/system/index/route-test.js +++ b/tests/unit/pods/record/show/edit/taxonomy/collection/system/index/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/taxonomy/collection/system/index', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | record/show/edit/taxonomy/collection/system/index', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:record/show/edit/taxonomy/collection/system/index'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:record/show/edit/taxonomy/collection/system/index', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/record/show/edit/taxonomy/collection/system/route-test.js b/tests/unit/pods/record/show/edit/taxonomy/collection/system/route-test.js index 7646ef571..5617873f4 100644 --- a/tests/unit/pods/record/show/edit/taxonomy/collection/system/route-test.js +++ b/tests/unit/pods/record/show/edit/taxonomy/collection/system/route-test.js @@ -1,11 +1,16 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/taxonomy/collection/system', function(hooks) { - setupTest(hooks); +module( + 'Unit | Route | record/show/edit/taxonomy/collection/system', + function (hooks) { + setupTest(hooks); - test('it exists', function(assert) { - let route = this.owner.lookup('route:record/show/edit/taxonomy/collection/system'); - assert.ok(route); - }); -}); + test('it exists', function (assert) { + let route = this.owner.lookup( + 'route:record/show/edit/taxonomy/collection/system', + ); + assert.ok(route); + }); + }, +); diff --git a/tests/unit/pods/record/show/edit/taxonomy/index/route-test.js b/tests/unit/pods/record/show/edit/taxonomy/index/route-test.js index 567efb53a..a6591b525 100644 --- a/tests/unit/pods/record/show/edit/taxonomy/index/route-test.js +++ b/tests/unit/pods/record/show/edit/taxonomy/index/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/taxonomy/index', function(hooks) { +module('Unit | Route | record/show/edit/taxonomy/index', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/show/edit/taxonomy/index'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/edit/taxonomy/route-test.js b/tests/unit/pods/record/show/edit/taxonomy/route-test.js index 6ca04dce2..bfe84ee92 100644 --- a/tests/unit/pods/record/show/edit/taxonomy/route-test.js +++ b/tests/unit/pods/record/show/edit/taxonomy/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/edit/taxonomy', function(hooks) { +module('Unit | Route | record/show/edit/taxonomy', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/show/edit/taxonomy'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/index/route-test.js b/tests/unit/pods/record/show/index/route-test.js index 3387b4844..053c6e3e9 100644 --- a/tests/unit/pods/record/show/index/route-test.js +++ b/tests/unit/pods/record/show/index/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/index', function(hooks) { +module('Unit | Route | record/show/index', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/show/index'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/route-test.js b/tests/unit/pods/record/show/route-test.js index 31c65b205..652fbed2c 100644 --- a/tests/unit/pods/record/show/route-test.js +++ b/tests/unit/pods/record/show/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show', function(hooks) { +module('Unit | Route | record/show', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { var route = this.owner.lookup('route:record/show'); assert.ok(route); }); diff --git a/tests/unit/pods/record/show/translate/route-test.js b/tests/unit/pods/record/show/translate/route-test.js index 612fc80d8..964454f97 100644 --- a/tests/unit/pods/record/show/translate/route-test.js +++ b/tests/unit/pods/record/show/translate/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | record/show/translate', function(hooks) { +module('Unit | Route | record/show/translate', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:record/show/translate'); assert.ok(route); }); diff --git a/tests/unit/pods/records/route-test.js b/tests/unit/pods/records/route-test.js index 76cc41dc6..3aa6c9e05 100644 --- a/tests/unit/pods/records/route-test.js +++ b/tests/unit/pods/records/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | records', function(hooks) { +module('Unit | Route | records', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { var route = this.owner.lookup('route:records'); assert.ok(route); }); diff --git a/tests/unit/pods/settings/index/route-test.js b/tests/unit/pods/settings/index/route-test.js index b2cc68633..aca44838f 100644 --- a/tests/unit/pods/settings/index/route-test.js +++ b/tests/unit/pods/settings/index/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | settings/index', function(hooks) { +module('Unit | Route | settings/index', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:settings/index'); assert.ok(route); }); diff --git a/tests/unit/pods/settings/main/route-test.js b/tests/unit/pods/settings/main/route-test.js index 578696c13..08e2b008b 100644 --- a/tests/unit/pods/settings/main/route-test.js +++ b/tests/unit/pods/settings/main/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | settings/main', function(hooks) { +module('Unit | Route | settings/main', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:settings/main'); assert.ok(route); }); diff --git a/tests/unit/pods/settings/profile/index/controller-test.js b/tests/unit/pods/settings/profile/index/controller-test.js index 1930e7677..93ed20fab 100644 --- a/tests/unit/pods/settings/profile/index/controller-test.js +++ b/tests/unit/pods/settings/profile/index/controller-test.js @@ -1,11 +1,11 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Controller | settings/profile/index', function(hooks) { +module('Unit | Controller | settings/profile/index', function (hooks) { setupTest(hooks); // Replace this with your real tests. - test('it exists', function(assert) { + test('it exists', function (assert) { let controller = this.owner.lookup('controller:settings/profile/index'); assert.ok(controller); }); diff --git a/tests/unit/pods/settings/profile/index/route-test.js b/tests/unit/pods/settings/profile/index/route-test.js index a06d108be..61e5419f0 100644 --- a/tests/unit/pods/settings/profile/index/route-test.js +++ b/tests/unit/pods/settings/profile/index/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | settings/profile/index', function(hooks) { +module('Unit | Route | settings/profile/index', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:settings/profile/index'); assert.ok(route); }); diff --git a/tests/unit/pods/settings/profile/manage/controller-test.js b/tests/unit/pods/settings/profile/manage/controller-test.js index 9a35aa2b0..28d32b6b5 100644 --- a/tests/unit/pods/settings/profile/manage/controller-test.js +++ b/tests/unit/pods/settings/profile/manage/controller-test.js @@ -1,11 +1,11 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Controller | settings/profile/manage', function(hooks) { +module('Unit | Controller | settings/profile/manage', function (hooks) { setupTest(hooks); // Replace this with your real tests. - test('it exists', function(assert) { + test('it exists', function (assert) { let controller = this.owner.lookup('controller:settings/profile/manage'); assert.ok(controller); }); diff --git a/tests/unit/pods/settings/profile/manage/route-test.js b/tests/unit/pods/settings/profile/manage/route-test.js index bdcaafc80..92e00303e 100644 --- a/tests/unit/pods/settings/profile/manage/route-test.js +++ b/tests/unit/pods/settings/profile/manage/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | settings/profile/manage', function(hooks) { +module('Unit | Route | settings/profile/manage', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:settings/profile/manage'); assert.ok(route); }); diff --git a/tests/unit/pods/settings/profile/route-test.js b/tests/unit/pods/settings/profile/route-test.js index c3279014f..9603b4537 100644 --- a/tests/unit/pods/settings/profile/route-test.js +++ b/tests/unit/pods/settings/profile/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | settings/profile', function(hooks) { +module('Unit | Route | settings/profile', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:settings/profile'); assert.ok(route); }); diff --git a/tests/unit/pods/settings/route-test.js b/tests/unit/pods/settings/route-test.js index 86367eebc..2238ac53e 100644 --- a/tests/unit/pods/settings/route-test.js +++ b/tests/unit/pods/settings/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | settings', function(hooks) { +module('Unit | Route | settings', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { var route = this.owner.lookup('route:settings'); assert.ok(route); }); diff --git a/tests/unit/pods/settings/validation/controller-test.js b/tests/unit/pods/settings/validation/controller-test.js index d76864568..ec6586983 100644 --- a/tests/unit/pods/settings/validation/controller-test.js +++ b/tests/unit/pods/settings/validation/controller-test.js @@ -1,11 +1,11 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Controller | settings/validation', function(hooks) { +module('Unit | Controller | settings/validation', function (hooks) { setupTest(hooks); // Replace this with your real tests. - test('it exists', function(assert) { + test('it exists', function (assert) { let controller = this.owner.lookup('controller:settings/validation'); assert.ok(controller); }); diff --git a/tests/unit/pods/settings/validation/route-test.js b/tests/unit/pods/settings/validation/route-test.js index 2f21985f5..33f20210d 100644 --- a/tests/unit/pods/settings/validation/route-test.js +++ b/tests/unit/pods/settings/validation/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | settings/validation', function(hooks) { +module('Unit | Route | settings/validation', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:settings/validation'); assert.ok(route); }); diff --git a/tests/unit/pods/translate/route-test.js b/tests/unit/pods/translate/route-test.js index a717ae1d5..13bc49435 100644 --- a/tests/unit/pods/translate/route-test.js +++ b/tests/unit/pods/translate/route-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | translate', function(hooks) { +module('Unit | Route | translate', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { var route = this.owner.lookup('route:translate'); assert.ok(route); }); diff --git a/tests/unit/routes/application-test.js b/tests/unit/routes/application-test.js index 80e166a61..2a5eedc3f 100644 --- a/tests/unit/routes/application-test.js +++ b/tests/unit/routes/application-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | application', function(hooks) { +module('Unit | Route | application', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { var route = this.owner.lookup('route:application'); assert.ok(route); }); diff --git a/tests/unit/routes/index-test.js b/tests/unit/routes/index-test.js index c7d0a3fae..fb9d7037e 100644 --- a/tests/unit/routes/index-test.js +++ b/tests/unit/routes/index-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | index', function(hooks) { +module('Unit | Route | index', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { var route = this.owner.lookup('route:index'); assert.ok(route); }); diff --git a/tests/unit/routes/publish/sciencebase-test.js b/tests/unit/routes/publish/sciencebase-test.js index d6bc37724..c6a55ce7c 100644 --- a/tests/unit/routes/publish/sciencebase-test.js +++ b/tests/unit/routes/publish/sciencebase-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Route | publish/sciencebase', function(hooks) { +module('Unit | Route | publish/sciencebase', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let route = this.owner.lookup('route:publish/sciencebase'); assert.ok(route); }); diff --git a/tests/unit/serializers/application-test.js b/tests/unit/serializers/application-test.js index b366bdf36..42f4925ee 100644 --- a/tests/unit/serializers/application-test.js +++ b/tests/unit/serializers/application-test.js @@ -3,7 +3,7 @@ import DS from 'ember-data'; import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Serializer | application', function(hooks) { +module('Unit | Serializer | application', function (hooks) { setupTest(hooks); test('it serializes records', function (assert) { @@ -13,25 +13,25 @@ module('Unit | Serializer | application', function(hooks) { let store = this.owner.lookup('service:store'); let record; const expected = { - "data": { - "attributes": { - "name": "foo", - "skill": "bar", - "games-played": "[100,200]" + data: { + attributes: { + name: 'foo', + skill: 'bar', + 'games-played': '[100,200]', }, - "type": "tests" - } + type: 'tests', + }, }; const data = { id: 1, name: 'foo', skill: 'bar', - gamesPlayed: [100,200] + gamesPlayed: [100, 200], }; let model = DS.Model.extend({ name: DS.attr(), skill: DS.attr(), - gamesPlayed: DS.attr('json') + gamesPlayed: DS.attr('json'), }); this.owner.register('model:test', model); @@ -41,7 +41,10 @@ module('Unit | Serializer | application', function(hooks) { }); assert.deepEqual(record.serialize(), expected, 'record serialized OK'); - assert.deepEqual(serializer.serialize(record._createSnapshot()), expected, - 'serialized snapshot OK'); + assert.deepEqual( + serializer.serialize(record._createSnapshot()), + expected, + 'serialized snapshot OK', + ); }); }); diff --git a/tests/unit/services/cleaner-test.js b/tests/unit/services/cleaner-test.js index b1efc35ad..a85f41664 100644 --- a/tests/unit/services/cleaner-test.js +++ b/tests/unit/services/cleaner-test.js @@ -8,41 +8,43 @@ module('Unit | Service | cleaner', function (hooks) { test('it exists', function (assert) { let service = this.owner.lookup('service:cleaner'); const obj = { - test: [[],{},'',null, undefined], + test: [[], {}, '', null, undefined], foo: 'bar', bar: null, biz: {}, baz: { foo: [undefined] }, jim: [{ jam: '' }], hey: { - ya: [ - '', - 'keep', - true, - false - ], - zoo:[] - } + ya: ['', 'keep', true, false], + zoo: [], + }, }; assert.ok(service); - assert.equal(JSON.stringify(service.clean(obj, { - preserveArrays: true, - preserveRootOnly: false - })), + assert.equal( + JSON.stringify( + service.clean(obj, { + preserveArrays: true, + preserveRootOnly: false, + }), + ), '{"test":[[]],"foo":"bar","baz":{"foo":[]},"jim":[],"hey":{"ya":["keep",true,false],"zoo":[]}}', - 'preserveArrays: true, preserveRootOnly: false' + 'preserveArrays: true, preserveRootOnly: false', ); - assert.equal(JSON.stringify(service.clean(obj)), + assert.equal( + JSON.stringify(service.clean(obj)), '{"test":[],"foo":"bar","jim":[],"hey":{"ya":["keep",true,false]}}', - 'preserveArrays: true, preserveRootOnly: true' + 'preserveArrays: true, preserveRootOnly: true', ); - assert.equal(JSON.stringify(service.clean(obj, { - preserveArrays: false, - preserveRootOnly: true - })), + assert.equal( + JSON.stringify( + service.clean(obj, { + preserveArrays: false, + preserveRootOnly: true, + }), + ), '{"foo":"bar","hey":{"ya":["keep",true,false]}}', - 'preserveArrays: false, preserveRootOnly: true' + 'preserveArrays: false, preserveRootOnly: true', ); }); }); diff --git a/tests/unit/services/codelist-test.js b/tests/unit/services/codelist-test.js index b3bf5d402..9793ce809 100644 --- a/tests/unit/services/codelist-test.js +++ b/tests/unit/services/codelist-test.js @@ -2,19 +2,18 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import codes from 'mdcodes/resources/js/mdcodes.js'; -module('Unit | Service | codelist', function(hooks) { +module('Unit | Service | codelist', function (hooks) { setupTest(hooks); test('all codelists are present', function (assert) { var service = this.owner.lookup('service:codelist'); - Object.keys(codes) - .forEach(function (key) { - if(key === 'default') return; + Object.keys(codes).forEach(function (key) { + if (key === 'default') return; - const name = key.replace(/^(iso_|adiwg_)/, ''); + const name = key.replace(/^(iso_|adiwg_)/, ''); - assert.ok(service.get(name), name + ' is present.'); - }); + assert.ok(service.get(name), name + ' is present.'); + }); }); }); diff --git a/tests/unit/services/contacts-test.js b/tests/unit/services/contacts-test.js index d9e4286c5..80cb5f2ee 100644 --- a/tests/unit/services/contacts-test.js +++ b/tests/unit/services/contacts-test.js @@ -1,11 +1,11 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Service | contacts', function(hooks) { +module('Unit | Service | contacts', function (hooks) { setupTest(hooks); // Replace this with your real tests. - test('it exists', function(assert) { + test('it exists', function (assert) { let service = this.owner.lookup('service:contacts'); assert.ok(service); }); diff --git a/tests/unit/services/custom-profile-test.js b/tests/unit/services/custom-profile-test.js index 4919bf402..d62d31769 100644 --- a/tests/unit/services/custom-profile-test.js +++ b/tests/unit/services/custom-profile-test.js @@ -1,11 +1,11 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Service | custom-profile', function(hooks) { +module('Unit | Service | custom-profile', function (hooks) { setupTest(hooks); // Replace this with your real tests. - test('it exists', function(assert) { + test('it exists', function (assert) { let service = this.owner.lookup('service:custom-profile'); assert.ok(service); }); diff --git a/tests/unit/services/icon-test.js b/tests/unit/services/icon-test.js index 1d5811c5c..dfcccc0d4 100644 --- a/tests/unit/services/icon-test.js +++ b/tests/unit/services/icon-test.js @@ -1,11 +1,11 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Service | icon', function(hooks) { +module('Unit | Service | icon', function (hooks) { setupTest(hooks); // Replace this with your real tests. - test('it exists', function(assert) { + test('it exists', function (assert) { var service = this.owner.lookup('service:icon'); assert.ok(service); }); diff --git a/tests/unit/services/itis-test.js b/tests/unit/services/itis-test.js index 74a9c3acf..710658823 100644 --- a/tests/unit/services/itis-test.js +++ b/tests/unit/services/itis-test.js @@ -1,11 +1,11 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Service | itis', function(hooks) { +module('Unit | Service | itis', function (hooks) { setupTest(hooks); // Replace this with your real tests. - test('it exists', function(assert) { + test('it exists', function (assert) { let service = this.owner.lookup('service:itis'); assert.ok(service); }); diff --git a/tests/unit/services/jsonvalidator-test.js b/tests/unit/services/jsonvalidator-test.js index 270311f0f..01a660465 100644 --- a/tests/unit/services/jsonvalidator-test.js +++ b/tests/unit/services/jsonvalidator-test.js @@ -1,36 +1,39 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Service | jsonvalidator', function(hooks) { +module('Unit | Service | jsonvalidator', function (hooks) { setupTest(hooks); test('test jsonapi validation', function (assert) { var service = this.owner.lookup('service:jsonvalidator'); var obj = { - "data": [{ - "id": "8ke11eu1", - "attributes": { - "profile": "full", - "json": "{}", - "date-updated": "2016-09-16T22:08:04.425Z" + data: [ + { + id: '8ke11eu1', + attributes: { + profile: 'full', + json: '{}', + 'date-updated': '2016-09-16T22:08:04.425Z', + }, + type: 'records', + meta: { + title: 'ytr', + export: true, + }, }, - "type": "records", - "meta": { - "title": "ytr", - "export": true - } - }, { - "id": "spt9cadc", - "attributes": { - "json": "{}", - "date-updated": "2016-09-16T22:08:11.080Z" + { + id: 'spt9cadc', + attributes: { + json: '{}', + 'date-updated': '2016-09-16T22:08:11.080Z', + }, + type: 'contacts', + meta: { + title: 'ewrrrrrrrrrrrrrr', + export: true, + }, }, - "type": "contacts", - "meta": { - "title": "ewrrrrrrrrrrrrrr", - "export": true - } - }] + ], }; assert.ok(service.validator.validate('jsonapi', obj)); diff --git a/tests/unit/services/keycloak-test.js b/tests/unit/services/keycloak-test.js index 262259b58..5162f8e66 100644 --- a/tests/unit/services/keycloak-test.js +++ b/tests/unit/services/keycloak-test.js @@ -1,11 +1,11 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Service | keycloak', function(hooks) { +module('Unit | Service | keycloak', function (hooks) { setupTest(hooks); // Replace this with your real tests. - test('it exists', function(assert) { + test('it exists', function (assert) { let service = this.owner.lookup('service:keycloak'); assert.ok(service); }); diff --git a/tests/unit/services/keyword-test.js b/tests/unit/services/keyword-test.js index 6544190e3..43cc21202 100644 --- a/tests/unit/services/keyword-test.js +++ b/tests/unit/services/keyword-test.js @@ -1,11 +1,11 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Service | keyword', function(hooks) { +module('Unit | Service | keyword', function (hooks) { setupTest(hooks); // Replace this with your real tests. - test('it exists', function(assert) { + test('it exists', function (assert) { let service = this.owner.lookup('service:keyword'); assert.ok(service); }); diff --git a/tests/unit/services/mdjson-test.js b/tests/unit/services/mdjson-test.js index 8bc740d71..971949322 100644 --- a/tests/unit/services/mdjson-test.js +++ b/tests/unit/services/mdjson-test.js @@ -1,11 +1,11 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Service | mdjson', function(hooks) { +module('Unit | Service | mdjson', function (hooks) { setupTest(hooks); // Replace this with your real tests. - test('it exists', function(assert) { + test('it exists', function (assert) { let service = this.owner.lookup('service:mdjson'); assert.ok(service); }); diff --git a/tests/unit/services/patch-test.js b/tests/unit/services/patch-test.js index b04fee4f2..768b62acf 100644 --- a/tests/unit/services/patch-test.js +++ b/tests/unit/services/patch-test.js @@ -1,11 +1,11 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Service | patch', function(hooks) { +module('Unit | Service | patch', function (hooks) { setupTest(hooks); // Replace this with your real tests. - test('it exists', function(assert) { + test('it exists', function (assert) { let service = this.owner.lookup('service:patch'); assert.ok(service); }); diff --git a/tests/unit/services/profile-test.js b/tests/unit/services/profile-test.js index 107fe3c5c..3053f81ed 100644 --- a/tests/unit/services/profile-test.js +++ b/tests/unit/services/profile-test.js @@ -1,11 +1,11 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Service | profile', function(hooks) { +module('Unit | Service | profile', function (hooks) { setupTest(hooks); // Replace this with your real tests. - test('it exists', function(assert) { + test('it exists', function (assert) { var service = this.owner.lookup('service:profile'); assert.ok(service); }); diff --git a/tests/unit/services/publish-test.js b/tests/unit/services/publish-test.js index 5529feaf1..e1fb8dc0b 100644 --- a/tests/unit/services/publish-test.js +++ b/tests/unit/services/publish-test.js @@ -1,11 +1,11 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Service | publish', function(hooks) { +module('Unit | Service | publish', function (hooks) { setupTest(hooks); // Replace this with your real tests. - test('it exists', function(assert) { + test('it exists', function (assert) { let service = this.owner.lookup('service:publish'); assert.ok(service); }); diff --git a/tests/unit/services/schemas-test.js b/tests/unit/services/schemas-test.js index ab3f48f94..e9c8a441c 100644 --- a/tests/unit/services/schemas-test.js +++ b/tests/unit/services/schemas-test.js @@ -1,11 +1,11 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Service | schemas', function(hooks) { +module('Unit | Service | schemas', function (hooks) { setupTest(hooks); // Replace this with your real tests. - test('it exists', function(assert) { + test('it exists', function (assert) { let service = this.owner.lookup('service:schemas'); assert.ok(service); }); diff --git a/tests/unit/services/settings-test.js b/tests/unit/services/settings-test.js index a6732b405..6dafa15af 100644 --- a/tests/unit/services/settings-test.js +++ b/tests/unit/services/settings-test.js @@ -1,7 +1,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Service | settings', function(hooks) { +module('Unit | Service | settings', function (hooks) { setupTest(hooks); // Replace this with your real tests. diff --git a/tests/unit/services/slider-test.js b/tests/unit/services/slider-test.js index fcc52ac78..d29cbf9fe 100644 --- a/tests/unit/services/slider-test.js +++ b/tests/unit/services/slider-test.js @@ -1,11 +1,11 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Service | slider', function(hooks) { +module('Unit | Service | slider', function (hooks) { setupTest(hooks); // Replace this with your real tests. - test('it exists', function(assert) { + test('it exists', function (assert) { let service = this.owner.lookup('service:slider'); assert.ok(service); }); diff --git a/tests/unit/services/spotlight-test.js b/tests/unit/services/spotlight-test.js index aa78a77b2..ced969092 100644 --- a/tests/unit/services/spotlight-test.js +++ b/tests/unit/services/spotlight-test.js @@ -1,11 +1,11 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Service | spotlight', function(hooks) { +module('Unit | Service | spotlight', function (hooks) { setupTest(hooks); // Replace this with your real tests. - test('it exists', function(assert) { + test('it exists', function (assert) { let service = this.owner.lookup('service:spotlight'); assert.ok(service); }); diff --git a/tests/unit/transforms/json-test.js b/tests/unit/transforms/json-test.js index c18aa0f6c..0957d3e94 100644 --- a/tests/unit/transforms/json-test.js +++ b/tests/unit/transforms/json-test.js @@ -1,22 +1,25 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Transform | json', function(hooks) { +module('Unit | Transform | json', function (hooks) { setupTest(hooks); test('it deserialized', function (assert) { let transform = this.owner.lookup('transform:json'); let obj = transform.deserialize('{"foo":"bar"}'); - assert.equal(obj.get('foo'),"bar"); + assert.equal(obj.get('foo'), 'bar'); assert.equal(Object.keys(obj)[0], 'foo'); assert.equal(Object.keys(obj).length, 1); }); test('it serialized', function (assert) { let transform = this.owner.lookup('transform:json'); - assert.equal(transform.serialize({ - foo: 'bar' - }), '{"foo":"bar"}'); + assert.equal( + transform.serialize({ + foo: 'bar', + }), + '{"foo":"bar"}', + ); }); }); diff --git a/tests/unit/utils/config-test.js b/tests/unit/utils/config-test.js index 96f234415..015728a25 100644 --- a/tests/unit/utils/config-test.js +++ b/tests/unit/utils/config-test.js @@ -1,9 +1,9 @@ import config from 'mdeditor/utils/config'; import { module, test } from 'qunit'; -module('Unit | Utility | config', function() { +module('Unit | Utility | config', function () { // Replace this with your real tests. - test('it works', function(assert) { + test('it works', function (assert) { let result = config.name; assert.equal(result, 'ScienceBase'); }); diff --git a/tests/unit/utils/md-interpolate-test.js b/tests/unit/utils/md-interpolate-test.js index f47e6f163..f2a2376d6 100644 --- a/tests/unit/utils/md-interpolate-test.js +++ b/tests/unit/utils/md-interpolate-test.js @@ -2,19 +2,19 @@ import { interpolate, parseArgs } from 'mdeditor/utils/md-interpolate'; import { module, test } from 'qunit'; module('Unit | Utility | md-interpolate', function () { - // Replace this with your real tests. test('it works', function (assert) { - assert.expect(2) + assert.expect(2); let note = - "The attribute ${value1} has an associated domain: ${value2}." + 'The attribute ${value1} has an associated domain: ${value2}.'; let result = interpolate(note, { value1: 'foo', value2: 'bar' }); - assert.equal(result, - 'The attribute foo has an associated domain: bar.' - ); + assert.equal( + result, + 'The attribute foo has an associated domain: bar.', + ); - let result2 = parseArgs(note) + let result2 = parseArgs(note); assert.deepEqual(result2, ['value1', 'value2']); }); }); diff --git a/tests/unit/utils/md-object-test.js b/tests/unit/utils/md-object-test.js index 8952bcf59..f0fac975d 100644 --- a/tests/unit/utils/md-object-test.js +++ b/tests/unit/utils/md-object-test.js @@ -2,7 +2,6 @@ import mdObject from 'mdeditor/utils/md-object'; import { module, test } from 'qunit'; module('Unit | Utility | md-object', function () { - // Replace this with your real tests. test('it works', function (assert) { assert.equal(mdObject.isEmpty({}), true); diff --git a/tests/unit/utils/sb-tree-node-test.js b/tests/unit/utils/sb-tree-node-test.js index 48b6d357c..721620d04 100644 --- a/tests/unit/utils/sb-tree-node-test.js +++ b/tests/unit/utils/sb-tree-node-test.js @@ -1,13 +1,13 @@ import sbTreeNode from 'mdeditor/utils/sb-tree-node'; import { module, test } from 'qunit'; -module('Unit | Utility | sb tree node', function() { - test('it works', function(assert) { +module('Unit | Utility | sb tree node', function () { + test('it works', function (assert) { assert.expect(2); let result = sbTreeNode.create({ _record: { - recordId: 'theid' + recordId: 'theid', }, //config: this.get('config') }); diff --git a/tests/unit/validators/array-required-test.js b/tests/unit/validators/array-required-test.js index a74a2cfca..9f8c2c672 100644 --- a/tests/unit/validators/array-required-test.js +++ b/tests/unit/validators/array-required-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Validator | array-required', function(hooks) { +module('Unit | Validator | array-required', function (hooks) { setupTest(hooks); - test('it works', function(assert) { + test('it works', function (assert) { var validator = this.owner.lookup('validator:array-required'); assert.ok(validator); }); diff --git a/tests/unit/validators/array-valid-test.js b/tests/unit/validators/array-valid-test.js index 6b5284049..1bff2c56c 100644 --- a/tests/unit/validators/array-valid-test.js +++ b/tests/unit/validators/array-valid-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Validator | array-valid', function(hooks) { +module('Unit | Validator | array-valid', function (hooks) { setupTest(hooks); - test('it works', function(assert) { + test('it works', function (assert) { var validator = this.owner.lookup('validator:array-valid'); assert.ok(validator); }); diff --git a/yarn.lock b/yarn.lock index ce6db4d5a..4d2b3513b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -321,7 +321,7 @@ "@babel/helper-create-class-features-plugin" "^7.18.6" "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-proposal-decorators@^7.13.5", "@babel/plugin-proposal-decorators@^7.16.7", "@babel/plugin-proposal-decorators@^7.20.13": +"@babel/plugin-proposal-decorators@^7.13.5", "@babel/plugin-proposal-decorators@^7.16.7", "@babel/plugin-proposal-decorators@^7.20.13", "@babel/plugin-proposal-decorators@^7.21.0": version "7.24.1" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.24.1.tgz#bab2b9e174a2680f0a80f341f3ec70f809f8bb4b" integrity sha512-zPEvzFijn+hRvJuX2Vu3KbEBN39LN3f7tW3MQO2LsIs57B26KU+kUc82BdAktS1VCM6libzh45eKGI65lg0cpA== From ea4f62e0074091b23d847aeedd3eec9d303d6beb Mon Sep 17 00:00:00 2001 From: dvonanderson Date: Mon, 29 Apr 2024 09:33:10 -0400 Subject: [PATCH 14/16] Phase 1 of refactoring `route-actions` --- app/pods/contacts/controller.js | 49 ++++ app/pods/contacts/route.js | 48 ---- app/pods/contacts/template.hbs | 7 +- app/pods/dictionaries/controller.js | 42 +++ app/pods/dictionaries/route.js | 39 --- app/pods/dictionaries/template.hbs | 6 +- app/pods/error/template.hbs | 5 +- app/pods/export/controller.js | 154 ++++++++++ app/pods/export/route.js | 366 ++++++++++++------------ app/pods/export/template.hbs | 31 +- app/pods/record/show/index/template.hbs | 1 + app/pods/records/controller.js | 40 +++ app/pods/records/route.js | 38 --- app/pods/records/template.hbs | 12 +- app/utils/md-fix-liability-typo.js | 41 +++ 15 files changed, 539 insertions(+), 340 deletions(-) create mode 100644 app/pods/contacts/controller.js create mode 100644 app/pods/dictionaries/controller.js create mode 100644 app/pods/export/controller.js create mode 100644 app/pods/records/controller.js create mode 100644 app/utils/md-fix-liability-typo.js diff --git a/app/pods/contacts/controller.js b/app/pods/contacts/controller.js new file mode 100644 index 000000000..b7555dc8a --- /dev/null +++ b/app/pods/contacts/controller.js @@ -0,0 +1,49 @@ +import Controller from '@ember/controller'; +import { action } from '@ember/object'; +import { inject as service } from '@ember/service'; + +export default class ContactsController extends Controller { + @service slider; + + columns = [ + { + propertyName: 'title', + title: 'Title2', + }, + { + propertyName: 'defaultOrganizationName', + title: 'Organization', + }, + { + propertyName: 'json.electronicMailAddress.firstObject', + title: 'E-mail', + }, + { + propertyName: 'contactId', + title: 'ID', + isHidden: true, + }, + { + propertyName: 'type', + title: 'Contact Type', + filterWithSelect: true, + }, + ]; + + @action + getColumns() { + return this.columns; + } + + @action + showSlider(rec, evt) { + let slider = this.slider; + + evt.stopPropagation(); + this.errorTarget = rec; + slider.fromName = 'md-slider-error'; + slider.toggleSlider(true); + + return false; + } +} diff --git a/app/pods/contacts/route.js b/app/pods/contacts/route.js index e79dca684..9880774d2 100644 --- a/app/pods/contacts/route.js +++ b/app/pods/contacts/route.js @@ -1,55 +1,7 @@ import Route from '@ember/routing/route'; -import { inject as service } from '@ember/service'; - -const columns = [ - { - propertyName: 'title', - title: 'Title', - }, - { - propertyName: 'defaultOrganizationName', - title: 'Organization', - }, - { - propertyName: 'json.electronicMailAddress.firstObject', - title: 'E-mail', - }, - { - propertyName: 'contactId', - title: 'ID', - isHidden: true, - }, - { - propertyName: 'type', - title: 'Contact Type', - filterWithSelect: true, - }, -]; export default Route.extend({ - store: service(), - slider: service(), model() { - //return this.store.peekAll('contact'); return this.modelFor('application').findBy('modelName', 'contact'); }, - - columns: columns, - - actions: { - getColumns() { - return this.columns; - }, - - showSlider(rec, evt) { - let slider = this.slider; - - evt.stopPropagation(); - this.controller.set('errorTarget', rec); - slider.set('fromName', 'md-slider-error'); - slider.toggleSlider(true); - - return false; - }, - }, }); diff --git a/app/pods/contacts/template.hbs b/app/pods/contacts/template.hbs index c315cbfc5..05ca615ca 100644 --- a/app/pods/contacts/template.hbs +++ b/app/pods/contacts/template.hbs @@ -3,13 +3,10 @@ {{else}} diff --git a/app/pods/dictionaries/controller.js b/app/pods/dictionaries/controller.js new file mode 100644 index 000000000..37cf54e28 --- /dev/null +++ b/app/pods/dictionaries/controller.js @@ -0,0 +1,42 @@ +import Controller from '@ember/controller'; +import { action } from '@ember/object'; +import { inject as service } from '@ember/service'; + +const columns = [ + { + propertyName: 'title', + title: 'Title', + }, + { + propertyName: 'dictionaryId', + title: 'ID', + isHidden: true, + }, + { + propertyName: 'json.dataDictionary.subject', + title: 'Subject', + }, +]; + +export default class DictionariesController extends Controller { + @service slider; + + columns = columns; + + @action + getColumns() { + return this.columns; + } + + @action + showSlider(rec, evt) { + let slider = this.slider; + + evt.stopPropagation(); + this.errorTarget = rec; + slider.fromName = 'md-slider-error'; + slider.toggleSlider(true); + + return false; + } +} diff --git a/app/pods/dictionaries/route.js b/app/pods/dictionaries/route.js index b33bdd57d..5899fdb96 100644 --- a/app/pods/dictionaries/route.js +++ b/app/pods/dictionaries/route.js @@ -1,46 +1,7 @@ import Route from '@ember/routing/route'; -import { inject as service } from '@ember/service'; - -const columns = [ - { - propertyName: 'title', - title: 'Title', - }, - { - propertyName: 'dictionaryId', - title: 'ID', - isHidden: true, - }, - { - propertyName: 'json.dataDictionary.subject', - title: 'Subject', - }, -]; export default Route.extend({ - store: service(), - slider: service(), model() { - //return this.store.peekAll('contact'); return this.modelFor('application').findBy('modelName', 'dictionary'); }, - - columns: columns, - - actions: { - getColumns() { - return this.columns; - }, - - showSlider(rec, evt) { - let slider = this.slider; - - evt.stopPropagation(); - this.controller.set('errorTarget', rec); - slider.set('fromName', 'md-slider-error'); - slider.toggleSlider(true); - - return false; - }, - }, }); diff --git a/app/pods/dictionaries/template.hbs b/app/pods/dictionaries/template.hbs index 4f98480ef..17c091e24 100644 --- a/app/pods/dictionaries/template.hbs +++ b/app/pods/dictionaries/template.hbs @@ -4,17 +4,17 @@ {{else}}

      No Dictionaries found. - {{fa-icon 'plus'}} + Create a Dictionary

      diff --git a/app/pods/error/template.hbs b/app/pods/error/template.hbs index 8312d28c9..88927ebbe 100644 --- a/app/pods/error/template.hbs +++ b/app/pods/error/template.hbs @@ -1,5 +1,8 @@
      diff --git a/app/pods/record/show/index/template.hbs b/app/pods/record/show/index/template.hbs index 7ea3b2233..c11d59f08 100644 --- a/app/pods/record/show/index/template.hbs +++ b/app/pods/record/show/index/template.hbs @@ -3,6 +3,7 @@

      {{fa-icon this.model.icon class='text-muted'}} + Viewing Record: {{this.model.title}} diff --git a/app/pods/records/controller.js b/app/pods/records/controller.js new file mode 100644 index 000000000..d4ef63798 --- /dev/null +++ b/app/pods/records/controller.js @@ -0,0 +1,40 @@ +import Controller from '@ember/controller'; +import { action } from '@ember/object'; +import { inject as service } from '@ember/service'; + +export default class RecordsController extends Controller { + @service slider; + + columns = [ + { + propertyName: 'title', + title: 'Title', + }, + { + propertyName: 'defaultType', + title: 'Resource Type', + filterWithSelect: true, + }, + { + propertyName: 'recordId', + title: 'ID', + }, + ]; + + @action + getColumns() { + return this.columns; + } + + @action + showSlider(rec, evt) { + let slider = this.slider; + + evt.stopPropagation(); + this.errorTarget = rec; + slider.fromName = 'md-slider-error'; + slider.toggleSlider(true); + + return false; + } +} diff --git a/app/pods/records/route.js b/app/pods/records/route.js index a3f59fbfd..e8e3adf28 100644 --- a/app/pods/records/route.js +++ b/app/pods/records/route.js @@ -1,45 +1,7 @@ import Route from '@ember/routing/route'; -import { inject as service } from '@ember/service'; - -const columns = [ - { - propertyName: 'title', - title: 'Title', - }, - { - propertyName: 'defaultType', - title: 'Resource Type', - filterWithSelect: true, - }, - { - propertyName: 'recordId', - title: 'ID', - }, -]; export default Route.extend({ - slider: service(), model() { - //return this.store.peekAll('contact'); return this.modelFor('application').findBy('modelName', 'record'); }, - - columns: columns, - - actions: { - getColumns() { - return this.columns; - }, - - showSlider(rec, evt) { - let slider = this.slider; - - evt.stopPropagation(); - this.controller.set('errorTarget', rec); - slider.set('fromName', 'md-slider-error'); - slider.toggleSlider(true); - - return false; - }, - }, }); diff --git a/app/pods/records/template.hbs b/app/pods/records/template.hbs index 4e8092f3d..9c7cbe569 100644 --- a/app/pods/records/template.hbs +++ b/app/pods/records/template.hbs @@ -1,15 +1,15 @@ -

      {{fa-icon 'file-text'}} Metadata Records

      +

      + + Metadata Records +

      {{#if this.model.length}} {{else}} diff --git a/app/utils/md-fix-liability-typo.js b/app/utils/md-fix-liability-typo.js new file mode 100644 index 000000000..9f9e6d359 --- /dev/null +++ b/app/utils/md-fix-liability-typo.js @@ -0,0 +1,41 @@ +let fixExportLiabilityTypo = async (store) => { + let records = store.peekAll('record'); + let promises = records.map((record) => { + let jsonData = record.json; + if (jsonData) { + let metadata = jsonData.metadata; + if (metadata) { + let resourceDistribution = metadata.resourceDistribution; + if (resourceDistribution && resourceDistribution.length > 0) { + let distribution = resourceDistribution[0]; + let liabilityStatement = distribution.liablityStatement; + if (liabilityStatement) { + distribution.liabilityStatement = liabilityStatement; + delete distribution.liablityStatement; + jsonData.metadata = metadata; + return record.save(); + } + } + } + } + }).filter(Boolean); + return Promise.all(promises); +} + +let fixImportLiabilityTypo = (files) => { + files.records?.forEach((record) => { + const jsonObject = record.attributes.json; + if (jsonObject.metadata && jsonObject.metadata.resourceDistribution) { + jsonObject.metadata.resourceDistribution.forEach((distribution) => { + if (distribution.liablityStatement) { + distribution.liabilityStatement = distribution.liablityStatement; + delete distribution.liablityStatement; + } + }); + record.attributes.json = jsonObject; + } + }); +} + + +export { fixExportLiabilityTypo, fixImportLiabilityTypo } From 6388e459ead26fa412b672db6d5deb4a95d4ba17 Mon Sep 17 00:00:00 2001 From: dvonanderson Date: Wed, 15 May 2024 12:24:28 -0400 Subject: [PATCH 15/16] remove ember-font-awesome for flight-icons --- app/models/dictionary.js | 2 +- .../control/md-alert-table/component.js | 2 +- .../control/md-alert-table/template.hbs | 4 +- .../control/md-breadcrumbs-item/component.js | 21 +++ .../control/md-breadcrumbs-item/template.hbs | 16 ++ .../control/md-button-confirm/template.hbs | 2 +- .../components/control/md-button/component.js | 7 - .../components/control/md-button/template.hbs | 35 +++-- .../control/md-contact-title/template.hbs | 2 +- .../control/md-crud-buttons/template.hbs | 8 +- .../control/md-definition/template.hbs | 2 +- .../control/md-edit-table/component.js | 2 +- .../control/md-import-csv/template.hbs | 17 ++- .../control/md-indicator/related/template.hbs | 28 ++-- .../control/md-indicator/template.hbs | 4 +- .../control/md-infotip/component.js | 9 -- .../control/md-infotip/template.hbs | 2 +- .../components/control/md-itis/template.hbs | 7 +- .../control/md-json-button/template.hbs | 4 +- .../control/md-json-viewer/template.hbs | 21 ++- .../components/control/md-modal/template.hbs | 5 +- .../buttons/custom/template.hbs | 6 +- .../buttons/filter/template.hbs | 2 +- .../md-record-table/buttons/show/template.hbs | 2 +- .../md-record-table/buttons/template.hbs | 6 +- .../control/md-repo-link/template.hbs | 5 +- .../control/md-spinner/template.hbs | 2 +- .../components/control/md-status/template.hbs | 14 +- .../control/subbar-citation/template.hbs | 4 +- .../control/subbar-importcsv/template.hbs | 4 +- .../control/subbar-link/template.hbs | 10 +- .../control/subbar-spatial/template.hbs | 19 ++- .../components/input/md-datetime/component.js | 16 +- .../components/input/md-datetime/template.hbs | 8 +- .../input/md-input-confirm/template.hbs | 6 +- .../components/input/md-input/template.hbs | 12 +- .../components/input/md-select/template.hbs | 6 +- .../components/input/md-textarea/template.hbs | 17 ++- .../components/layout/md-card/component.js | 2 +- .../components/layout/md-card/template.hbs | 26 ++-- .../components/layout/md-footer/template.hbs | 3 +- .../layout/md-nav-main/template.hbs | 10 +- .../layout/md-nav-sidebar/template.hbs | 19 ++- .../layout/md-object-container/template.hbs | 5 +- .../components/layout/md-slider/template.hbs | 2 +- .../nav/dictionary/nav-main/template.hbs | 8 - .../layout/nav/record/nav-main/template.hbs | 2 +- app/pods/components/md-help/template.hbs | 10 +- .../components/row-buttons/template.hbs | 14 +- .../md-models-table/themes/bootstrap3.js | 38 ++--- app/pods/components/md-translate/template.hbs | 34 +++-- .../models-table/row-expand/template.hbs | 2 +- .../models-table/table-body/template.hbs | 2 +- .../object/md-array-table/template.hbs | 39 ++--- .../object/md-associated/template.hbs | 82 ++++++----- .../object/md-citation/preview/template.hbs | 4 +- .../object/md-dataquality/template.hbs | 3 +- .../object/md-distributor/template.hbs | 2 +- .../object/md-documentation/template.hbs | 2 +- .../object/md-extent/spatial/template.hbs | 10 +- .../object/md-identifier/template.hbs | 2 +- .../object/md-keyword-citation/template.hbs | 2 +- .../object/md-keyword-list/template.hbs | 72 ++++----- .../object/md-lineage/preview/template.hbs | 10 +- .../object/md-object-table/template.hbs | 19 +-- .../object/md-online-resource/template.hbs | 2 +- .../components/object/md-profile/template.hbs | 3 +- .../object/md-quality-report/template.hbs | 8 +- .../object/md-raster/attrgroup/template.hbs | 25 ++-- .../components/object/md-schema/template.hbs | 4 +- .../md-standalone-quality-report/template.hbs | 3 +- .../classification/taxon/template.hbs | 10 +- .../object/md-taxonomy/template.hbs | 4 +- .../object/md-transfer/template.hbs | 2 +- app/pods/contact/show/edit/template.hbs | 2 +- app/pods/contact/show/index/template.hbs | 8 +- app/pods/contacts/template.hbs | 7 +- app/pods/dashboard/template.hbs | 30 ++-- app/pods/dictionaries/template.hbs | 7 +- .../show/edit/entity/import/template.hbs | 48 +++--- app/pods/dictionary/show/index/template.hbs | 13 +- app/pods/error/template.hbs | 4 +- app/pods/export/template.hbs | 6 +- app/pods/import/route.js | 6 +- app/pods/import/template.hbs | 69 +++------ app/pods/not-found/template.hbs | 2 +- app/pods/publish/index/template.hbs | 14 +- app/pods/record/nav/template.hbs | 9 +- .../record/show/edit/constraint/template.hbs | 2 +- .../record/show/edit/coverages/template.hbs | 2 +- .../record/show/edit/dictionary/template.hbs | 7 +- .../distributor/index/template.hbs | 2 +- .../distributor/transfer/template.hbs | 2 +- .../show/edit/distribution/index/template.hbs | 2 +- .../show/edit/extent/index/template.hbs | 2 +- .../show/edit/funding/index/template.hbs | 2 +- app/pods/record/show/edit/grid/template.hbs | 2 +- .../show/edit/keywords/index/template.hbs | 11 +- .../record/show/edit/main/index/template.hbs | 2 +- .../show/edit/metadata/index/template.hbs | 2 +- .../spatial/raster/attribute/template.hbs | 2 +- .../show/edit/taxonomy/index/template.hbs | 2 +- app/pods/record/show/index/template.hbs | 11 +- app/pods/record/show/nav/template.hbs | 4 +- app/pods/records/template.hbs | 2 +- app/pods/settings/main/template.hbs | 58 ++++---- app/pods/settings/profile/index/template.hbs | 5 +- app/pods/settings/profile/manage/template.hbs | 2 +- app/pods/settings/profile/template.hbs | 5 +- app/pods/settings/validation/template.hbs | 5 +- app/pods/translate/template.hbs | 2 +- app/routes/application.js | 4 +- app/services/icon.js | 58 ++++---- app/styles/_button.scss | 9 ++ app/styles/_card_custom.scss | 1 + app/styles/_filepicker.scss | 4 +- app/styles/_modal.scss | 9 ++ app/styles/_navbars.scss | 7 + app/styles/_sidebar_nav.scss | 14 +- app/templates/application.hbs | 6 +- config/environment.js | 18 +-- lib/ember-json-tree/addon/styles/_search.scss | 2 +- .../templates/components/tree-branch.hbs | 48 +++--- .../addon/templates/components/tree-label.hbs | 8 +- .../addon/templates/components/tree-leaf.hbs | 115 +++++++++------ .../templates/components/tree-search.hbs | 74 ++++++---- .../addon/templates/components/tree-view.hbs | 16 +- .../addon/components/leaflet-table.js | 18 +-- .../templates/components/feature-form.hbs | 65 +++++---- .../templates/components/leaflet-draw.hbs | 2 +- .../components/leaflet-table-row-actions.hbs | 21 ++- .../templates/components/leaflet-table.hbs | 138 +++++++++++------- .../components/leaflet-table/actions.hbs | 21 ++- .../components/leaflet-table/row.hbs | 11 +- .../templates/components/sb-publisher.hbs | 60 ++++---- .../templates/components/sb-settings.hbs | 8 +- .../templates/components/sb-tree-label.hbs | 100 ++++++++----- .../addon/templates/publish/sciencebase.hbs | 4 +- package.json | 20 +-- tests/helpers/create-dictionary.js | 2 +- .../md-indicator/related/component-test.js | 3 +- .../components/row-buttons/component-test.js | 3 +- tests/unit/services/breadcrumbs-test.js | 12 ++ yarn.lock | 36 +++-- 144 files changed, 1151 insertions(+), 951 deletions(-) create mode 100644 app/pods/components/control/md-breadcrumbs-item/component.js create mode 100644 app/pods/components/control/md-breadcrumbs-item/template.hbs create mode 100644 tests/unit/services/breadcrumbs-test.js diff --git a/app/models/dictionary.js b/app/models/dictionary.js index ccc38a630..148994b5e 100644 --- a/app/models/dictionary.js +++ b/app/models/dictionary.js @@ -91,7 +91,7 @@ export default Model.extend(Validations, Copyable, { title: alias('json.dataDictionary.citation.title'), dictionaryId: alias('json.dictionaryId'), - icon: 'book', + icon: 'docs', /** * A list of schema errors return by the validator. diff --git a/app/pods/components/control/md-alert-table/component.js b/app/pods/components/control/md-alert-table/component.js index e038c3eba..be28ec570 100644 --- a/app/pods/components/control/md-alert-table/component.js +++ b/app/pods/components/control/md-alert-table/component.js @@ -15,7 +15,7 @@ export default Component.extend({ return this.required ? 'danger' : 'info'; }), tipIcon: computed('required', function () { - return this.required ? 'exclamation-circle' : 'info-circle'; + return this.required ? 'alert-circle' : 'info'; }), actions: { addItem(target) { diff --git a/app/pods/components/control/md-alert-table/template.hbs b/app/pods/components/control/md-alert-table/template.hbs index b80180319..e1d75c18d 100644 --- a/app/pods/components/control/md-alert-table/template.hbs +++ b/app/pods/components/control/md-alert-table/template.hbs @@ -6,7 +6,7 @@ class='btn btn-success btn-md' {{action 'addItem' this.target}} > - {{fa-icon 'plus'}} + Add {{singularize this.title}} @@ -15,7 +15,7 @@

      {{#if this.tipMessage}} - {{fa-icon this.tipIcon}} + + {{/in-element}} +{{/each}} \ No newline at end of file diff --git a/app/pods/components/control/md-button-confirm/template.hbs b/app/pods/components/control/md-button-confirm/template.hbs index d25f0b6f0..737b829c6 100644 --- a/app/pods/components/control/md-button-confirm/template.hbs +++ b/app/pods/components/control/md-button-confirm/template.hbs @@ -1,5 +1,5 @@ {{#liquid-if this.isShowingConfirm use='toDown'}} - + Confirm {{else}} {{yield}} diff --git a/app/pods/components/control/md-button/component.js b/app/pods/components/control/md-button/component.js index a7e903b65..cc6e2ffd1 100644 --- a/app/pods/components/control/md-button/component.js +++ b/app/pods/components/control/md-button/component.js @@ -11,13 +11,6 @@ export default Component.extend({ * @constructor */ - tagName: 'button', - classNames: ['md-button btn'], - classNameBindings: ['responsive:md-btn-responsive'], - attributeBindings: ['type', 'disabled'], - type: 'button', - disabled: null, - /** * Button text * diff --git a/app/pods/components/control/md-button/template.hbs b/app/pods/components/control/md-button/template.hbs index 436c35514..1e8c6699d 100644 --- a/app/pods/components/control/md-button/template.hbs +++ b/app/pods/components/control/md-button/template.hbs @@ -1,16 +1,23 @@ -{{#if (has-block)}} - {{yield}} -{{else}} - {{#if this.icon}} - {{fa-icon this.icon spin=this.iconSpin}} + +{ \ No newline at end of file diff --git a/app/pods/components/control/md-contact-title/template.hbs b/app/pods/components/control/md-contact-title/template.hbs index ec7e88b20..b920d06a8 100644 --- a/app/pods/components/control/md-contact-title/template.hbs +++ b/app/pods/components/control/md-contact-title/template.hbs @@ -1,4 +1,4 @@ -{{#if hasBlock}} +{{#if (has-block)}} {{yield this.contact}} {{else}} {{if this.contact this.contact.title this.default}} diff --git a/app/pods/components/control/md-crud-buttons/template.hbs b/app/pods/components/control/md-crud-buttons/template.hbs index f2734d8b4..2f054d70a 100644 --- a/app/pods/components/control/md-crud-buttons/template.hbs +++ b/app/pods/components/control/md-crud-buttons/template.hbs @@ -10,7 +10,7 @@ class='btn btn-lg btn-success' disabled={{if this.model.hasDirtyHash false true}} > - + Save {{/if}} {{#if this.showCopy}} {{/if}} @@ -36,7 +36,7 @@ @tooltip='Permanently delete this record?' @tipClass='danger' > - + Delete {{/if}} diff --git a/app/pods/components/control/md-definition/template.hbs b/app/pods/components/control/md-definition/template.hbs index d478ec74c..7f07716df 100644 --- a/app/pods/components/control/md-definition/template.hbs +++ b/app/pods/components/control/md-definition/template.hbs @@ -1,6 +1,6 @@
      {{if this.title this.title '--'}}
      - {{#if hasBlock}} + {{#if (has-block)}} {{yield}} {{else}} {{#if this.text}} diff --git a/app/pods/components/control/md-edit-table/component.js b/app/pods/components/control/md-edit-table/component.js index c9c415481..0280ed6e2 100644 --- a/app/pods/components/control/md-edit-table/component.js +++ b/app/pods/components/control/md-edit-table/component.js @@ -57,7 +57,7 @@ export default Component.extend({ { title: 'Edit', type: 'success', - icon: 'pencil', + icon: 'pencil-tool', // action: this.actions.editRow, action: 'editRow', target: this, diff --git a/app/pods/components/control/md-import-csv/template.hbs b/app/pods/components/control/md-import-csv/template.hbs index 8ee9f7fe1..513ea2a55 100644 --- a/app/pods/components/control/md-import-csv/template.hbs +++ b/app/pods/components/control/md-import-csv/template.hbs @@ -1,8 +1,9 @@ {{#if this.isProcessing}} -

      {{fa-icon 'spinner' spin=true}} +

      + Processing...

      @@ -26,10 +27,10 @@ @accept='.csv,.txt' @readAs='readAsText' > - + {{!--

      Import from Online URL

      @@ -45,9 +46,9 @@ diff --git a/app/pods/components/control/md-indicator/related/template.hbs b/app/pods/components/control/md-indicator/related/template.hbs index 5e7dadead..4cac9f0d5 100644 --- a/app/pods/components/control/md-indicator/related/template.hbs +++ b/app/pods/components/control/md-indicator/related/template.hbs @@ -1,16 +1,16 @@ -{{#control/md-indicator - title=this.title - icon=this.icon - type=this.type - note=this.note - event=this.event - values=this.values - route=this.route - model=this.model - linkText=this.linkText - popoverHideDelay=this.popoverHideDelay - popperContainer=this.popperContainer -}} +

      {{#if this.route}} @@ -29,4 +29,4 @@ {{/if}} {{/if}}

      -{{/control/md-indicator}} \ No newline at end of file +
      \ No newline at end of file diff --git a/app/pods/components/control/md-indicator/template.hbs b/app/pods/components/control/md-indicator/template.hbs index 114b66640..045d35286 100644 --- a/app/pods/components/control/md-indicator/template.hbs +++ b/app/pods/components/control/md-indicator/template.hbs @@ -1,4 +1,4 @@ -{{fa-icon this.icon fixedWidth=true}} + {{#if this.icon}} - {{fa-icon this.icon}} + {{/if}} {{this.title}}

      diff --git a/app/pods/components/control/md-infotip/component.js b/app/pods/components/control/md-infotip/component.js index ca37ba891..d222ec53e 100644 --- a/app/pods/components/control/md-infotip/component.js +++ b/app/pods/components/control/md-infotip/component.js @@ -21,15 +21,6 @@ export default Component.extend({ * @required */ - /** - * Tooltip text - * - * @property tip - * @type {String} - * @default 'info-circle' - */ - icon: 'info-circle', - /** * Tooltip delay * diff --git a/app/pods/components/control/md-infotip/template.hbs b/app/pods/components/control/md-infotip/template.hbs index 8a86c6d46..46f42dcc7 100644 --- a/app/pods/components/control/md-infotip/template.hbs +++ b/app/pods/components/control/md-infotip/template.hbs @@ -1,3 +1,3 @@ -{{fa-icon this.icon}} + {{yield}} \ No newline at end of file diff --git a/app/pods/components/control/md-itis/template.hbs b/app/pods/components/control/md-itis/template.hbs index ac5e5e127..5992d2de9 100644 --- a/app/pods/components/control/md-itis/template.hbs +++ b/app/pods/components/control/md-itis/template.hbs @@ -32,9 +32,9 @@ disabled={{if this.searchString false true}} > {{#if this.isLoading}} - {{fa-icon 'spinner' spin=true}} + {{else}} - {{fa-icon 'search'}} + -
      {{fa-icon 'exclamation-triangle'}} +
      + No taxa matched the search. Please try again.

      {{/if}} diff --git a/app/pods/components/control/md-json-button/template.hbs b/app/pods/components/control/md-json-button/template.hbs index 492ebc3b3..f9adafaee 100644 --- a/app/pods/components/control/md-json-button/template.hbs +++ b/app/pods/components/control/md-json-button/template.hbs @@ -1,7 +1,7 @@ -{{#if hasBlock}} +{{#if (has-block)}} {{yield}} {{else}} - + {{this.text}} {{/if}} diff --git a/app/pods/components/control/md-json-viewer/template.hbs b/app/pods/components/control/md-json-viewer/template.hbs index 2f27dee4d..b782ef7fc 100644 --- a/app/pods/components/control/md-json-viewer/template.hbs +++ b/app/pods/components/control/md-json-viewer/template.hbs @@ -14,10 +14,7 @@ class='md-modal-close' aria-label='Close' > - - - - +
      @@ -34,13 +31,17 @@ class='btn btn-primary' {{action 'expand'}} title='Expand All' - >{{fa-icon 'plus'}} + > + + + > + +
      {{fa-icon 'search'}} + > + + + > + +
      diff --git a/app/pods/components/control/md-modal/template.hbs b/app/pods/components/control/md-modal/template.hbs index 588904c4e..aba9e5c80 100644 --- a/app/pods/components/control/md-modal/template.hbs +++ b/app/pods/components/control/md-modal/template.hbs @@ -16,10 +16,7 @@ class='md-modal-close' aria-label='Close' > - - - - +
      {{yield}} diff --git a/app/pods/components/control/md-record-table/buttons/custom/template.hbs b/app/pods/components/control/md-record-table/buttons/custom/template.hbs index e07879105..f4f72af8a 100644 --- a/app/pods/components/control/md-record-table/buttons/custom/template.hbs +++ b/app/pods/components/control/md-record-table/buttons/custom/template.hbs @@ -1,10 +1,10 @@ -{{#with this.column.buttonConfig as |c|}} +{{#let this.column.buttonConfig as |c|}} -{{/with}} \ No newline at end of file +{{/let}} \ No newline at end of file diff --git a/app/pods/components/control/md-record-table/buttons/filter/template.hbs b/app/pods/components/control/md-record-table/buttons/filter/template.hbs index 3fd1eb068..49472f278 100644 --- a/app/pods/components/control/md-record-table/buttons/filter/template.hbs +++ b/app/pods/components/control/md-record-table/buttons/filter/template.hbs @@ -3,7 +3,7 @@ @class='btn btn-danger btn-block' @onConfirm={{action 'deleteSelected' this.selectedItems}} > - + Delete Selected {{/if}} \ No newline at end of file diff --git a/app/pods/components/control/md-record-table/buttons/show/template.hbs b/app/pods/components/control/md-record-table/buttons/show/template.hbs index 4e7a8dd88..7af31a94d 100644 --- a/app/pods/components/control/md-record-table/buttons/show/template.hbs +++ b/app/pods/components/control/md-record-table/buttons/show/template.hbs @@ -3,6 +3,6 @@ @model={{this.record.id}} class='btn btn-sm btn-info' > - {{fa-icon 'eye'}} + Show \ No newline at end of file diff --git a/app/pods/components/control/md-record-table/buttons/template.hbs b/app/pods/components/control/md-record-table/buttons/template.hbs index f3aae8d16..310d1fd11 100644 --- a/app/pods/components/control/md-record-table/buttons/template.hbs +++ b/app/pods/components/control/md-record-table/buttons/template.hbs @@ -4,7 +4,7 @@ class='btn btn-sm btn-success' onclick={{action 'editItem' this.record}} > - {{fa-icon 'pencil'}} + Edit - + Delete {{!-- {{#control/md-button-modal class="btn btn-sm btn-danger" message="

      Do you really want to delete this contact?

      Be sure this contact is not referenced by a metadata record or dictionary or it's deletion may cause those records to fail validation." onConfirm=(route-action "deleteItem" record)}} - Delete + Delete {{/control/md-button-modal}} --}} {{/if}} \ No newline at end of file diff --git a/app/pods/components/control/md-spinner/template.hbs b/app/pods/components/control/md-spinner/template.hbs index 020fc2c60..3f1b3d6f1 100644 --- a/app/pods/components/control/md-spinner/template.hbs +++ b/app/pods/components/control/md-spinner/template.hbs @@ -1,4 +1,4 @@ -{{fa-icon 'spinner' pulse=true size=this.size}} +

      {{this.text}}

      diff --git a/app/pods/components/control/md-status/template.hbs b/app/pods/components/control/md-status/template.hbs index a81f2dd35..f591472f7 100644 --- a/app/pods/components/control/md-status/template.hbs +++ b/app/pods/components/control/md-status/template.hbs @@ -1,11 +1,6 @@ {{#if this.model.hasDirtyHash}} - {{fa-icon - 'exclamation-circle' - class=(if - this.isBtn (concat 'btn btn-danger btn-' this.btnSize) 'md-error' - ) - }} + - {{fa-icon - 'exclamation-triangle' - class=(if - this.isBtn (concat 'btn btn-warning btn-' this.btnSize) 'md-warning' - ) - }} + - {{fa-icon 'check'}} + Select a Record - {{fa-icon this.icon}} + {{this.text}} {{yield}}
      \ No newline at end of file diff --git a/app/pods/components/control/subbar-importcsv/template.hbs b/app/pods/components/control/subbar-importcsv/template.hbs index 31e8e7729..8796acd02 100644 --- a/app/pods/components/control/subbar-importcsv/template.hbs +++ b/app/pods/components/control/subbar-importcsv/template.hbs @@ -3,13 +3,13 @@ class='btn btn-lg btn-info btn-block md-btn-responsive' {{action 'doImport' target=this.actionContext}} > - {{fa-icon 'sign-in'}} + Do Import {{yield}} \ No newline at end of file diff --git a/app/pods/components/control/subbar-link/template.hbs b/app/pods/components/control/subbar-link/template.hbs index bf7ae31db..b20f07573 100644 --- a/app/pods/components/control/subbar-link/template.hbs +++ b/app/pods/components/control/subbar-link/template.hbs @@ -12,7 +12,10 @@ btn-block md-btn-responsive' click={{this.click}} disabled={{this.disabled}} - >{{fa-icon this.clickButtonIcon}} {{this.clickTxt}} + > + + {{this.clickTxt}} + {{/if}} {{#if this.route}} @@ -23,7 +26,10 @@ this.btnType ' btn-block md-btn-responsive' }} - > {{fa-icon this.icon}} {{this.text}} + > + + {{this.text}} + {{/if}} {{yield}} diff --git a/app/pods/components/control/subbar-spatial/template.hbs b/app/pods/components/control/subbar-spatial/template.hbs index 27a84b65c..66877540a 100644 --- a/app/pods/components/control/subbar-spatial/template.hbs +++ b/app/pods/components/control/subbar-spatial/template.hbs @@ -9,22 +9,31 @@ class='btn btn-lg btn-success btn-block md-btn-responsive' {{action 'zoomAll'}} > - {{fa-icon 'search'}} + Zoom All + > + + Import Features + + > + + Export Features + {{fa-icon 'times'}} Delete All + > + + Delete All +

      {{yield}} \ No newline at end of file diff --git a/app/pods/components/input/md-datetime/component.js b/app/pods/components/input/md-datetime/component.js index 0e63b3620..bc499cab3 100644 --- a/app/pods/components/input/md-datetime/component.js +++ b/app/pods/components/input/md-datetime/component.js @@ -109,14 +109,14 @@ export default Component.extend({ calendarIcons: computed(function () { return { - time: 'fa fa-clock-o', - date: 'fa fa-calendar', - up: 'fa fa-chevron-up', - down: 'fa fa-chevron-down', - previous: 'fa fa-angle-double-left', - next: 'fa fa-angle-double-right', - close: 'fa fa-times', - clear: 'fa fa-trash', + time: 'clock', + date: 'calendar', + up: 'chevron-up', + down: 'chevron-down', + previous: 'chevron-left', + next: 'chevron-right', + close: 'x', + clear: 'trash', }; }), }); diff --git a/app/pods/components/input/md-datetime/template.hbs b/app/pods/components/input/md-datetime/template.hbs index 014733b35..799e187df 100644 --- a/app/pods/components/input/md-datetime/template.hbs +++ b/app/pods/components/input/md-datetime/template.hbs @@ -7,8 +7,8 @@ @date={{this._date}} @format={{this.format}} @extraFormats={{this.extraFormats}} - @dateIcon='fa fa-calendar' - @timeIcon='fa fa-clock-o' + @dateIcon='calendar' + @timeIcon='clock' @icons={{this.calendarIcons}} @placeholder={{this.placeholder}} @showClear={{this.showClear}} @@ -21,7 +21,7 @@ {{#if this.showErrorMessage}} - {{fa-icon 'exclamation-circle'}} + - {{fa-icon 'exclamation-triangle'}} + {{#if this.disabled}} @@ -17,7 +17,7 @@ @class='btn btn-warning' @onConfirm={{action 'allowEdit'}} > - {{fa-icon 'pencil'}} + Edit {{#if this.confirmTip}} diff --git a/app/pods/components/input/md-input/template.hbs b/app/pods/components/input/md-input/template.hbs index 23326304e..63eb605f3 100644 --- a/app/pods/components/input/md-input/template.hbs +++ b/app/pods/components/input/md-input/template.hbs @@ -13,17 +13,17 @@ placeholder={{this.placeholder}} required={{this.required}} @type={{this.type}} - @step={{this.step}} - @maxlength={{this.maxlength}} + step={{this.step}} + maxlength={{this.maxlength}} class={{this.inputClass}} - @disabled={{this.disabled}} - @change={{this.change}} + disabled={{this.disabled}} + @change{{this.change}} /> {{#if this.showErrorMessage}} - {{fa-icon 'exclamation-circle'}} + - {{fa-icon 'exclamation-triangle'}} + {{#if this.icon}} {{#if code.icon}} - + {{/if}} {{/if}} {{code.codeName}} @@ -43,7 +43,7 @@ {{#if this.showErrorMessage}} - {{fa-icon 'exclamation-circle'}} + - {{fa-icon 'exclamation-triangle'}} + - {{fa-icon (if this.isExpanded 'caret-up' 'caret-down')}} - {{this.label}} - + + {{this.label}} {{else}} {{/if}} @@ -18,10 +19,10 @@ @value={{this.value}} placeholder={{this.placeholder}} required={{this.required}} - @maxlength={{this.maxlength}} + maxlength={{this.maxlength}} @autoresize={{this.autoresize}} @didInsertElement={{this._didInsertArea}} - @rows={{this.rows}} + rows={{this.rows}} @max-rows={{this.maxrows}} @max-width={{this.maxwidth}} @max-height={{this.maxheight}} @@ -30,7 +31,7 @@ {{#if this.showErrorMessage}} - {{fa-icon 'exclamation-circle'}} + - {{fa-icon 'exclamation-triangle'}} + - {{fa-icon this.titleIcon}} + {{this.title}} @@ -35,14 +35,14 @@ {{/if}} {{else}} {{#if this.titleIcon}} - {{fa-icon this.titleIcon}} + {{/if}} {{this.title}} {{/if}} {{#if this.maximizable}} - - {{fa-icon this.windowIcon size=1 click=(action 'toggleFullScreen')}} - + + + {{/if}}
      {{#if this.btnText}} @@ -52,7 +52,7 @@ class='btn btn-{{if this.btnClass this.btnClass "primary"}} btn-xs' {{action this.btnAction}} > - {{fa-icon this.btnIcon}} + {{this.btnText}} {{/if}} @@ -61,19 +61,17 @@ @class='btn btn-danger btn-xs' @onConfirm={{action this.deleteAction}} > - {{fa-icon 'times'}} + Delete {{/if}} {{#if this.spotlightEnabled}} - + /> {{/if}}
      diff --git a/app/pods/components/layout/md-footer/template.hbs b/app/pods/components/layout/md-footer/template.hbs index 202e5799c..2170608cc 100644 --- a/app/pods/components/layout/md-footer/template.hbs +++ b/app/pods/components/layout/md-footer/template.hbs @@ -4,7 +4,8 @@ href='https://github.com/adiwg/mdEditor/issues/new' target='_blank' rel='noopener noreferrer' - >{{fa-icon 'github'}} + > + Report Issue
    • - + Dashboard
    • - + Export
    • - + Import
    • - + Publish
    • - + Settings ditorv{{this.version}} - {{fa-icon - (if this.showHelp 'list' 'question-circle') - }} + + +
    • {{#liquid-if this.showHelp use='fade' enableGrowth=false}} @@ -15,7 +15,7 @@
    • {{#each this.items as |class|}} - {{#with class.meta as |meta|}} + {{#let class.meta as |meta|}}
      - {{fa-icon 'plus'}} + - +

      @@ -69,10 +69,9 @@ @disabledWhen={{record.isNew}} @draggable='false' > - {{fa-icon 'pencil'}} +

      - {{!-- --}} {{else}} - + {{/if}} {{record.title}} @@ -97,7 +96,7 @@
      - {{/with}} + {{/let}} {{/each}}
    • diff --git a/app/pods/components/layout/md-object-container/template.hbs b/app/pods/components/layout/md-object-container/template.hbs index 47eadc869..44d999cd9 100644 --- a/app/pods/components/layout/md-object-container/template.hbs +++ b/app/pods/components/layout/md-object-container/template.hbs @@ -3,7 +3,6 @@ @@ -23,7 +22,7 @@ class='btn btn-success' {{action this.editItem this.index}} > - {{fa-icon 'pencil'}} + Edit {{/if}} @@ -32,7 +31,7 @@ @class='btn btn-danger' @onConfirm={{action this.deleteItem this.index}} > - {{fa-icon 'times'}} + Delete {{/if}} diff --git a/app/pods/components/layout/md-slider/template.hbs b/app/pods/components/layout/md-slider/template.hbs index cd25b1454..713575abf 100644 --- a/app/pods/components/layout/md-slider/template.hbs +++ b/app/pods/components/layout/md-slider/template.hbs @@ -5,7 +5,7 @@ {{action 'toggleVisibility'}} > Close - {{fa-icon 'caret-right'}} +
      diff --git a/app/pods/components/layout/nav/dictionary/nav-main/template.hbs b/app/pods/components/layout/nav/dictionary/nav-main/template.hbs index b74dc7d46..0dc71fafc 100644 --- a/app/pods/components/layout/nav/dictionary/nav-main/template.hbs +++ b/app/pods/components/layout/nav/dictionary/nav-main/template.hbs @@ -1,11 +1,3 @@ -{{! TODO }} -{{!--
    • - {{#link-to "dictionary.show.translate" model}} - - Translate - {{ember-tooltip text="Translate" side="bottom" tooltipClass="ember-tooltip md-nav-tip"}} - {{/link-to}} -
    • --}}
    • diff --git a/app/pods/components/layout/nav/record/nav-main/template.hbs b/app/pods/components/layout/nav/record/nav-main/template.hbs index d3bc15949..e6340823b 100644 --- a/app/pods/components/layout/nav/record/nav-main/template.hbs +++ b/app/pods/components/layout/nav/record/nav-main/template.hbs @@ -1,6 +1,6 @@
    • - + Translate - + Tour @@ -29,18 +29,18 @@ rel='noopener noreferrer' class='external btn btn-lg btn-success btn-block md-btn-responsive' > - {{fa-icon 'book'}} + View User Manual

      {{! TODO: Once we subscribe service that will allow us to mail out updates, we will need to update this. }} - {{!--

      + {{!

      If you would like to receive announcements regarding the mdEditor, join our email list!

      - {{fa-icon "envelope"}} Join Email list + Join Email list -

      --}} +

      }} {{yield}} \ No newline at end of file diff --git a/app/pods/components/md-models-table/components/row-buttons/template.hbs b/app/pods/components/md-models-table/components/row-buttons/template.hbs index f9640b0d2..2179675fd 100644 --- a/app/pods/components/md-models-table/components/row-buttons/template.hbs +++ b/app/pods/components/md-models-table/components/row-buttons/template.hbs @@ -10,7 +10,7 @@ target=btn.target }} > - + {{btn.title}} {{else}} @@ -25,7 +25,7 @@ target=btn.target }} > - {{fa-icon btn.icon}} + {{btn.title}} {{/if}} @@ -34,7 +34,7 @@
      {{#if this.record.validations.isInvalid}} - {{fa-icon 'exclamation-circle' fixedWidth=true}} + {{else if this.record.validations.hasWarnings}} - {{fa-icon 'exclamation-triangle' fixedWidth=true}} + - {{fa-icon badge.icon fixedWidth=true}} + {{/if}} {{/each}} - {{!-- {{else}} - - - --}}
      \ No newline at end of file diff --git a/app/pods/components/md-models-table/themes/bootstrap3.js b/app/pods/components/md-models-table/themes/bootstrap3.js index 227a92c78..9f0875847 100644 --- a/app/pods/components/md-models-table/themes/bootstrap3.js +++ b/app/pods/components/md-models-table/themes/bootstrap3.js @@ -1,25 +1,25 @@ import Theme from 'ember-models-table/themes/bootstrap3'; export default Theme.extend({ - 'sort-asc': 'fa fa-caret-up', - 'sort-desc': 'fa fa-caret-down', - 'column-visible': 'fa fa-check-square-o', - 'column-hidden': 'fa fa-square-o', - 'nav-first': 'fa fa-fast-backward', - 'nav-prev': 'fa fa-backward', - 'nav-next': 'fa fa-forward', - 'nav-last': 'fa fa-fast-forward', - caret: 'fa fa-caret-down', - 'select-row': 'fa fa-fw fa-check-square-o', - 'deselect-row': 'fa fa-fw fa-square-o', - 'select-all-rows': 'fa fa-fw fa-check-square-o', - 'deselect-all-rows': 'fa fa-fw fa-square-o', - 'expand-row': 'fa fa-plus', - 'expand-all-rows': 'fa fa-plus', - 'collapse-row': 'fa fa-minus', - 'collapse-all-rows': 'fa fa-minus', - clearFilterIcon: 'fa fa-times form-control-feedback', - clearAllFiltersIcon: 'fa fa-times', + 'sort-asc': 'sort-asc', + 'sort-desc': 'sort-desc', + 'column-visible': 'check-square', + 'column-hidden': 'square', + 'nav-first': 'skip-backward', + 'nav-prev': 'rewind', + 'nav-next': 'fast-forward', + 'nav-last': 'skip-forward', + caret: 'chevron-down', + 'select-row': 'check-square', + 'deselect-row': 'square', + 'select-all-rows': 'check-square-', + 'deselect-all-rows': 'square', + 'expand-row': 'plus', + 'expand-all-rows': 'plus', + 'collapse-row': 'minus', + 'collapse-all-rows': 'minus', + clearFilterIcon: 'x form-control-feedback', + clearAllFiltersIcon: 'x', sortGroupedPropertyBtn: 'btn', input: 'form-control', inputGroup: 'input-group', diff --git a/app/pods/components/md-translate/template.hbs b/app/pods/components/md-translate/template.hbs index 4eb6ef986..cc4c12667 100644 --- a/app/pods/components/md-translate/template.hbs +++ b/app/pods/components/md-translate/template.hbs @@ -63,7 +63,7 @@ class='btn btn-lg btn-primary pull-right' disabled={{if this.writer false true}} > - {{fa-icon 'retweet'}} + Translate @@ -87,29 +87,33 @@ }} @scroll={{false}} @maximizable={{true}} - @titleIcon='exclamation' + @titleIcon='plus' @spotlightEnabled={{false}} @collapsible={{true}} >

      {{this.errorSubTitle}}

      +{{else}} @@ -28,9 +59,10 @@
      @@ -50,7 +82,7 @@ class='btn btn-xs btn-success' {{action 'addKeyword' this.model.keyword}} > - {{fa-icon 'plus'}} + Add Keyword
      -{{else}} - -
        - {{#each this.model.keyword as |keyword|}} -
      • - - {{keyword.keyword}} -
      • - {{else}} -
      • Add some keywords.
      • - {{/each}} - {{#if this.editThesaurus}} -
      • - -
      • - {{/if}} -
      -{{/unless}} +{{/if}} {{yield}} \ No newline at end of file diff --git a/app/pods/components/object/md-lineage/preview/template.hbs b/app/pods/components/object/md-lineage/preview/template.hbs index 5ffe8cac6..6bc39b703 100644 --- a/app/pods/components/object/md-lineage/preview/template.hbs +++ b/app/pods/components/object/md-lineage/preview/template.hbs @@ -29,7 +29,10 @@ role='button' class='plain-link' {{action (toggle 'showMore' this)}} - > {{fa-icon 'caret-up'}} Less + > + + Less +

      {{else}}

      @@ -38,7 +41,10 @@ role='button' class='plain-link' {{action (toggle 'showMore' this)}} - >{{fa-icon 'caret-down'}} More + > + + More +

      {{/if}} {{/if}} diff --git a/app/pods/components/object/md-object-table/template.hbs b/app/pods/components/object/md-object-table/template.hbs index 50ed386c7..50da320e6 100644 --- a/app/pods/components/object/md-object-table/template.hbs +++ b/app/pods/components/object/md-object-table/template.hbs @@ -32,7 +32,7 @@ class='btn btn-xs btn-info pull-right {{if this.editing "hidden"}}' {{action 'addItem' this.items}} > - {{fa-icon 'plus'}} + Add @@ -61,7 +61,7 @@ class='btn btn-xs btn-info' {{action 'cancelEdit'}} > - + OK @@ -160,12 +160,9 @@ ) }} > - {{fa-icon 'pencil'}} + {{if this.editBtnText this.editBtnText 'Edit'}} - {{!-- --}} - + Delete @@ -203,7 +200,7 @@ > {{#if item.validations.isInvalid}} - {{fa-icon 'exclamation-circle' fixedWidth=true}} + - {{fa-icon 'plus'}} + {{this.buttonText}} @@ -251,7 +248,7 @@ class='btn btn-sm btn-info {{if this.editing "hidden"}}' {{action 'addItem' this.items}} > - {{fa-icon 'plus'}} + Add {{this.header}} diff --git a/app/pods/components/object/md-online-resource/template.hbs b/app/pods/components/object/md-online-resource/template.hbs index df5f6b169..4d5be5cd5 100644 --- a/app/pods/components/object/md-online-resource/template.hbs +++ b/app/pods/components/object/md-online-resource/template.hbs @@ -25,7 +25,7 @@ @readAs='readAsDataURL' > diff --git a/app/pods/components/object/md-profile/template.hbs b/app/pods/components/object/md-profile/template.hbs index b5deee297..92d548385 100644 --- a/app/pods/components/object/md-profile/template.hbs +++ b/app/pods/components/object/md-profile/template.hbs @@ -6,7 +6,8 @@ }} {{yield}} --}} {{#if (v-get this.record 'config' 'isInvalid')}} - -{{else}} - -{{/unless}} \ No newline at end of file +{{/if}} \ No newline at end of file diff --git a/app/pods/components/object/md-schema/template.hbs b/app/pods/components/object/md-schema/template.hbs index 01171878a..52c062e82 100644 --- a/app/pods/components/object/md-schema/template.hbs +++ b/app/pods/components/object/md-schema/template.hbs @@ -59,9 +59,9 @@ {{else}} @@ -43,18 +43,18 @@
      - {{fa-icon 'times'}} + Delete @@ -126,7 +126,7 @@ {{action 'toggleEditing' this.elementId}} > {{!-- diff --git a/app/pods/components/object/md-taxonomy/template.hbs b/app/pods/components/object/md-taxonomy/template.hbs index b67d69499..92cbcc79d 100644 --- a/app/pods/components/object/md-taxonomy/template.hbs +++ b/app/pods/components/object/md-taxonomy/template.hbs @@ -15,7 +15,7 @@ class='btn btn-md btn-success btn-block md-btn-responsive' {{action 'editCollection' this.index}} > - {{fa-icon 'pencil'}} + Edit Collection
      @@ -24,7 +24,7 @@ class='btn btn-md btn-danger btn-block md-btn-responsive' {{action 'deleteCollection' this.index}} > - {{fa-icon 'times'}} + Delete Collection
      diff --git a/app/pods/components/object/md-transfer/template.hbs b/app/pods/components/object/md-transfer/template.hbs index a616f53f6..79085fde7 100644 --- a/app/pods/components/object/md-transfer/template.hbs +++ b/app/pods/components/object/md-transfer/template.hbs @@ -82,7 +82,7 @@ diff --git a/app/pods/contact/show/edit/template.hbs b/app/pods/contact/show/edit/template.hbs index a2ac06b0e..5c8a75778 100644 --- a/app/pods/contact/show/edit/template.hbs +++ b/app/pods/contact/show/edit/template.hbs @@ -5,7 +5,7 @@ {{this.model.json.contactId}} {{!-- {{#if model.hasDirtyHash}} - {{fa-icon "exclamation-circle"}} + {{ember-tooltip text="This record has been modified!" side="right" tooltipClass="ember-tooltip md-tooltip danger" }} diff --git a/app/pods/contact/show/index/template.hbs b/app/pods/contact/show/index/template.hbs index 2f729edb2..52c03a5b2 100644 --- a/app/pods/contact/show/index/template.hbs +++ b/app/pods/contact/show/index/template.hbs @@ -8,7 +8,7 @@ alt='Responsive image' /> {{else}} - {{fa-icon this.model.icon class='text-muted'}} + {{/if}} Viewing @@ -17,7 +17,7 @@ {{this.model.title}} {{!-- {{#if model.hasDirtyHash}} - {{fa-icon "exclamation-circle"}} + {{ember-tooltip text='This record has been modified!' side="right" tooltipClass="ember-tooltip md-tooltip danger" }} @@ -263,12 +263,12 @@ @model={{this.model.id}} class='btn btn-lg btn-success' > - {{fa-icon 'pencil'}} + Edit
      - {{fa-icon 'list'}} + Show List {{fa-icon 'users'}} Contacts +

      + + Contacts +

      {{#if this.model.length}}

      No Contacts found. - {{fa-icon 'plus'}} + Create a Contact

      diff --git a/app/pods/dashboard/template.hbs b/app/pods/dashboard/template.hbs index d039b22c3..dc3b39913 100644 --- a/app/pods/dashboard/template.hbs +++ b/app/pods/dashboard/template.hbs @@ -7,11 +7,11 @@ >
      -
      - {{fa-icon 'file-text' size=5}} +
      +
      -
      -
      {{this.model.[0].length}}
      +
      +
      {{get this.model '0.length'}}
      Records
      @@ -22,7 +22,7 @@ View Records
      - {{fa-icon 'arrow-right' size=1}} +
      @@ -36,11 +36,11 @@ >
      -
      - {{fa-icon 'users' size=5}} +
      +
      -
      -
      {{this.model.[1].length}}
      +
      +
      {{get this.model '1.length'}}
      Contacts
      @@ -51,7 +51,7 @@ View Contacts
      - {{fa-icon 'arrow-right' size=1}} +
      @@ -65,11 +65,11 @@ >
      -
      - {{fa-icon 'book' size=5}} +
      +
      -
      -
      {{this.model.[2].length}}
      +
      +
      {{get this.model '2.length'}}
      Dictionaries
      @@ -80,7 +80,7 @@ View Dictionaries
      - {{fa-icon 'arrow-right' size=1}} +
      diff --git a/app/pods/dictionaries/template.hbs b/app/pods/dictionaries/template.hbs index 17c091e24..ea3d95408 100644 --- a/app/pods/dictionaries/template.hbs +++ b/app/pods/dictionaries/template.hbs @@ -1,4 +1,7 @@ -

      {{fa-icon 'book'}} Dictionaries

      +

      + + Dictionaries +

      {{#if this.model.length}} @@ -14,7 +17,7 @@

      No Dictionaries found. - + Create a Dictionary

      diff --git a/app/pods/dictionary/show/edit/entity/import/template.hbs b/app/pods/dictionary/show/edit/entity/import/template.hbs index 301512e77..9cab04c09 100644 --- a/app/pods/dictionary/show/edit/entity/import/template.hbs +++ b/app/pods/dictionary/show/edit/entity/import/template.hbs @@ -1,21 +1,5 @@

      Generate Entity from CSV

      -{{#unless this.processed}} - - -{{else}} +{{#if this.processed}}
      @@ -100,7 +84,7 @@ {{#if row.isNumber}} ({{round row.min decimals=2}}/{{round row.max decimals=2}}) @@ -128,7 +112,7 @@
      -{{/unless}} +{{else}} + + +{{/if}} {{#if this.processed}}

      - {{fa-icon 'book' class='text-muted'}} - + Viewing Dictionary: {{this.model.title}} @@ -18,7 +17,7 @@ @btnText='Edit' @btnClass='success' @btnAction={{route-action 'linkTo' 'dictionary.show.edit'}} - @btnIcon='pencil' + @btnIcon='pencil-tool' @data-spy='Main' >

      {{/if}} {{/each}} diff --git a/app/pods/import/route.js b/app/pods/import/route.js index 0c376f670..80ae63e25 100644 --- a/app/pods/import/route.js +++ b/app/pods/import/route.js @@ -48,10 +48,10 @@ export default Route.extend(ScrollTo, { this._super(...arguments); this.icons = { - records: 'file', - dictionaries: 'book', + records: 'file-text', + dictionaries: 'docs', contacts: 'users', - settings: 'gear', + settings: 'settings' }; }, setupController(controller, model) { diff --git a/app/pods/import/template.hbs b/app/pods/import/template.hbs index 012662a76..4071c9fc6 100644 --- a/app/pods/import/template.hbs +++ b/app/pods/import/template.hbs @@ -24,10 +24,17 @@ @readAs='readAsText' >
    - {{else}} - {{fa-icon 'spinner' spin=true}} - Translating to mdJSON. Please wait... -
    - {{!-- Using {{apiURL}} for translation. --}} - {{/unless}} + {{/if}}
    @@ -63,9 +65,9 @@ {{action (route-action 'readFromUri')}} > {{#if this.isLoading}} - {{fa-icon 'spinner' spin=true}} + {{else}} - {{fa-icon 'cloud-download'}} + {{/if}} Import @@ -74,39 +76,6 @@ {{/unless}} {{#each-in this.model.files as |key item|}} - {{!--
    -
    {{capitalize key}}
    -
    - - - - - - - - - - - - {{#each item as |row rowindex|}} - - - - - - - - {{/each}} - -
    IdTitleLast Updated
    {{input type="checkbox" name="isChecked" checked=row.meta.export}}{{row.id}}{{row.meta.title}}{{if row.attributes.date-updated row.attributes.date-updated "unknown"}} -
    - -
    -
    -
    -
    --}} {{fa-icon 'arrow-left'}} Close Preview + > + + Close Preview + {{else if this.model.files}} + > + + Click to Import Data + + > Cancel Import
    -

    {{fa-icon 'exclamation-triangle'}} 404 Not Found: {{this.path}}

    +

    404 Not Found: {{this.path}}

    Perhaps you have visited a link that has changed, or a record that no longer exists. diff --git a/app/pods/publish/index/template.hbs b/app/pods/publish/index/template.hbs index 64e41af05..7210647d7 100644 --- a/app/pods/publish/index/template.hbs +++ b/app/pods/publish/index/template.hbs @@ -12,12 +12,10 @@ alt='{{catalog.title}} icon' /> {{else}} - {{fa-icon - (if catalog.icon catalog.icon 'list-alt') - size='5' - fixedWidth=true + {{/if}}

    @@ -30,8 +28,10 @@ {{else}}
    -

    {{fa-icon 'exclamation-triangle'}} - No Services Available!

    +

    + + No Services Available! +

    No publication services have been configured. Contact your technical support for assistance.

    diff --git a/app/pods/record/nav/template.hbs b/app/pods/record/nav/template.hbs index 57296bbf0..5ee2a5f16 100644 --- a/app/pods/record/nav/template.hbs +++ b/app/pods/record/nav/template.hbs @@ -1,6 +1,6 @@
  • - + Translate
  • -{{!--
  • - {{#link-to "publish"}} - - Publish - {{ember-tooltip text="Publish" side="bottom" tooltipClass="ember-tooltip md-nav-tip"}} - {{/link-to}} -
  • --}} {{outlet}} \ No newline at end of file diff --git a/app/pods/record/show/edit/constraint/template.hbs b/app/pods/record/show/edit/constraint/template.hbs index 448a456a5..cb6c1272f 100644 --- a/app/pods/record/show/edit/constraint/template.hbs +++ b/app/pods/record/show/edit/constraint/template.hbs @@ -1,5 +1,5 @@
    - + {{outlet}}
    \ No newline at end of file diff --git a/app/pods/record/show/edit/coverages/template.hbs b/app/pods/record/show/edit/coverages/template.hbs index a60b87b9d..077e4ec5e 100644 --- a/app/pods/record/show/edit/coverages/template.hbs +++ b/app/pods/record/show/edit/coverages/template.hbs @@ -10,7 +10,7 @@ >
    - {{fa-icon 'exclamation-triangle' size=2}} +
    Page Under
    Construction
    diff --git a/app/pods/record/show/edit/dictionary/template.hbs b/app/pods/record/show/edit/dictionary/template.hbs index 4bf560d8b..86bf40252 100644 --- a/app/pods/record/show/edit/dictionary/template.hbs +++ b/app/pods/record/show/edit/dictionary/template.hbs @@ -1,6 +1,7 @@
    -

    {{fa-icon 'book'}} +

    + Dictionaries for {{this.parentModel.title}} @@ -39,7 +40,7 @@ @class='btn btn btn-danger pull-right' @onConfirm={{route-action 'remove' item}} > - + Remove

    @@ -68,7 +69,7 @@

    No Dictionaries found. - {{fa-icon 'plus'}} + Create a Dictionary

    diff --git a/app/pods/record/show/edit/distribution/distributor/index/template.hbs b/app/pods/record/show/edit/distribution/distributor/index/template.hbs index a36867ade..1b2708173 100644 --- a/app/pods/record/show/edit/distribution/distributor/index/template.hbs +++ b/app/pods/record/show/edit/distribution/distributor/index/template.hbs @@ -9,7 +9,7 @@ @tipClass='danger' @tipSide='bottom' > - {{fa-icon 'times'}} + Delete diff --git a/app/pods/record/show/edit/distribution/distributor/transfer/template.hbs b/app/pods/record/show/edit/distribution/distributor/transfer/template.hbs index 3eada824e..fefe00a72 100644 --- a/app/pods/record/show/edit/distribution/distributor/transfer/template.hbs +++ b/app/pods/record/show/edit/distribution/distributor/transfer/template.hbs @@ -10,7 +10,7 @@ @tipClass='danger' @tipSide='bottom' > - {{fa-icon 'times'}} + Delete diff --git a/app/pods/record/show/edit/distribution/index/template.hbs b/app/pods/record/show/edit/distribution/index/template.hbs index 17e8e578d..c200c7ec9 100644 --- a/app/pods/record/show/edit/distribution/index/template.hbs +++ b/app/pods/record/show/edit/distribution/index/template.hbs @@ -15,7 +15,7 @@ {{else}}

    No distribution sections found.

    {{/each}} diff --git a/app/pods/record/show/edit/extent/index/template.hbs b/app/pods/record/show/edit/extent/index/template.hbs index 22516dfd0..939616fa4 100644 --- a/app/pods/record/show/edit/extent/index/template.hbs +++ b/app/pods/record/show/edit/extent/index/template.hbs @@ -21,7 +21,7 @@ class='btn btn-lg btn-success' {{action (route-action 'addExtent')}} > - {{fa-icon 'plus'}} + Add Extent {{/each}} diff --git a/app/pods/record/show/edit/funding/index/template.hbs b/app/pods/record/show/edit/funding/index/template.hbs index c69ff9dbd..cbdef3b7d 100644 --- a/app/pods/record/show/edit/funding/index/template.hbs +++ b/app/pods/record/show/edit/funding/index/template.hbs @@ -22,7 +22,7 @@ class='btn btn-lg btn-success' {{action 'addAllocation'}} > - {{fa-icon 'plus'}} + Add Funding Period {{/each}} diff --git a/app/pods/record/show/edit/grid/template.hbs b/app/pods/record/show/edit/grid/template.hbs index a60b87b9d..077e4ec5e 100644 --- a/app/pods/record/show/edit/grid/template.hbs +++ b/app/pods/record/show/edit/grid/template.hbs @@ -10,7 +10,7 @@ >
    - {{fa-icon 'exclamation-triangle' size=2}} +
    Page Under
    Construction
    diff --git a/app/pods/record/show/edit/keywords/index/template.hbs b/app/pods/record/show/edit/keywords/index/template.hbs index 0bc9b927a..461fbf4d7 100644 --- a/app/pods/record/show/edit/keywords/index/template.hbs +++ b/app/pods/record/show/edit/keywords/index/template.hbs @@ -10,11 +10,10 @@ id={{concat 'thesaurus-container-' index}} >
    - {{#with thesaurus.thesaurus.identifier.[0].identifier}} + {{#with (get thesaurus.thesaurus.identifier '0.identifier')}}
    @@ -72,7 +71,7 @@ class='btn btn-success' {{action (route-action 'addThesaurus')}} > - {{fa-icon 'plus'}} + Add Thesaurus {{/each}} diff --git a/app/pods/record/show/edit/main/index/template.hbs b/app/pods/record/show/edit/main/index/template.hbs index 28afaf4fd..34abd772f 100644 --- a/app/pods/record/show/edit/main/index/template.hbs +++ b/app/pods/record/show/edit/main/index/template.hbs @@ -35,7 +35,7 @@ type='button' {{action (route-action 'editId')}} > - {{fa-icon 'pencil'}} + Edit
    diff --git a/app/pods/record/show/edit/spatial/raster/attribute/template.hbs b/app/pods/record/show/edit/spatial/raster/attribute/template.hbs index 0436e1aa8..86eeccea1 100644 --- a/app/pods/record/show/edit/spatial/raster/attribute/template.hbs +++ b/app/pods/record/show/edit/spatial/raster/attribute/template.hbs @@ -12,7 +12,7 @@ @tipClass='danger' @tipSide='bottom' > - {{fa-icon 'times'}} + Delete diff --git a/app/pods/record/show/edit/taxonomy/index/template.hbs b/app/pods/record/show/edit/taxonomy/index/template.hbs index 798bccd2c..933500756 100644 --- a/app/pods/record/show/edit/taxonomy/index/template.hbs +++ b/app/pods/record/show/edit/taxonomy/index/template.hbs @@ -19,7 +19,7 @@ class='btn btn-success' {{action (route-action 'addCollection')}} > - {{fa-icon 'plus'}} + Add Collection {{/each}} diff --git a/app/pods/record/show/index/template.hbs b/app/pods/record/show/index/template.hbs index c11d59f08..307311e98 100644 --- a/app/pods/record/show/index/template.hbs +++ b/app/pods/record/show/index/template.hbs @@ -2,8 +2,7 @@

    - {{fa-icon this.model.icon class='text-muted'}} - + Viewing Record: {{this.model.title}} @@ -18,7 +17,7 @@ @btnText='Edit' @btnClass='success' @btnAction={{route-action 'linkTo' 'record.show.edit.main'}} - @btnIcon='pencil' + @btnIcon='pencil-tool' >
    @@ -114,7 +113,7 @@ @btnText='Edit' @btnClass='success' @btnAction={{route-action 'linkTo' 'record.show.edit.extent'}} - @btnIcon='pencil' + @btnIcon='pencil-tool' >
    @@ -204,12 +203,12 @@ @model={{this.model.id}} class='btn btn-lg btn-success' > - {{fa-icon 'pencil'}} + Edit
    - {{fa-icon 'list'}} + Show List - + Translate - + Publish

    No Metadata Records found. - {{fa-icon 'plus'}} + Create a Metadata Record

    diff --git a/app/pods/settings/main/template.hbs b/app/pods/settings/main/template.hbs index 7ee75b009..075a202e5 100644 --- a/app/pods/settings/main/template.hbs +++ b/app/pods/settings/main/template.hbs @@ -1,14 +1,14 @@

    - {{#layout/md-wrap data-spy='Version'}} + mdditor Version: {{control/md-repo-link}} - {{/layout/md-wrap}} +

    -{{#layout/md-card title='General Settings' data-spy='General'}} +
    @@ -65,7 +65,7 @@ click=(action (mut this.showStorageModal) true) }} {{control/md-modal - message='

    Are you + message='

    Are you sure?

    Clicking Confirm will delete ALL records in your browser cache. Have you made a backup?' confirm=(route-action 'clearLocalStorage') @@ -84,9 +84,9 @@

    -{{/layout/md-card}} + -{{#layout/md-card title='Defaults' shadow=true}} +
    {{input/md-codelist @@ -162,16 +162,16 @@

    - {{#object/md-array-table - columns='Repository, Collection Title' - value=this.model.repositoryDefaults - plain=true - title='Metadata Repository' - templateClass=this.settings.repositoryTemplate - onChange=(route-action 'save') - data-spy='Metadata Repository' + {{input/md-codelist value=meta.item.repository @@ -192,10 +192,10 @@ change=(route-action 'save') }} - {{/object/md-array-table}} -{{/layout/md-card}} + + -{{#layout/md-card title='Date Settings' data-spy='Dates'}} +
    {{input/md-month date=this.model.fiscalStartMonth @@ -205,25 +205,25 @@ placeholder='Select month.' }}
    -{{/layout/md-card}} +
    -{{#layout/md-card title='Publishing Settings' data-spy='Publishing'}} + {{#each (compute (route-action 'catalogs')) as |catalog|}} - {{#layout/md-card - title=catalog.name - collapsible=true - collapsed=false - shadow=false - class='md-embedded' - }} + {{component catalog.settingsComponent model=this.model.publishOptions save=(route-action 'save') }} - {{/layout/md-card}} + {{/each}} -{{/layout/md-card}} + {{outlet}} {{to-elsewhere diff --git a/app/pods/settings/profile/index/template.hbs b/app/pods/settings/profile/index/template.hbs index df0f9afd1..c69401d94 100644 --- a/app/pods/settings/profile/index/template.hbs +++ b/app/pods/settings/profile/index/template.hbs @@ -24,9 +24,8 @@ {{else if this.profile}} {{#if this.profile.validations.hasWarnings}} -