ember-block-slots
Advanced tools
Comparing version
@@ -11,11 +11,39 @@ import Ember from 'ember' | ||
/** | ||
* The maximum allowed number of block parameters supported | ||
* | ||
* @memberof module:addon/components/block-slot | ||
* @const {Number} blockParamsAllowed | ||
* @default 10 | ||
*/ | ||
const blockParamsAllowed = 10 | ||
/** | ||
* @module | ||
* @augments ember/Component | ||
*/ | ||
const component = Component.extend({ | ||
/** @type {Object} */ | ||
layout, | ||
/** @type {String} */ | ||
tagName: '', | ||
/** @type {?Object} */ | ||
yieldedSlot: null, | ||
/** | ||
* The name of the parent component's slot "block section" | ||
* | ||
* @type {String} | ||
*/ | ||
yieldedSlotName: computed.readOnly('parentView.slot'), | ||
/** | ||
* Whether this slot should be yielded | ||
* | ||
* @function | ||
* @returns {Boolean} | ||
*/ | ||
isSlotYield: computed('name', 'yieldedSlotName', function () { | ||
@@ -25,2 +53,7 @@ return this.get('name') === this.get('yieldedSlotName') | ||
/** | ||
* init event hook | ||
* | ||
* @returns {undefined} | ||
*/ | ||
init () { | ||
@@ -52,3 +85,11 @@ this._super() | ||
/** | ||
* @memberof ember/Component# | ||
*/ | ||
component.reopenClass({ | ||
/** | ||
* @type {Array} | ||
* @default yieldedSlot, name | ||
*/ | ||
positionalParams: [ 'yieldedSlot', 'name' ] | ||
@@ -55,0 +96,0 @@ }) |
@@ -10,8 +10,22 @@ import Ember from 'ember' | ||
/** | ||
* @module | ||
* @augments ember/Component | ||
*/ | ||
const component = Component.extend({ | ||
/** @type {Object} */ | ||
layout, | ||
/** @type {String} */ | ||
tagName: '', | ||
/** @type {?String} */ | ||
name: null, | ||
/** | ||
* init event hook | ||
* | ||
* @returns {undefined} | ||
*/ | ||
init () { | ||
@@ -25,2 +39,8 @@ this._super() | ||
/** | ||
* Used to determine whether a slot "block section" has been set or to use the default | ||
* | ||
* @function | ||
* @returns {Boolean} | ||
*/ | ||
isSlotActive: computed('_slots', 'name', function () { | ||
@@ -30,2 +50,9 @@ return this.get(`_slots.${this.get('name')}`) | ||
/** | ||
* Registers a slot "block section" | ||
* | ||
* @private | ||
* @param {String} name The name of the slot "block section" | ||
* @returns {undefined} | ||
*/ | ||
// TODO can we find a way to remove this? | ||
@@ -37,3 +64,11 @@ _registerSlot (name) { | ||
/** | ||
* @memberof ember/Component# | ||
*/ | ||
component.reopenClass({ | ||
/** | ||
* @type {Array} | ||
* @default name | ||
*/ | ||
positionalParams: [ 'name' ] | ||
@@ -40,0 +75,0 @@ }) |
@@ -7,5 +7,27 @@ import Ember from 'ember' | ||
/** | ||
* @module | ||
*/ | ||
/** | ||
* @memberof ember/Component# | ||
*/ | ||
Component.reopen({ | ||
/** | ||
* Used to contain an object with a name property for holding the slot's name | ||
* | ||
* @private | ||
* @type {ember/Object} | ||
*/ | ||
_slots: Ember.Object.create({}), | ||
/** | ||
* Registers a slot "block section" by name | ||
* | ||
* @private | ||
* @function | ||
* @param {String} name The name of the slot to register | ||
* @returns {undefined} | ||
*/ | ||
_registerSlot (name) { | ||
@@ -12,0 +34,0 @@ this._slots.set(name, true) |
import Ember from 'ember' | ||
/** | ||
* @typedef {Object} ParameterObject | ||
* @property {ember/Array} params A property to hold the list of parameters | ||
*/ | ||
/** | ||
* Creates an object with a propery set to an array of the values passed in. | ||
* | ||
* @function | ||
* @param {Array} params Values to add to the object's property | ||
* @returns {ParameterObject} The parameter values set as an array on the params property | ||
*/ | ||
export function blockParams (params/*, hash*/) { | ||
@@ -4,0 +16,0 @@ return { |
@@ -1,7 +0,21 @@ | ||
// Load extensions to Ember | ||
import '../extensions/component-block-slots' | ||
/** | ||
* @module | ||
*/ | ||
/** | ||
* To load the component-block-slots extensions for Ember.Component | ||
* | ||
* @function | ||
* @returns {undefined} | ||
*/ | ||
export function initialize () { | ||
} | ||
/** | ||
* Export the addon component-block-slot extensions initializer | ||
* | ||
* @type {Object} | ||
*/ | ||
export default { | ||
@@ -8,0 +22,0 @@ name: 'component-block-slots', |
{ | ||
"name": "ember-block-slots", | ||
"version": "0.3.0", | ||
"version": "0.4.0", | ||
"description": "Support for targeted yield slots within a component block", | ||
@@ -11,5 +11,6 @@ "directories": { | ||
"build": "ember build", | ||
"docs": "ember ember-cli-jsdoc", | ||
"start": "ember server", | ||
"lint": "eslint *.js addon app config tests", | ||
"test": "npm run lint && ember test" | ||
"test": "ember ember-cli-jsdoc && npm run lint && ember test" | ||
}, | ||
@@ -29,4 +30,6 @@ "repository": "git@github.com:ciena-blueplanet/ember-block-slots.git", | ||
"ember-cli-dependency-checker": "^1.2.0", | ||
"ember-cli-doc-server": "1.1.0", | ||
"ember-cli-htmlbars-inline-precompile": "^0.3.1", | ||
"ember-cli-inject-live-reload": "^1.3.1", | ||
"ember-cli-jsdoc": "~1.4.0", | ||
"ember-cli-mocha": "0.10.1", | ||
@@ -33,0 +36,0 @@ "ember-cli-release": "0.2.8", |
Sorry, the diff of this file is not supported yet
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
Mixed license
License(Experimental) Package contains multiple licenses.
Found 1 instance in 1 package
1072341
11592.74%58
163.64%811
637.27%24
9.09%1
Infinity%1
Infinity%