@ng-nest/ui 20.1.1 → 20.1.3

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/alert/index.d.ts CHANGED
@@ -80,6 +80,20 @@ declare class XAlertProperty extends XAlertProperty_base {
80
80
  *
81
81
  */
82
82
  readonly effect: _angular_core.InputSignal<XEffect>;
83
+ /**
84
+ * @zh_CN 形态变体
85
+ * @en_US Variant
86
+ * @example
87
+ *
88
+ * ```html
89
+ * <x-alert variant="outlined" > </x-alert>
90
+ * <x-alert variant="filled" > </x-alert>
91
+ * <x-alert variant="shadow" > </x-alert>
92
+ * <x-alert variant="borderless" > </x-alert>
93
+ * ```
94
+ *
95
+ */
96
+ readonly variant: _angular_core.InputSignal<XAlertVariant>;
83
97
  /**
84
98
  * @zh_CN 隐藏关闭按钮
85
99
  * @en_US Hide close button
@@ -306,7 +320,7 @@ declare class XAlertProperty extends XAlertProperty_base {
306
320
  */
307
321
  readonly resizing: _angular_core.OutputEmitterRef<XResizableEvent>;
308
322
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<XAlertProperty, never>;
309
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<XAlertProperty, "x-alert-property", never, { "hide": { "alias": "hide"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "content": { "alias": "content"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "effect": { "alias": "effect"; "required": false; "isSignal": true; }; "hideClose": { "alias": "hideClose"; "required": false; "isSignal": true; }; "closeText": { "alias": "closeText"; "required": false; "isSignal": true; }; "showIcon": { "alias": "showIcon"; "required": false; "isSignal": true; }; "disabledAnimation": { "alias": "disabledAnimation"; "required": false; "isSignal": true; }; "duration": { "alias": "duration"; "required": false; "isSignal": true; }; "manual": { "alias": "manual"; "required": false; "isSignal": true; }; "draggable": { "alias": "draggable"; "required": false; "isSignal": true; }; "resizable": { "alias": "resizable"; "required": false; "isSignal": true; }; "offsetLeft": { "alias": "offsetLeft"; "required": false; "isSignal": true; }; "offsetTop": { "alias": "offsetTop"; "required": false; "isSignal": true; }; "minWidth": { "alias": "minWidth"; "required": false; "isSignal": true; }; "minHeight": { "alias": "minHeight"; "required": false; "isSignal": true; }; "dragBoundary": { "alias": "dragBoundary"; "required": false; "isSignal": true; }; "dragFreeDragPosition": { "alias": "dragFreeDragPosition"; "required": false; "isSignal": true; }; "operationTpl": { "alias": "operationTpl"; "required": false; "isSignal": true; }; }, { "close": "close"; "dragEnded": "dragEnded"; "resizing": "resizing"; }, never, never, true, never>;
323
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<XAlertProperty, "x-alert-property", never, { "hide": { "alias": "hide"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "content": { "alias": "content"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "effect": { "alias": "effect"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "hideClose": { "alias": "hideClose"; "required": false; "isSignal": true; }; "closeText": { "alias": "closeText"; "required": false; "isSignal": true; }; "showIcon": { "alias": "showIcon"; "required": false; "isSignal": true; }; "disabledAnimation": { "alias": "disabledAnimation"; "required": false; "isSignal": true; }; "duration": { "alias": "duration"; "required": false; "isSignal": true; }; "manual": { "alias": "manual"; "required": false; "isSignal": true; }; "draggable": { "alias": "draggable"; "required": false; "isSignal": true; }; "resizable": { "alias": "resizable"; "required": false; "isSignal": true; }; "offsetLeft": { "alias": "offsetLeft"; "required": false; "isSignal": true; }; "offsetTop": { "alias": "offsetTop"; "required": false; "isSignal": true; }; "minWidth": { "alias": "minWidth"; "required": false; "isSignal": true; }; "minHeight": { "alias": "minHeight"; "required": false; "isSignal": true; }; "dragBoundary": { "alias": "dragBoundary"; "required": false; "isSignal": true; }; "dragFreeDragPosition": { "alias": "dragFreeDragPosition"; "required": false; "isSignal": true; }; "operationTpl": { "alias": "operationTpl"; "required": false; "isSignal": true; }; }, { "close": "close"; "dragEnded": "dragEnded"; "resizing": "resizing"; }, never, never, true, never>;
310
324
  }
311
325
  /**
312
326
  * Alert Option
@@ -387,6 +401,11 @@ interface XAlertOption {
387
401
  * @en_US Type
388
402
  */
389
403
  type XAlertType = XStatus;
404
+ /**
405
+ * @zh_CN 形态变体
406
+ * @en_US Variant
407
+ */
408
+ type XAlertVariant = 'outlined' | 'filled' | 'shadow' | 'borderless';
390
409
  /**
391
410
  * @zh_CN 设置投放容器外部的 CdkDrag 的位置。可用于为返回的用户恢复元素的位置
392
411
  * @en_US Set the location of the CDKDRAG outside the container. Can be used to recover elements for returned users
@@ -423,4 +442,4 @@ declare class XAlertModule {
423
442
  }
424
443
 
425
444
  export { XAlertComponent, XAlertModule, XAlertPrefix, XAlertProperty, X_ALERT_CONFIG_NAME };
426
- export type { XAlertDragFreeDragPosition, XAlertOption, XAlertType };
445
+ export type { XAlertDragFreeDragPosition, XAlertOption, XAlertType, XAlertVariant };
package/bubble/index.d.ts CHANGED
@@ -3,7 +3,7 @@ import { DomSanitizer } from '@angular/platform-browser';
3
3
  import * as _angular_core from '@angular/core';
4
4
  import { Renderer2, ElementRef, SimpleChanges } from '@angular/core';
5
5
  import * as _ng_nest_ui_core from '@ng-nest/ui/core';
6
- import { XSize, XTemplate, XBoolean, XNumber } from '@ng-nest/ui/core';
6
+ import { XTemplate, XSize, XBoolean, XNumber } from '@ng-nest/ui/core';
7
7
  import { XAvatarOption } from '@ng-nest/ui/avatar';
8
8
  import * as rxjs from 'rxjs';
9
9
 
@@ -18,12 +18,12 @@ declare class XBubbleProperty extends XBubbleProperty_base {
18
18
  * @zh_CN 气泡内容
19
19
  * @en_US Bubble content
20
20
  */
21
- readonly content: _angular_core.InputSignal<string | undefined>;
21
+ readonly content: _angular_core.InputSignal<XTemplate | undefined>;
22
22
  /**
23
23
  * @zh_CN 头像
24
24
  * @en_US Avatar
25
25
  */
26
- readonly avatar: _angular_core.InputSignal<XAvatarOption | undefined>;
26
+ readonly avatar: _angular_core.InputSignal<XBubbleAvatarOption | undefined>;
27
27
  /**
28
28
  * @zh_CN 尺寸
29
29
  * @en_US Size
@@ -74,8 +74,34 @@ declare class XBubbleProperty extends XBubbleProperty_base {
74
74
  * @en_US Whether to show the typing cursor
75
75
  */
76
76
  readonly showCursor: _angular_core.InputSignalWithTransform<boolean, XBoolean>;
77
+ /**
78
+ * @zh_CN 打字开始
79
+ * @en_US Typing start
80
+ */
81
+ readonly typingStart: _angular_core.OutputEmitterRef<void>;
82
+ /**
83
+ * @zh_CN 打字正在输出的字符
84
+ * @en_US Typing output character
85
+ */
86
+ readonly typingOuput: _angular_core.OutputEmitterRef<string>;
87
+ /**
88
+ * @zh_CN 打字结束
89
+ * @en_US Typing end
90
+ */
91
+ readonly typingEnd: _angular_core.OutputEmitterRef<void>;
77
92
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<XBubbleProperty, never>;
78
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<XBubbleProperty, "x-bubble-property", never, { "content": { "alias": "content"; "required": false; "isSignal": true; }; "avatar": { "alias": "avatar"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "placement": { "alias": "placement"; "required": false; "isSignal": true; }; "header": { "alias": "header"; "required": false; "isSignal": true; }; "footer": { "alias": "footer"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "typing": { "alias": "typing"; "required": false; "isSignal": true; }; "speed": { "alias": "speed"; "required": false; "isSignal": true; }; "renderer": { "alias": "renderer"; "required": false; "isSignal": true; }; "showCursor": { "alias": "showCursor"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
93
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<XBubbleProperty, "x-bubble-property", never, { "content": { "alias": "content"; "required": false; "isSignal": true; }; "avatar": { "alias": "avatar"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "placement": { "alias": "placement"; "required": false; "isSignal": true; }; "header": { "alias": "header"; "required": false; "isSignal": true; }; "footer": { "alias": "footer"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "typing": { "alias": "typing"; "required": false; "isSignal": true; }; "speed": { "alias": "speed"; "required": false; "isSignal": true; }; "renderer": { "alias": "renderer"; "required": false; "isSignal": true; }; "showCursor": { "alias": "showCursor"; "required": false; "isSignal": true; }; }, { "typingStart": "typingStart"; "typingOuput": "typingOuput"; "typingEnd": "typingEnd"; }, never, never, true, never>;
94
+ }
95
+ /**
96
+ * @zh_CN 头像配置,继承了组件 Avatar 相关属性
97
+ * @en_US Avatar settings
98
+ */
99
+ interface XBubbleAvatarOption extends XAvatarOption {
100
+ /**
101
+ * @zh_CN 是否显示头像
102
+ * @en_US Whether to show the avatar
103
+ */
104
+ hidden?: boolean;
79
105
  }
80
106
  declare const XBubblesProperty_base: new () => {
81
107
  config: _ng_nest_ui_core.XBubblesConfig | undefined;
@@ -94,8 +120,13 @@ declare class XBubblesProperty extends XBubblesProperty_base {
94
120
  * @en_US Bubble variant
95
121
  */
96
122
  readonly variant: _angular_core.InputSignal<XBubbleVariant | undefined>;
123
+ /**
124
+ * @zh_CN 滚动条滚动事件,自动获取父级可滚动的元素
125
+ * @en_US Scroll event of the scroll bar, automatically obtaining the scrollable element of the parent
126
+ */
127
+ readonly scrollChange: _angular_core.OutputEmitterRef<Event>;
97
128
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<XBubblesProperty, never>;
98
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<XBubblesProperty, "x-bubbles-property", never, { "size": { "alias": "size"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
129
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<XBubblesProperty, "x-bubbles-property", never, { "size": { "alias": "size"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; }, { "scrollChange": "scrollChange"; }, never, never, true, never>;
99
130
  }
100
131
  /**
101
132
  * @zh_CN 形态变体
@@ -129,6 +160,8 @@ declare class XBubbleComponent extends XBubbleProperty {
129
160
  private typingInterval;
130
161
  sizeSignal: _angular_core.Signal<_ng_nest_ui_core.XSize>;
131
162
  variantSignal: _angular_core.Signal<XBubbleVariant>;
163
+ isTemplate: _angular_core.Signal<boolean>;
164
+ isString: _angular_core.Signal<boolean>;
132
165
  constructor();
133
166
  ngOnChanges(changes: SimpleChanges): void;
134
167
  get renderedContent(): _angular_platform_browser.SafeHtml;
@@ -147,10 +180,12 @@ declare class XBubblesComponent extends XBubblesProperty {
147
180
  private removeScrollListener;
148
181
  private contentMutationObserver;
149
182
  private typingObserver;
183
+ private $destroy;
150
184
  bubbles: _angular_core.Signal<readonly XBubbleComponent[]>;
151
185
  ngAfterViewInit(): void;
152
186
  ngDoCheck(): void;
153
187
  ngOnDestroy(): void;
188
+ private stepScroll;
154
189
  private getParentScrollElement;
155
190
  private observeContentChanges;
156
191
  private startTypingObserver;
@@ -333,7 +333,7 @@ declare class XCheckboxComponent extends XCheckboxProperty implements OnChanges,
333
333
  labelMapSignal: _angular_core.Signal<{
334
334
  [x: string]: boolean;
335
335
  }>;
336
- checkboxType: _angular_core.Signal<"button" | "icon" | "tag" | "initial">;
336
+ checkboxType: _angular_core.Signal<"initial" | "button" | "icon" | "tag">;
337
337
  constructor();
338
338
  ngOnChanges(changes: SimpleChanges): void;
339
339
  ngOnDestroy(): void;
package/core/index.d.ts CHANGED
@@ -1253,6 +1253,7 @@ interface XComponentConfig {
1253
1253
  rate?: XRateConfig;
1254
1254
  result?: XResultConfig;
1255
1255
  select?: XSelectConfig;
1256
+ sender?: XSenderConfig;
1256
1257
  skeleton?: XSkeletonConfig;
1257
1258
  slider?: XSliderConfig;
1258
1259
  sliderSelect?: XSliderSelectConfig;
@@ -1286,6 +1287,7 @@ interface XAffixConfig {
1286
1287
  interface XAlertConfig {
1287
1288
  effect?: XEffect;
1288
1289
  hideClose?: boolean;
1290
+ variant?: 'outlined' | 'filled' | 'shadow' | 'borderless';
1289
1291
  showIcon?: boolean;
1290
1292
  disabledAnimation?: boolean;
1291
1293
  draggable?: boolean;
@@ -1667,6 +1669,9 @@ interface XSelectConfig {
1667
1669
  maxTagContent?: XTemplate;
1668
1670
  virtualScroll?: boolean;
1669
1671
  }
1672
+ interface XSenderConfig {
1673
+ submitType?: 'enter' | 'shiftEnter';
1674
+ }
1670
1675
  interface XSkeletonConfig {
1671
1676
  }
1672
1677
  interface XSliderConfig {
@@ -1990,4 +1995,4 @@ declare class XInnerHTMLComponent {
1990
1995
  }
1991
1996
 
1992
1997
  export { XAddDays, XAddHours, XAddMilliseconds, XAddMinutes, XAddMonths, XAddSeconds, XAddYears, XBadgeAnimation, XBadgeStandaloneAnimation, XBaseAnimation, XCamelToKebab, XChunk, XClamp, XClearClass, XClearClassSignal, XCloneDeep, XComputed, XComputedStyle, XConfigService, XConnectBaseAnimation, XDataConvert, XDateQuarter, XDateWeek, XDateWeekYear, XDateYearQuarter, XDateYearWeek, XDrop, XDropAnimation, XDuration, XFadeAnimation, XFillDefault, XGetChildren, XGroupBy, XGuid, XHasChildren, XHasIn, XHttpService, XIdentity, XInnerHTMLComponent, XInputBoolean, XInputCssPixelValue, XInputNumber, XInvertKeyValues, XIsArray, XIsBoolean, XIsChange, XIsDate, XIsEmpty, XIsFunction, XIsInputSignal, XIsNil, XIsNotNil, XIsNull, XIsNumber, XIsObject, XIsObjectArray, XIsObservable, XIsRegExp, XIsString, XIsTemplateRef, XIsType, XIsUndefined, XIsValue, XIsValueArray, XIsXTemplate, XKebabToCamel, XMixColors, XMoveAnimation, XMoveBoxAnimation, XOpacityAnimation, XOrderBy, XParentPath, XParents, XPreloadingStrategyService, XProperty, XPropertyFunction, XRemove, XRemoveNgTag, XRepositoryAbstract, XRepositoryService, XRequestAnimationFrame, XResize, XReuseStrategyService, XSetData, XSetFlex, XSleep, XSlideAnimation, XStorageService, XStripTags, XThemeService, XToBoolean, XToCssPixelValue, XToCssPx, XToCssRem, XToDataArray, XToDataConvert, XToDate, XToHex, XToNumber, XToRgb, XToString, XWarnIconTypeNotFound, XWarnSVGTagNotFound, X_CONFIG, X_THEME, X_THEME_AMOUNTS, X_THEME_BACKGROUNDS, X_THEME_BLACK_MERGE, X_THEME_BORDERS, X_THEME_COLORS, X_THEME_COLOR_KEYS, X_THEME_DARK_COLORS, X_THEME_EXCHANGES, X_THEME_LIGHT_COLORS, X_THEME_MERGE, X_THEME_PREFIX, X_THEME_TEXTS, X_THEME_VARS, X_THEME_VARS_KEYS };
1993
- export type { XAffixConfig, XAlertConfig, XAlign, XAnchorConfig, XAsideConfig, XAutoCompleteConfig, XAvatarConfig, XBackTopConfig, XBadgeConfgig, XBoolean, XBubbleConfig, XBubblesConfig, XButtonConfig, XButtonsConfig, XCalendarConfig, XCardConfig, XCarouselConfig, XCascadeConfig, XCheckboxConfig, XClassMap, XColConfig, XCollapseConfig, XColorConfig, XColorPickerConfig, XColors, XColorsTheme, XCommentConfig, XComponentConfig, XComponentConfigKey, XConfig, XConfigKey, XContainerConfig, XController, XCorner, XCountdownConfig, XCrumbComfig, XData, XDataArray, XDate, XDatePickerConfig, XDateRangeConfig, XDescriptionConfig, XDialogConfig, XDirection, XDisplayDirection, XDrawerConfig, XDropdownConfig, XEffect, XEmptyConfig, XFilter, XFindConfig, XFit, XFloatLabel, XFooterConfig, XFormConfig, XGroupItem, XHeaderConfig, XHighlightConfig, XIconConfig, XId, XIdentityProperty, XImageConfig, XInnerConfig, XInputConfig, XInputGroupConfig, XInputNumberConfig, XJustify, XKeywordConfig, XLinkConfig, XListConfig, XListOptionConfig, XLoadingConfig, XMenuConfig, XMessageBoxConfig, XMessageConfig, XNotificationConfig, XNumber, XOperation, XOutletConfig, XPageHeaderConfig, XPaginationConfig, XParentIdentityProperty, XPatternConfig, XPlace, XPlacement, XPopconfirmConfig, XPopoverConfig, XPortalConfig, XPosition, XPositionLeftRight, XPositionTopBottom, XProgressConfing, XPropDecorator, XQuery, XRGBColor, XRadioConfig, XRateConfig, XRepositoryInput, XResizeObserver, XResizeObserverEntry, XResponseSize, XResultConfig, XResultList, XRippleConfig, XRouteReuseStorage, XRowConfig, XSelectConfig, XShadow, XShape, XSize, XSkeletonConfig, XSliderConfig, XSliderSelectConfig, XSort, XStatisticConfig, XStatus, XStepsConfig, XStyle, XStyleMap, XSwitchConfig, XTableConfig, XTableViewConfig, XTabsConfig, XTagConfig, XTemplate, XTextAlign, XTextRetractConfig, XTextareaConfig, XTheme, XThemeConfig, XThemeKey, XTimeAgoConfig, XTimePickerConfig, XTimeRangeConfig, XTimelineConfig, XTooltipConfig, XTransferConfig, XTreeConfig, XTreeFileConfig, XTreeSelectConfig, XTrigger, XType, XTypeFunc, XUploadConfig, XVariant, XVarsTheme };
1998
+ export type { XAffixConfig, XAlertConfig, XAlign, XAnchorConfig, XAsideConfig, XAutoCompleteConfig, XAvatarConfig, XBackTopConfig, XBadgeConfgig, XBoolean, XBubbleConfig, XBubblesConfig, XButtonConfig, XButtonsConfig, XCalendarConfig, XCardConfig, XCarouselConfig, XCascadeConfig, XCheckboxConfig, XClassMap, XColConfig, XCollapseConfig, XColorConfig, XColorPickerConfig, XColors, XColorsTheme, XCommentConfig, XComponentConfig, XComponentConfigKey, XConfig, XConfigKey, XContainerConfig, XController, XCorner, XCountdownConfig, XCrumbComfig, XData, XDataArray, XDate, XDatePickerConfig, XDateRangeConfig, XDescriptionConfig, XDialogConfig, XDirection, XDisplayDirection, XDrawerConfig, XDropdownConfig, XEffect, XEmptyConfig, XFilter, XFindConfig, XFit, XFloatLabel, XFooterConfig, XFormConfig, XGroupItem, XHeaderConfig, XHighlightConfig, XIconConfig, XId, XIdentityProperty, XImageConfig, XInnerConfig, XInputConfig, XInputGroupConfig, XInputNumberConfig, XJustify, XKeywordConfig, XLinkConfig, XListConfig, XListOptionConfig, XLoadingConfig, XMenuConfig, XMessageBoxConfig, XMessageConfig, XNotificationConfig, XNumber, XOperation, XOutletConfig, XPageHeaderConfig, XPaginationConfig, XParentIdentityProperty, XPatternConfig, XPlace, XPlacement, XPopconfirmConfig, XPopoverConfig, XPortalConfig, XPosition, XPositionLeftRight, XPositionTopBottom, XProgressConfing, XPropDecorator, XQuery, XRGBColor, XRadioConfig, XRateConfig, XRepositoryInput, XResizeObserver, XResizeObserverEntry, XResponseSize, XResultConfig, XResultList, XRippleConfig, XRouteReuseStorage, XRowConfig, XSelectConfig, XSenderConfig, XShadow, XShape, XSize, XSkeletonConfig, XSliderConfig, XSliderSelectConfig, XSort, XStatisticConfig, XStatus, XStepsConfig, XStyle, XStyleMap, XSwitchConfig, XTableConfig, XTableViewConfig, XTabsConfig, XTagConfig, XTemplate, XTextAlign, XTextRetractConfig, XTextareaConfig, XTheme, XThemeConfig, XThemeKey, XTimeAgoConfig, XTimePickerConfig, XTimeRangeConfig, XTimelineConfig, XTooltipConfig, XTransferConfig, XTreeConfig, XTreeFileConfig, XTreeSelectConfig, XTrigger, XType, XTypeFunc, XUploadConfig, XVariant, XVarsTheme };
@@ -47,9 +47,7 @@ class XAffixProperty extends XPropertyFunction(X_AFFIX_CONFIG_NAME) {
47
47
  }
48
48
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XAffixProperty, decorators: [{
49
49
  type: Component,
50
- args: [{
51
- selector: `${XAffixPrefix}-property`, template: ''
52
- }]
50
+ args: [{ selector: `${XAffixPrefix}-property`, template: '' }]
53
51
  }] });
54
52
 
55
53
  class XAffixComponent extends XAffixProperty {
@@ -1 +1 @@
1
- {"version":3,"file":"ng-nest-ui-affix.mjs","sources":["../../../../lib/ng-nest/ui/affix/affix.property.ts","../../../../lib/ng-nest/ui/affix/affix.component.ts","../../../../lib/ng-nest/ui/affix/affix.component.html","../../../../lib/ng-nest/ui/affix/affix.module.ts","../../../../lib/ng-nest/ui/affix/ng-nest-ui-affix.ts"],"sourcesContent":["import { XNumber, XPropertyFunction, XToCssPixelValue } from '@ng-nest/ui/core';\r\nimport { Component, input } from '@angular/core';\r\n\r\n/**\r\n * Affix\r\n * @selector x-affix\r\n * @decorator component\r\n */\r\nexport const XAffixPrefix = 'x-affix';\r\nexport const X_AFFIX_CONFIG_NAME = 'affix';\r\n\r\n/**\r\n * Affix Property\r\n */\r\n@Component({\r\n selector: `${XAffixPrefix}-property`, template: ''\r\n})\r\nexport class XAffixProperty extends XPropertyFunction(X_AFFIX_CONFIG_NAME) {\r\n /**\r\n * @zh_CN 顶部距离\r\n * @en_US Distance from top\r\n * @example\r\n * \r\n * ```html\r\n * <x-affix top=\"5rem\">\r\n * <div>有垂直滚动条,我与顶部距离5rem</div>\r\n * </x-affix>\r\n * ```\r\n * \r\n */\r\n readonly top = input<string, XNumber>(this.config?.top!, { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 左边距离\r\n * @en_US Distance from left\r\n * @example\r\n * \r\n * ```html\r\n * <x-affix left=\"5rem\">\r\n * <div>有横向滚动条,我与左边距离5rem</div>\r\n * </x-affix>\r\n * ```\r\n * \r\n */\r\n readonly left = input<string, XNumber>(this.config?.left!, { transform: XToCssPixelValue });\r\n}\r\n","import { Component, ViewEncapsulation, ChangeDetectionStrategy } from '@angular/core';\r\nimport { XAffixPrefix, XAffixProperty } from './affix.property';\r\n\r\n@Component({\r\n selector: `${XAffixPrefix}`,\r\n templateUrl: './affix.component.html',\r\n styleUrls: ['./affix.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XAffixComponent extends XAffixProperty {}\r\n","<div #affix class=\"x-affix\" [style.top]=\"top()\" [style.left]=\"left()\">\r\n <ng-content></ng-content>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { XAffixComponent } from './affix.component';\r\n\r\n@NgModule({\r\n exports: [XAffixComponent],\r\n imports: [XAffixComponent]\r\n})\r\nexport class XAffixModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;AAGA;;;;AAIG;AACI,MAAM,YAAY,GAAG;AACrB,MAAM,mBAAmB,GAAG;AAEnC;;AAEG;MAIU,cAAe,SAAQ,iBAAiB,CAAC,mBAAmB,CAAC,CAAA;AAH1E,IAAA,WAAA,GAAA;;AAIE;;;;;;;;;;;AAWG;AACM,QAAA,IAAA,CAAA,GAAG,GAAG,KAAK,CAAkB,IAAI,CAAC,MAAM,EAAE,GAAI,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,KAAA,EAAI,SAAS,EAAE,gBAAgB,OAA7B,EAAE,SAAS,EAAE,gBAAgB,EAAE,GAAC;AACzF;;;;;;;;;;;AAWG;AACM,QAAA,IAAA,CAAA,IAAI,GAAG,KAAK,CAAkB,IAAI,CAAC,MAAM,EAAE,IAAK,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,MAAA,EAAI,SAAS,EAAE,gBAAgB,OAA7B,EAAE,SAAS,EAAE,gBAAgB,EAAE,GAAC;AAC5F,IAAA;iIA3BY,cAAc,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAd,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,cAAc,sVAFyB,EAAE,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;;2FAEzC,cAAc,EAAA,UAAA,EAAA,CAAA;kBAH1B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,CAAA,EAAG,YAAY,WAAW,EAAE,QAAQ,EAAE;AACnD,iBAAA;;;ACNK,MAAO,eAAgB,SAAQ,cAAc,CAAA;iIAAtC,eAAe,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAf,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAe,0FCV5B,2HAGA,EAAA,MAAA,EAAA,CAAA,8EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FDOa,eAAe,EAAA,UAAA,EAAA,CAAA;kBAP3B,SAAS;+BACE,CAAA,EAAG,YAAY,EAAE,EAAA,aAAA,EAGZ,iBAAiB,CAAC,IAAI,EAAA,eAAA,EACpB,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,2HAAA,EAAA,MAAA,EAAA,CAAA,8EAAA,CAAA,EAAA;;;MEDpC,YAAY,CAAA;iIAAZ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;kIAAZ,YAAY,EAAA,OAAA,EAAA,CAFb,eAAe,CAAA,EAAA,OAAA,EAAA,CADf,eAAe,CAAA,EAAA,CAAA,CAAA;kIAGd,YAAY,EAAA,CAAA,CAAA;;2FAAZ,YAAY,EAAA,UAAA,EAAA,CAAA;kBAJxB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,eAAe,CAAC;oBAC1B,OAAO,EAAE,CAAC,eAAe;AAC1B,iBAAA;;;ACND;;AAEG;;;;"}
1
+ {"version":3,"file":"ng-nest-ui-affix.mjs","sources":["../../../../lib/ng-nest/ui/affix/affix.property.ts","../../../../lib/ng-nest/ui/affix/affix.component.ts","../../../../lib/ng-nest/ui/affix/affix.component.html","../../../../lib/ng-nest/ui/affix/affix.module.ts","../../../../lib/ng-nest/ui/affix/ng-nest-ui-affix.ts"],"sourcesContent":["import { XNumber, XPropertyFunction, XToCssPixelValue } from '@ng-nest/ui/core';\r\nimport { Component, input } from '@angular/core';\r\n\r\n/**\r\n * Affix\r\n * @selector x-affix\r\n * @decorator component\r\n */\r\nexport const XAffixPrefix = 'x-affix';\r\nexport const X_AFFIX_CONFIG_NAME = 'affix';\r\n\r\n/**\r\n * Affix Property\r\n */\r\n@Component({ selector: `${XAffixPrefix}-property`, template: '' })\r\nexport class XAffixProperty extends XPropertyFunction(X_AFFIX_CONFIG_NAME) {\r\n /**\r\n * @zh_CN 顶部距离\r\n * @en_US Distance from top\r\n * @example\r\n * \r\n * ```html\r\n * <x-affix top=\"5rem\">\r\n * <div>有垂直滚动条,我与顶部距离5rem</div>\r\n * </x-affix>\r\n * ```\r\n * \r\n */\r\n readonly top = input<string, XNumber>(this.config?.top!, { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 左边距离\r\n * @en_US Distance from left\r\n * @example\r\n * \r\n * ```html\r\n * <x-affix left=\"5rem\">\r\n * <div>有横向滚动条,我与左边距离5rem</div>\r\n * </x-affix>\r\n * ```\r\n * \r\n */\r\n readonly left = input<string, XNumber>(this.config?.left!, { transform: XToCssPixelValue });\r\n}\r\n","import { Component, ViewEncapsulation, ChangeDetectionStrategy } from '@angular/core';\r\nimport { XAffixPrefix, XAffixProperty } from './affix.property';\r\n\r\n@Component({\r\n selector: `${XAffixPrefix}`,\r\n templateUrl: './affix.component.html',\r\n styleUrls: ['./affix.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XAffixComponent extends XAffixProperty {}\r\n","<div #affix class=\"x-affix\" [style.top]=\"top()\" [style.left]=\"left()\">\r\n <ng-content></ng-content>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { XAffixComponent } from './affix.component';\r\n\r\n@NgModule({\r\n exports: [XAffixComponent],\r\n imports: [XAffixComponent]\r\n})\r\nexport class XAffixModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;AAGA;;;;AAIG;AACI,MAAM,YAAY,GAAG;AACrB,MAAM,mBAAmB,GAAG;AAEnC;;AAEG;MAEU,cAAe,SAAQ,iBAAiB,CAAC,mBAAmB,CAAC,CAAA;AAD1E,IAAA,WAAA,GAAA;;AAEE;;;;;;;;;;;AAWG;AACM,QAAA,IAAA,CAAA,GAAG,GAAG,KAAK,CAAkB,IAAI,CAAC,MAAM,EAAE,GAAI,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,KAAA,EAAI,SAAS,EAAE,gBAAgB,OAA7B,EAAE,SAAS,EAAE,gBAAgB,EAAE,GAAC;AACzF;;;;;;;;;;;AAWG;AACM,QAAA,IAAA,CAAA,IAAI,GAAG,KAAK,CAAkB,IAAI,CAAC,MAAM,EAAE,IAAK,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,MAAA,EAAI,SAAS,EAAE,gBAAgB,OAA7B,EAAE,SAAS,EAAE,gBAAgB,EAAE,GAAC;AAC5F,IAAA;iIA3BY,cAAc,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAd,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,cAAc,sVADkC,EAAE,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;;2FAClD,cAAc,EAAA,UAAA,EAAA,CAAA;kBAD1B,SAAS;mBAAC,EAAE,QAAQ,EAAE,CAAA,EAAG,YAAY,WAAW,EAAE,QAAQ,EAAE,EAAE,EAAE;;;ACJ3D,MAAO,eAAgB,SAAQ,cAAc,CAAA;iIAAtC,eAAe,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAf,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAe,0FCV5B,2HAGA,EAAA,MAAA,EAAA,CAAA,8EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FDOa,eAAe,EAAA,UAAA,EAAA,CAAA;kBAP3B,SAAS;+BACE,CAAA,EAAG,YAAY,EAAE,EAAA,aAAA,EAGZ,iBAAiB,CAAC,IAAI,EAAA,eAAA,EACpB,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,2HAAA,EAAA,MAAA,EAAA,CAAA,8EAAA,CAAA,EAAA;;;MEDpC,YAAY,CAAA;iIAAZ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;kIAAZ,YAAY,EAAA,OAAA,EAAA,CAFb,eAAe,CAAA,EAAA,OAAA,EAAA,CADf,eAAe,CAAA,EAAA,CAAA,CAAA;kIAGd,YAAY,EAAA,CAAA,CAAA;;2FAAZ,YAAY,EAAA,UAAA,EAAA,CAAA;kBAJxB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,eAAe,CAAC;oBAC1B,OAAO,EAAE,CAAC,eAAe;AAC1B,iBAAA;;;ACND;;AAEG;;;;"}
@@ -85,6 +85,20 @@ class XAlertProperty extends XPropertyFunction(X_ALERT_CONFIG_NAME) {
85
85
  *
86
86
  */
87
87
  this.effect = input(this.config?.effect ?? 'light', ...(ngDevMode ? [{ debugName: "effect" }] : []));
88
+ /**
89
+ * @zh_CN 形态变体
90
+ * @en_US Variant
91
+ * @example
92
+ *
93
+ * ```html
94
+ * <x-alert variant="outlined" > </x-alert>
95
+ * <x-alert variant="filled" > </x-alert>
96
+ * <x-alert variant="shadow" > </x-alert>
97
+ * <x-alert variant="borderless" > </x-alert>
98
+ * ```
99
+ *
100
+ */
101
+ this.variant = input(this.config?.variant ?? 'shadow', ...(ngDevMode ? [{ debugName: "variant" }] : []));
88
102
  /**
89
103
  * @zh_CN 隐藏关闭按钮
90
104
  * @en_US Hide close button
@@ -314,13 +328,11 @@ class XAlertProperty extends XPropertyFunction(X_ALERT_CONFIG_NAME) {
314
328
  this.resizing = output();
315
329
  }
316
330
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XAlertProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
317
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.0", type: XAlertProperty, isStandalone: true, selector: "x-alert-property", inputs: { hide: { classPropertyName: "hide", publicName: "hide", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, content: { classPropertyName: "content", publicName: "content", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, effect: { classPropertyName: "effect", publicName: "effect", isSignal: true, isRequired: false, transformFunction: null }, hideClose: { classPropertyName: "hideClose", publicName: "hideClose", isSignal: true, isRequired: false, transformFunction: null }, closeText: { classPropertyName: "closeText", publicName: "closeText", isSignal: true, isRequired: false, transformFunction: null }, showIcon: { classPropertyName: "showIcon", publicName: "showIcon", isSignal: true, isRequired: false, transformFunction: null }, disabledAnimation: { classPropertyName: "disabledAnimation", publicName: "disabledAnimation", isSignal: true, isRequired: false, transformFunction: null }, duration: { classPropertyName: "duration", publicName: "duration", isSignal: true, isRequired: false, transformFunction: null }, manual: { classPropertyName: "manual", publicName: "manual", isSignal: true, isRequired: false, transformFunction: null }, draggable: { classPropertyName: "draggable", publicName: "draggable", isSignal: true, isRequired: false, transformFunction: null }, resizable: { classPropertyName: "resizable", publicName: "resizable", isSignal: true, isRequired: false, transformFunction: null }, offsetLeft: { classPropertyName: "offsetLeft", publicName: "offsetLeft", isSignal: true, isRequired: false, transformFunction: null }, offsetTop: { classPropertyName: "offsetTop", publicName: "offsetTop", isSignal: true, isRequired: false, transformFunction: null }, minWidth: { classPropertyName: "minWidth", publicName: "minWidth", isSignal: true, isRequired: false, transformFunction: null }, minHeight: { classPropertyName: "minHeight", publicName: "minHeight", isSignal: true, isRequired: false, transformFunction: null }, dragBoundary: { classPropertyName: "dragBoundary", publicName: "dragBoundary", isSignal: true, isRequired: false, transformFunction: null }, dragFreeDragPosition: { classPropertyName: "dragFreeDragPosition", publicName: "dragFreeDragPosition", isSignal: true, isRequired: false, transformFunction: null }, operationTpl: { classPropertyName: "operationTpl", publicName: "operationTpl", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { close: "close", dragEnded: "dragEnded", resizing: "resizing" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
331
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.0", type: XAlertProperty, isStandalone: true, selector: "x-alert-property", inputs: { hide: { classPropertyName: "hide", publicName: "hide", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, content: { classPropertyName: "content", publicName: "content", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, effect: { classPropertyName: "effect", publicName: "effect", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, hideClose: { classPropertyName: "hideClose", publicName: "hideClose", isSignal: true, isRequired: false, transformFunction: null }, closeText: { classPropertyName: "closeText", publicName: "closeText", isSignal: true, isRequired: false, transformFunction: null }, showIcon: { classPropertyName: "showIcon", publicName: "showIcon", isSignal: true, isRequired: false, transformFunction: null }, disabledAnimation: { classPropertyName: "disabledAnimation", publicName: "disabledAnimation", isSignal: true, isRequired: false, transformFunction: null }, duration: { classPropertyName: "duration", publicName: "duration", isSignal: true, isRequired: false, transformFunction: null }, manual: { classPropertyName: "manual", publicName: "manual", isSignal: true, isRequired: false, transformFunction: null }, draggable: { classPropertyName: "draggable", publicName: "draggable", isSignal: true, isRequired: false, transformFunction: null }, resizable: { classPropertyName: "resizable", publicName: "resizable", isSignal: true, isRequired: false, transformFunction: null }, offsetLeft: { classPropertyName: "offsetLeft", publicName: "offsetLeft", isSignal: true, isRequired: false, transformFunction: null }, offsetTop: { classPropertyName: "offsetTop", publicName: "offsetTop", isSignal: true, isRequired: false, transformFunction: null }, minWidth: { classPropertyName: "minWidth", publicName: "minWidth", isSignal: true, isRequired: false, transformFunction: null }, minHeight: { classPropertyName: "minHeight", publicName: "minHeight", isSignal: true, isRequired: false, transformFunction: null }, dragBoundary: { classPropertyName: "dragBoundary", publicName: "dragBoundary", isSignal: true, isRequired: false, transformFunction: null }, dragFreeDragPosition: { classPropertyName: "dragFreeDragPosition", publicName: "dragFreeDragPosition", isSignal: true, isRequired: false, transformFunction: null }, operationTpl: { classPropertyName: "operationTpl", publicName: "operationTpl", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { close: "close", dragEnded: "dragEnded", resizing: "resizing" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
318
332
  }
319
333
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XAlertProperty, decorators: [{
320
334
  type: Component,
321
- args: [{
322
- selector: `${XAlertPrefix}-property`, template: ''
323
- }]
335
+ args: [{ selector: `${XAlertPrefix}-property`, template: '' }]
324
336
  }] });
325
337
 
326
338
  class XAlertComponent extends XAlertProperty {
@@ -331,7 +343,8 @@ class XAlertComponent extends XAlertProperty {
331
343
  [`${XAlertPrefix}-${this.type()}`]: !XIsEmpty(this.type()),
332
344
  [`x-${this.effect()}`]: !XIsEmpty(this.effect()),
333
345
  [`${XAlertPrefix}-icon-medium`]: !XIsEmpty(this.title()) && !XIsEmpty(this.content()) && !XIsEmpty(this.showIcon()),
334
- [`${XAlertPrefix}-draggable`]: this.draggable()
346
+ [`${XAlertPrefix}-draggable`]: this.draggable(),
347
+ [`${XAlertPrefix}-${this.variant()}`]: !XIsEmpty(this.variant())
335
348
  }), ...(ngDevMode ? [{ debugName: "classMap" }] : []));
336
349
  this.unSubject = new Subject();
337
350
  this.isBrowser = isPlatformBrowser(inject(PLATFORM_ID));
@@ -368,7 +381,7 @@ class XAlertComponent extends XAlertProperty {
368
381
  }
369
382
  }
370
383
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XAlertComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
371
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.0", type: XAlertComponent, isStandalone: true, selector: "x-alert", usesInheritance: true, ngImport: i0, template: "@if (!styleHide() && !hide()) {\r\n <div\r\n class=\"x-alert\"\r\n [class.x-alert-has-close]=\"!hideClose()\"\r\n [class.x-alert-icon-content]=\"showIcon() && content()\"\r\n cdkDrag\r\n (cdkDragEnded)=\"dragEnded.emit($event)\"\r\n [cdkDragFreeDragPosition]=\"dragFreeDragPosition()!\"\r\n [cdkDragDisabled]=\"!draggable()\"\r\n [cdkDragBoundary]=\"dragBoundary()!\"\r\n [ngClass]=\"classMap()\"\r\n @x-fade-animation\r\n [@.disabled]=\"disabledAnimation()\"\r\n (@x-fade-animation.done)=\"onCloseAnimationDone()\"\r\n [xResizable]=\"resizable()!\"\r\n (resizing)=\"resizing.emit($event)\"\r\n [offsetLeft]=\"offsetLeft()\"\r\n [offsetTop]=\"offsetTop()\"\r\n [style.minWidth]=\"minWidth()\"\r\n [style.minHeight]=\"minHeight()\"\r\n >\r\n @if (showIcon()) {\r\n <ng-container *ngTemplateOutlet=\"iconTpl\"></ng-container>\r\n }\r\n <ng-template #iconTpl>\r\n @switch (type()) {\r\n @case ('success') {\r\n <x-icon class=\"x-alert-icon\" type=\"adf-check-circle\"></x-icon>\r\n }\r\n @case ('info') {\r\n <x-icon class=\"x-alert-icon\" type=\"adf-info-circle\"></x-icon>\r\n }\r\n @case ('warning') {\r\n <x-icon class=\"x-alert-icon\" type=\"adf-exclamation-circle\"></x-icon>\r\n }\r\n @case ('error') {\r\n <x-icon class=\"x-alert-icon\" type=\"adf-close-circle\"></x-icon>\r\n }\r\n @case ('loading') {\r\n <x-icon class=\"x-alert-icon\" type=\"fto-loader\" [spin]=\"true\"></x-icon>\r\n }\r\n }\r\n </ng-template>\r\n <div class=\"x-alert-inner\">\r\n <span class=\"x-alert-title\" cdkDragHandle [class.x-bold]=\"title() && content()\">\r\n <ng-container *xOutlet=\"title(); context: { $iconTpl: iconTpl }\">{{ title() }}</ng-container>\r\n </span>\r\n @if (content()) {\r\n <div class=\"x-alert-content\">\r\n <ng-container *xOutlet=\"content(); context: { $iconTpl: iconTpl }\">{{ content() }}</ng-container>\r\n </div>\r\n }\r\n <div class=\"x-alert-close\">\r\n <div class=\"x-alert-operation\" *xOutlet=\"operationTpl()\">{{ operationTpl() }}</div>\r\n @if (!hideClose()) {\r\n <x-button class=\"x-alert-operation-close\" size=\"small\" [icon]=\"!closeText() ? 'fto-x' : ''\" [type]=\"'text'\" (click)=\"onClose()\" closable>\r\n {{ closeText() }}\r\n </x-button>\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n}\r\n", styles: ["x-alert{display:block}.x-alert{margin:0;padding:0}.x-alert{background-color:var(--x-background);border:.0625rem solid var(--x-border-300);border-radius:var(--x-border-radius);padding:.5rem 1rem;position:relative;display:flex;align-items:center}.x-alert-close{position:absolute;top:.425rem;right:.425rem}.x-alert-inner{width:100%}.x-alert-title.x-bold{font-weight:600}.x-alert-has-close .x-alert-title{margin-right:1.425rem}.x-alert-content{font-size:calc(var(--x-font-size) - .0625rem);line-height:1.325rem;margin:.25rem 0 0}.x-alert-icon-content{align-items:flex-start}.x-alert-icon.x-icon{font-size:calc(var(--x-font-size) + .25rem);margin-right:.5rem}.x-alert-icon-medium>.x-icon{font-size:1.75rem}.x-alert-draggable .cdk-drag-handle{cursor:move}.x-alert-success.x-light{color:var(--x-success);background-color:var(--x-success-900);border-color:transparent;box-shadow:var(--x-box-shadow)}.x-alert-success.x-light x-button.x-alert-close .x-button{color:var(--x-success-400)}.x-alert-success.x-light x-button.x-alert-close .x-button:hover{color:var(--x-success)}.x-alert-success.x-dark{color:var(--x-success-900);background-color:var(--x-success);border-color:transparent;box-shadow:var(--x-box-shadow)}.x-alert-success.x-dark x-button.x-alert-close .x-button{color:var(--x-success-900)}.x-alert-success.x-dark x-button.x-alert-close .x-button:hover{color:var(--x-background-100)}.x-alert-success.x-white{color:var(--x-text-300);background-color:var(--x-background);border-color:transparent;box-shadow:var(--x-box-shadow)}.x-alert-success.x-white .x-alert-icon.x-icon{color:var(--x-success)}.x-alert-success.x-white x-button.x-alert-close .x-button{color:var(--x-text-400)}.x-alert-success.x-white x-button.x-alert-close .x-button:hover{color:var(--x-text-300)}.x-alert-info.x-light{color:var(--x-info);background-color:var(--x-info-900);border-color:transparent;box-shadow:var(--x-box-shadow)}.x-alert-info.x-light x-button.x-alert-close .x-button{color:var(--x-info-400)}.x-alert-info.x-light x-button.x-alert-close .x-button:hover{color:var(--x-info)}.x-alert-info.x-dark{color:var(--x-info-900);background-color:var(--x-info);border-color:transparent;box-shadow:var(--x-box-shadow)}.x-alert-info.x-dark x-button.x-alert-close .x-button{color:var(--x-info-900)}.x-alert-info.x-dark x-button.x-alert-close .x-button:hover{color:var(--x-background-100)}.x-alert-info.x-white{color:var(--x-text-300);background-color:var(--x-background);border-color:transparent;box-shadow:var(--x-box-shadow)}.x-alert-info.x-white .x-alert-icon.x-icon{color:var(--x-info)}.x-alert-info.x-white x-button.x-alert-close .x-button{color:var(--x-text-400)}.x-alert-info.x-white x-button.x-alert-close .x-button:hover{color:var(--x-text-300)}.x-alert-warning.x-light{color:var(--x-warning);background-color:var(--x-warning-900);border-color:transparent;box-shadow:var(--x-box-shadow)}.x-alert-warning.x-light x-button.x-alert-close .x-button{color:var(--x-warning-400)}.x-alert-warning.x-light x-button.x-alert-close .x-button:hover{color:var(--x-warning)}.x-alert-warning.x-dark{color:var(--x-warning-900);background-color:var(--x-warning);border-color:transparent;box-shadow:var(--x-box-shadow)}.x-alert-warning.x-dark x-button.x-alert-close .x-button{color:var(--x-warning-900)}.x-alert-warning.x-dark x-button.x-alert-close .x-button:hover{color:var(--x-background-100)}.x-alert-warning.x-white{color:var(--x-text-300);background-color:var(--x-background);border-color:transparent;box-shadow:var(--x-box-shadow)}.x-alert-warning.x-white .x-alert-icon.x-icon{color:var(--x-warning)}.x-alert-warning.x-white x-button.x-alert-close .x-button{color:var(--x-text-400)}.x-alert-warning.x-white x-button.x-alert-close .x-button:hover{color:var(--x-text-300)}.x-alert-error.x-light{color:var(--x-danger);background-color:var(--x-danger-900);border-color:transparent;box-shadow:var(--x-box-shadow)}.x-alert-error.x-light x-button.x-alert-close .x-button{color:var(--x-danger-400)}.x-alert-error.x-light x-button.x-alert-close .x-button:hover{color:var(--x-danger)}.x-alert-error.x-dark{color:var(--x-danger-900);background-color:var(--x-danger);border-color:transparent;box-shadow:var(--x-box-shadow)}.x-alert-error.x-dark x-button.x-alert-close .x-button{color:var(--x-danger-900)}.x-alert-error.x-dark x-button.x-alert-close .x-button:hover{color:var(--x-background-100)}.x-alert-error.x-white{color:var(--x-text-300);background-color:var(--x-background);border-color:transparent;box-shadow:var(--x-box-shadow)}.x-alert-error.x-white .x-alert-icon.x-icon{color:var(--x-danger)}.x-alert-error.x-white x-button.x-alert-close .x-button{color:var(--x-text-400)}.x-alert-error.x-white x-button.x-alert-close .x-button:hover{color:var(--x-text-300)}.x-alert-loading.x-light{color:var(--x-primary);background-color:var(--x-info-900);border-color:transparent;box-shadow:var(--x-box-shadow)}.x-alert-loading.x-light x-button.x-alert-close .x-button{color:var(--x-info-400)}.x-alert-loading.x-light x-button.x-alert-close .x-button:hover{color:var(--x-primary)}.x-alert-loading.x-dark{color:var(--x-info-900);background-color:var(--x-primary);border-color:transparent;box-shadow:var(--x-box-shadow)}.x-alert-loading.x-dark x-button.x-alert-close .x-button{color:var(--x-info-900)}.x-alert-loading.x-dark x-button.x-alert-close .x-button:hover{color:var(--x-background-100)}.x-alert-loading.x-white{color:var(--x-text-300);background-color:var(--x-background);border-color:transparent;box-shadow:var(--x-box-shadow)}.x-alert-loading.x-white .x-alert-icon.x-icon{color:var(--x-primary)}.x-alert-loading.x-white x-button.x-alert-close .x-button{color:var(--x-text-400)}.x-alert-loading.x-white x-button.x-alert-close .x-button:hover{color:var(--x-text-300)}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: DragDropModule }, { kind: "directive", type: i1.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i1.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "component", type: XIconComponent, selector: "x-icon" }, { kind: "component", type: XButtonComponent, selector: "x-button" }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }, { kind: "directive", type: XResizableDirective, selector: "[xResizable]" }], animations: [XFadeAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
384
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.0", type: XAlertComponent, isStandalone: true, selector: "x-alert", usesInheritance: true, ngImport: i0, template: "@if (!styleHide() && !hide()) {\r\n <div\r\n class=\"x-alert\"\r\n [class.x-alert-has-close]=\"!hideClose()\"\r\n [class.x-alert-icon-content]=\"showIcon() && content()\"\r\n cdkDrag\r\n (cdkDragEnded)=\"dragEnded.emit($event)\"\r\n [cdkDragFreeDragPosition]=\"dragFreeDragPosition()!\"\r\n [cdkDragDisabled]=\"!draggable()\"\r\n [cdkDragBoundary]=\"dragBoundary()!\"\r\n [ngClass]=\"classMap()\"\r\n @x-fade-animation\r\n [@.disabled]=\"disabledAnimation()\"\r\n (@x-fade-animation.done)=\"onCloseAnimationDone()\"\r\n [xResizable]=\"resizable()!\"\r\n (resizing)=\"resizing.emit($event)\"\r\n [offsetLeft]=\"offsetLeft()\"\r\n [offsetTop]=\"offsetTop()\"\r\n [style.minWidth]=\"minWidth()\"\r\n [style.minHeight]=\"minHeight()\"\r\n >\r\n @if (showIcon()) {\r\n <ng-container *ngTemplateOutlet=\"iconTpl\"></ng-container>\r\n }\r\n <ng-template #iconTpl>\r\n @switch (type()) {\r\n @case ('success') {\r\n <x-icon class=\"x-alert-icon\" type=\"adf-check-circle\"></x-icon>\r\n }\r\n @case ('info') {\r\n <x-icon class=\"x-alert-icon\" type=\"adf-info-circle\"></x-icon>\r\n }\r\n @case ('warning') {\r\n <x-icon class=\"x-alert-icon\" type=\"adf-exclamation-circle\"></x-icon>\r\n }\r\n @case ('error') {\r\n <x-icon class=\"x-alert-icon\" type=\"adf-close-circle\"></x-icon>\r\n }\r\n @case ('loading') {\r\n <x-icon class=\"x-alert-icon\" type=\"fto-loader\" [spin]=\"true\"></x-icon>\r\n }\r\n }\r\n </ng-template>\r\n <div class=\"x-alert-inner\">\r\n <span class=\"x-alert-title\" cdkDragHandle [class.x-bold]=\"title() && content()\">\r\n <ng-container *xOutlet=\"title(); context: { $iconTpl: iconTpl }\">{{ title() }}</ng-container>\r\n </span>\r\n @if (content()) {\r\n <div class=\"x-alert-content\">\r\n <ng-container *xOutlet=\"content(); context: { $iconTpl: iconTpl }\">{{ content() }}</ng-container>\r\n </div>\r\n }\r\n <div class=\"x-alert-close\">\r\n <div class=\"x-alert-operation\" *xOutlet=\"operationTpl()\">{{ operationTpl() }}</div>\r\n @if (!hideClose()) {\r\n <x-button class=\"x-alert-operation-close\" size=\"small\" [icon]=\"!closeText() ? 'fto-x' : ''\" [type]=\"'text'\" (click)=\"onClose()\" closable>\r\n {{ closeText() }}\r\n </x-button>\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n}\r\n", styles: ["x-alert{display:block}.x-alert{margin:0;padding:0}.x-alert{background-color:var(--x-background);border:.0625rem solid var(--x-border-300);border-radius:var(--x-border-radius);padding:.5rem 1rem;position:relative;display:flex;align-items:center}.x-alert-close{position:absolute;top:.425rem;right:.425rem}.x-alert-inner{width:100%}.x-alert-title.x-bold{font-weight:600}.x-alert-has-close .x-alert-title{margin-right:1.425rem}.x-alert-content{font-size:calc(var(--x-font-size) - .0625rem);line-height:1.325rem;margin:.25rem 0 0}.x-alert-icon-content{align-items:flex-start}.x-alert-icon.x-icon{font-size:calc(var(--x-font-size) + .25rem);margin-right:.5rem}.x-alert-icon-medium>.x-icon{font-size:1.75rem}.x-alert-draggable .cdk-drag-handle{cursor:move}.x-alert-success.x-light{color:var(--x-success);background-color:var(--x-success-900)}.x-alert-success.x-light x-button.x-alert-close .x-button{color:var(--x-success-400)}.x-alert-success.x-light x-button.x-alert-close .x-button:hover{color:var(--x-success)}.x-alert-success.x-dark{color:var(--x-success-900);background-color:var(--x-success)}.x-alert-success.x-dark x-button.x-alert-close .x-button{color:var(--x-success-900)}.x-alert-success.x-dark x-button.x-alert-close .x-button:hover{color:var(--x-background-100)}.x-alert-success.x-white{color:var(--x-text-300);background-color:var(--x-background)}.x-alert-success.x-white .x-alert-icon.x-icon{color:var(--x-success)}.x-alert-success.x-white x-button.x-alert-close .x-button{color:var(--x-text-400)}.x-alert-success.x-white x-button.x-alert-close .x-button:hover{color:var(--x-text-300)}.x-alert-success.x-alert-shadow{box-shadow:var(--x-box-shadow);border-color:transparent}.x-alert-success.x-alert-outlined{border-color:var(--x-success-800);background-color:transparent}.x-alert-success.x-alert-filled{border-color:var(--x-success-800)}.x-alert-success.x-alert-borderless{border-color:var(--x-background)}.x-alert-info.x-light{color:var(--x-info);background-color:var(--x-info-900)}.x-alert-info.x-light x-button.x-alert-close .x-button{color:var(--x-info-400)}.x-alert-info.x-light x-button.x-alert-close .x-button:hover{color:var(--x-info)}.x-alert-info.x-dark{color:var(--x-info-900);background-color:var(--x-info)}.x-alert-info.x-dark x-button.x-alert-close .x-button{color:var(--x-info-900)}.x-alert-info.x-dark x-button.x-alert-close .x-button:hover{color:var(--x-background-100)}.x-alert-info.x-white{color:var(--x-text-300);background-color:var(--x-background)}.x-alert-info.x-white .x-alert-icon.x-icon{color:var(--x-info)}.x-alert-info.x-white x-button.x-alert-close .x-button{color:var(--x-text-400)}.x-alert-info.x-white x-button.x-alert-close .x-button:hover{color:var(--x-text-300)}.x-alert-info.x-alert-shadow{box-shadow:var(--x-box-shadow);border-color:transparent}.x-alert-info.x-alert-outlined{border-color:var(--x-info-800);background-color:transparent}.x-alert-info.x-alert-filled{border-color:var(--x-info-800)}.x-alert-info.x-alert-borderless{border-color:var(--x-background)}.x-alert-warning.x-light{color:var(--x-warning);background-color:var(--x-warning-800)}.x-alert-warning.x-light x-button.x-alert-close .x-button{color:var(--x-warning-400)}.x-alert-warning.x-light x-button.x-alert-close .x-button:hover{color:var(--x-warning)}.x-alert-warning.x-dark{color:var(--x-warning-800);background-color:var(--x-warning)}.x-alert-warning.x-dark x-button.x-alert-close .x-button{color:var(--x-warning-800)}.x-alert-warning.x-dark x-button.x-alert-close .x-button:hover{color:var(--x-background-100)}.x-alert-warning.x-white{color:var(--x-text-300);background-color:var(--x-background)}.x-alert-warning.x-white .x-alert-icon.x-icon{color:var(--x-warning)}.x-alert-warning.x-white x-button.x-alert-close .x-button{color:var(--x-text-400)}.x-alert-warning.x-white x-button.x-alert-close .x-button:hover{color:var(--x-text-300)}.x-alert-warning.x-alert-shadow{box-shadow:var(--x-box-shadow);border-color:transparent}.x-alert-warning.x-alert-outlined{border-color:var(--x-warning-700);background-color:transparent}.x-alert-warning.x-alert-filled{border-color:var(--x-warning-700)}.x-alert-warning.x-alert-borderless{border-color:var(--x-background)}.x-alert-error.x-light{color:var(--x-danger);background-color:var(--x-danger-900)}.x-alert-error.x-light x-button.x-alert-close .x-button{color:var(--x-danger-400)}.x-alert-error.x-light x-button.x-alert-close .x-button:hover{color:var(--x-danger)}.x-alert-error.x-dark{color:var(--x-danger-900);background-color:var(--x-danger)}.x-alert-error.x-dark x-button.x-alert-close .x-button{color:var(--x-danger-900)}.x-alert-error.x-dark x-button.x-alert-close .x-button:hover{color:var(--x-background-100)}.x-alert-error.x-white{color:var(--x-text-300);background-color:var(--x-background)}.x-alert-error.x-white .x-alert-icon.x-icon{color:var(--x-danger)}.x-alert-error.x-white x-button.x-alert-close .x-button{color:var(--x-text-400)}.x-alert-error.x-white x-button.x-alert-close .x-button:hover{color:var(--x-text-300)}.x-alert-error.x-alert-shadow{box-shadow:var(--x-box-shadow);border-color:transparent}.x-alert-error.x-alert-outlined{border-color:var(--x-danger-800);background-color:transparent}.x-alert-error.x-alert-filled{border-color:var(--x-danger-800)}.x-alert-error.x-alert-borderless{border-color:var(--x-background)}.x-alert-loading.x-light{color:var(--x-primary);background-color:var(--x-info-900)}.x-alert-loading.x-light x-button.x-alert-close .x-button{color:var(--x-info-400)}.x-alert-loading.x-light x-button.x-alert-close .x-button:hover{color:var(--x-primary)}.x-alert-loading.x-dark{color:var(--x-info-900);background-color:var(--x-primary)}.x-alert-loading.x-dark x-button.x-alert-close .x-button{color:var(--x-info-900)}.x-alert-loading.x-dark x-button.x-alert-close .x-button:hover{color:var(--x-background-100)}.x-alert-loading.x-white{color:var(--x-text-300);background-color:var(--x-background)}.x-alert-loading.x-white .x-alert-icon.x-icon{color:var(--x-primary)}.x-alert-loading.x-white x-button.x-alert-close .x-button{color:var(--x-text-400)}.x-alert-loading.x-white x-button.x-alert-close .x-button:hover{color:var(--x-text-300)}.x-alert-loading.x-alert-shadow{box-shadow:var(--x-box-shadow);border-color:transparent}.x-alert-loading.x-alert-outlined{border-color:var(--x-info-800);background-color:transparent}.x-alert-loading.x-alert-filled{border-color:var(--x-info-800)}.x-alert-loading.x-alert-borderless{border-color:var(--x-background)}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: DragDropModule }, { kind: "directive", type: i1.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i1.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "component", type: XIconComponent, selector: "x-icon" }, { kind: "component", type: XButtonComponent, selector: "x-button" }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }, { kind: "directive", type: XResizableDirective, selector: "[xResizable]" }], animations: [XFadeAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
372
385
  }
373
386
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XAlertComponent, decorators: [{
374
387
  type: Component,
@@ -380,7 +393,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImpor
380
393
  XButtonComponent,
381
394
  XOutletDirective,
382
395
  XResizableDirective
383
- ], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, animations: [XFadeAnimation], template: "@if (!styleHide() && !hide()) {\r\n <div\r\n class=\"x-alert\"\r\n [class.x-alert-has-close]=\"!hideClose()\"\r\n [class.x-alert-icon-content]=\"showIcon() && content()\"\r\n cdkDrag\r\n (cdkDragEnded)=\"dragEnded.emit($event)\"\r\n [cdkDragFreeDragPosition]=\"dragFreeDragPosition()!\"\r\n [cdkDragDisabled]=\"!draggable()\"\r\n [cdkDragBoundary]=\"dragBoundary()!\"\r\n [ngClass]=\"classMap()\"\r\n @x-fade-animation\r\n [@.disabled]=\"disabledAnimation()\"\r\n (@x-fade-animation.done)=\"onCloseAnimationDone()\"\r\n [xResizable]=\"resizable()!\"\r\n (resizing)=\"resizing.emit($event)\"\r\n [offsetLeft]=\"offsetLeft()\"\r\n [offsetTop]=\"offsetTop()\"\r\n [style.minWidth]=\"minWidth()\"\r\n [style.minHeight]=\"minHeight()\"\r\n >\r\n @if (showIcon()) {\r\n <ng-container *ngTemplateOutlet=\"iconTpl\"></ng-container>\r\n }\r\n <ng-template #iconTpl>\r\n @switch (type()) {\r\n @case ('success') {\r\n <x-icon class=\"x-alert-icon\" type=\"adf-check-circle\"></x-icon>\r\n }\r\n @case ('info') {\r\n <x-icon class=\"x-alert-icon\" type=\"adf-info-circle\"></x-icon>\r\n }\r\n @case ('warning') {\r\n <x-icon class=\"x-alert-icon\" type=\"adf-exclamation-circle\"></x-icon>\r\n }\r\n @case ('error') {\r\n <x-icon class=\"x-alert-icon\" type=\"adf-close-circle\"></x-icon>\r\n }\r\n @case ('loading') {\r\n <x-icon class=\"x-alert-icon\" type=\"fto-loader\" [spin]=\"true\"></x-icon>\r\n }\r\n }\r\n </ng-template>\r\n <div class=\"x-alert-inner\">\r\n <span class=\"x-alert-title\" cdkDragHandle [class.x-bold]=\"title() && content()\">\r\n <ng-container *xOutlet=\"title(); context: { $iconTpl: iconTpl }\">{{ title() }}</ng-container>\r\n </span>\r\n @if (content()) {\r\n <div class=\"x-alert-content\">\r\n <ng-container *xOutlet=\"content(); context: { $iconTpl: iconTpl }\">{{ content() }}</ng-container>\r\n </div>\r\n }\r\n <div class=\"x-alert-close\">\r\n <div class=\"x-alert-operation\" *xOutlet=\"operationTpl()\">{{ operationTpl() }}</div>\r\n @if (!hideClose()) {\r\n <x-button class=\"x-alert-operation-close\" size=\"small\" [icon]=\"!closeText() ? 'fto-x' : ''\" [type]=\"'text'\" (click)=\"onClose()\" closable>\r\n {{ closeText() }}\r\n </x-button>\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n}\r\n", styles: ["x-alert{display:block}.x-alert{margin:0;padding:0}.x-alert{background-color:var(--x-background);border:.0625rem solid var(--x-border-300);border-radius:var(--x-border-radius);padding:.5rem 1rem;position:relative;display:flex;align-items:center}.x-alert-close{position:absolute;top:.425rem;right:.425rem}.x-alert-inner{width:100%}.x-alert-title.x-bold{font-weight:600}.x-alert-has-close .x-alert-title{margin-right:1.425rem}.x-alert-content{font-size:calc(var(--x-font-size) - .0625rem);line-height:1.325rem;margin:.25rem 0 0}.x-alert-icon-content{align-items:flex-start}.x-alert-icon.x-icon{font-size:calc(var(--x-font-size) + .25rem);margin-right:.5rem}.x-alert-icon-medium>.x-icon{font-size:1.75rem}.x-alert-draggable .cdk-drag-handle{cursor:move}.x-alert-success.x-light{color:var(--x-success);background-color:var(--x-success-900);border-color:transparent;box-shadow:var(--x-box-shadow)}.x-alert-success.x-light x-button.x-alert-close .x-button{color:var(--x-success-400)}.x-alert-success.x-light x-button.x-alert-close .x-button:hover{color:var(--x-success)}.x-alert-success.x-dark{color:var(--x-success-900);background-color:var(--x-success);border-color:transparent;box-shadow:var(--x-box-shadow)}.x-alert-success.x-dark x-button.x-alert-close .x-button{color:var(--x-success-900)}.x-alert-success.x-dark x-button.x-alert-close .x-button:hover{color:var(--x-background-100)}.x-alert-success.x-white{color:var(--x-text-300);background-color:var(--x-background);border-color:transparent;box-shadow:var(--x-box-shadow)}.x-alert-success.x-white .x-alert-icon.x-icon{color:var(--x-success)}.x-alert-success.x-white x-button.x-alert-close .x-button{color:var(--x-text-400)}.x-alert-success.x-white x-button.x-alert-close .x-button:hover{color:var(--x-text-300)}.x-alert-info.x-light{color:var(--x-info);background-color:var(--x-info-900);border-color:transparent;box-shadow:var(--x-box-shadow)}.x-alert-info.x-light x-button.x-alert-close .x-button{color:var(--x-info-400)}.x-alert-info.x-light x-button.x-alert-close .x-button:hover{color:var(--x-info)}.x-alert-info.x-dark{color:var(--x-info-900);background-color:var(--x-info);border-color:transparent;box-shadow:var(--x-box-shadow)}.x-alert-info.x-dark x-button.x-alert-close .x-button{color:var(--x-info-900)}.x-alert-info.x-dark x-button.x-alert-close .x-button:hover{color:var(--x-background-100)}.x-alert-info.x-white{color:var(--x-text-300);background-color:var(--x-background);border-color:transparent;box-shadow:var(--x-box-shadow)}.x-alert-info.x-white .x-alert-icon.x-icon{color:var(--x-info)}.x-alert-info.x-white x-button.x-alert-close .x-button{color:var(--x-text-400)}.x-alert-info.x-white x-button.x-alert-close .x-button:hover{color:var(--x-text-300)}.x-alert-warning.x-light{color:var(--x-warning);background-color:var(--x-warning-900);border-color:transparent;box-shadow:var(--x-box-shadow)}.x-alert-warning.x-light x-button.x-alert-close .x-button{color:var(--x-warning-400)}.x-alert-warning.x-light x-button.x-alert-close .x-button:hover{color:var(--x-warning)}.x-alert-warning.x-dark{color:var(--x-warning-900);background-color:var(--x-warning);border-color:transparent;box-shadow:var(--x-box-shadow)}.x-alert-warning.x-dark x-button.x-alert-close .x-button{color:var(--x-warning-900)}.x-alert-warning.x-dark x-button.x-alert-close .x-button:hover{color:var(--x-background-100)}.x-alert-warning.x-white{color:var(--x-text-300);background-color:var(--x-background);border-color:transparent;box-shadow:var(--x-box-shadow)}.x-alert-warning.x-white .x-alert-icon.x-icon{color:var(--x-warning)}.x-alert-warning.x-white x-button.x-alert-close .x-button{color:var(--x-text-400)}.x-alert-warning.x-white x-button.x-alert-close .x-button:hover{color:var(--x-text-300)}.x-alert-error.x-light{color:var(--x-danger);background-color:var(--x-danger-900);border-color:transparent;box-shadow:var(--x-box-shadow)}.x-alert-error.x-light x-button.x-alert-close .x-button{color:var(--x-danger-400)}.x-alert-error.x-light x-button.x-alert-close .x-button:hover{color:var(--x-danger)}.x-alert-error.x-dark{color:var(--x-danger-900);background-color:var(--x-danger);border-color:transparent;box-shadow:var(--x-box-shadow)}.x-alert-error.x-dark x-button.x-alert-close .x-button{color:var(--x-danger-900)}.x-alert-error.x-dark x-button.x-alert-close .x-button:hover{color:var(--x-background-100)}.x-alert-error.x-white{color:var(--x-text-300);background-color:var(--x-background);border-color:transparent;box-shadow:var(--x-box-shadow)}.x-alert-error.x-white .x-alert-icon.x-icon{color:var(--x-danger)}.x-alert-error.x-white x-button.x-alert-close .x-button{color:var(--x-text-400)}.x-alert-error.x-white x-button.x-alert-close .x-button:hover{color:var(--x-text-300)}.x-alert-loading.x-light{color:var(--x-primary);background-color:var(--x-info-900);border-color:transparent;box-shadow:var(--x-box-shadow)}.x-alert-loading.x-light x-button.x-alert-close .x-button{color:var(--x-info-400)}.x-alert-loading.x-light x-button.x-alert-close .x-button:hover{color:var(--x-primary)}.x-alert-loading.x-dark{color:var(--x-info-900);background-color:var(--x-primary);border-color:transparent;box-shadow:var(--x-box-shadow)}.x-alert-loading.x-dark x-button.x-alert-close .x-button{color:var(--x-info-900)}.x-alert-loading.x-dark x-button.x-alert-close .x-button:hover{color:var(--x-background-100)}.x-alert-loading.x-white{color:var(--x-text-300);background-color:var(--x-background);border-color:transparent;box-shadow:var(--x-box-shadow)}.x-alert-loading.x-white .x-alert-icon.x-icon{color:var(--x-primary)}.x-alert-loading.x-white x-button.x-alert-close .x-button{color:var(--x-text-400)}.x-alert-loading.x-white x-button.x-alert-close .x-button:hover{color:var(--x-text-300)}\n"] }]
396
+ ], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, animations: [XFadeAnimation], template: "@if (!styleHide() && !hide()) {\r\n <div\r\n class=\"x-alert\"\r\n [class.x-alert-has-close]=\"!hideClose()\"\r\n [class.x-alert-icon-content]=\"showIcon() && content()\"\r\n cdkDrag\r\n (cdkDragEnded)=\"dragEnded.emit($event)\"\r\n [cdkDragFreeDragPosition]=\"dragFreeDragPosition()!\"\r\n [cdkDragDisabled]=\"!draggable()\"\r\n [cdkDragBoundary]=\"dragBoundary()!\"\r\n [ngClass]=\"classMap()\"\r\n @x-fade-animation\r\n [@.disabled]=\"disabledAnimation()\"\r\n (@x-fade-animation.done)=\"onCloseAnimationDone()\"\r\n [xResizable]=\"resizable()!\"\r\n (resizing)=\"resizing.emit($event)\"\r\n [offsetLeft]=\"offsetLeft()\"\r\n [offsetTop]=\"offsetTop()\"\r\n [style.minWidth]=\"minWidth()\"\r\n [style.minHeight]=\"minHeight()\"\r\n >\r\n @if (showIcon()) {\r\n <ng-container *ngTemplateOutlet=\"iconTpl\"></ng-container>\r\n }\r\n <ng-template #iconTpl>\r\n @switch (type()) {\r\n @case ('success') {\r\n <x-icon class=\"x-alert-icon\" type=\"adf-check-circle\"></x-icon>\r\n }\r\n @case ('info') {\r\n <x-icon class=\"x-alert-icon\" type=\"adf-info-circle\"></x-icon>\r\n }\r\n @case ('warning') {\r\n <x-icon class=\"x-alert-icon\" type=\"adf-exclamation-circle\"></x-icon>\r\n }\r\n @case ('error') {\r\n <x-icon class=\"x-alert-icon\" type=\"adf-close-circle\"></x-icon>\r\n }\r\n @case ('loading') {\r\n <x-icon class=\"x-alert-icon\" type=\"fto-loader\" [spin]=\"true\"></x-icon>\r\n }\r\n }\r\n </ng-template>\r\n <div class=\"x-alert-inner\">\r\n <span class=\"x-alert-title\" cdkDragHandle [class.x-bold]=\"title() && content()\">\r\n <ng-container *xOutlet=\"title(); context: { $iconTpl: iconTpl }\">{{ title() }}</ng-container>\r\n </span>\r\n @if (content()) {\r\n <div class=\"x-alert-content\">\r\n <ng-container *xOutlet=\"content(); context: { $iconTpl: iconTpl }\">{{ content() }}</ng-container>\r\n </div>\r\n }\r\n <div class=\"x-alert-close\">\r\n <div class=\"x-alert-operation\" *xOutlet=\"operationTpl()\">{{ operationTpl() }}</div>\r\n @if (!hideClose()) {\r\n <x-button class=\"x-alert-operation-close\" size=\"small\" [icon]=\"!closeText() ? 'fto-x' : ''\" [type]=\"'text'\" (click)=\"onClose()\" closable>\r\n {{ closeText() }}\r\n </x-button>\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n}\r\n", styles: ["x-alert{display:block}.x-alert{margin:0;padding:0}.x-alert{background-color:var(--x-background);border:.0625rem solid var(--x-border-300);border-radius:var(--x-border-radius);padding:.5rem 1rem;position:relative;display:flex;align-items:center}.x-alert-close{position:absolute;top:.425rem;right:.425rem}.x-alert-inner{width:100%}.x-alert-title.x-bold{font-weight:600}.x-alert-has-close .x-alert-title{margin-right:1.425rem}.x-alert-content{font-size:calc(var(--x-font-size) - .0625rem);line-height:1.325rem;margin:.25rem 0 0}.x-alert-icon-content{align-items:flex-start}.x-alert-icon.x-icon{font-size:calc(var(--x-font-size) + .25rem);margin-right:.5rem}.x-alert-icon-medium>.x-icon{font-size:1.75rem}.x-alert-draggable .cdk-drag-handle{cursor:move}.x-alert-success.x-light{color:var(--x-success);background-color:var(--x-success-900)}.x-alert-success.x-light x-button.x-alert-close .x-button{color:var(--x-success-400)}.x-alert-success.x-light x-button.x-alert-close .x-button:hover{color:var(--x-success)}.x-alert-success.x-dark{color:var(--x-success-900);background-color:var(--x-success)}.x-alert-success.x-dark x-button.x-alert-close .x-button{color:var(--x-success-900)}.x-alert-success.x-dark x-button.x-alert-close .x-button:hover{color:var(--x-background-100)}.x-alert-success.x-white{color:var(--x-text-300);background-color:var(--x-background)}.x-alert-success.x-white .x-alert-icon.x-icon{color:var(--x-success)}.x-alert-success.x-white x-button.x-alert-close .x-button{color:var(--x-text-400)}.x-alert-success.x-white x-button.x-alert-close .x-button:hover{color:var(--x-text-300)}.x-alert-success.x-alert-shadow{box-shadow:var(--x-box-shadow);border-color:transparent}.x-alert-success.x-alert-outlined{border-color:var(--x-success-800);background-color:transparent}.x-alert-success.x-alert-filled{border-color:var(--x-success-800)}.x-alert-success.x-alert-borderless{border-color:var(--x-background)}.x-alert-info.x-light{color:var(--x-info);background-color:var(--x-info-900)}.x-alert-info.x-light x-button.x-alert-close .x-button{color:var(--x-info-400)}.x-alert-info.x-light x-button.x-alert-close .x-button:hover{color:var(--x-info)}.x-alert-info.x-dark{color:var(--x-info-900);background-color:var(--x-info)}.x-alert-info.x-dark x-button.x-alert-close .x-button{color:var(--x-info-900)}.x-alert-info.x-dark x-button.x-alert-close .x-button:hover{color:var(--x-background-100)}.x-alert-info.x-white{color:var(--x-text-300);background-color:var(--x-background)}.x-alert-info.x-white .x-alert-icon.x-icon{color:var(--x-info)}.x-alert-info.x-white x-button.x-alert-close .x-button{color:var(--x-text-400)}.x-alert-info.x-white x-button.x-alert-close .x-button:hover{color:var(--x-text-300)}.x-alert-info.x-alert-shadow{box-shadow:var(--x-box-shadow);border-color:transparent}.x-alert-info.x-alert-outlined{border-color:var(--x-info-800);background-color:transparent}.x-alert-info.x-alert-filled{border-color:var(--x-info-800)}.x-alert-info.x-alert-borderless{border-color:var(--x-background)}.x-alert-warning.x-light{color:var(--x-warning);background-color:var(--x-warning-800)}.x-alert-warning.x-light x-button.x-alert-close .x-button{color:var(--x-warning-400)}.x-alert-warning.x-light x-button.x-alert-close .x-button:hover{color:var(--x-warning)}.x-alert-warning.x-dark{color:var(--x-warning-800);background-color:var(--x-warning)}.x-alert-warning.x-dark x-button.x-alert-close .x-button{color:var(--x-warning-800)}.x-alert-warning.x-dark x-button.x-alert-close .x-button:hover{color:var(--x-background-100)}.x-alert-warning.x-white{color:var(--x-text-300);background-color:var(--x-background)}.x-alert-warning.x-white .x-alert-icon.x-icon{color:var(--x-warning)}.x-alert-warning.x-white x-button.x-alert-close .x-button{color:var(--x-text-400)}.x-alert-warning.x-white x-button.x-alert-close .x-button:hover{color:var(--x-text-300)}.x-alert-warning.x-alert-shadow{box-shadow:var(--x-box-shadow);border-color:transparent}.x-alert-warning.x-alert-outlined{border-color:var(--x-warning-700);background-color:transparent}.x-alert-warning.x-alert-filled{border-color:var(--x-warning-700)}.x-alert-warning.x-alert-borderless{border-color:var(--x-background)}.x-alert-error.x-light{color:var(--x-danger);background-color:var(--x-danger-900)}.x-alert-error.x-light x-button.x-alert-close .x-button{color:var(--x-danger-400)}.x-alert-error.x-light x-button.x-alert-close .x-button:hover{color:var(--x-danger)}.x-alert-error.x-dark{color:var(--x-danger-900);background-color:var(--x-danger)}.x-alert-error.x-dark x-button.x-alert-close .x-button{color:var(--x-danger-900)}.x-alert-error.x-dark x-button.x-alert-close .x-button:hover{color:var(--x-background-100)}.x-alert-error.x-white{color:var(--x-text-300);background-color:var(--x-background)}.x-alert-error.x-white .x-alert-icon.x-icon{color:var(--x-danger)}.x-alert-error.x-white x-button.x-alert-close .x-button{color:var(--x-text-400)}.x-alert-error.x-white x-button.x-alert-close .x-button:hover{color:var(--x-text-300)}.x-alert-error.x-alert-shadow{box-shadow:var(--x-box-shadow);border-color:transparent}.x-alert-error.x-alert-outlined{border-color:var(--x-danger-800);background-color:transparent}.x-alert-error.x-alert-filled{border-color:var(--x-danger-800)}.x-alert-error.x-alert-borderless{border-color:var(--x-background)}.x-alert-loading.x-light{color:var(--x-primary);background-color:var(--x-info-900)}.x-alert-loading.x-light x-button.x-alert-close .x-button{color:var(--x-info-400)}.x-alert-loading.x-light x-button.x-alert-close .x-button:hover{color:var(--x-primary)}.x-alert-loading.x-dark{color:var(--x-info-900);background-color:var(--x-primary)}.x-alert-loading.x-dark x-button.x-alert-close .x-button{color:var(--x-info-900)}.x-alert-loading.x-dark x-button.x-alert-close .x-button:hover{color:var(--x-background-100)}.x-alert-loading.x-white{color:var(--x-text-300);background-color:var(--x-background)}.x-alert-loading.x-white .x-alert-icon.x-icon{color:var(--x-primary)}.x-alert-loading.x-white x-button.x-alert-close .x-button{color:var(--x-text-400)}.x-alert-loading.x-white x-button.x-alert-close .x-button:hover{color:var(--x-text-300)}.x-alert-loading.x-alert-shadow{box-shadow:var(--x-box-shadow);border-color:transparent}.x-alert-loading.x-alert-outlined{border-color:var(--x-info-800);background-color:transparent}.x-alert-loading.x-alert-filled{border-color:var(--x-info-800)}.x-alert-loading.x-alert-borderless{border-color:var(--x-background)}\n"] }]
384
397
  }], ctorParameters: () => [] });
385
398
 
386
399
  class XAlertModule {
@@ -1 +1 @@
1
- {"version":3,"file":"ng-nest-ui-alert.mjs","sources":["../../../../lib/ng-nest/ui/alert/alert.property.ts","../../../../lib/ng-nest/ui/alert/alert.component.ts","../../../../lib/ng-nest/ui/alert/alert.component.html","../../../../lib/ng-nest/ui/alert/alert.module.ts","../../../../lib/ng-nest/ui/alert/ng-nest-ui-alert.ts"],"sourcesContent":["import { XPropertyFunction, XToBoolean, XToCssPixelValue, XToNumber } from '@ng-nest/ui/core';\r\nimport { Component, ElementRef, input, output } from '@angular/core';\r\nimport type { CdkDragEnd } from '@angular/cdk/drag-drop';\r\nimport type { XResizableEvent } from '@ng-nest/ui/resizable';\r\nimport type { XBoolean, XNumber, XEffect, XTemplate, XStatus } from '@ng-nest/ui/core';\r\n\r\n/**\r\n * Alert\r\n * @selector x-alert\r\n * @decorator component\r\n */\r\nexport const XAlertPrefix = 'x-alert';\r\nexport const X_ALERT_CONFIG_NAME = 'alert';\r\n\r\n/**\r\n * Alert Property\r\n */\r\n@Component({\r\n selector: `${XAlertPrefix}-property`, template: ''\r\n})\r\nexport class XAlertProperty extends XPropertyFunction(X_ALERT_CONFIG_NAME) {\r\n /**\r\n * @zh_CN 隐藏\r\n * @en_US Hide\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"隐藏,看不见\" hide> </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly hide = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 标题\r\n * @en_US Title\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"Title\" > </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly title = input<XTemplate>();\r\n /**\r\n * @zh_CN 内容\r\n * @en_US Content\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert content=\"Content\" > </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly content = input<XTemplate>();\r\n /**\r\n * @zh_CN 类型\r\n * @en_US Alert type\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert type=\"success\" > </x-alert>\r\n * <x-alert type=\"info\" > </x-alert>\r\n * <x-alert type=\"warning\" > </x-alert>\r\n * <x-alert type=\"error\" > </x-alert>\r\n * <x-alert type=\"loading\" > </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly type = input<XAlertType>('info');\r\n /**\r\n * @zh_CN 主题\r\n * @en_US Theme\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert effect=\"light\" > </x-alert>\r\n * <x-alert effect=\"dark\" > </x-alert>\r\n * <x-alert effect=\"white\" > </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly effect = input<XEffect>(this.config?.effect ?? 'light');\r\n /**\r\n * @zh_CN 隐藏关闭按钮\r\n * @en_US Hide close button\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"no close button\" hideClose> </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly hideClose = input<boolean, XBoolean>(this.config?.hideClose ?? false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 使用文本关闭按钮\r\n * @en_US Use the text to close button\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"close button is text\" closeText=\"close\"> </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly closeText = input<string>();\r\n /**\r\n * @zh_CN 显示图标\r\n * @en_US Show icon\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert type=\"success\" showIcon> </x-alert>\r\n * <x-alert type=\"info\" showIcon> </x-alert>\r\n * <x-alert type=\"warning\" showIcon> </x-alert>\r\n * <x-alert type=\"error\" showIcon> </x-alert>\r\n * <x-alert type=\"loading\" showIcon> </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly showIcon = input<boolean, XBoolean>(this.config?.showIcon ?? false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 禁用动画\r\n * @en_US Disable animation\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"disabled animation\" disabledAnimation> </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly disabledAnimation = input<boolean, XBoolean>(this.config?.disabledAnimation ?? false, {\r\n transform: XToBoolean\r\n });\r\n /**\r\n * @zh_CN 延迟关闭,默认 0 表示不关闭,ms\r\n * @en_US Delay close, the default value of 0 means do not close. ms\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"duration close\" duration=\"1000\"> </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly duration = input<number, XNumber>(this.config?.duration ?? 0, { transform: XToNumber });\r\n /**\r\n * @zh_CN 手动处理关闭事件\r\n * @en_US Manually handle close events\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"manual close\" manual> </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly manual = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 拖动提示框\r\n * @en_US Drag dialog\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"draggable alert\" draggable> </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly draggable = input<boolean, XBoolean>(this.config?.draggable ?? false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 调整提示框大小\r\n * @en_US Adjust the size of the box\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"resizable alert\" resizable> </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly resizable = input<boolean, XBoolean>(this.config?.resizable ?? false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 开启 resizable 调整大小,偏移屏幕左边\r\n * @en_US Open the resizable resize, offset screen left\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"resizable alert\" resizable offsetLeft=\"100\"> </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly offsetLeft = input<number, XNumber>(0, { transform: XToNumber });\r\n /**\r\n * @zh_CN 开启 resizable 调整大小,偏移屏幕顶部\r\n * @en_US Open the resizable resize, offset screen top\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"resizable alert\" resizable offsetTop=\"100\"> </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly offsetTop = input<number, XNumber>(0, { transform: XToNumber });\r\n /**\r\n * @zh_CN 最小宽度\r\n * @en_US Min width\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"alert min-width\" minWidth=\"100\"> </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly minWidth = input<string, XNumber>(this.config?.minWidth ?? '0', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 最小高度\r\n * @en_US Min height\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"alert min-height\" minHeight=\"100\"> </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly minHeight = input<string, XNumber>(this.config?.minHeight ?? '0', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 拖动范围限制,父节点选择器或者对象\r\n * @en_US Drag dialog\r\n * @example\r\n *\r\n * ```html\r\n * <div #element style=\"width:300px; height: 300px\">\r\n * <x-alert title=\"draggable boundary\" draggable [dragBoundary]=\"element\"> </x-alert>\r\n * </div>\r\n * ```\r\n *\r\n */\r\n readonly dragBoundary = input<string | ElementRef<HTMLElement> | HTMLElement>();\r\n /**\r\n * @zh_CN 设置投放容器外部的 CdkDrag 的位置。可用于为返回的用户恢复元素的位置\r\n * @en_US Set the location of the CDKDRAG outside the container. Can be used to recover elements for returned users\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"draggable boundary\" draggable [dragFreeDragPosition]=\"{ x: 100, y: 100 }\"> </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly dragFreeDragPosition = input<XAlertDragFreeDragPosition>();\r\n /**\r\n * @zh_CN 自定义操作\r\n * @en_US Custom operation\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"operation template\" [operationTpl]=\"operationTpl\"> </x-alert>\r\n * <ng-template #operationTpl>\r\n * <x-button>Button</x-button>\r\n * </ng-template>\r\n * ```\r\n *\r\n */\r\n readonly operationTpl = input<XTemplate>();\r\n /**\r\n * @zh_CN 关闭的事件\r\n * @en_US Closed event\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"operation template\" (close)=\"close()\"> </x-alert>\r\n * ```\r\n *\r\n * ```typescript\r\n * close() {\r\n * console.log(\"close\")\r\n * }\r\n * ```\r\n *\r\n */\r\n readonly close = output();\r\n /**\r\n * @zh_CN 拖动结束的事件\r\n * @en_US Drag end event\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"draggable event\" draggable (dragEnded)=\"dragEnded($event)\"> </x-alert>\r\n * ```\r\n *\r\n * ```typescript\r\n * dragEnded(event: CdkDragEnd) {\r\n * console.log(event)\r\n * }\r\n * ```\r\n *\r\n */\r\n readonly dragEnded = output<CdkDragEnd>();\r\n /**\r\n * @zh_CN 改变尺寸事件\r\n * @en_US Change the size event\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"resizable event\" resizable (resizing)=\"resizing($event)\"> </x-alert>\r\n * ```\r\n *\r\n * ```typescript\r\n * resizing(event: XResizableEvent) {\r\n * console.log(event)\r\n * }\r\n * ```\r\n *\r\n */\r\n readonly resizing = output<XResizableEvent>();\r\n}\r\n\r\n/**\r\n * Alert Option\r\n * @undocument true\r\n */\r\nexport interface XAlertOption {\r\n /**\r\n * 隐藏\r\n */\r\n hide?: boolean;\r\n /**\r\n * 标题\r\n */\r\n title?: XTemplate;\r\n /**\r\n * 内容\r\n */\r\n content?: XTemplate;\r\n /**\r\n * 类型\r\n */\r\n type?: XAlertType;\r\n /**\r\n * 主题\r\n */\r\n effect?: XEffect;\r\n /**\r\n * 隐藏关闭按钮\r\n */\r\n hideClose?: boolean;\r\n /**\r\n * 关闭按钮文字替换\r\n */\r\n closeText?: string;\r\n /**\r\n * 显示图标\r\n */\r\n showIcon?: boolean;\r\n /**\r\n * 禁用动画\r\n */\r\n disabledAnimation?: boolean;\r\n /**\r\n * 延迟关闭,默认 0 表示不关闭\r\n */\r\n duration?: number;\r\n /**\r\n * 手动处理关闭事件\r\n */\r\n manual?: boolean;\r\n /**\r\n * 拖动提示框\r\n */\r\n draggable?: boolean;\r\n /**\r\n * 调整提示框大小\r\n */\r\n resizable?: boolean;\r\n /**\r\n * 开启 resizable 调整大小,偏移屏幕左边\r\n */\r\n offsetLeft?: string;\r\n /**\r\n * 开启 resizable 调整大小,偏移屏幕顶部\r\n */\r\n offsetTop?: string;\r\n /**\r\n * 最小宽度\r\n */\r\n minWidth?: string;\r\n /**\r\n * 最小高度\r\n */\r\n minHeight?: string;\r\n}\r\n\r\n/**\r\n * @zh_CN 类型\r\n * @en_US Type\r\n */\r\nexport type XAlertType = XStatus;\r\n\r\n/**\r\n * @zh_CN 设置投放容器外部的 CdkDrag 的位置。可用于为返回的用户恢复元素的位置\r\n * @en_US Set the location of the CDKDRAG outside the container. Can be used to recover elements for returned users\r\n */\r\nexport type XAlertDragFreeDragPosition = { x: number; y: number };\r\n","import {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n inject,\r\n PLATFORM_ID,\r\n computed,\r\n signal,\r\n effect,\r\n DestroyRef\r\n} from '@angular/core';\r\nimport { XAlertPrefix, XAlertProperty } from './alert.property';\r\nimport { XFadeAnimation, XIsEmpty } from '@ng-nest/ui/core';\r\nimport { of, Subject, Subscription } from 'rxjs';\r\nimport { delay, takeUntil } from 'rxjs/operators';\r\nimport { XIconComponent } from '@ng-nest/ui/icon';\r\nimport { XOutletDirective } from '@ng-nest/ui/outlet';\r\nimport { XButtonComponent } from '@ng-nest/ui/button';\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\nimport { XResizableDirective } from '@ng-nest/ui/resizable';\r\nimport { NgClass, NgTemplateOutlet, isPlatformBrowser } from '@angular/common';\r\n\r\n@Component({\r\n selector: `${XAlertPrefix}`,\r\n imports: [\r\n NgClass,\r\n NgTemplateOutlet,\r\n DragDropModule,\r\n XIconComponent,\r\n XButtonComponent,\r\n XOutletDirective,\r\n XResizableDirective\r\n ],\r\n templateUrl: './alert.component.html',\r\n styleUrls: ['./alert.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n animations: [XFadeAnimation]\r\n})\r\nexport class XAlertComponent extends XAlertProperty {\r\n styleHide = signal(false);\r\n classMap = computed(() => ({\r\n [`${XAlertPrefix}-${this.type()}`]: !XIsEmpty(this.type()),\r\n [`x-${this.effect()}`]: !XIsEmpty(this.effect()),\r\n [`${XAlertPrefix}-icon-medium`]: !XIsEmpty(this.title()) && !XIsEmpty(this.content()) && !XIsEmpty(this.showIcon()),\r\n [`${XAlertPrefix}-draggable`]: this.draggable()\r\n }));\r\n\r\n private unSubject = new Subject<void>();\r\n private durationSubscription?: Subscription;\r\n private isBrowser = isPlatformBrowser(inject(PLATFORM_ID));\r\n private destoryRef = inject(DestroyRef);\r\n private destory = signal(false);\r\n\r\n constructor() {\r\n super();\r\n effect(() => this.setDuration());\r\n this.destoryRef.onDestroy(() => {\r\n this.destory.set(true);\r\n this.unSubject.next();\r\n this.unSubject.complete();\r\n });\r\n }\r\n\r\n setDuration() {\r\n if (this.duration() && this.isBrowser) {\r\n this.durationSubscription?.unsubscribe();\r\n this.durationSubscription = of(true)\r\n .pipe(delay(this.duration()), takeUntil(this.unSubject))\r\n .subscribe(() => {\r\n this.onClose();\r\n });\r\n }\r\n }\r\n\r\n onClose() {\r\n if (this.manual()) {\r\n !this.destory() && this.close.emit();\r\n } else {\r\n this.styleHide.set(true);\r\n }\r\n }\r\n\r\n onCloseAnimationDone() {\r\n if (this.hide()) {\r\n !this.destory() && this.close.emit();\r\n }\r\n }\r\n}\r\n","@if (!styleHide() && !hide()) {\r\n <div\r\n class=\"x-alert\"\r\n [class.x-alert-has-close]=\"!hideClose()\"\r\n [class.x-alert-icon-content]=\"showIcon() && content()\"\r\n cdkDrag\r\n (cdkDragEnded)=\"dragEnded.emit($event)\"\r\n [cdkDragFreeDragPosition]=\"dragFreeDragPosition()!\"\r\n [cdkDragDisabled]=\"!draggable()\"\r\n [cdkDragBoundary]=\"dragBoundary()!\"\r\n [ngClass]=\"classMap()\"\r\n @x-fade-animation\r\n [@.disabled]=\"disabledAnimation()\"\r\n (@x-fade-animation.done)=\"onCloseAnimationDone()\"\r\n [xResizable]=\"resizable()!\"\r\n (resizing)=\"resizing.emit($event)\"\r\n [offsetLeft]=\"offsetLeft()\"\r\n [offsetTop]=\"offsetTop()\"\r\n [style.minWidth]=\"minWidth()\"\r\n [style.minHeight]=\"minHeight()\"\r\n >\r\n @if (showIcon()) {\r\n <ng-container *ngTemplateOutlet=\"iconTpl\"></ng-container>\r\n }\r\n <ng-template #iconTpl>\r\n @switch (type()) {\r\n @case ('success') {\r\n <x-icon class=\"x-alert-icon\" type=\"adf-check-circle\"></x-icon>\r\n }\r\n @case ('info') {\r\n <x-icon class=\"x-alert-icon\" type=\"adf-info-circle\"></x-icon>\r\n }\r\n @case ('warning') {\r\n <x-icon class=\"x-alert-icon\" type=\"adf-exclamation-circle\"></x-icon>\r\n }\r\n @case ('error') {\r\n <x-icon class=\"x-alert-icon\" type=\"adf-close-circle\"></x-icon>\r\n }\r\n @case ('loading') {\r\n <x-icon class=\"x-alert-icon\" type=\"fto-loader\" [spin]=\"true\"></x-icon>\r\n }\r\n }\r\n </ng-template>\r\n <div class=\"x-alert-inner\">\r\n <span class=\"x-alert-title\" cdkDragHandle [class.x-bold]=\"title() && content()\">\r\n <ng-container *xOutlet=\"title(); context: { $iconTpl: iconTpl }\">{{ title() }}</ng-container>\r\n </span>\r\n @if (content()) {\r\n <div class=\"x-alert-content\">\r\n <ng-container *xOutlet=\"content(); context: { $iconTpl: iconTpl }\">{{ content() }}</ng-container>\r\n </div>\r\n }\r\n <div class=\"x-alert-close\">\r\n <div class=\"x-alert-operation\" *xOutlet=\"operationTpl()\">{{ operationTpl() }}</div>\r\n @if (!hideClose()) {\r\n <x-button class=\"x-alert-operation-close\" size=\"small\" [icon]=\"!closeText() ? 'fto-x' : ''\" [type]=\"'text'\" (click)=\"onClose()\" closable>\r\n {{ closeText() }}\r\n </x-button>\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { XAlertComponent } from './alert.component';\r\n\r\n@NgModule({\r\n exports: [XAlertComponent],\r\n imports: [XAlertComponent]\r\n})\r\nexport class XAlertModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;;;;;;AAMA;;;;AAIG;AACI,MAAM,YAAY,GAAG;AACrB,MAAM,mBAAmB,GAAG;AAEnC;;AAEG;MAIU,cAAe,SAAQ,iBAAiB,CAAC,mBAAmB,CAAC,CAAA;AAH1E,IAAA,WAAA,GAAA;;AAIE;;;;;;;;;AASG;AACM,QAAA,IAAA,CAAA,IAAI,GAAG,KAAK,CAAoB,KAAK,wCAAI,SAAS,EAAE,UAAU,EAAA,CAAA,GAAA,CAAvB,EAAE,SAAS,EAAE,UAAU,EAAE,GAAC;AAC1E;;;;;;;;;AASG;QACM,IAAA,CAAA,KAAK,GAAG,KAAK,CAAA,IAAA,SAAA,GAAA,CAAA,SAAA,EAAA,EAAA,SAAA,EAAA,OAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAa;AACnC;;;;;;;;;AASG;QACM,IAAA,CAAA,OAAO,GAAG,KAAK,CAAA,IAAA,SAAA,GAAA,CAAA,SAAA,EAAA,EAAA,SAAA,EAAA,SAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAa;AACrC;;;;;;;;;;;;;AAaG;AACM,QAAA,IAAA,CAAA,IAAI,GAAG,KAAK,CAAa,MAAM,gDAAC;AACzC;;;;;;;;;;;AAWG;QACM,IAAA,CAAA,MAAM,GAAG,KAAK,CAAU,IAAI,CAAC,MAAM,EAAE,MAAM,IAAI,OAAO,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,QAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAC;AAChE;;;;;;;;;AASG;QACM,IAAA,CAAA,SAAS,GAAG,KAAK,CAAoB,IAAI,CAAC,MAAM,EAAE,SAAS,IAAI,KAAK,6CAAI,SAAS,EAAE,UAAU,EAAA,CAAA,GAAA,CAAvB,EAAE,SAAS,EAAE,UAAU,EAAE,CAAA,CAAA,CAAC;AACzG;;;;;;;;;AASG;QACM,IAAA,CAAA,SAAS,GAAG,KAAK,CAAA,IAAA,SAAA,GAAA,CAAA,SAAA,EAAA,EAAA,SAAA,EAAA,WAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAU;AACpC;;;;;;;;;;;;;AAaG;QACM,IAAA,CAAA,QAAQ,GAAG,KAAK,CAAoB,IAAI,CAAC,MAAM,EAAE,QAAQ,IAAI,KAAK,4CAAI,SAAS,EAAE,UAAU,EAAA,CAAA,GAAA,CAAvB,EAAE,SAAS,EAAE,UAAU,EAAE,CAAA,CAAA,CAAC;AACvG;;;;;;;;;AASG;AACM,QAAA,IAAA,CAAA,iBAAiB,GAAG,KAAK,CAAoB,IAAI,CAAC,MAAM,EAAE,iBAAiB,IAAI,KAAK,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,mBAAA,EAC3F,SAAS,EAAE,UAAU,EAAA,CAAA,GAAA,CADwE;AAC7F,gBAAA,SAAS,EAAE;AACZ,aAAA,CAAA,CAAA,CAAC;AACF;;;;;;;;;AASG;QACM,IAAA,CAAA,QAAQ,GAAG,KAAK,CAAkB,IAAI,CAAC,MAAM,EAAE,QAAQ,IAAI,CAAC,4CAAI,SAAS,EAAE,SAAS,EAAA,CAAA,GAAA,CAAtB,EAAE,SAAS,EAAE,SAAS,EAAE,CAAA,CAAA,CAAC;AAChG;;;;;;;;;AASG;AACM,QAAA,IAAA,CAAA,MAAM,GAAG,KAAK,CAAoB,KAAK,0CAAI,SAAS,EAAE,UAAU,EAAA,CAAA,GAAA,CAAvB,EAAE,SAAS,EAAE,UAAU,EAAE,GAAC;AAC5E;;;;;;;;;AASG;QACM,IAAA,CAAA,SAAS,GAAG,KAAK,CAAoB,IAAI,CAAC,MAAM,EAAE,SAAS,IAAI,KAAK,6CAAI,SAAS,EAAE,UAAU,EAAA,CAAA,GAAA,CAAvB,EAAE,SAAS,EAAE,UAAU,EAAE,CAAA,CAAA,CAAC;AACzG;;;;;;;;;AASG;QACM,IAAA,CAAA,SAAS,GAAG,KAAK,CAAoB,IAAI,CAAC,MAAM,EAAE,SAAS,IAAI,KAAK,6CAAI,SAAS,EAAE,UAAU,EAAA,CAAA,GAAA,CAAvB,EAAE,SAAS,EAAE,UAAU,EAAE,CAAA,CAAA,CAAC;AACzG;;;;;;;;;AASG;AACM,QAAA,IAAA,CAAA,UAAU,GAAG,KAAK,CAAkB,CAAC,8CAAI,SAAS,EAAE,SAAS,EAAA,CAAA,GAAA,CAAtB,EAAE,SAAS,EAAE,SAAS,EAAE,GAAC;AACzE;;;;;;;;;AASG;AACM,QAAA,IAAA,CAAA,SAAS,GAAG,KAAK,CAAkB,CAAC,6CAAI,SAAS,EAAE,SAAS,EAAA,CAAA,GAAA,CAAtB,EAAE,SAAS,EAAE,SAAS,EAAE,GAAC;AACxE;;;;;;;;;AASG;QACM,IAAA,CAAA,QAAQ,GAAG,KAAK,CAAkB,IAAI,CAAC,MAAM,EAAE,QAAQ,IAAI,GAAG,4CAAI,SAAS,EAAE,gBAAgB,EAAA,CAAA,GAAA,CAA7B,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAA,CAAA,CAAC;AACzG;;;;;;;;;AASG;QACM,IAAA,CAAA,SAAS,GAAG,KAAK,CAAkB,IAAI,CAAC,MAAM,EAAE,SAAS,IAAI,GAAG,6CAAI,SAAS,EAAE,gBAAgB,EAAA,CAAA,GAAA,CAA7B,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAA,CAAA,CAAC;AAC3G;;;;;;;;;;;AAWG;QACM,IAAA,CAAA,YAAY,GAAG,KAAK,CAAA,IAAA,SAAA,GAAA,CAAA,SAAA,EAAA,EAAA,SAAA,EAAA,cAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAkD;AAC/E;;;;;;;;;AASG;QACM,IAAA,CAAA,oBAAoB,GAAG,KAAK,CAAA,IAAA,SAAA,GAAA,CAAA,SAAA,EAAA,EAAA,SAAA,EAAA,sBAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAA8B;AACnE;;;;;;;;;;;;AAYG;QACM,IAAA,CAAA,YAAY,GAAG,KAAK,CAAA,IAAA,SAAA,GAAA,CAAA,SAAA,EAAA,EAAA,SAAA,EAAA,cAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAa;AAC1C;;;;;;;;;;;;;;;AAeG;QACM,IAAA,CAAA,KAAK,GAAG,MAAM,EAAE;AACzB;;;;;;;;;;;;;;;AAeG;QACM,IAAA,CAAA,SAAS,GAAG,MAAM,EAAc;AACzC;;;;;;;;;;;;;;;AAeG;QACM,IAAA,CAAA,QAAQ,GAAG,MAAM,EAAmB;AAC9C,IAAA;iIAjSY,cAAc,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAd,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,cAAc,6wFAFyB,EAAE,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;;2FAEzC,cAAc,EAAA,UAAA,EAAA,CAAA;kBAH1B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,CAAA,EAAG,YAAY,WAAW,EAAE,QAAQ,EAAE;AACnD,iBAAA;;;ACoBK,MAAO,eAAgB,SAAQ,cAAc,CAAA;AAejD,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,EAAE;AAfT,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,KAAK,qDAAC;AACzB,QAAA,IAAA,CAAA,QAAQ,GAAG,QAAQ,CAAC,OAAO;AACzB,YAAA,CAAC,GAAG,YAAY,CAAA,CAAA,EAAI,IAAI,CAAC,IAAI,EAAE,CAAA,CAAE,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;AAC1D,YAAA,CAAC,CAAA,EAAA,EAAK,IAAI,CAAC,MAAM,EAAE,CAAA,CAAE,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;AAChD,YAAA,CAAC,CAAA,EAAG,YAAY,CAAA,YAAA,CAAc,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnH,CAAC,CAAA,EAAG,YAAY,CAAA,UAAA,CAAY,GAAG,IAAI,CAAC,SAAS;AAC9C,SAAA,CAAC,oDAAC;AAEK,QAAA,IAAA,CAAA,SAAS,GAAG,IAAI,OAAO,EAAQ;QAE/B,IAAA,CAAA,SAAS,GAAG,iBAAiB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;AAClD,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;AAC/B,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,KAAK,mDAAC;QAI7B,MAAM,CAAC,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;AAChC,QAAA,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,MAAK;AAC7B,YAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;AACtB,YAAA,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE;AACrB,YAAA,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;AAC3B,QAAA,CAAC,CAAC;IACJ;IAEA,WAAW,GAAA;QACT,IAAI,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,SAAS,EAAE;AACrC,YAAA,IAAI,CAAC,oBAAoB,EAAE,WAAW,EAAE;AACxC,YAAA,IAAI,CAAC,oBAAoB,GAAG,EAAE,CAAC,IAAI;AAChC,iBAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC;iBACtD,SAAS,CAAC,MAAK;gBACd,IAAI,CAAC,OAAO,EAAE;AAChB,YAAA,CAAC,CAAC;QACN;IACF;IAEA,OAAO,GAAA;AACL,QAAA,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE;YACjB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;QACtC;aAAO;AACL,YAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC;QAC1B;IACF;IAEA,oBAAoB,GAAA;AAClB,QAAA,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE;YACf,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;QACtC;IACF;iIAhDW,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAf,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAe,0FCvC5B,2+EA+DA,EAAA,MAAA,EAAA,CAAA,4lLAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDtCQ,OAAO,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACP,gBAAgB,mJAChB,cAAc,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,iBAAA,EAAA,oBAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,yBAAA,EAAA,iBAAA,EAAA,0BAAA,EAAA,qBAAA,EAAA,yBAAA,EAAA,cAAA,CAAA,EAAA,OAAA,EAAA,CAAA,gBAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,eAAA,EAAA,gBAAA,EAAA,cAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,uBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACd,cAAc,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACd,gBAAgB,qDAChB,gBAAgB,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,gBAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAChB,mBAAmB,EAAA,QAAA,EAAA,cAAA,EAAA,CAAA,EAAA,UAAA,EAMX,CAAC,cAAc,CAAC,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAEnB,eAAe,EAAA,UAAA,EAAA,CAAA;kBAjB3B,SAAS;+BACI,CAAA,EAAG,YAAY,EAAE,EAAA,OAAA,EAClB;wBACL,OAAO;wBACP,gBAAgB;wBAChB,cAAc;wBACd,cAAc;wBACd,gBAAgB;wBAChB,gBAAgB;wBAChB;qBACH,EAAA,aAAA,EAGc,iBAAiB,CAAC,IAAI,EAAA,eAAA,EACpB,uBAAuB,CAAC,MAAM,EAAA,UAAA,EACnC,CAAC,cAAc,CAAC,EAAA,QAAA,EAAA,2+EAAA,EAAA,MAAA,EAAA,CAAA,4lLAAA,CAAA,EAAA;;;ME9BnB,YAAY,CAAA;iIAAZ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;kIAAZ,YAAY,EAAA,OAAA,EAAA,CAFb,eAAe,CAAA,EAAA,OAAA,EAAA,CADf,eAAe,CAAA,EAAA,CAAA,CAAA;AAGd,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,YAFb,eAAe,CAAA,EAAA,CAAA,CAAA;;2FAEd,YAAY,EAAA,UAAA,EAAA,CAAA;kBAJxB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,eAAe,CAAC;oBAC1B,OAAO,EAAE,CAAC,eAAe;AAC1B,iBAAA;;;ACND;;AAEG;;;;"}
1
+ {"version":3,"file":"ng-nest-ui-alert.mjs","sources":["../../../../lib/ng-nest/ui/alert/alert.property.ts","../../../../lib/ng-nest/ui/alert/alert.component.ts","../../../../lib/ng-nest/ui/alert/alert.component.html","../../../../lib/ng-nest/ui/alert/alert.module.ts","../../../../lib/ng-nest/ui/alert/ng-nest-ui-alert.ts"],"sourcesContent":["import { XPropertyFunction, XToBoolean, XToCssPixelValue, XToNumber } from '@ng-nest/ui/core';\r\nimport { Component, ElementRef, input, output } from '@angular/core';\r\nimport type { CdkDragEnd } from '@angular/cdk/drag-drop';\r\nimport type { XResizableEvent } from '@ng-nest/ui/resizable';\r\nimport type { XBoolean, XNumber, XEffect, XTemplate, XStatus } from '@ng-nest/ui/core';\r\n\r\n/**\r\n * Alert\r\n * @selector x-alert\r\n * @decorator component\r\n */\r\nexport const XAlertPrefix = 'x-alert';\r\nexport const X_ALERT_CONFIG_NAME = 'alert';\r\n\r\n/**\r\n * Alert Property\r\n */\r\n@Component({ selector: `${XAlertPrefix}-property`, template: '' })\r\nexport class XAlertProperty extends XPropertyFunction(X_ALERT_CONFIG_NAME) {\r\n /**\r\n * @zh_CN 隐藏\r\n * @en_US Hide\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"隐藏,看不见\" hide> </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly hide = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 标题\r\n * @en_US Title\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"Title\" > </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly title = input<XTemplate>();\r\n /**\r\n * @zh_CN 内容\r\n * @en_US Content\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert content=\"Content\" > </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly content = input<XTemplate>();\r\n /**\r\n * @zh_CN 类型\r\n * @en_US Alert type\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert type=\"success\" > </x-alert>\r\n * <x-alert type=\"info\" > </x-alert>\r\n * <x-alert type=\"warning\" > </x-alert>\r\n * <x-alert type=\"error\" > </x-alert>\r\n * <x-alert type=\"loading\" > </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly type = input<XAlertType>('info');\r\n /**\r\n * @zh_CN 主题\r\n * @en_US Theme\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert effect=\"light\" > </x-alert>\r\n * <x-alert effect=\"dark\" > </x-alert>\r\n * <x-alert effect=\"white\" > </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly effect = input<XEffect>(this.config?.effect ?? 'light');\r\n /**\r\n * @zh_CN 形态变体\r\n * @en_US Variant\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert variant=\"outlined\" > </x-alert>\r\n * <x-alert variant=\"filled\" > </x-alert>\r\n * <x-alert variant=\"shadow\" > </x-alert>\r\n * <x-alert variant=\"borderless\" > </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly variant = input<XAlertVariant>(this.config?.variant ?? 'shadow');\r\n /**\r\n * @zh_CN 隐藏关闭按钮\r\n * @en_US Hide close button\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"no close button\" hideClose> </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly hideClose = input<boolean, XBoolean>(this.config?.hideClose ?? false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 使用文本关闭按钮\r\n * @en_US Use the text to close button\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"close button is text\" closeText=\"close\"> </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly closeText = input<string>();\r\n /**\r\n * @zh_CN 显示图标\r\n * @en_US Show icon\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert type=\"success\" showIcon> </x-alert>\r\n * <x-alert type=\"info\" showIcon> </x-alert>\r\n * <x-alert type=\"warning\" showIcon> </x-alert>\r\n * <x-alert type=\"error\" showIcon> </x-alert>\r\n * <x-alert type=\"loading\" showIcon> </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly showIcon = input<boolean, XBoolean>(this.config?.showIcon ?? false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 禁用动画\r\n * @en_US Disable animation\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"disabled animation\" disabledAnimation> </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly disabledAnimation = input<boolean, XBoolean>(this.config?.disabledAnimation ?? false, {\r\n transform: XToBoolean\r\n });\r\n /**\r\n * @zh_CN 延迟关闭,默认 0 表示不关闭,ms\r\n * @en_US Delay close, the default value of 0 means do not close. ms\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"duration close\" duration=\"1000\"> </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly duration = input<number, XNumber>(this.config?.duration ?? 0, { transform: XToNumber });\r\n /**\r\n * @zh_CN 手动处理关闭事件\r\n * @en_US Manually handle close events\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"manual close\" manual> </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly manual = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 拖动提示框\r\n * @en_US Drag dialog\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"draggable alert\" draggable> </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly draggable = input<boolean, XBoolean>(this.config?.draggable ?? false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 调整提示框大小\r\n * @en_US Adjust the size of the box\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"resizable alert\" resizable> </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly resizable = input<boolean, XBoolean>(this.config?.resizable ?? false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 开启 resizable 调整大小,偏移屏幕左边\r\n * @en_US Open the resizable resize, offset screen left\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"resizable alert\" resizable offsetLeft=\"100\"> </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly offsetLeft = input<number, XNumber>(0, { transform: XToNumber });\r\n /**\r\n * @zh_CN 开启 resizable 调整大小,偏移屏幕顶部\r\n * @en_US Open the resizable resize, offset screen top\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"resizable alert\" resizable offsetTop=\"100\"> </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly offsetTop = input<number, XNumber>(0, { transform: XToNumber });\r\n /**\r\n * @zh_CN 最小宽度\r\n * @en_US Min width\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"alert min-width\" minWidth=\"100\"> </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly minWidth = input<string, XNumber>(this.config?.minWidth ?? '0', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 最小高度\r\n * @en_US Min height\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"alert min-height\" minHeight=\"100\"> </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly minHeight = input<string, XNumber>(this.config?.minHeight ?? '0', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 拖动范围限制,父节点选择器或者对象\r\n * @en_US Drag dialog\r\n * @example\r\n *\r\n * ```html\r\n * <div #element style=\"width:300px; height: 300px\">\r\n * <x-alert title=\"draggable boundary\" draggable [dragBoundary]=\"element\"> </x-alert>\r\n * </div>\r\n * ```\r\n *\r\n */\r\n readonly dragBoundary = input<string | ElementRef<HTMLElement> | HTMLElement>();\r\n /**\r\n * @zh_CN 设置投放容器外部的 CdkDrag 的位置。可用于为返回的用户恢复元素的位置\r\n * @en_US Set the location of the CDKDRAG outside the container. Can be used to recover elements for returned users\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"draggable boundary\" draggable [dragFreeDragPosition]=\"{ x: 100, y: 100 }\"> </x-alert>\r\n * ```\r\n *\r\n */\r\n readonly dragFreeDragPosition = input<XAlertDragFreeDragPosition>();\r\n /**\r\n * @zh_CN 自定义操作\r\n * @en_US Custom operation\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"operation template\" [operationTpl]=\"operationTpl\"> </x-alert>\r\n * <ng-template #operationTpl>\r\n * <x-button>Button</x-button>\r\n * </ng-template>\r\n * ```\r\n *\r\n */\r\n readonly operationTpl = input<XTemplate>();\r\n /**\r\n * @zh_CN 关闭的事件\r\n * @en_US Closed event\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"operation template\" (close)=\"close()\"> </x-alert>\r\n * ```\r\n *\r\n * ```typescript\r\n * close() {\r\n * console.log(\"close\")\r\n * }\r\n * ```\r\n *\r\n */\r\n readonly close = output();\r\n /**\r\n * @zh_CN 拖动结束的事件\r\n * @en_US Drag end event\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"draggable event\" draggable (dragEnded)=\"dragEnded($event)\"> </x-alert>\r\n * ```\r\n *\r\n * ```typescript\r\n * dragEnded(event: CdkDragEnd) {\r\n * console.log(event)\r\n * }\r\n * ```\r\n *\r\n */\r\n readonly dragEnded = output<CdkDragEnd>();\r\n /**\r\n * @zh_CN 改变尺寸事件\r\n * @en_US Change the size event\r\n * @example\r\n *\r\n * ```html\r\n * <x-alert title=\"resizable event\" resizable (resizing)=\"resizing($event)\"> </x-alert>\r\n * ```\r\n *\r\n * ```typescript\r\n * resizing(event: XResizableEvent) {\r\n * console.log(event)\r\n * }\r\n * ```\r\n *\r\n */\r\n readonly resizing = output<XResizableEvent>();\r\n}\r\n\r\n/**\r\n * Alert Option\r\n * @undocument true\r\n */\r\nexport interface XAlertOption {\r\n /**\r\n * 隐藏\r\n */\r\n hide?: boolean;\r\n /**\r\n * 标题\r\n */\r\n title?: XTemplate;\r\n /**\r\n * 内容\r\n */\r\n content?: XTemplate;\r\n /**\r\n * 类型\r\n */\r\n type?: XAlertType;\r\n /**\r\n * 主题\r\n */\r\n effect?: XEffect;\r\n /**\r\n * 隐藏关闭按钮\r\n */\r\n hideClose?: boolean;\r\n /**\r\n * 关闭按钮文字替换\r\n */\r\n closeText?: string;\r\n /**\r\n * 显示图标\r\n */\r\n showIcon?: boolean;\r\n /**\r\n * 禁用动画\r\n */\r\n disabledAnimation?: boolean;\r\n /**\r\n * 延迟关闭,默认 0 表示不关闭\r\n */\r\n duration?: number;\r\n /**\r\n * 手动处理关闭事件\r\n */\r\n manual?: boolean;\r\n /**\r\n * 拖动提示框\r\n */\r\n draggable?: boolean;\r\n /**\r\n * 调整提示框大小\r\n */\r\n resizable?: boolean;\r\n /**\r\n * 开启 resizable 调整大小,偏移屏幕左边\r\n */\r\n offsetLeft?: string;\r\n /**\r\n * 开启 resizable 调整大小,偏移屏幕顶部\r\n */\r\n offsetTop?: string;\r\n /**\r\n * 最小宽度\r\n */\r\n minWidth?: string;\r\n /**\r\n * 最小高度\r\n */\r\n minHeight?: string;\r\n}\r\n\r\n/**\r\n * @zh_CN 类型\r\n * @en_US Type\r\n */\r\nexport type XAlertType = XStatus;\r\n\r\n/**\r\n * @zh_CN 形态变体\r\n * @en_US Variant\r\n */\r\nexport type XAlertVariant = 'outlined' | 'filled' | 'shadow' | 'borderless';\r\n\r\n/**\r\n * @zh_CN 设置投放容器外部的 CdkDrag 的位置。可用于为返回的用户恢复元素的位置\r\n * @en_US Set the location of the CDKDRAG outside the container. Can be used to recover elements for returned users\r\n */\r\nexport type XAlertDragFreeDragPosition = { x: number; y: number };\r\n","import {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n inject,\r\n PLATFORM_ID,\r\n computed,\r\n signal,\r\n effect,\r\n DestroyRef\r\n} from '@angular/core';\r\nimport { XAlertPrefix, XAlertProperty } from './alert.property';\r\nimport { XFadeAnimation, XIsEmpty } from '@ng-nest/ui/core';\r\nimport { of, Subject, Subscription } from 'rxjs';\r\nimport { delay, takeUntil } from 'rxjs/operators';\r\nimport { XIconComponent } from '@ng-nest/ui/icon';\r\nimport { XOutletDirective } from '@ng-nest/ui/outlet';\r\nimport { XButtonComponent } from '@ng-nest/ui/button';\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\nimport { XResizableDirective } from '@ng-nest/ui/resizable';\r\nimport { NgClass, NgTemplateOutlet, isPlatformBrowser } from '@angular/common';\r\n\r\n@Component({\r\n selector: `${XAlertPrefix}`,\r\n imports: [\r\n NgClass,\r\n NgTemplateOutlet,\r\n DragDropModule,\r\n XIconComponent,\r\n XButtonComponent,\r\n XOutletDirective,\r\n XResizableDirective\r\n ],\r\n templateUrl: './alert.component.html',\r\n styleUrls: ['./alert.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n animations: [XFadeAnimation]\r\n})\r\nexport class XAlertComponent extends XAlertProperty {\r\n styleHide = signal(false);\r\n classMap = computed(() => ({\r\n [`${XAlertPrefix}-${this.type()}`]: !XIsEmpty(this.type()),\r\n [`x-${this.effect()}`]: !XIsEmpty(this.effect()),\r\n [`${XAlertPrefix}-icon-medium`]: !XIsEmpty(this.title()) && !XIsEmpty(this.content()) && !XIsEmpty(this.showIcon()),\r\n [`${XAlertPrefix}-draggable`]: this.draggable(),\r\n [`${XAlertPrefix}-${this.variant()}`]: !XIsEmpty(this.variant())\r\n }));\r\n\r\n private unSubject = new Subject<void>();\r\n private durationSubscription?: Subscription;\r\n private isBrowser = isPlatformBrowser(inject(PLATFORM_ID));\r\n private destoryRef = inject(DestroyRef);\r\n private destory = signal(false);\r\n\r\n constructor() {\r\n super();\r\n effect(() => this.setDuration());\r\n this.destoryRef.onDestroy(() => {\r\n this.destory.set(true);\r\n this.unSubject.next();\r\n this.unSubject.complete();\r\n });\r\n }\r\n\r\n setDuration() {\r\n if (this.duration() && this.isBrowser) {\r\n this.durationSubscription?.unsubscribe();\r\n this.durationSubscription = of(true)\r\n .pipe(delay(this.duration()), takeUntil(this.unSubject))\r\n .subscribe(() => {\r\n this.onClose();\r\n });\r\n }\r\n }\r\n\r\n onClose() {\r\n if (this.manual()) {\r\n !this.destory() && this.close.emit();\r\n } else {\r\n this.styleHide.set(true);\r\n }\r\n }\r\n\r\n onCloseAnimationDone() {\r\n if (this.hide()) {\r\n !this.destory() && this.close.emit();\r\n }\r\n }\r\n}\r\n","@if (!styleHide() && !hide()) {\r\n <div\r\n class=\"x-alert\"\r\n [class.x-alert-has-close]=\"!hideClose()\"\r\n [class.x-alert-icon-content]=\"showIcon() && content()\"\r\n cdkDrag\r\n (cdkDragEnded)=\"dragEnded.emit($event)\"\r\n [cdkDragFreeDragPosition]=\"dragFreeDragPosition()!\"\r\n [cdkDragDisabled]=\"!draggable()\"\r\n [cdkDragBoundary]=\"dragBoundary()!\"\r\n [ngClass]=\"classMap()\"\r\n @x-fade-animation\r\n [@.disabled]=\"disabledAnimation()\"\r\n (@x-fade-animation.done)=\"onCloseAnimationDone()\"\r\n [xResizable]=\"resizable()!\"\r\n (resizing)=\"resizing.emit($event)\"\r\n [offsetLeft]=\"offsetLeft()\"\r\n [offsetTop]=\"offsetTop()\"\r\n [style.minWidth]=\"minWidth()\"\r\n [style.minHeight]=\"minHeight()\"\r\n >\r\n @if (showIcon()) {\r\n <ng-container *ngTemplateOutlet=\"iconTpl\"></ng-container>\r\n }\r\n <ng-template #iconTpl>\r\n @switch (type()) {\r\n @case ('success') {\r\n <x-icon class=\"x-alert-icon\" type=\"adf-check-circle\"></x-icon>\r\n }\r\n @case ('info') {\r\n <x-icon class=\"x-alert-icon\" type=\"adf-info-circle\"></x-icon>\r\n }\r\n @case ('warning') {\r\n <x-icon class=\"x-alert-icon\" type=\"adf-exclamation-circle\"></x-icon>\r\n }\r\n @case ('error') {\r\n <x-icon class=\"x-alert-icon\" type=\"adf-close-circle\"></x-icon>\r\n }\r\n @case ('loading') {\r\n <x-icon class=\"x-alert-icon\" type=\"fto-loader\" [spin]=\"true\"></x-icon>\r\n }\r\n }\r\n </ng-template>\r\n <div class=\"x-alert-inner\">\r\n <span class=\"x-alert-title\" cdkDragHandle [class.x-bold]=\"title() && content()\">\r\n <ng-container *xOutlet=\"title(); context: { $iconTpl: iconTpl }\">{{ title() }}</ng-container>\r\n </span>\r\n @if (content()) {\r\n <div class=\"x-alert-content\">\r\n <ng-container *xOutlet=\"content(); context: { $iconTpl: iconTpl }\">{{ content() }}</ng-container>\r\n </div>\r\n }\r\n <div class=\"x-alert-close\">\r\n <div class=\"x-alert-operation\" *xOutlet=\"operationTpl()\">{{ operationTpl() }}</div>\r\n @if (!hideClose()) {\r\n <x-button class=\"x-alert-operation-close\" size=\"small\" [icon]=\"!closeText() ? 'fto-x' : ''\" [type]=\"'text'\" (click)=\"onClose()\" closable>\r\n {{ closeText() }}\r\n </x-button>\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { XAlertComponent } from './alert.component';\r\n\r\n@NgModule({\r\n exports: [XAlertComponent],\r\n imports: [XAlertComponent]\r\n})\r\nexport class XAlertModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -105,9 +105,7 @@ class XAnchorProperty extends XPropertyFunction(X_ANCHOR_CONFIG_NAME) {
105
105
  }
106
106
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XAnchorProperty, decorators: [{
107
107
  type: Component,
108
- args: [{
109
- selector: `${XAnchorPrefix}-property`, template: ''
110
- }]
108
+ args: [{ selector: `${XAnchorPrefix}-property`, template: '' }]
111
109
  }] });
112
110
  /**
113
111
  * Anchor inner
@@ -124,9 +122,7 @@ class XAnchorInnerProperty {
124
122
  }
125
123
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: XAnchorInnerProperty, decorators: [{
126
124
  type: Component,
127
- args: [{
128
- selector: `${XAnchorInnerPrefix}-property`, template: ''
129
- }]
125
+ args: [{ selector: `${XAnchorInnerPrefix}-property`, template: '' }]
130
126
  }] });
131
127
 
132
128
  class XAnchorComponent extends XAnchorProperty {