From ed6a08ddd73e30b91531db984756b1eb4b2962fc Mon Sep 17 00:00:00 2001 From: Randall Morey Date: Thu, 24 Sep 2020 14:47:45 -0400 Subject: [PATCH] =?UTF-8?q?refactor:=20=F0=9F=92=A1=20convert=20form=20inp?= =?UTF-8?q?ut=20to=20nested=20structure?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- addons/rose/addon/components/rose/form/input.js | 11 ----------- .../rose/form/input/index.hbs} | 0 addons/rose/addon/components/rose/form/input/index.js | 10 ++++++++++ .../{input.stories.mdx => input/index.stories.mdx} | 0 addons/rose/addon/components/rose/form/input/input.js | 7 ------- .../rose/form/input/input/index.hbs} | 0 addons/rose/addon/utilities/component-auto-id.js | 9 +++++++++ .../rose/tests/unit/mixins/component-auto-id-test.js | 11 ----------- .../tests/unit/utilities/component-auto-id-test.js | 9 +++++++++ 9 files changed, 28 insertions(+), 29 deletions(-) delete mode 100644 addons/rose/addon/components/rose/form/input.js rename addons/rose/addon/{templates/components/rose/form/input.hbs => components/rose/form/input/index.hbs} (100%) create mode 100644 addons/rose/addon/components/rose/form/input/index.js rename addons/rose/addon/components/rose/form/{input.stories.mdx => input/index.stories.mdx} (100%) delete mode 100644 addons/rose/addon/components/rose/form/input/input.js rename addons/rose/addon/{templates/components/rose/form/input/input.hbs => components/rose/form/input/input/index.hbs} (100%) create mode 100644 addons/rose/addon/utilities/component-auto-id.js delete mode 100644 addons/rose/tests/unit/mixins/component-auto-id-test.js create mode 100644 addons/rose/tests/unit/utilities/component-auto-id-test.js diff --git a/addons/rose/addon/components/rose/form/input.js b/addons/rose/addon/components/rose/form/input.js deleted file mode 100644 index 60ae3d0f1..000000000 --- a/addons/rose/addon/components/rose/form/input.js +++ /dev/null @@ -1,11 +0,0 @@ -import Component from '@ember/component'; -import layout from '../../../templates/components/rose/form/input'; -import ComponentAutoId from '../../../mixins/component-auto-id'; - -/** - * A simple HTML `` element. - */ -export default Component.extend(ComponentAutoId, { - layout, - tagName: '', -}); diff --git a/addons/rose/addon/templates/components/rose/form/input.hbs b/addons/rose/addon/components/rose/form/input/index.hbs similarity index 100% rename from addons/rose/addon/templates/components/rose/form/input.hbs rename to addons/rose/addon/components/rose/form/input/index.hbs diff --git a/addons/rose/addon/components/rose/form/input/index.js b/addons/rose/addon/components/rose/form/input/index.js new file mode 100644 index 000000000..4fbc071f4 --- /dev/null +++ b/addons/rose/addon/components/rose/form/input/index.js @@ -0,0 +1,10 @@ +import Component from '@glimmer/component'; +import { generateComponentID } from '../../../../utilities/component-auto-id'; + +export default class RoseFormInputComponent extends Component { + + // =attributes + + id = generateComponentID(); + +} diff --git a/addons/rose/addon/components/rose/form/input.stories.mdx b/addons/rose/addon/components/rose/form/input/index.stories.mdx similarity index 100% rename from addons/rose/addon/components/rose/form/input.stories.mdx rename to addons/rose/addon/components/rose/form/input/index.stories.mdx diff --git a/addons/rose/addon/components/rose/form/input/input.js b/addons/rose/addon/components/rose/form/input/input.js deleted file mode 100644 index f20d86c82..000000000 --- a/addons/rose/addon/components/rose/form/input/input.js +++ /dev/null @@ -1,7 +0,0 @@ -import Component from '@ember/component'; -import layout from '../../../../templates/components/rose/form/input/input'; - -export default Component.extend({ - layout, - tagName: '', -}); diff --git a/addons/rose/addon/templates/components/rose/form/input/input.hbs b/addons/rose/addon/components/rose/form/input/input/index.hbs similarity index 100% rename from addons/rose/addon/templates/components/rose/form/input/input.hbs rename to addons/rose/addon/components/rose/form/input/input/index.hbs diff --git a/addons/rose/addon/utilities/component-auto-id.js b/addons/rose/addon/utilities/component-auto-id.js new file mode 100644 index 000000000..de91ecf92 --- /dev/null +++ b/addons/rose/addon/utilities/component-auto-id.js @@ -0,0 +1,9 @@ +import { v1 } from 'ember-uuid'; + +/** + * A function that generates a component ID, based on UUID. + * @return {string} + */ +export function generateComponentID() { + return `component-${v1()}`; +} diff --git a/addons/rose/tests/unit/mixins/component-auto-id-test.js b/addons/rose/tests/unit/mixins/component-auto-id-test.js deleted file mode 100644 index a047b3e7b..000000000 --- a/addons/rose/tests/unit/mixins/component-auto-id-test.js +++ /dev/null @@ -1,11 +0,0 @@ -import EmberObject from '@ember/object'; -import ComponentAutoIdMixin from 'rose/mixins/component-auto-id'; -import { module, test } from 'qunit'; - -module('Unit | Mixin | component-auto-id', function () { - test('it generates an ID and assigns it to the object', function (assert) { - let ComponentAutoIdObject = EmberObject.extend(ComponentAutoIdMixin); - let subject = ComponentAutoIdObject.create(); - assert.ok(subject.id); - }); -}); diff --git a/addons/rose/tests/unit/utilities/component-auto-id-test.js b/addons/rose/tests/unit/utilities/component-auto-id-test.js new file mode 100644 index 000000000..3da16b9d0 --- /dev/null +++ b/addons/rose/tests/unit/utilities/component-auto-id-test.js @@ -0,0 +1,9 @@ +import { generateComponentID } from 'rose/utilities/component-auto-id'; +import { module, test } from 'qunit'; + +module('Unit | Utility | component-auto-id', function () { + test('it generates an ID', function (assert) { + const id = generateComponentID(); + assert.ok(id); + }); +});