From 5817a484fac4ea613eaa40f0c758e9bd8fb1bbe3 Mon Sep 17 00:00:00 2001 From: Steve Fox Date: Mon, 25 Jul 2016 16:14:39 -0500 Subject: [PATCH] =?UTF-8?q?Add=20support=20for=20params=20in=20menu=20item?= =?UTF-8?q?s=E2=80=A9=20(#1305)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Support params to state for menu items. * feat(core): Add support for params in menu items Proposed by @scfox Fixes #1304 * Removed trailing space on test. * Changed default params to be empty object instead of empty string. --- modules/core/client/services/menu.client.service.js | 1 + modules/core/client/views/header.client.view.html | 2 +- modules/core/tests/client/menus.client.service.tests.js | 5 +++++ 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/modules/core/client/services/menu.client.service.js b/modules/core/client/services/menu.client.service.js index 710cab7d..86c4b46c 100644 --- a/modules/core/client/services/menu.client.service.js +++ b/modules/core/client/services/menu.client.service.js @@ -85,6 +85,7 @@ service.menus[menuId].items[itemIndex].items.push({ title: options.title || '', state: options.state || '', + params: options.params || {}, roles: ((options.roles === null || typeof options.roles === 'undefined') ? service.menus[menuId].items[itemIndex].roles : options.roles), position: options.position || 0, shouldRender: shouldRender diff --git a/modules/core/client/views/header.client.view.html b/modules/core/client/views/header.client.view.html index 28a354e0..c09e9770 100644 --- a/modules/core/client/views/header.client.view.html +++ b/modules/core/client/views/header.client.view.html @@ -14,7 +14,7 @@ {{::item.title}}  diff --git a/modules/core/tests/client/menus.client.service.tests.js b/modules/core/tests/client/menus.client.service.tests.js index bb1fa015..11773539 100644 --- a/modules/core/tests/client/menus.client.service.tests.js +++ b/modules/core/tests/client/menus.client.service.tests.js @@ -300,6 +300,7 @@ var subItemOptions = { title: 'title', state: 'sub.state', + params: { p1: 'val1' }, isPublic: false, roles: ['a', 'b'], position: 4 @@ -378,6 +379,10 @@ it('should set position to options position', function() { expect(subItem1.position).toEqual(subItemOptions.position); }); + + it('should set params to options params', function() { + expect(subItem1.params).toEqual(subItemOptions.params); + }); }); describe('without optoins set', function() {