UNPKG

cpi-specification

Version:

Childrens Plus Inc. Specification Component for Angular projects

603 lines (592 loc) 176 kB
(function (global, factory) { typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('jquery'), require('@syncfusion/ej2-notifications'), require('@angular/platform-browser'), require('@angular/http'), require('@angular/forms'), require('@angular/common/http'), require('@syncfusion/ej2-angular-buttons'), require('@syncfusion/ej2-angular-dropdowns'), require('@syncfusion/ej2-angular-grids'), require('@syncfusion/ej2-angular-inputs'), require('@syncfusion/ej2-angular-navigations'), require('@syncfusion/ej2-angular-notifications'), require('@angular/core')) : typeof define === 'function' && define.amd ? define('cpi-specification', ['exports', 'jquery', '@syncfusion/ej2-notifications', '@angular/platform-browser', '@angular/http', '@angular/forms', '@angular/common/http', '@syncfusion/ej2-angular-buttons', '@syncfusion/ej2-angular-dropdowns', '@syncfusion/ej2-angular-grids', '@syncfusion/ej2-angular-inputs', '@syncfusion/ej2-angular-navigations', '@syncfusion/ej2-angular-notifications', '@angular/core'], factory) : (factory((global['cpi-specification'] = {}),global.$,global.ej2Notifications,global.ng.platformBrowser,global.ng.http,global.ng.forms,global.ng.common.http,global.ej2AngularButtons,global.ej2AngularDropdowns,global.ej2AngularGrids,global.ej2AngularInputs,global.ej2AngularNavigations,global.ej2AngularNotifications,global.ng.core)); }(this, (function (exports,$,ej2Notifications,platformBrowser,http,forms,i1,ej2AngularButtons,ej2AngularDropdowns,ej2AngularGrids,ej2AngularInputs,ej2AngularNavigations,ej2AngularNotifications,i0) { 'use strict'; $ = $ && $.hasOwnProperty('default') ? $['default'] : $; /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ var SpecificationsService = /** @class */ (function () { function SpecificationsService() { } SpecificationsService.decorators = [ { type: i0.Injectable, args: [{ providedIn: 'root' },] } ]; /** @nocollapse */ SpecificationsService.ctorParameters = function () { return []; }; /** @nocollapse */ SpecificationsService.ngInjectableDef = i0.defineInjectable({ factory: function SpecificationsService_Factory() { return new SpecificationsService(); }, token: SpecificationsService, providedIn: "root" }); return SpecificationsService; }()); /*! ***************************************************************************** Copyright (c) Microsoft Corporation. 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 THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABLITY OR NON-INFRINGEMENT. See the Apache Version 2.0 License for specific language governing permissions and limitations under the License. ***************************************************************************** */ function __awaiter(thisArg, _arguments, P, generator) { return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); } function __generator(thisArg, body) { var _ = { label: 0, sent: function () { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function () { return this; }), g; function verb(n) { return function (v) { return step([n, v]); }; } function step(op) { if (f) throw new TypeError("Generator is already executing."); while (_) try { if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; if (y = 0, t) op = [op[0] & 2, t.value]; switch (op[0]) { case 0: case 1: t = op; break; case 4: _.label++; return { value: op[1], done: false }; case 5: _.label++; y = op[1]; op = [0]; continue; case 7: op = _.ops.pop(); _.trys.pop(); continue; default: if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } if (t[2]) _.ops.pop(); _.trys.pop(); continue; } op = body.call(thisArg, _); } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; } } /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ var Constants = /** @class */ (function () { function Constants() { /* #region Titles */ this.TITLE_CPI_CATALOG = 'CPI Cataloging Application'; this.TITLE_SPECIFICATION = 'Specification'; this.TITLE_LOGIN = 'Login'; /* #endregion */ } return Constants; }()); /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ var SharedService = /** @class */ (function () { function SharedService() { } /** * @param {?} title * @param {?} content * @return {?} */ SharedService.prototype.showToastAsync = /** * @param {?} title * @param {?} content * @return {?} */ function (title, content) { return __awaiter(this, void 0, void 0, function () { var _this = this; return __generator(this, function (_a) { return [2 /*return*/, new Promise(( /** * @param {?} resolve * @return {?} */function (resolve) { return __awaiter(_this, void 0, void 0, function () { var toastModel, toast; return __generator(this, function (_a) { toastModel = { content: content, position: { X: 'CENTER', Y: 'TOP' }, showCloseButton: true, title: title }; toast = new ej2Notifications.Toast(toastModel, document.querySelector('#toast')); toast.show(); resolve(); return [2 /*return*/]; }); }); }))]; }); }); }; SharedService.decorators = [ { type: i0.Injectable, args: [{ providedIn: 'root' },] } ]; /** @nocollapse */ SharedService.ctorParameters = function () { return []; }; /** @nocollapse */ SharedService.ngInjectableDef = i0.defineInjectable({ factory: function SharedService_Factory() { return new SharedService(); }, token: SharedService, providedIn: "root" }); return SharedService; }()); /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ var SpecificationService = /** @class */ (function () { function SpecificationService(httpClient) { this.httpClient = httpClient; this.getSpecifications = [ { SubTag: 'sampleTag1', Description: 'VINET' }, { SubTag: 'sampleTag 2', Description: 'sample' }, { SubTag: 'sampleTag 3', Description: 'description' }, { SubTag: 'sampleTag 2', Description: 'sample' }, { SubTag: 'sampleTag 3', Description: 'description' } ]; } /** * @param {?} specificationID * @param {?} api_URL * @return {?} */ SpecificationService.prototype.getSpecificationsAsync = /** * @param {?} specificationID * @param {?} api_URL * @return {?} */ function (specificationID, api_URL) { return __awaiter(this, void 0, void 0, function () { return __generator(this, function (_a) { switch (_a.label) { case 0: return [4 /*yield*/, this.httpClient.get(api_URL + "/" + specificationID).toPromise()]; case 1: return [2 /*return*/, _a.sent()]; } }); }); }; /** * @param {?} specificationID * @param {?} specification * @param {?} api_URL * @return {?} */ SpecificationService.prototype.saveSpecificationAsync = /** * @param {?} specificationID * @param {?} specification * @param {?} api_URL * @return {?} */ function (specificationID, specification, api_URL) { return __awaiter(this, void 0, void 0, function () { return __generator(this, function (_a) { switch (_a.label) { case 0: if (!(specificationID == 0)) return [3 /*break*/, 2]; return [4 /*yield*/, this.httpClient.post("" + api_URL, specification).toPromise()]; case 1: return [2 /*return*/, _a.sent()]; case 2: return [4 /*yield*/, this.httpClient.put(api_URL + "/" + specificationID, specification).toPromise()]; case 3: return [2 /*return*/, _a.sent()]; } }); }); }; SpecificationService.decorators = [ { type: i0.Injectable, args: [{ providedIn: 'root' },] } ]; /** @nocollapse */ SpecificationService.ctorParameters = function () { return [ { type: i1.HttpClient } ]; }; /** @nocollapse */ SpecificationService.ngInjectableDef = i0.defineInjectable({ factory: function SpecificationService_Factory() { return new SpecificationService(i0.inject(i1.HttpClient)); }, token: SpecificationService, providedIn: "root" }); return SpecificationService; }()); /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ var SpecificationsComponent = /** @class */ (function () { function SpecificationsComponent(constants, sharedService, specificationService) { this.constants = constants; this.sharedService = sharedService; this.specificationService = specificationService; this.type = 'Push'; this.target = '.content'; this.prevDiv = ""; } /** * @return {?} */ SpecificationsComponent.prototype.ngOnInit = /** * @return {?} */ function () { return __awaiter(this, void 0, void 0, function () { return __generator(this, function (_a) { switch (_a.label) { case 0: this.specificationTitle = this.constants.TITLE_SPECIFICATION; $(document).ready(( /** * @return {?} */function () { document.getElementById("dividshow").className = "hide-catalog-fixed-header"; document.getElementById("licatalog1").className = "active-link"; $(document).click(( /** * @param {?} e * @return {?} */function (e) { checkClassJS($(window)); })); window.onbeforeunload = ( /** * @return {?} */function () { window.scrollTo(0, 0); }); window.onscroll = ( /** * @return {?} */function () { checkClassJS($(this)); }); /** * @param {?} e * @return {?} */ function checkClassJS(e) { if ($(".sidebar-dropdown").find(".clicksidebar").length >= 1) { $("#collapseSidebar").removeClass("clicksidebar"); return; } /** @type {?} */ var $sections = $('.containerDiv'); // currentScroll is the number of pixels the window has been scrolled /** @type {?} */ var currentScroll = e.scrollTop(); // $currentSection is somewhere to place the section we must be looking at /** @type {?} */ var $currentSection; // We check the position of each of the divs compared to the windows scroll positon /** @type {?} */ var sidemenu = $("#maincontent").find(".e-open").length; $sections.each(( /** * @return {?} */function () { // divPosition is the position down the page in px of the current section we are testing /** @type {?} */ var divPosition = $(this).offset().top; // If the divPosition is less the the currentScroll position the div we are testing has moved above the window edge. // the -1 is so that it includes the div 1px before the div leave the top of the window. if (divPosition - 300 < currentScroll) { // We have either read the section or are currently reading the section so we'll call it our current section $currentSection = $(this); /** @type {?} */ var id = $currentSection.prop('id'); $(".active-link").addClass("sidebar-item"); $(".active-link").removeClass("active-link"); if ($(window).scrollTop() + $(window).height() >= $(document).height() - 350) { document.getElementById("licatalog5").className = "active-link"; } else { if (id.indexOf('catalog3Div') >= 0) { $('.sidebar-dropdown a').removeClass('collapsed'); $('.sidebar-dropdown a').prop('aria-expanded', true); $('#submenu').addClass("show"); } else { $('.sidebar-dropdown a').addClass('collapsed'); $('.sidebar-dropdown a').prop('aria-expanded', false); $('#submenu').removeClass("show"); } document.getElementById("li" + id).className = "active-link"; } } /** @type {?} */ var catalog3header = document.getElementById('catalog3header').getBoundingClientRect(); /** @type {?} */ var top = catalog3header.top; /** @type {?} */ var catalog3Div15 = document.getElementById('catalog3Div15').getBoundingClientRect(); /** @type {?} */ var divTop = catalog3Div15.top; if (top <= 0 && divTop > 0) { if (sidemenu > 0) { document.getElementById("dividshow").className = "e-content-animation catalog-fixed-header sidemenu well row col-12"; } else { document.getElementById("dividshow").className = "e-content-animation catalog-fixed-header well row col-12"; } } else { document.getElementById("dividshow").className = "hide-catalog-fixed-header"; } })); } })); return [4 /*yield*/, this.getCardsSpecificationAsync(this.SpecificationId)]; case 1: _a.sent(); return [2 /*return*/]; } }); }); }; /** * @param {?} i * @return {?} */ SpecificationsComponent.prototype.checkClass = /** * @param {?} i * @return {?} */ function (i) { /** @type {?} */ var catalog3header = document.getElementById('catalog3header').getBoundingClientRect(); /** @type {?} */ var top = catalog3header.top; /** @type {?} */ var catalog3Div15 = document.getElementById('catalog3Div15').getBoundingClientRect(); /** @type {?} */ var divTop = catalog3Div15.top; if (top <= 0 && divTop > 0) { if (i >= 0) { document.getElementById("dividshow").className = "e-content-animation catalog-fixed-header sidemenu well row col-12"; } else { document.getElementById("dividshow").className = "e-content-animation catalog-fixed-header well row col-12"; } } else { document.getElementById("dividshow").className = "hide-catalog-fixed-header"; } }; /** * @return {?} */ SpecificationsComponent.prototype.onClickCloseSideBar = /** * @return {?} */ function () { this.sidebar.hide(); this.togglebtn.element.classList.remove('e-active'); }; /** * @return {?} */ SpecificationsComponent.prototype.onClickSaveSpecificationsAsync = /** * @return {?} */ function () { return __awaiter(this, void 0, void 0, function () { return __generator(this, function (_a) { switch (_a.label) { case 0: return [4 /*yield*/, this.specificationService.saveSpecificationAsync(1, this.specification, this.API_URL)]; case 1: _a.sent(); return [4 /*yield*/, this.sharedService.showToastAsync(this.specificationTitle, "Specifications saved successfully.")]; case 2: _a.sent(); return [2 /*return*/]; } }); }); }; /** * @return {?} */ SpecificationsComponent.prototype.onClickToggle = /** * @return {?} */ function () { if (this.togglebtn.element.classList.contains('e-active')) { this.sidebar.hide(); this.checkClass(0); } else { this.sidebar.show(); this.checkClass(1); } }; /** * @param {?} elementId * @return {?} */ SpecificationsComponent.prototype.scrollToTop = /** * @param {?} elementId * @return {?} */ function (elementId) { document.getElementById(elementId).scrollIntoView(true); if (this.prevDiv == "") { this.prevDiv = "catalog1"; } /** @type {?} */ var previousdiv = this.prevDiv; this.prevDiv = elementId; document.getElementById("li" + elementId).className = "active-link"; document.getElementById("li" + previousdiv).classList.remove("active-link"); document.getElementById("li" + previousdiv).className = "sidebar-item"; /** @type {?} */ var scrolledY = window.scrollY; if (scrolledY && elementId != 'catalog3Div1' && elementId.indexOf('catalog3Div') >= 0) { window.scroll(0, scrolledY - 130); } else if (scrolledY && elementId != 'catalog3Div1') { window.scroll(0, scrolledY - 80); } else if (scrolledY && elementId == 'catalog3Div1') { window.scroll(0, scrolledY - 290); } }; /** * @return {?} */ SpecificationsComponent.prototype.onClickCheckSideDropdown = /** * @return {?} */ function () { $('#collapseSidebar').addClass('clicksidebar'); }; /** * @param {?} specificationId * @return {?} */ SpecificationsComponent.prototype.getCardsSpecificationAsync = /** * @param {?} specificationId * @return {?} */ function (specificationId) { return __awaiter(this, void 0, void 0, function () { var _a; return __generator(this, function (_b) { switch (_b.label) { case 0: _a = this; return [4 /*yield*/, this.specificationService.getSpecificationsAsync(specificationId, this.API_URL)]; case 1: _a.specification = _b.sent(); return [2 /*return*/]; } }); }); }; SpecificationsComponent.decorators = [ { type: i0.Component, args: [{ selector: 'cpi-lib-specifications', template: " <div id=\"head\">\r\n <div class=\"navbar-open-icon\">\r\n <span ejs-button id=\"toggle\" #togglebtn class=\"nav-open\" cssClass=\"e-flat\" iconCss=\"e-icons burg-icon\"\r\n isToggle=\"true\" (click)=\"onClickToggle()\">\u2630</span>\r\n </div>\r\n <div class=\"col-sm-6 pull-right padding-top-5\">\r\n <div class=\"btn-header\">\r\n <button ejs-button class=\"pull-right\" (click)=\"onClickSaveSpecificationsAsync()\">Save</button>\r\n <button ejs-button class=\"pull-right\">Print</button>\r\n <button ejs-button class=\"pull-right\">Finished</button>\r\n </div>\r\n </div>\r\n\r\n <div id=\"dividshow\" class=\"catalog-fixed-header well row\">\r\n <div class=\"col-sm-4\">\r\n <div class=\"text-bold\">Classification Prefix</div>\r\n </div>\r\n <div class=\"col-sm-3\">\r\n <div class=\"text-bold\">Classification Option </div>\r\n </div>\r\n <div class=\"col-sm-3\">\r\n <div class=\"text-bold\"> Number of Main Entry Letters</div>\r\n </div>\r\n <div class=\"col-sm-2\">\r\n <div class=\"text-bold align-text\">Example</div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"content-top\">\r\n <ejs-sidebar id=\"default-sidebar\" #sidebar [type]='type' [target]='target'>\r\n <div class=\"center-align\">\r\n <button ejs-button id=\"close\" (click)=\"onClickCloseSideBar()\" class=\"e-btn close-btn\">X</button>\r\n </div>\r\n <div id=\"menulist\" class=\"dock\">\r\n <ul>\r\n <li id=\"licatalog1\" class=\"sidebar-item\" (click)=\"scrollToTop('catalog1')\">\r\n <span class=\"e-text\" title=\"catalog1\">Cards and Spine Labels</span>\r\n </li>\r\n <li id=\"licatalog2\" class=\"sidebar-item\" (click)=\"scrollToTop('catalog2')\">\r\n <span class=\"e-text\" title=\"catalog2\">Barcodes and MARC Records</span>\r\n </li>\r\n <li class=\"sidebar-item sidebar-dropdown\">\r\n <a id=\"collapseSidebar\" class=\"accordion-toggle collapsed toggle-switch\" data-toggle=\"collapse\"\r\n (click)=\"onClickCheckSideDropdown()\" href=\"#submenu\">\r\n <span class=\"e-text padding-right-10\" title=\"catalog3\">Classification Options</span>\r\n <b>v</b>\r\n </a>\r\n\r\n <ul id=\"submenu\" class=\"panel-collapse collapse panel-switch\" role=\"menu\">\r\n <li id=\"licatalog3Div1\" class=\"sidebar-item\" (click)=\"scrollToTop('catalog3Div1')\">\r\n <span class=\"e-text\" title=\"Individual Biography\">Individual Biography </span>\r\n </li>\r\n <li id=\"licatalog3Div2\" class=\"sidebar-item\" (click)=\"scrollToTop('catalog3Div2')\">\r\n <span class=\"e-text\" title=\"Easy Books (Fiction Grades K-3)\">Easy Books (Fiction Grades\r\n K-3)</span>\r\n </li>\r\n <li id=\"licatalog3Div3\" class=\"sidebar-item\" (click)=\"scrollToTop('catalog3Div3')\">\r\n <span class=\"e-text\" title=\"Easy Chapter Books (Fiction Grades K-3)\">Easy Chapter Books\r\n (Fiction Grades K-3)</span>\r\n </li>\r\n <li id=\"licatalog3Div4\" class=\"sidebar-item\" (click)=\"scrollToTop('catalog3Div4')\">\r\n <span class=\"e-text\" title=\"Fiction Grades4-8\">Fiction Grades 4-8</span>\r\n </li>\r\n <li id=\"licatalog3Div5\" class=\"sidebar-item\" (click)=\"scrollToTop('catalog3Div5')\">\r\n <span class=\"e-text\" title=\"Fiction Grades 9 and above\">Fiction Grades 9 and above</span>\r\n </li>\r\n <li id=\"licatalog3Div6\" class=\"sidebar-item\" (click)=\"scrollToTop('catalog3Div6')\">\r\n <span class=\"e-text\" title=\"Graphic Fiction\">Graphic Fiction</span>\r\n </li>\r\n <li id=\"licatalog3Div7\" class=\"sidebar-item\" (click)=\"scrollToTop('catalog3Div7')\">\r\n <span class=\"e-text\" title=\"Non-fiction Grades K-3\">Non-fiction Grades K-3</span>\r\n </li>\r\n <li id=\"licatalog3Div8\" class=\"sidebar-item\" (click)=\"scrollToTop('catalog3Div8')\">\r\n <span class=\"e-text\" title=\"Non-fiction Grades 4-8\">Non-fiction Grades 4-8</span>\r\n </li>\r\n <li id=\"licatalog3Div9\" class=\"sidebar-item\" (click)=\"scrollToTop('catalog3Div9')\">\r\n <span class=\"e-text\" title=\"Non-fiction Grades 9 and above\">Non-fiction Grades 9 and above</span>\r\n </li>\r\n <li id=\"licatalog3Div10\" class=\"sidebar-item\" (click)=\"scrollToTop('catalog3Div10')\">\r\n <span class=\"e-text\" title=\"Graphic Nonfiction\">Graphic Nonfiction</span>\r\n </li>\r\n <li id=\"licatalog3Div11\" class=\"sidebar-item\" (click)=\"scrollToTop('catalog3Div11')\">\r\n <span class=\"e-text\" title=\"Collective Biography\">Collective Biography</span>\r\n </li>\r\n <li id=\"licatalog3Div12\" class=\"sidebar-item\" (click)=\"scrollToTop('catalog3Div12')\">\r\n <span class=\"e-text\" title=\"Story Collections\">Story Collections</span>\r\n </li>\r\n <li id=\"licatalog3Div13\" class=\"sidebar-item\" (click)=\"scrollToTop('catalog3Div13')\">\r\n <span class=\"e-text\" title=\"Foreign Language\">Foreign Language</span>\r\n </li>\r\n <li id=\"licatalog3Div14\" class=\"sidebar-item\" (click)=\"scrollToTop('catalog3Div14')\">\r\n <span class=\"e-text\" title=\"Bilingual (English/Spanish) Books\">Bilingual (English/Spanish)\r\n Books</span>\r\n </li>\r\n <li id=\"licatalog3Div15\" class=\"sidebar-item\" (click)=\"scrollToTop('catalog3Div15')\">\r\n <span class=\"e-text\" title=\"Reference (Dictionaries and Encyclopedias)\">Reference (Dictionaries\r\n and Encyclopedias)</span>\r\n </li>\r\n </ul>\r\n\r\n </li>\r\n <li id=\"licatalog4\" class=\"sidebar-item\" (click)=\"scrollToTop('catalog4')\">\r\n <span class=\"e-text\" title=\"catalog4\">Attachment Instructions</span>\r\n </li>\r\n <li id=\"licatalog5\" class=\"sidebar-item\" (click)=\"scrollToTop('catalog5')\">\r\n <span class=\"e-text\" title=\"catalog5\">Custom Holding</span>\r\n </li>\r\n </ul>\r\n </div>\r\n </ejs-sidebar>\r\n\r\n\r\n\r\n\r\n <div class=\"right-body\">\r\n <div id=\"maincontent\" class=\"content\">\r\n <div id=\"cha1\">\r\n <div id=\"catalog1\" class=\"containerDiv\">\r\n <cpi-cards [specification]=\"specification\"></cpi-cards>\r\n </div>\r\n <div id=\"catalog2\" class=\"containerDiv\">\r\n <cpi-barcodes [specification]=\"specification\"></cpi-barcodes>\r\n </div>\r\n <div id=\"catalog3\">\r\n <cpi-cataloging [specification]=\"specification\"></cpi-cataloging>\r\n </div>\r\n <div id=\"catalog4\" class=\"containerDiv\">\r\n <cpi-attachment-instructions [specification]=\"specification\"></cpi-attachment-instructions>\r\n </div>\r\n <div id=\"catalog5\" class=\"containerDiv\">\r\n <cpi-custom-holding></cpi-custom-holding>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div id=\"toast\" class=\"margin-top-75\"></div>\r\n", styles: [".title{text-align:center;font-size:20px;padding:15px}.sub-title{text-align:center;font-size:16px;padding:10px}#wrapper .sub-title .column{display:inline-block;padding:10px}.center{text-align:center;display:none;font-size:13px;font-weight:400;margin-top:20px}.sb-content-tab .center{display:block}.checkbox-content{padding:10px}.box-input{border:1.2px solid #a933da;padding:10px;margin:20px 40px;width:50%}.box-input .e-float-input{padding:10px 5px}.box-input .e-float-input input{margin:0 10px;width:90%}.radio-btn-session .inline-header{font-weight:700;display:inline}.radio-btn-session .inline-radio-btn{display:inline;padding-left:30px}.radio-btn-session .inline-radio-btn .e-radio-wrapper{padding:0 10px}.e-input{margin:0 10px}.sub-heading{padding:10px}ejs-radiobutton{margin:5px 0;padding:0 5px}.e-radio+label::before{height:16px;width:16px;left:1px;top:1px}.e-float-input{padding:5px 0}.padding-rl-15{padding:0 15px}input[type=checkbox],input[type=radio]{margin:0 10px}#head button,.catalog2-body button{margin:0 6px;border-radius:44px;color:#fff;background:#8b3b94;padding:3px 10px;border:1px solid #8b3b94;text-transform:uppercase}.attachment-img{padding-bottom:15px}figure{display:inline}.tag-table{padding:33px}.tag-table .e-grid.e-default{border:1px solid #a933da}.tag-table .e-grid.e-default th{border-bottom:1px solid #a933da}.tag-table .e-grid.e-default th span{font-weight:700;color:#000}.tag-table .e-grid.e-default th:first-child{border-right:1px solid #a933da}.tag-table .e-grid.e-default td:first-child{border-right:1px solid #ddd}#maincontent{padding-top:70px}.session{height:55px}.catalog-fixed-header{padding-bottom:35px;color:#8b3b94;font-size:14px;border:1px solid #8b3b94;margin-top:19px}.sidemenu{margin-left:13.4%;width:86.6%}.padding-right-10{padding-right:10px}.hidediv{color:#a90a0a}.hide-catalog-fixed-header{visibility:hidden}.fiction-block .e-radio-wrapper{display:block}.label-barcode{font-size:16px}.margin-bot-10{margin-bottom:10px}.margin-top-10{margin-top:10px}.remove-bold{font-weight:400}.sb-content-tab #wrapper{display:none}#dockSidebar.e-sidebar.e-right.e-close{visibility:visible;-webkit-transform:translateX(0);transform:translateX(0)}#dockSidebar .e-icons::before{font-size:25px}#dockSidebar .home::before{content:'\\e7a4'}#dockSidebar .profile::before{content:'\\e7d4'}#dockSidebar .info::before{content:'\\e7e7'}#dockSidebar .settings::before{content:'\\e7cf'}.e-sidebar .expand::before,.e-sidebar.e-right.e-open .expand::before{content:'\\e85c'}.e-sidebar.e-open .expand::before,.e-sidebar.e-right .expand::before{content:'\\e98f'}#dockSidebar.e-close .sidebar-item{padding:5px 20px}#dockSidebar.e-dock.e-close span.e-text{display:none}#dockSidebar.e-dock.e-open span.e-text{display:inline-block}#dockSidebar li{list-style-type:none;cursor:pointer}#dockSidebar ul{padding:0}#dockSidebar.e-sidebar ul li:hover span{color:#fff}#dockSidebar span.e-icons{color:#c0c2c5;line-height:2}.e-open .e-icons{margin-right:16px}.e-open .e-text{overflow:hidden;text-overflow:ellipsis;line-height:23px;font-size:14px}.sidebar-item{text-align:center;border-bottom:1px solid #e5e5e58a}.e-sidebar.e-open li{text-align:left;padding-left:15px;padding-top:15px}#dockSidebar.e-sidebar{background:#2d323e;overflow:hidden}#default-sidebar.e-sidebar{background:#2d323e;width:250px!important;position:fixed;top:72px}#default-sidebar.e-sidebar button{background:0 0;box-shadow:none;color:#fff;float:right}.dock{padding-top:30px}.dock ul{list-style:none;padding:0}.dock ul li{border-bottom:none;cursor:pointer}#head{background:#f6e6f1;position:fixed;width:100%;z-index:999;padding:15px;height:70px}.navbar-open-icon span{font-size:30px;cursor:pointer;padding:0}.navbar-open-icon{display:inline}.sidebar-item a,.sidebar-item span{color:#808184}.sidebar-dropdown a:focus,.sidebar-dropdown a:hover,.sidebar-item span:hover{color:#fff;text-decoration:none}li.active-link,li.sidebar-item ul.panel-collapse li.active-link{text-align:left;padding-left:15px;padding-top:15px;color:#bd6ec5!important}li.sidebar-item ul.panel-collapse li.active-link span{color:#bd6ec5!important}.e-radio+label .e-label{padding-left:20px}.text-bold{font-weight:700}.padding-top-5{padding-top:5px}.e-btn.e-flat:focus,.e-btn.e-flat:hover{background-color:#f6e6f0;border-color:#f6e6f0}.pull-right{float:right}.navbar-full{margin-left:-15px}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;box-shadow:inset 0 1px 1px rgba(0,0,0,.05)}.nav-open{margin-left:-50px}"] }] } ]; /** @nocollapse */ SpecificationsComponent.ctorParameters = function () { return [ { type: Constants }, { type: SharedService }, { type: SpecificationService } ]; }; SpecificationsComponent.propDecorators = { sidebar: [{ type: i0.ViewChild, args: ['sidebar',] }], togglebtn: [{ type: i0.ViewChild, args: ['togglebtn',] }], API_URL: [{ type: i0.Input }], SpecificationId: [{ type: i0.Input }] }; return SpecificationsComponent; }()); /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ var AttachmentInstructionsComponent = /** @class */ (function () { function AttachmentInstructionsComponent() { } /** * @return {?} */ AttachmentInstructionsComponent.prototype.ngOnInit = /** * @return {?} */ function () { }; AttachmentInstructionsComponent.decorators = [ { type: i0.Component, args: [{ selector: 'cpi-attachment-instructions', template: " <div class=\"clearfix\">\r\n <div class=\"header-row\">\r\n <h4>4) Attachment Instructions</h4>\r\n </div>\r\n\r\n <div class=\"sub-heading label-barcode\">\r\n <label class=\"text-bold\">Barcode label Location</label>\r\n </div>\r\n <div class=\"clearfix\">\r\n <div class=\"col-sm-12\">\r\n <div>\r\n <label class=\"e-float-input text-bold col-1\">Barcode labels to be</label>\r\n <ejs-radiobutton label=\"attached**\" name=\"BarcodeAttached\" value=\"1\"\r\n [(ngModel)]=\"specification.attachmentInstruction.barcodeAttached\">\r\n </ejs-radiobutton>\r\n <ejs-radiobutton label=\"not attached\" name=\"BarcodeAttached\" value=\"2\"\r\n [(ngModel)]=\"specification.attachmentInstruction.barcodeAttached\">\r\n </ejs-radiobutton>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\" attachment-img col-sm-12\">\r\n <img src=\"../../assets/images/LabelPosition.jpg\" />\r\n </div>\r\n </div>\r\n <p>***If barcode labels are to be attached, indicate desired positions(s) of barcode\r\n label(s) here as indicated by the letters in the graphic above</p>\r\n <div class=\"row\">\r\n <div class=\"e-float-input\">\r\n <label class=\"text-bold label\">1)</label>\r\n <input type='text' #firstPosition class=\"e-input required readonly input-box col-1\"\r\n [(ngModel)]=\"specification.attachmentInstruction.firstPosition\" />\r\n </div>\r\n <div class=\"e-float-input\">\r\n <label class=\"text-bold label\">2)</label>\r\n <input type='text' #secondPosition class=\"e-input required readonly input-box col-1\"\r\n [(ngModel)]=\"specification.attachmentInstruction.secondPosition\" />\r\n </div>\r\n <div class=\"e-float-input\">\r\n <label class=\"text-bold label\">3)</label>\r\n <input type='text' #thirdPosition class=\"e-input required readonly input-box col-1\"\r\n [(ngModel)]=\"specification.attachmentInstruction.thirdPosition\" />\r\n </div>\r\n </div>\r\n\r\n <ejs-checkbox cssClass=\"e-small text-bold\" label=\"Please indicate here if barcode should not be moved from\r\n specified location***\" [(ngModel)]=\"specification.attachmentInstruction.haveBarcode\" #haveBarcode>\r\n </ejs-checkbox>\r\n <br />\r\n <div class=\"e-float-input text-bold\">\r\n ***If barcode is to be placed on outside front cover of book it is standard not to\r\n cover the title.\r\n </div>\r\n <br />\r\n <div class=\"row\">\r\n <div class=\"col-sm-4\">\r\n <label class=\"e-float-input text-bold\">Barcode labels to be</label>\r\n <div>\r\n <ejs-radiobutton label=\"horizontal\" name=\"barcodelabelsPosition\" value=\"1\"\r\n [(ngModel)]=\"specification.attachmentInstruction.barcodelabelsPosition\"></ejs-radiobutton>\r\n </div>\r\n <div>\r\n <ejs-radiobutton label=\"vertical (left, parallel to spine of book)\" name=\"barcodelabelsPosition\" value=\"2\"\r\n [(ngModel)]=\"specification.attachmentInstruction.barcodelabelsPosition\"></ejs-radiobutton>\r\n </div>\r\n <div>\r\n <ejs-radiobutton label=\"vertical (right, parallel to spine of book)\" name=\"barcodelabelsPosition\"\r\n value=\"3\" [(ngModel)]=\"specification.attachmentInstruction.barcodelabelsPosition\"></ejs-radiobutton>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-sm-8 row\">\r\n <figure class=\"col-sm-2\">\r\n <figcaption>Horizontal</figcaption>\r\n <img src=\"../../assets/images/HorizontalBarCode.jpg\" />\r\n </figure>\r\n <figure class=\"col-sm-2\">\r\n <figcaption>Vertical Left</figcaption>\r\n <img src=\"../../assets/images/VerticalBarCode-left.gif\" />\r\n </figure>\r\n <figure class=\"col-sm-2\">\r\n <figcaption>Vertical Right</figcaption>\r\n <img src=\"../../assets/images/VerticalBarCode-right.gif\" />\r\n </figure>\r\n </div>\r\n </div>\r\n <div class=\"margin-bot-10\">\r\n <label>Clear barcode label protectors to be applied to all attached barcode labels</label>\r\n\r\n <ejs-radiobutton label=\"Yes\" name=\"clearBarcode\" value=\"1\"\r\n [(ngModel)]=\"specification.attachmentInstruction.clearBarcode\">\r\n </ejs-radiobutton>\r\n <ejs-radiobutton label=\"No\" name=\"clearBarcode\" value=\"2\"\r\n [(ngModel)]=\"specification.attachmentInstruction.clearBarcode\">\r\n </ejs-radiobutton>\r\n </div>\r\n <div class=\"col-sm-5\">\r\n\r\n <label class=\"label-bold\">Spine label location</label>\r\n <div>\r\n <ejs-checkbox cssClass=\"e-small\" label=\"1 1/2 inches from bottom of spine\"\r\n [(ngModel)]=\"specification.attachmentInstruction.spineBottom\" #spineBottom></ejs-checkbox>\r\n </div>\r\n <div>\r\n <ejs-checkbox cssClass=\"e-small\" label=\"Clear spine label protector attached\"\r\n [(ngModel)]=\"specification.attachmentInstruction.clearSpine\" #clearSpine></ejs-checkbox>\r\n </div>\r\n <div>\r\n <ejs-checkbox cssClass=\"e-small\" label=\"Spine label not attached\"\r\n [(ngModel)]=\"specification.attachmentInstruction.haveSpineLabel\" #haveSpineLabel></ejs-checkbox>\r\n </div>\r\n <div>\r\n <ejs-checkbox cssClass=\"e-small\" label=\"Other\"\r\n [(ngModel)]=\"specification.attachmentInstruction.spineLableOther\" #spineLableOther></ejs-checkbox>\r\n </div>\r\n <div class=\"e-float-input\">\r\n <input type='text' class=\"e-input required readonly input-box\"\r\n [(ngModel)]=\"specification.attachmentInstruction.spineLableOtherDescription\"\r\n #spineLableOtherDescription />\r\n </div>\r\n <label class=\"margin-top-10\">Book pocket/Date due slip location</label>\r\n <div>\r\n <ejs-radiobutton label=\"Inside front cover\" name=\"BookPocket\" value=\"1\"\r\n [(ngModel)]=\"specification.attachmentInstruction.bookPocket\">\r\n </ejs-radiobutton>\r\n </div>\r\n <div>\r\n <ejs-radiobutton label=\"Inside back cover\" name=\"BookPocket\" value=\"2\"\r\n [(ngModel)]=\"specification.attachmentInstruction.bookPocket\">\r\n </ejs-radiobutton>\r\n </div>\r\n <div>\r\n <ejs-radiobutton label=\"Front fly leaf\" name=\"BookPocket\" value=\"3\"\r\n [(ngModel)]=\"specification.attachmentInstruction.bookPocket\">\r\n </ejs-radiobutton>\r\n </div>\r\n <div>\r\n <ejs-radiobutton label=\"Back fly leaf\" name=\"BookPocket\" value=\"4\"\r\n [(ngModel)]=\"specification.attachmentInstruction.bookPocket\">\r\n </ejs-radiobutton>\r\n </div>\r\n <div>\r\n <ejs-radiobutton label=\"Book pockets not attached\" name=\"BookPocket\" value=\"5\"\r\n [(ngModel)]=\"specification.attachmentInstruction.bookPocket\">\r\n