aboutsummaryrefslogtreecommitdiffstats
path: root/catalog-ui/app/scripts/view-models/onboard-vendor/onboard-vendor-view-model.ts
diff options
context:
space:
mode:
Diffstat (limited to 'catalog-ui/app/scripts/view-models/onboard-vendor/onboard-vendor-view-model.ts')
-rw-r--r--catalog-ui/app/scripts/view-models/onboard-vendor/onboard-vendor-view-model.ts148
1 files changed, 0 insertions, 148 deletions
diff --git a/catalog-ui/app/scripts/view-models/onboard-vendor/onboard-vendor-view-model.ts b/catalog-ui/app/scripts/view-models/onboard-vendor/onboard-vendor-view-model.ts
deleted file mode 100644
index c8be2b7361..0000000000
--- a/catalog-ui/app/scripts/view-models/onboard-vendor/onboard-vendor-view-model.ts
+++ /dev/null
@@ -1,148 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-/// <reference path="../../references.ts"/>
-module Sdc.ViewModels {
- 'use strict';
-
- export class BreadcrumbsMenuItem {
- key: string;
- displayText: string;
- }
-
- export class BreadcrumbsMenu {
- selectedKey: string;
- menuItems: Array<BreadcrumbsMenuItem>;
- }
-
- export class BreadcrumbsPath {
- selectedKeys: Array<string>;
- }
-
- export class VendorData {
- breadcrumbs: BreadcrumbsPath;
- }
-
- export interface IOnboardVendorViewModelScope extends ng.IScope {
- vendorData: VendorData;
- onVendorEvent: Function;
- topNavMenuModel: Array<Utils.MenuItemGroup>;
- topNavRootMenu: Utils.MenuItemGroup;
- user:Models.IUserProperties;
- version:string;
- }
-
- export class OnboardVendorViewModel {
- static '$inject' = [
- '$scope',
- '$q',
- 'Sdc.Services.CacheService'
- ];
-
- private firstControlledTopNavMenu: Utils.MenuItemGroup;
-
- constructor(
- private $scope: IOnboardVendorViewModelScope,
- private $q: ng.IQService,
- private cacheService:Services.CacheService
- ) {
-
- this.$scope.vendorData = {
- breadcrumbs: {
- selectedKeys: []
- }
- };
-
- this.$scope.version = this.cacheService.get('version');
-
- this.$scope.onVendorEvent = (eventName:string, data:any): void => {
- switch (eventName) {
- case 'breadcrumbsupdated':
- this.handleBreadcrumbsUpdate(data);
- break;
- }
- };
-
- this.$scope.topNavMenuModel = [];
-
- this.$scope.user = this.cacheService.get('user');
- }
-
- updateBreadcrumbsPath = (selectedKeys: Array<string>): ng.IPromise<boolean> => {
- let topNavMenuModel = this.$scope.topNavMenuModel;
- let startIndex = topNavMenuModel.indexOf(this.firstControlledTopNavMenu);
- if (startIndex === -1) {
- startIndex = topNavMenuModel.length;
- }
- topNavMenuModel.splice(startIndex + selectedKeys.length);
- this.$scope.vendorData = {
- breadcrumbs: { selectedKeys: selectedKeys }
- };
-
- return this.$q.when(true);
- };
-
- handleBreadcrumbsUpdate(breadcrumbsMenus: Array<BreadcrumbsMenu>): void {
- let selectedKeys = [];
- let topNavMenus = breadcrumbsMenus.map((breadcrumbMenu, breadcrumbIndex) => {
- let topNavMenu = new Utils.MenuItemGroup();
- topNavMenu.menuItems = breadcrumbMenu.menuItems.map(menuItem =>
- new Utils.MenuItem(
- menuItem.displayText,
- this.updateBreadcrumbsPath,
- null,
- null,
- [selectedKeys.concat([menuItem.key])]
- )
- );
- topNavMenu.selectedIndex = _.findIndex(
- breadcrumbMenu.menuItems,
- menuItem => menuItem.key === breadcrumbMenu.selectedKey
- );
- selectedKeys.push(breadcrumbMenu.selectedKey);
- return topNavMenu;
- });
-
- let topNavMenuModel = this.$scope.topNavMenuModel;
- let len = topNavMenuModel.length;
- let startIndex = topNavMenuModel.indexOf(this.firstControlledTopNavMenu);
- if (startIndex === -1) {
- startIndex = len;
- }
- topNavMenuModel.splice(startIndex, len - startIndex);
- topNavMenuModel.push.apply(topNavMenuModel, topNavMenus);
- this.firstControlledTopNavMenu = topNavMenus[0];
-
- if (startIndex === 1 && this.$scope.topNavRootMenu == null) {
- let topNavRootMenu = topNavMenuModel[0];
- let onboardItem = topNavRootMenu.menuItems[topNavRootMenu.selectedIndex];
- let originalCallback = onboardItem.callback;
- onboardItem.callback = (...args) => {
- let ret = this.updateBreadcrumbsPath([]);
- return originalCallback && originalCallback.apply(undefined, args) || ret;
- };
- this.$scope.topNavRootMenu = topNavRootMenu;
- }
-
- this.updateBreadcrumbsPath(selectedKeys);
- }
- }
-
-
-}