@koobiq/components 18.21.0 → 18.22.0
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.
- package/badge/badge.component.d.ts +0 -1
- package/breadcrumbs/breadcrumbs.d.ts +19 -22
- package/breadcrumbs/breadcrumbs.scss +13 -4
- package/breadcrumbs/breadcrumbs.types.d.ts +22 -0
- package/breadcrumbs/public-api.d.ts +1 -0
- package/button/button.component.d.ts +11 -16
- package/checkbox/checkbox.d.ts +13 -18
- package/core/common-behaviors/color.d.ts +11 -0
- package/core/common-behaviors/index.d.ts +1 -1
- package/core/option/action.d.ts +5 -7
- package/core/option/optgroup.d.ts +6 -7
- package/core/pop-up/pop-up-trigger.d.ts +2 -2
- package/core/pop-up/pop-up.d.ts +8 -2
- package/core/selection/pseudo-checkbox/pseudo-checkbox.d.ts +3 -12
- package/core/utils/utils.d.ts +3 -0
- package/dropdown/dropdown-item.component.d.ts +6 -8
- package/empty-state/_empty-state-theme.scss +15 -5
- package/empty-state/empty-state-tokens.scss +12 -2
- package/empty-state/empty-state.component.d.ts +7 -2
- package/empty-state/empty-state.scss +29 -0
- package/esm2022/accordion/accordion-trigger.component.mjs +1 -1
- package/esm2022/actions-panel/actions-panel-container.mjs +2 -2
- package/esm2022/badge/badge.component.mjs +2 -5
- package/esm2022/breadcrumbs/breadcrumbs.mjs +55 -22
- package/esm2022/breadcrumbs/breadcrumbs.types.mjs +2 -0
- package/esm2022/breadcrumbs/public-api.mjs +2 -1
- package/esm2022/button/button.component.mjs +23 -27
- package/esm2022/button-toggle/button-toggle.component.mjs +4 -3
- package/esm2022/checkbox/checkbox.mjs +23 -24
- package/esm2022/code-block/code-block.mjs +2 -2
- package/esm2022/core/common-behaviors/color.mjs +35 -1
- package/esm2022/core/common-behaviors/disabled.mjs +2 -1
- package/esm2022/core/common-behaviors/error-state.mjs +2 -1
- package/esm2022/core/common-behaviors/index.mjs +2 -2
- package/esm2022/core/common-behaviors/tabindex.mjs +2 -1
- package/esm2022/core/option/action.mjs +17 -12
- package/esm2022/core/option/optgroup.mjs +18 -12
- package/esm2022/core/option/option.mjs +1 -1
- package/esm2022/core/pop-up/pop-up-trigger.mjs +7 -7
- package/esm2022/core/pop-up/pop-up.mjs +21 -5
- package/esm2022/core/selection/pseudo-checkbox/pseudo-checkbox.mjs +10 -19
- package/esm2022/core/utils/utils.mjs +7 -1
- package/esm2022/core/version.mjs +2 -2
- package/esm2022/datepicker/calendar-header.component.mjs +1 -1
- package/esm2022/datepicker/datepicker-toggle.component.mjs +1 -1
- package/esm2022/dropdown/dropdown-item.component.mjs +19 -14
- package/esm2022/empty-state/empty-state.component.mjs +13 -8
- package/esm2022/file-upload/multiple-file-upload.component.mjs +2 -2
- package/esm2022/file-upload/single-file-upload.component.mjs +2 -2
- package/esm2022/filter-bar/filter-refresher.mjs +2 -2
- package/esm2022/filter-bar/filter-reset.mjs +1 -1
- package/esm2022/filter-bar/filter-search.mjs +2 -2
- package/esm2022/filter-bar/filters.mjs +2 -2
- package/esm2022/filter-bar/pipe-add.mjs +2 -2
- package/esm2022/filter-bar/pipes/pipe-button.mjs +2 -2
- package/esm2022/filter-bar/pipes/pipe-date.mjs +2 -2
- package/esm2022/filter-bar/pipes/pipe-datetime.mjs +2 -2
- package/esm2022/filter-bar/pipes/pipe-multi-select.mjs +2 -2
- package/esm2022/filter-bar/pipes/pipe-select.mjs +2 -2
- package/esm2022/filter-bar/pipes/pipe-text.mjs +2 -2
- package/esm2022/form-field/cleaner.mjs +1 -1
- package/esm2022/form-field/form-field.mjs +13 -22
- package/esm2022/form-field/hint.mjs +10 -18
- package/esm2022/form-field/password-hint.mjs +7 -7
- package/esm2022/form-field/password-toggle.mjs +1 -1
- package/esm2022/form-field/stepper.mjs +1 -1
- package/esm2022/icon/icon-button.component.mjs +13 -21
- package/esm2022/icon/icon-item.component.mjs +8 -15
- package/esm2022/icon/icon.component.mjs +15 -27
- package/esm2022/input/input-password.mjs +20 -5
- package/esm2022/input/input.mjs +21 -22
- package/esm2022/link/link.component.mjs +46 -14
- package/esm2022/list/list-selection.component.mjs +19 -15
- package/esm2022/loader-overlay/loader-overlay.component.mjs +14 -9
- package/esm2022/modal/modal.component.mjs +1 -1
- package/esm2022/modal/modal.directive.mjs +1 -1
- package/esm2022/navbar/navbar-item.component.mjs +2 -2
- package/esm2022/popover/popover-confirm.component.mjs +2 -2
- package/esm2022/popover/popover.component.mjs +5 -4
- package/esm2022/progress-bar/progress-bar.component.mjs +14 -21
- package/esm2022/progress-spinner/progress-spinner.component.mjs +17 -24
- package/esm2022/radio/radio.component.mjs +25 -35
- package/esm2022/select/select.component.mjs +56 -37
- package/esm2022/sidepanel/sidepanel-directives.mjs +2 -2
- package/esm2022/tabs/paginated-tab-header.mjs +7 -4
- package/esm2022/tabs/tab-group.component.mjs +23 -19
- package/esm2022/tabs/tab-header.component.mjs +3 -3
- package/esm2022/tabs/tab-label-wrapper.directive.mjs +16 -13
- package/esm2022/tabs/tab-nav-bar.mjs +2 -2
- package/esm2022/tabs/tab.component.mjs +17 -12
- package/esm2022/tags/tag-list.component.mjs +27 -22
- package/esm2022/tags/tag.component.mjs +7 -14
- package/esm2022/textarea/textarea.component.mjs +21 -22
- package/esm2022/timezone/timezone-select.component.mjs +3 -3
- package/esm2022/toast/toast.component.mjs +2 -2
- package/esm2022/toggle/toggle.component.mjs +20 -19
- package/esm2022/tree/toggle.mjs +19 -14
- package/esm2022/tree/tree-option.component.mjs +1 -1
- package/esm2022/tree/tree-selection.component.mjs +1 -1
- package/esm2022/tree-select/tree-select.component.mjs +58 -38
- package/fesm2022/koobiq-components-accordion.mjs +1 -1
- package/fesm2022/koobiq-components-accordion.mjs.map +1 -1
- package/fesm2022/koobiq-components-actions-panel.mjs +1 -1
- package/fesm2022/koobiq-components-actions-panel.mjs.map +1 -1
- package/fesm2022/koobiq-components-badge.mjs +2 -5
- package/fesm2022/koobiq-components-badge.mjs.map +1 -1
- package/fesm2022/koobiq-components-breadcrumbs.mjs +54 -21
- package/fesm2022/koobiq-components-breadcrumbs.mjs.map +1 -1
- package/fesm2022/koobiq-components-button-toggle.mjs +3 -3
- package/fesm2022/koobiq-components-button-toggle.mjs.map +1 -1
- package/fesm2022/koobiq-components-button.mjs +23 -27
- package/fesm2022/koobiq-components-button.mjs.map +1 -1
- package/fesm2022/koobiq-components-checkbox.mjs +23 -24
- package/fesm2022/koobiq-components-checkbox.mjs.map +1 -1
- package/fesm2022/koobiq-components-code-block.mjs +1 -1
- package/fesm2022/koobiq-components-code-block.mjs.map +1 -1
- package/fesm2022/koobiq-components-core.mjs +107 -46
- package/fesm2022/koobiq-components-core.mjs.map +1 -1
- package/fesm2022/koobiq-components-datepicker.mjs +2 -2
- package/fesm2022/koobiq-components-datepicker.mjs.map +1 -1
- package/fesm2022/koobiq-components-dropdown.mjs +18 -13
- package/fesm2022/koobiq-components-dropdown.mjs.map +1 -1
- package/fesm2022/koobiq-components-empty-state.mjs +12 -7
- package/fesm2022/koobiq-components-empty-state.mjs.map +1 -1
- package/fesm2022/koobiq-components-file-upload.mjs +2 -2
- package/fesm2022/koobiq-components-file-upload.mjs.map +1 -1
- package/fesm2022/koobiq-components-filter-bar.mjs +11 -11
- package/fesm2022/koobiq-components-filter-bar.mjs.map +1 -1
- package/fesm2022/koobiq-components-form-field.mjs +26 -43
- package/fesm2022/koobiq-components-form-field.mjs.map +1 -1
- package/fesm2022/koobiq-components-icon.mjs +33 -57
- package/fesm2022/koobiq-components-icon.mjs.map +1 -1
- package/fesm2022/koobiq-components-input.mjs +40 -25
- package/fesm2022/koobiq-components-input.mjs.map +1 -1
- package/fesm2022/koobiq-components-link.mjs +46 -14
- package/fesm2022/koobiq-components-link.mjs.map +1 -1
- package/fesm2022/koobiq-components-list.mjs +19 -15
- package/fesm2022/koobiq-components-list.mjs.map +1 -1
- package/fesm2022/koobiq-components-loader-overlay.mjs +13 -8
- package/fesm2022/koobiq-components-loader-overlay.mjs.map +1 -1
- package/fesm2022/koobiq-components-modal.mjs +2 -2
- package/fesm2022/koobiq-components-modal.mjs.map +1 -1
- package/fesm2022/koobiq-components-navbar.mjs +2 -2
- package/fesm2022/koobiq-components-navbar.mjs.map +1 -1
- package/fesm2022/koobiq-components-popover.mjs +5 -4
- package/fesm2022/koobiq-components-popover.mjs.map +1 -1
- package/fesm2022/koobiq-components-progress-bar.mjs +13 -20
- package/fesm2022/koobiq-components-progress-bar.mjs.map +1 -1
- package/fesm2022/koobiq-components-progress-spinner.mjs +16 -23
- package/fesm2022/koobiq-components-progress-spinner.mjs.map +1 -1
- package/fesm2022/koobiq-components-radio.mjs +25 -35
- package/fesm2022/koobiq-components-radio.mjs.map +1 -1
- package/fesm2022/koobiq-components-select.mjs +56 -37
- package/fesm2022/koobiq-components-select.mjs.map +1 -1
- package/fesm2022/koobiq-components-sidepanel.mjs +1 -1
- package/fesm2022/koobiq-components-sidepanel.mjs.map +1 -1
- package/fesm2022/koobiq-components-tabs.mjs +60 -44
- package/fesm2022/koobiq-components-tabs.mjs.map +1 -1
- package/fesm2022/koobiq-components-tags.mjs +32 -34
- package/fesm2022/koobiq-components-tags.mjs.map +1 -1
- package/fesm2022/koobiq-components-textarea.mjs +21 -22
- package/fesm2022/koobiq-components-textarea.mjs.map +1 -1
- package/fesm2022/koobiq-components-timezone.mjs +2 -2
- package/fesm2022/koobiq-components-timezone.mjs.map +1 -1
- package/fesm2022/koobiq-components-toast.mjs +1 -1
- package/fesm2022/koobiq-components-toast.mjs.map +1 -1
- package/fesm2022/koobiq-components-toggle.mjs +20 -19
- package/fesm2022/koobiq-components-toggle.mjs.map +1 -1
- package/fesm2022/koobiq-components-tree-select.mjs +57 -37
- package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
- package/fesm2022/koobiq-components-tree.mjs +21 -15
- package/fesm2022/koobiq-components-tree.mjs.map +1 -1
- package/file-upload/multiple-file-upload.component.d.ts +2 -2
- package/file-upload/single-file-upload.component.d.ts +2 -2
- package/form-field/form-field.d.ts +4 -12
- package/form-field/hint.d.ts +3 -12
- package/form-field/password-hint.d.ts +3 -3
- package/icon/icon-button.component.d.ts +5 -8
- package/icon/icon-item.component.d.ts +3 -7
- package/icon/icon.component.d.ts +7 -14
- package/input/input-password.d.ts +8 -2
- package/input/input.d.ts +9 -18
- package/link/_link-theme.scss +17 -8
- package/link/link.component.d.ts +13 -9
- package/list/list-selection.component.d.ts +8 -10
- package/loader-overlay/_loader-overlay-theme.scss +18 -8
- package/loader-overlay/loader-overlay-tokens.scss +6 -3
- package/loader-overlay/loader-overlay.component.d.ts +7 -2
- package/loader-overlay/loader-overlay.scss +19 -5
- package/package.json +4 -4
- package/prebuilt-themes/dark-theme.css +1 -1
- package/prebuilt-themes/light-theme.css +1 -1
- package/prebuilt-themes/theme.css +1 -1
- package/progress-bar/progress-bar.component.d.ts +4 -12
- package/progress-spinner/progress-spinner.component.d.ts +4 -12
- package/radio/radio.component.d.ts +11 -25
- package/schematics/collection.json +10 -0
- package/schematics/migrations/css-selectors/README.md +19 -0
- package/schematics/migrations/deprecated-icons/README.md +21 -0
- package/schematics/migrations/empty-state-size-attr/README.md +62 -0
- package/schematics/migrations/empty-state-size-attr/index.js +74 -0
- package/schematics/migrations/empty-state-size-attr/schema.json +15 -0
- package/schematics/migrations/loader-overlay-size-attr/README.md +62 -0
- package/schematics/migrations/loader-overlay-size-attr/index.js +74 -0
- package/schematics/migrations/loader-overlay-size-attr/schema.json +15 -0
- package/schematics/migrations/new-icons-pack/README.md +21 -0
- package/schematics/ng-add/index.js +2 -2
- package/schematics/utils/angular-parsing.js +153 -0
- package/schematics/utils/ast.js +28 -0
- package/schematics/utils/package-config.js +46 -0
- package/schematics/utils/typescript.js +171 -0
- package/select/select.component.d.ts +26 -25
- package/tabs/paginated-tab-header.d.ts +2 -1
- package/tabs/tab-group.component.d.ts +11 -13
- package/tabs/tab-header.component.d.ts +1 -1
- package/tabs/tab-label-wrapper.directive.d.ts +6 -8
- package/tabs/tab.component.d.ts +7 -8
- package/tags/tag-list.component.d.ts +15 -18
- package/tags/tag.component.d.ts +3 -10
- package/textarea/textarea.component.d.ts +8 -17
- package/toggle/toggle.component.d.ts +8 -12
- package/tree/toggle.d.ts +7 -9
- package/tree/tree-selection.component.d.ts +2 -2
- package/tree-select/tree-select.component.d.ts +24 -26
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"koobiq-components-popover.mjs","sources":["../../../packages/components/popover/popover-animations.ts","../../../packages/components/popover/popover.component.ts","../../../packages/components/popover/popover.component.html","../../../packages/components/popover/popover-confirm.component.ts","../../../packages/components/popover/popover-confirm.component.html","../../../packages/components/popover/popover.module.ts","../../../packages/components/popover/koobiq-components-popover.ts"],"sourcesContent":["import { animate, AnimationTriggerMetadata, state, style, transition, trigger } from '@angular/animations';\n\nexport const kbqPopoverAnimations: {\n readonly popoverState: AnimationTriggerMetadata;\n} = {\n /** Animation that transitions a tooltip in and out. */\n popoverState: trigger('state', [\n state(\n 'initial',\n style({\n opacity: 0,\n transform: 'scale(1, 0.8)'\n })\n ),\n transition(\n '* => visible',\n animate(\n '120ms cubic-bezier(0, 0, 0.2, 1)',\n style({\n opacity: 1,\n transform: 'scale(1, 1)'\n })\n )\n ),\n transition('* => hidden', animate('100ms linear', style({ opacity: 0 })))\n ])\n};\n","import { CdkTrapFocus } from '@angular/cdk/a11y';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport {\n CdkScrollable,\n FlexibleConnectedPositionStrategy,\n Overlay,\n OverlayConfig,\n ScrollStrategy\n} from '@angular/cdk/overlay';\nimport {\n AfterContentInit,\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n DestroyRef,\n Directive,\n ElementRef,\n EventEmitter,\n InjectionToken,\n Input,\n Output,\n TemplateRef,\n Type,\n ViewChild,\n ViewEncapsulation,\n booleanAttribute,\n inject,\n numberAttribute\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport {\n KbqComponentColors,\n KbqPopUp,\n KbqPopUpTrigger,\n POSITION_TO_CSS_MAP,\n PopUpPlacements,\n PopUpSizes,\n PopUpTriggers,\n applyPopupMargins,\n defaultOffsetY\n} from '@koobiq/components/core';\nimport { NEVER, fromEvent, merge } from 'rxjs';\nimport { debounceTime } from 'rxjs/operators';\nimport { kbqPopoverAnimations } from './popover-animations';\n\n@Component({\n selector: 'kbq-popover-component',\n templateUrl: './popover.component.html',\n preserveWhitespaces: false,\n styleUrls: ['./popover.scss', './popover-tokens.scss'],\n host: {\n '(keydown.esc)': 'onEscape()'\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [kbqPopoverAnimations.popoverState]\n})\nexport class KbqPopoverComponent extends KbqPopUp implements AfterViewInit {\n prefix = 'kbq-popover';\n\n header: string | TemplateRef<any>;\n footer: string | TemplateRef<any>;\n\n trigger: KbqPopoverTrigger;\n\n isTrapFocus: boolean = false;\n hasCloseButton: boolean = false;\n\n @ViewChild('popoverContent') popoverContent: ElementRef<HTMLDivElement>;\n @ViewChild('popover') elementRef: ElementRef;\n @ViewChild(CdkTrapFocus) cdkTrapFocus: CdkTrapFocus;\n\n private debounceTime = 15;\n private readonly destroyRef = inject(DestroyRef);\n isContentTopOverflow: boolean = false;\n isContentBottomOverflow: boolean = false;\n\n ngAfterViewInit() {\n if (!this.popoverContent) return;\n\n this.checkContentOverflow(this.popoverContent.nativeElement);\n\n fromEvent(this.popoverContent.nativeElement, 'scroll')\n .pipe(debounceTime(this.debounceTime), takeUntilDestroyed(this.destroyRef))\n .subscribe((event) => {\n this.checkContentOverflow(event.target as HTMLElement);\n });\n\n this.cdkTrapFocus.focusTrap.focusFirstTabbableElement();\n this.visibleChange.subscribe((state) => {\n if (this.offset !== null && state) {\n applyPopupMargins(\n this.renderer,\n this.elementRef.nativeElement,\n this.prefix,\n `${this.offset!.toString()}px`\n );\n }\n });\n }\n\n onContentChange() {\n this.checkContentOverflow(this.popoverContent.nativeElement);\n }\n\n checkContentOverflow(contentElement: HTMLElement) {\n const { scrollTop, offsetHeight, scrollHeight } = contentElement;\n\n this.isContentTopOverflow = scrollTop > 0;\n\n this.isContentBottomOverflow = scrollTop + offsetHeight < scrollHeight;\n\n super.detectChanges();\n }\n\n updateClassMap(placement: string, customClass: string, size: PopUpSizes) {\n super.updateClassMap(placement, customClass, { [`${this.prefix}_${size}`]: !!size });\n }\n\n updateTrapFocus(isTrapFocus: boolean): void {\n this.isTrapFocus = isTrapFocus;\n }\n\n onEscape() {\n this.hide(0);\n\n this.trigger.focus();\n }\n\n protected readonly componentColors = KbqComponentColors;\n}\n\nexport const KBQ_POPOVER_SCROLL_STRATEGY = new InjectionToken<() => ScrollStrategy>('kbq-popover-scroll-strategy');\n\n/** @docs-private */\nexport function kbqPopoverScrollStrategyFactory(overlay: Overlay): () => ScrollStrategy {\n return () => overlay.scrollStrategies.reposition({ scrollThrottle: 20 });\n}\n\n/** @docs-private */\nexport const KBQ_POPOVER_SCROLL_STRATEGY_FACTORY_PROVIDER = {\n provide: KBQ_POPOVER_SCROLL_STRATEGY,\n deps: [Overlay],\n useFactory: kbqPopoverScrollStrategyFactory\n};\n\n/** Creates an error to be thrown if the user supplied an invalid popover position. */\nexport function getKbqPopoverInvalidPositionError(position: string) {\n return Error(`KbqPopover position \"${position}\" is invalid.`);\n}\n\n@Directive({\n selector: '[kbqPopover]',\n exportAs: 'kbqPopover',\n host: {\n '[class.kbq-popover_open]': 'isOpen',\n '[class.kbq-active]': 'hasClickTrigger && isOpen',\n '(keydown)': 'handleKeydown($event)',\n '(touchend)': 'handleTouchend()'\n }\n})\nexport class KbqPopoverTrigger extends KbqPopUpTrigger<KbqPopoverComponent> implements AfterContentInit {\n protected scrollStrategy: () => ScrollStrategy = inject(KBQ_POPOVER_SCROLL_STRATEGY);\n\n @Input('kbqPopoverVisible')\n get popoverVisible(): boolean {\n return this.visible;\n }\n\n set popoverVisible(value: boolean) {\n super.updateVisible(value);\n }\n\n @Input('kbqPopoverPlacement')\n get popoverPlacement(): PopUpPlacements {\n return this.placement;\n }\n\n set popoverPlacement(value: PopUpPlacements) {\n super.updatePlacement(value);\n }\n\n @Input('kbqPopoverPlacementPriority')\n get popoverPlacementPriority() {\n return this.placementPriority;\n }\n\n set popoverPlacementPriority(value) {\n super.updatePlacementPriority(value);\n }\n\n @Input()\n get hasBackdrop(): boolean {\n return this._hasBackdrop;\n }\n\n set hasBackdrop(value: boolean) {\n this._hasBackdrop = coerceBooleanProperty(value);\n }\n\n private _hasBackdrop: boolean = false;\n\n @Input('kbqPopoverHeader')\n get header(): string | TemplateRef<any> {\n return this._header;\n }\n\n set header(value: string | TemplateRef<any>) {\n this._header = value;\n\n this.updateData();\n }\n\n private _header: string | TemplateRef<any>;\n\n @Input('kbqPopoverContent')\n get content(): string | TemplateRef<any> {\n return this._content;\n }\n\n set content(value: string | TemplateRef<any>) {\n this._content = value;\n\n this.updateData();\n }\n\n @Input('kbqPopoverFooter')\n get footer(): string | TemplateRef<any> {\n return this._footer;\n }\n\n set footer(value: string | TemplateRef<any>) {\n this._footer = value;\n\n this.updateData();\n }\n\n private _footer: string | TemplateRef<any>;\n\n @Input('kbqPopoverDisabled')\n get disabled(): boolean {\n return this._disabled;\n }\n\n set disabled(value) {\n this._disabled = coerceBooleanProperty(value);\n\n if (this._disabled) {\n this.hide();\n }\n }\n\n @Input('kbqTrigger')\n get trigger(): string {\n return this._trigger;\n }\n\n set trigger(value: string) {\n if (value) {\n this._trigger = value;\n } else {\n this._trigger = `${PopUpTriggers.Click}, ${PopUpTriggers.Keydown}`;\n }\n\n this.initListeners();\n }\n\n private _trigger: string = `${PopUpTriggers.Click}, ${PopUpTriggers.Keydown}`;\n\n @Input('kbqPopoverSize')\n get size(): PopUpSizes {\n return this._size;\n }\n\n set size(value: PopUpSizes) {\n if ([PopUpSizes.Small, PopUpSizes.Medium, PopUpSizes.Large].includes(value)) {\n this._size = value;\n\n this.updateClassMap();\n } else {\n this._size = PopUpSizes.Medium;\n }\n }\n\n private _size: PopUpSizes = PopUpSizes.Medium;\n\n @Input('kbqPopoverClass')\n get customClass() {\n return this._customClass;\n }\n\n set customClass(value: string) {\n this._customClass = value;\n\n this.updateClassMap();\n }\n\n @Input()\n get hasCloseButton() {\n return this._hasCloseButton;\n }\n set hasCloseButton(value) {\n this._hasCloseButton = value;\n this.updateData();\n }\n private _hasCloseButton = false;\n\n /**\n * Controls the behavior of closing the component on scroll.\n * The default value is `false`.\n * Use CloseScrollStrategy as alternative\n */\n @Input()\n get closeOnScroll(): boolean | null {\n return this._closeOnScroll;\n }\n\n set closeOnScroll(value: boolean) {\n this._closeOnScroll = coerceBooleanProperty(value);\n }\n\n private _closeOnScroll: boolean | null = null;\n\n get hasClickTrigger(): boolean {\n return this.trigger.includes(PopUpTriggers.Click);\n }\n\n @Input() backdropClass: string = 'cdk-overlay-transparent-backdrop';\n\n // @TODO add realization for arrow (#DS-2514)\n @Input({ alias: 'kbqPopoverArrow', transform: booleanAttribute }) arrow: boolean = true;\n\n @Input({ alias: 'kbqPopoverOffset', transform: numberAttribute }) offset: number | null = defaultOffsetY;\n\n @Output('kbqPopoverPlacementChange') placementChange = new EventEmitter();\n\n @Output('kbqPopoverVisibleChange') visibleChange = new EventEmitter<boolean>();\n\n protected originSelector = '.kbq-popover';\n\n protected get overlayConfig(): OverlayConfig {\n return {\n panelClass: 'kbq-popover__panel',\n hasBackdrop: this.hasBackdrop,\n backdropClass: this.backdropClass\n };\n }\n\n ngAfterContentInit(): void {\n if (this.closeOnScroll === null) {\n this.scrollDispatcher.scrolled().subscribe((scrollable: CdkScrollable | void) => {\n if (!scrollable?.getElementRef().nativeElement.classList.contains('kbq-hide-nested-popup')) return;\n\n const parentRects = scrollable.getElementRef().nativeElement.getBoundingClientRect();\n const childRects = this.elementRef.nativeElement.getBoundingClientRect();\n\n if (childRects.bottom < parentRects.top || childRects.top > parentRects.bottom) {\n this.hide();\n }\n });\n }\n }\n\n updateData() {\n if (!this.instance) {\n return;\n }\n\n this.instance.header = this.header;\n this.instance.content = this.content;\n this.instance.arrow = this.arrow;\n this.instance.offset = this.offset;\n this.instance.footer = this.footer;\n this.instance.hasCloseButton = this.hasCloseButton;\n\n this.instance.updateTrapFocus(this.trigger !== PopUpTriggers.Focus);\n\n if (this.isOpen) {\n this.updatePosition(true);\n }\n }\n\n /** Updates the position of the current popover. */\n updatePosition(reapplyPosition: boolean = false) {\n this.overlayRef = this.createOverlay();\n\n const position = (this.overlayRef.getConfig().positionStrategy as FlexibleConnectedPositionStrategy)\n .withPositions(this.getAdjustedPositions())\n .withPush(true);\n\n if (reapplyPosition) {\n setTimeout(() => position.reapplyLastPosition());\n }\n }\n\n getOverlayHandleComponentType(): Type<KbqPopoverComponent> {\n return KbqPopoverComponent;\n }\n\n updateClassMap(newPlacement: string = this.placement) {\n if (!this.instance) {\n return;\n }\n\n this.instance.updateClassMap(POSITION_TO_CSS_MAP[newPlacement], this.customClass, this.size);\n this.instance.markForCheck();\n }\n\n closingActionsForClick() {\n if (this.hasClickTrigger) {\n return this.defaultClosingActions();\n }\n\n return [];\n }\n\n defaultClosingActions() {\n return [\n this.overlayRef!.backdropClick(),\n this.hasBackdrop ? NEVER : this.overlayRef!.outsidePointerEvents()\n ];\n }\n\n closingActions() {\n return merge(...this.closingActionsForClick(), this.closeOnScroll ? this.scrollDispatcher.scrolled() : NEVER);\n }\n}\n","<div\n #popover\n class=\"kbq-popover\"\n [cdkTrapFocus]=\"isTrapFocus\"\n [ngClass]=\"classMap\"\n (@state.done)=\"animationDone($event)\"\n (@state.start)=\"animationStart()\"\n [@state]=\"visibility\"\n>\n <div\n class=\"kbq-popover__container\"\n [class.kbq-popover__container_with-footer]=\"footer\"\n [class.kbq-popover__container_with-header]=\"header\"\n >\n @if (header) {\n <div\n class=\"kbq-popover__header\"\n [class.kbq-popover__header_top-overflow]=\"isContentTopOverflow\"\n [class.kbq-popover__header_with-close-button]=\"hasCloseButton\"\n >\n @if (isTemplateRef(header)) {\n <ng-container [ngTemplateOutlet]=\"$any(header)\" />\n }\n @if (!isTemplateRef(header)) {\n <div class=\"kbq-popover__header-text\">{{ header }}</div>\n }\n </div>\n }\n\n @if (content) {\n <div #popoverContent class=\"kbq-popover__content kbq-scrollbar\" (cdkObserveContent)=\"onContentChange()\">\n @if (hasCloseButton && !header) {\n <div class=\"kbq-popover__close-container\">\n <ng-container *ngTemplateOutlet=\"closeButton\" />\n </div>\n }\n @if (isTemplateRef(content)) {\n <ng-container [ngTemplateOutlet]=\"$any(content)\" />\n }\n @if (!isTemplateRef(content)) {\n <div>{{ content }}</div>\n }\n </div>\n }\n\n @if (footer) {\n <div class=\"kbq-popover__footer\" [class.kbq-popover__footer_bottom-overflow]=\"isContentBottomOverflow\">\n @if (isTemplateRef(footer)) {\n <ng-container [ngTemplateOutlet]=\"$any(footer)\" />\n }\n @if (!isTemplateRef(footer)) {\n <div>{{ footer }}</div>\n }\n </div>\n }\n </div>\n\n @if (hasCloseButton && header) {\n <div class=\"kbq-popover__close-container\">\n <ng-container *ngTemplateOutlet=\"closeButton\" />\n </div>\n }\n\n <ng-template #closeButton>\n <div class=\"kbq-popover__close\">\n <button kbq-button class=\"kbq-button_transparent\" [color]=\"componentColors.Contrast\" (click)=\"hide(0)\">\n <i kbq-icon=\"kbq-xmark_16\" [color]=\"componentColors.Contrast\"></i>\n </button>\n </div>\n </ng-template>\n\n @if (arrow) {\n <div class=\"kbq-popover__arrow\"></div>\n }\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n Directive,\n EventEmitter,\n Inject,\n InjectionToken,\n Input,\n Optional,\n Output,\n ViewEncapsulation\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { Subject } from 'rxjs';\nimport { kbqPopoverAnimations } from './popover-animations';\nimport { KbqPopoverComponent, KbqPopoverTrigger } from './popover.component';\n\nexport const KBQ_POPOVER_CONFIRM_TEXT = new InjectionToken<string>('');\nexport const KBQ_POPOVER_CONFIRM_BUTTON_TEXT = new InjectionToken<string>('');\n\n@Component({\n selector: 'kbq-popover-confirm-component',\n templateUrl: './popover-confirm.component.html',\n preserveWhitespaces: false,\n styleUrls: ['./popover.scss', './popover-tokens.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [kbqPopoverAnimations.popoverState]\n})\nexport class KbqPopoverConfirmComponent extends KbqPopoverComponent {\n onConfirm = new Subject<void>();\n confirmButtonText: string;\n\n confirmText: string;\n}\n\n@Directive({\n selector: '[kbqPopoverConfirm]',\n exportAs: 'kbqPopoverConfirm',\n host: {\n '[class.kbq-popover_open]': 'isOpen',\n '(keydown)': 'handleKeydown($event)',\n '(touchend)': 'handleTouchend()'\n }\n})\nexport class KbqPopoverConfirmTrigger extends KbqPopoverTrigger {\n @Output() confirm: EventEmitter<void> = new EventEmitter<void>();\n\n @Input('kbqPopoverConfirmText')\n get confirmText(): string {\n return this._confirmText;\n }\n\n set confirmText(value: string) {\n this._confirmText = value;\n\n this.updateData();\n }\n\n private _confirmText: string;\n\n @Input('kbqPopoverConfirmButtonText')\n get confirmButtonText(): string {\n return this._confirmButtonText;\n }\n\n set confirmButtonText(value: string) {\n this._confirmButtonText = value;\n\n this.updateData();\n }\n\n private _confirmButtonText: string = 'Да';\n\n constructor(\n @Optional() @Inject(KBQ_POPOVER_CONFIRM_TEXT) confirmText: string,\n @Optional() @Inject(KBQ_POPOVER_CONFIRM_BUTTON_TEXT) confirmButtonText: string\n ) {\n super();\n\n this.confirmText = confirmText || 'Вы уверены, что хотите продолжить?';\n this.confirmButtonText = confirmButtonText || 'Да';\n }\n\n updateData() {\n if (!this.instance) {\n return;\n }\n super.updateData();\n this.setupButtonEvents();\n this.instance.confirmButtonText = this.confirmButtonText;\n this.instance.confirmText = this.confirmText;\n }\n\n setupButtonEvents() {\n this.instance.onConfirm.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(() => {\n this.confirm.emit();\n this.hide();\n });\n }\n\n getOverlayHandleComponentType() {\n return KbqPopoverConfirmComponent;\n }\n}\n","<div\n cdkTrapFocus=\"true\"\n cdkTrapFocusAutoCapture=\"true\"\n class=\"kbq-popover-confirm kbq-popover\"\n [ngClass]=\"classMap\"\n (@state.done)=\"animationDone($event)\"\n (@state.start)=\"animationStart()\"\n [@state]=\"visibility\"\n>\n <div class=\"kbq-popover__container\">\n <div class=\"kbq-popover__content\">\n <div>{{ confirmText }}</div>\n <button kbq-button [color]=\"'contrast'\" (click)=\"onConfirm.next()\">\n {{ confirmButtonText }}\n </button>\n </div>\n </div>\n\n <div class=\"kbq-popover__arrow\"></div>\n</div>\n","import {\n A11yModule,\n ConfigurableFocusTrapFactory,\n FOCUS_TRAP_INERT_STRATEGY,\n FocusTrapFactory\n} from '@angular/cdk/a11y';\nimport { CdkObserveContent } from '@angular/cdk/observers';\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { NgClass, NgTemplateOutlet } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { KbqButtonModule } from '@koobiq/components/button';\nimport { EmptyFocusTrapStrategy } from '@koobiq/components/core';\nimport { KbqIconModule } from '@koobiq/components/icon';\nimport { KbqPopoverConfirmComponent, KbqPopoverConfirmTrigger } from './popover-confirm.component';\nimport {\n KBQ_POPOVER_SCROLL_STRATEGY_FACTORY_PROVIDER,\n KbqPopoverComponent,\n KbqPopoverTrigger\n} from './popover.component';\n\n@NgModule({\n declarations: [\n KbqPopoverComponent,\n KbqPopoverTrigger,\n KbqPopoverConfirmComponent,\n KbqPopoverConfirmTrigger\n ],\n exports: [\n KbqPopoverComponent,\n KbqPopoverTrigger,\n KbqPopoverConfirmComponent,\n KbqPopoverConfirmTrigger\n ],\n imports: [\n OverlayModule,\n KbqButtonModule,\n A11yModule,\n KbqIconModule,\n CdkObserveContent,\n NgClass,\n NgTemplateOutlet\n ],\n providers: [\n KBQ_POPOVER_SCROLL_STRATEGY_FACTORY_PROVIDER,\n { provide: FocusTrapFactory, useClass: ConfigurableFocusTrapFactory },\n { provide: FOCUS_TRAP_INERT_STRATEGY, useClass: EmptyFocusTrapStrategy }]\n})\nexport class KbqPopoverModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i3"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"koobiq-components-popover.mjs","sources":["../../../packages/components/popover/popover-animations.ts","../../../packages/components/popover/popover.component.ts","../../../packages/components/popover/popover.component.html","../../../packages/components/popover/popover-confirm.component.ts","../../../packages/components/popover/popover-confirm.component.html","../../../packages/components/popover/popover.module.ts","../../../packages/components/popover/koobiq-components-popover.ts"],"sourcesContent":["import { animate, AnimationTriggerMetadata, state, style, transition, trigger } from '@angular/animations';\n\nexport const kbqPopoverAnimations: {\n readonly popoverState: AnimationTriggerMetadata;\n} = {\n /** Animation that transitions a tooltip in and out. */\n popoverState: trigger('state', [\n state(\n 'initial',\n style({\n opacity: 0,\n transform: 'scale(1, 0.8)'\n })\n ),\n transition(\n '* => visible',\n animate(\n '120ms cubic-bezier(0, 0, 0.2, 1)',\n style({\n opacity: 1,\n transform: 'scale(1, 1)'\n })\n )\n ),\n transition('* => hidden', animate('100ms linear', style({ opacity: 0 })))\n ])\n};\n","import { CdkTrapFocus } from '@angular/cdk/a11y';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport {\n CdkScrollable,\n FlexibleConnectedPositionStrategy,\n Overlay,\n OverlayConfig,\n ScrollStrategy\n} from '@angular/cdk/overlay';\nimport {\n AfterContentInit,\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n DestroyRef,\n Directive,\n ElementRef,\n EventEmitter,\n InjectionToken,\n Input,\n Output,\n TemplateRef,\n Type,\n ViewChild,\n ViewEncapsulation,\n booleanAttribute,\n inject,\n numberAttribute\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport {\n KbqComponentColors,\n KbqPopUp,\n KbqPopUpTrigger,\n POSITION_TO_CSS_MAP,\n PopUpPlacements,\n PopUpSizes,\n PopUpTriggers,\n applyPopupMargins\n} from '@koobiq/components/core';\nimport { NEVER, fromEvent, merge } from 'rxjs';\nimport { debounceTime } from 'rxjs/operators';\nimport { kbqPopoverAnimations } from './popover-animations';\n\nconst defaultOffsetYWithArrow = 8;\n\n@Component({\n selector: 'kbq-popover-component',\n templateUrl: './popover.component.html',\n preserveWhitespaces: false,\n styleUrls: ['./popover.scss', './popover-tokens.scss'],\n host: {\n '(keydown.esc)': 'onEscape()'\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [kbqPopoverAnimations.popoverState]\n})\nexport class KbqPopoverComponent extends KbqPopUp implements AfterViewInit {\n prefix = 'kbq-popover';\n\n header: string | TemplateRef<any>;\n footer: string | TemplateRef<any>;\n\n trigger: KbqPopoverTrigger;\n\n isTrapFocus: boolean = false;\n hasCloseButton: boolean = false;\n\n @ViewChild('popoverContent') popoverContent: ElementRef<HTMLDivElement>;\n @ViewChild('popover') elementRef: ElementRef;\n @ViewChild(CdkTrapFocus) cdkTrapFocus: CdkTrapFocus;\n\n private debounceTime = 15;\n private readonly destroyRef = inject(DestroyRef);\n isContentTopOverflow: boolean = false;\n isContentBottomOverflow: boolean = false;\n\n ngAfterViewInit() {\n if (!this.popoverContent) return;\n\n this.checkContentOverflow(this.popoverContent.nativeElement);\n\n fromEvent(this.popoverContent.nativeElement, 'scroll')\n .pipe(debounceTime(this.debounceTime), takeUntilDestroyed(this.destroyRef))\n .subscribe((event) => {\n this.checkContentOverflow(event.target as HTMLElement);\n });\n\n this.cdkTrapFocus.focusTrap.focusFirstTabbableElement();\n this.visibleChange.subscribe((state) => {\n if (this.offset !== null && state) {\n applyPopupMargins(\n this.renderer,\n this.elementRef.nativeElement,\n this.prefix,\n `${this.offset!.toString()}px`\n );\n }\n });\n }\n\n onContentChange() {\n this.checkContentOverflow(this.popoverContent.nativeElement);\n }\n\n checkContentOverflow(contentElement: HTMLElement) {\n const { scrollTop, offsetHeight, scrollHeight } = contentElement;\n\n this.isContentTopOverflow = scrollTop > 0;\n\n this.isContentBottomOverflow = scrollTop + offsetHeight < scrollHeight;\n\n super.detectChanges();\n }\n\n updateClassMap(placement: string, customClass: string, size: PopUpSizes) {\n super.updateClassMap(placement, customClass, { [`${this.prefix}_${size}`]: !!size });\n }\n\n updateTrapFocus(isTrapFocus: boolean): void {\n this.isTrapFocus = isTrapFocus;\n }\n\n onEscape() {\n this.hide(0);\n\n this.trigger.focus();\n }\n\n protected readonly componentColors = KbqComponentColors;\n}\n\nexport const KBQ_POPOVER_SCROLL_STRATEGY = new InjectionToken<() => ScrollStrategy>('kbq-popover-scroll-strategy');\n\n/** @docs-private */\nexport function kbqPopoverScrollStrategyFactory(overlay: Overlay): () => ScrollStrategy {\n return () => overlay.scrollStrategies.reposition({ scrollThrottle: 20 });\n}\n\n/** @docs-private */\nexport const KBQ_POPOVER_SCROLL_STRATEGY_FACTORY_PROVIDER = {\n provide: KBQ_POPOVER_SCROLL_STRATEGY,\n deps: [Overlay],\n useFactory: kbqPopoverScrollStrategyFactory\n};\n\n/** Creates an error to be thrown if the user supplied an invalid popover position. */\nexport function getKbqPopoverInvalidPositionError(position: string) {\n return Error(`KbqPopover position \"${position}\" is invalid.`);\n}\n\n@Directive({\n selector: '[kbqPopover]',\n exportAs: 'kbqPopover',\n host: {\n '[class.kbq-popover_open]': 'isOpen',\n '[class.kbq-active]': 'hasClickTrigger && isOpen',\n '(keydown)': 'handleKeydown($event)',\n '(touchend)': 'handleTouchend()'\n }\n})\nexport class KbqPopoverTrigger extends KbqPopUpTrigger<KbqPopoverComponent> implements AfterContentInit {\n protected scrollStrategy: () => ScrollStrategy = inject(KBQ_POPOVER_SCROLL_STRATEGY);\n\n @Input('kbqPopoverVisible')\n get popoverVisible(): boolean {\n return this.visible;\n }\n\n set popoverVisible(value: boolean) {\n super.updateVisible(value);\n }\n\n @Input('kbqPopoverPlacement')\n get popoverPlacement(): PopUpPlacements {\n return this.placement;\n }\n\n set popoverPlacement(value: PopUpPlacements) {\n super.updatePlacement(value);\n }\n\n @Input('kbqPopoverPlacementPriority')\n get popoverPlacementPriority() {\n return this.placementPriority;\n }\n\n set popoverPlacementPriority(value) {\n super.updatePlacementPriority(value);\n }\n\n @Input()\n get hasBackdrop(): boolean {\n return this._hasBackdrop;\n }\n\n set hasBackdrop(value: boolean) {\n this._hasBackdrop = coerceBooleanProperty(value);\n }\n\n private _hasBackdrop: boolean = false;\n\n @Input('kbqPopoverHeader')\n get header(): string | TemplateRef<any> {\n return this._header;\n }\n\n set header(value: string | TemplateRef<any>) {\n this._header = value;\n\n this.updateData();\n }\n\n private _header: string | TemplateRef<any>;\n\n @Input('kbqPopoverContent')\n get content(): string | TemplateRef<any> {\n return this._content;\n }\n\n set content(value: string | TemplateRef<any>) {\n this._content = value;\n\n this.updateData();\n }\n\n @Input('kbqPopoverFooter')\n get footer(): string | TemplateRef<any> {\n return this._footer;\n }\n\n set footer(value: string | TemplateRef<any>) {\n this._footer = value;\n\n this.updateData();\n }\n\n private _footer: string | TemplateRef<any>;\n\n @Input('kbqPopoverDisabled')\n get disabled(): boolean {\n return this._disabled;\n }\n\n set disabled(value) {\n this._disabled = coerceBooleanProperty(value);\n\n if (this._disabled) {\n this.hide();\n }\n }\n\n @Input('kbqTrigger')\n get trigger(): string {\n return this._trigger;\n }\n\n set trigger(value: string) {\n if (value) {\n this._trigger = value;\n } else {\n this._trigger = `${PopUpTriggers.Click}, ${PopUpTriggers.Keydown}`;\n }\n\n this.initListeners();\n }\n\n private _trigger: string = `${PopUpTriggers.Click}, ${PopUpTriggers.Keydown}`;\n\n @Input('kbqPopoverSize')\n get size(): PopUpSizes {\n return this._size;\n }\n\n set size(value: PopUpSizes) {\n if ([PopUpSizes.Small, PopUpSizes.Medium, PopUpSizes.Large].includes(value)) {\n this._size = value;\n\n this.updateClassMap();\n } else {\n this._size = PopUpSizes.Medium;\n }\n }\n\n private _size: PopUpSizes = PopUpSizes.Medium;\n\n @Input('kbqPopoverClass')\n get customClass() {\n return this._customClass;\n }\n\n set customClass(value: string) {\n this._customClass = value;\n\n this.updateClassMap();\n }\n\n @Input()\n get hasCloseButton() {\n return this._hasCloseButton;\n }\n set hasCloseButton(value) {\n this._hasCloseButton = value;\n this.updateData();\n }\n private _hasCloseButton = false;\n\n /**\n * Controls the behavior of closing the component on scroll.\n * The default value is `false`.\n * Use CloseScrollStrategy as alternative\n */\n @Input()\n get closeOnScroll(): boolean | null {\n return this._closeOnScroll;\n }\n\n set closeOnScroll(value: boolean) {\n this._closeOnScroll = coerceBooleanProperty(value);\n }\n\n private _closeOnScroll: boolean | null = null;\n\n get hasClickTrigger(): boolean {\n return this.trigger.includes(PopUpTriggers.Click);\n }\n\n @Input() backdropClass: string = 'cdk-overlay-transparent-backdrop';\n\n // @TODO add realization for arrow (#DS-2514)\n @Input({ alias: 'kbqPopoverArrow', transform: booleanAttribute }) arrow: boolean = true;\n\n @Input({ alias: 'kbqPopoverOffset', transform: numberAttribute }) offset: number | null = defaultOffsetYWithArrow;\n\n @Output('kbqPopoverPlacementChange') placementChange = new EventEmitter();\n\n @Output('kbqPopoverVisibleChange') visibleChange = new EventEmitter<boolean>();\n\n protected originSelector = '.kbq-popover';\n\n protected get overlayConfig(): OverlayConfig {\n return {\n panelClass: 'kbq-popover__panel',\n hasBackdrop: this.hasBackdrop,\n backdropClass: this.backdropClass\n };\n }\n\n ngAfterContentInit(): void {\n if (this.closeOnScroll === null) {\n this.scrollDispatcher.scrolled().subscribe((scrollable: CdkScrollable | void) => {\n if (!scrollable?.getElementRef().nativeElement.classList.contains('kbq-hide-nested-popup')) return;\n\n const parentRects = scrollable.getElementRef().nativeElement.getBoundingClientRect();\n const childRects = this.elementRef.nativeElement.getBoundingClientRect();\n\n if (childRects.bottom < parentRects.top || childRects.top > parentRects.bottom) {\n this.hide();\n }\n });\n }\n }\n\n updateData() {\n if (!this.instance) {\n return;\n }\n\n this.instance.header = this.header;\n this.instance.content = this.content;\n this.instance.arrow = this.arrow;\n this.instance.offset = this.offset;\n this.instance.footer = this.footer;\n this.instance.hasCloseButton = this.hasCloseButton;\n\n this.instance.updateTrapFocus(this.trigger !== PopUpTriggers.Focus);\n\n if (this.isOpen) {\n this.updatePosition(true);\n }\n }\n\n /** Updates the position of the current popover. */\n updatePosition(reapplyPosition: boolean = false) {\n this.overlayRef = this.createOverlay();\n\n const position = (this.overlayRef.getConfig().positionStrategy as FlexibleConnectedPositionStrategy)\n .withPositions(this.getAdjustedPositions())\n .withPush(true);\n\n if (reapplyPosition) {\n setTimeout(() => position.reapplyLastPosition());\n }\n }\n\n getOverlayHandleComponentType(): Type<KbqPopoverComponent> {\n return KbqPopoverComponent;\n }\n\n updateClassMap(newPlacement: string = this.placement) {\n if (!this.instance) {\n return;\n }\n\n this.instance.updateClassMap(POSITION_TO_CSS_MAP[newPlacement], this.customClass, this.size);\n this.instance.markForCheck();\n }\n\n closingActionsForClick() {\n if (this.hasClickTrigger) {\n return this.defaultClosingActions();\n }\n\n return [];\n }\n\n defaultClosingActions() {\n return [\n this.overlayRef!.backdropClick(),\n this.hasBackdrop ? NEVER : this.overlayRef!.outsidePointerEvents()\n ];\n }\n\n closingActions() {\n return merge(...this.closingActionsForClick(), this.closeOnScroll ? this.scrollDispatcher.scrolled() : NEVER);\n }\n}\n","<div\n #popover\n class=\"kbq-popover\"\n [cdkTrapFocus]=\"isTrapFocus\"\n [ngClass]=\"classMap\"\n (@state.done)=\"animationDone($event)\"\n (@state.start)=\"animationStart()\"\n [@state]=\"visibility\"\n>\n <div\n class=\"kbq-popover__container\"\n [class.kbq-popover__container_with-footer]=\"footer\"\n [class.kbq-popover__container_with-header]=\"header\"\n >\n @if (header) {\n <div\n class=\"kbq-popover__header\"\n [class.kbq-popover__header_top-overflow]=\"isContentTopOverflow\"\n [class.kbq-popover__header_with-close-button]=\"hasCloseButton\"\n >\n @if (isTemplateRef(header)) {\n <ng-container [ngTemplateOutlet]=\"$any(header)\" />\n }\n @if (!isTemplateRef(header)) {\n <div class=\"kbq-popover__header-text\">{{ header }}</div>\n }\n </div>\n }\n\n @if (content) {\n <div #popoverContent class=\"kbq-popover__content kbq-scrollbar\" (cdkObserveContent)=\"onContentChange()\">\n @if (hasCloseButton && !header) {\n <div class=\"kbq-popover__close-container\">\n <ng-container *ngTemplateOutlet=\"closeButton\" />\n </div>\n }\n @if (isTemplateRef(content)) {\n <ng-container [ngTemplateOutlet]=\"$any(content)\" />\n }\n @if (!isTemplateRef(content)) {\n <div>{{ content }}</div>\n }\n </div>\n }\n\n @if (footer) {\n <div class=\"kbq-popover__footer\" [class.kbq-popover__footer_bottom-overflow]=\"isContentBottomOverflow\">\n @if (isTemplateRef(footer)) {\n <ng-container [ngTemplateOutlet]=\"$any(footer)\" />\n }\n @if (!isTemplateRef(footer)) {\n <div>{{ footer }}</div>\n }\n </div>\n }\n </div>\n\n @if (hasCloseButton && header) {\n <div class=\"kbq-popover__close-container\">\n <ng-container *ngTemplateOutlet=\"closeButton\" />\n </div>\n }\n\n <ng-template #closeButton>\n <div class=\"kbq-popover__close\">\n <button kbq-button class=\"kbq-button_transparent\" [color]=\"componentColors.Contrast\" (click)=\"hide(0)\">\n <i kbq-icon=\"kbq-xmark_16\" [color]=\"componentColors.Contrast\"></i>\n </button>\n </div>\n </ng-template>\n\n @if (arrow) {\n <div class=\"kbq-popover__arrow\"></div>\n }\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n Directive,\n EventEmitter,\n Inject,\n InjectionToken,\n Input,\n Optional,\n Output,\n ViewEncapsulation\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { Subject } from 'rxjs';\nimport { kbqPopoverAnimations } from './popover-animations';\nimport { KbqPopoverComponent, KbqPopoverTrigger } from './popover.component';\n\nexport const KBQ_POPOVER_CONFIRM_TEXT = new InjectionToken<string>('');\nexport const KBQ_POPOVER_CONFIRM_BUTTON_TEXT = new InjectionToken<string>('');\n\n@Component({\n selector: 'kbq-popover-confirm-component',\n templateUrl: './popover-confirm.component.html',\n preserveWhitespaces: false,\n styleUrls: ['./popover.scss', './popover-tokens.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [kbqPopoverAnimations.popoverState]\n})\nexport class KbqPopoverConfirmComponent extends KbqPopoverComponent {\n onConfirm = new Subject<void>();\n confirmButtonText: string;\n\n confirmText: string;\n}\n\n@Directive({\n selector: '[kbqPopoverConfirm]',\n exportAs: 'kbqPopoverConfirm',\n host: {\n '[class.kbq-popover_open]': 'isOpen',\n '(keydown)': 'handleKeydown($event)',\n '(touchend)': 'handleTouchend()'\n }\n})\nexport class KbqPopoverConfirmTrigger extends KbqPopoverTrigger {\n @Output() confirm: EventEmitter<void> = new EventEmitter<void>();\n\n @Input('kbqPopoverConfirmText')\n get confirmText(): string {\n return this._confirmText;\n }\n\n set confirmText(value: string) {\n this._confirmText = value;\n\n this.updateData();\n }\n\n private _confirmText: string;\n\n @Input('kbqPopoverConfirmButtonText')\n get confirmButtonText(): string {\n return this._confirmButtonText;\n }\n\n set confirmButtonText(value: string) {\n this._confirmButtonText = value;\n\n this.updateData();\n }\n\n private _confirmButtonText: string = 'Да';\n\n constructor(\n @Optional() @Inject(KBQ_POPOVER_CONFIRM_TEXT) confirmText: string,\n @Optional() @Inject(KBQ_POPOVER_CONFIRM_BUTTON_TEXT) confirmButtonText: string\n ) {\n super();\n\n this.confirmText = confirmText || 'Вы уверены, что хотите продолжить?';\n this.confirmButtonText = confirmButtonText || 'Да';\n }\n\n updateData() {\n if (!this.instance) {\n return;\n }\n super.updateData();\n this.setupButtonEvents();\n this.instance.confirmButtonText = this.confirmButtonText;\n this.instance.confirmText = this.confirmText;\n }\n\n setupButtonEvents() {\n this.instance.onConfirm.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(() => {\n this.confirm.emit();\n this.hide();\n });\n }\n\n getOverlayHandleComponentType() {\n return KbqPopoverConfirmComponent;\n }\n}\n","<div\n cdkTrapFocus=\"true\"\n cdkTrapFocusAutoCapture=\"true\"\n class=\"kbq-popover-confirm kbq-popover\"\n [ngClass]=\"classMap\"\n (@state.done)=\"animationDone($event)\"\n (@state.start)=\"animationStart()\"\n [@state]=\"visibility\"\n>\n <div class=\"kbq-popover__container\">\n <div class=\"kbq-popover__content\">\n <div>{{ confirmText }}</div>\n <button kbq-button [color]=\"'contrast'\" (click)=\"onConfirm.next()\">\n {{ confirmButtonText }}\n </button>\n </div>\n </div>\n\n <div class=\"kbq-popover__arrow\"></div>\n</div>\n","import {\n A11yModule,\n ConfigurableFocusTrapFactory,\n FOCUS_TRAP_INERT_STRATEGY,\n FocusTrapFactory\n} from '@angular/cdk/a11y';\nimport { CdkObserveContent } from '@angular/cdk/observers';\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { NgClass, NgTemplateOutlet } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { KbqButtonModule } from '@koobiq/components/button';\nimport { EmptyFocusTrapStrategy } from '@koobiq/components/core';\nimport { KbqIconModule } from '@koobiq/components/icon';\nimport { KbqPopoverConfirmComponent, KbqPopoverConfirmTrigger } from './popover-confirm.component';\nimport {\n KBQ_POPOVER_SCROLL_STRATEGY_FACTORY_PROVIDER,\n KbqPopoverComponent,\n KbqPopoverTrigger\n} from './popover.component';\n\n@NgModule({\n declarations: [\n KbqPopoverComponent,\n KbqPopoverTrigger,\n KbqPopoverConfirmComponent,\n KbqPopoverConfirmTrigger\n ],\n exports: [\n KbqPopoverComponent,\n KbqPopoverTrigger,\n KbqPopoverConfirmComponent,\n KbqPopoverConfirmTrigger\n ],\n imports: [\n OverlayModule,\n KbqButtonModule,\n A11yModule,\n KbqIconModule,\n CdkObserveContent,\n NgClass,\n NgTemplateOutlet\n ],\n providers: [\n KBQ_POPOVER_SCROLL_STRATEGY_FACTORY_PROVIDER,\n { provide: FocusTrapFactory, useClass: ConfigurableFocusTrapFactory },\n { provide: FOCUS_TRAP_INERT_STRATEGY, useClass: EmptyFocusTrapStrategy }]\n})\nexport class KbqPopoverModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i3"],"mappings":"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"}
|
|
@@ -1,19 +1,11 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { Directive, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, NgModule } from '@angular/core';
|
|
3
|
-
import {
|
|
3
|
+
import { KbqColorDirective, KbqComponentColors } from '@koobiq/components/core';
|
|
4
4
|
import { PlatformModule } from '@angular/cdk/platform';
|
|
5
5
|
|
|
6
6
|
let idIterator = 0;
|
|
7
7
|
const MIN_PERCENT = 0;
|
|
8
8
|
const MAX_PERCENT = 100;
|
|
9
|
-
/** @docs-private */
|
|
10
|
-
class KbqProgressBarBase {
|
|
11
|
-
constructor(elementRef) {
|
|
12
|
-
this.elementRef = elementRef;
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
/** @docs-private */
|
|
16
|
-
const KbqProgressBarMixinBase = mixinColor(KbqProgressBarBase, KbqComponentColors.Theme);
|
|
17
9
|
class KbqProgressBarText {
|
|
18
10
|
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqProgressBarText, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
19
11
|
/** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.6", type: KbqProgressBarText, selector: "[kbq-progress-bar-text]", host: { classAttribute: "kbq-progress-bar-text" }, ngImport: i0 }); }
|
|
@@ -40,28 +32,29 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
|
|
|
40
32
|
}
|
|
41
33
|
}]
|
|
42
34
|
}] });
|
|
43
|
-
class KbqProgressBar extends
|
|
44
|
-
|
|
45
|
-
|
|
35
|
+
class KbqProgressBar extends KbqColorDirective {
|
|
36
|
+
get percentage() {
|
|
37
|
+
return Math.max(MIN_PERCENT, Math.min(MAX_PERCENT, this.value));
|
|
38
|
+
}
|
|
39
|
+
constructor() {
|
|
40
|
+
super();
|
|
46
41
|
this.id = `kbq-progress-bar-${idIterator++}`;
|
|
47
42
|
this.value = 0;
|
|
48
43
|
this.mode = 'determinate';
|
|
44
|
+
this.color = KbqComponentColors.Theme;
|
|
49
45
|
}
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
}
|
|
53
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqProgressBar, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
54
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: KbqProgressBar, selector: "kbq-progress-bar", inputs: { color: "color", id: "id", value: "value", mode: "mode" }, host: { properties: { "attr.id": "id", "class.kbq-progress-bar_determinate": "mode === \"determinate\"", "class.kbq-progress-bar_indeterminate": "mode === \"indeterminate\"" }, classAttribute: "kbq-progress-bar" }, usesInheritance: true, ngImport: i0, template: "<ng-content select=\"[kbq-progress-bar-text]\" />\n\n<div class=\"kbq-progress-bar__inner\" [id]=\"id\">\n @switch (mode) {\n @case ('indeterminate') {\n <div class=\"kbq-progress-bar__line kbq-progress-bar__line_indeterminate\"></div>\n }\n @default {\n <div class=\"kbq-progress-bar__line kbq-progress-bar__line_determinate\" [style.width.%]=\"percentage\"></div>\n }\n }\n</div>\n\n<ng-content select=\"[kbq-progress-bar-caption]\" />\n", styles: ["@keyframes kbq-progress-bar-indeterminate{0%{width:25%;transform:translate(-150%)}to{width:40%;transform:translate(250%)}}.kbq-progress-bar{display:block;overflow:hidden}.kbq-progress-bar .kbq-progress-bar-text{margin-bottom:var(--kbq-progress-bar-size-container-content-gap)}.kbq-progress-bar .kbq-progress-bar-caption{margin-top:var(--kbq-progress-bar-size-container-content-gap)}.kbq-progress-bar .kbq-progress-bar__inner{overflow:hidden;height:var(--kbq-progress-bar-size-bar-height);border-radius:var(--kbq-progress-bar-size-container-border-radius)}.kbq-progress-bar .kbq-progress-bar__line{height:100%;transform-origin:top left;border-radius:var(--kbq-progress-bar-size-bar-border-radius)}.kbq-progress-bar.kbq-progress-bar_determinate .kbq-progress-bar__line{transition:width .3s}.kbq-progress-bar.kbq-progress-bar_indeterminate .kbq-progress-bar__line{animation:kbq-progress-bar-indeterminate 2.1s cubic-bezier(.455,.03,.515,.955) infinite}.kbq-progress-bar.kbq-theme .kbq-progress-bar__inner{background-color:var(--kbq-progress-bar-bar-background)}.kbq-progress-bar.kbq-theme .kbq-progress-bar__line{background-color:var(--kbq-progress-bar-bar-foreground)}.kbq-progress-bar-text{color:var(--kbq-progress-bar-text-color)}.kbq-progress-bar-caption{color:var(--kbq-progress-bar-caption-color)}.kbq-progress-bar-text{font-size:var(--kbq-typography-text-normal-font-size);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-progress-bar-caption{font-size:var(--kbq-typography-text-compact-font-size);font-weight:var(--kbq-typography-text-compact-font-weight);line-height:var(--kbq-typography-text-compact-line-height);font-family:var(--kbq-typography-text-compact-font-family);text-transform:var(--kbq-typography-text-compact-text-transform);font-feature-settings:var(--kbq-typography-text-compact-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-letter-spacing)}\n", ".kbq-progress-bar{--kbq-progress-bar-size-container-content-gap: var(--kbq-size-s);--kbq-progress-bar-size-container-border-radius: var(--kbq-size-3xs);--kbq-progress-bar-size-bar-height: var(--kbq-size-xxs);--kbq-progress-bar-size-bar-border-radius: var(--kbq-size-3xs);--kbq-progress-bar-bar-background: var(--kbq-background-contrast-fade);--kbq-progress-bar-bar-foreground: var(--kbq-icon-theme);--kbq-progress-bar-text-color: var(--kbq-foreground-contrast);--kbq-progress-bar-caption-color: var(--kbq-foreground-contrast-secondary)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
46
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqProgressBar, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
47
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: KbqProgressBar, selector: "kbq-progress-bar", inputs: { id: "id", value: "value", mode: "mode" }, host: { properties: { "attr.id": "id", "class.kbq-progress-bar_determinate": "mode === \"determinate\"", "class.kbq-progress-bar_indeterminate": "mode === \"indeterminate\"" }, classAttribute: "kbq-progress-bar" }, usesInheritance: true, ngImport: i0, template: "<ng-content select=\"[kbq-progress-bar-text]\" />\n\n<div class=\"kbq-progress-bar__inner\" [id]=\"id\">\n @switch (mode) {\n @case ('indeterminate') {\n <div class=\"kbq-progress-bar__line kbq-progress-bar__line_indeterminate\"></div>\n }\n @default {\n <div class=\"kbq-progress-bar__line kbq-progress-bar__line_determinate\" [style.width.%]=\"percentage\"></div>\n }\n }\n</div>\n\n<ng-content select=\"[kbq-progress-bar-caption]\" />\n", styles: ["@keyframes kbq-progress-bar-indeterminate{0%{width:25%;transform:translate(-150%)}to{width:40%;transform:translate(250%)}}.kbq-progress-bar{display:block;overflow:hidden}.kbq-progress-bar .kbq-progress-bar-text{margin-bottom:var(--kbq-progress-bar-size-container-content-gap)}.kbq-progress-bar .kbq-progress-bar-caption{margin-top:var(--kbq-progress-bar-size-container-content-gap)}.kbq-progress-bar .kbq-progress-bar__inner{overflow:hidden;height:var(--kbq-progress-bar-size-bar-height);border-radius:var(--kbq-progress-bar-size-container-border-radius)}.kbq-progress-bar .kbq-progress-bar__line{height:100%;transform-origin:top left;border-radius:var(--kbq-progress-bar-size-bar-border-radius)}.kbq-progress-bar.kbq-progress-bar_determinate .kbq-progress-bar__line{transition:width .3s}.kbq-progress-bar.kbq-progress-bar_indeterminate .kbq-progress-bar__line{animation:kbq-progress-bar-indeterminate 2.1s cubic-bezier(.455,.03,.515,.955) infinite}.kbq-progress-bar.kbq-theme .kbq-progress-bar__inner{background-color:var(--kbq-progress-bar-bar-background)}.kbq-progress-bar.kbq-theme .kbq-progress-bar__line{background-color:var(--kbq-progress-bar-bar-foreground)}.kbq-progress-bar-text{color:var(--kbq-progress-bar-text-color)}.kbq-progress-bar-caption{color:var(--kbq-progress-bar-caption-color)}.kbq-progress-bar-text{font-size:var(--kbq-typography-text-normal-font-size);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-progress-bar-caption{font-size:var(--kbq-typography-text-compact-font-size);font-weight:var(--kbq-typography-text-compact-font-weight);line-height:var(--kbq-typography-text-compact-line-height);font-family:var(--kbq-typography-text-compact-font-family);text-transform:var(--kbq-typography-text-compact-text-transform);font-feature-settings:var(--kbq-typography-text-compact-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-letter-spacing)}\n", ".kbq-progress-bar{--kbq-progress-bar-size-container-content-gap: var(--kbq-size-s);--kbq-progress-bar-size-container-border-radius: var(--kbq-size-3xs);--kbq-progress-bar-size-bar-height: var(--kbq-size-xxs);--kbq-progress-bar-size-bar-border-radius: var(--kbq-size-3xs);--kbq-progress-bar-bar-background: var(--kbq-background-contrast-fade);--kbq-progress-bar-bar-foreground: var(--kbq-icon-theme);--kbq-progress-bar-text-color: var(--kbq-foreground-contrast);--kbq-progress-bar-caption-color: var(--kbq-foreground-contrast-secondary)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
55
48
|
}
|
|
56
49
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqProgressBar, decorators: [{
|
|
57
50
|
type: Component,
|
|
58
|
-
args: [{ selector: 'kbq-progress-bar', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None,
|
|
51
|
+
args: [{ selector: 'kbq-progress-bar', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
|
|
59
52
|
'[attr.id]': 'id',
|
|
60
53
|
class: 'kbq-progress-bar',
|
|
61
54
|
'[class.kbq-progress-bar_determinate]': 'mode === "determinate"',
|
|
62
55
|
'[class.kbq-progress-bar_indeterminate]': 'mode === "indeterminate"'
|
|
63
56
|
}, template: "<ng-content select=\"[kbq-progress-bar-text]\" />\n\n<div class=\"kbq-progress-bar__inner\" [id]=\"id\">\n @switch (mode) {\n @case ('indeterminate') {\n <div class=\"kbq-progress-bar__line kbq-progress-bar__line_indeterminate\"></div>\n }\n @default {\n <div class=\"kbq-progress-bar__line kbq-progress-bar__line_determinate\" [style.width.%]=\"percentage\"></div>\n }\n }\n</div>\n\n<ng-content select=\"[kbq-progress-bar-caption]\" />\n", styles: ["@keyframes kbq-progress-bar-indeterminate{0%{width:25%;transform:translate(-150%)}to{width:40%;transform:translate(250%)}}.kbq-progress-bar{display:block;overflow:hidden}.kbq-progress-bar .kbq-progress-bar-text{margin-bottom:var(--kbq-progress-bar-size-container-content-gap)}.kbq-progress-bar .kbq-progress-bar-caption{margin-top:var(--kbq-progress-bar-size-container-content-gap)}.kbq-progress-bar .kbq-progress-bar__inner{overflow:hidden;height:var(--kbq-progress-bar-size-bar-height);border-radius:var(--kbq-progress-bar-size-container-border-radius)}.kbq-progress-bar .kbq-progress-bar__line{height:100%;transform-origin:top left;border-radius:var(--kbq-progress-bar-size-bar-border-radius)}.kbq-progress-bar.kbq-progress-bar_determinate .kbq-progress-bar__line{transition:width .3s}.kbq-progress-bar.kbq-progress-bar_indeterminate .kbq-progress-bar__line{animation:kbq-progress-bar-indeterminate 2.1s cubic-bezier(.455,.03,.515,.955) infinite}.kbq-progress-bar.kbq-theme .kbq-progress-bar__inner{background-color:var(--kbq-progress-bar-bar-background)}.kbq-progress-bar.kbq-theme .kbq-progress-bar__line{background-color:var(--kbq-progress-bar-bar-foreground)}.kbq-progress-bar-text{color:var(--kbq-progress-bar-text-color)}.kbq-progress-bar-caption{color:var(--kbq-progress-bar-caption-color)}.kbq-progress-bar-text{font-size:var(--kbq-typography-text-normal-font-size);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-progress-bar-caption{font-size:var(--kbq-typography-text-compact-font-size);font-weight:var(--kbq-typography-text-compact-font-weight);line-height:var(--kbq-typography-text-compact-line-height);font-family:var(--kbq-typography-text-compact-font-family);text-transform:var(--kbq-typography-text-compact-text-transform);font-feature-settings:var(--kbq-typography-text-compact-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-letter-spacing)}\n", ".kbq-progress-bar{--kbq-progress-bar-size-container-content-gap: var(--kbq-size-s);--kbq-progress-bar-size-container-border-radius: var(--kbq-size-3xs);--kbq-progress-bar-size-bar-height: var(--kbq-size-xxs);--kbq-progress-bar-size-bar-border-radius: var(--kbq-size-3xs);--kbq-progress-bar-bar-background: var(--kbq-background-contrast-fade);--kbq-progress-bar-bar-foreground: var(--kbq-icon-theme);--kbq-progress-bar-text-color: var(--kbq-foreground-contrast);--kbq-progress-bar-caption-color: var(--kbq-foreground-contrast-secondary)}\n"] }]
|
|
64
|
-
}], ctorParameters: () => [
|
|
57
|
+
}], ctorParameters: () => [], propDecorators: { id: [{
|
|
65
58
|
type: Input
|
|
66
59
|
}], value: [{
|
|
67
60
|
type: Input
|
|
@@ -101,5 +94,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
|
|
|
101
94
|
* Generated bundle index. Do not edit.
|
|
102
95
|
*/
|
|
103
96
|
|
|
104
|
-
export { KbqProgressBar,
|
|
97
|
+
export { KbqProgressBar, KbqProgressBarCaption, KbqProgressBarModule, KbqProgressBarText };
|
|
105
98
|
//# sourceMappingURL=koobiq-components-progress-bar.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"koobiq-components-progress-bar.mjs","sources":["../../../packages/components/progress-bar/progress-bar.component.ts","../../../packages/components/progress-bar/progress-bar.component.html","../../../packages/components/progress-bar/progress-bar.module.ts","../../../packages/components/progress-bar/koobiq-components-progress-bar.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, Directive,
|
|
1
|
+
{"version":3,"file":"koobiq-components-progress-bar.mjs","sources":["../../../packages/components/progress-bar/progress-bar.component.ts","../../../packages/components/progress-bar/progress-bar.component.html","../../../packages/components/progress-bar/progress-bar.module.ts","../../../packages/components/progress-bar/koobiq-components-progress-bar.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, Directive, Input, ViewEncapsulation } from '@angular/core';\nimport { KbqColorDirective, KbqComponentColors } from '@koobiq/components/core';\n\nexport type ProgressBarMode = 'determinate' | 'indeterminate';\n\nlet idIterator = 0;\n\nconst MIN_PERCENT = 0;\nconst MAX_PERCENT = 100;\n\n@Directive({\n selector: '[kbq-progress-bar-text]',\n host: {\n class: 'kbq-progress-bar-text'\n }\n})\nexport class KbqProgressBarText {}\n\n@Directive({\n selector: '[kbq-progress-bar-caption]',\n host: {\n class: 'kbq-progress-bar-caption'\n }\n})\nexport class KbqProgressBarCaption {}\n\n@Component({\n selector: 'kbq-progress-bar',\n templateUrl: './progress-bar.component.html',\n styleUrls: ['./progress-bar.scss', './progress-bar-tokens.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[attr.id]': 'id',\n class: 'kbq-progress-bar',\n '[class.kbq-progress-bar_determinate]': 'mode === \"determinate\"',\n '[class.kbq-progress-bar_indeterminate]': 'mode === \"indeterminate\"'\n }\n})\nexport class KbqProgressBar extends KbqColorDirective {\n @Input() id: string = `kbq-progress-bar-${idIterator++}`;\n @Input() value: number = 0;\n @Input() mode: ProgressBarMode = 'determinate';\n\n get percentage(): number {\n return Math.max(MIN_PERCENT, Math.min(MAX_PERCENT, this.value));\n }\n\n constructor() {\n super();\n\n this.color = KbqComponentColors.Theme;\n }\n}\n","<ng-content select=\"[kbq-progress-bar-text]\" />\n\n<div class=\"kbq-progress-bar__inner\" [id]=\"id\">\n @switch (mode) {\n @case ('indeterminate') {\n <div class=\"kbq-progress-bar__line kbq-progress-bar__line_indeterminate\"></div>\n }\n @default {\n <div class=\"kbq-progress-bar__line kbq-progress-bar__line_determinate\" [style.width.%]=\"percentage\"></div>\n }\n }\n</div>\n\n<ng-content select=\"[kbq-progress-bar-caption]\" />\n","import { PlatformModule } from '@angular/cdk/platform';\nimport { NgModule } from '@angular/core';\nimport { KbqProgressBar, KbqProgressBarCaption, KbqProgressBarText } from './progress-bar.component';\n\n@NgModule({\n imports: [\n PlatformModule\n ],\n declarations: [\n KbqProgressBar,\n KbqProgressBarText,\n KbqProgressBarCaption\n ],\n exports: [\n KbqProgressBar,\n KbqProgressBarText,\n KbqProgressBarCaption\n ]\n})\nexport class KbqProgressBarModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { Directive, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, NgModule } from '@angular/core';
|
|
3
|
-
import {
|
|
3
|
+
import { KbqColorDirective, KbqComponentColors } from '@koobiq/components/core';
|
|
4
4
|
import * as i1 from '@angular/common';
|
|
5
5
|
import { NgStyle } from '@angular/common';
|
|
6
6
|
import { PlatformModule } from '@angular/cdk/platform';
|
|
@@ -34,16 +34,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
|
|
|
34
34
|
}
|
|
35
35
|
}]
|
|
36
36
|
}] });
|
|
37
|
-
/** @docs-private */
|
|
38
|
-
class KbqProgressSpinnerBase {
|
|
39
|
-
constructor(elementRef) {
|
|
40
|
-
this.elementRef = elementRef;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
/** @docs-private */
|
|
44
|
-
const KbqProgressSpinnerMixinBase = mixinColor(KbqProgressSpinnerBase, KbqComponentColors.Theme);
|
|
45
37
|
const MAX_DASH_ARRAY = 295;
|
|
46
|
-
class KbqProgressSpinner extends
|
|
38
|
+
class KbqProgressSpinner extends KbqColorDirective {
|
|
47
39
|
get size() {
|
|
48
40
|
return this._size;
|
|
49
41
|
}
|
|
@@ -51,32 +43,33 @@ class KbqProgressSpinner extends KbqProgressSpinnerMixinBase {
|
|
|
51
43
|
this._size = value;
|
|
52
44
|
this.svgCircleRadius = value === 'big' ? '47%' : '42.5%';
|
|
53
45
|
}
|
|
54
|
-
constructor(elementRef) {
|
|
55
|
-
super(elementRef);
|
|
56
|
-
this.id = `kbq-progress-spinner-${id++}`;
|
|
57
|
-
this.value = 0;
|
|
58
|
-
this.mode = 'determinate';
|
|
59
|
-
this._size = 'compact';
|
|
60
|
-
this.svgCircleRadius = '42.5%';
|
|
61
|
-
}
|
|
62
46
|
get percentage() {
|
|
63
47
|
return Math.max(MIN_PERCENT, Math.min(MAX_PERCENT, this.value)) / MAX_PERCENT;
|
|
64
48
|
}
|
|
65
49
|
get dashOffsetPercent() {
|
|
66
50
|
return `${MAX_DASH_ARRAY - this.percentage * MAX_DASH_ARRAY}%`;
|
|
67
51
|
}
|
|
68
|
-
|
|
69
|
-
|
|
52
|
+
constructor() {
|
|
53
|
+
super();
|
|
54
|
+
this.id = `kbq-progress-spinner-${id++}`;
|
|
55
|
+
this.value = 0;
|
|
56
|
+
this.mode = 'determinate';
|
|
57
|
+
this._size = 'compact';
|
|
58
|
+
this.svgCircleRadius = '42.5%';
|
|
59
|
+
this.color = KbqComponentColors.Theme;
|
|
60
|
+
}
|
|
61
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqProgressSpinner, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
62
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.6", type: KbqProgressSpinner, selector: "kbq-progress-spinner", inputs: { id: "id", value: "value", mode: "mode", size: "size" }, host: { properties: { "class.kbq-progress-spinner_big": "size === 'big'", "class.kbq-progress-spinner_indeterminate": "mode === 'indeterminate'", "attr.id": "id" }, classAttribute: "kbq-progress-spinner" }, usesInheritance: true, ngImport: i0, template: "<div class=\"kbq-progress-spinner__inner\">\n <svg focusable=\"false\" preserveAspectRatio=\"xMidYMid meet\" viewBox=\"0 0 100 100\">\n <circle\n cx=\"50%\"\n cy=\"50%\"\n stroke-linecap=\"round\"\n class=\"kbq-progress-spinner__circle\"\n [attr.r]=\"svgCircleRadius\"\n [ngStyle]=\"{ 'stroke-dashoffset': mode === 'determinate' ? dashOffsetPercent : null }\"\n />\n </svg>\n</div>\n\n<div class=\"kbq-progress-spinner__content\">\n <ng-content select=\"[kbq-progress-spinner-text]\" />\n <ng-content select=\"[kbq-progress-spinner-caption]\" />\n</div>\n", styles: ["@keyframes kbq-progress-spinner-indeterminate{to{transform:rotate(270deg)}}.kbq-progress-spinner{display:flex;flex-direction:row}.kbq-progress-spinner__circle{fill:none;stroke:#000;stroke-dasharray:295%;stroke-width:13%;transition:stroke-dashoffset .3s;transform-origin:center center}.kbq-progress-spinner__inner{width:var(--kbq-progress-spinner-size-compact-size);height:var(--kbq-progress-spinner-size-compact-size);transform:rotate(-90deg);font-size:0}.kbq-progress-spinner__content .kbq-progress-spinner-text{margin-bottom:var(--kbq-progress-spinner-size-compact-content-gap-vertical)}.kbq-progress-spinner__content:not(:empty){margin-inline-start:var(--kbq-progress-spinner-size-compact-content-gap-horizontal)}.kbq-progress-spinner_big .kbq-progress-spinner__inner{width:var(--kbq-progress-spinner-size-big-size);height:var(--kbq-progress-spinner-size-big-size)}.kbq-progress-spinner_big .kbq-progress-spinner__circle{stroke-width:6%}.kbq-progress-spinner_big .kbq-progress-spinner__content:not(:empty){margin-inline-start:var(--kbq-progress-spinner-size-big-content-gap-horizontal)}.kbq-progress-spinner_indeterminate .kbq-progress-spinner__inner{animation:kbq-progress-spinner-indeterminate 1.5s cubic-bezier(.455,.03,.515,.955) infinite}.kbq-progress-spinner_indeterminate .kbq-progress-spinner__inner .kbq-progress-spinner__circle{stroke-dashoffset:80%}.kbq-progress-spinner .kbq-progress-spinner__circle{stroke:var(--kbq-progress-spinner-circle-background)}.kbq-progress-spinner-text{color:var(--kbq-progress-spinner-text-color)}.kbq-progress-spinner-caption{color:var(--kbq-progress-spinner-caption-color)}.kbq-progress-spinner-text{font-size:var(--kbq-typography-text-normal-font-size);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-progress-spinner-caption{font-size:var(--kbq-typography-text-compact-font-size);font-weight:var(--kbq-typography-text-compact-font-weight);line-height:var(--kbq-typography-text-compact-line-height);font-family:var(--kbq-typography-text-compact-font-family);text-transform:var(--kbq-typography-text-compact-text-transform);font-feature-settings:var(--kbq-typography-text-compact-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-letter-spacing)}\n", ".kbq-progress-spinner{--kbq-progress-spinner-size-compact-size: var(--kbq-size-l);--kbq-progress-spinner-size-compact-stroke-width: 2px;--kbq-progress-spinner-size-compact-content-gap-vertical: var(--kbq-size-3xs);--kbq-progress-spinner-size-compact-content-gap-horizontal: var(--kbq-size-s);--kbq-progress-spinner-size-big-size: var(--kbq-size-5xl);--kbq-progress-spinner-size-big-stroke-width: 3px;--kbq-progress-spinner-size-big-content-gap-vertical: var(--kbq-size-3xs);--kbq-progress-spinner-size-big-content-gap-horizontal: var(--kbq-size-s);--kbq-progress-spinner-circle-background: var(--kbq-icon-theme);--kbq-progress-spinner-text-color: var(--kbq-foreground-contrast);--kbq-progress-spinner-caption-color: var(--kbq-foreground-contrast-secondary)}\n"], dependencies: [{ kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
70
63
|
}
|
|
71
64
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqProgressSpinner, decorators: [{
|
|
72
65
|
type: Component,
|
|
73
|
-
args: [{ selector: 'kbq-progress-spinner', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None,
|
|
66
|
+
args: [{ selector: 'kbq-progress-spinner', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
|
|
74
67
|
class: 'kbq-progress-spinner',
|
|
75
68
|
'[class.kbq-progress-spinner_big]': `size === 'big'`,
|
|
76
69
|
'[class.kbq-progress-spinner_indeterminate]': `mode === 'indeterminate'`,
|
|
77
70
|
'[attr.id]': 'id'
|
|
78
71
|
}, template: "<div class=\"kbq-progress-spinner__inner\">\n <svg focusable=\"false\" preserveAspectRatio=\"xMidYMid meet\" viewBox=\"0 0 100 100\">\n <circle\n cx=\"50%\"\n cy=\"50%\"\n stroke-linecap=\"round\"\n class=\"kbq-progress-spinner__circle\"\n [attr.r]=\"svgCircleRadius\"\n [ngStyle]=\"{ 'stroke-dashoffset': mode === 'determinate' ? dashOffsetPercent : null }\"\n />\n </svg>\n</div>\n\n<div class=\"kbq-progress-spinner__content\">\n <ng-content select=\"[kbq-progress-spinner-text]\" />\n <ng-content select=\"[kbq-progress-spinner-caption]\" />\n</div>\n", styles: ["@keyframes kbq-progress-spinner-indeterminate{to{transform:rotate(270deg)}}.kbq-progress-spinner{display:flex;flex-direction:row}.kbq-progress-spinner__circle{fill:none;stroke:#000;stroke-dasharray:295%;stroke-width:13%;transition:stroke-dashoffset .3s;transform-origin:center center}.kbq-progress-spinner__inner{width:var(--kbq-progress-spinner-size-compact-size);height:var(--kbq-progress-spinner-size-compact-size);transform:rotate(-90deg);font-size:0}.kbq-progress-spinner__content .kbq-progress-spinner-text{margin-bottom:var(--kbq-progress-spinner-size-compact-content-gap-vertical)}.kbq-progress-spinner__content:not(:empty){margin-inline-start:var(--kbq-progress-spinner-size-compact-content-gap-horizontal)}.kbq-progress-spinner_big .kbq-progress-spinner__inner{width:var(--kbq-progress-spinner-size-big-size);height:var(--kbq-progress-spinner-size-big-size)}.kbq-progress-spinner_big .kbq-progress-spinner__circle{stroke-width:6%}.kbq-progress-spinner_big .kbq-progress-spinner__content:not(:empty){margin-inline-start:var(--kbq-progress-spinner-size-big-content-gap-horizontal)}.kbq-progress-spinner_indeterminate .kbq-progress-spinner__inner{animation:kbq-progress-spinner-indeterminate 1.5s cubic-bezier(.455,.03,.515,.955) infinite}.kbq-progress-spinner_indeterminate .kbq-progress-spinner__inner .kbq-progress-spinner__circle{stroke-dashoffset:80%}.kbq-progress-spinner .kbq-progress-spinner__circle{stroke:var(--kbq-progress-spinner-circle-background)}.kbq-progress-spinner-text{color:var(--kbq-progress-spinner-text-color)}.kbq-progress-spinner-caption{color:var(--kbq-progress-spinner-caption-color)}.kbq-progress-spinner-text{font-size:var(--kbq-typography-text-normal-font-size);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-progress-spinner-caption{font-size:var(--kbq-typography-text-compact-font-size);font-weight:var(--kbq-typography-text-compact-font-weight);line-height:var(--kbq-typography-text-compact-line-height);font-family:var(--kbq-typography-text-compact-font-family);text-transform:var(--kbq-typography-text-compact-text-transform);font-feature-settings:var(--kbq-typography-text-compact-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-letter-spacing)}\n", ".kbq-progress-spinner{--kbq-progress-spinner-size-compact-size: var(--kbq-size-l);--kbq-progress-spinner-size-compact-stroke-width: 2px;--kbq-progress-spinner-size-compact-content-gap-vertical: var(--kbq-size-3xs);--kbq-progress-spinner-size-compact-content-gap-horizontal: var(--kbq-size-s);--kbq-progress-spinner-size-big-size: var(--kbq-size-5xl);--kbq-progress-spinner-size-big-stroke-width: 3px;--kbq-progress-spinner-size-big-content-gap-vertical: var(--kbq-size-3xs);--kbq-progress-spinner-size-big-content-gap-horizontal: var(--kbq-size-s);--kbq-progress-spinner-circle-background: var(--kbq-icon-theme);--kbq-progress-spinner-text-color: var(--kbq-foreground-contrast);--kbq-progress-spinner-caption-color: var(--kbq-foreground-contrast-secondary)}\n"] }]
|
|
79
|
-
}], ctorParameters: () => [
|
|
72
|
+
}], ctorParameters: () => [], propDecorators: { id: [{
|
|
80
73
|
type: Input
|
|
81
74
|
}], value: [{
|
|
82
75
|
type: Input
|
|
@@ -120,5 +113,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
|
|
|
120
113
|
* Generated bundle index. Do not edit.
|
|
121
114
|
*/
|
|
122
115
|
|
|
123
|
-
export { KbqProgressSpinner,
|
|
116
|
+
export { KbqProgressSpinner, KbqProgressSpinnerCaption, KbqProgressSpinnerModule, KbqProgressSpinnerText };
|
|
124
117
|
//# sourceMappingURL=koobiq-components-progress-spinner.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"koobiq-components-progress-spinner.mjs","sources":["../../../packages/components/progress-spinner/progress-spinner.component.ts","../../../packages/components/progress-spinner/progress-spinner.component.html","../../../packages/components/progress-spinner/progress-spinner.module.ts","../../../packages/components/progress-spinner/koobiq-components-progress-spinner.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, Directive,
|
|
1
|
+
{"version":3,"file":"koobiq-components-progress-spinner.mjs","sources":["../../../packages/components/progress-spinner/progress-spinner.component.ts","../../../packages/components/progress-spinner/progress-spinner.component.html","../../../packages/components/progress-spinner/progress-spinner.module.ts","../../../packages/components/progress-spinner/koobiq-components-progress-spinner.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, Directive, Input, ViewEncapsulation } from '@angular/core';\nimport { KbqColorDirective, KbqComponentColors } from '@koobiq/components/core';\n\nexport type ProgressSpinnerMode = 'determinate' | 'indeterminate';\n\n//@TODO use Exclude<KbqDefaultSizes, 'normal'> from '@koobiq/components/core' instead\nexport type ProgressSpinnerSize = 'compact' | 'big';\n\nlet id = 0;\n\nconst MIN_PERCENT = 0;\nconst MAX_PERCENT = 100;\n\n@Directive({\n selector: '[kbq-progress-spinner-text]',\n host: {\n class: 'kbq-progress-spinner-text'\n }\n})\nexport class KbqProgressSpinnerText {}\n\n@Directive({\n selector: '[kbq-progress-spinner-caption]',\n host: {\n class: 'kbq-progress-spinner-caption'\n }\n})\nexport class KbqProgressSpinnerCaption {}\n\nconst MAX_DASH_ARRAY = 295;\n\n@Component({\n selector: 'kbq-progress-spinner',\n templateUrl: './progress-spinner.component.html',\n styleUrls: ['./progress-spinner.scss', './progress-spinner-tokens.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'kbq-progress-spinner',\n '[class.kbq-progress-spinner_big]': `size === 'big'`,\n '[class.kbq-progress-spinner_indeterminate]': `mode === 'indeterminate'`,\n '[attr.id]': 'id'\n }\n})\nexport class KbqProgressSpinner extends KbqColorDirective {\n @Input() id: string = `kbq-progress-spinner-${id++}`;\n @Input() value: number = 0;\n @Input() mode: ProgressSpinnerMode = 'determinate';\n\n @Input()\n get size(): ProgressSpinnerSize | string {\n return this._size;\n }\n\n set size(value: ProgressSpinnerSize | string) {\n this._size = value;\n\n this.svgCircleRadius = value === 'big' ? '47%' : '42.5%';\n }\n\n private _size: ProgressSpinnerSize | string = 'compact';\n\n svgCircleRadius: string = '42.5%';\n\n get percentage(): number {\n return Math.max(MIN_PERCENT, Math.min(MAX_PERCENT, this.value)) / MAX_PERCENT;\n }\n\n get dashOffsetPercent(): string {\n return `${MAX_DASH_ARRAY - this.percentage * MAX_DASH_ARRAY}%`;\n }\n\n constructor() {\n super();\n\n this.color = KbqComponentColors.Theme;\n }\n}\n","<div class=\"kbq-progress-spinner__inner\">\n <svg focusable=\"false\" preserveAspectRatio=\"xMidYMid meet\" viewBox=\"0 0 100 100\">\n <circle\n cx=\"50%\"\n cy=\"50%\"\n stroke-linecap=\"round\"\n class=\"kbq-progress-spinner__circle\"\n [attr.r]=\"svgCircleRadius\"\n [ngStyle]=\"{ 'stroke-dashoffset': mode === 'determinate' ? dashOffsetPercent : null }\"\n />\n </svg>\n</div>\n\n<div class=\"kbq-progress-spinner__content\">\n <ng-content select=\"[kbq-progress-spinner-text]\" />\n <ng-content select=\"[kbq-progress-spinner-caption]\" />\n</div>\n","import { PlatformModule } from '@angular/cdk/platform';\nimport { NgStyle } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { KbqProgressSpinner, KbqProgressSpinnerCaption, KbqProgressSpinnerText } from './progress-spinner.component';\n\n@NgModule({\n imports: [\n PlatformModule,\n NgStyle\n ],\n declarations: [\n KbqProgressSpinner,\n KbqProgressSpinnerText,\n KbqProgressSpinnerCaption\n ],\n exports: [\n KbqProgressSpinner,\n KbqProgressSpinnerText,\n KbqProgressSpinnerCaption\n ]\n})\nexport class KbqProgressSpinnerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|