@kirbydesign/designsystem 8.1.3 → 8.2.0-rc.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/action-group/action-group.component.d.ts +28 -0
- package/action-group/index.d.ts +5 -0
- package/action-group/public_api.d.ts +1 -0
- package/alert-experimental/alert.component.d.ts +28 -0
- package/alert-experimental/alert.module.d.ts +8 -0
- package/alert-experimental/config/alert-config.d.ts +14 -0
- package/{modal/experimental → alert-experimental}/index.d.ts +1 -1
- package/alert-experimental/public_api.d.ts +4 -0
- package/alert-experimental/services/alert.controller.d.ts +20 -0
- package/button/button.component.d.ts +9 -8
- package/dropdown/dropdown.component.d.ts +2 -1
- package/esm2020/action-group/action-group.component.mjs +112 -0
- package/esm2020/action-group/kirbydesign-designsystem-action-group.mjs +5 -0
- package/esm2020/action-group/public_api.mjs +2 -0
- package/esm2020/alert-experimental/alert.component.mjs +76 -0
- package/esm2020/alert-experimental/alert.module.mjs +18 -0
- package/esm2020/alert-experimental/config/alert-config.mjs +2 -0
- package/esm2020/alert-experimental/kirbydesign-designsystem-alert-experimental.mjs +5 -0
- package/esm2020/alert-experimental/public_api.mjs +4 -0
- package/esm2020/alert-experimental/services/alert.controller.mjs +67 -0
- package/esm2020/button/button.component.mjs +54 -18
- package/esm2020/calendar/calendar.component.mjs +2 -2
- package/esm2020/dropdown/dropdown.component.mjs +15 -4
- package/esm2020/fab-sheet/fab-sheet.component.mjs +4 -1
- package/esm2020/header/header.component.mjs +76 -0
- package/esm2020/header/header.module.mjs +20 -0
- package/esm2020/header/kirbydesign-designsystem-header.mjs +5 -0
- package/esm2020/header/public_api.mjs +3 -0
- package/esm2020/item/item.component.mjs +6 -3
- package/esm2020/lib/components/page-local-navigation/page-local-navigation-item.mjs +1 -1
- package/esm2020/lib/components/segmented-control/segmented-control.component.mjs +1 -1
- package/esm2020/lib/index.mjs +3 -1
- package/esm2020/lib/kirby.module.mjs +21 -5
- package/esm2020/list/list-item/list-item.component.mjs +1 -1
- package/esm2020/modal/modal/action-sheet/action-sheet.component.mjs +2 -2
- package/esm2020/modal/modal/alert/alert.component.mjs +2 -2
- package/esm2020/modal/modal-wrapper/modal-wrapper.component.mjs +2 -2
- package/esm2020/modal/v2/footer/footer.component.mjs +26 -0
- package/esm2020/modal/v2/kirby-modal.module.mjs +39 -0
- package/esm2020/modal/v2/kirbydesign-designsystem-modal-v2.mjs +5 -0
- package/esm2020/modal/v2/modal/modal.component.mjs +92 -0
- package/esm2020/modal/v2/modal-routing/modal-routing.component.mjs +32 -0
- package/esm2020/modal/v2/public_api.mjs +7 -0
- package/esm2020/modal/v2/services/modal.controller.mjs +51 -0
- package/esm2020/modal/v2/wrapper/wrapper.component.mjs +36 -0
- package/esm2020/page/page.component.mjs +95 -48
- package/esm2020/page/page.module.mjs +6 -5
- package/esm2020/page/public_api.mjs +1 -2
- package/esm2020/progress-circle/progress-circle-ring.component.mjs +2 -3
- package/esm2020/progress-circle/progress-circle.component.mjs +4 -3
- package/esm2020/shared/fit-heading/fit-heading.directive.mjs +107 -0
- package/esm2020/shared/fit-heading/index.mjs +2 -0
- package/esm2020/shared/floating/floating.directive.mjs +303 -0
- package/esm2020/shared/floating/kirbydesign-designsystem-shared-floating.mjs +5 -0
- package/esm2020/shared/floating/public_api.mjs +2 -0
- package/esm2020/shared/portal/kirbydesign-designsystem-shared-portal.mjs +5 -0
- package/esm2020/shared/portal/portal.directive.mjs +78 -0
- package/esm2020/shared/portal/public_api.mjs +2 -0
- package/esm2020/shared/public_api.mjs +2 -1
- package/esm2020/testing-base/lib/directives/mock.fit-heading.directive.mjs +2 -2
- package/fab-sheet/fab-sheet.component.d.ts +3 -2
- package/fesm2015/kirbydesign-designsystem-accordion.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-action-group.mjs +120 -0
- package/fesm2015/kirbydesign-designsystem-action-group.mjs.map +1 -0
- package/fesm2015/kirbydesign-designsystem-alert-experimental.mjs +151 -0
- package/fesm2015/kirbydesign-designsystem-alert-experimental.mjs.map +1 -0
- package/fesm2015/kirbydesign-designsystem-avatar.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-button.mjs +54 -16
- package/fesm2015/kirbydesign-designsystem-button.mjs.map +1 -1
- package/fesm2015/kirbydesign-designsystem-calendar.mjs +2 -1
- package/fesm2015/kirbydesign-designsystem-calendar.mjs.map +1 -1
- package/fesm2015/kirbydesign-designsystem-card.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-chart.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-checkbox.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-data-table.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-divider.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-dropdown.mjs +15 -3
- package/fesm2015/kirbydesign-designsystem-dropdown.mjs.map +1 -1
- package/fesm2015/kirbydesign-designsystem-empty-state.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-fab-sheet.mjs +4 -0
- package/fesm2015/kirbydesign-designsystem-fab-sheet.mjs.map +1 -1
- package/fesm2015/kirbydesign-designsystem-flag.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-form-field.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-grid.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-header.mjs +98 -0
- package/fesm2015/kirbydesign-designsystem-header.mjs.map +1 -0
- package/fesm2015/kirbydesign-designsystem-helpers-scss.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-helpers.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-icon.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-item-group.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-item-sliding.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-item.mjs +7 -3
- package/fesm2015/kirbydesign-designsystem-item.mjs.map +1 -1
- package/fesm2015/kirbydesign-designsystem-kirby-app.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-kirby-ionic-module.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-list.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-list.mjs.map +1 -1
- package/fesm2015/kirbydesign-designsystem-loading-overlay.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-modal-v2.mjs +258 -0
- package/fesm2015/kirbydesign-designsystem-modal-v2.mjs.map +1 -0
- package/fesm2015/kirbydesign-designsystem-modal.mjs +4 -3
- package/fesm2015/kirbydesign-designsystem-modal.mjs.map +1 -1
- package/fesm2015/kirbydesign-designsystem-page.mjs +111 -159
- package/fesm2015/kirbydesign-designsystem-page.mjs.map +1 -1
- package/fesm2015/kirbydesign-designsystem-popover.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-progress-circle.mjs +4 -3
- package/fesm2015/kirbydesign-designsystem-progress-circle.mjs.map +1 -1
- package/fesm2015/kirbydesign-designsystem-radio.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-range.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-reorder-list.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-router-outlet.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-section-header.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-shared-floating.mjs +315 -0
- package/fesm2015/kirbydesign-designsystem-shared-floating.mjs.map +1 -0
- package/fesm2015/kirbydesign-designsystem-shared-portal.mjs +86 -0
- package/fesm2015/kirbydesign-designsystem-shared-portal.mjs.map +1 -0
- package/fesm2015/kirbydesign-designsystem-shared.mjs +104 -2
- package/fesm2015/kirbydesign-designsystem-shared.mjs.map +1 -1
- package/fesm2015/kirbydesign-designsystem-slide-button.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-slide.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-spinner.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-tabs.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-testing-base.mjs +3 -1
- package/fesm2015/kirbydesign-designsystem-testing-base.mjs.map +1 -1
- package/fesm2015/kirbydesign-designsystem-testing-jasmine.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-testing-jest.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-testing.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-toast.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-toggle-button.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-toggle.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem-types.mjs +1 -0
- package/fesm2015/kirbydesign-designsystem.mjs +23 -4
- package/fesm2015/kirbydesign-designsystem.mjs.map +1 -1
- package/fesm2020/kirbydesign-designsystem-accordion.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-action-group.mjs +120 -0
- package/fesm2020/kirbydesign-designsystem-action-group.mjs.map +1 -0
- package/fesm2020/kirbydesign-designsystem-alert-experimental.mjs +158 -0
- package/fesm2020/kirbydesign-designsystem-alert-experimental.mjs.map +1 -0
- package/fesm2020/kirbydesign-designsystem-avatar.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-button.mjs +53 -16
- package/fesm2020/kirbydesign-designsystem-button.mjs.map +1 -1
- package/fesm2020/kirbydesign-designsystem-calendar.mjs +2 -1
- package/fesm2020/kirbydesign-designsystem-calendar.mjs.map +1 -1
- package/fesm2020/kirbydesign-designsystem-card.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-chart.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-checkbox.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-data-table.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-divider.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-dropdown.mjs +15 -3
- package/fesm2020/kirbydesign-designsystem-dropdown.mjs.map +1 -1
- package/fesm2020/kirbydesign-designsystem-empty-state.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-fab-sheet.mjs +4 -0
- package/fesm2020/kirbydesign-designsystem-fab-sheet.mjs.map +1 -1
- package/fesm2020/kirbydesign-designsystem-flag.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-form-field.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-grid.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-header.mjs +101 -0
- package/fesm2020/kirbydesign-designsystem-header.mjs.map +1 -0
- package/fesm2020/kirbydesign-designsystem-helpers-scss.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-helpers.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-icon.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-item-group.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-item-sliding.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-item.mjs +7 -3
- package/fesm2020/kirbydesign-designsystem-item.mjs.map +1 -1
- package/fesm2020/kirbydesign-designsystem-kirby-app.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-kirby-ionic-module.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-list.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-list.mjs.map +1 -1
- package/fesm2020/kirbydesign-designsystem-loading-overlay.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-modal-v2.mjs +258 -0
- package/fesm2020/kirbydesign-designsystem-modal-v2.mjs.map +1 -0
- package/fesm2020/kirbydesign-designsystem-modal.mjs +4 -3
- package/fesm2020/kirbydesign-designsystem-modal.mjs.map +1 -1
- package/fesm2020/kirbydesign-designsystem-page.mjs +106 -159
- package/fesm2020/kirbydesign-designsystem-page.mjs.map +1 -1
- package/fesm2020/kirbydesign-designsystem-popover.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-progress-circle.mjs +4 -3
- package/fesm2020/kirbydesign-designsystem-progress-circle.mjs.map +1 -1
- package/fesm2020/kirbydesign-designsystem-radio.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-range.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-reorder-list.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-router-outlet.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-section-header.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-shared-floating.mjs +311 -0
- package/fesm2020/kirbydesign-designsystem-shared-floating.mjs.map +1 -0
- package/fesm2020/kirbydesign-designsystem-shared-portal.mjs +86 -0
- package/fesm2020/kirbydesign-designsystem-shared-portal.mjs.map +1 -0
- package/fesm2020/kirbydesign-designsystem-shared.mjs +104 -2
- package/fesm2020/kirbydesign-designsystem-shared.mjs.map +1 -1
- package/fesm2020/kirbydesign-designsystem-slide-button.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-slide.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-spinner.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-tabs.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-testing-base.mjs +3 -1
- package/fesm2020/kirbydesign-designsystem-testing-base.mjs.map +1 -1
- package/fesm2020/kirbydesign-designsystem-testing-jasmine.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-testing-jest.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-testing.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-toast.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-toggle-button.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-toggle.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem-types.mjs +1 -0
- package/fesm2020/kirbydesign-designsystem.mjs +23 -4
- package/fesm2020/kirbydesign-designsystem.mjs.map +1 -1
- package/header/header.component.d.ts +28 -0
- package/header/header.module.d.ts +9 -0
- package/header/index.d.ts +5 -0
- package/header/public_api.d.ts +2 -0
- package/icon/src/README.md +16 -0
- package/item/item.component.d.ts +1 -1
- package/lib/components/page-local-navigation/page-local-navigation-item.d.ts +5 -8
- package/lib/components/segmented-control/segmented-control.component.d.ts +2 -2
- package/lib/index.d.ts +2 -0
- package/lib/kirby.module.d.ts +40 -38
- package/list/list-item/list-item.component.d.ts +1 -1
- package/modal/modal/alert/alert.component.d.ts +2 -1
- package/modal/v2/footer/footer.component.d.ts +7 -0
- package/modal/v2/index.d.ts +5 -0
- package/modal/{experimental → v2}/kirby-modal.module.d.ts +1 -1
- package/modal/{experimental → v2}/modal/modal.component.d.ts +13 -4
- package/modal/{experimental → v2}/modal-routing/modal-routing.component.d.ts +3 -3
- package/modal/v2/public_api.d.ts +6 -0
- package/modal/{experimental → v2}/services/modal.controller.d.ts +11 -6
- package/modal/{experimental → v2}/wrapper/wrapper.component.d.ts +6 -3
- package/package.json +56 -15
- package/page/page.component.d.ts +18 -9
- package/page/page.module.d.ts +3 -2
- package/page/public_api.d.ts +0 -1
- package/{page → shared}/fit-heading/fit-heading.directive.d.ts +1 -1
- package/shared/floating/floating.directive.d.ts +109 -0
- package/shared/floating/index.d.ts +5 -0
- package/shared/floating/public_api.d.ts +1 -0
- package/shared/portal/index.d.ts +5 -0
- package/shared/portal/portal.directive.d.ts +34 -0
- package/shared/portal/public_api.d.ts +1 -0
- package/shared/public_api.d.ts +1 -0
- package/testing-base/lib/directives/mock.fit-heading.directive.d.ts +1 -1
- package/README.md +0 -7
- package/esm2020/modal/experimental/footer/footer.component.mjs +0 -26
- package/esm2020/modal/experimental/kirby-modal.module.mjs +0 -39
- package/esm2020/modal/experimental/kirbydesign-designsystem-modal-experimental.mjs +0 -5
- package/esm2020/modal/experimental/modal/modal.component.mjs +0 -72
- package/esm2020/modal/experimental/modal-routing/modal-routing.component.mjs +0 -32
- package/esm2020/modal/experimental/public_api.mjs +0 -7
- package/esm2020/modal/experimental/services/modal.controller.mjs +0 -50
- package/esm2020/modal/experimental/wrapper/wrapper.component.mjs +0 -33
- package/esm2020/page/fit-heading/fit-heading.directive.mjs +0 -107
- package/esm2020/page/fit-heading/index.mjs +0 -2
- package/fesm2015/kirbydesign-designsystem-modal-experimental.mjs +0 -233
- package/fesm2015/kirbydesign-designsystem-modal-experimental.mjs.map +0 -1
- package/fesm2020/kirbydesign-designsystem-modal-experimental.mjs +0 -233
- package/fesm2020/kirbydesign-designsystem-modal-experimental.mjs.map +0 -1
- package/modal/experimental/footer/footer.component.d.ts +0 -7
- package/modal/experimental/public_api.d.ts +0 -6
- /package/{page → shared}/fit-heading/index.d.ts +0 -0
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { AfterContentInit, AfterViewInit, ElementRef, Renderer2 } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export declare class ActionGroupComponent implements AfterContentInit, AfterViewInit {
|
|
4
|
+
private renderer;
|
|
5
|
+
private elementRef;
|
|
6
|
+
visibleActions: number;
|
|
7
|
+
emphasizeActions?: boolean;
|
|
8
|
+
placement: 'left' | 'right';
|
|
9
|
+
private buttonElements;
|
|
10
|
+
private buttons;
|
|
11
|
+
private hiddenLayer;
|
|
12
|
+
private dropdown;
|
|
13
|
+
_isCollapsed: boolean;
|
|
14
|
+
_collapsedActions: string[];
|
|
15
|
+
private _nonCollapsibleVisibleActions;
|
|
16
|
+
private hiddenButtons;
|
|
17
|
+
constructor(renderer: Renderer2, elementRef: ElementRef<HTMLElement>);
|
|
18
|
+
ngAfterContentInit(): void;
|
|
19
|
+
set isCondensed(value: boolean);
|
|
20
|
+
ngAfterViewInit(): void;
|
|
21
|
+
onDropdownActionSelect(): void;
|
|
22
|
+
private initializeCollapsing;
|
|
23
|
+
private moveButtons;
|
|
24
|
+
private toggleDropdown;
|
|
25
|
+
private populateDropdown;
|
|
26
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ActionGroupComponent, never>;
|
|
27
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ActionGroupComponent, "kirby-action-group", never, { "visibleActions": "visibleActions"; "emphasizeActions": "emphasizeActions"; "placement": "placement"; }, {}, ["buttonElements", "buttons"], ["button[kirby-button]"], true, never>;
|
|
28
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { ActionGroupComponent } from './action-group.component';
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { AfterViewInit, ElementRef } from '@angular/core';
|
|
2
|
+
import { WindowRef } from '@kirbydesign/designsystem/types';
|
|
3
|
+
import { Observable } from 'rxjs';
|
|
4
|
+
import { ThemeColor } from '@kirbydesign/designsystem/helpers';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export declare class AlertExperimentalComponent implements AfterViewInit {
|
|
7
|
+
private elementRef;
|
|
8
|
+
private windowRef;
|
|
9
|
+
readonly BLUR_WRAPPER_DELAY_IN_MS = 50;
|
|
10
|
+
private alertWrapper;
|
|
11
|
+
private scrollY;
|
|
12
|
+
title$: Observable<string>;
|
|
13
|
+
set title(title: string | Observable<string>);
|
|
14
|
+
message$: Observable<string>;
|
|
15
|
+
set message(message: string & Observable<string>);
|
|
16
|
+
iconName: string;
|
|
17
|
+
iconThemeColor: ThemeColor | `${ThemeColor}`;
|
|
18
|
+
okButton: string;
|
|
19
|
+
okButtonIsDestructive: boolean;
|
|
20
|
+
cancelButton: string;
|
|
21
|
+
constructor(elementRef: ElementRef<HTMLElement>, windowRef: WindowRef);
|
|
22
|
+
ngAfterViewInit(): void;
|
|
23
|
+
onFocusChange(): void;
|
|
24
|
+
cancelAlert(): void;
|
|
25
|
+
approveAlert(): void;
|
|
26
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AlertExperimentalComponent, never>;
|
|
27
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AlertExperimentalComponent, "kirby-alert-experimental", never, { "title": "title"; "message": "message"; "iconName": "iconName"; "iconThemeColor": "iconThemeColor"; "okButton": "okButton"; "okButtonIsDestructive": "okButtonIsDestructive"; "cancelButton": "cancelButton"; }, {}, never, never, true, never>;
|
|
28
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
import * as i1 from "@angular/common";
|
|
3
|
+
import * as i2 from "./alert.component";
|
|
4
|
+
export declare class AlertExperimentalModule {
|
|
5
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AlertExperimentalModule, never>;
|
|
6
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<AlertExperimentalModule, never, [typeof i1.CommonModule, typeof i2.AlertExperimentalComponent], never>;
|
|
7
|
+
static ɵinj: i0.ɵɵInjectorDeclaration<AlertExperimentalModule>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Observable } from 'rxjs';
|
|
2
|
+
export interface AlertExperimentalConfig {
|
|
3
|
+
title: string | Observable<string>;
|
|
4
|
+
message?: string | Observable<string>;
|
|
5
|
+
cancelButton?: string;
|
|
6
|
+
icon?: {
|
|
7
|
+
name: string;
|
|
8
|
+
themeColor?: string;
|
|
9
|
+
};
|
|
10
|
+
okButton?: string | {
|
|
11
|
+
text: string;
|
|
12
|
+
isDestructive: boolean;
|
|
13
|
+
};
|
|
14
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { ModalController } from '@ionic/angular';
|
|
2
|
+
import { Observable } from 'rxjs';
|
|
3
|
+
import { OverlayEventDetail } from '@ionic/core/components';
|
|
4
|
+
import { AlertExperimentalConfig } from '../config/alert-config';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
declare type AlertDismissObservables = {
|
|
7
|
+
onWillDismiss: Observable<OverlayEventDetail>;
|
|
8
|
+
onDidDismiss: Observable<OverlayEventDetail>;
|
|
9
|
+
};
|
|
10
|
+
export declare class AlertExperimentalController {
|
|
11
|
+
private ionicModalController;
|
|
12
|
+
constructor(ionicModalController: ModalController);
|
|
13
|
+
showAlert(config: AlertExperimentalConfig): AlertDismissObservables;
|
|
14
|
+
private getComponentProps;
|
|
15
|
+
private getOkButton;
|
|
16
|
+
getOkButtonIsDestructive(config: any): any;
|
|
17
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AlertExperimentalController, never>;
|
|
18
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<AlertExperimentalController>;
|
|
19
|
+
}
|
|
20
|
+
export {};
|
|
@@ -1,14 +1,15 @@
|
|
|
1
|
-
import { AfterContentInit, ElementRef } from '@angular/core';
|
|
1
|
+
import { AfterContentInit, ElementRef, Renderer2 } from '@angular/core';
|
|
2
2
|
import { NotificationColor } from '@kirbydesign/core';
|
|
3
|
-
import { IconComponent } from '@kirbydesign/designsystem/icon';
|
|
4
3
|
import * as i0 from "@angular/core";
|
|
5
4
|
export declare enum ButtonSize {
|
|
5
|
+
XS = "xs",
|
|
6
6
|
SM = "sm",
|
|
7
7
|
MD = "md",
|
|
8
8
|
LG = "lg"
|
|
9
9
|
}
|
|
10
10
|
export declare class ButtonComponent implements AfterContentInit {
|
|
11
11
|
private elementRef;
|
|
12
|
+
private renderer;
|
|
12
13
|
isAttentionLevel1: boolean;
|
|
13
14
|
isAttentionLevel2: boolean;
|
|
14
15
|
isAttentionLevel3: boolean;
|
|
@@ -21,16 +22,16 @@ export declare class ButtonComponent implements AfterContentInit {
|
|
|
21
22
|
get isIconLeft(): boolean;
|
|
22
23
|
private _isIconRight;
|
|
23
24
|
get isIconRight(): boolean;
|
|
24
|
-
get _cssClass(): ("success" | "warning" | "danger" | "sm" | "md" | "lg" | ButtonSize)[];
|
|
25
|
+
get _cssClass(): ("success" | "warning" | "danger" | "xs" | "sm" | "md" | "lg" | ButtonSize)[];
|
|
25
26
|
themeColor: NotificationColor;
|
|
26
27
|
expand: 'full' | 'block';
|
|
27
28
|
isFloating: boolean;
|
|
28
29
|
size: ButtonSize | `${ButtonSize}`;
|
|
29
|
-
|
|
30
|
-
iconElementRef
|
|
31
|
-
|
|
32
|
-
|
|
30
|
+
showIconOnly: boolean;
|
|
31
|
+
iconElementRef?: ElementRef<HTMLElement>;
|
|
32
|
+
constructor(elementRef: ElementRef<HTMLElement>, renderer: Renderer2);
|
|
33
|
+
private wrapTextNode;
|
|
33
34
|
ngAfterContentInit(): void;
|
|
34
35
|
static ɵfac: i0.ɵɵFactoryDeclaration<ButtonComponent, never>;
|
|
35
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<ButtonComponent, "button[kirby-button],Button[kirby-button]", never, { "attentionLevel": "attentionLevel"; "noDecoration": "noDecoration"; "themeColor": "themeColor"; "expand": "expand"; "isFloating": "isFloating"; "size": "size"; }, {}, ["
|
|
36
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ButtonComponent, "button[kirby-button],Button[kirby-button]", never, { "attentionLevel": "attentionLevel"; "noDecoration": "noDecoration"; "themeColor": "themeColor"; "expand": "expand"; "isFloating": "isFloating"; "size": "size"; "showIconOnly": "showIconOnly"; }, {}, ["iconElementRef"], ["*"], true, never>;
|
|
36
37
|
}
|
|
@@ -33,6 +33,7 @@ export declare class DropdownComponent implements AfterViewInit, OnDestroy, Cont
|
|
|
33
33
|
size: 'sm' | 'md';
|
|
34
34
|
tabindex: number;
|
|
35
35
|
usePopover: boolean;
|
|
36
|
+
_isMoreMenu: boolean;
|
|
36
37
|
get _tabindex(): number;
|
|
37
38
|
get _noBlurOnScroll(): boolean;
|
|
38
39
|
/**
|
|
@@ -124,5 +125,5 @@ export declare class DropdownComponent implements AfterViewInit, OnDestroy, Cont
|
|
|
124
125
|
private unlistenAllSlottedItems;
|
|
125
126
|
ngOnDestroy(): void;
|
|
126
127
|
static ɵfac: i0.ɵɵFactoryDeclaration<DropdownComponent, never>;
|
|
127
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<DropdownComponent, "kirby-dropdown", never, { "items": "items"; "selectedIndex": "selectedIndex"; "focusedIndex": "focusedIndex"; "itemTextProperty": "itemTextProperty"; "placeholder": "placeholder"; "popout": "popout"; "attentionLevel": "attentionLevel"; "expand": "expand"; "disabled": "disabled"; "hasError": "hasError"; "size": "size"; "tabindex": "tabindex"; "usePopover": "usePopover"; }, { "change": "change"; }, ["itemTemplate", "slottedItems", "kirbyItemsSlotted"], never, false, never>;
|
|
128
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<DropdownComponent, "kirby-dropdown", never, { "items": "items"; "selectedIndex": "selectedIndex"; "focusedIndex": "focusedIndex"; "itemTextProperty": "itemTextProperty"; "placeholder": "placeholder"; "popout": "popout"; "attentionLevel": "attentionLevel"; "expand": "expand"; "disabled": "disabled"; "hasError": "hasError"; "size": "size"; "tabindex": "tabindex"; "usePopover": "usePopover"; "_isMoreMenu": "_isMoreMenu"; }, { "change": "change"; }, ["itemTemplate", "slottedItems", "kirbyItemsSlotted"], never, false, never>;
|
|
128
129
|
}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { ChangeDetectionStrategy, Component, ContentChildren, ElementRef, HostBinding, Input, QueryList, Renderer2, ViewChild, } from '@angular/core';
|
|
3
|
+
import { ButtonComponent } from '@kirbydesign/designsystem/button';
|
|
4
|
+
import { DropdownComponent, DropdownModule } from '@kirbydesign/designsystem/dropdown';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@angular/common";
|
|
7
|
+
import * as i2 from "@kirbydesign/designsystem/dropdown";
|
|
8
|
+
export class ActionGroupComponent {
|
|
9
|
+
constructor(renderer, elementRef) {
|
|
10
|
+
this.renderer = renderer;
|
|
11
|
+
this.elementRef = elementRef;
|
|
12
|
+
this.placement = 'right';
|
|
13
|
+
this._collapsedActions = [];
|
|
14
|
+
this._nonCollapsibleVisibleActions = 2;
|
|
15
|
+
}
|
|
16
|
+
ngAfterContentInit() {
|
|
17
|
+
const isInToolbar = this.elementRef.nativeElement.closest('ion-toolbar');
|
|
18
|
+
const emphasizeActions = !!this.elementRef.nativeElement.closest('.actions.emphasize');
|
|
19
|
+
if (isInToolbar || emphasizeActions === false) {
|
|
20
|
+
// Setting default visible actions to 1:
|
|
21
|
+
this.visibleActions = 1;
|
|
22
|
+
}
|
|
23
|
+
if (isInToolbar) {
|
|
24
|
+
this.isCondensed = true;
|
|
25
|
+
this.placement = 'right';
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
set isCondensed(value) {
|
|
29
|
+
this.buttons.forEach((button) => (button.showIconOnly = value));
|
|
30
|
+
}
|
|
31
|
+
ngAfterViewInit() {
|
|
32
|
+
if (this.visibleActions) {
|
|
33
|
+
this.initializeCollapsing();
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
onDropdownActionSelect() {
|
|
37
|
+
const selectedIndex = this.dropdown.selectedIndex;
|
|
38
|
+
const selectedAction = this.hiddenButtons[selectedIndex];
|
|
39
|
+
// Dropdown should not persist selected item, we want it to be re-selectable
|
|
40
|
+
this.dropdown.selectedIndex = -1;
|
|
41
|
+
if (selectedAction) {
|
|
42
|
+
const event = new PointerEvent('click', {
|
|
43
|
+
bubbles: true,
|
|
44
|
+
cancelable: true,
|
|
45
|
+
view: window,
|
|
46
|
+
});
|
|
47
|
+
selectedAction.dispatchEvent(event);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
initializeCollapsing() {
|
|
51
|
+
if (this.buttonElements.length <= this._nonCollapsibleVisibleActions)
|
|
52
|
+
return;
|
|
53
|
+
this.moveButtons();
|
|
54
|
+
this.populateDropdown();
|
|
55
|
+
this.toggleDropdown();
|
|
56
|
+
}
|
|
57
|
+
moveButtons() {
|
|
58
|
+
const buttonsToHide = [...this.buttonElements].slice(this.visibleActions);
|
|
59
|
+
buttonsToHide.forEach((button) => {
|
|
60
|
+
this.renderer.appendChild(this.hiddenLayer.nativeElement, button.nativeElement);
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
toggleDropdown() {
|
|
64
|
+
if (this.hiddenLayer.nativeElement.childElementCount === 0) {
|
|
65
|
+
this._isCollapsed = false;
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
this._isCollapsed = true;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
populateDropdown() {
|
|
72
|
+
/*
|
|
73
|
+
* This function extracts the button text of all hidden buttons
|
|
74
|
+
* and updates the array used to populate the dropdown with items.
|
|
75
|
+
* It also maps the extracted text to the actual button element, for use when
|
|
76
|
+
* firing the matching buttons click-event in onDropdownActionSelect
|
|
77
|
+
*/
|
|
78
|
+
this.hiddenButtons = Array.from(this.hiddenLayer.nativeElement.children);
|
|
79
|
+
this._collapsedActions = this.hiddenButtons.map((button) => button.textContent.trim());
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
/** @nocollapse */ ActionGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ActionGroupComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
83
|
+
/** @nocollapse */ ActionGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: ActionGroupComponent, isStandalone: true, selector: "kirby-action-group", inputs: { visibleActions: "visibleActions", emphasizeActions: "emphasizeActions", placement: "placement" }, host: { properties: { "class": "this.placement", "class.is-collapsed": "this._isCollapsed" } }, queries: [{ propertyName: "buttonElements", predicate: ButtonComponent, read: ElementRef }, { propertyName: "buttons", predicate: ButtonComponent }], viewQueries: [{ propertyName: "hiddenLayer", first: true, predicate: ["hiddenLayer"], descendants: true, read: ElementRef }, { propertyName: "dropdown", first: true, predicate: DropdownComponent, descendants: true }], ngImport: i0, template: "<div *ngIf=\"placement === 'right'\" class=\"hidden-layer\" #hiddenLayer></div>\n<ng-content select=\"button[kirby-button]\"></ng-content>\n\n<kirby-dropdown\n [items]=\"_collapsedActions\"\n [usePopover]=\"true\"\n [_isMoreMenu]=\"true\"\n popout=\"left\"\n (change)=\"onDropdownActionSelect()\"\n></kirby-dropdown>\n<div *ngIf=\"placement === 'left'\" class=\"hidden-layer\" #hiddenLayer></div>\n", styles: [":host{display:flex;position:relative;overflow:hidden}:host(.right){justify-content:flex-end}:host(.is-collapsed) kirby-dropdown{display:inline-block}.hidden-layer{position:absolute;visibility:hidden;display:flex;flex-direction:row;justify-content:flex-end}kirby-dropdown{margin:4px;display:none;z-index:1}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: DropdownModule }, { kind: "component", type: i2.DropdownComponent, selector: "kirby-dropdown", inputs: ["items", "selectedIndex", "focusedIndex", "itemTextProperty", "placeholder", "popout", "attentionLevel", "expand", "disabled", "hasError", "size", "tabindex", "usePopover", "_isMoreMenu"], outputs: ["change"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
84
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ActionGroupComponent, decorators: [{
|
|
85
|
+
type: Component,
|
|
86
|
+
args: [{ selector: 'kirby-action-group', standalone: true, imports: [CommonModule, ButtonComponent, DropdownModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"placement === 'right'\" class=\"hidden-layer\" #hiddenLayer></div>\n<ng-content select=\"button[kirby-button]\"></ng-content>\n\n<kirby-dropdown\n [items]=\"_collapsedActions\"\n [usePopover]=\"true\"\n [_isMoreMenu]=\"true\"\n popout=\"left\"\n (change)=\"onDropdownActionSelect()\"\n></kirby-dropdown>\n<div *ngIf=\"placement === 'left'\" class=\"hidden-layer\" #hiddenLayer></div>\n", styles: [":host{display:flex;position:relative;overflow:hidden}:host(.right){justify-content:flex-end}:host(.is-collapsed) kirby-dropdown{display:inline-block}.hidden-layer{position:absolute;visibility:hidden;display:flex;flex-direction:row;justify-content:flex-end}kirby-dropdown{margin:4px;display:none;z-index:1}\n"] }]
|
|
87
|
+
}], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }]; }, propDecorators: { visibleActions: [{
|
|
88
|
+
type: Input
|
|
89
|
+
}], emphasizeActions: [{
|
|
90
|
+
type: Input
|
|
91
|
+
}], placement: [{
|
|
92
|
+
type: HostBinding,
|
|
93
|
+
args: ['class']
|
|
94
|
+
}, {
|
|
95
|
+
type: Input
|
|
96
|
+
}], buttonElements: [{
|
|
97
|
+
type: ContentChildren,
|
|
98
|
+
args: [ButtonComponent, { read: ElementRef }]
|
|
99
|
+
}], buttons: [{
|
|
100
|
+
type: ContentChildren,
|
|
101
|
+
args: [ButtonComponent]
|
|
102
|
+
}], hiddenLayer: [{
|
|
103
|
+
type: ViewChild,
|
|
104
|
+
args: ['hiddenLayer', { read: ElementRef }]
|
|
105
|
+
}], dropdown: [{
|
|
106
|
+
type: ViewChild,
|
|
107
|
+
args: [DropdownComponent]
|
|
108
|
+
}], _isCollapsed: [{
|
|
109
|
+
type: HostBinding,
|
|
110
|
+
args: ['class.is-collapsed']
|
|
111
|
+
}] } });
|
|
112
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvZGVzaWduc3lzdGVtL2FjdGlvbi1ncm91cC9zcmMvYWN0aW9uLWdyb3VwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2xpYnMvZGVzaWduc3lzdGVtL2FjdGlvbi1ncm91cC9zcmMvYWN0aW9uLWdyb3VwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBR0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxlQUFlLEVBQ2YsVUFBVSxFQUNWLFdBQVcsRUFDWCxLQUFLLEVBQ0wsU0FBUyxFQUNULFNBQVMsRUFDVCxTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7OztBQVV2RixNQUFNLE9BQU8sb0JBQW9CO0lBNEIvQixZQUFvQixRQUFtQixFQUFVLFVBQW1DO1FBQWhFLGFBQVEsR0FBUixRQUFRLENBQVc7UUFBVSxlQUFVLEdBQVYsVUFBVSxDQUF5QjtRQXJCcEYsY0FBUyxHQUFxQixPQUFPLENBQUM7UUFldEMsc0JBQWlCLEdBQWEsRUFBRSxDQUFDO1FBRXpCLGtDQUE2QixHQUFXLENBQUMsQ0FBQztJQUlxQyxDQUFDO0lBRXhGLGtCQUFrQjtRQUNoQixNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDekUsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFDdkYsSUFBSSxXQUFXLElBQUksZ0JBQWdCLEtBQUssS0FBSyxFQUFFO1lBQzdDLHdDQUF3QztZQUN4QyxJQUFJLENBQUMsY0FBYyxHQUFHLENBQUMsQ0FBQztTQUN6QjtRQUNELElBQUksV0FBVyxFQUFFO1lBQ2YsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7WUFDeEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUM7U0FDMUI7SUFDSCxDQUFDO0lBRUQsSUFBVyxXQUFXLENBQUMsS0FBYztRQUNuQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDdkIsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7U0FDN0I7SUFDSCxDQUFDO0lBRUQsc0JBQXNCO1FBQ3BCLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDO1FBQ2xELE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLENBQUM7UUFFekQsNEVBQTRFO1FBQzVFLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBRWpDLElBQUksY0FBYyxFQUFFO1lBQ2xCLE1BQU0sS0FBSyxHQUFHLElBQUksWUFBWSxDQUFDLE9BQU8sRUFBRTtnQkFDdEMsT0FBTyxFQUFFLElBQUk7Z0JBQ2IsVUFBVSxFQUFFLElBQUk7Z0JBQ2hCLElBQUksRUFBRSxNQUFNO2FBQ2IsQ0FBQyxDQUFDO1lBRUgsY0FBYyxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNyQztJQUNILENBQUM7SUFFTyxvQkFBb0I7UUFDMUIsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsNkJBQTZCO1lBQUUsT0FBTztRQUM3RSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFTyxXQUFXO1FBQ2pCLE1BQU0sYUFBYSxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUMxRSxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDL0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLEVBQUUsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ2xGLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGNBQWM7UUFDcEIsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsS0FBSyxDQUFDLEVBQUU7WUFDMUQsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7U0FDM0I7YUFBTTtZQUNMLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO1NBQzFCO0lBQ0gsQ0FBQztJQUVPLGdCQUFnQjtRQUN0Qjs7Ozs7V0FLRztRQUVILElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQXdCLENBQUM7UUFDaEcsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7SUFDekYsQ0FBQzs7b0lBdkdVLG9CQUFvQjt3SEFBcEIsb0JBQW9CLHlUQVNkLGVBQWUsUUFBVSxVQUFVLDBDQUduQyxlQUFlLG9IQUNFLFVBQVUsd0RBS2pDLGlCQUFpQixnREMzQzlCLHFaQVdBLDRXRFNZLFlBQVksa0lBQW1CLGNBQWM7MkZBSzVDLG9CQUFvQjtrQkFSaEMsU0FBUzsrQkFDRSxvQkFBb0IsY0FDbEIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLGVBQWUsRUFBRSxjQUFjLENBQUMsbUJBQ3ZDLHVCQUF1QixDQUFDLE1BQU07eUhBS3RDLGNBQWM7c0JBQXRCLEtBQUs7Z0JBRUcsZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUlOLFNBQVM7c0JBRlIsV0FBVzt1QkFBQyxPQUFPOztzQkFDbkIsS0FBSztnQkFHMEQsY0FBYztzQkFBN0UsZUFBZTt1QkFBQyxlQUFlLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFO2dCQUdaLE9BQU87c0JBQWhELGVBQWU7dUJBQUMsZUFBZTtnQkFDd0IsV0FBVztzQkFBbEUsU0FBUzt1QkFBQyxhQUFhLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFO2dCQUtSLFFBQVE7c0JBQTdDLFNBQVM7dUJBQUMsaUJBQWlCO2dCQUc1QixZQUFZO3NCQURYLFdBQVc7dUJBQUMsb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIEFmdGVyQ29udGVudEluaXQsXG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgRWxlbWVudFJlZixcbiAgSG9zdEJpbmRpbmcsXG4gIElucHV0LFxuICBRdWVyeUxpc3QsXG4gIFJlbmRlcmVyMixcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ0BraXJieWRlc2lnbi9kZXNpZ25zeXN0ZW0vYnV0dG9uJztcbmltcG9ydCB7IERyb3Bkb3duQ29tcG9uZW50LCBEcm9wZG93bk1vZHVsZSB9IGZyb20gJ0BraXJieWRlc2lnbi9kZXNpZ25zeXN0ZW0vZHJvcGRvd24nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdraXJieS1hY3Rpb24tZ3JvdXAnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBCdXR0b25Db21wb25lbnQsIERyb3Bkb3duTW9kdWxlXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlVXJsOiAnLi9hY3Rpb24tZ3JvdXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hY3Rpb24tZ3JvdXAuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQWN0aW9uR3JvdXBDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBBZnRlclZpZXdJbml0IHtcbiAgQElucHV0KCkgdmlzaWJsZUFjdGlvbnM6IG51bWJlcjtcblxuICBASW5wdXQoKSBlbXBoYXNpemVBY3Rpb25zPzogYm9vbGVhbjtcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgQElucHV0KClcbiAgcGxhY2VtZW50OiAnbGVmdCcgfCAncmlnaHQnID0gJ3JpZ2h0JztcblxuICBAQ29udGVudENoaWxkcmVuKEJ1dHRvbkNvbXBvbmVudCwgeyByZWFkOiBFbGVtZW50UmVmIH0pIHByaXZhdGUgYnV0dG9uRWxlbWVudHMhOiBRdWVyeUxpc3Q8XG4gICAgRWxlbWVudFJlZjxIVE1MQnV0dG9uRWxlbWVudD5cbiAgPjtcbiAgQENvbnRlbnRDaGlsZHJlbihCdXR0b25Db21wb25lbnQpIHByaXZhdGUgYnV0dG9uczogUXVlcnlMaXN0PEJ1dHRvbkNvbXBvbmVudD47XG4gIEBWaWV3Q2hpbGQoJ2hpZGRlbkxheWVyJywgeyByZWFkOiBFbGVtZW50UmVmIH0pIHByaXZhdGUgaGlkZGVuTGF5ZXIhOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcbiAgLypcbiAgICogVEVNUE9SQVJZIE1PUkUtTUVOVVxuICAgKiBkcm9wZG93biBWaWV3Q2hpbGQgaXMgb25seSB1c2VkIGZvciB0ZW1wb3JhcnkgbW9yZS1tZW51XG4gICAqL1xuICBAVmlld0NoaWxkKERyb3Bkb3duQ29tcG9uZW50KSBwcml2YXRlIGRyb3Bkb3duITogRHJvcGRvd25Db21wb25lbnQ7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pcy1jb2xsYXBzZWQnKVxuICBfaXNDb2xsYXBzZWQ6IGJvb2xlYW47XG4gIF9jb2xsYXBzZWRBY3Rpb25zOiBzdHJpbmdbXSA9IFtdO1xuXG4gIHByaXZhdGUgX25vbkNvbGxhcHNpYmxlVmlzaWJsZUFjdGlvbnM6IG51bWJlciA9IDI7XG5cbiAgcHJpdmF0ZSBoaWRkZW5CdXR0b25zOiBIVE1MQnV0dG9uRWxlbWVudFtdO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMiwgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50Pikge31cblxuICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgY29uc3QgaXNJblRvb2xiYXIgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jbG9zZXN0KCdpb24tdG9vbGJhcicpO1xuICAgIGNvbnN0IGVtcGhhc2l6ZUFjdGlvbnMgPSAhIXRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNsb3Nlc3QoJy5hY3Rpb25zLmVtcGhhc2l6ZScpO1xuICAgIGlmIChpc0luVG9vbGJhciB8fCBlbXBoYXNpemVBY3Rpb25zID09PSBmYWxzZSkge1xuICAgICAgLy8gU2V0dGluZyBkZWZhdWx0IHZpc2libGUgYWN0aW9ucyB0byAxOlxuICAgICAgdGhpcy52aXNpYmxlQWN0aW9ucyA9IDE7XG4gICAgfVxuICAgIGlmIChpc0luVG9vbGJhcikge1xuICAgICAgdGhpcy5pc0NvbmRlbnNlZCA9IHRydWU7XG4gICAgICB0aGlzLnBsYWNlbWVudCA9ICdyaWdodCc7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHNldCBpc0NvbmRlbnNlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuYnV0dG9ucy5mb3JFYWNoKChidXR0b24pID0+IChidXR0b24uc2hvd0ljb25Pbmx5ID0gdmFsdWUpKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy52aXNpYmxlQWN0aW9ucykge1xuICAgICAgdGhpcy5pbml0aWFsaXplQ29sbGFwc2luZygpO1xuICAgIH1cbiAgfVxuXG4gIG9uRHJvcGRvd25BY3Rpb25TZWxlY3QoKSB7XG4gICAgY29uc3Qgc2VsZWN0ZWRJbmRleCA9IHRoaXMuZHJvcGRvd24uc2VsZWN0ZWRJbmRleDtcbiAgICBjb25zdCBzZWxlY3RlZEFjdGlvbiA9IHRoaXMuaGlkZGVuQnV0dG9uc1tzZWxlY3RlZEluZGV4XTtcblxuICAgIC8vIERyb3Bkb3duIHNob3VsZCBub3QgcGVyc2lzdCBzZWxlY3RlZCBpdGVtLCB3ZSB3YW50IGl0IHRvIGJlIHJlLXNlbGVjdGFibGVcbiAgICB0aGlzLmRyb3Bkb3duLnNlbGVjdGVkSW5kZXggPSAtMTtcblxuICAgIGlmIChzZWxlY3RlZEFjdGlvbikge1xuICAgICAgY29uc3QgZXZlbnQgPSBuZXcgUG9pbnRlckV2ZW50KCdjbGljaycsIHtcbiAgICAgICAgYnViYmxlczogdHJ1ZSxcbiAgICAgICAgY2FuY2VsYWJsZTogdHJ1ZSxcbiAgICAgICAgdmlldzogd2luZG93LFxuICAgICAgfSk7XG5cbiAgICAgIHNlbGVjdGVkQWN0aW9uLmRpc3BhdGNoRXZlbnQoZXZlbnQpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaW5pdGlhbGl6ZUNvbGxhcHNpbmcoKSB7XG4gICAgaWYgKHRoaXMuYnV0dG9uRWxlbWVudHMubGVuZ3RoIDw9IHRoaXMuX25vbkNvbGxhcHNpYmxlVmlzaWJsZUFjdGlvbnMpIHJldHVybjtcbiAgICB0aGlzLm1vdmVCdXR0b25zKCk7XG4gICAgdGhpcy5wb3B1bGF0ZURyb3Bkb3duKCk7XG4gICAgdGhpcy50b2dnbGVEcm9wZG93bigpO1xuICB9XG5cbiAgcHJpdmF0ZSBtb3ZlQnV0dG9ucygpIHtcbiAgICBjb25zdCBidXR0b25zVG9IaWRlID0gWy4uLnRoaXMuYnV0dG9uRWxlbWVudHNdLnNsaWNlKHRoaXMudmlzaWJsZUFjdGlvbnMpO1xuICAgIGJ1dHRvbnNUb0hpZGUuZm9yRWFjaCgoYnV0dG9uKSA9PiB7XG4gICAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHRoaXMuaGlkZGVuTGF5ZXIubmF0aXZlRWxlbWVudCwgYnV0dG9uLm5hdGl2ZUVsZW1lbnQpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSB0b2dnbGVEcm9wZG93bigpIHtcbiAgICBpZiAodGhpcy5oaWRkZW5MYXllci5uYXRpdmVFbGVtZW50LmNoaWxkRWxlbWVudENvdW50ID09PSAwKSB7XG4gICAgICB0aGlzLl9pc0NvbGxhcHNlZCA9IGZhbHNlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9pc0NvbGxhcHNlZCA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBwb3B1bGF0ZURyb3Bkb3duKCkge1xuICAgIC8qXG4gICAgICogVGhpcyBmdW5jdGlvbiBleHRyYWN0cyB0aGUgYnV0dG9uIHRleHQgb2YgYWxsIGhpZGRlbiBidXR0b25zXG4gICAgICogYW5kIHVwZGF0ZXMgdGhlIGFycmF5IHVzZWQgdG8gcG9wdWxhdGUgdGhlIGRyb3Bkb3duIHdpdGggaXRlbXMuXG4gICAgICogSXQgYWxzbyBtYXBzIHRoZSBleHRyYWN0ZWQgdGV4dCB0byB0aGUgYWN0dWFsIGJ1dHRvbiBlbGVtZW50LCBmb3IgdXNlIHdoZW5cbiAgICAgKiBmaXJpbmcgdGhlIG1hdGNoaW5nIGJ1dHRvbnMgY2xpY2stZXZlbnQgaW4gb25Ecm9wZG93bkFjdGlvblNlbGVjdFxuICAgICAqL1xuXG4gICAgdGhpcy5oaWRkZW5CdXR0b25zID0gQXJyYXkuZnJvbSh0aGlzLmhpZGRlbkxheWVyLm5hdGl2ZUVsZW1lbnQuY2hpbGRyZW4pIGFzIEhUTUxCdXR0b25FbGVtZW50W107XG4gICAgdGhpcy5fY29sbGFwc2VkQWN0aW9ucyA9IHRoaXMuaGlkZGVuQnV0dG9ucy5tYXAoKGJ1dHRvbikgPT4gYnV0dG9uLnRleHRDb250ZW50LnRyaW0oKSk7XG4gIH1cbn1cbiIsIjxkaXYgKm5nSWY9XCJwbGFjZW1lbnQgPT09ICdyaWdodCdcIiBjbGFzcz1cImhpZGRlbi1sYXllclwiICNoaWRkZW5MYXllcj48L2Rpdj5cbjxuZy1jb250ZW50IHNlbGVjdD1cImJ1dHRvbltraXJieS1idXR0b25dXCI+PC9uZy1jb250ZW50PlxuXG48a2lyYnktZHJvcGRvd25cbiAgW2l0ZW1zXT1cIl9jb2xsYXBzZWRBY3Rpb25zXCJcbiAgW3VzZVBvcG92ZXJdPVwidHJ1ZVwiXG4gIFtfaXNNb3JlTWVudV09XCJ0cnVlXCJcbiAgcG9wb3V0PVwibGVmdFwiXG4gIChjaGFuZ2UpPVwib25Ecm9wZG93bkFjdGlvblNlbGVjdCgpXCJcbj48L2tpcmJ5LWRyb3Bkb3duPlxuPGRpdiAqbmdJZj1cInBsYWNlbWVudCA9PT0gJ2xlZnQnXCIgY2xhc3M9XCJoaWRkZW4tbGF5ZXJcIiAjaGlkZGVuTGF5ZXI+PC9kaXY+XG4iXX0=
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public_api';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2lyYnlkZXNpZ24tZGVzaWduc3lzdGVtLWFjdGlvbi1ncm91cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvZGVzaWduc3lzdGVtL2FjdGlvbi1ncm91cC9zcmMva2lyYnlkZXNpZ24tZGVzaWduc3lzdGVtLWFjdGlvbi1ncm91cC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpY19hcGknO1xuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export { ActionGroupComponent } from './action-group.component';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvZGVzaWduc3lzdGVtL2FjdGlvbi1ncm91cC9zcmMvcHVibGljX2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IEFjdGlvbkdyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi9hY3Rpb24tZ3JvdXAuY29tcG9uZW50JztcbiJdfQ==
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { ChangeDetectionStrategy, Component, ElementRef, Input, ViewChild, } from '@angular/core';
|
|
3
|
+
import { WindowRef } from '@kirbydesign/designsystem/types';
|
|
4
|
+
import { of } from 'rxjs';
|
|
5
|
+
import { IconModule } from '@kirbydesign/designsystem/icon';
|
|
6
|
+
import { ThemeColorDirective } from '@kirbydesign/designsystem/shared';
|
|
7
|
+
import { EmptyStateModule } from '@kirbydesign/designsystem/empty-state';
|
|
8
|
+
import { ButtonComponent } from '@kirbydesign/designsystem/button';
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
import * as i1 from "@kirbydesign/designsystem/types";
|
|
11
|
+
import * as i2 from "@kirbydesign/designsystem/shared";
|
|
12
|
+
import * as i3 from "@kirbydesign/designsystem/empty-state";
|
|
13
|
+
import * as i4 from "@angular/common";
|
|
14
|
+
export class AlertExperimentalComponent {
|
|
15
|
+
constructor(elementRef, windowRef) {
|
|
16
|
+
this.elementRef = elementRef;
|
|
17
|
+
this.windowRef = windowRef;
|
|
18
|
+
this.BLUR_WRAPPER_DELAY_IN_MS = 50;
|
|
19
|
+
this.scrollY = Math.abs(this.windowRef.nativeWindow.scrollY);
|
|
20
|
+
}
|
|
21
|
+
set title(title) {
|
|
22
|
+
this.title$ = typeof title === 'string' ? of(title) : title;
|
|
23
|
+
}
|
|
24
|
+
set message(message) {
|
|
25
|
+
this.message$ = typeof message === 'string' ? of(message) : message;
|
|
26
|
+
}
|
|
27
|
+
ngAfterViewInit() {
|
|
28
|
+
setTimeout(() => {
|
|
29
|
+
this.alertWrapper.nativeElement.focus();
|
|
30
|
+
this.alertWrapper.nativeElement.blur();
|
|
31
|
+
}, this.BLUR_WRAPPER_DELAY_IN_MS);
|
|
32
|
+
}
|
|
33
|
+
onFocusChange() {
|
|
34
|
+
// This fixes an undesired scroll behaviour occurring on keyboard-tabbing
|
|
35
|
+
this.windowRef.nativeWindow.scrollTo({ top: this.scrollY });
|
|
36
|
+
}
|
|
37
|
+
cancelAlert() {
|
|
38
|
+
const ionModalElement = this.elementRef.nativeElement.closest('ion-modal');
|
|
39
|
+
ionModalElement && ionModalElement.dismiss(false);
|
|
40
|
+
}
|
|
41
|
+
approveAlert() {
|
|
42
|
+
const ionModalElement = this.elementRef.nativeElement.closest('ion-modal');
|
|
43
|
+
ionModalElement && ionModalElement.dismiss(true);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
/** @nocollapse */ AlertExperimentalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AlertExperimentalComponent, deps: [{ token: i0.ElementRef }, { token: i1.WindowRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
47
|
+
/** @nocollapse */ AlertExperimentalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: AlertExperimentalComponent, isStandalone: true, selector: "kirby-alert-experimental", inputs: { title: "title", message: "message", iconName: "iconName", iconThemeColor: "iconThemeColor", okButton: "okButton", okButtonIsDestructive: "okButtonIsDestructive", cancelButton: "cancelButton" }, host: { properties: { "class.ion-page": "false" } }, viewQueries: [{ propertyName: "alertWrapper", first: true, predicate: ["alertWrapper"], descendants: true, static: true }], ngImport: i0, template: "<article #alertWrapper>\n <kirby-empty-state\n [iconName]=\"iconName\"\n [themeColor]=\"iconThemeColor\"\n [title]=\"title$ | async\"\n [subtitle]=\"message$ | async\"\n ></kirby-empty-state>\n <div class=\"buttongroup\">\n <button\n kirby-button\n *ngIf=\"cancelButton\"\n attentionLevel=\"3\"\n class=\"cancel-btn\"\n (click)=\"cancelAlert()\"\n >\n {{ cancelButton }}\n </button>\n <button\n kirby-button\n [size]=\"cancelButton ? null : 'lg'\"\n attentionLevel=\"1\"\n class=\"ok-btn\"\n [class.destructive]=\"okButtonIsDestructive\"\n (click)=\"approveAlert()\"\n >\n {{ okButton }}\n </button>\n </div>\n</article>\n", styles: ["article{overflow:hidden;padding:24px 16px 16px}@media (max-width: 320px){article{padding:8px}}.buttongroup{display:flex;justify-content:space-around}.buttongroup button{width:50%;margin-left:6px;margin-right:6px}\n"], dependencies: [{ kind: "ngmodule", type: IconModule }, { kind: "directive", type: i2.ThemeColorDirective, selector: "kirby-avatar[themeColor], kirby-card[themeColor], kirby-icon[themeColor], kirby-progress-circle-ring[themeColor], kirby-modal-footer[themeColor], kirby-empty-state[themeColor]", inputs: ["themeColor"] }, { kind: "ngmodule", type: EmptyStateModule }, { kind: "component", type: i3.EmptyStateComponent, selector: "kirby-empty-state", inputs: ["iconName", "customIconName", "title", "subtitle"] }, { kind: "component", type: ButtonComponent, selector: "button[kirby-button],Button[kirby-button]", inputs: ["attentionLevel", "noDecoration", "themeColor", "expand", "isFloating", "size", "showIconOnly"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
48
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AlertExperimentalComponent, decorators: [{
|
|
49
|
+
type: Component,
|
|
50
|
+
args: [{ standalone: true, imports: [
|
|
51
|
+
IconModule,
|
|
52
|
+
EmptyStateModule,
|
|
53
|
+
ButtonComponent,
|
|
54
|
+
CommonModule,
|
|
55
|
+
EmptyStateModule,
|
|
56
|
+
ThemeColorDirective,
|
|
57
|
+
], selector: 'kirby-alert-experimental', host: { '[class.ion-page]': 'false' }, changeDetection: ChangeDetectionStrategy.OnPush, template: "<article #alertWrapper>\n <kirby-empty-state\n [iconName]=\"iconName\"\n [themeColor]=\"iconThemeColor\"\n [title]=\"title$ | async\"\n [subtitle]=\"message$ | async\"\n ></kirby-empty-state>\n <div class=\"buttongroup\">\n <button\n kirby-button\n *ngIf=\"cancelButton\"\n attentionLevel=\"3\"\n class=\"cancel-btn\"\n (click)=\"cancelAlert()\"\n >\n {{ cancelButton }}\n </button>\n <button\n kirby-button\n [size]=\"cancelButton ? null : 'lg'\"\n attentionLevel=\"1\"\n class=\"ok-btn\"\n [class.destructive]=\"okButtonIsDestructive\"\n (click)=\"approveAlert()\"\n >\n {{ okButton }}\n </button>\n </div>\n</article>\n", styles: ["article{overflow:hidden;padding:24px 16px 16px}@media (max-width: 320px){article{padding:8px}}.buttongroup{display:flex;justify-content:space-around}.buttongroup button{width:50%;margin-left:6px;margin-right:6px}\n"] }]
|
|
58
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.WindowRef }]; }, propDecorators: { alertWrapper: [{
|
|
59
|
+
type: ViewChild,
|
|
60
|
+
args: ['alertWrapper', { static: true }]
|
|
61
|
+
}], title: [{
|
|
62
|
+
type: Input
|
|
63
|
+
}], message: [{
|
|
64
|
+
type: Input
|
|
65
|
+
}], iconName: [{
|
|
66
|
+
type: Input
|
|
67
|
+
}], iconThemeColor: [{
|
|
68
|
+
type: Input
|
|
69
|
+
}], okButton: [{
|
|
70
|
+
type: Input
|
|
71
|
+
}], okButtonIsDestructive: [{
|
|
72
|
+
type: Input
|
|
73
|
+
}], cancelButton: [{
|
|
74
|
+
type: Input
|
|
75
|
+
}] } });
|
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9kZXNpZ25zeXN0ZW0vYWxlcnQtZXhwZXJpbWVudGFsL3NyYy9hbGVydC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9saWJzL2Rlc2lnbnN5c3RlbS9hbGVydC1leHBlcmltZW50YWwvc3JjL2FsZXJ0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsS0FBSyxFQUNMLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDNUQsT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDNUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDdkUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDekUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7Ozs7QUFvQm5FLE1BQU0sT0FBTywwQkFBMEI7SUF1QnJDLFlBQW9CLFVBQW1DLEVBQVUsU0FBb0I7UUFBakUsZUFBVSxHQUFWLFVBQVUsQ0FBeUI7UUFBVSxjQUFTLEdBQVQsU0FBUyxDQUFXO1FBdEI1RSw2QkFBd0IsR0FBRyxFQUFFLENBQUM7UUFFL0IsWUFBTyxHQUFXLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUM7SUFvQmdCLENBQUM7SUFqQnpGLElBQ0ksS0FBSyxDQUFDLEtBQWtDO1FBQzFDLElBQUksQ0FBQyxNQUFNLEdBQUcsT0FBTyxLQUFLLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUM5RCxDQUFDO0lBR0QsSUFDSSxPQUFPLENBQUMsT0FBb0M7UUFDOUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLE9BQU8sS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDO0lBQ3RFLENBQUM7SUFVRCxlQUFlO1FBQ2IsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ3hDLElBQUksQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3pDLENBQUMsRUFBRSxJQUFJLENBQUMsd0JBQXdCLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsYUFBYTtRQUNYLHlFQUF5RTtRQUN6RSxJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVELFdBQVc7UUFDVCxNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDM0UsZUFBZSxJQUFJLGVBQWUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVELFlBQVk7UUFDVixNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDM0UsZUFBZSxJQUFJLGVBQWUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbkQsQ0FBQzs7MElBN0NVLDBCQUEwQjs4SEFBMUIsMEJBQTBCLGlkQ2xDdkMsbXRCQTZCQSwrUURUSSxVQUFVLG9XQUNWLGdCQUFnQixnTEFDaEIsZUFBZSwrTEFDZixZQUFZOzJGQVdILDBCQUEwQjtrQkFqQnRDLFNBQVM7aUNBQ0ksSUFBSSxXQUNQO3dCQUNQLFVBQVU7d0JBQ1YsZ0JBQWdCO3dCQUNoQixlQUFlO3dCQUNmLFlBQVk7d0JBQ1osZ0JBQWdCO3dCQUNoQixtQkFBbUI7cUJBQ3BCLFlBQ1MsMEJBQTBCLFFBSTlCLEVBQUUsa0JBQWtCLEVBQUUsT0FBTyxFQUFFLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNO3lIQUlNLFlBQVk7c0JBQWhFLFNBQVM7dUJBQUMsY0FBYyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFLdkMsS0FBSztzQkFEUixLQUFLO2dCQU9GLE9BQU87c0JBRFYsS0FBSztnQkFLRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxxQkFBcUI7c0JBQTdCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBJbnB1dCxcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFdpbmRvd1JlZiB9IGZyb20gJ0BraXJieWRlc2lnbi9kZXNpZ25zeXN0ZW0vdHlwZXMnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEljb25Nb2R1bGUgfSBmcm9tICdAa2lyYnlkZXNpZ24vZGVzaWduc3lzdGVtL2ljb24nO1xuaW1wb3J0IHsgVGhlbWVDb2xvckRpcmVjdGl2ZSB9IGZyb20gJ0BraXJieWRlc2lnbi9kZXNpZ25zeXN0ZW0vc2hhcmVkJztcbmltcG9ydCB7IEVtcHR5U3RhdGVNb2R1bGUgfSBmcm9tICdAa2lyYnlkZXNpZ24vZGVzaWduc3lzdGVtL2VtcHR5LXN0YXRlJztcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ0BraXJieWRlc2lnbi9kZXNpZ25zeXN0ZW0vYnV0dG9uJztcbmltcG9ydCB7IFRoZW1lQ29sb3IgfSBmcm9tICdAa2lyYnlkZXNpZ24vZGVzaWduc3lzdGVtL2hlbHBlcnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIEljb25Nb2R1bGUsXG4gICAgRW1wdHlTdGF0ZU1vZHVsZSxcbiAgICBCdXR0b25Db21wb25lbnQsXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEVtcHR5U3RhdGVNb2R1bGUsXG4gICAgVGhlbWVDb2xvckRpcmVjdGl2ZSxcbiAgXSxcbiAgc2VsZWN0b3I6ICdraXJieS1hbGVydC1leHBlcmltZW50YWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vYWxlcnQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hbGVydC5jb21wb25lbnQuc2NzcyddLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWhvc3QtbWV0YWRhdGEtcHJvcGVydHlcbiAgaG9zdDogeyAnW2NsYXNzLmlvbi1wYWdlXSc6ICdmYWxzZScgfSwgLy9FbnN1cmUgaW9uLXBhZ2UgY2xhc3MgZG9lc24ndCBnZXQgYXBwbGllZCBieSBJb25pYyBNb2RhbCBDb250cm9sbGVyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBBbGVydEV4cGVyaW1lbnRhbENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuICByZWFkb25seSBCTFVSX1dSQVBQRVJfREVMQVlfSU5fTVMgPSA1MDtcbiAgQFZpZXdDaGlsZCgnYWxlcnRXcmFwcGVyJywgeyBzdGF0aWM6IHRydWUgfSkgcHJpdmF0ZSBhbGVydFdyYXBwZXI6IEVsZW1lbnRSZWY7XG4gIHByaXZhdGUgc2Nyb2xsWTogbnVtYmVyID0gTWF0aC5hYnModGhpcy53aW5kb3dSZWYubmF0aXZlV2luZG93LnNjcm9sbFkpO1xuXG4gIHRpdGxlJDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuICBASW5wdXQoKVxuICBzZXQgdGl0bGUodGl0bGU6IHN0cmluZyB8IE9ic2VydmFibGU8c3RyaW5nPikge1xuICAgIHRoaXMudGl0bGUkID0gdHlwZW9mIHRpdGxlID09PSAnc3RyaW5nJyA/IG9mKHRpdGxlKSA6IHRpdGxlO1xuICB9XG5cbiAgbWVzc2FnZSQ6IE9ic2VydmFibGU8c3RyaW5nPjtcbiAgQElucHV0KClcbiAgc2V0IG1lc3NhZ2UobWVzc2FnZTogc3RyaW5nICYgT2JzZXJ2YWJsZTxzdHJpbmc+KSB7XG4gICAgdGhpcy5tZXNzYWdlJCA9IHR5cGVvZiBtZXNzYWdlID09PSAnc3RyaW5nJyA/IG9mKG1lc3NhZ2UpIDogbWVzc2FnZTtcbiAgfVxuXG4gIEBJbnB1dCgpIGljb25OYW1lOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGljb25UaGVtZUNvbG9yOiBUaGVtZUNvbG9yIHwgYCR7VGhlbWVDb2xvcn1gO1xuICBASW5wdXQoKSBva0J1dHRvbjogc3RyaW5nO1xuICBASW5wdXQoKSBva0J1dHRvbklzRGVzdHJ1Y3RpdmU6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGNhbmNlbEJ1dHRvbjogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sIHByaXZhdGUgd2luZG93UmVmOiBXaW5kb3dSZWYpIHt9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5hbGVydFdyYXBwZXIubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICAgdGhpcy5hbGVydFdyYXBwZXIubmF0aXZlRWxlbWVudC5ibHVyKCk7XG4gICAgfSwgdGhpcy5CTFVSX1dSQVBQRVJfREVMQVlfSU5fTVMpO1xuICB9XG5cbiAgb25Gb2N1c0NoYW5nZSgpIHtcbiAgICAvLyBUaGlzIGZpeGVzIGFuIHVuZGVzaXJlZCBzY3JvbGwgYmVoYXZpb3VyIG9jY3VycmluZyBvbiBrZXlib2FyZC10YWJiaW5nXG4gICAgdGhpcy53aW5kb3dSZWYubmF0aXZlV2luZG93LnNjcm9sbFRvKHsgdG9wOiB0aGlzLnNjcm9sbFkgfSk7XG4gIH1cblxuICBjYW5jZWxBbGVydCgpIHtcbiAgICBjb25zdCBpb25Nb2RhbEVsZW1lbnQgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jbG9zZXN0KCdpb24tbW9kYWwnKTtcbiAgICBpb25Nb2RhbEVsZW1lbnQgJiYgaW9uTW9kYWxFbGVtZW50LmRpc21pc3MoZmFsc2UpO1xuICB9XG5cbiAgYXBwcm92ZUFsZXJ0KCkge1xuICAgIGNvbnN0IGlvbk1vZGFsRWxlbWVudCA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNsb3Nlc3QoJ2lvbi1tb2RhbCcpO1xuICAgIGlvbk1vZGFsRWxlbWVudCAmJiBpb25Nb2RhbEVsZW1lbnQuZGlzbWlzcyh0cnVlKTtcbiAgfVxufVxuIiwiPGFydGljbGUgI2FsZXJ0V3JhcHBlcj5cbiAgPGtpcmJ5LWVtcHR5LXN0YXRlXG4gICAgW2ljb25OYW1lXT1cImljb25OYW1lXCJcbiAgICBbdGhlbWVDb2xvcl09XCJpY29uVGhlbWVDb2xvclwiXG4gICAgW3RpdGxlXT1cInRpdGxlJCB8IGFzeW5jXCJcbiAgICBbc3VidGl0bGVdPVwibWVzc2FnZSQgfCBhc3luY1wiXG4gID48L2tpcmJ5LWVtcHR5LXN0YXRlPlxuICA8ZGl2IGNsYXNzPVwiYnV0dG9uZ3JvdXBcIj5cbiAgICA8YnV0dG9uXG4gICAgICBraXJieS1idXR0b25cbiAgICAgICpuZ0lmPVwiY2FuY2VsQnV0dG9uXCJcbiAgICAgIGF0dGVudGlvbkxldmVsPVwiM1wiXG4gICAgICBjbGFzcz1cImNhbmNlbC1idG5cIlxuICAgICAgKGNsaWNrKT1cImNhbmNlbEFsZXJ0KClcIlxuICAgID5cbiAgICAgIHt7IGNhbmNlbEJ1dHRvbiB9fVxuICAgIDwvYnV0dG9uPlxuICAgIDxidXR0b25cbiAgICAgIGtpcmJ5LWJ1dHRvblxuICAgICAgW3NpemVdPVwiY2FuY2VsQnV0dG9uID8gbnVsbCA6ICdsZydcIlxuICAgICAgYXR0ZW50aW9uTGV2ZWw9XCIxXCJcbiAgICAgIGNsYXNzPVwib2stYnRuXCJcbiAgICAgIFtjbGFzcy5kZXN0cnVjdGl2ZV09XCJva0J1dHRvbklzRGVzdHJ1Y3RpdmVcIlxuICAgICAgKGNsaWNrKT1cImFwcHJvdmVBbGVydCgpXCJcbiAgICA+XG4gICAgICB7eyBva0J1dHRvbiB9fVxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvYXJ0aWNsZT5cbiJdfQ==
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { AlertExperimentalComponent } from './alert.component';
|
|
4
|
+
import { AlertExperimentalController } from './services/alert.controller';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class AlertExperimentalModule {
|
|
7
|
+
}
|
|
8
|
+
/** @nocollapse */ AlertExperimentalModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AlertExperimentalModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
9
|
+
/** @nocollapse */ AlertExperimentalModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.4", ngImport: i0, type: AlertExperimentalModule, imports: [CommonModule, AlertExperimentalComponent] });
|
|
10
|
+
/** @nocollapse */ AlertExperimentalModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AlertExperimentalModule, providers: [AlertExperimentalController], imports: [CommonModule, AlertExperimentalComponent] });
|
|
11
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AlertExperimentalModule, decorators: [{
|
|
12
|
+
type: NgModule,
|
|
13
|
+
args: [{
|
|
14
|
+
imports: [CommonModule, AlertExperimentalComponent],
|
|
15
|
+
providers: [AlertExperimentalController],
|
|
16
|
+
}]
|
|
17
|
+
}] });
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9kZXNpZ25zeXN0ZW0vYWxlcnQtZXhwZXJpbWVudGFsL3NyYy9hbGVydC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDL0QsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7O0FBTTFFLE1BQU0sT0FBTyx1QkFBdUI7O3VJQUF2Qix1QkFBdUI7d0lBQXZCLHVCQUF1QixZQUh4QixZQUFZLEVBQUUsMEJBQTBCO3dJQUd2Qyx1QkFBdUIsYUFGdkIsQ0FBQywyQkFBMkIsQ0FBQyxZQUQ5QixZQUFZLEVBQUUsMEJBQTBCOzJGQUd2Qyx1QkFBdUI7a0JBSm5DLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLDBCQUEwQixDQUFDO29CQUNuRCxTQUFTLEVBQUUsQ0FBQywyQkFBMkIsQ0FBQztpQkFDekMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEFsZXJ0RXhwZXJpbWVudGFsQ29tcG9uZW50IH0gZnJvbSAnLi9hbGVydC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQWxlcnRFeHBlcmltZW50YWxDb250cm9sbGVyIH0gZnJvbSAnLi9zZXJ2aWNlcy9hbGVydC5jb250cm9sbGVyJztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgQWxlcnRFeHBlcmltZW50YWxDb21wb25lbnRdLFxuICBwcm92aWRlcnM6IFtBbGVydEV4cGVyaW1lbnRhbENvbnRyb2xsZXJdLFxufSlcbmV4cG9ydCBjbGFzcyBBbGVydEV4cGVyaW1lbnRhbE1vZHVsZSB7fVxuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQtY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9kZXNpZ25zeXN0ZW0vYWxlcnQtZXhwZXJpbWVudGFsL3NyYy9jb25maWcvYWxlcnQtY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWxlcnRFeHBlcmltZW50YWxDb25maWcge1xuICB0aXRsZTogc3RyaW5nIHwgT2JzZXJ2YWJsZTxzdHJpbmc+O1xuICBtZXNzYWdlPzogc3RyaW5nIHwgT2JzZXJ2YWJsZTxzdHJpbmc+O1xuICBjYW5jZWxCdXR0b24/OiBzdHJpbmc7XG5cbiAgaWNvbj86IHtcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgdGhlbWVDb2xvcj86IHN0cmluZztcbiAgfTtcblxuICBva0J1dHRvbj86XG4gICAgfCBzdHJpbmdcbiAgICB8IHtcbiAgICAgICAgdGV4dDogc3RyaW5nO1xuICAgICAgICBpc0Rlc3RydWN0aXZlOiBib29sZWFuO1xuICAgICAgfTtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public_api';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2lyYnlkZXNpZ24tZGVzaWduc3lzdGVtLWFsZXJ0LWV4cGVyaW1lbnRhbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvZGVzaWduc3lzdGVtL2FsZXJ0LWV4cGVyaW1lbnRhbC9zcmMva2lyYnlkZXNpZ24tZGVzaWduc3lzdGVtLWFsZXJ0LWV4cGVyaW1lbnRhbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpY19hcGknO1xuIl19
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { AlertExperimentalController } from './services/alert.controller';
|
|
2
|
+
export { AlertExperimentalComponent } from './alert.component';
|
|
3
|
+
export * from './alert.module';
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvZGVzaWduc3lzdGVtL2FsZXJ0LWV4cGVyaW1lbnRhbC9zcmMvcHVibGljX2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMxRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUUvRCxjQUFjLGdCQUFnQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgQWxlcnRFeHBlcmltZW50YWxDb250cm9sbGVyIH0gZnJvbSAnLi9zZXJ2aWNlcy9hbGVydC5jb250cm9sbGVyJztcbmV4cG9ydCB7IEFsZXJ0RXhwZXJpbWVudGFsQ29tcG9uZW50IH0gZnJvbSAnLi9hbGVydC5jb21wb25lbnQnO1xuZXhwb3J0IHsgQWxlcnRFeHBlcmltZW50YWxDb25maWcgfSBmcm9tICcuL2NvbmZpZy9hbGVydC1jb25maWcnO1xuZXhwb3J0ICogZnJvbSAnLi9hbGVydC5tb2R1bGUnO1xuIl19
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { ModalController } from '@ionic/angular';
|
|
3
|
+
import { from, Subject, switchMap, tap } from 'rxjs';
|
|
4
|
+
import { AlertExperimentalComponent } from '../alert.component';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@ionic/angular";
|
|
7
|
+
export class AlertExperimentalController {
|
|
8
|
+
constructor(ionicModalController) {
|
|
9
|
+
this.ionicModalController = ionicModalController;
|
|
10
|
+
}
|
|
11
|
+
showAlert(config) {
|
|
12
|
+
const $onWillDismiss = new Subject();
|
|
13
|
+
const onWillDismiss$ = $onWillDismiss.asObservable();
|
|
14
|
+
const $onDidDismiss = new Subject();
|
|
15
|
+
const onDidDismiss$ = $onDidDismiss.asObservable();
|
|
16
|
+
const modal$ = from(this.ionicModalController.create({
|
|
17
|
+
component: AlertExperimentalComponent,
|
|
18
|
+
componentProps: this.getComponentProps(config),
|
|
19
|
+
cssClass: ['kirby-overlay', 'kirby-alert'],
|
|
20
|
+
mode: 'ios',
|
|
21
|
+
backdropDismiss: false,
|
|
22
|
+
}));
|
|
23
|
+
modal$
|
|
24
|
+
.pipe(tap((modal) => from(modal.present())), switchMap((modal) => modal.onWillDismiss()))
|
|
25
|
+
.subscribe((res) => {
|
|
26
|
+
$onWillDismiss.next(res);
|
|
27
|
+
$onWillDismiss.complete();
|
|
28
|
+
$onDidDismiss.next(res);
|
|
29
|
+
$onDidDismiss.complete();
|
|
30
|
+
});
|
|
31
|
+
return {
|
|
32
|
+
onWillDismiss: onWillDismiss$,
|
|
33
|
+
onDidDismiss: onDidDismiss$,
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
getComponentProps(config) {
|
|
37
|
+
return {
|
|
38
|
+
...config,
|
|
39
|
+
okButton: this.getOkButton(config),
|
|
40
|
+
cancelButton: config.cancelButton,
|
|
41
|
+
okButtonIsDestructive: this.getOkButtonIsDestructive(config),
|
|
42
|
+
iconName: config.icon && config.icon.name,
|
|
43
|
+
iconThemeColor: config.icon && config.icon.themeColor,
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
getOkButton(config) {
|
|
47
|
+
let text;
|
|
48
|
+
if (config.okButton) {
|
|
49
|
+
if (typeof config.okButton === 'string') {
|
|
50
|
+
text = config.okButton;
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
text = config.okButton.text;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
return text;
|
|
57
|
+
}
|
|
58
|
+
getOkButtonIsDestructive(config) {
|
|
59
|
+
return typeof config.okButton === 'object' ? config.okButton.isDestructive : undefined;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
/** @nocollapse */ AlertExperimentalController.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AlertExperimentalController, deps: [{ token: i1.ModalController }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
63
|
+
/** @nocollapse */ AlertExperimentalController.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AlertExperimentalController });
|
|
64
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AlertExperimentalController, decorators: [{
|
|
65
|
+
type: Injectable
|
|
66
|
+
}], ctorParameters: function () { return [{ type: i1.ModalController }]; } });
|
|
67
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuY29udHJvbGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZGVzaWduc3lzdGVtL2FsZXJ0LWV4cGVyaW1lbnRhbC9zcmMvc2VydmljZXMvYWxlcnQuY29udHJvbGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsSUFBSSxFQUFjLE9BQU8sRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRWpFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLG9CQUFvQixDQUFDOzs7QUFTaEUsTUFBTSxPQUFPLDJCQUEyQjtJQUN0QyxZQUFvQixvQkFBcUM7UUFBckMseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFpQjtJQUFHLENBQUM7SUFFdEQsU0FBUyxDQUFDLE1BQStCO1FBQzlDLE1BQU0sY0FBYyxHQUFHLElBQUksT0FBTyxFQUFzQixDQUFDO1FBQ3pELE1BQU0sY0FBYyxHQUFHLGNBQWMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUVyRCxNQUFNLGFBQWEsR0FBRyxJQUFJLE9BQU8sRUFBc0IsQ0FBQztRQUN4RCxNQUFNLGFBQWEsR0FBRyxhQUFhLENBQUMsWUFBWSxFQUFFLENBQUM7UUFFbkQsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUNqQixJQUFJLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDO1lBQy9CLFNBQVMsRUFBRSwwQkFBMEI7WUFDckMsY0FBYyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUM7WUFDOUMsUUFBUSxFQUFFLENBQUMsZUFBZSxFQUFFLGFBQWEsQ0FBQztZQUMxQyxJQUFJLEVBQUUsS0FBSztZQUNYLGVBQWUsRUFBRSxLQUFLO1NBQ3ZCLENBQUMsQ0FDSCxDQUFDO1FBRUYsTUFBTTthQUNILElBQUksQ0FDSCxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxFQUNyQyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUM1QzthQUNBLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ2pCLGNBQWMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDekIsY0FBYyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBRTFCLGFBQWEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDeEIsYUFBYSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQzNCLENBQUMsQ0FBQyxDQUFDO1FBRUwsT0FBTztZQUNMLGFBQWEsRUFBRSxjQUFjO1lBQzdCLFlBQVksRUFBRSxhQUFhO1NBQzVCLENBQUM7SUFDSixDQUFDO0lBRU8saUJBQWlCLENBQUMsTUFBK0I7UUFDdkQsT0FBTztZQUNMLEdBQUcsTUFBTTtZQUNULFFBQVEsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQztZQUNsQyxZQUFZLEVBQUUsTUFBTSxDQUFDLFlBQVk7WUFDakMscUJBQXFCLEVBQUUsSUFBSSxDQUFDLHdCQUF3QixDQUFDLE1BQU0sQ0FBQztZQUM1RCxRQUFRLEVBQUUsTUFBTSxDQUFDLElBQUksSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUk7WUFDekMsY0FBYyxFQUFFLE1BQU0sQ0FBQyxJQUFJLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVO1NBQ3RELENBQUM7SUFDSixDQUFDO0lBRU8sV0FBVyxDQUFDLE1BQStCO1FBQ2pELElBQUksSUFBWSxDQUFDO1FBRWpCLElBQUksTUFBTSxDQUFDLFFBQVEsRUFBRTtZQUNuQixJQUFJLE9BQU8sTUFBTSxDQUFDLFFBQVEsS0FBSyxRQUFRLEVBQUU7Z0JBQ3ZDLElBQUksR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDO2FBQ3hCO2lCQUFNO2dCQUNMLElBQUksR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQzthQUM3QjtTQUNGO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsd0JBQXdCLENBQUMsTUFBTTtRQUM3QixPQUFPLE9BQU8sTUFBTSxDQUFDLFFBQVEsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDekYsQ0FBQzs7MklBakVVLDJCQUEyQjsrSUFBM0IsMkJBQTJCOzJGQUEzQiwyQkFBMkI7a0JBRHZDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNb2RhbENvbnRyb2xsZXIgfSBmcm9tICdAaW9uaWMvYW5ndWxhcic7XG5pbXBvcnQgeyBmcm9tLCBPYnNlcnZhYmxlLCBTdWJqZWN0LCBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgT3ZlcmxheUV2ZW50RGV0YWlsIH0gZnJvbSAnQGlvbmljL2NvcmUvY29tcG9uZW50cyc7XG5pbXBvcnQgeyBBbGVydEV4cGVyaW1lbnRhbENvbXBvbmVudCB9IGZyb20gJy4uL2FsZXJ0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBbGVydEV4cGVyaW1lbnRhbENvbmZpZyB9IGZyb20gJy4uL2NvbmZpZy9hbGVydC1jb25maWcnO1xuXG50eXBlIEFsZXJ0RGlzbWlzc09ic2VydmFibGVzID0ge1xuICBvbldpbGxEaXNtaXNzOiBPYnNlcnZhYmxlPE92ZXJsYXlFdmVudERldGFpbD47XG4gIG9uRGlkRGlzbWlzczogT2JzZXJ2YWJsZTxPdmVybGF5RXZlbnREZXRhaWw+O1xufTtcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFsZXJ0RXhwZXJpbWVudGFsQ29udHJvbGxlciB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaW9uaWNNb2RhbENvbnRyb2xsZXI6IE1vZGFsQ29udHJvbGxlcikge31cblxuICBwdWJsaWMgc2hvd0FsZXJ0KGNvbmZpZzogQWxlcnRFeHBlcmltZW50YWxDb25maWcpOiBBbGVydERpc21pc3NPYnNlcnZhYmxlcyB7XG4gICAgY29uc3QgJG9uV2lsbERpc21pc3MgPSBuZXcgU3ViamVjdDxPdmVybGF5RXZlbnREZXRhaWw+KCk7XG4gICAgY29uc3Qgb25XaWxsRGlzbWlzcyQgPSAkb25XaWxsRGlzbWlzcy5hc09ic2VydmFibGUoKTtcblxuICAgIGNvbnN0ICRvbkRpZERpc21pc3MgPSBuZXcgU3ViamVjdDxPdmVybGF5RXZlbnREZXRhaWw+KCk7XG4gICAgY29uc3Qgb25EaWREaXNtaXNzJCA9ICRvbkRpZERpc21pc3MuYXNPYnNlcnZhYmxlKCk7XG5cbiAgICBjb25zdCBtb2RhbCQgPSBmcm9tKFxuICAgICAgdGhpcy5pb25pY01vZGFsQ29udHJvbGxlci5jcmVhdGUoe1xuICAgICAgICBjb21wb25lbnQ6IEFsZXJ0RXhwZXJpbWVudGFsQ29tcG9uZW50LFxuICAgICAgICBjb21wb25lbnRQcm9wczogdGhpcy5nZXRDb21wb25lbnRQcm9wcyhjb25maWcpLFxuICAgICAgICBjc3NDbGFzczogWydraXJieS1vdmVybGF5JywgJ2tpcmJ5LWFsZXJ0J10sXG4gICAgICAgIG1vZGU6ICdpb3MnLFxuICAgICAgICBiYWNrZHJvcERpc21pc3M6IGZhbHNlLFxuICAgICAgfSlcbiAgICApO1xuXG4gICAgbW9kYWwkXG4gICAgICAucGlwZShcbiAgICAgICAgdGFwKChtb2RhbCkgPT4gZnJvbShtb2RhbC5wcmVzZW50KCkpKSxcbiAgICAgICAgc3dpdGNoTWFwKChtb2RhbCkgPT4gbW9kYWwub25XaWxsRGlzbWlzcygpKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgocmVzKSA9PiB7XG4gICAgICAgICRvbldpbGxEaXNtaXNzLm5leHQocmVzKTtcbiAgICAgICAgJG9uV2lsbERpc21pc3MuY29tcGxldGUoKTtcblxuICAgICAgICAkb25EaWREaXNtaXNzLm5leHQocmVzKTtcbiAgICAgICAgJG9uRGlkRGlzbWlzcy5jb21wbGV0ZSgpO1xuICAgICAgfSk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgb25XaWxsRGlzbWlzczogb25XaWxsRGlzbWlzcyQsXG4gICAgICBvbkRpZERpc21pc3M6IG9uRGlkRGlzbWlzcyQsXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q29tcG9uZW50UHJvcHMoY29uZmlnOiBBbGVydEV4cGVyaW1lbnRhbENvbmZpZykge1xuICAgIHJldHVybiB7XG4gICAgICAuLi5jb25maWcsXG4gICAgICBva0J1dHRvbjogdGhpcy5nZXRPa0J1dHRvbihjb25maWcpLFxuICAgICAgY2FuY2VsQnV0dG9uOiBjb25maWcuY2FuY2VsQnV0dG9uLFxuICAgICAgb2tCdXR0b25Jc0Rlc3RydWN0aXZlOiB0aGlzLmdldE9rQnV0dG9uSXNEZXN0cnVjdGl2ZShjb25maWcpLFxuICAgICAgaWNvbk5hbWU6IGNvbmZpZy5pY29uICYmIGNvbmZpZy5pY29uLm5hbWUsXG4gICAgICBpY29uVGhlbWVDb2xvcjogY29uZmlnLmljb24gJiYgY29uZmlnLmljb24udGhlbWVDb2xvcixcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRPa0J1dHRvbihjb25maWc6IEFsZXJ0RXhwZXJpbWVudGFsQ29uZmlnKSB7XG4gICAgbGV0IHRleHQ6IHN0cmluZztcblxuICAgIGlmIChjb25maWcub2tCdXR0b24pIHtcbiAgICAgIGlmICh0eXBlb2YgY29uZmlnLm9rQnV0dG9uID09PSAnc3RyaW5nJykge1xuICAgICAgICB0ZXh0ID0gY29uZmlnLm9rQnV0dG9uO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGV4dCA9IGNvbmZpZy5va0J1dHRvbi50ZXh0O1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdGV4dDtcbiAgfVxuXG4gIGdldE9rQnV0dG9uSXNEZXN0cnVjdGl2ZShjb25maWcpIHtcbiAgICByZXR1cm4gdHlwZW9mIGNvbmZpZy5va0J1dHRvbiA9PT0gJ29iamVjdCcgPyBjb25maWcub2tCdXR0b24uaXNEZXN0cnVjdGl2ZSA6IHVuZGVmaW5lZDtcbiAgfVxufVxuIl19
|