diff --git a/.bowerrc b/.bowerrc deleted file mode 100644 index 959e169..0000000 --- a/.bowerrc +++ /dev/null @@ -1,4 +0,0 @@ -{ - "directory": "bower_components", - "analytics": false -} diff --git a/.ember-cli b/.ember-cli index ee64cfe..8c1812c 100644 --- a/.ember-cli +++ b/.ember-cli @@ -5,5 +5,11 @@ Setting `disableAnalytics` to true will prevent any data from being sent. */ - "disableAnalytics": false + "disableAnalytics": false, + + /** + Setting `isTypeScriptProject` to true will force the blueprint generators to generate TypeScript + rather than JavaScript by default, when a TypeScript version of a given blueprint is available. + */ + "isTypeScriptProject": false } diff --git a/.eslintignore b/.eslintignore index 701947e..d474a40 100644 --- a/.eslintignore +++ b/.eslintignore @@ -19,4 +19,7 @@ # ember-try /.node_modules.ember-try/ /bower.json.ember-try +/npm-shrinkwrap.json.ember-try /package.json.ember-try +/package-lock.json.ember-try +/yarn.lock.ember-try diff --git a/.eslintrc.js b/.eslintrc.js index ab627f4..ade61fb 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -2,12 +2,15 @@ module.exports = { root: true, - parser: 'babel-eslint', + parser: '@babel/eslint-parser', parserOptions: { - ecmaVersion: 2018, + ecmaVersion: 'latest', sourceType: 'module', - ecmaFeatures: { - legacyDecorators: true, + requireConfigFile: false, + babelOptions: { + plugins: [ + ['@babel/plugin-proposal-decorators', { decoratorsBeforeExport: true }], + ], }, }, plugins: ['ember'], @@ -26,6 +29,7 @@ module.exports = { files: [ './.eslintrc.js', './.prettierrc.js', + './.stylelintrc.js', './.template-lintrc.js', './ember-cli-build.js', './index.js', @@ -41,11 +45,10 @@ module.exports = { browser: false, node: true, }, - plugins: ['node'], - extends: ['plugin:node/recommended'], + extends: ['plugin:n/recommended'], }, { - // Test files: + // test files files: ['tests/**/*-test.{js,ts}'], extends: ['plugin:qunit/recommended'], }, diff --git a/.gitignore b/.gitignore index da389ad..247490b 100644 --- a/.gitignore +++ b/.gitignore @@ -21,9 +21,12 @@ yarn-error.log testem.log # ember-try -.node_modules.ember-try/ -bower.json.ember-try -package.json.ember-try +/.node_modules.ember-try/ +/bower.json.ember-try +/npm-shrinkwrap.json.ember-try +/package.json.ember-try +/package-lock.json.ember-try +/yarn.lock.ember-try -*~ -package-lock.json +# broccoli-debug +/DEBUG/ diff --git a/.jshintrc b/.jshintrc deleted file mode 100644 index d421faa..0000000 --- a/.jshintrc +++ /dev/null @@ -1,32 +0,0 @@ -{ - "predef": [ - "document", - "window", - "-Promise" - ], - "browser": true, - "boss": true, - "curly": true, - "debug": false, - "devel": true, - "eqeqeq": true, - "evil": true, - "forin": false, - "immed": false, - "laxbreak": false, - "newcap": true, - "noarg": true, - "noempty": false, - "nonew": false, - "nomen": false, - "onevar": false, - "plusplus": false, - "regexp": false, - "undef": true, - "sub": true, - "strict": false, - "white": false, - "eqnull": true, - "esversion": 6, - "unused": true -} diff --git a/.npmignore b/.npmignore index f30effe..27849b1 100644 --- a/.npmignore +++ b/.npmignore @@ -14,14 +14,16 @@ /.eslintignore /.eslintrc.js /.git/ +/.github/ /.gitignore /.prettierignore /.prettierrc.js +/.stylelintignore +/.stylelintrc.js /.template-lintrc.js /.travis.yml /.watchmanconfig /bower.json -/config/ember-try.js /CONTRIBUTING.md /ember-cli-build.js /testem.js @@ -33,4 +35,7 @@ # ember-try /.node_modules.ember-try/ /bower.json.ember-try +/npm-shrinkwrap.json.ember-try /package.json.ember-try +/package-lock.json.ember-try +/yarn.lock.ember-try diff --git a/.prettierignore b/.prettierignore index 9221655..4178fd5 100644 --- a/.prettierignore +++ b/.prettierignore @@ -14,8 +14,12 @@ /coverage/ !.* .eslintcache +.lint-todo/ # ember-try /.node_modules.ember-try/ /bower.json.ember-try +/npm-shrinkwrap.json.ember-try /package.json.ember-try +/package-lock.json.ember-try +/yarn.lock.ember-try diff --git a/.prettierrc.js b/.prettierrc.js index 534e6d3..e5f7b6d 100644 --- a/.prettierrc.js +++ b/.prettierrc.js @@ -1,5 +1,12 @@ 'use strict'; module.exports = { - singleQuote: true, + overrides: [ + { + files: '*.{js,ts}', + options: { + singleQuote: true, + }, + }, + ], }; diff --git a/.stylelintignore b/.stylelintignore new file mode 100644 index 0000000..a0cf71c --- /dev/null +++ b/.stylelintignore @@ -0,0 +1,8 @@ +# unconventional files +/blueprints/*/files/ + +# compiled output +/dist/ + +# addons +/.node_modules.ember-try/ diff --git a/.stylelintrc.js b/.stylelintrc.js new file mode 100644 index 0000000..021c539 --- /dev/null +++ b/.stylelintrc.js @@ -0,0 +1,5 @@ +'use strict'; + +module.exports = { + extends: ['stylelint-config-standard', 'stylelint-prettier/recommended'], +}; diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 9b3dfab..0000000 --- a/.travis.yml +++ /dev/null @@ -1,61 +0,0 @@ ---- -language: node_js -node_js: - # we recommend testing addons with the same minimum supported node version as Ember CLI - # so that your addon works for all apps - - "12" - -dist: xenial - -addons: - chrome: stable - -cache: - directories: - - $HOME/.npm - -env: - global: - # See https://git.io/vdao3 for details. - - JOBS=1 - -branches: - only: - - master - # npm version tags - - /^v\d+\.\d+\.\d+/ - -jobs: - fast_finish: true - allow_failures: - - env: EMBER_TRY_SCENARIO=ember-canary - - include: - # runs linting and tests with current locked deps - - stage: "Tests" - name: "Tests" - script: - - npm run lint - - npm run test:ember - - - stage: "Additional Tests" - name: "Floating Dependencies" - install: - - npm install --no-package-lock - script: - - npm run test:ember - - # we recommend new addons test the current and previous LTS - # as well as latest stable release (bonus points to beta/canary) - - env: EMBER_TRY_SCENARIO=ember-lts-3.24 - - env: EMBER_TRY_SCENARIO=ember-lts-3.28 - - env: EMBER_TRY_SCENARIO=ember-release - - env: EMBER_TRY_SCENARIO=ember-beta - - env: EMBER_TRY_SCENARIO=ember-canary - - env: EMBER_TRY_SCENARIO=ember-default-with-jquery - - env: EMBER_TRY_SCENARIO=ember-classic - - env: EMBER_TRY_SCENARIO=embroider-safe - - env: EMBER_TRY_SCENARIO=embroider-optimized - -script: - - node_modules/.bin/ember try:one $EMBER_TRY_SCENARIO diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 0b36c4b..f6eb565 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -22,4 +22,4 @@ * `ember serve` * Visit the dummy application at [http://localhost:4200](http://localhost:4200). -For more information on using ember-cli, visit [https://ember-cli.com/](https://ember-cli.com/). +For more information on using ember-cli, visit [https://cli.emberjs.com/release/](https://cli.emberjs.com/release/). diff --git a/MODULE_REPORT.md b/MODULE_REPORT.md deleted file mode 100644 index cf399c9..0000000 --- a/MODULE_REPORT.md +++ /dev/null @@ -1,56 +0,0 @@ -## Module Report -### Unknown Global - -**Global**: `Ember.Logger` - -**Location**: `tests/dummy/app/controllers/application.js` at line 44 - -```js - actions: { - test(row) { - Ember.Logger.info("Hi, you reached the test action for row: " + JSON.stringify(row)); - }, - menuTest() { -``` - -### Unknown Global - -**Global**: `Ember.Logger` - -**Location**: `tests/dummy/app/controllers/application.js` at line 47 - -```js - }, - menuTest() { - Ember.Logger.info("Hi, you reached the general menu test action"); - }, - selectionTest(selection, datatable) { -``` - -### Unknown Global - -**Global**: `Ember.Logger` - -**Location**: `tests/dummy/app/controllers/application.js` at line 51 - -```js - selectionTest(selection, datatable) { - datatable.clearSelection(); - Ember.Logger.info("Hi, you reached the selection test action for selection: " + JSON.stringify(selection)); - selection.forEach(function(item) { - item.set('age', item.get('age') + 1); -``` - -### Unknown Global - -**Global**: `Ember.Logger` - -**Location**: `tests/dummy/app/controllers/application.js` at line 57 - -```js - }, - clickRow(row) { - Ember.Logger.info("Custom row click action on item " + JSON.stringify(row)); - } - } -``` diff --git a/_config.yml b/_config.yml deleted file mode 100644 index 9da9a02..0000000 --- a/_config.yml +++ /dev/null @@ -1 +0,0 @@ -theme: jekyll-theme-dinky \ No newline at end of file diff --git a/addon/components/data-table-content-body.js b/addon/components/data-table-content-body.js index f143fac..1844215 100644 --- a/addon/components/data-table-content-body.js +++ b/addon/components/data-table-content-body.js @@ -1,3 +1,4 @@ +/* eslint-disable ember/no-actions-hash, ember/no-classic-classes, ember/no-classic-components, ember/no-get, ember/require-tagless-components */ import { set } from '@ember/object'; import { computed } from '@ember/object'; import Component from '@ember/component'; diff --git a/addon/components/data-table-content-header.js b/addon/components/data-table-content-header.js index 7fd2dae..388ab04 100644 --- a/addon/components/data-table-content-header.js +++ b/addon/components/data-table-content-header.js @@ -1,3 +1,4 @@ +/* eslint-disable ember/no-classic-classes, ember/no-classic-components, ember/require-tagless-components */ import { oneWay } from '@ember/object/computed'; import { alias } from '@ember/object/computed'; import Component from '@ember/component'; diff --git a/addon/components/data-table-content.js b/addon/components/data-table-content.js index 7236c2d..3d0cab4 100644 --- a/addon/components/data-table-content.js +++ b/addon/components/data-table-content.js @@ -1,3 +1,4 @@ +/* eslint-disable ember/no-classic-classes, ember/no-classic-components, ember/require-tagless-components */ import Component from '@ember/component'; import { alias } from '@ember/object/computed'; import layout from '../templates/components/data-table-content'; diff --git a/addon/components/data-table-menu-general.js b/addon/components/data-table-menu-general.js index d843ece..f4fdd0f 100644 --- a/addon/components/data-table-menu-general.js +++ b/addon/components/data-table-menu-general.js @@ -1,3 +1,4 @@ +/* eslint-disable ember/no-classic-classes, ember/no-classic-components, ember/require-tagless-components */ import Component from '@ember/component'; import layout from '../templates/components/data-table-menu-general'; diff --git a/addon/components/data-table-menu-selected.js b/addon/components/data-table-menu-selected.js index 69cae1f..16840ed 100644 --- a/addon/components/data-table-menu-selected.js +++ b/addon/components/data-table-menu-selected.js @@ -1,3 +1,4 @@ +/* eslint-disable ember/no-actions-hash, ember/no-classic-classes, ember/no-classic-components, ember/no-get, ember/require-tagless-components */ import { reads } from '@ember/object/computed'; import Component from '@ember/component'; import layout from '../templates/components/data-table-menu-selected'; diff --git a/addon/components/data-table-menu.js b/addon/components/data-table-menu.js index 298f2ba..10473f1 100644 --- a/addon/components/data-table-menu.js +++ b/addon/components/data-table-menu.js @@ -1,3 +1,4 @@ +/* eslint-disable ember/no-classic-classes, ember/no-classic-components, ember/require-tagless-components */ import Component from '@ember/component'; import layout from '../templates/components/data-table-menu'; diff --git a/addon/components/data-table.js b/addon/components/data-table.js index d3860b3..72aff93 100644 --- a/addon/components/data-table.js +++ b/addon/components/data-table.js @@ -1,3 +1,4 @@ +/* eslint-disable ember/no-classic-classes, ember/no-classic-components, ember/no-observers, ember/require-tagless-components */ import { typeOf } from '@ember/utils'; import { computed, observer } from '@ember/object'; import { bool, equal, oneWay } from '@ember/object/computed'; diff --git a/addon/components/default-data-table-content-body.js b/addon/components/default-data-table-content-body.js index 30d0242..e709e60 100644 --- a/addon/components/default-data-table-content-body.js +++ b/addon/components/default-data-table-content-body.js @@ -1,3 +1,4 @@ +/* eslint-disable ember/no-classic-classes, ember/no-classic-components, ember/no-get */ import { A } from '@ember/array'; import { computed } from '@ember/object'; import { oneWay } from '@ember/object/computed'; diff --git a/addon/components/number-pagination.js b/addon/components/number-pagination.js index e895dd8..7c63a7e 100644 --- a/addon/components/number-pagination.js +++ b/addon/components/number-pagination.js @@ -1,3 +1,4 @@ +/* eslint-disable ember/no-actions-hash, ember/no-classic-classes, ember/no-classic-components, ember/no-get, ember/require-tagless-components */ import { computed } from '@ember/object'; import { gt } from '@ember/object/computed'; import Component from '@ember/component'; diff --git a/addon/components/text-search.js b/addon/components/text-search.js index c7c09bb..9642471 100644 --- a/addon/components/text-search.js +++ b/addon/components/text-search.js @@ -1,3 +1,4 @@ +/* eslint-disable ember/no-classic-classes, ember/no-classic-components, ember/no-observers, ember/require-tagless-components */ import { isEqual } from '@ember/utils'; import { cancel, debounce } from '@ember/runloop'; import { observer } from '@ember/object'; diff --git a/addon/components/th-sortable.js b/addon/components/th-sortable.js index 41ede1f..b9d9635 100644 --- a/addon/components/th-sortable.js +++ b/addon/components/th-sortable.js @@ -1,3 +1,4 @@ +/* eslint-disable ember/no-actions-hash, ember/no-classic-classes, ember/no-classic-components, ember/require-tagless-components */ import { computed } from '@ember/object'; import Component from '@ember/component'; import layout from '../templates/components/th-sortable'; diff --git a/addon/mixins/default-query-params.js b/addon/mixins/default-query-params.js index 42e7737..d152aa7 100644 --- a/addon/mixins/default-query-params.js +++ b/addon/mixins/default-query-params.js @@ -1,3 +1,4 @@ +/* eslint-disable ember/no-new-mixins */ import Mixin from '@ember/object/mixin'; export default Mixin.create({ diff --git a/addon/mixins/serializer.js b/addon/mixins/serializer.js index f36939b..e6bc4e1 100644 --- a/addon/mixins/serializer.js +++ b/addon/mixins/serializer.js @@ -1,3 +1,4 @@ +/* eslint-disable ember/no-new-mixins */ import Mixin from '@ember/object/mixin'; export default Mixin.create({ diff --git a/addon/templates/components/data-table-content-body.hbs b/addon/templates/components/data-table-content-body.hbs index 38c5bbb..a705369 100644 --- a/addon/templates/components/data-table-content-body.hbs +++ b/addon/templates/components/data-table-content-body.hbs @@ -1,3 +1,4 @@ +{{! template-lint-disable no-action no-curly-component-invocation require-input-label require-presentational-children }} {{#if this.data-table.isLoading}}