{"version":3,"file":"seniorsistemas-angular-components-timeline.mjs","sources":["../../projects/angular-components/timeline/src/lib/timeline/components/timeline-icon-item/timeline-icon-item.component.ts","../../projects/angular-components/timeline/src/lib/timeline/components/timeline-icon-item/timeline-icon-item.component.html","../../projects/angular-components/timeline/src/lib/timeline/components/horizontal-timeline/horizontal-timeline.component.ts","../../projects/angular-components/timeline/src/lib/timeline/components/horizontal-timeline/horizontal-timeline.component.html","../../projects/angular-components/timeline/src/lib/timeline/components/vertical-timeline/components/range-line/range-line.component.ts","../../projects/angular-components/timeline/src/lib/timeline/components/vertical-timeline/components/range-line/range-line.component.html","../../projects/angular-components/timeline/src/lib/timeline/components/vertical-timeline/components/collapse-option/collapse-option.component.ts","../../projects/angular-components/timeline/src/lib/timeline/components/vertical-timeline/components/collapse-option/collapse-option.component.html","../../projects/angular-components/timeline/src/lib/timeline/components/vertical-timeline/components/collapsed-items/collapsed-items.component.ts","../../projects/angular-components/timeline/src/lib/timeline/components/vertical-timeline/components/collapsed-items/collapsed-items.component.html","../../projects/angular-components/timeline/src/lib/timeline/components/vertical-timeline/components/vertical-items/vertical-items.component.ts","../../projects/angular-components/timeline/src/lib/timeline/components/vertical-timeline/components/vertical-items/vertical-items.component.html","../../projects/angular-components/timeline/src/lib/timeline/components/vertical-timeline/vertical-timeline.component.ts","../../projects/angular-components/timeline/src/lib/timeline/components/vertical-timeline/vertical-timeline.component.html","../../projects/angular-components/timeline/src/lib/timeline/timeline.component.ts","../../projects/angular-components/timeline/src/lib/timeline/timeline.component.html","../../projects/angular-components/timeline/src/lib/timeline/components/timeline-icon-item/timeline-icon-item.module.ts","../../projects/angular-components/timeline/src/lib/timeline/components/horizontal-timeline/horizontal-timeline.module.ts","../../projects/angular-components/timeline/src/lib/timeline/components/vertical-timeline/vertical-timeline.module.ts","../../projects/angular-components/timeline/src/lib/timeline/timeline.module.ts","../../projects/angular-components/timeline/src/lib/timeline/models/timeline-item-severity.ts","../../projects/angular-components/timeline/src/lib/timeline/models/timeline-item-size.ts","../../projects/angular-components/timeline/src/lib/timeline/models/timeline-item.ts","../../projects/angular-components/timeline/src/seniorsistemas-angular-components-timeline.ts"],"sourcesContent":["import { Component, Input } from '@angular/core';\n\nimport { TimelineItem } from '../../models/timeline-item';\n\n@Component({\n    selector: 's-timeline-icon-item',\n    templateUrl: './timeline-icon-item.component.html',\n    styleUrls: ['./timeline-icon-item.component.scss'],\n})\nexport class TimelineIconItemComponent {\n    @Input({ required: true })\n    public item!: TimelineItem;\n\n    @Input()\n    public isActive?: boolean;\n\n    @Input()\n    public highlightActive?: boolean;\n\n    @Input()\n    public isComplete?: boolean;\n}\n","@if (item) {\n    <div\n        class=\"timeline__icon-item\"\n        [ngClass]=\"{\n            'timeline__icon-item--small': item.testSize('small'),\n            'timeline__icon-item--normal': item.testSize('normal'),\n            'timeline__icon-item--warning': item.testSeverity('warning'),\n            'timeline__icon-item--error': item.testSeverity('error'),\n            'timeline__icon-item--completed': isComplete,\n            'timeline__icon-item--active': isActive,\n            'timeline__icon-item--active--highlight':\n                isActive && highlightActive,\n        }\"\n    >\n        <div\n            class=\"timeline__icon-item__icon\"\n            [sTooltip]=\"item.tooltip\"\n            [ngStyle]=\"{ backgroundColor: item.color }\"\n        >\n            @if (item.icon) {\n                <span [ngClass]=\"item.icon\"></span>\n            } @else {\n            <span class=\"timeline__icon-item__icon__label\" [class.large_label]=\"(item.label?.length ?? 0) > 2\">\n               {{ item.label }}\n            </span>\n            }\n        </div>\n    </div>\n}\n","import { Component, Input } from '@angular/core';\n\nimport { TimelineItem } from '../../models/timeline-item';\n\n@Component({\n    selector: 's-horizontal-timeline',\n    templateUrl: './horizontal-timeline.component.html',\n    styleUrls: ['./horizontal-timeline.component.scss'],\n})\nexport class HorizontalTimelineComponent {\n    @Input({ required: true })\n    public items!: TimelineItem[];\n\n    @Input()\n    public activeIndex = 0;\n\n    @Input()\n    public highlightActiveItem?: boolean;\n}\n","<div class=\"horizontal-timeline\">\n    @for (\n        item of items;\n        track item.id;\n        let i = $index;\n        let isFirst = $first;\n        let isLast = $last\n    ) {\n        <div\n            class=\"horizontal-timeline__item\"\n            [ngClass]=\"{\n                'horizontal-timeline__item--small': item.testSize('small'),\n                'horizontal-timeline__item--normal': item.testSize('normal'),\n                'horizontal-timeline__item--warning':\n                    item.testSeverity('warning'),\n                'horizontal-timeline__item--error': item.testSeverity('error'),\n                'horizontal-timeline__item--completed': i < activeIndex,\n                'horizontal-timeline__item--active': i === activeIndex,\n            }\"\n        >\n            <div class=\"horizontal-timeline__item__icon-wrapper\">\n                <div\n                    class=\"horizontal-timeline__item__icon-wrapper__line horizontal-timeline__item__icon-wrapper__line--before\"\n                    [ngStyle]=\"{ visibility: isFirst ? 'hidden' : 'visible' }\"\n                ></div>\n                <s-timeline-icon-item\n                    [item]=\"item\"\n                    [isActive]=\"i === activeIndex\"\n                    [isComplete]=\"i < activeIndex\"\n                    [highlightActive]=\"highlightActiveItem\"\n                >\n                </s-timeline-icon-item>\n                <div\n                    class=\"horizontal-timeline__item__icon-wrapper__line horizontal-timeline__item__icon-wrapper__line--after\"\n                    [ngStyle]=\"{ visibility: isLast ? 'hidden' : 'visible' }\"\n                ></div>\n            </div>\n            <div class=\"horizontal-timeline__item__info\">\n                <div\n                    class=\"horizontal-timeline__item__info__title\"\n                    [sTooltip]=\"item.title\"\n                    [showDelay]=\"1000\"\n                >\n                    {{ item.title }}\n                </div>\n                <div\n                    class=\"horizontal-timeline__item__info__description\"\n                    [sTooltip]=\"item.description\"\n                    [showDelay]=\"1000\"\n                >\n                    {{ item.description }}\n                </div>\n            </div>\n        </div>\n    }\n</div>\n","import { Component } from '@angular/core';\n\n@Component({\n    selector: 's-range-line',\n    templateUrl: './range-line.component.html',\n    styleUrls: ['./range-line.component.scss'],\n})\nexport class RangeLineComponent {}\n","<div class=\"range-line\">\n    <div class=\"range-line__horizontal\"></div>\n    <div class=\"range-line__vertical\"></div>\n    <div class=\"range-line__horizontal\"></div>\n</div>\n","import { Component, Input, Output, EventEmitter } from '@angular/core';\n\n@Component({\n    selector: 's-collapse-option',\n    templateUrl: './collapse-option.component.html',\n    styleUrls: ['./collapse-option.component.scss'],\n})\nexport class CollapseOptionComponent {\n    @Input()\n    public isCollapsed = false;\n\n    @Output()\n    public toggleCollapsed = new EventEmitter<boolean>();\n\n    public onClick(): void {\n        this.toggleCollapsed.emit(!this.isCollapsed);\n    }\n}\n","<div\n    class=\"collapse-option\"\n    (click)=\"onClick()\"\n>\n    <div class=\"collapse-option__icon\">\n        <span\n            class=\"fas\"\n            [ngClass]=\"{\n                'fa-minus': !isCollapsed,\n                'fa-plus': isCollapsed,\n            }\"\n        >\n        </span>\n    </div>\n</div>\n","import { Component, Input, Output, EventEmitter } from '@angular/core';\n\nimport { TimelineItem } from '../../../../models/timeline-item';\n\n@Component({\n    selector: 's-collapsed-items',\n    templateUrl: './collapsed-items.component.html',\n    styleUrls: ['./collapsed-items.component.scss'],\n})\nexport class CollapsedItemsComponent {\n    @Input({ required: true })\n    public items!: TimelineItem[];\n\n    @Input()\n    public isCollapsed = false;\n\n    @Input()\n    public isCompleted?: boolean;\n\n    @Input()\n    public counterLabel?: string;\n\n    @Output()\n    public isCollapsedChange = new EventEmitter<boolean>();\n\n    public onChange(event: boolean): void {\n        this.isCollapsed = !this.isCollapsed;\n        this.isCollapsedChange.emit(this.isCollapsed);\n    }\n}\n","<div class=\"collapsed-items\">\n    <div\n        class=\"collapsed-items__item\"\n        [ngClass]=\"{ 'collapsed-items__item--completed': isCompleted }\"\n    >\n        <div class=\"collapsed-items__item__icon-wrapper\">\n            <s-collapse-option\n                [isCollapsed]=\"isCollapsed\"\n                (toggleCollapsed)=\"onChange($event)\"\n            >\n            </s-collapse-option>\n            <div class=\"collapsed-items__item__icon-wrapper__line\"></div>\n        </div>\n        <div\n            class=\"collapsed-items__item__info\"\n            (click)=\"onChange(!isCollapsed)\"\n        >\n            <div class=\"collapsed-items__item__info__description\">\n                {{ items.length }} {{ counterLabel }}\n            </div>\n        </div>\n    </div>\n</div>\n","import { Component, Input } from '@angular/core';\n\nimport { TimelineItem } from '../../../../models/timeline-item';\n\n@Component({\n    selector: 's-vertical-items',\n    templateUrl: './vertical-items.component.html',\n    styleUrls: ['./vertical-items.component.scss'],\n})\nexport class VerticalItemsComponent {\n    @Input({ required: true })\n    public items!: TimelineItem[];\n\n    @Input()\n    public isLast?: boolean;\n\n    @Input()\n    public isActive?: boolean;\n\n    @Input()\n    public highlightActive?: boolean;\n\n    @Input()\n    public isCompleted?: boolean;\n}\n","<div class=\"vertical-items\">\n    @for (item of items; track item.id; let index = $index) {\n        <div\n            class=\"vertical-items__item\"\n            [ngClass]=\"{\n                'vertical-items__item--small': item.testSize('small'),\n                'vertical-items__item--normal': item.testSize('normal'),\n                'vertical-items__item--completed': isCompleted,\n                'vertical-items__item--active': isActive,\n            }\"\n        >\n            <div class=\"vertical-items__item__icon-wrapper\">\n                <s-timeline-icon-item\n                    [item]=\"item\"\n                    [isComplete]=\"isCompleted\"\n                    [isActive]=\"isActive\"\n                    [highlightActive]=\"highlightActive\"\n                >\n                </s-timeline-icon-item>\n                <div\n                    class=\"vertical-items__item__icon-wrapper__line\"\n                    [ngStyle]=\"{ visibility: isLast ? 'hidden' : 'visible' }\"\n                ></div>\n            </div>\n            <div class=\"vertical-items__item__info\">\n                <div class=\"vertical-timeline__item__info__title\">\n                    {{ item.title }}\n                </div>\n                <div class=\"vertical-items__item__info__description\">\n                    {{ item.description }}\n                </div>\n            </div>\n        </div>\n    }\n</div>\n","import { Component, Input } from '@angular/core';\n\nimport { TimelineItem } from '../../models/timeline-item';\n\n@Component({\n    selector: 's-vertical-timeline',\n    templateUrl: './vertical-timeline.component.html',\n    styleUrls: ['./vertical-timeline.component.scss'],\n})\nexport class VerticalTimelineComponent {\n    public static nextId = 0;\n    private _activeIndex = 0;\n    public isG1Collapsed = true;\n    public isG2Collapsed = true;\n\n    public firstItem: TimelineItem[] = [];\n    public g1Items: TimelineItem[] = [];\n    public activeItem: TimelineItem[] = [];\n    public g2Items: TimelineItem[] = [];\n    public lastItem: TimelineItem[] = [];\n\n    @Input({ required: true })\n    public set activeIndex(index: number) {\n        this._activeIndex = index;\n        this.groupItems();\n    }\n\n    public get activeIndex() {\n        return this._activeIndex;\n    }\n\n    @Input()\n    public highlightActiveItem?: boolean;\n\n    @Input({ required: true })\n    public items!: TimelineItem[];\n\n    @Input()\n    public counterLabel?: string;\n\n    @Input()\n    public collapsable?: boolean;\n\n    public onChangeG1(event: boolean) {\n        this.isG1Collapsed = event;\n    }\n\n    public onChangeG2(event: boolean) {\n        this.isG2Collapsed = event;\n    }\n\n    public groupItems() {\n        this.firstItem = this.activeIndex <= 0 ? [] : [this.items[0]];\n        this.g1Items = this.items.slice(1, this.activeIndex < 0 ? 0 : this.activeIndex);\n        this.activeItem = this.activeIndex >= 0 ? [this.items[this.activeIndex]] : [];\n        this.g2Items = this.items.slice(this.activeIndex + 1, this.items.length - 1);\n        this.lastItem = this.activeIndex === this.items.length - 1 ? [] : [this.items[this.items.length - 1]];\n    }\n}\n","<div class=\"vertical-timeline\">\n    @if (firstItem.length) {\n        <div class=\"vertical-timeline__block\">\n            <div class=\"vertical-timeline__block__prefix\"></div>\n            <s-vertical-items\n                [items]=\"firstItem\"\n                [isLast]=\"false\"\n                [isActive]=\"false\"\n                [isCompleted]=\"true\"\n            >\n            </s-vertical-items>\n        </div>\n    }\n\n    @if (g1Items.length) {\n        <div class=\"vertical-timeline__block\">\n            <div class=\"vertical-timeline__block__prefix\">\n                @if (g1Items.length > 1 && !isG1Collapsed) {\n                    @if (collapsable) {\n                        <s-collapse-option\n                            [isCollapsed]=\"isG1Collapsed\"\n                            (toggleCollapsed)=\"onChangeG1($event)\"\n                        >\n                        </s-collapse-option>\n                    }\n                    <s-range-line\n                        class=\"vertical-timeline__block__prefix__line\"\n                    ></s-range-line>\n                }\n            </div>\n\n            @if (isG1Collapsed && g1Items.length > 1 && collapsable) {\n                <s-collapsed-items\n                    [items]=\"g1Items\"\n                    [(isCollapsed)]=\"isG1Collapsed\"\n                    [isCompleted]=\"true\"\n                    [counterLabel]=\"counterLabel\"\n                >\n                </s-collapsed-items>\n            } @else {\n                <s-vertical-items\n                    [items]=\"g1Items\"\n                    [isLast]=\"false\"\n                    [isActive]=\"false\"\n                    [isCompleted]=\"true\"\n                >\n                </s-vertical-items>\n            }\n        </div>\n    }\n\n    @if (activeItem.length) {\n        <div class=\"vertical-timeline__block\">\n            <div class=\"vertical-timeline__block__prefix\"></div>\n            <s-vertical-items\n                [items]=\"activeItem\"\n                [isLast]=\"!lastItem.length\"\n                [isActive]=\"true\"\n                [highlightActive]=\"highlightActiveItem\"\n                [isCompleted]=\"false\"\n            >\n            </s-vertical-items>\n        </div>\n    }\n\n    @if (g2Items.length) {\n        <div class=\"vertical-timeline__block\">\n            <div class=\"vertical-timeline__block__prefix\">\n                @if (g2Items.length > 1 && !isG2Collapsed) {\n                    @if (collapsable) {\n                        <s-collapse-option\n                            [isCollapsed]=\"isG2Collapsed\"\n                            (toggleCollapsed)=\"onChangeG2($event)\"\n                        >\n                        </s-collapse-option>\n                    }\n                    <s-range-line\n                        class=\"vertical-timeline__block__prefix__line\"\n                    ></s-range-line>\n                }\n            </div>\n\n            @if (isG2Collapsed && g2Items.length > 1 && collapsable) {\n                <s-collapsed-items\n                    [items]=\"g2Items\"\n                    [(isCollapsed)]=\"isG2Collapsed\"\n                    [isCompleted]=\"false\"\n                    [counterLabel]=\"counterLabel\"\n                >\n                </s-collapsed-items>\n            } @else {\n                <s-vertical-items\n                    [items]=\"g2Items\"\n                    [isLast]=\"false\"\n                    [isActive]=\"false\"\n                    [isCompleted]=\"false\"\n                >\n                </s-vertical-items>\n            }\n        </div>\n    }\n\n    @if (lastItem.length) {\n        <div class=\"vertical-timeline__block\">\n            <div class=\"vertical-timeline__block__prefix\"></div>\n            <s-vertical-items\n                [items]=\"lastItem\"\n                [isLast]=\"true\"\n                [isActive]=\"false\"\n                [isCompleted]=\"false\"\n            >\n            </s-vertical-items>\n        </div>\n    }\n</div>\n","import { Component, HostListener, Input, OnInit } from '@angular/core';\n\nimport { TimelineItem } from './models/timeline-item';\n\nconst HORIZONTAL = 'horizontal';\nconst VERTICAL = 'vertical';\nconst MIN_ITEM_SIZE = 200;\n\n/**\n * @description Componente de linha do tempo que renderiza itens de forma horizontal\n * ou vertical (ou autodetectável por largura de tela). Suporta navegação entre\n * etapas, destaque do item ativo e modo colapsável para muitos itens.\n *\n * @example\n * ```html\n * <s-timeline\n *   [items]=\"etapas\"\n *   [activeIndex]=\"etapaAtiva\"\n *   direction=\"horizontal\" />\n * ```\n *\n * @category Structure\n */\n@Component({\n    selector: 's-timeline',\n    templateUrl: './timeline.component.html',\n})\nexport class TimelineComponent implements OnInit {\n    private _innerWidth = 0;\n    private _items: TimelineItem[] = [];\n\n    public get items(): TimelineItem[] {\n        return this._items;\n    }\n\n    /**\n     * @description Lista de itens da linha do tempo. Campo obrigatório.\n     * IDs duplicados são rejeitados com exceção.\n     */\n    @Input({ required: true })\n    public set items(items: TimelineItem[]) {\n        this._items = items;\n        this.checkDuplicateIds();\n    }\n\n    /** @description Índice ativo (0-based) que define o item em destaque. Campo obrigatório. */\n    @Input({ required: true })\n    public activeIndex!: number;\n\n    /** @description Aplica destaque visual ao item ativo. @default true */\n    @Input()\n    public highlightActiveItem = true;\n\n    /** @description Direção de renderização: `'horizontal'` ou `'vertical'`. @default 'horizontal' */\n    @Input()\n    public direction: typeof HORIZONTAL | typeof VERTICAL = HORIZONTAL;\n\n    /** @description Habilita o modo colapsável quando há muitos itens. @default true */\n    @Input()\n    public collapsable = true;\n\n    /** @description Rótulo exibido no contador de itens colapsados. @default 'items' */\n    @Input()\n    public counterLabel = 'items';\n\n    public ngOnInit(): void {\n        this._innerWidth = window.innerWidth;\n    }\n\n    @HostListener('window:resize', ['$event'])\n    public onResize(_: any): void {\n        this._innerWidth = window.innerWidth;\n    }\n\n    public changeToVertical(): boolean {\n        return this.direction === VERTICAL || this._innerWidth / this.items.length < MIN_ITEM_SIZE;\n    }\n\n    public checkDuplicateIds(): void {\n        const ids = this.items.map((item) => {\n            return item.id;\n        });\n\n        if (new Set(ids).size !== ids.length) {\n            throw new Error('A duplicate id was found in the items list');\n        }\n    }\n}\n\n","<div>\n    @if (changeToVertical()) {\n        <s-vertical-timeline\n            *ngIf=\"items?.length\"\n            [items]=\"items\"\n            [activeIndex]=\"activeIndex\"\n            [highlightActiveItem]=\"highlightActiveItem\"\n            [counterLabel]=\"counterLabel\"\n            [collapsable]=\"collapsable\"\n            [highlightActiveItem]=\"highlightActiveItem\"\n        >\n        </s-vertical-timeline>\n    } @else {\n        <s-horizontal-timeline\n            *ngIf=\"items?.length\"\n            [items]=\"items\"\n            [activeIndex]=\"activeIndex\"\n            [highlightActiveItem]=\"highlightActiveItem\"\n        >\n        </s-horizontal-timeline>\n    }\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { TooltipModule } from '@seniorsistemas/angular-components/tooltip';\n\nimport { TimelineIconItemComponent } from './timeline-icon-item.component';\n\n@NgModule({\n    imports: [CommonModule, TooltipModule],\n    declarations: [TimelineIconItemComponent],\n    exports: [TimelineIconItemComponent],\n})\nexport class TimelineItemModule { }\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { TooltipModule } from '@seniorsistemas/angular-components/tooltip';\n\nimport { TimelineItemModule } from '../timeline-icon-item/timeline-icon-item.module';\nimport { HorizontalTimelineComponent } from './horizontal-timeline.component';\n\n@NgModule({\n    imports: [CommonModule, TooltipModule, TimelineItemModule],\n    declarations: [HorizontalTimelineComponent],\n    exports: [HorizontalTimelineComponent],\n})\nexport class HorizontalTimelineModule {}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { TimelineItemModule } from '../timeline-icon-item/timeline-icon-item.module';\nimport { VerticalTimelineComponent } from './vertical-timeline.component';\nimport { RangeLineComponent } from './components/range-line/range-line.component';\nimport { CollapseOptionComponent } from './components/collapse-option/collapse-option.component';\nimport { CollapsedItemsComponent } from './components/collapsed-items/collapsed-items.component';\nimport { VerticalItemsComponent } from './components/vertical-items/vertical-items.component';\n\n@NgModule({\n    imports: [CommonModule, TimelineItemModule],\n    declarations: [\n        VerticalTimelineComponent,\n        RangeLineComponent,\n        CollapseOptionComponent,\n        CollapsedItemsComponent,\n        VerticalItemsComponent,\n    ],\n    exports: [VerticalTimelineComponent],\n})\nexport class VerticalTimelineModule {}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { TimelineComponent } from './timeline.component';\nimport { TimelineItemModule } from './components/timeline-icon-item/timeline-icon-item.module';\nimport { HorizontalTimelineModule } from './components/horizontal-timeline/horizontal-timeline.module';\nimport { VerticalTimelineModule } from './components/vertical-timeline/vertical-timeline.module';\n\n@NgModule({\n    imports: [\n        CommonModule,\n        TimelineItemModule,\n        HorizontalTimelineModule,\n        VerticalTimelineModule,\n    ],\n    declarations: [TimelineComponent],\n    exports: [TimelineComponent],\n})\nexport class TimelineModule {}\n","export enum TimelineItemSeverity {\n    Normal = 'normal',\n    Warning = 'warning',\n    Error = 'error',\n}\n","export enum TimelineItemSize {\n    Normal = 'normal',\n    Small = 'small',\n}\n","import { TimelineItemSeverity } from './timeline-item-severity';\nimport { TimelineItemSize } from './timeline-item-size';\n\nconst LABEL_MAX_LENGTH = 3;\n\nexport class TimelineItem {\n    public id: string;\n    public title: string;\n    public description: string;\n    public icon?: string;\n    public label?: string;\n    public tooltip?: string;\n    public size: TimelineItemSize;\n    public severity: TimelineItemSeverity;\n    public color?: string;\n\n    constructor(params: {\n        id: string;\n        title: string;\n        description: string;\n        icon?: string;\n        label?: string;\n        size?: TimelineItemSize;\n        severity?: TimelineItemSeverity;\n        tooltip?: string;\n        color?: string;\n    }) {\n        this.id = params.id;\n        this.title = params.title;\n        this.description = params.description;\n        this.icon = params.icon;\n        this.label = params.label;\n        this.tooltip = params.tooltip;\n        this.size = params.size || TimelineItemSize.Normal;\n        this.severity = params.severity || TimelineItemSeverity.Normal;\n        this.color = params.color;\n\n        this.checkItemIconContent();\n    }\n\n    public checkItemIconContent() {\n        if (!this.icon && !this.label) {\n            throw new Error(\n                'No icon or label string was passed for the item. Enter an icon or label text',\n            );\n        }\n\n        if (this.icon && this.label) {\n            throw new Error(\n                'An icon and label string were passed to the item. Enter an icon or label text',\n            );\n        }\n\n        if (this.label && this.label.length > LABEL_MAX_LENGTH) {\n            throw new Error(\n                'Label text is expected to be a maximum of three characters long',\n            );\n        }\n    }\n\n    public testSize(value: string) {\n        return this.size.valueOf() === value;\n    }\n\n    public testSeverity(value: string) {\n        return this.severity?.valueOf() === value;\n    }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i3.TimelineIconItemComponent","i2.CollapseOptionComponent","i2.TimelineIconItemComponent","i1.RangeLineComponent","i3.CollapsedItemsComponent","i4.VerticalItemsComponent","i2.HorizontalTimelineComponent","i3.VerticalTimelineComponent"],"mappings":"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"}