blob: a48f842dfa0ffd364bb61f760315d8007e337ebe [file] [log] [blame]
{"version":3,"sources":["node_modules/tslib/tslib.es6.js","ng://@covalent/core/steps/step.component.ts","ng://@covalent/core/steps/steps.component.ts","ng://@covalent/core/steps/step-header/step-header.component.ts","ng://@covalent/core/steps/step-body/step-body.component.ts","ng://@covalent/core/steps/nav/nav-step-link/nav-step-link.component.ts","ng://@covalent/core/steps/nav/nav-steps-horizontal/nav-steps-horizontal.component.ts","ng://@covalent/core/steps/nav/nav-steps-vertical/nav-steps-vertical.component.ts","ng://@covalent/core/steps/steps.module.ts"],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","hasOwnProperty","__extends","__","this","constructor","prototype","create","None","Required","Complete","tslib_1.__extends","TemplatePortalDirective","Directive","args","selector","TemplateRef","ViewContainerRef","TdStepLabelDirective","templateRef","viewContainerRef","_super","call","TdStepActionsDirective","TdStepSummaryDirective","_TdStepMixinBase","mixinDisableRipple","mixinDisabled","TdStepBase","TdStepComponent","defineProperty","_contentPortal","_active","active","_setActive","coerceBooleanProperty","_state","state","StepState","ngOnInit","TemplatePortal","_content","_viewContainerRef","toggle","open","close","isComplete","onDisabledChange","v","_onDeactivated","newActive","disabled","_onActivated","onActivated","emit","undefined","onDeactivated","Component","inputs","template","ViewChild","ContentChild","Input","Output","_this","EventEmitter","Vertical","Horizontal","TdStepsComponent","steps","_steps","_registerSteps","toArray","_mode","mode","StepMode","ngAfterContentInit","ngOnDestroy","_deregisterSteps","isHorizontal","isVertical","areStepsActive","filter","step","length","_onStepSelection","prevStep","event_1","newStep","_deactivateAllBut","onStepChange","activeStep","forEach","_subcriptions","subscription","asObservable","subscribe","push","subs","unsubscribe","host","class","ContentChildren","_TdStepHeaderMixinBase","TdStepHeaderBase","TdStepHeaderComponent","isRequired","apply","arguments","TdStepBodyComponent","contentRef","nativeElement","children","textContent","trim","actionsRef","summaryRef","animations","tdCollapseAnimation","read","ElementRef","TdNavStepLinkComponent","_changeDetectorRef","markForCheck","_handleClick","click","preventDefault","stopImmediatePropagation","changeDetection","ChangeDetectionStrategy","OnPush","[class.td-step-link]","[attr.tabindex]","[attr.disabled]","[class.mat-disabled]","(click)","ChangeDetectorRef","elementRef","TdNavStepsHorizontalComponent","element","_elementRef","style","window","getComputedStyle","borderLeft","parseInt","borderRight","marginLeft","marginRight","paddingLeft","paddingRight","getBoundingClientRect","width","merge","_widthSubject","pipe","distinctUntilChanged","_viewportRuler","change","_dir","of","changes","takeUntil","_destroyed","_configureSteps","updatePagination","ngAfterContentChecked","next","nativeElementWidth","_scrollDistanceChanged","_updateStepScrollPosition","complete","_handleKeydown","event","keyCode","LEFT_ARROW","_scrollHeader","RIGHT_ARROW","_checkPaginationEnabled","_checkScrollingControls","_getLayoutDirection","value","translateX","scrollDistance","_stepList","transform","Math","round","_stepListContainer","scrollLeft","_getMaxScrollDistance","_scrollDistance","max","min","scrollDir","offsetWidth","isEnabled","scrollWidth","_showPaginationControls","_disableScrollBefore","_disableScrollAfter","_separators","separator","_renderer","removeChild","stepsArray","index","createElement","addClass","insertBefore","number","[class.td-step-header-pagination-controls-enabled]","[class.td-step-header-rtl]","ViewportRuler","Directionality","decorators","type","Optional","Renderer2","Subject","TdNavStepsVerticalComponent","separatorChild","appendChild","TD_STEPS","CovalentStepsModule","NgModule","imports","CommonModule","MatIconModule","MatRippleModule","PortalModule","ScrollDispatchModule","CovalentCommonModule","declarations","exports"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0)\r\n t[p[i]] = s[p[i]];\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n 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;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { Component, Directive, Input, Output, TemplateRef, ViewChild,\n ViewContainerRef, ContentChild, OnInit } from '@angular/core';\nimport { EventEmitter } from '@angular/core';\nimport { TemplatePortalDirective, TemplatePortal } from '@angular/cdk/portal';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\n\nimport { ICanDisable, mixinDisabled, ICanDisableRipple, mixinDisableRipple } from '@covalent/core/common';\n\nexport enum StepState {\n None = 'none',\n Required = 'required',\n Complete = 'complete',\n}\n\n@Directive({\n selector: '[td-step-label]ng-template',\n})\nexport class TdStepLabelDirective extends TemplatePortalDirective {\n constructor(templateRef: TemplateRef<any>, viewContainerRef: ViewContainerRef) {\n super(templateRef, viewContainerRef);\n }\n}\n\n@Directive({\n selector: '[td-step-actions]ng-template',\n})\nexport class TdStepActionsDirective extends TemplatePortalDirective {\n constructor(templateRef: TemplateRef<any>, viewContainerRef: ViewContainerRef) {\n super(templateRef, viewContainerRef);\n }\n}\n\n@Directive({\n selector: '[td-step-summary]ng-template',\n})\nexport class TdStepSummaryDirective extends TemplatePortalDirective {\n constructor(templateRef: TemplateRef<any>, viewContainerRef: ViewContainerRef) {\n super(templateRef, viewContainerRef);\n }\n}\n\nexport class TdStepBase {}\n\n/* tslint:disable-next-line */\nexport const _TdStepMixinBase = mixinDisableRipple(mixinDisabled(TdStepBase));\n\n@Component({\n selector: 'td-step',\n inputs: ['disabled', 'disableRipple'],\n templateUrl: './step.component.html',\n})\nexport class TdStepComponent extends _TdStepMixinBase implements OnInit, ICanDisable, ICanDisableRipple {\n\n private _active: boolean = false;\n private _state: StepState = StepState.None;\n\n private _contentPortal: TemplatePortal<any>;\n get stepContent(): TemplatePortal<any> {\n return this._contentPortal;\n }\n\n @ViewChild(TemplateRef) _content: TemplateRef<any>;\n @ContentChild(TdStepLabelDirective) stepLabel: TdStepLabelDirective;\n @ContentChild(TdStepActionsDirective) stepActions: TdStepActionsDirective;\n @ContentChild(TdStepSummaryDirective) stepSummary: TdStepSummaryDirective;\n\n /**\n * label?: string\n * Sets label of [TdStepComponent] header.\n * Defaults to 'Step #'\n */\n @Input('label') label: string;\n\n /**\n * sublabel?: string\n * Sets sublabel of [TdStepComponent] header.\n */\n @Input('sublabel') sublabel: string;\n\n /**\n * active?: boolean\n * Toggles [TdStepComponent] between active/deactive.\n */\n @Input('active')\n set active(active: boolean) {\n this._setActive(coerceBooleanProperty(active));\n }\n get active(): boolean {\n return this._active;\n }\n\n /**\n * state?: StepState or ['none' | 'required' | 'complete']\n * Sets state of [TdStepComponent] depending on value.\n * Defaults to [StepState.None | 'none'].\n */\n @Input('state')\n set state(state: StepState) {\n switch (state) {\n case StepState.Complete:\n this._state = StepState.Complete;\n break;\n case StepState.Required:\n this._state = StepState.Required;\n break;\n default:\n this._state = StepState.None;\n break;\n }\n }\n get state(): StepState {\n return this._state;\n }\n\n /**\n * activated?: function\n * Event emitted when [TdStepComponent] is activated.\n */\n @Output('activated') onActivated: EventEmitter<void> = new EventEmitter<void>();\n\n /**\n * deactivated?: function\n * Event emitted when [TdStepComponent] is deactivated.\n */\n @Output('deactivated') onDeactivated: EventEmitter<void> = new EventEmitter<void>();\n\n constructor(private _viewContainerRef: ViewContainerRef) {\n super();\n }\n\n ngOnInit(): void {\n this._contentPortal = new TemplatePortal(this._content, this._viewContainerRef);\n }\n\n /**\n * Toggle active state of [TdStepComponent]\n * retuns 'true' if successful, else 'false'.\n */\n toggle(): boolean {\n return this._setActive(!this._active);\n }\n\n /**\n * Opens [TdStepComponent]\n * retuns 'true' if successful, else 'false'.\n */\n open(): boolean {\n return this._setActive(true);\n }\n\n /**\n * Closes [TdStepComponent]\n * retuns 'true' if successful, else 'false'.\n */\n close(): boolean {\n return this._setActive(false);\n }\n\n /**\n * Returns 'true' if [state] equals to [StepState.Complete | 'complete'], else 'false'.\n */\n isComplete(): boolean {\n return this._state === StepState.Complete;\n }\n\n /** Method executed when the disabled value changes */\n onDisabledChange(v: boolean): void {\n if (v && this._active) {\n this._active = false;\n this._onDeactivated();\n }\n }\n\n /**\n * Method to change active state internally and emit the [onActivated] event if 'true' or [onDeactivated]\n * event if 'false'. (Blocked if [disabled] is 'true')\n * returns true if successfully changed state\n */\n private _setActive(newActive: boolean): boolean {\n if (this.disabled) {\n return false;\n }\n if (this._active !== newActive) {\n this._active = newActive;\n if (newActive) {\n this._onActivated();\n } else {\n this._onDeactivated();\n }\n return true;\n }\n return false;\n }\n\n private _onActivated(): void {\n this.onActivated.emit(undefined);\n }\n\n private _onDeactivated(): void {\n this.onDeactivated.emit(undefined);\n }\n}\n","import { Component, Input, Output } from '@angular/core';\nimport { OnDestroy, AfterContentInit } from '@angular/core';\nimport { EventEmitter, ContentChildren, QueryList } from '@angular/core';\nimport { Subscription } from 'rxjs';\n\nimport { TdStepComponent } from './step.component';\n\nexport interface IStepChangeEvent {\n newStep: TdStepComponent;\n prevStep: TdStepComponent;\n}\n\nexport enum StepMode {\n Vertical = 'vertical',\n Horizontal = 'horizontal',\n}\n\n@Component({\n selector: 'td-steps',\n styleUrls: ['./steps.component.scss' ],\n templateUrl: './steps.component.html',\n /* tslint:disable-next-line */\n host: {\n class: 'td-steps',\n },\n})\nexport class TdStepsComponent implements OnDestroy, AfterContentInit {\n\n private _subcriptions: Subscription[];\n private _mode: StepMode = StepMode.Vertical;\n private _steps: QueryList<TdStepComponent>;\n\n @ContentChildren(TdStepComponent)\n set stepsContent(steps: QueryList<TdStepComponent>) {\n if (steps) {\n this._steps = steps;\n this._registerSteps();\n }\n }\n\n get steps(): TdStepComponent[] {\n return this._steps.toArray();\n }\n prevStep: TdStepComponent;\n\n /**\n * mode?: StepMode or [\"vertical\" | \"horizontal\"]\n * Defines if the mode of the [TdStepsComponent]. Defaults to [StepMode.Vertical | \"vertical\"]\n */\n @Input('mode')\n set mode(mode: StepMode) {\n switch (mode) {\n case StepMode.Horizontal:\n this._mode = StepMode.Horizontal;\n break;\n default:\n this._mode = StepMode.Vertical;\n }\n }\n get mode(): StepMode {\n return this._mode;\n }\n\n /**\n * stepChange?: function\n * Method to be executed when [onStepChange] event is emitted.\n * Emits an [IStepChangeEvent] implemented object.\n */\n @Output('stepChange') onStepChange: EventEmitter<IStepChangeEvent> = new EventEmitter<IStepChangeEvent>();\n\n /**\n * Executed after content is initialized, loops through any [TdStepComponent] children elements,\n * assigns them a number and subscribes as an observer to their [onActivated] event.\n */\n ngAfterContentInit(): void {\n this._registerSteps();\n }\n\n /**\n * Unsubscribes from [TdStepComponent] children elements when component is destroyed.\n */\n ngOnDestroy(): void {\n this._deregisterSteps();\n }\n\n /**\n * Returns 'true' if [mode] equals to [StepMode.Horizontal | 'horizontal'], else 'false'.\n */\n isHorizontal(): boolean {\n return this._mode === StepMode.Horizontal;\n }\n\n /**\n * Returns 'true' if [mode] equals to [StepMode.Vertical | 'vertical'], else 'false'.\n */\n isVertical(): boolean {\n return this._mode === StepMode.Vertical;\n }\n\n areStepsActive(): boolean {\n return this._steps.filter((step: TdStepComponent) => {\n return step.active;\n }).length > 0;\n }\n\n /**\n * Wraps previous and new [TdStepComponent] numbers in an object that implements [IStepChangeEvent]\n * and emits [onStepChange] event.\n */\n private _onStepSelection(step: TdStepComponent): void {\n if (this.prevStep !== step) {\n let prevStep: TdStepComponent = this.prevStep;\n this.prevStep = step;\n let event: IStepChangeEvent = {\n newStep: step,\n prevStep: prevStep,\n };\n this._deactivateAllBut(step);\n this.onStepChange.emit(event);\n }\n }\n\n /**\n * Loops through [TdStepComponent] children elements and deactivates them ignoring the one passed as an argument.\n */\n private _deactivateAllBut(activeStep: TdStepComponent): void {\n this._steps.filter((step: TdStepComponent) => step !== activeStep)\n .forEach((step: TdStepComponent) => {\n step.active = false;\n });\n }\n\n private _registerSteps(): void {\n this._subcriptions = [];\n this._steps.toArray().forEach((step: TdStepComponent) => {\n let subscription: Subscription = step.onActivated.asObservable().subscribe(() => {\n this._onStepSelection(step);\n });\n this._subcriptions.push(subscription);\n });\n }\n\n private _deregisterSteps(): void {\n if (this._subcriptions) {\n this._subcriptions.forEach((subs: Subscription) => {\n subs.unsubscribe();\n });\n this._subcriptions = undefined;\n }\n }\n}\n","import { Component, Input } from '@angular/core';\n\nimport { ICanDisable, mixinDisabled, ICanDisableRipple, mixinDisableRipple } from '@covalent/core/common';\n\nimport { StepState } from '../step.component';\n\nexport class TdStepHeaderBase {}\n\n/* tslint:disable-next-line */\nexport const _TdStepHeaderMixinBase = mixinDisableRipple(mixinDisabled(TdStepHeaderBase));\n\n@Component({\n selector: 'td-step-header',\n inputs: ['disabled', 'disableRipple'],\n styleUrls: ['./step-header.component.scss' ],\n templateUrl: './step-header.component.html',\n})\nexport class TdStepHeaderComponent extends _TdStepHeaderMixinBase implements ICanDisable, ICanDisableRipple {\n\n /**\n * Number assigned to [TdStepHeaderComponent].\n */\n @Input('number') number: number;\n\n /**\n * active?: boolean\n * Sets for active/inactive states on header.\n */\n @Input('active') active: boolean;\n\n /**\n * state?: StepState or ['none' | 'required' | 'complete']\n * Sets styles for state of header.\n * Defaults to [StepState.None | 'none'].\n */\n @Input('state') state: StepState = StepState.None;\n\n /**\n * tabIndex?: number\n * tabIndex of the step header for a11y\n */\n @Input('tabIndex') tabIndex: number;\n\n /**\n * Returns 'true' if [state] equals to [StepState.Complete | 'complete'], else 'false'.\n */\n isComplete(): boolean {\n return this.state === StepState.Complete;\n }\n\n /**\n * Returns 'true' if [state] equals to [StepState.Required | 'required'], else 'false'.\n */\n isRequired(): boolean {\n return this.state === StepState.Required;\n }\n}\n","import { Component, Input, ViewChild, ElementRef } from '@angular/core';\n\nimport { StepState } from '../step.component';\n\nimport { tdCollapseAnimation } from '@covalent/core/common';\n\n@Component({\n selector: 'td-step-body',\n styleUrls: ['./step-body.component.scss' ],\n templateUrl: './step-body.component.html',\n animations: [\n tdCollapseAnimation,\n ],\n})\nexport class TdStepBodyComponent {\n\n @ViewChild('contentRef', { read: ElementRef }) contentRef: ElementRef;\n\n get hasContent(): boolean {\n return this.contentRef &&\n (this.contentRef.nativeElement.children.length > 0 || !!this.contentRef.nativeElement.textContent.trim());\n }\n\n @ViewChild('actionsRef', { read: ElementRef }) actionsRef: ElementRef;\n\n get hasActions(): boolean {\n return this.actionsRef &&\n (this.actionsRef.nativeElement.children.length > 0 || !!this.actionsRef.nativeElement.textContent.trim());\n }\n\n @ViewChild('summaryRef', { read: ElementRef }) summaryRef: ElementRef;\n\n get hasSummary(): boolean {\n return this.summaryRef &&\n (this.summaryRef.nativeElement.children.length > 0 || !!this.summaryRef.nativeElement.textContent.trim());\n }\n\n /**\n * active?: boolean\n * Sets for active/inactive states on body.\n */\n @Input('active') active: boolean;\n\n /**\n * state?: StepState or ['none' | 'required' | 'complete']\n * Sets styles for state of body.\n * Defaults to [StepState.None | 'none'].\n */\n @Input('state') state: StepState = StepState.None;\n\n /**\n * Returns 'true' if [state] equals to [StepState.Complete | 'complete'], else 'false'.\n */\n isComplete(): boolean {\n return this.state === StepState.Complete;\n }\n}\n","import { Component, ChangeDetectionStrategy, ChangeDetectorRef, Input, ElementRef } from '@angular/core';\n\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\n\nimport { ICanDisable, ICanDisableRipple } from '@covalent/core/common';\nimport { _TdStepMixinBase, StepState } from '../../step.component';\n\n@Component({\n selector: '[td-step-link],[tdStepLink]',\n styleUrls: ['./nav-step-link.component.scss'],\n templateUrl: './nav-step-link.component.html',\n inputs: ['disabled', 'disableRipple'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n /* tslint:disable-next-line */\n host: {\n '[class.td-step-link]': 'true',\n '[attr.tabindex]': 'disabled ? -1 : (tabIndex || 0)',\n '[attr.disabled]': 'disabled || null',\n '[class.mat-disabled]': 'disabled || null',\n '(click)': '_handleClick($event)',\n },\n})\nexport class TdNavStepLinkComponent extends _TdStepMixinBase implements ICanDisable, ICanDisableRipple {\n\n private _active: boolean = false;\n private _state: StepState = StepState.None;\n\n // Number to display in step header\n number: number;\n\n /**\n * state?: StepState or ['none' | 'required' | 'complete']\n * Sets state of component depending on value.\n * Defaults to [StepState.None | 'none'].\n */\n @Input('state')\n set state(state: StepState) {\n switch (state) {\n case StepState.Complete:\n this._state = StepState.Complete;\n break;\n case StepState.Required:\n this._state = StepState.Required;\n break;\n default:\n this._state = StepState.None;\n break;\n }\n }\n get state(): StepState {\n return this._state;\n }\n\n /**\n * label?: string\n * Label to display in step header\n * Defaults to empty\n */\n @Input('label') label: string;\n\n /**\n * sublabel?: string\n * Sublabel to display in step header\n * Defaults to empty\n */\n @Input('sublabel') sublabel: string;\n\n /**\n * active?: boolean\n * Toggles component between active/deactive.\n */\n @Input('active')\n set active(active: boolean) {\n this._active = coerceBooleanProperty(active);\n this._changeDetectorRef.markForCheck();\n }\n get active(): boolean {\n return this._active;\n }\n\n /**\n * tabIndex?: number\n * tabIndex for component\n */\n @Input('tabIndex') tabIndex: number;\n\n constructor(private _changeDetectorRef: ChangeDetectorRef,\n public elementRef: ElementRef) {\n super();\n }\n\n _handleClick(click: Event): void {\n if (this.disabled) {\n click.preventDefault();\n click.stopImmediatePropagation();\n }\n }\n\n}\n","import { Component, Optional, ContentChildren, ViewChild, QueryList, OnDestroy, ChangeDetectionStrategy, \n AfterContentInit, AfterContentChecked, ChangeDetectorRef, ElementRef, Renderer2 } from '@angular/core';\n\nimport { Subject, merge, of } from 'rxjs';\nimport { distinctUntilChanged, takeUntil } from 'rxjs/operators';\n\nimport { Direction, Directionality } from '@angular/cdk/bidi';\nimport { RIGHT_ARROW, LEFT_ARROW } from '@angular/cdk/keycodes';\nimport { ViewportRuler } from '@angular/cdk/scrolling';\n\nimport { TdNavStepLinkComponent } from '../nav-step-link/nav-step-link.component';\n\n/**\n * The directions that scrolling can go in when the header's tabs exceed the header width. 'After'\n * will scroll the header towards the end of the tabs list and 'before' will scroll towards the\n * beginning of the list.\n */\nexport type ScrollDirection = 'after' | 'before';\n\n@Component({\n selector: 'nav[td-steps][horizontal]',\n styleUrls: ['./nav-steps-horizontal.component.scss'],\n templateUrl: './nav-steps-horizontal.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n /* tslint:disable-next-line */\n host: {\n class: 'td-steps td-steps-horizontal',\n '[class.td-step-header-pagination-controls-enabled]': '_showPaginationControls',\n '[class.td-step-header-rtl]': \"_getLayoutDirection() == 'rtl'\",\n },\n})\nexport class TdNavStepsHorizontalComponent implements AfterContentChecked, AfterContentInit, OnDestroy {\n\n private _separators: HTMLElement[] = [];\n\n /** Emits when the component is destroyed. */\n private readonly _destroyed: Subject<void> = new Subject<void>();\n\n private _widthSubject: Subject<number> = new Subject<number>();\n\n private _scrollDistance: number = 0;\n private _scrollDistanceChanged: boolean = false;\n\n /** Whether the controls for pagination should be displayed */\n _showPaginationControls: boolean = false;\n\n /** Whether the step list can be scrolled more towards the end. */\n _disableScrollAfter: boolean = true;\n\n /** Whether the step list can be scrolled more towards the beginning. */\n _disableScrollBefore: boolean = true;\n\n // all the sub components, which are the individual steps\n @ContentChildren(TdNavStepLinkComponent) _steps: QueryList<TdNavStepLinkComponent>;\n\n @ViewChild('stepListContainer') _stepListContainer: ElementRef;\n @ViewChild('stepList') _stepList: ElementRef;\n\n /*\n * Current width of the element container\n */\n get nativeElementWidth(): number {\n let element: HTMLElement = (<HTMLElement>this._elementRef.nativeElement);\n\n // Need to take into account border, margin and padding that might be around all the crumbs\n let style: CSSStyleDeclaration = window.getComputedStyle(element);\n let borderLeft: number = parseInt(style.borderLeft, 10);\n let borderRight: number = parseInt(style.borderRight, 10);\n let marginLeft: number = parseInt(style.marginLeft, 10);\n let marginRight: number = parseInt(style.marginRight, 10);\n let paddingLeft: number = parseInt(style.paddingLeft, 10);\n let paddingRight: number = parseInt(style.paddingRight, 10);\n\n return element.getBoundingClientRect().width - borderLeft - borderRight - marginLeft - marginRight - paddingLeft - paddingRight;\n }\n\n constructor(private _elementRef: ElementRef,\n private _viewportRuler: ViewportRuler,\n @Optional() private _dir: Directionality,\n private _renderer: Renderer2,\n private _changeDetectorRef: ChangeDetectorRef) { }\n\n ngAfterContentInit(): void {\n merge(\n this._widthSubject.asObservable().pipe(\n distinctUntilChanged(),\n ),\n this._viewportRuler.change(150),\n this._dir ? this._dir.change : of(undefined),\n this._steps.changes,\n ).pipe(\n takeUntil(this._destroyed),\n ).subscribe(() => {\n this._configureSteps();\n this.updatePagination();\n this._changeDetectorRef.markForCheck();\n });\n this._configureSteps();\n this._changeDetectorRef.markForCheck();\n }\n\n ngAfterContentChecked(): void {\n if (this._elementRef && this._elementRef.nativeElement) {\n this._widthSubject.next(this.nativeElementWidth);\n }\n if (this._scrollDistanceChanged) {\n this._updateStepScrollPosition();\n this._scrollDistanceChanged = false;\n this._changeDetectorRef.markForCheck();\n }\n }\n\n ngOnDestroy(): void {\n this._destroyed.next();\n this._destroyed.complete();\n }\n\n /**\n * Listen to right and left key events to move the the viewport.\n */\n _handleKeydown(event: KeyboardEvent): void {\n switch (event.keyCode) {\n case LEFT_ARROW:\n this._scrollHeader('before');\n event.preventDefault();\n break;\n case RIGHT_ARROW:\n this._scrollHeader('after');\n event.preventDefault();\n break;\n default:\n // do something\n }\n }\n\n /**\n * Updates the view whether pagination should be enabled or not.\n */\n updatePagination(): void {\n this._checkPaginationEnabled();\n this._checkScrollingControls();\n this._updateStepScrollPosition();\n }\n\n /** The layout direction of the containing app. */\n _getLayoutDirection(): Direction {\n return this._dir && this._dir.value === 'rtl' ? 'rtl' : 'ltr';\n }\n\n /** Performs the CSS transformation on the step list that will cause the list to scroll. */\n _updateStepScrollPosition(): void {\n const translateX: number = this._getLayoutDirection() === 'ltr' ? -this.scrollDistance : this.scrollDistance;\n // Move step list the amount of pixels scrolled\n this._stepList.nativeElement.style.transform = `translateX(${Math.round(translateX)}px)`;\n\n // Setting the `transform` on IE will change the scroll offset of the parent, causing the\n // position to be thrown off in some cases. We have to reset it ourselves to ensure that\n // it doesn't get thrown off.\n if (this._getLayoutDirection() === 'ltr') {\n this._stepListContainer.nativeElement.scrollLeft = 0;\n } else {\n this._stepListContainer.nativeElement.scrollLeft = this._getMaxScrollDistance();\n }\n }\n\n /** Sets the distance in pixels that the step header should be transformed in the X-axis. */\n get scrollDistance(): number { return this._scrollDistance; }\n set scrollDistance(v: number) {\n this._scrollDistance = Math.max(0, Math.min(this._getMaxScrollDistance(), v));\n\n // Mark that the scroll distance has changed so that after the view is checked, the CSS\n // transformation can move the header.\n this._scrollDistanceChanged = true;\n this._checkScrollingControls();\n }\n\n /**\n * Moves the step list in the 'before' or 'after' direction (towards the beginning of the list or\n * the end of the list, respectively).\n */\n _scrollHeader(scrollDir: ScrollDirection): void {\n // Move the scroll distance one-half the length of the step list's viewport.\n this.scrollDistance += (scrollDir === 'before' ? -1 : 1) * this._stepListContainer.nativeElement.offsetWidth / 2;\n }\n\n /**\n * Evaluate whether the pagination controls should be displayed. If the scroll width of the\n * step list is wider than the size of the header container, then the pagination controls should\n * be shown.\n */\n _checkPaginationEnabled(): void {\n const isEnabled: boolean =\n this._stepList.nativeElement.scrollWidth > this._elementRef.nativeElement.offsetWidth;\n\n if (!isEnabled) {\n this.scrollDistance = 0;\n }\n\n if (isEnabled !== this._showPaginationControls) {\n this._changeDetectorRef.markForCheck();\n }\n\n this._showPaginationControls = isEnabled;\n }\n\n /**\n * Evaluate whether the before and after controls should be enabled or disabled.\n * If the header is at the beginning of the list (scroll distance is equal to 0) then disable the\n * before button. If the header is at the end of the list (scroll distance is equal to the\n * maximum distance we can scroll), then disable the after button.\n */\n _checkScrollingControls(): void {\n // Check if the pagination arrows should be activated.\n this._disableScrollBefore = this.scrollDistance === 0;\n this._disableScrollAfter = this.scrollDistance === this._getMaxScrollDistance();\n this._changeDetectorRef.markForCheck();\n }\n\n /**\n * Determines what is the maximum length in pixels that can be set for the scroll distance. This\n * is equal to the difference in width between the step list container and step header container.\n */\n _getMaxScrollDistance(): number {\n return (this._stepList.nativeElement.scrollWidth - this._stepListContainer.nativeElement.offsetWidth) || 0;\n }\n\n /**\n * Set the step line separators and display numbers\n */\n private _configureSteps(): void {\n this._separators.forEach((separator: HTMLElement) => {\n this._renderer.removeChild(this._stepList.nativeElement, separator);\n });\n let stepsArray: TdNavStepLinkComponent[] = this._steps.toArray();\n // set the index number of the step so can display that number in circle\n stepsArray.forEach((step: TdNavStepLinkComponent, index: number) => {\n if (index > 0 && index < stepsArray.length) {\n let separator: any = this._renderer.createElement('div');\n this._renderer.addClass(separator, 'td-horizontal-line');\n this._separators.push(separator);\n this._renderer.insertBefore(this._stepList.nativeElement, separator, step.elementRef.nativeElement);\n }\n step.number = index + 1;\n });\n \n }\n\n}\n","import { Component, ContentChildren, ViewChild, QueryList, OnDestroy, ChangeDetectionStrategy, \n AfterContentInit, Renderer2, ChangeDetectorRef, ElementRef } from '@angular/core';\n\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { TdNavStepLinkComponent } from '../nav-step-link/nav-step-link.component';\n\n/**\n * The directions that scrolling can go in when the header's tabs exceed the header width. 'After'\n * will scroll the header towards the end of the tabs list and 'before' will scroll towards the\n * beginning of the list.\n */\nexport type ScrollDirection = 'after' | 'before';\n\n@Component({\n selector: 'nav[td-steps][vertical]',\n styleUrls: ['./nav-steps-vertical.component.scss'],\n templateUrl: './nav-steps-vertical.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n /* tslint:disable-next-line */\n host: {\n class: 'td-steps td-steps-vertical',\n },\n})\nexport class TdNavStepsVerticalComponent implements AfterContentInit, OnDestroy {\n\n private _separators: HTMLElement[] = [];\n\n /** Emits when the component is destroyed. */\n private readonly _destroyed: Subject<void> = new Subject<void>();\n\n // all the sub components, which are the individual steps\n @ContentChildren(TdNavStepLinkComponent) _steps: QueryList<TdNavStepLinkComponent>;\n\n @ViewChild('stepList') _stepList: ElementRef;\n\n constructor(private _renderer: Renderer2,\n private _changeDetectorRef: ChangeDetectorRef) { }\n\n ngAfterContentInit(): void {\n this._steps.changes.pipe(\n takeUntil(this._destroyed),\n ).subscribe(() => {\n this._configureSteps();\n this._changeDetectorRef.markForCheck();\n });\n this._configureSteps();\n this._changeDetectorRef.markForCheck();\n }\n\n ngOnDestroy(): void {\n this._destroyed.next();\n this._destroyed.complete();\n }\n\n /**\n * Set the step line separators and display numbers\n */\n private _configureSteps(): void {\n this._separators.forEach((separator: HTMLElement) => {\n this._renderer.removeChild(this._stepList.nativeElement, separator);\n });\n let stepsArray: TdNavStepLinkComponent[] = this._steps.toArray();\n // set the index number of the step so can display that number in circle\n stepsArray.forEach((step: TdNavStepLinkComponent, index: number) => {\n if (index > 0 && index < stepsArray.length) {\n let separator: any = this._renderer.createElement('div');\n this._renderer.addClass(separator, 'td-vertical-line-wrapper');\n let separatorChild: any = this._renderer.createElement('div');\n this._renderer.addClass(separatorChild, 'td-vertical-line');\n this._renderer.appendChild(separator, separatorChild);\n this._separators.push(separator);\n this._renderer.insertBefore(this._stepList.nativeElement, separator, step.elementRef.nativeElement);\n }\n step.number = index + 1;\n });\n \n }\n\n}\n","import { Type } from '@angular/core';\nimport { NgModule, ModuleWithProviders } from '@angular/core';\n\nimport { CommonModule } from '@angular/common';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { ScrollDispatchModule } from '@angular/cdk/scrolling';\n\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatRippleModule } from '@angular/material/core';\n\nimport { CovalentCommonModule } from '@covalent/core/common';\n\n// Steps\nimport { TdStepsComponent } from './steps.component';\nimport { TdStepHeaderComponent } from './step-header/step-header.component';\nimport { TdStepBodyComponent } from './step-body/step-body.component';\nimport { TdStepComponent, TdStepLabelDirective, TdStepActionsDirective,\n TdStepSummaryDirective } from './step.component';\n\n// Nav Steps\nimport { TdNavStepsHorizontalComponent } from './nav/nav-steps-horizontal/nav-steps-horizontal.component';\nimport { TdNavStepsVerticalComponent } from './nav/nav-steps-vertical/nav-steps-vertical.component';\nimport { TdNavStepLinkComponent } from './nav/nav-step-link/nav-step-link.component';\n\nconst TD_STEPS: Type<any>[] = [\n TdStepsComponent,\n TdStepComponent,\n TdStepHeaderComponent,\n TdStepBodyComponent,\n TdStepLabelDirective,\n TdStepActionsDirective,\n TdStepSummaryDirective,\n TdNavStepsHorizontalComponent,\n TdNavStepsVerticalComponent,\n TdNavStepLinkComponent,\n\n];\n\n@NgModule({\n imports: [\n CommonModule,\n MatIconModule,\n MatRippleModule,\n PortalModule,\n ScrollDispatchModule,\n CovalentCommonModule,\n ],\n declarations: [\n TD_STEPS,\n ],\n exports: [\n TD_STEPS,\n ],\n})\nexport class CovalentStepsModule {\n\n}\n"]}