0.14.7 • Published 2 months ago

ember-exclaim-editor v0.14.7

Weekly downloads
173
License
MIT
Repository
-
Last release
2 months ago

ember-exclaim-editor

Short description of the addon.

Compatibility

  • Ember.js v3.4 or above
  • Ember CLI v2.13 or above
  • Node.js v8 or above

Installation

ember install ember-exclaim-editor

Usage

Longer description of how to use the addon in apps.

Invocation

    {{#exclaim-editor
      env=canvasEnv
      implementationMap=implementationMap
      mode=mode
      ui=exclaimJson
      onChange=(action update)
      onComponentClick=(action clickComponent)
      resolveFieldMeta=(action onMetaForField)
      as |editor|
    }}
      ...
    {{/exclaim-editor}}

Arguments

implementationMap

Similiar to the implementationMap argument to Ember Exclaim's {{exclaim-ui}} component.

In addition, the implementationMap for the Exclaim Editor allows declarations of the configuration properties that the user may adjust.

Optionally these properties may be divided into sections. The propertySections field is an ordered list of named sections with paths to the Ember component that should wrap each section. The section component template must {{yield}} so that the editor may render the property editor components.

    ['my_exclaim_component']: {
      componentMeta: {
        name: 'My Exclaim Component',
        propertySections: [
          {
            sectionName: 'knobs',
            sectionComponent: {
              name: 'knobs-wrapper',
              options: {
                max: 11,
              }
            }
          },
          {
            sectionName: 'dials',
            sectionComponent: {
              name: 'dials-wrapper',
              options: {
                favorite: "Z100",
              }
            }
          },
        ],
        properties: {
          ['volume_property']: new PropertyDefinition({
            name: 'Select a setting for volume',
            section: 'knobs',
            dataRole: 'volume-property',
          }, false, 'volume-config-component'),
          ['tuner_property']: new PropertyDefinition({
            name: 'Tune to desired station',
            section: 'dials',
            dataRole: 'station-property',
          }, false, 'tuner-config-component'),
        }

When given a dataRole, an individual property will have data-role=<given value>. Its primary intent is to provide a selection hook for testing.

For each section component listed in propertySections, if it has properties referencing its sectionName by their section field, then Exclaim Editor will render it as a wrapper around those properties. The section component will receive the options attribute specified within its propertySections sectionComponent object.

Section components can therefore use options to vary their appearance depending of the values declared in the implementationMap:

  <div class="knobs-section">
    Max Volume: {{options.max}}
  </div>

Contributing

Installation

  • git clone <repository-url>
  • cd ember-exclaim-editor
  • yarn install

Linting

  • npm run lint:hbs
  • npm run lint:js
  • npm run lint:js -- --fix

Running tests

  • ember test – Runs the test suite on the current Ember version
  • ember test --server – Runs the test suite in "watch mode"
  • ember try:each – Runs the test suite against multiple Ember versions

Running the dummy application

License

This project is licensed under the MIT License.

0.14.7

2 months ago

0.14.6

9 months ago

0.14.5

12 months ago

0.14.4

1 year ago

0.14.3

2 years ago

0.14.2

2 years ago

0.14.1

2 years ago

0.14.0

3 years ago

0.13.2

4 years ago

0.13.1

4 years ago

0.13.0

4 years ago

0.12.0

4 years ago

0.11.1

4 years ago

0.11.0

4 years ago

0.10.3

5 years ago

0.10.2

5 years ago

0.10.1

5 years ago

0.10.0

5 years ago

0.9.0

5 years ago

0.8.0

5 years ago

0.7.0

5 years ago

0.6.6

5 years ago

0.6.5

5 years ago

0.6.4

5 years ago

0.6.3

5 years ago

0.6.2

5 years ago

0.6.1

5 years ago

0.6.0

5 years ago

0.5.4

5 years ago

0.5.3

5 years ago

0.5.2

5 years ago

0.5.1

5 years ago

0.5.0

5 years ago

0.4.0

6 years ago

0.3.0

6 years ago

0.2.1

6 years ago

0.2.0

6 years ago

0.1.0

6 years ago