From 137dd4577790b7db647bbf24cb8411c7a3decd78 Mon Sep 17 00:00:00 2001 From: Randall Morey Date: Wed, 27 May 2020 19:40:11 -0400 Subject: [PATCH] =?UTF-8?q?refactor:=20=F0=9F=92=A1=20auto-generate=20IDs?= =?UTF-8?q?=20for=20form=20fields?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- addons/rose/.eslintrc.js | 3 +- .../addon/components/rose/form.stories.mdx | 8 ---- .../addon/components/rose/form/checkbox.js | 14 +----- .../components/rose/form/checkbox.stories.mdx | 3 -- .../rose/addon/components/rose/form/input.js | 15 +----- .../addon/components/rose/form/radio/group.js | 21 -------- .../rose/form/radio/group.stories.mdx | 6 --- .../addon/components/rose/form/radio/radio.js | 13 +---- .../rose/form/radio/radio.stories.mdx | 3 -- .../rose/addon/components/rose/form/select.js | 4 +- .../components/rose/form/select.stories.mdx | 3 -- .../addon/components/rose/form/textarea.js | 14 +----- addons/rose/addon/mixins/component-auto-id.js | 15 ++++++ .../components/rose/form/checkbox.hbs | 4 +- .../templates/components/rose/form/input.hbs | 4 +- .../components/rose/form/radio/radio.hbs | 4 +- .../templates/components/rose/form/select.hbs | 4 +- .../components/rose/form/textarea.hbs | 4 +- .../app/components/rose/form/select/select.js | 2 +- addons/rose/package.json | 1 + .../rose/tests/dummy/app/templates/index.hbs | 8 ---- .../integration/components/rose/form-test.js | 1 - .../components/rose/form/radio/group-test.js | 48 +++++++++---------- .../unit/mixins/component-auto-id-test.js | 11 +++++ ui/core/app/components/form/project/index.hbs | 2 - ui/core/package.json | 3 +- yarn.lock | 8 ++++ 27 files changed, 84 insertions(+), 142 deletions(-) create mode 100644 addons/rose/addon/mixins/component-auto-id.js create mode 100644 addons/rose/tests/unit/mixins/component-auto-id-test.js diff --git a/addons/rose/.eslintrc.js b/addons/rose/.eslintrc.js index 85a190092..b705ae52d 100644 --- a/addons/rose/.eslintrc.js +++ b/addons/rose/.eslintrc.js @@ -21,7 +21,8 @@ module.exports = { browser: true }, rules: { - 'ember/no-jquery': 'error' + 'ember/no-jquery': 'error', + 'ember/no-new-mixins': 0 }, overrides: [ // node files diff --git a/addons/rose/addon/components/rose/form.stories.mdx b/addons/rose/addon/components/rose/form.stories.mdx index c777f21c1..e31e0d1b2 100644 --- a/addons/rose/addon/components/rose/form.stories.mdx +++ b/addons/rose/addon/components/rose/form.stories.mdx @@ -41,23 +41,19 @@ and actions. @@ -97,23 +93,19 @@ and actions. diff --git a/addons/rose/addon/components/rose/form/checkbox.js b/addons/rose/addon/components/rose/form/checkbox.js index 5b94c0a1d..ad6ad3f38 100644 --- a/addons/rose/addon/components/rose/form/checkbox.js +++ b/addons/rose/addon/components/rose/form/checkbox.js @@ -1,21 +1,11 @@ import Component from '@ember/component'; import layout from '../../../templates/components/rose/form/checkbox'; +import ComponentAutoId from '../../../mixins/component-auto-id'; /** * A simple HTML `` element. - * - * @example - * */ -export default Component.extend({ +export default Component.extend(ComponentAutoId, { layout, - tagName: '', }); diff --git a/addons/rose/addon/components/rose/form/checkbox.stories.mdx b/addons/rose/addon/components/rose/form/checkbox.stories.mdx index 3a47e9f8c..2dcf0bb14 100644 --- a/addons/rose/addon/components/rose/form/checkbox.stories.mdx +++ b/addons/rose/addon/components/rose/form/checkbox.stories.mdx @@ -11,7 +11,6 @@ Renders a form input checkbox. ```htmlbars {{ template: hbs` ` element. - * - * @example - * */ -export default Component.extend({ +export default Component.extend(ComponentAutoId, { layout, tagName: '', }); diff --git a/addons/rose/addon/components/rose/form/radio/group.js b/addons/rose/addon/components/rose/form/radio/group.js index a9508a084..80bba183e 100644 --- a/addons/rose/addon/components/rose/form/radio/group.js +++ b/addons/rose/addon/components/rose/form/radio/group.js @@ -3,29 +3,8 @@ import layout from '../../../../templates/components/rose/form/radio/group'; /** * A `` element. - * - * @example - * - * - * - * - * */ - export default Component.extend({ layout, - tagName: '', }); diff --git a/addons/rose/addon/components/rose/form/radio/group.stories.mdx b/addons/rose/addon/components/rose/form/radio/group.stories.mdx index ef99aa922..ebdb50560 100644 --- a/addons/rose/addon/components/rose/form/radio/group.stories.mdx +++ b/addons/rose/addon/components/rose/form/radio/group.stories.mdx @@ -16,17 +16,14 @@ Renders a form radiofield group. as |radioGroup| > @@ -42,17 +39,14 @@ Renders a form radiofield group. as |radioGroup| > diff --git a/addons/rose/addon/components/rose/form/radio/radio.js b/addons/rose/addon/components/rose/form/radio/radio.js index f32a6835e..196e47951 100644 --- a/addons/rose/addon/components/rose/form/radio/radio.js +++ b/addons/rose/addon/components/rose/form/radio/radio.js @@ -1,22 +1,13 @@ import Component from '@ember/component'; import layout from '../../../../templates/components/rose/form/radio/radio'; +import ComponentAutoId from '../../../../mixins/component-auto-id'; /** * A `` element. * `value` and `selectedValue` must be equal to select * radiofield. - * - * @example - * */ -export default Component.extend({ +export default Component.extend(ComponentAutoId, { layout, tagName: '', }); diff --git a/addons/rose/addon/components/rose/form/radio/radio.stories.mdx b/addons/rose/addon/components/rose/form/radio/radio.stories.mdx index 79f2704d9..91d256e9a 100644 --- a/addons/rose/addon/components/rose/form/radio/radio.stories.mdx +++ b/addons/rose/addon/components/rose/form/radio/radio.stories.mdx @@ -10,7 +10,6 @@ Renders a form radiofield. ```htmlbars {{ template: hbs` `, context: { - id: text('id', 'radio-1'), label: text('text', 'Radiofield'), error: boolean('error', false), value: text('value', 'value and selectedValue must match to select radiofield'), diff --git a/addons/rose/addon/components/rose/form/select.js b/addons/rose/addon/components/rose/form/select.js index f1c7dd36f..c71537542 100644 --- a/addons/rose/addon/components/rose/form/select.js +++ b/addons/rose/addon/components/rose/form/select.js @@ -1,11 +1,11 @@ import Component from '@ember/component'; import layout from '../../../templates/components/rose/form/select'; +import ComponentAutoId from '../../../mixins/component-auto-id'; /** * A ` -