Skip to content

Commit

Permalink
Switch from deprecated ember-one-way-controls to `ember-one-way-sel…
Browse files Browse the repository at this point in the history
…ect`

Fixes #81
  • Loading branch information
Ben Demboski committed Feb 2, 2018
1 parent 56beea2 commit 4edbbd4
Show file tree
Hide file tree
Showing 4 changed files with 42 additions and 58 deletions.
12 changes: 7 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ This [ember-cli](http://www.ember-cli.com) addon is based on the following excel

- [ember-changeset](https://github.com/DockYard/ember-changeset)
- [ember-changeset-validations](https://github.com/DockYard/ember-changeset-validations/)
- [ember-one-way-controls](https://github.com/DockYard/ember-one-way-controls)
- [ember-one-way-select](https://github.com/DockYard/ember-one-way-select)

and provides a handy out-of-the-box setup for user-friendly client-side validations, featuring

Expand Down Expand Up @@ -184,7 +184,9 @@ For a minimal demo see [this twiddle](https://ember-twiddle.com/3547207b06ed896f
| on-update | `Action` | Per default, the input elements are two-way-bound. If you want to implement custom update behavior, pass an action as `on-update`. The function receives two arguments: `update(value, changeset)`. |


The supported field types are essentially given by [ember-one-way-controls](https://github.com/DockYard/ember-one-way-controls). This addon does not much more than translating `{{f.input type="select"}}` to `{{one-way-select}}`.
The supported field types are "checkbox", "radioGroup", "select", "textarea" and any type that can
be specified on an <input> element. This addon does not much more than translating `{{f.input type="select"}}` to `{{one-way-select}}` or `{{f.input type="text"}}` to `<input type="text">` with the various other
properties (`name`, `disabled`, etc.) and event handlers.

However, some field types require extra parameters. The supported field types are listed below.

Expand Down Expand Up @@ -214,7 +216,7 @@ The textarea element also supports the following options:

### Select

The select element supports more options (see [{{one-way-select}}](https://github.com/DockYard/ember-one-way-controls/blob/master/docs/one-way-select.md)):
The select element supports more options (see [{{one-way-select}}](https://github.com/DockYard/ember-one-way-select)):

- `value`
- `options`
Expand All @@ -239,15 +241,15 @@ The `prompt` property is currently not supported (see this [related issue](https

### Checkbox

This component renders a [{{one-way-checkbox}}](https://github.com/DockYard/ember-one-way-controls/blob/master/docs/one-way-checkbox.md).
This component renders an `<input type="checkbox">` elements.

```Handlebars
{{f.input type="checkbox" label="I agree with the terms and conditions" name="terms"}}
```

### Radio button group

This component renders a list of [{{one-way-radio}}](https://github.com/DockYard/ember-one-way-controls/blob/master/docs/one-way-radio.md) components.
This component renders a list of `<input type="radio">` elements.

```Handlebars
{{f.input type="radioGroup" label="Shapes" name="shapes" options=shapes}}
Expand Down
44 changes: 21 additions & 23 deletions addon/templates/components/validated-input.hbs
Original file line number Diff line number Diff line change
Expand Up @@ -20,14 +20,13 @@
{{#each options as |option|}}
<div class="radio">
<label>
{{one-way-radio
value = (or value (get model name))
option = option.key
name = name
update = (action "update")
focusOut = (action "setDirty")
disabled = disabled
}}
<input
type = "radio"
checked = {{eq (or value (get model name)) option.key}}
name = {{name}}
onclick = {{action "update" option.key}}
onfocusout = {{action "setDirty"}}
disabled = {{disabled}}>
{{yield option}}
</label>
</div>
Expand Down Expand Up @@ -59,14 +58,13 @@
{{#each options as |option|}}
<div class="{{config.css.radio}}">
<label>
{{one-way-radio
value = (or value (get model name))
option = option.key
name = inputId
update = (action "update")
focusOut = (action "setDirty")
disabled = disabled
}}
<input
type = "radio"
checked = {{eq (or value (get model name)) option.key}}
name = {{inputId}}
onclick = {{action "update" option.key}}
onfocusout = {{action "setDirty"}}
disabled = {{disabled}}>
<span>{{option.label}}</span>
</label>
</div>
Expand All @@ -75,13 +73,13 @@
{{else if (eq type "checkbox")}}
<div class="{{config.css.checkbox}}">
<label>
{{one-way-checkbox
name = name
disabled = disabled
checked = (get model name)
update = (action "update")
focusOut = (action "setDirty")
}}
<input
type = "checkbox"
name = {{name}}
disabled = {{disabled}}
checked = {{get model name}}
onclick = {{action "update" value = "target.checked"}}
onfocusout = {{action "setDirty"}}>
<span>{{label}}</span>
</label>
</div>
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
"dependencies": {
"ember-cli-babel": "^6.6.0",
"ember-cli-htmlbars": "^2.0.1",
"ember-one-way-controls": "1.1.2",
"ember-one-way-select": "^4.0.0",
"ember-truth-helpers": "^2.0.0"
},
"devDependencies": {
Expand Down
42 changes: 13 additions & 29 deletions yarn.lock
Original file line number Diff line number Diff line change
Expand Up @@ -2204,7 +2204,7 @@ ember-cli-htmlbars-inline-precompile@^1.0.0:
heimdalljs-logger "^0.1.7"
silent-error "^1.1.0"

ember-cli-htmlbars@^1.0.10, ember-cli-htmlbars@^1.0.3, ember-cli-htmlbars@^1.1.1:
ember-cli-htmlbars@^1.0.3, ember-cli-htmlbars@^1.1.1:
version "1.3.4"
resolved "https://registry.yarnpkg.com/ember-cli-htmlbars/-/ember-cli-htmlbars-1.3.4.tgz#461289724b34af372a6a0c4b6635819156963353"
dependencies:
Expand Down Expand Up @@ -2356,7 +2356,7 @@ ember-cli-valid-component-name@^1.0.0:
dependencies:
silent-error "^1.0.0"

ember-cli-version-checker@^1.0.2, ember-cli-version-checker@^1.1.3, ember-cli-version-checker@^1.1.6, ember-cli-version-checker@^1.1.7, ember-cli-version-checker@^1.2.0:
ember-cli-version-checker@^1.0.2, ember-cli-version-checker@^1.1.6, ember-cli-version-checker@^1.1.7, 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"
dependencies:
Expand Down Expand Up @@ -2472,7 +2472,7 @@ ember-deep-set@^0.1.2:
dependencies:
ember-cli-babel "^5.1.7"

"ember-deep-set@github:poteto/ember-deep-set#dee1243027d7f47ffa4a28709baf4c4874fd5317":
ember-deep-set@poteto/ember-deep-set#dee1243027d7f47ffa4a28709baf4c4874fd5317:
version "0.1.2"
resolved "https://codeload.github.com/poteto/ember-deep-set/tar.gz/dee1243027d7f47ffa4a28709baf4c4874fd5317"
dependencies:
Expand Down Expand Up @@ -2502,13 +2502,6 @@ ember-get-config@^0.2.4:
broccoli-file-creator "^1.1.1"
ember-cli-babel "^6.3.0"

ember-get-helper@~1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/ember-get-helper/-/ember-get-helper-1.1.0.tgz#ef970b199bc1b6a52e986cb744ddf05eb3793051"
dependencies:
ember-cli-babel "^5.1.6"
ember-cli-version-checker "^1.1.3"

ember-getowner-polyfill@^1.1.0:
version "1.2.5"
resolved "https://registry.yarnpkg.com/ember-getowner-polyfill/-/ember-getowner-polyfill-1.2.5.tgz#ceff8a09897d0d7e05c821bb71666a95eb26dc92"
Expand All @@ -2517,11 +2510,11 @@ ember-getowner-polyfill@^1.1.0:
ember-cli-version-checker "^1.2.0"
ember-factory-for-polyfill "^1.1.0"

ember-invoke-action@1.4.0:
version "1.4.0"
resolved "https://registry.yarnpkg.com/ember-invoke-action/-/ember-invoke-action-1.4.0.tgz#2899854bd755f9331ca86c902bf6d4dbf8bdfcb3"
ember-invoke-action@^1.5.0:
version "1.5.0"
resolved "https://registry.yarnpkg.com/ember-invoke-action/-/ember-invoke-action-1.5.0.tgz#0370f187f39f22d54ddd039cd01aa7e685edbbec"
dependencies:
ember-cli-babel "^5.1.6"
ember-cli-babel "^6.6.0"

ember-load-initializers@^1.0.0:
version "1.0.0"
Expand All @@ -2538,15 +2531,13 @@ ember-maybe-import-regenerator@^0.1.4:
ember-cli-babel "^6.0.0-beta.4"
regenerator-runtime "^0.9.5"

ember-one-way-controls@1.1.2:
version "1.1.2"
resolved "https://registry.yarnpkg.com/ember-one-way-controls/-/ember-one-way-controls-1.1.2.tgz#9ebaba62bb43bf3d5e680f0d13b996353e47ce6d"
ember-one-way-select@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/ember-one-way-select/-/ember-one-way-select-4.0.0.tgz#4da2a8b8abb3360feaa69099ea31989ad3068e89"
dependencies:
ember-cli-babel "^5.1.6"
ember-cli-htmlbars "^1.0.10"
ember-get-helper "~1.1.0"
ember-invoke-action "1.4.0"
ember-runtime-enumerable-includes-polyfill "^1.0.1"
ember-cli-babel "^6.6.0"
ember-cli-htmlbars "^2.0.1"
ember-invoke-action "^1.5.0"

ember-qunit@^3.3.0:
version "3.3.0"
Expand Down Expand Up @@ -2592,13 +2583,6 @@ ember-router-generator@^1.0.0:
dependencies:
recast "^0.11.3"

ember-runtime-enumerable-includes-polyfill@^1.0.1:
version "1.0.4"
resolved "https://registry.yarnpkg.com/ember-runtime-enumerable-includes-polyfill/-/ember-runtime-enumerable-includes-polyfill-1.0.4.tgz#16a7612e347a2edf07da8b2f2f09dbfee70deba0"
dependencies:
ember-cli-babel "^5.1.6"
ember-cli-version-checker "^1.1.6"

ember-source@~2.12.0:
version "2.12.2"
resolved "https://registry.yarnpkg.com/ember-source/-/ember-source-2.12.2.tgz#02094fd9d30c85e7717a240fd8a18b2a117b5594"
Expand Down

0 comments on commit 4edbbd4

Please sign in to comment.