diff --git a/addon/templates/components/basic-dialog.hbs b/addon/components/basic-dialog.hbs similarity index 100% rename from addon/templates/components/basic-dialog.hbs rename to addon/components/basic-dialog.hbs diff --git a/addon/components/basic-dialog.js b/addon/components/basic-dialog.js index d02c4232..6a4eadf5 100644 --- a/addon/components/basic-dialog.js +++ b/addon/components/basic-dialog.js @@ -1,15 +1,14 @@ -import { tagName, layout as templateLayout } from '@ember-decorators/component'; import { computed, set } from '@ember/object'; import { inject as service } from '@ember/service'; import Component from '@ember/component'; import { isEmpty } from '@ember/utils'; -import layout from '../templates/components/basic-dialog'; import { dasherize } from '@ember/string'; + import { isIOS, clickHandlerDelay } from '../utils/config-utils'; -@tagName('') -@templateLayout(layout) export default class BasicDialog extends Component { + tagName = ''; + containerClassNames = null; overlayClassNames = null; wrapperClassNames = null; diff --git a/addon/templates/components/in-place-dialog.hbs b/addon/components/in-place-dialog.hbs similarity index 100% rename from addon/templates/components/in-place-dialog.hbs rename to addon/components/in-place-dialog.hbs diff --git a/addon/components/in-place-dialog.js b/addon/components/in-place-dialog.js index e62f0f1c..def95397 100644 --- a/addon/components/in-place-dialog.js +++ b/addon/components/in-place-dialog.js @@ -1,10 +1,8 @@ -import { tagName, layout as templateLayout } from '@ember-decorators/component'; import Component from '@ember/component'; -import layout from '../templates/components/in-place-dialog'; -@tagName('') -@templateLayout(layout) export default class InPlaceDialog extends Component { + tagName = ''; + get containerClassNamesString() { const addonClassNamesString = [ 'ember-modal-dialog', diff --git a/addon/templates/components/liquid-dialog.hbs b/addon/components/liquid-dialog.hbs similarity index 100% rename from addon/templates/components/liquid-dialog.hbs rename to addon/components/liquid-dialog.hbs diff --git a/addon/components/liquid-dialog.js b/addon/components/liquid-dialog.js index b25b86e9..2006fc05 100644 --- a/addon/components/liquid-dialog.js +++ b/addon/components/liquid-dialog.js @@ -1,8 +1,5 @@ -import { layout as templateLayout } from '@ember-decorators/component'; import BasicDialog from './basic-dialog'; -import layout from '../templates/components/liquid-dialog'; -@templateLayout(layout) export default class LiquidDialog extends BasicDialog { hasOverlay = true; variantWrapperClass = 'emd-animatable'; diff --git a/addon/templates/components/liquid-tether-dialog.hbs b/addon/components/liquid-tether-dialog.hbs similarity index 100% rename from addon/templates/components/liquid-tether-dialog.hbs rename to addon/components/liquid-tether-dialog.hbs diff --git a/addon/components/liquid-tether-dialog.js b/addon/components/liquid-tether-dialog.js index 328ac7fb..4559f5e0 100644 --- a/addon/components/liquid-tether-dialog.js +++ b/addon/components/liquid-tether-dialog.js @@ -1,11 +1,9 @@ /* eslint-disable ember/no-computed-properties-in-native-classes */ -import { layout as templateLayout } from '@ember-decorators/component'; import { computed, set } from '@ember/object'; import { dasherize } from '@ember/string'; + import BasicDialog from './basic-dialog'; -import layout from '../templates/components/liquid-tether-dialog'; -@templateLayout(layout) export default class LiquidTetherDialog extends BasicDialog { @computed('targetAttachment') get targetAttachmentClass() { diff --git a/addon/components/modal-dialog/index.hbs b/addon/components/modal-dialog.hbs similarity index 100% rename from addon/components/modal-dialog/index.hbs rename to addon/components/modal-dialog.hbs diff --git a/addon/components/modal-dialog/index.js b/addon/components/modal-dialog.js similarity index 100% rename from addon/components/modal-dialog/index.js rename to addon/components/modal-dialog.js diff --git a/addon/components/overlay/index.hbs b/addon/components/overlay.hbs similarity index 100% rename from addon/components/overlay/index.hbs rename to addon/components/overlay.hbs diff --git a/addon/components/overlay/index.js b/addon/components/overlay.js similarity index 86% rename from addon/components/overlay/index.js rename to addon/components/overlay.js index 3ada3c1e..1dd9d7b3 100644 --- a/addon/components/overlay/index.js +++ b/addon/components/overlay.js @@ -1,7 +1,8 @@ import Component from '@glimmer/component'; -import { isIOS } from '../../utils/config-utils'; import { htmlSafe } from '@ember/template'; +import { isIOS } from '../utils/config-utils'; + export default class OverlayComponent extends Component { get cssClasses() { return htmlSafe(`emd-debug ${isIOS ? 'pointer-cursor' : ''}`); diff --git a/addon/components/positioned-container.js b/addon/components/positioned-container.js index e4a048dd..78a79178 100644 --- a/addon/components/positioned-container.js +++ b/addon/components/positioned-container.js @@ -4,6 +4,7 @@ import Component from '@ember/component'; import { capitalize } from '@ember/string'; import { observer, computed } from '@ember/object'; import { on } from '@ember/object/evented'; + const SUPPORTED_TARGET_ATTACHMENTS = [ 'top', 'right', diff --git a/addon/templates/components/tether-dialog.hbs b/addon/components/tether-dialog.hbs similarity index 100% rename from addon/templates/components/tether-dialog.hbs rename to addon/components/tether-dialog.hbs diff --git a/addon/components/tether-dialog.js b/addon/components/tether-dialog.js index 6678165f..ac8677be 100644 --- a/addon/components/tether-dialog.js +++ b/addon/components/tether-dialog.js @@ -1,10 +1,8 @@ -import { layout as templateLayout } from '@ember-decorators/component'; import { computed, set } from '@ember/object'; import { dasherize } from '@ember/string'; + import BasicDialog from './basic-dialog'; -import layout from '../templates/components/tether-dialog'; -@templateLayout(layout) export default class TetherDialog extends BasicDialog { init() { super.init(...arguments); diff --git a/package.json b/package.json index b33d9a5f..4ee781dc 100644 --- a/package.json +++ b/package.json @@ -34,7 +34,6 @@ "ember-cli-babel": "^8.2.0", "ember-cli-htmlbars": "^6.3.0", "ember-cli-version-checker": "^5.1.2", - "ember-decorators": "^6.1.1", "ember-wormhole": "^0.6.0" }, "devDependencies": { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 04504f24..f86475f4 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -34,9 +34,6 @@ importers: ember-cli-version-checker: specifier: ^5.1.2 version: 5.1.2 - ember-decorators: - specifier: ^6.1.1 - version: 6.1.1 ember-wormhole: specifier: ^0.6.0 version: 0.6.0 diff --git a/tests/integration/components/ember-modal-dialog-positioned-container-test.js b/tests/integration/components/ember-modal-dialog-positioned-container-test.js new file mode 100644 index 00000000..8e27da68 --- /dev/null +++ b/tests/integration/components/ember-modal-dialog-positioned-container-test.js @@ -0,0 +1,21 @@ +import { module, test } from 'qunit'; +import { setupRenderingTest } from 'ember-qunit'; +import { render } from '@ember/test-helpers'; +import { hbs } from 'ember-cli-htmlbars'; + +module( + 'Integration | Component | ember-modal-dialog-positioned-container', + function (hooks) { + setupRenderingTest(hooks); + + test('it renders', async function (assert) { + await render(hbs` + + Hello world! + + `); + + assert.dom().hasText('Hello world!'); + }); + }, +); diff --git a/tests/integration/components/ember-modal-dialog/-basic-dialog-test.js b/tests/integration/components/ember-modal-dialog/-basic-dialog-test.js new file mode 100644 index 00000000..15f19c54 --- /dev/null +++ b/tests/integration/components/ember-modal-dialog/-basic-dialog-test.js @@ -0,0 +1,21 @@ +import { module, test } from 'qunit'; +import { setupRenderingTest } from 'ember-qunit'; +import { render } from '@ember/test-helpers'; +import { hbs } from 'ember-cli-htmlbars'; + +module( + 'Integration | Component | ember-modal-dialog/-basic-dialog', + function (hooks) { + setupRenderingTest(hooks); + + test('it renders', async function (assert) { + await render(hbs` + + Hello world! + + `); + + assert.dom().hasText('Hello world!'); + }); + }, +); diff --git a/tests/integration/components/ember-modal-dialog/-in-place-dialog-test.js b/tests/integration/components/ember-modal-dialog/-in-place-dialog-test.js new file mode 100644 index 00000000..bcf0a9ed --- /dev/null +++ b/tests/integration/components/ember-modal-dialog/-in-place-dialog-test.js @@ -0,0 +1,21 @@ +import { module, test } from 'qunit'; +import { setupRenderingTest } from 'ember-qunit'; +import { render } from '@ember/test-helpers'; +import { hbs } from 'ember-cli-htmlbars'; + +module( + 'Integration | Component | ember-modal-dialog/-in-place-dialog', + function (hooks) { + setupRenderingTest(hooks); + + test('it renders', async function (assert) { + await render(hbs` + + Hello world! + + `); + + assert.dom().hasText('Hello world!'); + }); + }, +); diff --git a/tests/integration/components/ember-modal-dialog/-liquid-dialog-test.js b/tests/integration/components/ember-modal-dialog/-liquid-dialog-test.js new file mode 100644 index 00000000..696b0617 --- /dev/null +++ b/tests/integration/components/ember-modal-dialog/-liquid-dialog-test.js @@ -0,0 +1,21 @@ +import { module, test } from 'qunit'; +import { setupRenderingTest } from 'ember-qunit'; +import { render } from '@ember/test-helpers'; +import { hbs } from 'ember-cli-htmlbars'; + +module( + 'Integration | Component | ember-modal-dialog/-liquid-dialog', + function (hooks) { + setupRenderingTest(hooks); + + test('it renders', async function (assert) { + await render(hbs` + + Hello world! + + `); + + assert.dom().hasText('Hello world!'); + }); + }, +); diff --git a/tests/integration/components/ember-modal-dialog/-liquid-tether-dialog-test.js b/tests/integration/components/ember-modal-dialog/-liquid-tether-dialog-test.js new file mode 100644 index 00000000..615b553b --- /dev/null +++ b/tests/integration/components/ember-modal-dialog/-liquid-tether-dialog-test.js @@ -0,0 +1,23 @@ +import { module, test } from 'qunit'; +import { setupRenderingTest } from 'ember-qunit'; +import { render } from '@ember/test-helpers'; +import { hbs } from 'ember-cli-htmlbars'; + +module( + 'Integration | Component | ember-modal-dialog/-liquid-tether-dialog', + function (hooks) { + setupRenderingTest(hooks); + + test('it renders', async function (assert) { + await render(hbs` + + Hello world! + + `); + + assert.dom().hasText('Hello world!'); + }); + }, +); diff --git a/tests/integration/components/ember-modal-dialog/-tether-dialog-test.js b/tests/integration/components/ember-modal-dialog/-tether-dialog-test.js new file mode 100644 index 00000000..9518a480 --- /dev/null +++ b/tests/integration/components/ember-modal-dialog/-tether-dialog-test.js @@ -0,0 +1,21 @@ +import { module, test } from 'qunit'; +import { setupRenderingTest } from 'ember-qunit'; +import { render } from '@ember/test-helpers'; +import { hbs } from 'ember-cli-htmlbars'; + +module( + 'Integration | Component | ember-modal-dialog/-tether-dialog', + function (hooks) { + setupRenderingTest(hooks); + + test('it renders', async function (assert) { + await render(hbs` + + Hello world! + + `); + + assert.dom().hasText('Hello world!'); + }); + }, +); diff --git a/tests/integration/components/ember-modal-dialog/overlay-test.js b/tests/integration/components/ember-modal-dialog/overlay-test.js new file mode 100644 index 00000000..20023ce3 --- /dev/null +++ b/tests/integration/components/ember-modal-dialog/overlay-test.js @@ -0,0 +1,19 @@ +import { module, test } from 'qunit'; +import { setupRenderingTest } from 'ember-qunit'; +import { render } from '@ember/test-helpers'; +import { hbs } from 'ember-cli-htmlbars'; + +module( + 'Integration | Component | ember-modal-dialog/overlay', + function (hooks) { + setupRenderingTest(hooks); + + test('it renders', async function (assert) { + await render(hbs` + + `); + + assert.ok(true); + }); + }, +); diff --git a/tests/integration/components/modal-dialog-test.js b/tests/integration/components/modal-dialog-test.js new file mode 100644 index 00000000..241cb01c --- /dev/null +++ b/tests/integration/components/modal-dialog-test.js @@ -0,0 +1,16 @@ +import { module, test } from 'qunit'; +import { setupRenderingTest } from 'ember-qunit'; +import { render } from '@ember/test-helpers'; +import { hbs } from 'ember-cli-htmlbars'; + +module('Integration | Component | modal-dialog', function (hooks) { + setupRenderingTest(hooks); + + test('it renders', async function (assert) { + await render(hbs` + + `); + + assert.ok(true); + }); +});