@bravura/ui 9.0.0 → 9.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"bravura-ui-radio-panel.mjs","sources":["../../../projects/ui/radio-panel/radio-panel-item.component.ts","../../../projects/ui/radio-panel/radio-panel-item.component.html","../../../projects/ui/radio-panel/radio-panel.component.ts","../../../projects/ui/radio-panel/radio-panel.module.ts","../../../projects/ui/radio-panel/bravura-ui-radio-panel.ts"],"sourcesContent":["import { animate, state, style, transition, trigger } from '@angular/animations';\n\nimport { ChangeDetectionStrategy, Component, ContentChild, Input, TemplateRef } from '@angular/core';\nimport { MatRadioButton } from '@angular/material/radio';\n\n/**\n * Use `bui-radio-panel-item` instead of `mat-radio-button` in a `bui-radio-panel` to display an option.\n */\n@Component({\n\tselector: 'bui-radio-panel-item',\n\ttemplateUrl: './radio-panel-item.component.html',\n\tstyleUrls: ['./radio-panel-item.component.scss'],\n\t// tslint:disable-next-line: no-inputs-metadata-property\n\tinputs: ['disableRipple', 'tabIndex'],\n\texportAs: 'matRadioButton',\n\t// tslint:disable-next-line: no-host-metadata-property\n\thost: {\n\t\tclass: 'bui-radio-panel-item',\n\t\t'[class.bui-radio-checked]': 'checked',\n\t\t'[class.bui-disabled]': 'disabled',\n\t\t'[class._mat-animation-noopable]': '_noopAnimations',\n\t\t'[class.mat-primary]': 'color === \"primary\"',\n\t\t'[class.mat-accent]': 'color === \"accent\"',\n\t\t'[class.mat-warn]': 'color === \"warn\"',\n\t\t// Needs to be removed since it causes some a11y issues (see #21266).\n\t\t'[attr.tabindex]': 'null',\n\t\t'[attr.id]': 'id',\n\t\t'[attr.aria-label]': 'null',\n\t\t'[attr.aria-labelledby]': 'null',\n\t\t'[attr.aria-describedby]': 'null',\n\t\t// Note: under normal conditions focus shouldn't land on this element, however it may be\n\t\t// programmatically set, for example inside of a focus trap, in this case we want to forward\n\t\t// the focus to the native element.\n\t\t'(focus)': '_inputElement.nativeElement.focus()'\n\t},\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tanimations: [\n\t\ttrigger('slideInOut', [\n\t\t\tstate('void', style({ height: '0px', overflow: 'hidden' })),\n\t\t\ttransition(':enter, :leave', animate('.25s'))\n\t\t])\n\t],\n\tstandalone: false\n})\nexport class RadioPanelItemComponent extends MatRadioButton {\n\t/**\n\t * This will be displayed as the panel header\n\t */\n\t@Input()\n\ttitle = '';\n\n\t/** The default position of the 'tick' icon relative to the title. */\n\t@Input() private _tickPosition: 'start' | 'end' | undefined;\n\n\t@Input()\n\tget tickPosition(): 'start' | 'end' {\n\t\treturn this._tickPosition || (this.radioGroup as any)?.tickPosition;\n\t}\n\tset tickPosition(pos: 'start' | 'end') {\n\t\tthis._tickPosition = pos;\n\t}\n\n\t@ContentChild('contentOnSelect')\n\t//@ts-ignore\n\tcontentOnSelect: TemplateRef<any>;\n}\n","<label\n\tmatRipple\n\tmatRippleColor=\"rgba(128,128,128,.1)\"\n\t[matRippleDisabled]=\"disabled || checked\"\n\t[attr.for]=\"inputId\"\n\t#label\n\tclass=\"bui-radio-panel-item-label bui-border-{{ checked ? color : 'default' }}\"\n>\n\t<div class=\"bui-radio-panel-item-wrapper\" [class.bui-radio-tick-at-end]=\"tickPosition === 'end'\">\n\t\t<div class=\"bui-label-header\">\n\t\t\t<span class=\"bui-label-title\" [innerHTML]=\"title\"></span>\n\t\t\t<ng-content select=\"[buiRadioItemHeadingEnd]\"></ng-content>\n\t\t\t<span class=\"bui-radio-panel-item-circle\">\n\t\t\t\t@if (!disabled) {\n\t\t\t\t\t<span\n\t\t\t\t\t\tclass=\"bui-persistent-ripple\"\n\t\t\t\t\t\tmatRipple\n\t\t\t\t\t\tmatRippleColor=\"rgba(128,128,128,.1)\"\n\t\t\t\t\t\t[matRippleCentered]=\"true\"\n\t\t\t\t\t\t[matRippleUnbounded]=\"true\"\n\t\t\t\t\t\t[matRippleTrigger]=\"label\"\n\t\t\t\t\t\t[matRippleRadius]=\"20\"\n\t\t\t\t\t></span>\n\t\t\t\t}\n\t\t\t\t@if (checked) {\n\t\t\t\t\t<mat-icon class=\"bui-radio-panel-checked-icon\">check_circle</mat-icon>\n\t\t\t\t}\n\t\t\t\t@if (!checked) {\n\t\t\t\t\t<mat-icon class=\"bui-radio-panel-item-circle-unchecked\">radio_button_unchecked</mat-icon>\n\t\t\t\t}\n\t\t\t</span>\n\t\t</div>\n\t\t<!-- The actual 'radio' part of the control. -->\n\t\t<span class=\"radio-container\">\n\t\t\t<input\n\t\t\t\t#input\n\t\t\t\tclass=\"mat-radio-input cdk-visually-hidden\"\n\t\t\t\ttype=\"radio\"\n\t\t\t\t[id]=\"inputId\"\n\t\t\t\t[checked]=\"checked\"\n\t\t\t\t[disabled]=\"disabled\"\n\t\t\t\t[tabIndex]=\"tabIndex\"\n\t\t\t\t[attr.name]=\"name\"\n\t\t\t\t[attr.value]=\"value\"\n\t\t\t\t[required]=\"required\"\n\t\t\t\t[attr.aria-label]=\"ariaLabel\"\n\t\t\t\t[attr.aria-labelledby]=\"ariaLabelledby\"\n\t\t\t\t[attr.aria-describedby]=\"ariaDescribedby\"\n\t\t\t\t(change)=\"_onInputInteraction($event)\"\n\t\t\t\t(click)=\"_onInputInteraction($event)\"\n\t\t\t/>\n\t\t</span>\n\n\t\t<div class=\"bui-label-content-gap\"></div>\n\t\t<!-- The label content for radio control. -->\n\t\t<div class=\"bui-label-content\">\n\t\t\t<ng-content></ng-content>\n\t\t</div>\n\t\t@if (contentOnSelect && checked) {\n\t\t\t<div class=\"bui-label-content\" @slideInOut>\n\t\t\t\t<ng-container *ngTemplateOutlet=\"contentOnSelect\"></ng-container>\n\t\t\t</div>\n\t\t}\n\t</div>\n</label>\n","import {\n\tComponent,\n\tContentChildren,\n\tforwardRef,\n\tHostBinding,\n\tInput,\n\tOnChanges,\n\tQueryList,\n\tSimpleChanges,\n\tChangeDetectionStrategy\n} from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { ThemePalette } from '@angular/material/core';\nimport { MAT_RADIO_GROUP, MatRadioGroup } from '@angular/material/radio';\nimport { RadioPanelItemComponent } from './radio-panel-item.component';\n/**\n * Radio panel is a [control value accessor](https://angular.io/api/forms/ControlValueAccessor)\n * that extends Angular Material's [radio group component](https://material.angular.io/components/radio/overview).\n * It inherits all the features of `MatRadioGroup`, and arranges the child items in panels,\n * with the `title` attributes rendered as captions. The check box icon and the borders will be displayed\n * in the color selected by the theme attribute `color`.\n *\n */\n@Component({\n\t// tslint:disable-next-line: directive-selector\n\tselector: 'bui-radio-panel',\n\texportAs: 'buiRadioPanel',\n\tproviders: [\n\t\t{\n\t\t\tprovide: NG_VALUE_ACCESSOR,\n\t\t\tuseExisting: forwardRef(() => RadioPanelComponent),\n\t\t\tmulti: true\n\t\t},\n\t\t{ provide: MAT_RADIO_GROUP, useExisting: forwardRef(() => RadioPanelComponent) }\n\t],\n\t// tslint:disable-next-line: no-host-metadata-property\n\thost: {\n\t\trole: 'radiogroup',\n\t\tclass: 'bui-radio-panel bui-host',\n\t\t'[style.--bui-panel-width]': \"panelWidth +'px'\"\n\t},\n\ttemplate: ` <ng-content></ng-content> `,\n\tstyleUrls: ['radio-panel.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.Eager,\n\tstandalone: false\n})\nexport class RadioPanelComponent extends MatRadioGroup implements OnChanges {\n\t/**\n\t * @ignore\n\t */\n\t@HostBinding('attr.class')\n\tclassAttr: string = '';\n\n\t/**\n\t * The default width of each panel when the `direction` is `row`\n\t */\n\t@Input()\n\tpanelWidth = 300;\n\n\t/** The flow direction of the radio panel items */\n\t@Input()\n\tdirection: 'row' | 'column' = 'row';\n\n\t/** Theme color for all of the radio panels in the group. */\n\t@Input() color: ThemePalette;\n\n\t/** The default position of the 'tick' icon relative to the title. */\n\t@Input() tickPosition: 'start' | 'end' = 'start';\n\n\t/**\n\t * @ignore\n\t */\n\t@ContentChildren(RadioPanelItemComponent, { descendants: true })\n\t_radios!: QueryList<RadioPanelItemComponent>;\n\n\t/** @ignore */\n\tngOnChanges(changes: SimpleChanges): void {\n\t\tif (['color', 'tickPosition'].some(p => changes[p]) && this._radios) {\n\t\t\tthis._radios.forEach(item => item._markForCheck());\n\t\t}\n\n\t\tif (this.direction === 'row') {\n\t\t\tthis.classAttr = 'bui-radio-panel bui-host radio-dir-row';\n\t\t} else {\n\t\t\tthis.classAttr = 'bui-radio-panel bui-host radio-dir-column';\n\t\t}\n\t}\n}\n","import { NgModule } from '@angular/core';\r\nimport { MatRipple } from '@angular/material/core';\r\nimport { MatIcon } from '@angular/material/icon';\r\nimport { RadioPanelItemComponent } from './radio-panel-item.component';\r\nimport { RadioPanelComponent } from './radio-panel.component';\r\n\r\n/**\r\n * Import this NgModule for the radio panel component\r\n */\r\n@NgModule({\r\n\tdeclarations: [RadioPanelItemComponent, RadioPanelComponent],\r\n\timports: [MatRipple, MatIcon],\r\n\texports: [RadioPanelItemComponent, RadioPanelComponent]\r\n})\r\nexport class RadioPanelModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;;;AAKA;;AAEG;AAqCG,MAAO,uBAAwB,SAAQ,cAAc,CAAA;AApC3D,IAAA,WAAA,GAAA;;AAqCC;;AAEG;QAEH,IAAA,CAAA,KAAK,GAAG,EAAE;AAgBV,IAAA;AAXA,IAAA,IACI,YAAY,GAAA;QACf,OAAO,IAAI,CAAC,aAAa,IAAK,IAAI,CAAC,UAAkB,EAAE,YAAY;IACpE;IACA,IAAI,YAAY,CAAC,GAAoB,EAAA;AACpC,QAAA,IAAI,CAAC,aAAa,GAAG,GAAG;IACzB;8GAhBY,uBAAuB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAvB,uBAAuB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,EAAA,aAAA,EAAA,eAAA,EAAA,QAAA,EAAA,UAAA,EAAA,KAAA,EAAA,OAAA,EAAA,aAAA,EAAA,eAAA,EAAA,YAAA,EAAA,cAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,qCAAA,EAAA,EAAA,UAAA,EAAA,EAAA,yBAAA,EAAA,SAAA,EAAA,oBAAA,EAAA,UAAA,EAAA,+BAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,uBAAA,EAAA,kBAAA,EAAA,sBAAA,EAAA,gBAAA,EAAA,oBAAA,EAAA,eAAA,EAAA,MAAA,EAAA,SAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,EAAA,cAAA,EAAA,sBAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC5CpC,6vEAiEA,EAAA,MAAA,EAAA,CAAA,wvEAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,2BAAA,EAAA,MAAA,EAAA,CAAA,gBAAA,EAAA,oBAAA,EAAA,mBAAA,EAAA,iBAAA,EAAA,oBAAA,EAAA,mBAAA,EAAA,kBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,SAAA,EAAA,SAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,UAAA,ED7Ba;YACX,OAAO,CAAC,YAAY,EAAE;AACrB,gBAAA,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;AAC3D,gBAAA,UAAU,CAAC,gBAAgB,EAAE,OAAO,CAAC,MAAM,CAAC;aAC5C;AACD,SAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAGW,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBApCnC,SAAS;+BACC,sBAAsB,EAAA,MAAA,EAIxB,CAAC,eAAe,EAAE,UAAU,CAAC,EAAA,QAAA,EAC3B,gBAAgB,EAAA,IAAA,EAEpB;AACL,wBAAA,KAAK,EAAE,sBAAsB;AAC7B,wBAAA,2BAA2B,EAAE,SAAS;AACtC,wBAAA,sBAAsB,EAAE,UAAU;AAClC,wBAAA,iCAAiC,EAAE,iBAAiB;AACpD,wBAAA,qBAAqB,EAAE,qBAAqB;AAC5C,wBAAA,oBAAoB,EAAE,oBAAoB;AAC1C,wBAAA,kBAAkB,EAAE,kBAAkB;;AAEtC,wBAAA,iBAAiB,EAAE,MAAM;AACzB,wBAAA,WAAW,EAAE,IAAI;AACjB,wBAAA,mBAAmB,EAAE,MAAM;AAC3B,wBAAA,wBAAwB,EAAE,MAAM;AAChC,wBAAA,yBAAyB,EAAE,MAAM;;;;AAIjC,wBAAA,SAAS,EAAE;qBACX,EAAA,eAAA,EACgB,uBAAuB,CAAC,MAAM,EAAA,UAAA,EACnC;wBACX,OAAO,CAAC,YAAY,EAAE;AACrB,4BAAA,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;AAC3D,4BAAA,UAAU,CAAC,gBAAgB,EAAE,OAAO,CAAC,MAAM,CAAC;yBAC5C;AACD,qBAAA,EAAA,UAAA,EACW,KAAK,EAAA,QAAA,EAAA,6vEAAA,EAAA,MAAA,EAAA,CAAA,wvEAAA,CAAA,EAAA;;sBAMhB;;sBAIA;;sBAEA;;sBAQA,YAAY;uBAAC,iBAAiB;;;AE/ChC;;;;;;;AAOG;AAwBG,MAAO,mBAAoB,SAAQ,aAAa,CAAA;AAvBtD,IAAA,WAAA,GAAA;;AAwBC;;AAEG;QAEH,IAAA,CAAA,SAAS,GAAW,EAAE;AAEtB;;AAEG;QAEH,IAAA,CAAA,UAAU,GAAG,GAAG;;QAIhB,IAAA,CAAA,SAAS,GAAqB,KAAK;;QAM1B,IAAA,CAAA,YAAY,GAAoB,OAAO;AAoBhD,IAAA;;AAXA,IAAA,WAAW,CAAC,OAAsB,EAAA;QACjC,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE;AACpE,YAAA,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;QACnD;AAEA,QAAA,IAAI,IAAI,CAAC,SAAS,KAAK,KAAK,EAAE;AAC7B,YAAA,IAAI,CAAC,SAAS,GAAG,wCAAwC;QAC1D;aAAO;AACN,YAAA,IAAI,CAAC,SAAS,GAAG,2CAA2C;QAC7D;IACD;8GAxCY,mBAAmB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAnB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,mBAAmB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,UAAA,EAAA,YAAA,EAAA,SAAA,EAAA,WAAA,EAAA,KAAA,EAAA,OAAA,EAAA,YAAA,EAAA,cAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,MAAA,EAAA,YAAA,EAAA,EAAA,UAAA,EAAA,EAAA,yBAAA,EAAA,kBAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,EAAA,cAAA,EAAA,0BAAA,EAAA,EAAA,SAAA,EAnBpB;AACV,YAAA;AACC,gBAAA,OAAO,EAAE,iBAAiB;AAC1B,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,mBAAmB,CAAC;AAClD,gBAAA,KAAK,EAAE;AACP,aAAA;AACD,YAAA,EAAE,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,UAAU,CAAC,MAAM,mBAAmB,CAAC;SAC9E,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,SAAA,EAAA,SAAA,EAsCgB,uBAAuB,yHA/B9B,CAAA,2BAAA,CAA6B,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,uJAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,KAAA,EAAA,CAAA,CAAA;;2FAK3B,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAvB/B,SAAS;+BAEC,iBAAiB,EAAA,QAAA,EACjB,eAAe,EAAA,SAAA,EACd;AACV,wBAAA;AACC,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,WAAW,EAAE,UAAU,CAAC,yBAAyB,CAAC;AAClD,4BAAA,KAAK,EAAE;AACP,yBAAA;AACD,wBAAA,EAAE,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,UAAU,CAAC,MAAK,mBAAoB,CAAC;qBAC9E,EAAA,IAAA,EAEK;AACL,wBAAA,IAAI,EAAE,YAAY;AAClB,wBAAA,KAAK,EAAE,0BAA0B;AACjC,wBAAA,2BAA2B,EAAE;AAC7B,qBAAA,EAAA,QAAA,EACS,6BAA6B,EAAA,eAAA,EAEtB,uBAAuB,CAAC,KAAK,cAClC,KAAK,EAAA,MAAA,EAAA,CAAA,uJAAA,CAAA,EAAA;;sBAMhB,WAAW;uBAAC,YAAY;;sBAMxB;;sBAIA;;sBAIA;;sBAGA;;sBAKA,eAAe;AAAC,gBAAA,IAAA,EAAA,CAAA,uBAAuB,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE;;;AClEhE;;AAEG;MAMU,gBAAgB,CAAA;8GAAhB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;+GAAhB,gBAAgB,EAAA,YAAA,EAAA,CAJb,uBAAuB,EAAE,mBAAmB,CAAA,EAAA,OAAA,EAAA,CACjD,SAAS,EAAE,OAAO,CAAA,EAAA,OAAA,EAAA,CAClB,uBAAuB,EAAE,mBAAmB,CAAA,EAAA,CAAA,CAAA;AAE1C,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,YAHP,OAAO,CAAA,EAAA,CAAA,CAAA;;2FAGhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAL5B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,YAAY,EAAE,CAAC,uBAAuB,EAAE,mBAAmB,CAAC;AAC5D,oBAAA,OAAO,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC;AAC7B,oBAAA,OAAO,EAAE,CAAC,uBAAuB,EAAE,mBAAmB;AACtD,iBAAA;;;ACbD;;AAEG;;;;"}
1
+ {"version":3,"file":"bravura-ui-radio-panel.mjs","sources":["../../../projects/ui/radio-panel/radio-panel-item.component.ts","../../../projects/ui/radio-panel/radio-panel-item.component.html","../../../projects/ui/radio-panel/radio-panel.component.ts","../../../projects/ui/radio-panel/radio-panel.module.ts","../../../projects/ui/radio-panel/bravura-ui-radio-panel.ts"],"sourcesContent":["import { animate, state, style, transition, trigger } from '@angular/animations';\n\nimport { ChangeDetectionStrategy, Component, ContentChild, Input, TemplateRef } from '@angular/core';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { MatRipple } from '@angular/material/core';\nimport { MatIcon } from '@angular/material/icon';\nimport { MatRadioButton } from '@angular/material/radio';\n\n/**\n * Use `bui-radio-panel-item` instead of `mat-radio-button` in a `bui-radio-panel` to display an option.\n */\n@Component({\n\tselector: 'bui-radio-panel-item',\n\ttemplateUrl: './radio-panel-item.component.html',\n\tstyleUrls: ['./radio-panel-item.component.scss'],\n\t// tslint:disable-next-line: no-inputs-metadata-property\n\tinputs: ['disableRipple', 'tabIndex'],\n\texportAs: 'matRadioButton',\n\t// tslint:disable-next-line: no-host-metadata-property\n\thost: {\n\t\tclass: 'bui-radio-panel-item',\n\t\t'[class.bui-radio-checked]': 'checked',\n\t\t'[class.bui-disabled]': 'disabled',\n\t\t'[class._mat-animation-noopable]': '_noopAnimations',\n\t\t'[class.mat-primary]': 'color === \"primary\"',\n\t\t'[class.mat-accent]': 'color === \"accent\"',\n\t\t'[class.mat-warn]': 'color === \"warn\"',\n\t\t// Needs to be removed since it causes some a11y issues (see #21266).\n\t\t'[attr.tabindex]': 'null',\n\t\t'[attr.id]': 'id',\n\t\t'[attr.aria-label]': 'null',\n\t\t'[attr.aria-labelledby]': 'null',\n\t\t'[attr.aria-describedby]': 'null',\n\t\t// Note: under normal conditions focus shouldn't land on this element, however it may be\n\t\t// programmatically set, for example inside of a focus trap, in this case we want to forward\n\t\t// the focus to the native element.\n\t\t'(focus)': '_inputElement.nativeElement.focus()'\n\t},\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tanimations: [\n\t\ttrigger('slideInOut', [\n\t\t\tstate('void', style({ height: '0px', overflow: 'hidden' })),\n\t\t\ttransition(':enter, :leave', animate('.25s'))\n\t\t])\n\t],\n\timports: [NgTemplateOutlet, MatIcon, MatRipple]\n})\nexport class RadioPanelItemComponent extends MatRadioButton {\n\t/**\n\t * This will be displayed as the panel header\n\t */\n\t@Input()\n\ttitle = '';\n\n\t/** The default position of the 'tick' icon relative to the title. */\n\t@Input() private _tickPosition: 'start' | 'end' | undefined;\n\n\t@Input()\n\tget tickPosition(): 'start' | 'end' {\n\t\treturn this._tickPosition || (this.radioGroup as any)?.tickPosition;\n\t}\n\tset tickPosition(pos: 'start' | 'end') {\n\t\tthis._tickPosition = pos;\n\t}\n\n\t@ContentChild('contentOnSelect')\n\t//@ts-ignore\n\tcontentOnSelect: TemplateRef<any>;\n}\n","<label\n\tmatRipple\n\tmatRippleColor=\"rgba(128,128,128,.1)\"\n\t[matRippleDisabled]=\"disabled || checked\"\n\t[attr.for]=\"inputId\"\n\t#label\n\tclass=\"bui-radio-panel-item-label bui-border-{{ checked ? color : 'default' }}\"\n>\n\t<div class=\"bui-radio-panel-item-wrapper\" [class.bui-radio-tick-at-end]=\"tickPosition === 'end'\">\n\t\t<div class=\"bui-label-header\">\n\t\t\t<span class=\"bui-label-title\" [innerHTML]=\"title\"></span>\n\t\t\t<ng-content select=\"[buiRadioItemHeadingEnd]\"></ng-content>\n\t\t\t<span class=\"bui-radio-panel-item-circle\">\n\t\t\t\t@if (!disabled) {\n\t\t\t\t\t<span\n\t\t\t\t\t\tclass=\"bui-persistent-ripple\"\n\t\t\t\t\t\tmatRipple\n\t\t\t\t\t\tmatRippleColor=\"rgba(128,128,128,.1)\"\n\t\t\t\t\t\t[matRippleCentered]=\"true\"\n\t\t\t\t\t\t[matRippleUnbounded]=\"true\"\n\t\t\t\t\t\t[matRippleTrigger]=\"label\"\n\t\t\t\t\t\t[matRippleRadius]=\"20\"\n\t\t\t\t\t></span>\n\t\t\t\t}\n\t\t\t\t@if (checked) {\n\t\t\t\t\t<mat-icon class=\"bui-radio-panel-checked-icon\">check_circle</mat-icon>\n\t\t\t\t}\n\t\t\t\t@if (!checked) {\n\t\t\t\t\t<mat-icon class=\"bui-radio-panel-item-circle-unchecked\">radio_button_unchecked</mat-icon>\n\t\t\t\t}\n\t\t\t</span>\n\t\t</div>\n\t\t<!-- The actual 'radio' part of the control. -->\n\t\t<span class=\"radio-container\">\n\t\t\t<input\n\t\t\t\t#input\n\t\t\t\tclass=\"mat-radio-input cdk-visually-hidden\"\n\t\t\t\ttype=\"radio\"\n\t\t\t\t[id]=\"inputId\"\n\t\t\t\t[checked]=\"checked\"\n\t\t\t\t[disabled]=\"disabled\"\n\t\t\t\t[tabIndex]=\"tabIndex\"\n\t\t\t\t[attr.name]=\"name\"\n\t\t\t\t[attr.value]=\"value\"\n\t\t\t\t[required]=\"required\"\n\t\t\t\t[attr.aria-label]=\"ariaLabel\"\n\t\t\t\t[attr.aria-labelledby]=\"ariaLabelledby\"\n\t\t\t\t[attr.aria-describedby]=\"ariaDescribedby\"\n\t\t\t\t(change)=\"_onInputInteraction($event)\"\n\t\t\t\t(click)=\"_onInputInteraction($event)\"\n\t\t\t/>\n\t\t</span>\n\n\t\t<div class=\"bui-label-content-gap\"></div>\n\t\t<!-- The label content for radio control. -->\n\t\t<div class=\"bui-label-content\">\n\t\t\t<ng-content></ng-content>\n\t\t</div>\n\t\t@if (contentOnSelect && checked) {\n\t\t\t<div class=\"bui-label-content\" @slideInOut>\n\t\t\t\t<ng-container *ngTemplateOutlet=\"contentOnSelect\"></ng-container>\n\t\t\t</div>\n\t\t}\n\t</div>\n</label>\n","import {\n\tComponent,\n\tContentChildren,\n\tforwardRef,\n\tHostBinding,\n\tInput,\n\tOnChanges,\n\tQueryList,\n\tSimpleChanges,\n\tChangeDetectionStrategy\n} from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { ThemePalette } from '@angular/material/core';\nimport { MAT_RADIO_GROUP, MatRadioGroup } from '@angular/material/radio';\nimport { RadioPanelItemComponent } from './radio-panel-item.component';\n/**\n * Radio panel is a [control value accessor](https://angular.io/api/forms/ControlValueAccessor)\n * that extends Angular Material's [radio group component](https://material.angular.io/components/radio/overview).\n * It inherits all the features of `MatRadioGroup`, and arranges the child items in panels,\n * with the `title` attributes rendered as captions. The check box icon and the borders will be displayed\n * in the color selected by the theme attribute `color`.\n *\n */\n@Component({\n\t// tslint:disable-next-line: directive-selector\n\tselector: 'bui-radio-panel',\n\texportAs: 'buiRadioPanel',\n\tproviders: [\n\t\t{\n\t\t\tprovide: NG_VALUE_ACCESSOR,\n\t\t\tuseExisting: forwardRef(() => RadioPanelComponent),\n\t\t\tmulti: true\n\t\t},\n\t\t{ provide: MAT_RADIO_GROUP, useExisting: forwardRef(() => RadioPanelComponent) }\n\t],\n\t// tslint:disable-next-line: no-host-metadata-property\n\thost: {\n\t\trole: 'radiogroup',\n\t\tclass: 'bui-radio-panel bui-host',\n\t\t'[style.--bui-panel-width]': \"panelWidth +'px'\"\n\t},\n\ttemplate: ` <ng-content></ng-content> `,\n\tstyleUrls: ['radio-panel.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.Eager\n})\nexport class RadioPanelComponent extends MatRadioGroup implements OnChanges {\n\t/**\n\t * @ignore\n\t */\n\t@HostBinding('attr.class')\n\tclassAttr: string = '';\n\n\t/**\n\t * The default width of each panel when the `direction` is `row`\n\t */\n\t@Input()\n\tpanelWidth = 300;\n\n\t/** The flow direction of the radio panel items */\n\t@Input()\n\tdirection: 'row' | 'column' = 'row';\n\n\t/** Theme color for all of the radio panels in the group. */\n\t@Input() color: ThemePalette;\n\n\t/** The default position of the 'tick' icon relative to the title. */\n\t@Input() tickPosition: 'start' | 'end' = 'start';\n\n\t/**\n\t * @ignore\n\t */\n\t@ContentChildren(RadioPanelItemComponent, { descendants: true })\n\t_radios!: QueryList<RadioPanelItemComponent>;\n\n\t/** @ignore */\n\tngOnChanges(changes: SimpleChanges): void {\n\t\tif (['color', 'tickPosition'].some(p => changes[p]) && this._radios) {\n\t\t\tthis._radios.forEach(item => item._markForCheck());\n\t\t}\n\n\t\tif (this.direction === 'row') {\n\t\t\tthis.classAttr = 'bui-radio-panel bui-host radio-dir-row';\n\t\t} else {\n\t\t\tthis.classAttr = 'bui-radio-panel bui-host radio-dir-column';\n\t\t}\n\t}\n}\n","import { NgModule } from '@angular/core';\nimport { MatRipple } from '@angular/material/core';\nimport { MatIcon } from '@angular/material/icon';\nimport { RadioPanelItemComponent } from './radio-panel-item.component';\nimport { RadioPanelComponent } from './radio-panel.component';\n\n/**\n * Import this NgModule for the radio panel component\n */\n@NgModule({\n\timports: [MatRipple, MatIcon, RadioPanelItemComponent, RadioPanelComponent],\n\texports: [RadioPanelItemComponent, RadioPanelComponent]\n})\nexport class RadioPanelModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"bravura-ui-skeletons.mjs","sources":["../../../projects/ui/skeletons/skeleton-loader.component.ts","../../../projects/ui/skeletons/skeleton-loader-presets.directive.ts","../../../projects/ui/skeletons/skeletons.module.ts","../../../projects/ui/skeletons/bravura-ui-skeletons.ts"],"sourcesContent":["import { Directionality } from '@angular/cdk/bidi';\nimport {\n\tChangeDetectorRef,\n\tComponent,\n\tElementRef,\n\tOnChanges,\n\tOnDestroy,\n\tSimpleChanges,\n\tChangeDetectionStrategy\n} from '@angular/core';\nimport { ContentLoaderComponent } from '@ngneat/content-loader';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\n/**\n * Use the [Create React Content Loader](https://skeletonreact.com/) to create your custom skeleton loaders;\n *\n * Add the resulting `svg` elements as the content children of a `<bui-skeleton>` component.\n *\n * The component `bui-skeleton` extends `content-loader` from [ngneat/content-loader](https://github.com/ngneat/content-loader).\n *\n * You can also choose from one of the presets registered by the `SKELETON_PRESETS` injection token.\n *\n * The following code snippets demonstrate how to register a preset:\n *\n * ```typescript\n * @import {SkeletonsModule} from '@bravura/ui/skeletons';\n * @import htmlWithSvgElements from './custom-loader1.html';\n *\n * @NgModule({\n * imports: [SkeletonsModule.forConfig({ presets: {\n * custom1: { viewBox: '0 0 400 100', content: htmlWithSvgElements }\n * }})]\n * })\n * export class MyModule {}\n * ```\n *\n * custom-loader1.html:\n *\n * ```html\n * <rect x=\"50\" y=\"6\" rx=\"4\" ry=\"4\" width=\"343\" height=\"38\" />\n * <rect x=\"8\" y=\"6\" rx=\"4\" ry=\"4\" width=\"35\" height=\"38\" />\n * ```\n */\n@Component({\n\tselector: 'bui-skeleton',\n\ttemplate: '',\n\tchangeDetection: ChangeDetectionStrategy.Eager,\n\tstandalone: false\n})\nexport class SkeletonLoaderComponent extends ContentLoaderComponent implements OnChanges, OnDestroy {\n\tprivate _destroyed$ = new Subject<void>();\n\n\tconstructor(\n\t\telemRef: ElementRef<HTMLElement>,\n\t\tprivate _cdRef: ChangeDetectorRef,\n\t\tprivate _dir: Directionality\n\t) {\n\t\tsuper();\n\n\t\telemRef.nativeElement.classList.add('bui-host');\n\t\tthis.backgroundColor = 'rgba(128,128,128,0.2)';\n\t\tthis.foregroundColor = 'rgba(128,128,128,0.1)';\n\t\tthis.rtl = this._dir.value === 'rtl';\n\t\tthis._dir.change.pipe(takeUntil(this._destroyed$)).subscribe(v => {\n\t\t\tthis.style = {};\n\t\t\tthis.rtl = v === 'rtl';\n\t\t\tthis.ngOnInit();\n\t\t\tthis._cdRef.markForCheck();\n\t\t});\n\t}\n\n\tngOnDestroy(): void {\n\t\tthis._destroyed$.next();\n\t\tthis._destroyed$.complete();\n\t}\n\n\tngOnChanges(changes: SimpleChanges): void {\n\t\tif (Object.keys(changes).some(k => changes[k] && !changes[k].isFirstChange())) {\n\t\t\tsuper.ngOnInit();\n\t\t\tthis._cdRef.markForCheck();\n\t\t}\n\t}\n}\n\nconst componentType: any = SkeletonLoaderComponent;\nconst superType: any = ContentLoaderComponent;\n\nObject.keys(superType.ɵcmp)\n\t.filter(k => !['selectors', 'type'].includes(k))\n\t.forEach(k => (componentType.ɵcmp[k] = superType.ɵcmp[k]));\n","import { AfterViewChecked, Directive, ElementRef, Host, Inject, InjectionToken, Input } from '@angular/core';\r\nimport { SkeletonLoaderComponent } from './skeleton-loader.component';\r\n\r\nexport type SkeletonPreset = {\r\n\tviewBox: string;\r\n\tcontent: string;\r\n};\r\n\r\nexport type SkeletonPresets = { [key: string]: SkeletonPreset };\r\n\r\nexport const SKELETON_PRESETS = new InjectionToken<SkeletonPresets>('bui-skeleton-presets');\r\n\r\nexport const DEFAULT_PRESETS: SkeletonPresets = {\r\n\tfacebook: {\r\n\t\tviewBox: '0 0 425 124',\r\n\t\tcontent: `\r\n\t\t<rect x=\"48\" y=\"8\" rx=\"3\" ry=\"3\" width=\"88\" height=\"6\" /> \r\n\t\t<rect x=\"48\" y=\"26\" rx=\"3\" ry=\"3\" width=\"52\" height=\"6\" /> \r\n\t\t<rect x=\"0\" y=\"56\" rx=\"3\" ry=\"3\" width=\"410\" height=\"6\" /> \r\n\t\t<rect x=\"0\" y=\"72\" rx=\"3\" ry=\"3\" width=\"380\" height=\"6\" /> \r\n\t\t<rect x=\"0\" y=\"88\" rx=\"3\" ry=\"3\" width=\"178\" height=\"6\" /> \r\n\t\t<circle cx=\"20\" cy=\"20\" r=\"20\" />\r\n\t\t`\r\n\t},\r\n\tcode: {\r\n\t\tviewBox: '0 0 340 84',\r\n\t\tcontent: `\r\n\t\t<rect x=\"0\" y=\"0\" rx=\"3\" ry=\"3\" width=\"67\" height=\"11\" /> \r\n\t\t<rect x=\"76\" y=\"0\" rx=\"3\" ry=\"3\" width=\"140\" height=\"11\" /> \r\n\t\t<rect x=\"127\" y=\"48\" rx=\"3\" ry=\"3\" width=\"53\" height=\"11\" /> \r\n\t\t<rect x=\"187\" y=\"48\" rx=\"3\" ry=\"3\" width=\"72\" height=\"11\" /> \r\n\t\t<rect x=\"18\" y=\"48\" rx=\"3\" ry=\"3\" width=\"100\" height=\"11\" /> \r\n\t\t<rect x=\"0\" y=\"71\" rx=\"3\" ry=\"3\" width=\"37\" height=\"11\" /> \r\n\t\t<rect x=\"18\" y=\"23\" rx=\"3\" ry=\"3\" width=\"140\" height=\"11\" /> \r\n\t\t<rect x=\"166\" y=\"23\" rx=\"3\" ry=\"3\" width=\"173\" height=\"11\" />\r\n\t\t`\r\n\t},\r\n\tinstagram: {\r\n\t\tviewBox: '0 0 400 460',\r\n\t\tcontent: `\r\n\t\t<circle cx=\"31\" cy=\"31\" r=\"15\" /> \r\n\t\t<rect x=\"58\" y=\"18\" rx=\"2\" ry=\"2\" width=\"140\" height=\"10\" /> \r\n\t\t<rect x=\"58\" y=\"34\" rx=\"2\" ry=\"2\" width=\"140\" height=\"10\" /> \r\n\t\t<rect x=\"0\" y=\"60\" rx=\"2\" ry=\"2\" width=\"400\" height=\"400\" />\r\n\t\t`\r\n\t},\r\n\tbulletList: {\r\n\t\tviewBox: '0 0 250 150',\r\n\t\tcontent: `\r\n\t\t<circle cx=\"10\" cy=\"20\" r=\"8\" /> \r\n\t\t<rect x=\"25\" y=\"15\" rx=\"5\" ry=\"5\" width=\"220\" height=\"10\" /> \r\n\t\t<circle cx=\"10\" cy=\"50\" r=\"8\" /> \r\n\t\t<rect x=\"25\" y=\"45\" rx=\"5\" ry=\"5\" width=\"220\" height=\"10\" /> \r\n\t\t<circle cx=\"10\" cy=\"80\" r=\"8\" /> \r\n\t\t<rect x=\"25\" y=\"75\" rx=\"5\" ry=\"5\" width=\"220\" height=\"10\" /> \r\n\t\t<circle cx=\"10\" cy=\"110\" r=\"8\" /> \r\n\t\t<rect x=\"25\" y=\"105\" rx=\"5\" ry=\"5\" width=\"220\" height=\"10\" />\r\n\t\t`\r\n\t}\r\n};\r\n\r\n@Directive({\r\n\tselector: 'bui-skeleton[preset]',\r\n\tstandalone: false\r\n})\r\nexport class SkeletonLoaderPresetsDirective implements AfterViewChecked {\r\n\t/** Select the SVG elements from one of the presets. */\r\n\t@Input()\r\n\tpreset?: string;\r\n\r\n\tprivate _allPresets: SkeletonPresets;\r\n\r\n\tconstructor(\r\n\t\t@Host() private _skeletonComponent: SkeletonLoaderComponent,\r\n\t\tprivate _elementRef: ElementRef<HTMLElement>,\r\n\t\t@Inject(SKELETON_PRESETS) _presetList: SkeletonPresets[]\r\n\t) {\r\n\t\tthis._allPresets = _presetList.reduce((p, c) => ({ ...p, ...c }), {});\r\n\t}\r\n\r\n\tngAfterViewChecked(): void {\r\n\t\tconst preset = this._allPresets[(this.preset || '') as any];\r\n\t\tif (preset) {\r\n\t\t\tconst clipPathElem = this._elementRef.nativeElement.querySelector(`[id='${this._skeletonComponent.idClip}']`)!;\r\n\t\t\tthis._skeletonComponent.viewBox = preset.viewBox;\r\n\t\t\tclipPathElem.innerHTML = preset.content;\r\n\t\t}\r\n\t}\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { ModuleWithProviders, NgModule, ValueProvider } from '@angular/core';\r\nimport { BuiCommonModule } from '@bravura/ui/common';\r\nimport { ContentLoaderModule } from '@ngneat/content-loader';\r\nimport {\r\n\tDEFAULT_PRESETS,\r\n\tSkeletonLoaderPresetsDirective,\r\n\tSkeletonPresets,\r\n\tSKELETON_PRESETS\r\n} from './skeleton-loader-presets.directive';\r\nimport { SkeletonLoaderComponent } from './skeleton-loader.component';\r\n\r\nfunction provideSkeletonPresets(presets: SkeletonPresets): ValueProvider {\r\n\treturn {\r\n\t\tprovide: SKELETON_PRESETS,\r\n\t\tuseValue: presets,\r\n\t\tmulti: true\r\n\t};\r\n}\r\n\r\n@NgModule({\r\n\tdeclarations: [SkeletonLoaderComponent, SkeletonLoaderPresetsDirective],\r\n\timports: [CommonModule, ContentLoaderModule, BuiCommonModule],\r\n\texports: [ContentLoaderModule, BuiCommonModule, SkeletonLoaderComponent, SkeletonLoaderPresetsDirective],\r\n\tproviders: [provideSkeletonPresets(DEFAULT_PRESETS)]\r\n})\r\nexport class SkeletonsModule {\r\n\tstatic forConfig(config?: { presets?: SkeletonPresets }): ModuleWithProviders<SkeletonsModule> {\r\n\t\treturn {\r\n\t\t\tngModule: SkeletonsModule,\r\n\t\t\tproviders: [provideSkeletonPresets(config?.presets || {}), provideSkeletonPresets(DEFAULT_PRESETS)]\r\n\t\t};\r\n\t}\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bravura-ui-skeletons.mjs","sources":["../../../projects/ui/skeletons/skeleton-loader.component.ts","../../../projects/ui/skeletons/skeleton-loader-presets.directive.ts","../../../projects/ui/skeletons/skeletons.module.ts","../../../projects/ui/skeletons/bravura-ui-skeletons.ts"],"sourcesContent":["import { Directionality } from '@angular/cdk/bidi';\r\nimport {\r\n\tChangeDetectorRef,\r\n\tComponent,\r\n\tElementRef,\r\n\tOnChanges,\r\n\tOnDestroy,\r\n\tSimpleChanges,\r\n\tChangeDetectionStrategy\r\n} from '@angular/core';\r\nimport { ContentLoaderComponent } from '@ngneat/content-loader';\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\n\r\n/**\r\n * Use the [Create React Content Loader](https://skeletonreact.com/) to create your custom skeleton loaders;\r\n *\r\n * Add the resulting `svg` elements as the content children of a `<bui-skeleton>` component.\r\n *\r\n * The component `bui-skeleton` extends `content-loader` from [ngneat/content-loader](https://github.com/ngneat/content-loader).\r\n *\r\n * You can also choose from one of the presets registered by the `SKELETON_PRESETS` injection token.\r\n *\r\n * The following code snippets demonstrate how to register a preset:\r\n *\r\n * ```typescript\r\n * @import {SkeletonsModule} from '@bravura/ui/skeletons';\r\n * @import htmlWithSvgElements from './custom-loader1.html';\r\n *\r\n * @NgModule({\r\n * imports: [SkeletonsModule.forConfig({ presets: {\r\n * custom1: { viewBox: '0 0 400 100', content: htmlWithSvgElements }\r\n * }})]\r\n * })\r\n * export class MyModule {}\r\n * ```\r\n *\r\n * custom-loader1.html:\r\n *\r\n * ```html\r\n * <rect x=\"50\" y=\"6\" rx=\"4\" ry=\"4\" width=\"343\" height=\"38\" />\r\n * <rect x=\"8\" y=\"6\" rx=\"4\" ry=\"4\" width=\"35\" height=\"38\" />\r\n * ```\r\n */\r\n@Component({\r\n\tselector: 'bui-skeleton',\r\n\ttemplate: '',\r\n\tchangeDetection: ChangeDetectionStrategy.Eager,\r\n\tstandalone: false\r\n})\r\nexport class SkeletonLoaderComponent extends ContentLoaderComponent implements OnChanges, OnDestroy {\r\n\tprivate _destroyed$ = new Subject<void>();\r\n\r\n\tconstructor(\r\n\t\telemRef: ElementRef<HTMLElement>,\r\n\t\tprivate _cdRef: ChangeDetectorRef,\r\n\t\tprivate _dir: Directionality\r\n\t) {\r\n\t\tsuper();\r\n\r\n\t\telemRef.nativeElement.classList.add('bui-host');\r\n\t\tthis.backgroundColor = 'rgba(128,128,128,0.2)';\r\n\t\tthis.foregroundColor = 'rgba(128,128,128,0.1)';\r\n\t\tthis.rtl = this._dir.value === 'rtl';\r\n\t\tthis._dir.change.pipe(takeUntil(this._destroyed$)).subscribe(v => {\r\n\t\t\tthis.style = {};\r\n\t\t\tthis.rtl = v === 'rtl';\r\n\t\t\tthis.ngOnInit();\r\n\t\t\tthis._cdRef.markForCheck();\r\n\t\t});\r\n\t}\r\n\r\n\tngOnDestroy(): void {\r\n\t\tthis._destroyed$.next();\r\n\t\tthis._destroyed$.complete();\r\n\t}\r\n\r\n\tngOnChanges(changes: SimpleChanges): void {\r\n\t\tif (Object.keys(changes).some(k => changes[k] && !changes[k].isFirstChange())) {\r\n\t\t\tsuper.ngOnInit();\r\n\t\t\tthis._cdRef.markForCheck();\r\n\t\t}\r\n\t}\r\n}\r\n\r\nconst componentType: any = SkeletonLoaderComponent;\r\nconst superType: any = ContentLoaderComponent;\r\n\r\nObject.keys(superType.ɵcmp)\r\n\t.filter(k => !['selectors', 'type'].includes(k))\r\n\t.forEach(k => (componentType.ɵcmp[k] = superType.ɵcmp[k]));\r\n","import { AfterViewChecked, Directive, ElementRef, Host, Inject, InjectionToken, Input } from '@angular/core';\r\nimport { SkeletonLoaderComponent } from './skeleton-loader.component';\r\n\r\nexport type SkeletonPreset = {\r\n\tviewBox: string;\r\n\tcontent: string;\r\n};\r\n\r\nexport type SkeletonPresets = { [key: string]: SkeletonPreset };\r\n\r\nexport const SKELETON_PRESETS = new InjectionToken<SkeletonPresets>('bui-skeleton-presets');\r\n\r\nexport const DEFAULT_PRESETS: SkeletonPresets = {\r\n\tfacebook: {\r\n\t\tviewBox: '0 0 425 124',\r\n\t\tcontent: `\r\n\t\t<rect x=\"48\" y=\"8\" rx=\"3\" ry=\"3\" width=\"88\" height=\"6\" /> \r\n\t\t<rect x=\"48\" y=\"26\" rx=\"3\" ry=\"3\" width=\"52\" height=\"6\" /> \r\n\t\t<rect x=\"0\" y=\"56\" rx=\"3\" ry=\"3\" width=\"410\" height=\"6\" /> \r\n\t\t<rect x=\"0\" y=\"72\" rx=\"3\" ry=\"3\" width=\"380\" height=\"6\" /> \r\n\t\t<rect x=\"0\" y=\"88\" rx=\"3\" ry=\"3\" width=\"178\" height=\"6\" /> \r\n\t\t<circle cx=\"20\" cy=\"20\" r=\"20\" />\r\n\t\t`\r\n\t},\r\n\tcode: {\r\n\t\tviewBox: '0 0 340 84',\r\n\t\tcontent: `\r\n\t\t<rect x=\"0\" y=\"0\" rx=\"3\" ry=\"3\" width=\"67\" height=\"11\" /> \r\n\t\t<rect x=\"76\" y=\"0\" rx=\"3\" ry=\"3\" width=\"140\" height=\"11\" /> \r\n\t\t<rect x=\"127\" y=\"48\" rx=\"3\" ry=\"3\" width=\"53\" height=\"11\" /> \r\n\t\t<rect x=\"187\" y=\"48\" rx=\"3\" ry=\"3\" width=\"72\" height=\"11\" /> \r\n\t\t<rect x=\"18\" y=\"48\" rx=\"3\" ry=\"3\" width=\"100\" height=\"11\" /> \r\n\t\t<rect x=\"0\" y=\"71\" rx=\"3\" ry=\"3\" width=\"37\" height=\"11\" /> \r\n\t\t<rect x=\"18\" y=\"23\" rx=\"3\" ry=\"3\" width=\"140\" height=\"11\" /> \r\n\t\t<rect x=\"166\" y=\"23\" rx=\"3\" ry=\"3\" width=\"173\" height=\"11\" />\r\n\t\t`\r\n\t},\r\n\tinstagram: {\r\n\t\tviewBox: '0 0 400 460',\r\n\t\tcontent: `\r\n\t\t<circle cx=\"31\" cy=\"31\" r=\"15\" /> \r\n\t\t<rect x=\"58\" y=\"18\" rx=\"2\" ry=\"2\" width=\"140\" height=\"10\" /> \r\n\t\t<rect x=\"58\" y=\"34\" rx=\"2\" ry=\"2\" width=\"140\" height=\"10\" /> \r\n\t\t<rect x=\"0\" y=\"60\" rx=\"2\" ry=\"2\" width=\"400\" height=\"400\" />\r\n\t\t`\r\n\t},\r\n\tbulletList: {\r\n\t\tviewBox: '0 0 250 150',\r\n\t\tcontent: `\r\n\t\t<circle cx=\"10\" cy=\"20\" r=\"8\" /> \r\n\t\t<rect x=\"25\" y=\"15\" rx=\"5\" ry=\"5\" width=\"220\" height=\"10\" /> \r\n\t\t<circle cx=\"10\" cy=\"50\" r=\"8\" /> \r\n\t\t<rect x=\"25\" y=\"45\" rx=\"5\" ry=\"5\" width=\"220\" height=\"10\" /> \r\n\t\t<circle cx=\"10\" cy=\"80\" r=\"8\" /> \r\n\t\t<rect x=\"25\" y=\"75\" rx=\"5\" ry=\"5\" width=\"220\" height=\"10\" /> \r\n\t\t<circle cx=\"10\" cy=\"110\" r=\"8\" /> \r\n\t\t<rect x=\"25\" y=\"105\" rx=\"5\" ry=\"5\" width=\"220\" height=\"10\" />\r\n\t\t`\r\n\t}\r\n};\r\n\r\n@Directive({\r\n\tselector: 'bui-skeleton[preset]',\r\n\tstandalone: false\r\n})\r\nexport class SkeletonLoaderPresetsDirective implements AfterViewChecked {\r\n\t/** Select the SVG elements from one of the presets. */\r\n\t@Input()\r\n\tpreset?: string;\r\n\r\n\tprivate _allPresets: SkeletonPresets;\r\n\r\n\tconstructor(\r\n\t\t@Host() private _skeletonComponent: SkeletonLoaderComponent,\r\n\t\tprivate _elementRef: ElementRef<HTMLElement>,\r\n\t\t@Inject(SKELETON_PRESETS) _presetList: SkeletonPresets[]\r\n\t) {\r\n\t\tthis._allPresets = _presetList.reduce((p, c) => ({ ...p, ...c }), {});\r\n\t}\r\n\r\n\tngAfterViewChecked(): void {\r\n\t\tconst preset = this._allPresets[(this.preset || '') as any];\r\n\t\tif (preset) {\r\n\t\t\tconst clipPathElem = this._elementRef.nativeElement.querySelector(`[id='${this._skeletonComponent.idClip}']`)!;\r\n\t\t\tthis._skeletonComponent.viewBox = preset.viewBox;\r\n\t\t\tclipPathElem.innerHTML = preset.content;\r\n\t\t}\r\n\t}\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { ModuleWithProviders, NgModule, ValueProvider } from '@angular/core';\r\nimport { BuiCommonModule } from '@bravura/ui/common';\r\nimport { ContentLoaderModule } from '@ngneat/content-loader';\r\nimport {\r\n\tDEFAULT_PRESETS,\r\n\tSkeletonLoaderPresetsDirective,\r\n\tSkeletonPresets,\r\n\tSKELETON_PRESETS\r\n} from './skeleton-loader-presets.directive';\r\nimport { SkeletonLoaderComponent } from './skeleton-loader.component';\r\n\r\nfunction provideSkeletonPresets(presets: SkeletonPresets): ValueProvider {\r\n\treturn {\r\n\t\tprovide: SKELETON_PRESETS,\r\n\t\tuseValue: presets,\r\n\t\tmulti: true\r\n\t};\r\n}\r\n\r\n@NgModule({\r\n\tdeclarations: [SkeletonLoaderComponent, SkeletonLoaderPresetsDirective],\r\n\timports: [CommonModule, ContentLoaderModule, BuiCommonModule],\r\n\texports: [ContentLoaderModule, BuiCommonModule, SkeletonLoaderComponent, SkeletonLoaderPresetsDirective],\r\n\tproviders: [provideSkeletonPresets(DEFAULT_PRESETS)]\r\n})\r\nexport class SkeletonsModule {\r\n\tstatic forConfig(config?: { presets?: SkeletonPresets }): ModuleWithProviders<SkeletonsModule> {\r\n\t\treturn {\r\n\t\t\tngModule: SkeletonsModule,\r\n\t\t\tproviders: [provideSkeletonPresets(config?.presets || {}), provideSkeletonPresets(DEFAULT_PRESETS)]\r\n\t\t};\r\n\t}\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"bravura-ui-stepper.mjs","sources":["../../../projects/ui/stepper/step-label-top.directive.ts","../../../projects/ui/stepper/stepper-animation.ts","../../../projects/ui/stepper/stepper.component.ts","../../../projects/ui/stepper/stepper.component.html","../../../projects/ui/stepper/stepper.module.ts","../../../projects/ui/stepper/bravura-ui-stepper.ts"],"sourcesContent":["import { AfterContentInit, ContentChild, Directive, inject, Optional, TemplateRef } from '@angular/core';\r\nimport { MatStep } from '@angular/material/stepper';\r\n\r\n@Directive({\r\n\tselector: '[buiStepLabelTop]',\r\n\tstandalone: false\r\n})\r\nexport class StepLabelTopDirective {\r\n\tconstructor(@Optional() public templateRef: TemplateRef<any>) {}\r\n}\r\n\r\n@Directive({\r\n\tselector: 'mat-step',\r\n\tstandalone: false\r\n})\r\nexport class StepDirective implements AfterContentInit {\r\n\t@ContentChild(StepLabelTopDirective)\r\n\t@Optional()\r\n\tstepLabelTopDirective: StepLabelTopDirective;\r\n\r\n\tstep = inject(MatStep);\r\n\r\n\tconstructor() {}\r\n\r\n\tngAfterContentInit(): void {\r\n\t\t(this.step as any).stepLabelTopTemplate = this.stepLabelTopDirective?.templateRef;\r\n\t}\r\n}\r\n","import {\r\n\tanimate,\r\n\tAnimationStateMetadata,\r\n\tAnimationTransitionMetadata,\r\n\tstate,\r\n\tstyle,\r\n\ttransition,\r\n\ttrigger\r\n} from '@angular/animations';\r\n\r\nfunction drawerAnimations(isLeft: boolean): (AnimationStateMetadata | AnimationTransitionMetadata)[] {\r\n\tconst closedStyle = { opacity: '0', height: 0, width: 0, visibility: 'hidden' };\r\n\tconst left = { ...closedStyle, transform: 'translateX(50%)' };\r\n\tconst height = { ...closedStyle, transform: 'scaleY(0.5)' };\r\n\treturn [\r\n\t\tstate('open, open-instant', style({ visibility: 'visible' })),\r\n\t\tstate('void', style(isLeft ? left : height)),\r\n\t\ttransition('void => open-instant', animate('0ms')),\r\n\t\ttransition('void <=> open, open-instant => void', animate('400ms cubic-bezier(0.25, 0.8, 0.25, 1)'))\r\n\t];\r\n}\r\n\r\nexport default {\r\n\tstepTransition: trigger('stepTransition', [\r\n\t\tstate('previous', style({ transform: 'translate3d(0, -100%, 0)', visibility: 'hidden' })),\r\n\t\tstate('current', style({ transform: 'none', visibility: 'inherit' })),\r\n\t\tstate('next', style({ transform: 'translate3d(0, 100%, 0)', visibility: 'hidden' })),\r\n\t\ttransition('* => *', animate('500ms cubic-bezier(0.35, 0, 0.25, 1)'))\r\n\t]),\r\n\r\n\tleftDrawer: trigger('leftDrawer', drawerAnimations(true)),\r\n\ttopDrawer: trigger('topDrawer', drawerAnimations(false))\r\n};\r\n","import { AnimationEvent } from '@angular/animations';\nimport { CdkStepper, STEPPER_GLOBAL_OPTIONS, StepContentPositionState, StepperOptions } from '@angular/cdk/stepper';\n\nimport {\n\tAfterContentInit,\n\tChangeDetectionStrategy,\n\tChangeDetectorRef,\n\tComponent,\n\tContentChildren,\n\tElementRef,\n\tEventEmitter,\n\tInject,\n\tInput,\n\tOptional,\n\tOutput,\n\tQueryList,\n\tSelf,\n\tSkipSelf,\n\tTemplateRef,\n\tViewChild,\n\tViewChildren,\n\tViewEncapsulation,\n\tDOCUMENT\n} from '@angular/core';\nimport { ThemePalette } from '@angular/material/core';\nimport { MatStep, MatStepHeader, MatStepper, MatStepperIcon, MatStepperIconContext } from '@angular/material/stepper';\nimport { Subject } from 'rxjs';\nimport { distinctUntilChanged, filter, takeUntil } from 'rxjs/operators';\nimport animation from './stepper-animation';\n\n/** @ignore */\nconst BREAKPOINT = 768;\n\n/**\n * [Angular Material's stepper](https://material.angular.io/components/stepper/overview) provides a wizard-like workflow by dividing\n * content into logical steps.\n *\n * This stepper extends Angular's to customise the presentation of its headers to achieve a better user experience in both mobile and\n * desktop browsers.\n *\n */\n\n@Component({\n\tselector: 'bui-stepper, [buiStepper]',\n\texportAs: 'buiStepper, matStepper, matVerticalStepper, matHorizontalStepper',\n\ttemplateUrl: './stepper.component.html',\n\tstyleUrls: ['./stepper.component.scss'],\n\tinputs: ['selectedIndex'],\n\thost: {\n\t\tclass: 'bui-stepper bui-host',\n\t\t'[attr.aria-orientation]': 'orientation',\n\t\trole: 'tablist'\n\t},\n\tanimations: [animation.stepTransition, animation.leftDrawer, animation.topDrawer],\n\tproviders: [\n\t\t{ provide: MatStepper, useExisting: StepperComponent },\n\t\t{ provide: CdkStepper, useExisting: StepperComponent },\n\t\t{ provide: STEPPER_GLOBAL_OPTIONS, useValue: { displayDefaultIndicatorType: false } }\n\t],\n\tencapsulation: ViewEncapsulation.None,\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tstandalone: false\n})\nexport class StepperComponent extends CdkStepper implements AfterContentInit {\n\t/** @ignore The list of step headers of the steps in the stepper. */\n\t@ViewChildren(MatStepHeader) override _stepHeader!: QueryList<MatStepHeader>;\n\n\t/** @ignore Full list of steps inside the stepper, including inside nested steppers. */\n\t@ContentChildren(MatStep, { descendants: true }) override _steps!: QueryList<MatStep>;\n\n\t/** @ignore Steps that belong to the current stepper, excluding ones from nested steppers. */\n\toverride readonly steps: QueryList<MatStep> = new QueryList<MatStep>();\n\n\t/** @ignore Custom icon overrides passed in by the consumer. */\n\t@ContentChildren(MatStepperIcon, { descendants: true }) _icons!: QueryList<MatStepperIcon>;\n\n\t/** @ignore Event emitted when the current step is done transitioning in. */\n\t@Output() readonly animationDone: EventEmitter<void> = new EventEmitter<void>();\n\n\t/** Whether ripples should be disabled for the step headers. */\n\t@Input() disableRipple?: boolean;\n\n\t/** Theme color for all of the steps in stepper. */\n\t@Input() color: ThemePalette;\n\n\t/**\n\t * A function that constructs the text in the progress cycle for the 'narrow' view.\n\t *\n\t * Default value: `'{selected step} of {total number of steps}'`\n\t */\n\t@Input() indicatorFormatter: (index: number, total: number) => string;\n\n\t/** The text that precedes the name of the next step label, used in the 'narrow' view. */\n\t@Input() nextStepLabelPrefix = 'Next: ';\n\n\t/** @ignore Consumer-specified template-refs to be used to override the header icons. */\n\t_iconOverrides: Record<string, TemplateRef<MatStepperIconContext>> = {};\n\n\t/** @ignore Stream of animation `done` events when the body expands/collapses. */\n\treadonly _animationDone = new Subject<AnimationEvent>();\n\n\t/** @ignore Whether the stepper is in a narrow container */\n\t_narrow = false;\n\n\t/** @ignore Emits whenever the drawer has started animating. */\n\treadonly _leftDrawerStarted = new Subject<AnimationEvent>();\n\t/** @ignore Emits whenever the drawer is done animating. */\n\treadonly _leftDrawerEnded = new Subject<AnimationEvent>();\n\t/** @ignore Current state of the sidenav animation. */\n\t_leftDrawerState: 'open-instant' | 'open' | 'void' = 'open-instant';\n\n\t/** @ignore Emits whenever the drawer has started animating. */\n\treadonly _topDrawerStarted = new Subject<AnimationEvent>();\n\t/** @ignore Emits whenever the drawer is done animating. */\n\treadonly _topDrawerEnded = new Subject<AnimationEvent>();\n\t/** @ignore Current state of the sidenav animation. */\n\t_topDrawerState: 'open-instant' | 'open' | 'void' = 'void';\n\n\t/** @ignore */ readonly _progressCircleSize = 80;\n\t/** @ignore */ readonly _progressCircleWidth = 5;\n\t/** @ignore */ _stepTransitioning = false;\n\n\t@ViewChild('editIconTemplate', { static: true })\n\tprivate _editIconTemplate!: TemplateRef<any>;\n\n\tconstructor(\n\t\tprivate changeDetectorRef: ChangeDetectorRef,\n\t\tprivate _buiElRef: ElementRef<HTMLElement>,\n\t\t@Inject(DOCUMENT) _document: any,\n\t\t@Self() @Inject(STEPPER_GLOBAL_OPTIONS) stepperOptions: StepperOptions,\n\t\t@Optional() @SkipSelf() @Inject(STEPPER_GLOBAL_OPTIONS) defaultStepperOptions?: StepperOptions\n\t) {\n\t\tsuper();\n\t\tthis.orientation = 'vertical';\n\t\tthis.indicatorFormatter = (index, total) => `${index} of ${total}`;\n\t\tObject.keys(defaultStepperOptions || {})\n\t\t\t.filter(k => k !== 'displayDefaultIndicatorType')\n\t\t\t.forEach(((k: keyof StepperOptions) => (stepperOptions[k] = defaultStepperOptions![k])) as any);\n\t}\n\n\toverride ngAfterContentInit() {\n\t\tsuper.ngAfterContentInit();\n\t\tthis._icons.forEach(({ name, templateRef }) => (this._iconOverrides[name] = templateRef));\n\n\t\t// Mark the component for change detection whenever the content children query changes\n\t\tthis.steps.changes.pipe(takeUntil(this._destroyed)).subscribe(() => {\n\t\t\tthis._stateChanged();\n\t\t});\n\n\t\tthis._animationDone\n\t\t\t.pipe(\n\t\t\t\tdistinctUntilChanged((x, y) => x.fromState === y.fromState && x.toState === y.toState),\n\t\t\t\ttakeUntil(this._destroyed)\n\t\t\t)\n\t\t\t.subscribe(event => {\n\t\t\t\tif ((event.toState as StepContentPositionState) === 'current') {\n\t\t\t\t\tthis.animationDone.emit();\n\t\t\t\t\tthis._stepTransitioning = false;\n\t\t\t\t}\n\t\t\t});\n\n\t\tthis._leftDrawerEnded\n\t\t\t.pipe(\n\t\t\t\tdistinctUntilChanged((x, y) => x.fromState === y.fromState && x.toState === y.toState),\n\t\t\t\tfilter(ev => ev.toState === 'void' && ev.toState !== ev.fromState),\n\t\t\t\ttakeUntil(this._destroyed)\n\t\t\t)\n\t\t\t.subscribe(() => {\n\t\t\t\tthis._topDrawerState = 'open';\n\t\t\t});\n\n\t\tthis._topDrawerEnded\n\t\t\t.pipe(\n\t\t\t\tdistinctUntilChanged((x, y) => x.fromState === y.fromState && x.toState === y.toState),\n\t\t\t\tfilter(ev => ev.toState === 'void' && ev.toState !== ev.fromState),\n\t\t\t\ttakeUntil(this._destroyed)\n\t\t\t)\n\t\t\t.subscribe(() => {\n\t\t\t\tthis._leftDrawerState = 'open';\n\t\t\t});\n\t\tthis._iconOverrides.edit = this._iconOverrides.edit || this._editIconTemplate;\n\t}\n\n\t/** @ignore */\n\t_stepIsNavigable(index: number, step: MatStep): boolean {\n\t\treturn step.completed || this.selectedIndex === index || !this.linear;\n\t}\n\n\t/** @ignore */\n\t_widthChanged(w: number) {\n\t\tconst narrow = Math.abs(w - BREAKPOINT) < 20 ? this._narrow : w < BREAKPOINT;\n\t\tconst cls = 'bui-stepper-narrow';\n\t\tconst classList = this._buiElRef.nativeElement.classList;\n\t\tif (narrow) {\n\t\t\tthis._leftDrawerState = 'void';\n\t\t\tclassList.add(cls);\n\t\t} else {\n\t\t\tthis._topDrawerState = 'void';\n\t\t\tclassList.remove(cls);\n\t\t}\n\t\tif (this._narrow !== narrow) {\n\t\t\tthis._narrow = narrow;\n\t\t\tthis._stateChanged();\n\t\t}\n\t}\n\n\t/** @ignore */\n\t_startStepTransition() {\n\t\tsetTimeout(() => {\n\t\t\tthis._stepTransitioning = true;\n\t\t\tthis.changeDetectorRef.markForCheck();\n\t\t});\n\t}\n\n\ttoCustomStep(step: any) {\n\t\treturn <any>step;\n\t}\n}\n","<div class=\"bui-stepper-wrapper\" [style.display]=\"_leftDrawerState.startsWith('open') ? 'flex' : 'block'\" #sizeMonitor>\n\t<div\n\t\tclass=\"bui-stepper-left-header-container\"\n\t\t[@leftDrawer]=\"_leftDrawerState\"\n\t\t(@leftDrawer.start)=\"_leftDrawerStarted.next($event)\"\n\t\t(@leftDrawer.done)=\"_leftDrawerEnded.next($event)\"\n\t>\n\t\t<div class=\"bui-step-progress-label\">Step {{ selectedIndex + 1 }} of {{ steps.length }}</div>\n\t\t@for (step of steps; track step; let i = $index; let isLast = $last) {\n\t\t\t<div class=\"bui-stepper-header-wrapper\" [class.bui-stepper-vertical-line]=\"!isLast\">\n\t\t\t\t<mat-step-header\n\t\t\t\t\tclass=\"bui-stepper-header\"\n\t\t\t\t\t(click)=\"step.select()\"\n\t\t\t\t\t(keydown)=\"_onKeydown($event)\"\n\t\t\t\t\t[tabIndex]=\"_getFocusIndex() === i ? 0 : -1\"\n\t\t\t\t\t[id]=\"_getStepLabelId(i)\"\n\t\t\t\t\t[attr.aria-posinset]=\"i + 1\"\n\t\t\t\t\t[attr.aria-setsize]=\"steps.length\"\n\t\t\t\t\t[attr.aria-controls]=\"_getStepContentId(i)\"\n\t\t\t\t\t[attr.aria-selected]=\"selectedIndex == i\"\n\t\t\t\t\t[attr.aria-label]=\"step.ariaLabel || null\"\n\t\t\t\t\t[attr.aria-labelledby]=\"!step.ariaLabel && step.ariaLabelledby ? step.ariaLabelledby : null\"\n\t\t\t\t\t[attr.aria-disabled]=\"_stepIsNavigable(i, step) ? null : true\"\n\t\t\t\t\t[index]=\"i\"\n\t\t\t\t\t[state]=\"step.indicatorType()\"\n\t\t\t\t\t[label]=\"step.stepLabel || step.label\"\n\t\t\t\t\t[selected]=\"selectedIndex === i\"\n\t\t\t\t\t[active]=\"_stepIsNavigable(i, step)\"\n\t\t\t\t\t[optional]=\"step.optional\"\n\t\t\t\t\t[errorMessage]=\"step.errorMessage\"\n\t\t\t\t\t[iconOverrides]=\"_iconOverrides\"\n\t\t\t\t\t[disableRipple]=\"disableRipple || !_stepIsNavigable(i, step)\"\n\t\t\t\t\t[color]=\"step.color || color\"\n\t\t\t\t></mat-step-header>\n\t\t\t</div>\n\t\t}\n\t</div>\n\n\t<div class=\"bui-stepper-content-container\" [buiSizingBy]=\"sizeMonitor\" (buiResized)=\"_widthChanged($event.width)\">\n\t\t<div\n\t\t\tclass=\"bui-stepper-top-header-container\"\n\t\t\t[class.bui-stepper-header-active]=\"_leftDrawerState === 'void'\"\n\t\t\t[@topDrawer]=\"_topDrawerState\"\n\t\t\t(@topDrawer.start)=\"_topDrawerStarted.next($event)\"\n\t\t\t(@topDrawer.done)=\"_topDrawerEnded.next($event)\"\n\t\t>\n\t\t\t<div class=\"bui-stepper-top-header-progress\">\n\t\t\t\t<span class=\"bui-stepper-top-header-indicator\">\n\t\t\t\t\tStep {{ indicatorFormatter(selectedIndex + 1, steps.length) }}\n\t\t\t\t</span>\n\t\t\t</div>\n\n\t\t\t<div class=\"bui-stepper-progress-indicator\">\n\t\t\t\t@for (s of steps; track s; let i = $index) {\n\t\t\t\t\t<div\n\t\t\t\t\t\trole=\"button\"\n\t\t\t\t\t\t(click)=\"selectedIndex = i\"\n\t\t\t\t\t\tclass=\"bui-stepper-progress-indicator-section\"\n\t\t\t\t\t\t[class.bui-step-section-interacted]=\"i <= selectedIndex\"\n\t\t\t\t\t></div>\n\t\t\t\t}\n\t\t\t</div>\n\t\t\t@if (selectedIndex < steps.length - 1) {\n\t\t\t\t<div class=\"bui-stepper-top-header-title-next\">\n\t\t\t\t\t{{ nextStepLabelPrefix }}\n\t\t\t\t\t<ng-template\n\t\t\t\t\t\t[ngTemplateOutlet]=\"labelTemplate\"\n\t\t\t\t\t\t[ngTemplateOutletContext]=\"{ $implicit: steps.get(selectedIndex + 1) }\"\n\t\t\t\t\t></ng-template>\n\t\t\t\t</div>\n\t\t\t}\n\n\t\t\t@if (selected) {\n\t\t\t\t<div class=\"bui-stepper-top-header-titles-wrapper\">\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"toCustomStep(selected).stepLabelTopTemplate\"></ng-container>\n\t\t\t\t\t<div class=\"bui-stepper-top-header-title\">\n\t\t\t\t\t\t<ng-template\n\t\t\t\t\t\t\t[ngTemplateOutlet]=\"labelTemplate\"\n\t\t\t\t\t\t\t[ngTemplateOutletContext]=\"{ $implicit: selected }\"\n\t\t\t\t\t\t></ng-template>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t}\n\t\t</div>\n\t\t<div class=\"bui-stepper-content-wrapper\" [class.bui-stepper-content-wrapper-transitioning]=\"_stepTransitioning\">\n\t\t\t@for (step of steps; track step; let i = $index) {\n\t\t\t\t<div\n\t\t\t\t\tclass=\"bui-stepper-content\"\n\t\t\t\t\trole=\"tabpanel\"\n\t\t\t\t\t[@stepTransition]=\"_getAnimationDirection(i)\"\n\t\t\t\t\t(@stepTransition.start)=\"_startStepTransition()\"\n\t\t\t\t\t(@stepTransition.done)=\"_animationDone.next($event)\"\n\t\t\t\t\t[id]=\"_getStepContentId(i)\"\n\t\t\t\t\t[attr.aria-labelledby]=\"_getStepLabelId(i)\"\n\t\t\t\t\t[attr.aria-expanded]=\"selectedIndex === i\"\n\t\t\t\t>\n\t\t\t\t\t@if (!_narrow) {\n\t\t\t\t\t\t<div class=\"bui-stepper-content-header-label\">\n\t\t\t\t\t\t\t<ng-container *ngTemplateOutlet=\"toCustomStep(step).stepLabelTopTemplate\"></ng-container>\n\t\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t\t<ng-template\n\t\t\t\t\t\t\t\t\t[ngTemplateOutlet]=\"labelTemplate\"\n\t\t\t\t\t\t\t\t\t[ngTemplateOutletContext]=\"{ $implicit: step }\"\n\t\t\t\t\t\t\t\t></ng-template>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t}\n\t\t\t\t\t<ng-template [ngTemplateOutlet]=\"step.content\"></ng-template>\n\t\t\t\t</div>\n\t\t\t}\n\t\t</div>\n\t</div>\n</div>\n\n<ng-template #labelTemplate let-step>\n\t@if (step.stepLabel) {\n\t\t<ng-template [ngTemplateOutlet]=\"step.stepLabel.template\"></ng-template>\n\t} @else {\n\t\t{{ step.label }}\n\t}\n\t<ng-template #stringLabelTempl>{{ step.label }}</ng-template>\n</ng-template>\n\n<ng-template #editIconTemplate let-index=\"index\">\n\t<span>{{ index + 1 }}</span>\n</ng-template>\n","import { PortalModule } from '@angular/cdk/portal';\r\nimport { CdkStepperModule } from '@angular/cdk/stepper';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatRippleModule } from '@angular/material/core';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\r\nimport { MatStepperModule } from '@angular/material/stepper';\r\nimport { BehaviorModule } from '@bravura/ui/behavior';\r\nimport { StepDirective, StepLabelTopDirective } from './step-label-top.directive';\r\nimport { StepperComponent } from './stepper.component';\r\n\r\n@NgModule({\r\n\tdeclarations: [StepperComponent, StepDirective, StepLabelTopDirective],\r\n\timports: [\r\n\t\tCommonModule,\r\n\t\tPortalModule,\r\n\t\tCdkStepperModule,\r\n\t\tMatStepperModule,\r\n\t\tMatButtonModule,\r\n\t\tMatIconModule,\r\n\t\tMatRippleModule,\r\n\t\tMatProgressSpinnerModule,\r\n\t\tBehaviorModule\r\n\t],\r\n\texports: [StepperComponent, MatStepperModule, StepLabelTopDirective, StepDirective]\r\n})\r\nexport class StepperModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bravura-ui-stepper.mjs","sources":["../../../projects/ui/stepper/step-label-top.directive.ts","../../../projects/ui/stepper/stepper-animation.ts","../../../projects/ui/stepper/stepper.component.ts","../../../projects/ui/stepper/stepper.component.html","../../../projects/ui/stepper/stepper.module.ts","../../../projects/ui/stepper/bravura-ui-stepper.ts"],"sourcesContent":["import { AfterContentInit, ContentChild, Directive, inject, Optional, TemplateRef } from '@angular/core';\r\nimport { MatStep } from '@angular/material/stepper';\r\n\r\n@Directive({\r\n\tselector: '[buiStepLabelTop]',\r\n\tstandalone: false\r\n})\r\nexport class StepLabelTopDirective {\r\n\tconstructor(@Optional() public templateRef: TemplateRef<any>) {}\r\n}\r\n\r\n@Directive({\r\n\tselector: 'mat-step',\r\n\tstandalone: false\r\n})\r\nexport class StepDirective implements AfterContentInit {\r\n\t@ContentChild(StepLabelTopDirective)\r\n\t@Optional()\r\n\tstepLabelTopDirective: StepLabelTopDirective;\r\n\r\n\tstep = inject(MatStep);\r\n\r\n\tconstructor() {}\r\n\r\n\tngAfterContentInit(): void {\r\n\t\t(this.step as any).stepLabelTopTemplate = this.stepLabelTopDirective?.templateRef;\r\n\t}\r\n}\r\n","import {\r\n\tanimate,\r\n\tAnimationStateMetadata,\r\n\tAnimationTransitionMetadata,\r\n\tstate,\r\n\tstyle,\r\n\ttransition,\r\n\ttrigger\r\n} from '@angular/animations';\r\n\r\nfunction drawerAnimations(isLeft: boolean): (AnimationStateMetadata | AnimationTransitionMetadata)[] {\r\n\tconst closedStyle = { opacity: '0', height: 0, width: 0, visibility: 'hidden' };\r\n\tconst left = { ...closedStyle, transform: 'translateX(50%)' };\r\n\tconst height = { ...closedStyle, transform: 'scaleY(0.5)' };\r\n\treturn [\r\n\t\tstate('open, open-instant', style({ visibility: 'visible' })),\r\n\t\tstate('void', style(isLeft ? left : height)),\r\n\t\ttransition('void => open-instant', animate('0ms')),\r\n\t\ttransition('void <=> open, open-instant => void', animate('400ms cubic-bezier(0.25, 0.8, 0.25, 1)'))\r\n\t];\r\n}\r\n\r\nexport default {\r\n\tstepTransition: trigger('stepTransition', [\r\n\t\tstate('previous', style({ transform: 'translate3d(0, -100%, 0)', visibility: 'hidden' })),\r\n\t\tstate('current', style({ transform: 'none', visibility: 'inherit' })),\r\n\t\tstate('next', style({ transform: 'translate3d(0, 100%, 0)', visibility: 'hidden' })),\r\n\t\ttransition('* => *', animate('500ms cubic-bezier(0.35, 0, 0.25, 1)'))\r\n\t]),\r\n\r\n\tleftDrawer: trigger('leftDrawer', drawerAnimations(true)),\r\n\ttopDrawer: trigger('topDrawer', drawerAnimations(false))\r\n};\r\n","import { AnimationEvent } from '@angular/animations';\r\nimport { CdkStepper, STEPPER_GLOBAL_OPTIONS, StepContentPositionState, StepperOptions } from '@angular/cdk/stepper';\r\n\r\nimport {\r\n\tAfterContentInit,\r\n\tChangeDetectionStrategy,\r\n\tChangeDetectorRef,\r\n\tComponent,\r\n\tContentChildren,\r\n\tElementRef,\r\n\tEventEmitter,\r\n\tInject,\r\n\tInput,\r\n\tOptional,\r\n\tOutput,\r\n\tQueryList,\r\n\tSelf,\r\n\tSkipSelf,\r\n\tTemplateRef,\r\n\tViewChild,\r\n\tViewChildren,\r\n\tViewEncapsulation,\r\n\tDOCUMENT\r\n} from '@angular/core';\r\nimport { ThemePalette } from '@angular/material/core';\r\nimport { MatStep, MatStepHeader, MatStepper, MatStepperIcon, MatStepperIconContext } from '@angular/material/stepper';\r\nimport { Subject } from 'rxjs';\r\nimport { distinctUntilChanged, filter, takeUntil } from 'rxjs/operators';\r\nimport animation from './stepper-animation';\r\n\r\n/** @ignore */\r\nconst BREAKPOINT = 768;\r\n\r\n/**\r\n * [Angular Material's stepper](https://material.angular.io/components/stepper/overview) provides a wizard-like workflow by dividing\r\n * content into logical steps.\r\n *\r\n * This stepper extends Angular's to customise the presentation of its headers to achieve a better user experience in both mobile and\r\n * desktop browsers.\r\n *\r\n */\r\n\r\n@Component({\r\n\tselector: 'bui-stepper, [buiStepper]',\r\n\texportAs: 'buiStepper, matStepper, matVerticalStepper, matHorizontalStepper',\r\n\ttemplateUrl: './stepper.component.html',\r\n\tstyleUrls: ['./stepper.component.scss'],\r\n\tinputs: ['selectedIndex'],\r\n\thost: {\r\n\t\tclass: 'bui-stepper bui-host',\r\n\t\t'[attr.aria-orientation]': 'orientation',\r\n\t\trole: 'tablist'\r\n\t},\r\n\tanimations: [animation.stepTransition, animation.leftDrawer, animation.topDrawer],\r\n\tproviders: [\r\n\t\t{ provide: MatStepper, useExisting: StepperComponent },\r\n\t\t{ provide: CdkStepper, useExisting: StepperComponent },\r\n\t\t{ provide: STEPPER_GLOBAL_OPTIONS, useValue: { displayDefaultIndicatorType: false } }\r\n\t],\r\n\tencapsulation: ViewEncapsulation.None,\r\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\r\n\tstandalone: false\r\n})\r\nexport class StepperComponent extends CdkStepper implements AfterContentInit {\r\n\t/** @ignore The list of step headers of the steps in the stepper. */\r\n\t@ViewChildren(MatStepHeader) override _stepHeader!: QueryList<MatStepHeader>;\r\n\r\n\t/** @ignore Full list of steps inside the stepper, including inside nested steppers. */\r\n\t@ContentChildren(MatStep, { descendants: true }) override _steps!: QueryList<MatStep>;\r\n\r\n\t/** @ignore Steps that belong to the current stepper, excluding ones from nested steppers. */\r\n\toverride readonly steps: QueryList<MatStep> = new QueryList<MatStep>();\r\n\r\n\t/** @ignore Custom icon overrides passed in by the consumer. */\r\n\t@ContentChildren(MatStepperIcon, { descendants: true }) _icons!: QueryList<MatStepperIcon>;\r\n\r\n\t/** @ignore Event emitted when the current step is done transitioning in. */\r\n\t@Output() readonly animationDone: EventEmitter<void> = new EventEmitter<void>();\r\n\r\n\t/** Whether ripples should be disabled for the step headers. */\r\n\t@Input() disableRipple?: boolean;\r\n\r\n\t/** Theme color for all of the steps in stepper. */\r\n\t@Input() color: ThemePalette;\r\n\r\n\t/**\r\n\t * A function that constructs the text in the progress cycle for the 'narrow' view.\r\n\t *\r\n\t * Default value: `'{selected step} of {total number of steps}'`\r\n\t */\r\n\t@Input() indicatorFormatter: (index: number, total: number) => string;\r\n\r\n\t/** The text that precedes the name of the next step label, used in the 'narrow' view. */\r\n\t@Input() nextStepLabelPrefix = 'Next: ';\r\n\r\n\t/** @ignore Consumer-specified template-refs to be used to override the header icons. */\r\n\t_iconOverrides: Record<string, TemplateRef<MatStepperIconContext>> = {};\r\n\r\n\t/** @ignore Stream of animation `done` events when the body expands/collapses. */\r\n\treadonly _animationDone = new Subject<AnimationEvent>();\r\n\r\n\t/** @ignore Whether the stepper is in a narrow container */\r\n\t_narrow = false;\r\n\r\n\t/** @ignore Emits whenever the drawer has started animating. */\r\n\treadonly _leftDrawerStarted = new Subject<AnimationEvent>();\r\n\t/** @ignore Emits whenever the drawer is done animating. */\r\n\treadonly _leftDrawerEnded = new Subject<AnimationEvent>();\r\n\t/** @ignore Current state of the sidenav animation. */\r\n\t_leftDrawerState: 'open-instant' | 'open' | 'void' = 'open-instant';\r\n\r\n\t/** @ignore Emits whenever the drawer has started animating. */\r\n\treadonly _topDrawerStarted = new Subject<AnimationEvent>();\r\n\t/** @ignore Emits whenever the drawer is done animating. */\r\n\treadonly _topDrawerEnded = new Subject<AnimationEvent>();\r\n\t/** @ignore Current state of the sidenav animation. */\r\n\t_topDrawerState: 'open-instant' | 'open' | 'void' = 'void';\r\n\r\n\t/** @ignore */ readonly _progressCircleSize = 80;\r\n\t/** @ignore */ readonly _progressCircleWidth = 5;\r\n\t/** @ignore */ _stepTransitioning = false;\r\n\r\n\t@ViewChild('editIconTemplate', { static: true })\r\n\tprivate _editIconTemplate!: TemplateRef<any>;\r\n\r\n\tconstructor(\r\n\t\tprivate changeDetectorRef: ChangeDetectorRef,\r\n\t\tprivate _buiElRef: ElementRef<HTMLElement>,\r\n\t\t@Inject(DOCUMENT) _document: any,\r\n\t\t@Self() @Inject(STEPPER_GLOBAL_OPTIONS) stepperOptions: StepperOptions,\r\n\t\t@Optional() @SkipSelf() @Inject(STEPPER_GLOBAL_OPTIONS) defaultStepperOptions?: StepperOptions\r\n\t) {\r\n\t\tsuper();\r\n\t\tthis.orientation = 'vertical';\r\n\t\tthis.indicatorFormatter = (index, total) => `${index} of ${total}`;\r\n\t\tObject.keys(defaultStepperOptions || {})\r\n\t\t\t.filter(k => k !== 'displayDefaultIndicatorType')\r\n\t\t\t.forEach(((k: keyof StepperOptions) => (stepperOptions[k] = defaultStepperOptions![k])) as any);\r\n\t}\r\n\r\n\toverride ngAfterContentInit() {\r\n\t\tsuper.ngAfterContentInit();\r\n\t\tthis._icons.forEach(({ name, templateRef }) => (this._iconOverrides[name] = templateRef));\r\n\r\n\t\t// Mark the component for change detection whenever the content children query changes\r\n\t\tthis.steps.changes.pipe(takeUntil(this._destroyed)).subscribe(() => {\r\n\t\t\tthis._stateChanged();\r\n\t\t});\r\n\r\n\t\tthis._animationDone\r\n\t\t\t.pipe(\r\n\t\t\t\tdistinctUntilChanged((x, y) => x.fromState === y.fromState && x.toState === y.toState),\r\n\t\t\t\ttakeUntil(this._destroyed)\r\n\t\t\t)\r\n\t\t\t.subscribe(event => {\r\n\t\t\t\tif ((event.toState as StepContentPositionState) === 'current') {\r\n\t\t\t\t\tthis.animationDone.emit();\r\n\t\t\t\t\tthis._stepTransitioning = false;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\tthis._leftDrawerEnded\r\n\t\t\t.pipe(\r\n\t\t\t\tdistinctUntilChanged((x, y) => x.fromState === y.fromState && x.toState === y.toState),\r\n\t\t\t\tfilter(ev => ev.toState === 'void' && ev.toState !== ev.fromState),\r\n\t\t\t\ttakeUntil(this._destroyed)\r\n\t\t\t)\r\n\t\t\t.subscribe(() => {\r\n\t\t\t\tthis._topDrawerState = 'open';\r\n\t\t\t});\r\n\r\n\t\tthis._topDrawerEnded\r\n\t\t\t.pipe(\r\n\t\t\t\tdistinctUntilChanged((x, y) => x.fromState === y.fromState && x.toState === y.toState),\r\n\t\t\t\tfilter(ev => ev.toState === 'void' && ev.toState !== ev.fromState),\r\n\t\t\t\ttakeUntil(this._destroyed)\r\n\t\t\t)\r\n\t\t\t.subscribe(() => {\r\n\t\t\t\tthis._leftDrawerState = 'open';\r\n\t\t\t});\r\n\t\tthis._iconOverrides.edit = this._iconOverrides.edit || this._editIconTemplate;\r\n\t}\r\n\r\n\t/** @ignore */\r\n\t_stepIsNavigable(index: number, step: MatStep): boolean {\r\n\t\treturn step.completed || this.selectedIndex === index || !this.linear;\r\n\t}\r\n\r\n\t/** @ignore */\r\n\t_widthChanged(w: number) {\r\n\t\tconst narrow = Math.abs(w - BREAKPOINT) < 20 ? this._narrow : w < BREAKPOINT;\r\n\t\tconst cls = 'bui-stepper-narrow';\r\n\t\tconst classList = this._buiElRef.nativeElement.classList;\r\n\t\tif (narrow) {\r\n\t\t\tthis._leftDrawerState = 'void';\r\n\t\t\tclassList.add(cls);\r\n\t\t} else {\r\n\t\t\tthis._topDrawerState = 'void';\r\n\t\t\tclassList.remove(cls);\r\n\t\t}\r\n\t\tif (this._narrow !== narrow) {\r\n\t\t\tthis._narrow = narrow;\r\n\t\t\tthis._stateChanged();\r\n\t\t}\r\n\t}\r\n\r\n\t/** @ignore */\r\n\t_startStepTransition() {\r\n\t\tsetTimeout(() => {\r\n\t\t\tthis._stepTransitioning = true;\r\n\t\t\tthis.changeDetectorRef.markForCheck();\r\n\t\t});\r\n\t}\r\n\r\n\ttoCustomStep(step: any) {\r\n\t\treturn <any>step;\r\n\t}\r\n}\r\n","<div class=\"bui-stepper-wrapper\" [style.display]=\"_leftDrawerState.startsWith('open') ? 'flex' : 'block'\" #sizeMonitor>\n\t<div\n\t\tclass=\"bui-stepper-left-header-container\"\n\t\t[@leftDrawer]=\"_leftDrawerState\"\n\t\t(@leftDrawer.start)=\"_leftDrawerStarted.next($event)\"\n\t\t(@leftDrawer.done)=\"_leftDrawerEnded.next($event)\"\n\t>\n\t\t<div class=\"bui-step-progress-label\">Step {{ selectedIndex + 1 }} of {{ steps.length }}</div>\n\t\t@for (step of steps; track step; let i = $index; let isLast = $last) {\n\t\t\t<div class=\"bui-stepper-header-wrapper\" [class.bui-stepper-vertical-line]=\"!isLast\">\n\t\t\t\t<mat-step-header\n\t\t\t\t\tclass=\"bui-stepper-header\"\n\t\t\t\t\t(click)=\"step.select()\"\n\t\t\t\t\t(keydown)=\"_onKeydown($event)\"\n\t\t\t\t\t[tabIndex]=\"_getFocusIndex() === i ? 0 : -1\"\n\t\t\t\t\t[id]=\"_getStepLabelId(i)\"\n\t\t\t\t\t[attr.aria-posinset]=\"i + 1\"\n\t\t\t\t\t[attr.aria-setsize]=\"steps.length\"\n\t\t\t\t\t[attr.aria-controls]=\"_getStepContentId(i)\"\n\t\t\t\t\t[attr.aria-selected]=\"selectedIndex == i\"\n\t\t\t\t\t[attr.aria-label]=\"step.ariaLabel || null\"\n\t\t\t\t\t[attr.aria-labelledby]=\"!step.ariaLabel && step.ariaLabelledby ? step.ariaLabelledby : null\"\n\t\t\t\t\t[attr.aria-disabled]=\"_stepIsNavigable(i, step) ? null : true\"\n\t\t\t\t\t[index]=\"i\"\n\t\t\t\t\t[state]=\"step.indicatorType()\"\n\t\t\t\t\t[label]=\"step.stepLabel || step.label\"\n\t\t\t\t\t[selected]=\"selectedIndex === i\"\n\t\t\t\t\t[active]=\"_stepIsNavigable(i, step)\"\n\t\t\t\t\t[optional]=\"step.optional\"\n\t\t\t\t\t[errorMessage]=\"step.errorMessage\"\n\t\t\t\t\t[iconOverrides]=\"_iconOverrides\"\n\t\t\t\t\t[disableRipple]=\"disableRipple || !_stepIsNavigable(i, step)\"\n\t\t\t\t\t[color]=\"step.color || color\"\n\t\t\t\t></mat-step-header>\n\t\t\t</div>\n\t\t}\n\t</div>\n\n\t<div class=\"bui-stepper-content-container\" [buiSizingBy]=\"sizeMonitor\" (buiResized)=\"_widthChanged($event.width)\">\n\t\t<div\n\t\t\tclass=\"bui-stepper-top-header-container\"\n\t\t\t[class.bui-stepper-header-active]=\"_leftDrawerState === 'void'\"\n\t\t\t[@topDrawer]=\"_topDrawerState\"\n\t\t\t(@topDrawer.start)=\"_topDrawerStarted.next($event)\"\n\t\t\t(@topDrawer.done)=\"_topDrawerEnded.next($event)\"\n\t\t>\n\t\t\t<div class=\"bui-stepper-top-header-progress\">\n\t\t\t\t<span class=\"bui-stepper-top-header-indicator\">\n\t\t\t\t\tStep {{ indicatorFormatter(selectedIndex + 1, steps.length) }}\n\t\t\t\t</span>\n\t\t\t</div>\n\n\t\t\t<div class=\"bui-stepper-progress-indicator\">\n\t\t\t\t@for (s of steps; track s; let i = $index) {\n\t\t\t\t\t<div\n\t\t\t\t\t\trole=\"button\"\n\t\t\t\t\t\t(click)=\"selectedIndex = i\"\n\t\t\t\t\t\tclass=\"bui-stepper-progress-indicator-section\"\n\t\t\t\t\t\t[class.bui-step-section-interacted]=\"i <= selectedIndex\"\n\t\t\t\t\t></div>\n\t\t\t\t}\n\t\t\t</div>\n\t\t\t@if (selectedIndex < steps.length - 1) {\n\t\t\t\t<div class=\"bui-stepper-top-header-title-next\">\n\t\t\t\t\t{{ nextStepLabelPrefix }}\n\t\t\t\t\t<ng-template\n\t\t\t\t\t\t[ngTemplateOutlet]=\"labelTemplate\"\n\t\t\t\t\t\t[ngTemplateOutletContext]=\"{ $implicit: steps.get(selectedIndex + 1) }\"\n\t\t\t\t\t></ng-template>\n\t\t\t\t</div>\n\t\t\t}\n\n\t\t\t@if (selected) {\n\t\t\t\t<div class=\"bui-stepper-top-header-titles-wrapper\">\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"toCustomStep(selected).stepLabelTopTemplate\"></ng-container>\n\t\t\t\t\t<div class=\"bui-stepper-top-header-title\">\n\t\t\t\t\t\t<ng-template\n\t\t\t\t\t\t\t[ngTemplateOutlet]=\"labelTemplate\"\n\t\t\t\t\t\t\t[ngTemplateOutletContext]=\"{ $implicit: selected }\"\n\t\t\t\t\t\t></ng-template>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t}\n\t\t</div>\n\t\t<div class=\"bui-stepper-content-wrapper\" [class.bui-stepper-content-wrapper-transitioning]=\"_stepTransitioning\">\n\t\t\t@for (step of steps; track step; let i = $index) {\n\t\t\t\t<div\n\t\t\t\t\tclass=\"bui-stepper-content\"\n\t\t\t\t\trole=\"tabpanel\"\n\t\t\t\t\t[@stepTransition]=\"_getAnimationDirection(i)\"\n\t\t\t\t\t(@stepTransition.start)=\"_startStepTransition()\"\n\t\t\t\t\t(@stepTransition.done)=\"_animationDone.next($event)\"\n\t\t\t\t\t[id]=\"_getStepContentId(i)\"\n\t\t\t\t\t[attr.aria-labelledby]=\"_getStepLabelId(i)\"\n\t\t\t\t\t[attr.aria-expanded]=\"selectedIndex === i\"\n\t\t\t\t>\n\t\t\t\t\t@if (!_narrow) {\n\t\t\t\t\t\t<div class=\"bui-stepper-content-header-label\">\n\t\t\t\t\t\t\t<ng-container *ngTemplateOutlet=\"toCustomStep(step).stepLabelTopTemplate\"></ng-container>\n\t\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t\t<ng-template\n\t\t\t\t\t\t\t\t\t[ngTemplateOutlet]=\"labelTemplate\"\n\t\t\t\t\t\t\t\t\t[ngTemplateOutletContext]=\"{ $implicit: step }\"\n\t\t\t\t\t\t\t\t></ng-template>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t}\n\t\t\t\t\t<ng-template [ngTemplateOutlet]=\"step.content\"></ng-template>\n\t\t\t\t</div>\n\t\t\t}\n\t\t</div>\n\t</div>\n</div>\n\n<ng-template #labelTemplate let-step>\n\t@if (step.stepLabel) {\n\t\t<ng-template [ngTemplateOutlet]=\"step.stepLabel.template\"></ng-template>\n\t} @else {\n\t\t{{ step.label }}\n\t}\n\t<ng-template #stringLabelTempl>{{ step.label }}</ng-template>\n</ng-template>\n\n<ng-template #editIconTemplate let-index=\"index\">\n\t<span>{{ index + 1 }}</span>\n</ng-template>\n","import { PortalModule } from '@angular/cdk/portal';\r\nimport { CdkStepperModule } from '@angular/cdk/stepper';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatRippleModule } from '@angular/material/core';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\r\nimport { MatStepperModule } from '@angular/material/stepper';\r\nimport { BehaviorModule } from '@bravura/ui/behavior';\r\nimport { StepDirective, StepLabelTopDirective } from './step-label-top.directive';\r\nimport { StepperComponent } from './stepper.component';\r\n\r\n@NgModule({\r\n\tdeclarations: [StepperComponent, StepDirective, StepLabelTopDirective],\r\n\timports: [\r\n\t\tCommonModule,\r\n\t\tPortalModule,\r\n\t\tCdkStepperModule,\r\n\t\tMatStepperModule,\r\n\t\tMatButtonModule,\r\n\t\tMatIconModule,\r\n\t\tMatRippleModule,\r\n\t\tMatProgressSpinnerModule,\r\n\t\tBehaviorModule\r\n\t],\r\n\texports: [StepperComponent, MatStepperModule, StepLabelTopDirective, StepDirective]\r\n})\r\nexport class StepperModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -65,9 +65,18 @@ TooltipComponent.ɵcmp.styles.push(...TooltipComponent$1.ɵcmp.styles);
65
65
  * All the other features are identical as those in Angular Material tooltip.
66
66
  */
67
67
  class TooltipDirective extends MatTooltip {
68
- constructor() {
69
- super(...arguments);
68
+ constructor(elementRef) {
69
+ super();
70
70
  this._contentSub = new Subject().subscribe();
71
+ const _self = this;
72
+ _self._tooltipComponent = TooltipComponent;
73
+ this.touchGestures = 'off';
74
+ const element = elementRef.nativeElement;
75
+ element.setAttribute('aria-hidden', 'false');
76
+ if (element.tabIndex === -1) {
77
+ element.tabIndex = 0;
78
+ element.setAttribute('aria-roledescription', 'tooltip');
79
+ }
71
80
  }
72
81
  /** Allows the user to define the position of the tooltip relative to the parent element */
73
82
  get buiTooltipPosition() {
@@ -140,7 +149,7 @@ class TooltipDirective extends MatTooltip {
140
149
  ngOnDestroy() {
141
150
  this._contentSub.unsubscribe();
142
151
  }
143
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.6", ngImport: i0, type: TooltipDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
152
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.6", ngImport: i0, type: TooltipDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
144
153
  static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.6", type: TooltipDirective, isStandalone: true, selector: "[buiTooltip]", inputs: { buiTooltipPosition: "buiTooltipPosition", buiTooltipDisabled: "buiTooltipDisabled", buiTooltip: "buiTooltip", buiTooltipClass: "buiTooltipClass" }, host: { listeners: { "click": "clicked()" }, classAttribute: "mat-tooltip-trigger bui-tooltip-trigger" }, providers: [
145
154
  {
146
155
  provide: BUI_TOOLTIP_TEMPLATE_REF,
@@ -163,7 +172,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.6", ngImpor
163
172
  }
164
173
  ]
165
174
  }]
166
- }], propDecorators: { buiTooltipPosition: [{
175
+ }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { buiTooltipPosition: [{
167
176
  type: Input
168
177
  }], buiTooltipDisabled: [{
169
178
  type: Input
@@ -1 +1 @@
1
- {"version":3,"file":"bravura-ui-tooltip.mjs","sources":["../../../projects/ui/tooltip/tooltip.component.ts","../../../projects/ui/tooltip/tooltip.component.html","../../../projects/ui/tooltip/tooltip.directive.ts","../../../projects/ui/tooltip/bravura-ui-tooltip.ts"],"sourcesContent":["import { A11yModule } from '@angular/cdk/a11y';\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { CommonModule } from '@angular/common';\nimport {\n\tChangeDetectionStrategy,\n\tComponent,\n\tElementRef,\n\tinject,\n\tInjectionToken,\n\tTemplateRef,\n\tViewChild,\n\tViewContainerRef,\n\tViewEncapsulation\n} from '@angular/core';\nimport { TooltipComponent as MatTooltipComponent } from '@angular/material/tooltip';\nimport { getTextWidth } from '@bravura/ui/common';\n\n/**\n * @ignore\n */\ninterface TooltipTemplateContainer {\n\ttemplate?: TemplateRef<any>;\n\tmessage?: string;\n}\n\n/**\n * @ignore\n */\nexport const BUI_TOOLTIP_TEMPLATE_REF = new InjectionToken<TooltipTemplateContainer>(\n\t'@bravura/ui/tooltip/templateContainer'\n);\n\n@Component({\n\tselector: 'bui-tooltip-component',\n\ttemplateUrl: './tooltip.component.html',\n\tstyleUrls: ['./tooltip.component.scss'],\n\tencapsulation: ViewEncapsulation.None,\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thost: {\n\t\tclass: 'bui-tooltip-component bui-host',\n\t\t// Forces the element to have a layout in IE and Edge. This fixes issues where the element\n\t\t// won't be rendered if the animations are disabled or there is no web animations polyfill.\n\t\t'[style.zoom]': 'isVisible() ? 1 : null',\n\t\t'(mouseleave)': '_handleMouseLeave($event)',\n\t\t'aria-hidden': 'true'\n\t},\n\timports: [A11yModule, CommonModule, OverlayModule]\n})\nexport class TooltipComponent extends MatTooltipComponent {\n\tprivate _messageCopy = '';\n\n\t@ViewChild('tooltip', { static: true })\n\t_tooltip!: ElementRef<HTMLElement>;\n\n\t@ViewChild('tooltipDiv', { static: true })\n\tprivate tooltipDiv!: ElementRef<HTMLDivElement>;\n\n\t@ViewChild('messageCont', { static: true, read: ViewContainerRef })\n\tprivate messageCont!: ViewContainerRef;\n\n\tprivate _tooltipInst = inject(BUI_TOOLTIP_TEMPLATE_REF);\n\n\tshow(delay: number): void {\n\t\tif (this._messageCopy !== this.message && !this._tooltipInst.template) {\n\t\t\tthis.tooltipDiv.nativeElement.innerHTML = this.message;\n\t\t\tthis._messageCopy = this.message;\n\t\t\tconst width = Math.max(Math.sqrt(getTextWidth(this.message) * 40), 360);\n\t\t\tthis._tooltip.nativeElement.style.maxWidth = `${width}px`;\n\t\t} else if (this._tooltipInst.template) {\n\t\t\tthis.messageCont.clear();\n\t\t\tconst ref = this.messageCont.createEmbeddedView(this._tooltipInst.template);\n\t\t\tref.detectChanges();\n\t\t\tthis._tooltipInst.message = this.message = this.tooltipDiv.nativeElement.textContent as string;\n\t\t}\n\t\tsuper.show(delay);\n\t}\n}\n\n(TooltipComponent as any).ɵcmp.styles.push(...(MatTooltipComponent as any).ɵcmp.styles);\n","<div\r\n\t#tooltip\r\n\tclass=\"mdc-tooltip mdc-tooltip--shown mat-mdc-tooltip bui-tooltip\"\r\n\t[ngClass]=\"tooltipClass\"\r\n\t(animationend)=\"_handleAnimationEnd($event)\"\r\n\t[class.mdc-tooltip--multiline]=\"_isMultiline\"\r\n>\r\n\t<div #tooltipDiv>\r\n\t\t<ng-container #messageCont></ng-container>\r\n\t</div>\r\n</div>\r\n","import { Directive, HostListener, Input, TemplateRef, forwardRef } from '@angular/core';\nimport { MatTooltip, TooltipPosition } from '@angular/material/tooltip';\nimport { Observable, Subject, Subscription } from 'rxjs';\nimport { BUI_TOOLTIP_TEMPLATE_REF, TooltipComponent } from './tooltip.component';\n\n/**\n * This directive extends [Angular Material tooltip](https://material.angular.io/components/tooltip/overview), with the additional capability of displaying\n * HTML content in the overlay area.\n *\n * All the other features are identical as those in Angular Material tooltip.\n */\n@Directive({\n\tselector: '[buiTooltip]',\n\texportAs: 'buiTooltip',\n\thost: {\n\t\tclass: 'mat-tooltip-trigger bui-tooltip-trigger'\n\t},\n\tproviders: [\n\t\t{\n\t\t\tprovide: BUI_TOOLTIP_TEMPLATE_REF,\n\t\t\tuseExisting: forwardRef(() => TooltipDirective)\n\t\t}\n\t]\n})\nexport class TooltipDirective extends MatTooltip {\n\tprivate _templateRef?: TemplateRef<any>;\n\tprivate _contentSub: Subscription = new Subject<void>().subscribe();\n\tprivate _contentObs?: Observable<string>;\n\n\t/** Allows the user to define the position of the tooltip relative to the parent element */\n\t@Input()\n\tget buiTooltipPosition(): TooltipPosition {\n\t\treturn this.position;\n\t}\n\tset buiTooltipPosition(value: TooltipPosition) {\n\t\tthis.position = value;\n\t}\n\n\t/** Disables the display of the tooltip. */\n\t@Input()\n\tget buiTooltipDisabled(): boolean {\n\t\treturn this.disabled;\n\t}\n\tset buiTooltipDisabled(value) {\n\t\tthis.disabled = value;\n\t}\n\n\t/** The message to be displayed in the tooltip. */\n\t@Input()\n\tget buiTooltip(): string | TemplateRef<any> | Observable<string> {\n\t\treturn this._templateRef || this.message;\n\t}\n\tset buiTooltip(value) {\n\t\tthis._contentSub.unsubscribe();\n\t\tthis._contentObs = undefined;\n\t\tif (typeof value === 'string') {\n\t\t\tthis.message = value;\n\t\t} else if (value instanceof TemplateRef) {\n\t\t\tthis._templateRef = value;\n\t\t\tif (value) {\n\t\t\t\tthis.message = '[bui-tooltip-template]';\n\t\t\t} else {\n\t\t\t\tthis._templateRef = undefined;\n\t\t\t\tthis.message = '';\n\t\t\t}\n\t\t} else if (value instanceof Observable) {\n\t\t\tthis.message = '...';\n\t\t\tthis._contentObs = value;\n\t\t}\n\t}\n\n\t/** @ignore */\n\tget template(): TemplateRef<any> | undefined {\n\t\treturn this._templateRef;\n\t}\n\n\t/** Classes to be passed to the tooltip. Supports the same syntax as `ngClass`. */\n\t@Input()\n\tget buiTooltipClass() {\n\t\treturn this.tooltipClass;\n\t}\n\tset buiTooltipClass(value: string | string[] | Set<string> | { [key: string]: any }) {\n\t\tthis.tooltipClass = value;\n\t}\n\n\t/** @ignore */\n\t@HostListener('click')\n\tclicked() {\n\t\tthis.toggle();\n\t}\n\n\t/** Shows the tooltip after the delay in ms, defaults to tooltip-delay-show or 0ms if no input */\n\tshow(\n\t\tdelay: number = this.showDelay,\n\t\torigin?:\n\t\t\t| {\n\t\t\t\t\tx: number;\n\t\t\t\t\ty: number;\n\t\t\t }\n\t\t\t| undefined\n\t): void {\n\t\tif (this._contentObs) {\n\t\t\tthis._contentSub.unsubscribe();\n\t\t\tthis._contentSub = this._contentObs.subscribe(c => {\n\t\t\t\tthis.message = c;\n\t\t\t\tthis._contentSub.unsubscribe();\n\t\t\t\tsuper.show(delay, origin);\n\t\t\t});\n\t\t} else {\n\t\t\tsuper.show(delay, origin);\n\t\t}\n\t}\n\n\tngOnDestroy() {\n\t\tthis._contentSub.unsubscribe();\n\t}\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["MatTooltipComponent"],"mappings":"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"}
1
+ {"version":3,"file":"bravura-ui-tooltip.mjs","sources":["../../../projects/ui/tooltip/tooltip.component.ts","../../../projects/ui/tooltip/tooltip.component.html","../../../projects/ui/tooltip/tooltip.directive.ts","../../../projects/ui/tooltip/bravura-ui-tooltip.ts"],"sourcesContent":["import { A11yModule } from '@angular/cdk/a11y';\r\nimport { OverlayModule } from '@angular/cdk/overlay';\r\nimport { CommonModule } from '@angular/common';\r\nimport {\r\n\tChangeDetectionStrategy,\r\n\tComponent,\r\n\tElementRef,\r\n\tinject,\r\n\tInjectionToken,\r\n\tTemplateRef,\r\n\tViewChild,\r\n\tViewContainerRef,\r\n\tViewEncapsulation\r\n} from '@angular/core';\r\nimport { TooltipComponent as MatTooltipComponent } from '@angular/material/tooltip';\r\nimport { getTextWidth } from '@bravura/ui/common';\r\n\r\n/**\r\n * @ignore\r\n */\r\ninterface TooltipTemplateContainer {\r\n\ttemplate?: TemplateRef<any>;\r\n\tmessage?: string;\r\n}\r\n\r\n/**\r\n * @ignore\r\n */\r\nexport const BUI_TOOLTIP_TEMPLATE_REF = new InjectionToken<TooltipTemplateContainer>(\r\n\t'@bravura/ui/tooltip/templateContainer'\r\n);\r\n\r\n@Component({\r\n\tselector: 'bui-tooltip-component',\r\n\ttemplateUrl: './tooltip.component.html',\r\n\tstyleUrls: ['./tooltip.component.scss'],\r\n\tencapsulation: ViewEncapsulation.None,\r\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\r\n\thost: {\r\n\t\tclass: 'bui-tooltip-component bui-host',\r\n\t\t// Forces the element to have a layout in IE and Edge. This fixes issues where the element\r\n\t\t// won't be rendered if the animations are disabled or there is no web animations polyfill.\r\n\t\t'[style.zoom]': 'isVisible() ? 1 : null',\r\n\t\t'(mouseleave)': '_handleMouseLeave($event)',\r\n\t\t'aria-hidden': 'true'\r\n\t},\r\n\timports: [A11yModule, CommonModule, OverlayModule]\r\n})\r\nexport class TooltipComponent extends MatTooltipComponent {\r\n\tprivate _messageCopy = '';\r\n\r\n\t@ViewChild('tooltip', { static: true })\r\n\t_tooltip!: ElementRef<HTMLElement>;\r\n\r\n\t@ViewChild('tooltipDiv', { static: true })\r\n\tprivate tooltipDiv!: ElementRef<HTMLDivElement>;\r\n\r\n\t@ViewChild('messageCont', { static: true, read: ViewContainerRef })\r\n\tprivate messageCont!: ViewContainerRef;\r\n\r\n\tprivate _tooltipInst = inject(BUI_TOOLTIP_TEMPLATE_REF);\r\n\r\n\tshow(delay: number): void {\r\n\t\tif (this._messageCopy !== this.message && !this._tooltipInst.template) {\r\n\t\t\tthis.tooltipDiv.nativeElement.innerHTML = this.message;\r\n\t\t\tthis._messageCopy = this.message;\r\n\t\t\tconst width = Math.max(Math.sqrt(getTextWidth(this.message) * 40), 360);\r\n\t\t\tthis._tooltip.nativeElement.style.maxWidth = `${width}px`;\r\n\t\t} else if (this._tooltipInst.template) {\r\n\t\t\tthis.messageCont.clear();\r\n\t\t\tconst ref = this.messageCont.createEmbeddedView(this._tooltipInst.template);\r\n\t\t\tref.detectChanges();\r\n\t\t\tthis._tooltipInst.message = this.message = this.tooltipDiv.nativeElement.textContent as string;\r\n\t\t}\r\n\t\tsuper.show(delay);\r\n\t}\r\n}\r\n\r\n(TooltipComponent as any).ɵcmp.styles.push(...(MatTooltipComponent as any).ɵcmp.styles);\r\n","<div\r\n\t#tooltip\r\n\tclass=\"mdc-tooltip mdc-tooltip--shown mat-mdc-tooltip bui-tooltip\"\r\n\t[ngClass]=\"tooltipClass\"\r\n\t(animationend)=\"_handleAnimationEnd($event)\"\r\n\t[class.mdc-tooltip--multiline]=\"_isMultiline\"\r\n>\r\n\t<div #tooltipDiv>\r\n\t\t<ng-container #messageCont></ng-container>\r\n\t</div>\r\n</div>\r\n","import { Directive, ElementRef, HostListener, Input, TemplateRef, forwardRef } from '@angular/core';\nimport { MatTooltip, TooltipPosition } from '@angular/material/tooltip';\nimport { Observable, Subject, Subscription } from 'rxjs';\nimport { BUI_TOOLTIP_TEMPLATE_REF, TooltipComponent } from './tooltip.component';\n\n/**\n * This directive extends [Angular Material tooltip](https://material.angular.io/components/tooltip/overview), with the additional capability of displaying\n * HTML content in the overlay area.\n *\n * All the other features are identical as those in Angular Material tooltip.\n */\n@Directive({\n\tselector: '[buiTooltip]',\n\texportAs: 'buiTooltip',\n\thost: {\n\t\tclass: 'mat-tooltip-trigger bui-tooltip-trigger'\n\t},\n\tproviders: [\n\t\t{\n\t\t\tprovide: BUI_TOOLTIP_TEMPLATE_REF,\n\t\t\tuseExisting: forwardRef(() => TooltipDirective)\n\t\t}\n\t]\n})\nexport class TooltipDirective extends MatTooltip {\n\tprivate _templateRef?: TemplateRef<any>;\n\tprivate _contentSub: Subscription = new Subject<void>().subscribe();\n\tprivate _contentObs?: Observable<string>;\n\n\tconstructor(elementRef: ElementRef<HTMLElement>) {\n\t\tsuper();\n\t\tconst _self = this as any;\n\t\t_self._tooltipComponent = TooltipComponent;\n\t\tthis.touchGestures = 'off';\n\t\tconst element = elementRef.nativeElement;\n\t\telement.setAttribute('aria-hidden', 'false');\n\t\tif (element.tabIndex === -1) {\n\t\t\telement.tabIndex = 0;\n\t\t\telement.setAttribute('aria-roledescription', 'tooltip');\n\t\t}\n\t}\n\n\t/** Allows the user to define the position of the tooltip relative to the parent element */\n\t@Input()\n\tget buiTooltipPosition(): TooltipPosition {\n\t\treturn this.position;\n\t}\n\tset buiTooltipPosition(value: TooltipPosition) {\n\t\tthis.position = value;\n\t}\n\n\t/** Disables the display of the tooltip. */\n\t@Input()\n\tget buiTooltipDisabled(): boolean {\n\t\treturn this.disabled;\n\t}\n\tset buiTooltipDisabled(value) {\n\t\tthis.disabled = value;\n\t}\n\n\t/** The message to be displayed in the tooltip. */\n\t@Input()\n\tget buiTooltip(): string | TemplateRef<any> | Observable<string> {\n\t\treturn this._templateRef || this.message;\n\t}\n\tset buiTooltip(value) {\n\t\tthis._contentSub.unsubscribe();\n\t\tthis._contentObs = undefined;\n\t\tif (typeof value === 'string') {\n\t\t\tthis.message = value;\n\t\t} else if (value instanceof TemplateRef) {\n\t\t\tthis._templateRef = value;\n\t\t\tif (value) {\n\t\t\t\tthis.message = '[bui-tooltip-template]';\n\t\t\t} else {\n\t\t\t\tthis._templateRef = undefined;\n\t\t\t\tthis.message = '';\n\t\t\t}\n\t\t} else if (value instanceof Observable) {\n\t\t\tthis.message = '...';\n\t\t\tthis._contentObs = value;\n\t\t}\n\t}\n\n\t/** @ignore */\n\tget template(): TemplateRef<any> | undefined {\n\t\treturn this._templateRef;\n\t}\n\n\t/** Classes to be passed to the tooltip. Supports the same syntax as `ngClass`. */\n\t@Input()\n\tget buiTooltipClass() {\n\t\treturn this.tooltipClass;\n\t}\n\tset buiTooltipClass(value: string | string[] | Set<string> | { [key: string]: any }) {\n\t\tthis.tooltipClass = value;\n\t}\n\n\t/** @ignore */\n\t@HostListener('click')\n\tclicked() {\n\t\tthis.toggle();\n\t}\n\n\t/** Shows the tooltip after the delay in ms, defaults to tooltip-delay-show or 0ms if no input */\n\tshow(\n\t\tdelay: number = this.showDelay,\n\t\torigin?:\n\t\t\t| {\n\t\t\t\t\tx: number;\n\t\t\t\t\ty: number;\n\t\t\t }\n\t\t\t| undefined\n\t): void {\n\t\tif (this._contentObs) {\n\t\t\tthis._contentSub.unsubscribe();\n\t\t\tthis._contentSub = this._contentObs.subscribe(c => {\n\t\t\t\tthis.message = c;\n\t\t\t\tthis._contentSub.unsubscribe();\n\t\t\t\tsuper.show(delay, origin);\n\t\t\t});\n\t\t} else {\n\t\t\tsuper.show(delay, origin);\n\t\t}\n\t}\n\n\tngOnDestroy() {\n\t\tthis._contentSub.unsubscribe();\n\t}\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["MatTooltipComponent"],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@bravura/ui",
3
3
  "description": "Bravura UI Components for Angular applications",
4
- "version": "9.0.0",
4
+ "version": "9.0.2",
5
5
  "keywords": [
6
6
  "Angular",
7
7
  "Angular Material",
@@ -1,9 +1,9 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { TemplateRef, OnChanges, QueryList, SimpleChanges } from '@angular/core';
3
3
  import { MatRadioButton, MatRadioGroup } from '@angular/material/radio';
4
- import * as i3 from '@angular/material/core';
4
+ import * as i1 from '@angular/material/core';
5
5
  import { ThemePalette } from '@angular/material/core';
6
- import * as i4 from '@angular/material/icon';
6
+ import * as i2 from '@angular/material/icon';
7
7
 
8
8
  /**
9
9
  * Use `bui-radio-panel-item` instead of `mat-radio-button` in a `bui-radio-panel` to display an option.
@@ -19,7 +19,7 @@ declare class RadioPanelItemComponent extends MatRadioButton {
19
19
  set tickPosition(pos: 'start' | 'end');
20
20
  contentOnSelect: TemplateRef<any>;
21
21
  static ɵfac: i0.ɵɵFactoryDeclaration<RadioPanelItemComponent, never>;
22
- static ɵcmp: i0.ɵɵComponentDeclaration<RadioPanelItemComponent, "bui-radio-panel-item", ["matRadioButton"], { "disableRipple": { "alias": "disableRipple"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "title": { "alias": "title"; "required": false; }; "_tickPosition": { "alias": "_tickPosition"; "required": false; }; "tickPosition": { "alias": "tickPosition"; "required": false; }; }, {}, ["contentOnSelect"], ["[buiRadioItemHeadingEnd]", "*"], false, never>;
22
+ static ɵcmp: i0.ɵɵComponentDeclaration<RadioPanelItemComponent, "bui-radio-panel-item", ["matRadioButton"], { "disableRipple": { "alias": "disableRipple"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "title": { "alias": "title"; "required": false; }; "_tickPosition": { "alias": "_tickPosition"; "required": false; }; "tickPosition": { "alias": "tickPosition"; "required": false; }; }, {}, ["contentOnSelect"], ["[buiRadioItemHeadingEnd]", "*"], true, never>;
23
23
  }
24
24
 
25
25
  /**
@@ -52,7 +52,7 @@ declare class RadioPanelComponent extends MatRadioGroup implements OnChanges {
52
52
  /** @ignore */
53
53
  ngOnChanges(changes: SimpleChanges): void;
54
54
  static ɵfac: i0.ɵɵFactoryDeclaration<RadioPanelComponent, never>;
55
- static ɵcmp: i0.ɵɵComponentDeclaration<RadioPanelComponent, "bui-radio-panel", ["buiRadioPanel"], { "panelWidth": { "alias": "panelWidth"; "required": false; }; "direction": { "alias": "direction"; "required": false; }; "color": { "alias": "color"; "required": false; }; "tickPosition": { "alias": "tickPosition"; "required": false; }; }, {}, ["_radios"], ["*"], false, never>;
55
+ static ɵcmp: i0.ɵɵComponentDeclaration<RadioPanelComponent, "bui-radio-panel", ["buiRadioPanel"], { "panelWidth": { "alias": "panelWidth"; "required": false; }; "direction": { "alias": "direction"; "required": false; }; "color": { "alias": "color"; "required": false; }; "tickPosition": { "alias": "tickPosition"; "required": false; }; }, {}, ["_radios"], ["*"], true, never>;
56
56
  }
57
57
 
58
58
  /**
@@ -60,7 +60,7 @@ declare class RadioPanelComponent extends MatRadioGroup implements OnChanges {
60
60
  */
61
61
  declare class RadioPanelModule {
62
62
  static ɵfac: i0.ɵɵFactoryDeclaration<RadioPanelModule, never>;
63
- static ɵmod: i0.ɵɵNgModuleDeclaration<RadioPanelModule, [typeof RadioPanelItemComponent, typeof RadioPanelComponent], [typeof i3.MatRipple, typeof i4.MatIcon], [typeof RadioPanelItemComponent, typeof RadioPanelComponent]>;
63
+ static ɵmod: i0.ɵɵNgModuleDeclaration<RadioPanelModule, never, [typeof i1.MatRipple, typeof i2.MatIcon, typeof RadioPanelItemComponent, typeof RadioPanelComponent], [typeof RadioPanelItemComponent, typeof RadioPanelComponent]>;
64
64
  static ɵinj: i0.ɵɵInjectorDeclaration<RadioPanelModule>;
65
65
  }
66
66
 
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { InjectionToken, TemplateRef } from '@angular/core';
2
+ import { InjectionToken, TemplateRef, ElementRef } from '@angular/core';
3
3
  import { MatTooltip, TooltipPosition } from '@angular/material/tooltip';
4
4
  import { Observable } from 'rxjs';
5
5
 
@@ -25,6 +25,7 @@ declare class TooltipDirective extends MatTooltip {
25
25
  private _templateRef?;
26
26
  private _contentSub;
27
27
  private _contentObs?;
28
+ constructor(elementRef: ElementRef<HTMLElement>);
28
29
  /** Allows the user to define the position of the tooltip relative to the parent element */
29
30
  get buiTooltipPosition(): TooltipPosition;
30
31
  set buiTooltipPosition(value: TooltipPosition);