@ng-nest/ui 20.2.5 → 21.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (199) hide show
  1. package/fesm2022/ng-nest-ui-affix.mjs +10 -10
  2. package/fesm2022/ng-nest-ui-alert.mjs +10 -10
  3. package/fesm2022/ng-nest-ui-anchor.mjs +16 -16
  4. package/fesm2022/ng-nest-ui-api.mjs +7 -7
  5. package/fesm2022/ng-nest-ui-attachments.mjs +16 -16
  6. package/fesm2022/ng-nest-ui-auto-complete.mjs +13 -13
  7. package/fesm2022/ng-nest-ui-avatar.mjs +16 -16
  8. package/fesm2022/ng-nest-ui-back-top.mjs +10 -10
  9. package/fesm2022/ng-nest-ui-badge.mjs +10 -10
  10. package/fesm2022/ng-nest-ui-base-form.mjs +7 -7
  11. package/fesm2022/ng-nest-ui-bubble.mjs +16 -16
  12. package/fesm2022/ng-nest-ui-button.mjs +16 -16
  13. package/fesm2022/ng-nest-ui-calendar.mjs +10 -10
  14. package/fesm2022/ng-nest-ui-card.mjs +10 -10
  15. package/fesm2022/ng-nest-ui-carousel.mjs +16 -16
  16. package/fesm2022/ng-nest-ui-cascade.mjs +13 -13
  17. package/fesm2022/ng-nest-ui-checkbox.mjs +10 -10
  18. package/fesm2022/ng-nest-ui-collapse.mjs +16 -16
  19. package/fesm2022/ng-nest-ui-color-picker.mjs +16 -16
  20. package/fesm2022/ng-nest-ui-color.mjs +10 -10
  21. package/fesm2022/ng-nest-ui-comment.mjs +16 -16
  22. package/fesm2022/ng-nest-ui-container.mjs +31 -31
  23. package/fesm2022/ng-nest-ui-core.mjs +18 -18
  24. package/fesm2022/ng-nest-ui-coversations.mjs +10 -10
  25. package/fesm2022/ng-nest-ui-crumb.mjs +10 -10
  26. package/fesm2022/ng-nest-ui-date-picker.mjs +49 -49
  27. package/fesm2022/ng-nest-ui-description.mjs +16 -16
  28. package/fesm2022/ng-nest-ui-dialog.mjs +40 -40
  29. package/fesm2022/ng-nest-ui-doc.mjs +7 -7
  30. package/fesm2022/ng-nest-ui-drag.mjs +10 -10
  31. package/fesm2022/ng-nest-ui-drawer.mjs +31 -31
  32. package/fesm2022/ng-nest-ui-dropdown.mjs +13 -13
  33. package/fesm2022/ng-nest-ui-empty.mjs +10 -10
  34. package/fesm2022/ng-nest-ui-examples.mjs +7 -7
  35. package/fesm2022/ng-nest-ui-find.mjs +10 -10
  36. package/fesm2022/ng-nest-ui-form.mjs +16 -16
  37. package/fesm2022/ng-nest-ui-form.mjs.map +1 -1
  38. package/fesm2022/ng-nest-ui-highlight.mjs +13 -13
  39. package/fesm2022/ng-nest-ui-i18n.mjs +13 -13
  40. package/fesm2022/ng-nest-ui-icon.mjs +13 -13
  41. package/fesm2022/ng-nest-ui-image.mjs +19 -19
  42. package/fesm2022/ng-nest-ui-inner.mjs +10 -10
  43. package/fesm2022/ng-nest-ui-input-number.mjs +10 -10
  44. package/fesm2022/ng-nest-ui-input.mjs +16 -16
  45. package/fesm2022/ng-nest-ui-keyword.mjs +10 -10
  46. package/fesm2022/ng-nest-ui-layout.mjs +17 -17
  47. package/fesm2022/ng-nest-ui-layout.mjs.map +1 -1
  48. package/fesm2022/ng-nest-ui-link.mjs +10 -10
  49. package/fesm2022/ng-nest-ui-list.mjs +19 -19
  50. package/fesm2022/ng-nest-ui-loading.mjs +10 -10
  51. package/fesm2022/ng-nest-ui-menu.mjs +16 -16
  52. package/fesm2022/ng-nest-ui-message-box.mjs +10 -10
  53. package/fesm2022/ng-nest-ui-message-box.mjs.map +1 -1
  54. package/fesm2022/ng-nest-ui-message.mjs +10 -10
  55. package/fesm2022/ng-nest-ui-notification.mjs +10 -10
  56. package/fesm2022/ng-nest-ui-outlet.mjs +7 -7
  57. package/fesm2022/ng-nest-ui-page-header.mjs +10 -10
  58. package/fesm2022/ng-nest-ui-pagination.mjs +10 -10
  59. package/fesm2022/ng-nest-ui-pattern.mjs +7 -7
  60. package/fesm2022/ng-nest-ui-popconfirm.mjs +10 -10
  61. package/fesm2022/ng-nest-ui-popover.mjs +13 -13
  62. package/fesm2022/ng-nest-ui-portal.mjs +7 -7
  63. package/fesm2022/ng-nest-ui-progress.mjs +10 -10
  64. package/fesm2022/ng-nest-ui-prompts.mjs +10 -10
  65. package/fesm2022/ng-nest-ui-radio.mjs +10 -10
  66. package/fesm2022/ng-nest-ui-rate.mjs +10 -10
  67. package/fesm2022/ng-nest-ui-resizable.mjs +10 -10
  68. package/fesm2022/ng-nest-ui-result.mjs +10 -10
  69. package/fesm2022/ng-nest-ui-ripple.mjs +10 -10
  70. package/fesm2022/ng-nest-ui-scrollable.mjs +7 -7
  71. package/fesm2022/ng-nest-ui-select.mjs +13 -13
  72. package/fesm2022/ng-nest-ui-sender.mjs +13 -13
  73. package/fesm2022/ng-nest-ui-skeleton.mjs +10 -10
  74. package/fesm2022/ng-nest-ui-slider-select.mjs +10 -10
  75. package/fesm2022/ng-nest-ui-slider.mjs +10 -10
  76. package/fesm2022/ng-nest-ui-statistic.mjs +16 -16
  77. package/fesm2022/ng-nest-ui-steps.mjs +10 -10
  78. package/fesm2022/ng-nest-ui-suggestion.mjs +10 -10
  79. package/fesm2022/ng-nest-ui-switch.mjs +10 -10
  80. package/fesm2022/ng-nest-ui-table-view.mjs +58 -58
  81. package/fesm2022/ng-nest-ui-table.mjs +34 -34
  82. package/fesm2022/ng-nest-ui-tabs.mjs +25 -25
  83. package/fesm2022/ng-nest-ui-tag.mjs +10 -10
  84. package/fesm2022/ng-nest-ui-text-retract.mjs +10 -10
  85. package/fesm2022/ng-nest-ui-textarea.mjs +11 -11
  86. package/fesm2022/ng-nest-ui-textarea.mjs.map +1 -1
  87. package/fesm2022/ng-nest-ui-theme.mjs +10 -10
  88. package/fesm2022/ng-nest-ui-theme.mjs.map +1 -1
  89. package/fesm2022/ng-nest-ui-thought-chain.mjs +10 -10
  90. package/fesm2022/ng-nest-ui-time-ago.mjs +7 -7
  91. package/fesm2022/ng-nest-ui-time-picker.mjs +16 -16
  92. package/fesm2022/ng-nest-ui-time-range.mjs +7 -7
  93. package/fesm2022/ng-nest-ui-timeline.mjs +10 -10
  94. package/fesm2022/ng-nest-ui-tooltip.mjs +13 -13
  95. package/fesm2022/ng-nest-ui-transfer.mjs +10 -10
  96. package/fesm2022/ng-nest-ui-tree-file.mjs +10 -10
  97. package/fesm2022/ng-nest-ui-tree-select.mjs +13 -13
  98. package/fesm2022/ng-nest-ui-tree.mjs +19 -19
  99. package/fesm2022/ng-nest-ui-typography.mjs +10 -10
  100. package/fesm2022/ng-nest-ui-upload.mjs +19 -19
  101. package/fesm2022/ng-nest-ui-welcome.mjs +10 -10
  102. package/package.json +134 -134
  103. package/{checkbox/index.d.ts → types/ng-nest-ui-checkbox.d.ts} +1 -1
  104. package/{radio/index.d.ts → types/ng-nest-ui-radio.d.ts} +1 -1
  105. /package/{affix/index.d.ts → types/ng-nest-ui-affix.d.ts} +0 -0
  106. /package/{alert/index.d.ts → types/ng-nest-ui-alert.d.ts} +0 -0
  107. /package/{anchor/index.d.ts → types/ng-nest-ui-anchor.d.ts} +0 -0
  108. /package/{api/index.d.ts → types/ng-nest-ui-api.d.ts} +0 -0
  109. /package/{attachments/index.d.ts → types/ng-nest-ui-attachments.d.ts} +0 -0
  110. /package/{auto-complete/index.d.ts → types/ng-nest-ui-auto-complete.d.ts} +0 -0
  111. /package/{avatar/index.d.ts → types/ng-nest-ui-avatar.d.ts} +0 -0
  112. /package/{back-top/index.d.ts → types/ng-nest-ui-back-top.d.ts} +0 -0
  113. /package/{badge/index.d.ts → types/ng-nest-ui-badge.d.ts} +0 -0
  114. /package/{base-form/index.d.ts → types/ng-nest-ui-base-form.d.ts} +0 -0
  115. /package/{bubble/index.d.ts → types/ng-nest-ui-bubble.d.ts} +0 -0
  116. /package/{button/index.d.ts → types/ng-nest-ui-button.d.ts} +0 -0
  117. /package/{calendar/index.d.ts → types/ng-nest-ui-calendar.d.ts} +0 -0
  118. /package/{card/index.d.ts → types/ng-nest-ui-card.d.ts} +0 -0
  119. /package/{carousel/index.d.ts → types/ng-nest-ui-carousel.d.ts} +0 -0
  120. /package/{cascade/index.d.ts → types/ng-nest-ui-cascade.d.ts} +0 -0
  121. /package/{collapse/index.d.ts → types/ng-nest-ui-collapse.d.ts} +0 -0
  122. /package/{color-picker/index.d.ts → types/ng-nest-ui-color-picker.d.ts} +0 -0
  123. /package/{color/index.d.ts → types/ng-nest-ui-color.d.ts} +0 -0
  124. /package/{comment/index.d.ts → types/ng-nest-ui-comment.d.ts} +0 -0
  125. /package/{container/index.d.ts → types/ng-nest-ui-container.d.ts} +0 -0
  126. /package/{core/index.d.ts → types/ng-nest-ui-core.d.ts} +0 -0
  127. /package/{coversations/index.d.ts → types/ng-nest-ui-coversations.d.ts} +0 -0
  128. /package/{crumb/index.d.ts → types/ng-nest-ui-crumb.d.ts} +0 -0
  129. /package/{date-picker/index.d.ts → types/ng-nest-ui-date-picker.d.ts} +0 -0
  130. /package/{description/index.d.ts → types/ng-nest-ui-description.d.ts} +0 -0
  131. /package/{dialog/index.d.ts → types/ng-nest-ui-dialog.d.ts} +0 -0
  132. /package/{doc/index.d.ts → types/ng-nest-ui-doc.d.ts} +0 -0
  133. /package/{drag/index.d.ts → types/ng-nest-ui-drag.d.ts} +0 -0
  134. /package/{drawer/index.d.ts → types/ng-nest-ui-drawer.d.ts} +0 -0
  135. /package/{dropdown/index.d.ts → types/ng-nest-ui-dropdown.d.ts} +0 -0
  136. /package/{empty/index.d.ts → types/ng-nest-ui-empty.d.ts} +0 -0
  137. /package/{examples/index.d.ts → types/ng-nest-ui-examples.d.ts} +0 -0
  138. /package/{find/index.d.ts → types/ng-nest-ui-find.d.ts} +0 -0
  139. /package/{form/index.d.ts → types/ng-nest-ui-form.d.ts} +0 -0
  140. /package/{highlight/index.d.ts → types/ng-nest-ui-highlight.d.ts} +0 -0
  141. /package/{i18n/index.d.ts → types/ng-nest-ui-i18n.d.ts} +0 -0
  142. /package/{icon/index.d.ts → types/ng-nest-ui-icon.d.ts} +0 -0
  143. /package/{image/index.d.ts → types/ng-nest-ui-image.d.ts} +0 -0
  144. /package/{inner/index.d.ts → types/ng-nest-ui-inner.d.ts} +0 -0
  145. /package/{input-number/index.d.ts → types/ng-nest-ui-input-number.d.ts} +0 -0
  146. /package/{input/index.d.ts → types/ng-nest-ui-input.d.ts} +0 -0
  147. /package/{keyword/index.d.ts → types/ng-nest-ui-keyword.d.ts} +0 -0
  148. /package/{layout/index.d.ts → types/ng-nest-ui-layout.d.ts} +0 -0
  149. /package/{link/index.d.ts → types/ng-nest-ui-link.d.ts} +0 -0
  150. /package/{list/index.d.ts → types/ng-nest-ui-list.d.ts} +0 -0
  151. /package/{loading/index.d.ts → types/ng-nest-ui-loading.d.ts} +0 -0
  152. /package/{menu/index.d.ts → types/ng-nest-ui-menu.d.ts} +0 -0
  153. /package/{message-box/index.d.ts → types/ng-nest-ui-message-box.d.ts} +0 -0
  154. /package/{message/index.d.ts → types/ng-nest-ui-message.d.ts} +0 -0
  155. /package/{notification/index.d.ts → types/ng-nest-ui-notification.d.ts} +0 -0
  156. /package/{outlet/index.d.ts → types/ng-nest-ui-outlet.d.ts} +0 -0
  157. /package/{page-header/index.d.ts → types/ng-nest-ui-page-header.d.ts} +0 -0
  158. /package/{pagination/index.d.ts → types/ng-nest-ui-pagination.d.ts} +0 -0
  159. /package/{pattern/index.d.ts → types/ng-nest-ui-pattern.d.ts} +0 -0
  160. /package/{popconfirm/index.d.ts → types/ng-nest-ui-popconfirm.d.ts} +0 -0
  161. /package/{popover/index.d.ts → types/ng-nest-ui-popover.d.ts} +0 -0
  162. /package/{portal/index.d.ts → types/ng-nest-ui-portal.d.ts} +0 -0
  163. /package/{progress/index.d.ts → types/ng-nest-ui-progress.d.ts} +0 -0
  164. /package/{prompts/index.d.ts → types/ng-nest-ui-prompts.d.ts} +0 -0
  165. /package/{rate/index.d.ts → types/ng-nest-ui-rate.d.ts} +0 -0
  166. /package/{resizable/index.d.ts → types/ng-nest-ui-resizable.d.ts} +0 -0
  167. /package/{result/index.d.ts → types/ng-nest-ui-result.d.ts} +0 -0
  168. /package/{ripple/index.d.ts → types/ng-nest-ui-ripple.d.ts} +0 -0
  169. /package/{scrollable/index.d.ts → types/ng-nest-ui-scrollable.d.ts} +0 -0
  170. /package/{select/index.d.ts → types/ng-nest-ui-select.d.ts} +0 -0
  171. /package/{sender/index.d.ts → types/ng-nest-ui-sender.d.ts} +0 -0
  172. /package/{skeleton/index.d.ts → types/ng-nest-ui-skeleton.d.ts} +0 -0
  173. /package/{slider-select/index.d.ts → types/ng-nest-ui-slider-select.d.ts} +0 -0
  174. /package/{slider/index.d.ts → types/ng-nest-ui-slider.d.ts} +0 -0
  175. /package/{statistic/index.d.ts → types/ng-nest-ui-statistic.d.ts} +0 -0
  176. /package/{steps/index.d.ts → types/ng-nest-ui-steps.d.ts} +0 -0
  177. /package/{suggestion/index.d.ts → types/ng-nest-ui-suggestion.d.ts} +0 -0
  178. /package/{switch/index.d.ts → types/ng-nest-ui-switch.d.ts} +0 -0
  179. /package/{table-view/index.d.ts → types/ng-nest-ui-table-view.d.ts} +0 -0
  180. /package/{table/index.d.ts → types/ng-nest-ui-table.d.ts} +0 -0
  181. /package/{tabs/index.d.ts → types/ng-nest-ui-tabs.d.ts} +0 -0
  182. /package/{tag/index.d.ts → types/ng-nest-ui-tag.d.ts} +0 -0
  183. /package/{text-retract/index.d.ts → types/ng-nest-ui-text-retract.d.ts} +0 -0
  184. /package/{textarea/index.d.ts → types/ng-nest-ui-textarea.d.ts} +0 -0
  185. /package/{theme/index.d.ts → types/ng-nest-ui-theme.d.ts} +0 -0
  186. /package/{thought-chain/index.d.ts → types/ng-nest-ui-thought-chain.d.ts} +0 -0
  187. /package/{time-ago/index.d.ts → types/ng-nest-ui-time-ago.d.ts} +0 -0
  188. /package/{time-picker/index.d.ts → types/ng-nest-ui-time-picker.d.ts} +0 -0
  189. /package/{time-range/index.d.ts → types/ng-nest-ui-time-range.d.ts} +0 -0
  190. /package/{timeline/index.d.ts → types/ng-nest-ui-timeline.d.ts} +0 -0
  191. /package/{tooltip/index.d.ts → types/ng-nest-ui-tooltip.d.ts} +0 -0
  192. /package/{transfer/index.d.ts → types/ng-nest-ui-transfer.d.ts} +0 -0
  193. /package/{tree-file/index.d.ts → types/ng-nest-ui-tree-file.d.ts} +0 -0
  194. /package/{tree-select/index.d.ts → types/ng-nest-ui-tree-select.d.ts} +0 -0
  195. /package/{tree/index.d.ts → types/ng-nest-ui-tree.d.ts} +0 -0
  196. /package/{typography/index.d.ts → types/ng-nest-ui-typography.d.ts} +0 -0
  197. /package/{upload/index.d.ts → types/ng-nest-ui-upload.d.ts} +0 -0
  198. /package/{welcome/index.d.ts → types/ng-nest-ui-welcome.d.ts} +0 -0
  199. /package/{index.d.ts → types/ng-nest-ui.d.ts} +0 -0
@@ -25,10 +25,10 @@ class XTypographyProperty extends XProperty {
25
25
  */
26
26
  this.text = input(...(ngDevMode ? [undefined, { debugName: "text" }] : []));
27
27
  }
28
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XTypographyProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
29
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.5", type: XTypographyProperty, isStandalone: true, selector: "x-typography-property", inputs: { font: { classPropertyName: "font", publicName: "font", isSignal: true, isRequired: false, transformFunction: null }, text: { classPropertyName: "text", publicName: "text", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
28
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XTypographyProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
29
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.0.0", type: XTypographyProperty, isStandalone: true, selector: "x-typography-property", inputs: { font: { classPropertyName: "font", publicName: "font", isSignal: true, isRequired: false, transformFunction: null }, text: { classPropertyName: "text", publicName: "text", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
30
30
  }
31
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XTypographyProperty, decorators: [{
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XTypographyProperty, decorators: [{
32
32
  type: Component,
33
33
  args: [{ selector: `${XTypographyPrefix}-property`, template: '' }]
34
34
  }], propDecorators: { font: [{ type: i0.Input, args: [{ isSignal: true, alias: "font", required: false }] }], text: [{ type: i0.Input, args: [{ isSignal: true, alias: "text", required: false }] }] } });
@@ -49,20 +49,20 @@ class XTypographyComponent extends XTypographyProperty {
49
49
  if (text && text.length > 0)
50
50
  this.firstText.set(text.slice(0, 1));
51
51
  }
52
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XTypographyComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
53
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.5", type: XTypographyComponent, isStandalone: true, selector: "x-typography", usesInheritance: true, ngImport: i0, template: "<h4>{{ font() }}</h4>\r\n<div class=\"x-typography-list\">\r\n <div class=\"x-typography-item\">\r\n <h1>{{ firstText() }}</h1>\r\n <p>\r\n <span>\u5E38\u89C4</span>\r\n <span class=\"x-typography-blod\">\u7C97\u4F53</span>\r\n </p>\r\n </div>\r\n <div class=\"x-typography-item\">\r\n <h1>Aa</h1>\r\n <p>\r\n <span>Regular</span>\r\n <span class=\"x-typography-blod\">Bold</span>\r\n </p>\r\n </div>\r\n</div>\r\n<p>{{ text() }}</p>\r\n<p>abcdefghijklmnopqrstuvwxyz</p>\r\n<p>ABCDEFGHIJKLMNOPQRSTUVWXYZ</p>\r\n<p>1234567890.:,;'\"(!?)+-*/=</p>\r\n", styles: [".x-typography{margin:0;padding:0}.x-typography{color:var(--x-text)}.x-typography h4,.x-typography h1,.x-typography p{margin:0;font-size:var(--x-font-size);line-height:1.5rem}.x-typography>h4{color:var(--x-text-300);font-weight:500}.x-typography-list{display:flex;margin:.5rem 0}.x-typography-item{display:flex;margin:.5rem 0 0 3rem}.x-typography-item:first-child{margin-left:0}.x-typography-item>h1{color:var(--x-text);font-size:3.75rem;font-weight:600}.x-typography-item>p{display:flex;flex-direction:column;padding:.75rem 0;margin-left:1.5rem}.x-typography-item>p>span{margin-top:.25rem}.x-typography-item>p>span:first-child{margin-top:0}.x-typography-blod{font-weight:600}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
52
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XTypographyComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
53
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.0", type: XTypographyComponent, isStandalone: true, selector: "x-typography", usesInheritance: true, ngImport: i0, template: "<h4>{{ font() }}</h4>\r\n<div class=\"x-typography-list\">\r\n <div class=\"x-typography-item\">\r\n <h1>{{ firstText() }}</h1>\r\n <p>\r\n <span>\u5E38\u89C4</span>\r\n <span class=\"x-typography-blod\">\u7C97\u4F53</span>\r\n </p>\r\n </div>\r\n <div class=\"x-typography-item\">\r\n <h1>Aa</h1>\r\n <p>\r\n <span>Regular</span>\r\n <span class=\"x-typography-blod\">Bold</span>\r\n </p>\r\n </div>\r\n</div>\r\n<p>{{ text() }}</p>\r\n<p>abcdefghijklmnopqrstuvwxyz</p>\r\n<p>ABCDEFGHIJKLMNOPQRSTUVWXYZ</p>\r\n<p>1234567890.:,;'\"(!?)+-*/=</p>\r\n", styles: [".x-typography{margin:0;padding:0}.x-typography{color:var(--x-text)}.x-typography h4,.x-typography h1,.x-typography p{margin:0;font-size:var(--x-font-size);line-height:1.5rem}.x-typography>h4{color:var(--x-text-300);font-weight:500}.x-typography-list{display:flex;margin:.5rem 0}.x-typography-item{display:flex;margin:.5rem 0 0 3rem}.x-typography-item:first-child{margin-left:0}.x-typography-item>h1{color:var(--x-text);font-size:3.75rem;font-weight:600}.x-typography-item>p{display:flex;flex-direction:column;padding:.75rem 0;margin-left:1.5rem}.x-typography-item>p>span{margin-top:.25rem}.x-typography-item>p>span:first-child{margin-top:0}.x-typography-blod{font-weight:600}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
54
54
  }
55
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XTypographyComponent, decorators: [{
55
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XTypographyComponent, decorators: [{
56
56
  type: Component,
57
57
  args: [{ selector: 'x-typography', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<h4>{{ font() }}</h4>\r\n<div class=\"x-typography-list\">\r\n <div class=\"x-typography-item\">\r\n <h1>{{ firstText() }}</h1>\r\n <p>\r\n <span>\u5E38\u89C4</span>\r\n <span class=\"x-typography-blod\">\u7C97\u4F53</span>\r\n </p>\r\n </div>\r\n <div class=\"x-typography-item\">\r\n <h1>Aa</h1>\r\n <p>\r\n <span>Regular</span>\r\n <span class=\"x-typography-blod\">Bold</span>\r\n </p>\r\n </div>\r\n</div>\r\n<p>{{ text() }}</p>\r\n<p>abcdefghijklmnopqrstuvwxyz</p>\r\n<p>ABCDEFGHIJKLMNOPQRSTUVWXYZ</p>\r\n<p>1234567890.:,;'\"(!?)+-*/=</p>\r\n", styles: [".x-typography{margin:0;padding:0}.x-typography{color:var(--x-text)}.x-typography h4,.x-typography h1,.x-typography p{margin:0;font-size:var(--x-font-size);line-height:1.5rem}.x-typography>h4{color:var(--x-text-300);font-weight:500}.x-typography-list{display:flex;margin:.5rem 0}.x-typography-item{display:flex;margin:.5rem 0 0 3rem}.x-typography-item:first-child{margin-left:0}.x-typography-item>h1{color:var(--x-text);font-size:3.75rem;font-weight:600}.x-typography-item>p{display:flex;flex-direction:column;padding:.75rem 0;margin-left:1.5rem}.x-typography-item>p>span{margin-top:.25rem}.x-typography-item>p>span:first-child{margin-top:0}.x-typography-blod{font-weight:600}\n"] }]
58
58
  }] });
59
59
 
60
60
  class XTypographyModule {
61
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XTypographyModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
62
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.5", ngImport: i0, type: XTypographyModule, imports: [XTypographyComponent], exports: [XTypographyComponent] }); }
63
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XTypographyModule }); }
61
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XTypographyModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
62
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.0", ngImport: i0, type: XTypographyModule, imports: [XTypographyComponent], exports: [XTypographyComponent] }); }
63
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XTypographyModule }); }
64
64
  }
65
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XTypographyModule, decorators: [{
65
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XTypographyModule, decorators: [{
66
66
  type: NgModule,
67
67
  args: [{
68
68
  exports: [XTypographyComponent],
@@ -141,10 +141,10 @@ class XUploadProperty extends XFormControlFunction(X_UPLOAD_CONFIG_NAME) {
141
141
  */
142
142
  this.uploadError = output();
143
143
  }
144
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XUploadProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
145
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.5", type: XUploadProperty, isStandalone: true, selector: "x-upload-property", inputs: { text: { classPropertyName: "text", publicName: "text", isSignal: true, isRequired: false, transformFunction: null }, action: { classPropertyName: "action", publicName: "action", isSignal: true, isRequired: false, transformFunction: null }, dropContainer: { classPropertyName: "dropContainer", publicName: "dropContainer", isSignal: true, isRequired: false, transformFunction: null }, dropIcon: { classPropertyName: "dropIcon", publicName: "dropIcon", isSignal: true, isRequired: false, transformFunction: null }, dropTitle: { classPropertyName: "dropTitle", publicName: "dropTitle", isSignal: true, isRequired: false, transformFunction: null }, dropDescription: { classPropertyName: "dropDescription", publicName: "dropDescription", isSignal: true, isRequired: false, transformFunction: null }, showDrop: { classPropertyName: "showDrop", publicName: "showDrop", isSignal: true, isRequired: false, transformFunction: null }, accept: { classPropertyName: "accept", publicName: "accept", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, imgFallback: { classPropertyName: "imgFallback", publicName: "imgFallback", isSignal: true, isRequired: false, transformFunction: null }, imgCut: { classPropertyName: "imgCut", publicName: "imgCut", isSignal: true, isRequired: false, transformFunction: null }, multiple: { classPropertyName: "multiple", publicName: "multiple", isSignal: true, isRequired: false, transformFunction: null }, download: { classPropertyName: "download", publicName: "download", isSignal: true, isRequired: false, transformFunction: null }, multipleModel: { classPropertyName: "multipleModel", publicName: "multipleModel", isSignal: true, isRequired: false, transformFunction: null }, filesTpl: { classPropertyName: "filesTpl", publicName: "filesTpl", isSignal: true, isRequired: false, transformFunction: null }, maxLimit: { classPropertyName: "maxLimit", publicName: "maxLimit", isSignal: true, isRequired: false, transformFunction: null }, headers: { classPropertyName: "headers", publicName: "headers", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { removeClick: "removeClick", uploadReady: "uploadReady", uploading: "uploading", uploadSuccess: "uploadSuccess", uploadError: "uploadError" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
144
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XUploadProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
145
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.0.0", type: XUploadProperty, isStandalone: true, selector: "x-upload-property", inputs: { text: { classPropertyName: "text", publicName: "text", isSignal: true, isRequired: false, transformFunction: null }, action: { classPropertyName: "action", publicName: "action", isSignal: true, isRequired: false, transformFunction: null }, dropContainer: { classPropertyName: "dropContainer", publicName: "dropContainer", isSignal: true, isRequired: false, transformFunction: null }, dropIcon: { classPropertyName: "dropIcon", publicName: "dropIcon", isSignal: true, isRequired: false, transformFunction: null }, dropTitle: { classPropertyName: "dropTitle", publicName: "dropTitle", isSignal: true, isRequired: false, transformFunction: null }, dropDescription: { classPropertyName: "dropDescription", publicName: "dropDescription", isSignal: true, isRequired: false, transformFunction: null }, showDrop: { classPropertyName: "showDrop", publicName: "showDrop", isSignal: true, isRequired: false, transformFunction: null }, accept: { classPropertyName: "accept", publicName: "accept", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, imgFallback: { classPropertyName: "imgFallback", publicName: "imgFallback", isSignal: true, isRequired: false, transformFunction: null }, imgCut: { classPropertyName: "imgCut", publicName: "imgCut", isSignal: true, isRequired: false, transformFunction: null }, multiple: { classPropertyName: "multiple", publicName: "multiple", isSignal: true, isRequired: false, transformFunction: null }, download: { classPropertyName: "download", publicName: "download", isSignal: true, isRequired: false, transformFunction: null }, multipleModel: { classPropertyName: "multipleModel", publicName: "multipleModel", isSignal: true, isRequired: false, transformFunction: null }, filesTpl: { classPropertyName: "filesTpl", publicName: "filesTpl", isSignal: true, isRequired: false, transformFunction: null }, maxLimit: { classPropertyName: "maxLimit", publicName: "maxLimit", isSignal: true, isRequired: false, transformFunction: null }, headers: { classPropertyName: "headers", publicName: "headers", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { removeClick: "removeClick", uploadReady: "uploadReady", uploading: "uploading", uploadSuccess: "uploadSuccess", uploadError: "uploadError" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
146
146
  }
147
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XUploadProperty, decorators: [{
147
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XUploadProperty, decorators: [{
148
148
  type: Component,
149
149
  args: [{ selector: `${XUploadPrefix}-property`, template: '' }]
150
150
  }], propDecorators: { text: [{ type: i0.Input, args: [{ isSignal: true, alias: "text", required: false }] }], action: [{ type: i0.Input, args: [{ isSignal: true, alias: "action", required: false }] }], dropContainer: [{ type: i0.Input, args: [{ isSignal: true, alias: "dropContainer", required: false }] }], dropIcon: [{ type: i0.Input, args: [{ isSignal: true, alias: "dropIcon", required: false }] }], dropTitle: [{ type: i0.Input, args: [{ isSignal: true, alias: "dropTitle", required: false }] }], dropDescription: [{ type: i0.Input, args: [{ isSignal: true, alias: "dropDescription", required: false }] }], showDrop: [{ type: i0.Input, args: [{ isSignal: true, alias: "showDrop", required: false }] }], accept: [{ type: i0.Input, args: [{ isSignal: true, alias: "accept", required: false }] }], type: [{ type: i0.Input, args: [{ isSignal: true, alias: "type", required: false }] }], imgFallback: [{ type: i0.Input, args: [{ isSignal: true, alias: "imgFallback", required: false }] }], imgCut: [{ type: i0.Input, args: [{ isSignal: true, alias: "imgCut", required: false }] }], multiple: [{ type: i0.Input, args: [{ isSignal: true, alias: "multiple", required: false }] }], download: [{ type: i0.Input, args: [{ isSignal: true, alias: "download", required: false }] }], multipleModel: [{ type: i0.Input, args: [{ isSignal: true, alias: "multipleModel", required: false }] }], filesTpl: [{ type: i0.Input, args: [{ isSignal: true, alias: "filesTpl", required: false }] }], maxLimit: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxLimit", required: false }] }], headers: [{ type: i0.Input, args: [{ isSignal: true, alias: "headers", required: false }] }], removeClick: [{ type: i0.Output, args: ["removeClick"] }], uploadReady: [{ type: i0.Output, args: ["uploadReady"] }], uploading: [{ type: i0.Output, args: ["uploading"] }], uploadSuccess: [{ type: i0.Output, args: ["uploadSuccess"] }], uploadError: [{ type: i0.Output, args: ["uploadError"] }] } });
@@ -336,10 +336,10 @@ class XUploadPortalComponent {
336
336
  });
337
337
  };
338
338
  }
339
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XUploadPortalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
340
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.3.5", type: XUploadPortalComponent, isStandalone: true, selector: "x-upload-portal", inputs: { file: { classPropertyName: "file", publicName: "file", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { closePortal: "closePortal", surePortal: "surePortal" }, viewQueries: [{ propertyName: "imgRef", first: true, predicate: ["imgRef"], descendants: true, isSignal: true }, { propertyName: "imgClipRef", first: true, predicate: ["imgClipRef"], descendants: true, isSignal: true }, { propertyName: "boundaryRef", first: true, predicate: ["boundaryRef"], descendants: true, isSignal: true }, { propertyName: "cutRef", first: true, predicate: ["cutRef"], descendants: true, isSignal: true }], ngImport: i0, template: "<div class=\"x-upload-portal {{ cutType() }}\" [class.x-upload-portal-ready]=\"ready()\">\r\n <div class=\"x-upload-portal-tools\">\r\n <div class=\"x-upload-portal-title\">\r\n <x-icon type=\"fto-image\"></x-icon>\r\n <span>{{ name() }}</span>\r\n </div>\r\n <x-icon class=\"x-upload-portal-close\" type=\"fto-x\" (click)=\"closePortal.emit()\"></x-icon>\r\n </div>\r\n <div class=\"x-upload-portal-img\">\r\n <img #imgRef class=\"x-upload-portal-full-img\" [src]=\"url()\" />\r\n <div #boundaryRef class=\"x-upload-portal-boundary\">\r\n <img #imgClipRef class=\"x-upload-portal-clip-img\" [src]=\"url()\" />\r\n <div #cutRef class=\"x-upload-portal-cut\">\r\n <div class=\"x-upload-portal-cut-top-start\"></div>\r\n <div class=\"x-upload-portal-cut-top\"></div>\r\n <div class=\"x-upload-portal-cut-top-end\"></div>\r\n <div class=\"x-upload-portal-cut-left\"></div>\r\n <div class=\"x-upload-portal-cut-right\"></div>\r\n <div class=\"x-upload-portal-cut-bottom-start\"></div>\r\n <div class=\"x-upload-portal-cut-bottom\"></div>\r\n <div class=\"x-upload-portal-cut-bottom-end\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"x-upload-portal-bottom-tools\">\r\n <x-icon class=\"x-upload-portal-close\" type=\"fto-check\" (click)=\"sure()\"></x-icon>\r\n </div>\r\n</div>\r\n", styles: ["x-upload-portal{width:100%;height:100%}.x-upload-portal{margin:0;padding:0}.x-upload-portal{display:flex;position:relative;width:100%;height:100%;flex-direction:column}.x-upload-portal-tools{width:100%;height:3.25rem;display:flex;align-items:center;justify-content:space-between;position:absolute;z-index:1;color:#fff}.x-upload-portal-bottom-tools{width:100%;height:3.25rem;position:absolute;display:flex;justify-content:center;align-items:center;z-index:1;color:#fff;bottom:0}.x-upload-portal-title{display:flex;align-items:center;margin:0 1rem}.x-upload-portal-title>x-icon{font-size:1.25rem}.x-upload-portal-title>span{margin-left:.5rem}.x-upload-portal-close{font-size:1.75rem;padding:0 1rem;color:#fffc;transition:color var(--x-animation-duration-base);cursor:pointer}.x-upload-portal-close:hover{color:#fff}.x-upload-portal-img{flex:1;width:100%;position:relative;overflow:auto}.x-upload-portal-full-img{max-width:85%;max-height:85%;width:auto;height:auto;position:absolute;left:50%;top:50%;transform:translate3d(-50%,-50%,0)}.x-upload-portal-clip-img{position:absolute}.x-upload-portal-ready .x-upload-portal-full-img{max-width:inherit;max-height:inherit}.x-upload-portal-boundary{width:0;height:0;left:50%;top:50%;transform:translate3d(-50%,-50%,0);position:relative;background-color:#00000080}.x-upload-portal-cut{width:0;height:0;border:.125rem var(--x-border-style) rgba(255,255,255,.8);display:flex;align-items:center;justify-content:center;position:relative;cursor:move}.x-upload-portal-cut-top-start,.x-upload-portal-cut-top,.x-upload-portal-cut-top-end,.x-upload-portal-cut-left,.x-upload-portal-cut-right,.x-upload-portal-cut-bottom-start,.x-upload-portal-cut-bottom,.x-upload-portal-cut-bottom-end{width:.825rem;height:.825rem;background:#fff;position:absolute;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius)}.x-upload-portal-cut-top-start{top:-.4125rem;left:-.4125rem;cursor:se-resize}.x-upload-portal-cut-top{top:-.4125rem;cursor:s-resize}.x-upload-portal-cut-top-end{top:-.4125rem;right:-.4125rem;cursor:ne-resize}.x-upload-portal-cut-left{left:-.4125rem;cursor:w-resize}.x-upload-portal-cut-right{right:-.4125rem;cursor:w-resize}.x-upload-portal-cut-bottom-start{left:-.4125rem;bottom:-.4125rem;cursor:ne-resize}.x-upload-portal-cut-bottom{bottom:-.4125rem;cursor:s-resize}.x-upload-portal-cut-bottom-end{right:-.4125rem;bottom:-.4125rem;cursor:se-resize}.x-upload-portal-top-start{cursor:se-resize}.x-upload-portal-top{cursor:s-resize}.x-upload-portal-top-end{cursor:ne-resize}.x-upload-portal-left,.x-upload-portal-right{cursor:w-resize}.x-upload-portal-bottom-start{cursor:ne-resize}.x-upload-portal-bottom{cursor:s-resize}.x-upload-portal-bottom-end{cursor:se-resize}\n"], dependencies: [{ kind: "component", type: XIconComponent, selector: "x-icon" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
339
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XUploadPortalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
340
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.0.0", type: XUploadPortalComponent, isStandalone: true, selector: "x-upload-portal", inputs: { file: { classPropertyName: "file", publicName: "file", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { closePortal: "closePortal", surePortal: "surePortal" }, viewQueries: [{ propertyName: "imgRef", first: true, predicate: ["imgRef"], descendants: true, isSignal: true }, { propertyName: "imgClipRef", first: true, predicate: ["imgClipRef"], descendants: true, isSignal: true }, { propertyName: "boundaryRef", first: true, predicate: ["boundaryRef"], descendants: true, isSignal: true }, { propertyName: "cutRef", first: true, predicate: ["cutRef"], descendants: true, isSignal: true }], ngImport: i0, template: "<div class=\"x-upload-portal {{ cutType() }}\" [class.x-upload-portal-ready]=\"ready()\">\r\n <div class=\"x-upload-portal-tools\">\r\n <div class=\"x-upload-portal-title\">\r\n <x-icon type=\"fto-image\"></x-icon>\r\n <span>{{ name() }}</span>\r\n </div>\r\n <x-icon class=\"x-upload-portal-close\" type=\"fto-x\" (click)=\"closePortal.emit()\"></x-icon>\r\n </div>\r\n <div class=\"x-upload-portal-img\">\r\n <img #imgRef class=\"x-upload-portal-full-img\" [src]=\"url()\" />\r\n <div #boundaryRef class=\"x-upload-portal-boundary\">\r\n <img #imgClipRef class=\"x-upload-portal-clip-img\" [src]=\"url()\" />\r\n <div #cutRef class=\"x-upload-portal-cut\">\r\n <div class=\"x-upload-portal-cut-top-start\"></div>\r\n <div class=\"x-upload-portal-cut-top\"></div>\r\n <div class=\"x-upload-portal-cut-top-end\"></div>\r\n <div class=\"x-upload-portal-cut-left\"></div>\r\n <div class=\"x-upload-portal-cut-right\"></div>\r\n <div class=\"x-upload-portal-cut-bottom-start\"></div>\r\n <div class=\"x-upload-portal-cut-bottom\"></div>\r\n <div class=\"x-upload-portal-cut-bottom-end\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"x-upload-portal-bottom-tools\">\r\n <x-icon class=\"x-upload-portal-close\" type=\"fto-check\" (click)=\"sure()\"></x-icon>\r\n </div>\r\n</div>\r\n", styles: ["x-upload-portal{width:100%;height:100%}.x-upload-portal{margin:0;padding:0}.x-upload-portal{display:flex;position:relative;width:100%;height:100%;flex-direction:column}.x-upload-portal-tools{width:100%;height:3.25rem;display:flex;align-items:center;justify-content:space-between;position:absolute;z-index:1;color:#fff}.x-upload-portal-bottom-tools{width:100%;height:3.25rem;position:absolute;display:flex;justify-content:center;align-items:center;z-index:1;color:#fff;bottom:0}.x-upload-portal-title{display:flex;align-items:center;margin:0 1rem}.x-upload-portal-title>x-icon{font-size:1.25rem}.x-upload-portal-title>span{margin-left:.5rem}.x-upload-portal-close{font-size:1.75rem;padding:0 1rem;color:#fffc;transition:color var(--x-animation-duration-base);cursor:pointer}.x-upload-portal-close:hover{color:#fff}.x-upload-portal-img{flex:1;width:100%;position:relative;overflow:auto}.x-upload-portal-full-img{max-width:85%;max-height:85%;width:auto;height:auto;position:absolute;left:50%;top:50%;transform:translate3d(-50%,-50%,0)}.x-upload-portal-clip-img{position:absolute}.x-upload-portal-ready .x-upload-portal-full-img{max-width:inherit;max-height:inherit}.x-upload-portal-boundary{width:0;height:0;left:50%;top:50%;transform:translate3d(-50%,-50%,0);position:relative;background-color:#00000080}.x-upload-portal-cut{width:0;height:0;border:.125rem var(--x-border-style) rgba(255,255,255,.8);display:flex;align-items:center;justify-content:center;position:relative;cursor:move}.x-upload-portal-cut-top-start,.x-upload-portal-cut-top,.x-upload-portal-cut-top-end,.x-upload-portal-cut-left,.x-upload-portal-cut-right,.x-upload-portal-cut-bottom-start,.x-upload-portal-cut-bottom,.x-upload-portal-cut-bottom-end{width:.825rem;height:.825rem;background:#fff;position:absolute;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius)}.x-upload-portal-cut-top-start{top:-.4125rem;left:-.4125rem;cursor:se-resize}.x-upload-portal-cut-top{top:-.4125rem;cursor:s-resize}.x-upload-portal-cut-top-end{top:-.4125rem;right:-.4125rem;cursor:ne-resize}.x-upload-portal-cut-left{left:-.4125rem;cursor:w-resize}.x-upload-portal-cut-right{right:-.4125rem;cursor:w-resize}.x-upload-portal-cut-bottom-start{left:-.4125rem;bottom:-.4125rem;cursor:ne-resize}.x-upload-portal-cut-bottom{bottom:-.4125rem;cursor:s-resize}.x-upload-portal-cut-bottom-end{right:-.4125rem;bottom:-.4125rem;cursor:se-resize}.x-upload-portal-top-start{cursor:se-resize}.x-upload-portal-top{cursor:s-resize}.x-upload-portal-top-end{cursor:ne-resize}.x-upload-portal-left,.x-upload-portal-right{cursor:w-resize}.x-upload-portal-bottom-start{cursor:ne-resize}.x-upload-portal-bottom{cursor:s-resize}.x-upload-portal-bottom-end{cursor:se-resize}\n"], dependencies: [{ kind: "component", type: XIconComponent, selector: "x-icon" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
341
341
  }
342
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XUploadPortalComponent, decorators: [{
342
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XUploadPortalComponent, decorators: [{
343
343
  type: Component,
344
344
  args: [{ selector: `${XUploadPortalPrefix}`, imports: [XIconComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"x-upload-portal {{ cutType() }}\" [class.x-upload-portal-ready]=\"ready()\">\r\n <div class=\"x-upload-portal-tools\">\r\n <div class=\"x-upload-portal-title\">\r\n <x-icon type=\"fto-image\"></x-icon>\r\n <span>{{ name() }}</span>\r\n </div>\r\n <x-icon class=\"x-upload-portal-close\" type=\"fto-x\" (click)=\"closePortal.emit()\"></x-icon>\r\n </div>\r\n <div class=\"x-upload-portal-img\">\r\n <img #imgRef class=\"x-upload-portal-full-img\" [src]=\"url()\" />\r\n <div #boundaryRef class=\"x-upload-portal-boundary\">\r\n <img #imgClipRef class=\"x-upload-portal-clip-img\" [src]=\"url()\" />\r\n <div #cutRef class=\"x-upload-portal-cut\">\r\n <div class=\"x-upload-portal-cut-top-start\"></div>\r\n <div class=\"x-upload-portal-cut-top\"></div>\r\n <div class=\"x-upload-portal-cut-top-end\"></div>\r\n <div class=\"x-upload-portal-cut-left\"></div>\r\n <div class=\"x-upload-portal-cut-right\"></div>\r\n <div class=\"x-upload-portal-cut-bottom-start\"></div>\r\n <div class=\"x-upload-portal-cut-bottom\"></div>\r\n <div class=\"x-upload-portal-cut-bottom-end\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"x-upload-portal-bottom-tools\">\r\n <x-icon class=\"x-upload-portal-close\" type=\"fto-check\" (click)=\"sure()\"></x-icon>\r\n </div>\r\n</div>\r\n", styles: ["x-upload-portal{width:100%;height:100%}.x-upload-portal{margin:0;padding:0}.x-upload-portal{display:flex;position:relative;width:100%;height:100%;flex-direction:column}.x-upload-portal-tools{width:100%;height:3.25rem;display:flex;align-items:center;justify-content:space-between;position:absolute;z-index:1;color:#fff}.x-upload-portal-bottom-tools{width:100%;height:3.25rem;position:absolute;display:flex;justify-content:center;align-items:center;z-index:1;color:#fff;bottom:0}.x-upload-portal-title{display:flex;align-items:center;margin:0 1rem}.x-upload-portal-title>x-icon{font-size:1.25rem}.x-upload-portal-title>span{margin-left:.5rem}.x-upload-portal-close{font-size:1.75rem;padding:0 1rem;color:#fffc;transition:color var(--x-animation-duration-base);cursor:pointer}.x-upload-portal-close:hover{color:#fff}.x-upload-portal-img{flex:1;width:100%;position:relative;overflow:auto}.x-upload-portal-full-img{max-width:85%;max-height:85%;width:auto;height:auto;position:absolute;left:50%;top:50%;transform:translate3d(-50%,-50%,0)}.x-upload-portal-clip-img{position:absolute}.x-upload-portal-ready .x-upload-portal-full-img{max-width:inherit;max-height:inherit}.x-upload-portal-boundary{width:0;height:0;left:50%;top:50%;transform:translate3d(-50%,-50%,0);position:relative;background-color:#00000080}.x-upload-portal-cut{width:0;height:0;border:.125rem var(--x-border-style) rgba(255,255,255,.8);display:flex;align-items:center;justify-content:center;position:relative;cursor:move}.x-upload-portal-cut-top-start,.x-upload-portal-cut-top,.x-upload-portal-cut-top-end,.x-upload-portal-cut-left,.x-upload-portal-cut-right,.x-upload-portal-cut-bottom-start,.x-upload-portal-cut-bottom,.x-upload-portal-cut-bottom-end{width:.825rem;height:.825rem;background:#fff;position:absolute;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius)}.x-upload-portal-cut-top-start{top:-.4125rem;left:-.4125rem;cursor:se-resize}.x-upload-portal-cut-top{top:-.4125rem;cursor:s-resize}.x-upload-portal-cut-top-end{top:-.4125rem;right:-.4125rem;cursor:ne-resize}.x-upload-portal-cut-left{left:-.4125rem;cursor:w-resize}.x-upload-portal-cut-right{right:-.4125rem;cursor:w-resize}.x-upload-portal-cut-bottom-start{left:-.4125rem;bottom:-.4125rem;cursor:ne-resize}.x-upload-portal-cut-bottom{bottom:-.4125rem;cursor:s-resize}.x-upload-portal-cut-bottom-end{right:-.4125rem;bottom:-.4125rem;cursor:se-resize}.x-upload-portal-top-start{cursor:se-resize}.x-upload-portal-top{cursor:s-resize}.x-upload-portal-top-end{cursor:ne-resize}.x-upload-portal-left,.x-upload-portal-right{cursor:w-resize}.x-upload-portal-bottom-start{cursor:ne-resize}.x-upload-portal-bottom{cursor:s-resize}.x-upload-portal-bottom-end{cursor:se-resize}\n"] }]
345
345
  }], propDecorators: { file: [{ type: i0.Input, args: [{ isSignal: true, alias: "file", required: false }] }], imgRef: [{ type: i0.ViewChild, args: ['imgRef', { isSignal: true }] }], imgClipRef: [{ type: i0.ViewChild, args: ['imgClipRef', { isSignal: true }] }], boundaryRef: [{ type: i0.ViewChild, args: ['boundaryRef', { isSignal: true }] }], cutRef: [{ type: i0.ViewChild, args: ['cutRef', { isSignal: true }] }], closePortal: [{ type: i0.Output, args: ["closePortal"] }], surePortal: [{ type: i0.Output, args: ["surePortal"] }] } });
@@ -351,10 +351,10 @@ class XDragOverlayComponent {
351
351
  this.description = input(...(ngDevMode ? [undefined, { debugName: "description" }] : []));
352
352
  this.iconString = computed(() => this.icon(), ...(ngDevMode ? [{ debugName: "iconString" }] : []));
353
353
  }
354
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XDragOverlayComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
355
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.5", type: XDragOverlayComponent, isStandalone: true, selector: "x-drag-overlay", inputs: { icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, description: { classPropertyName: "description", publicName: "description", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div class=\"x-drag-overlay\">\r\n @if (icon()) {\r\n <div class=\"x-drag-overlay-icon\">\r\n <ng-container *xOutlet=\"icon()\">\r\n <x-icon [type]=\"iconString()\"></x-icon>\r\n </ng-container>\r\n </div>\r\n }\r\n @if (title()) {\r\n <div class=\"x-drag-overlay-title\">\r\n <ng-container *xOutlet=\"title()\">\r\n {{ title() }}\r\n </ng-container>\r\n </div>\r\n }\r\n @if (description()) {\r\n <div class=\"x-drag-overlay-description\">\r\n <ng-container *xOutlet=\"description()\">\r\n {{ description() }}\r\n </ng-container>\r\n </div>\r\n }\r\n</div>\r\n", styles: ["x-drag-overlay{width:100%;height:100%}.x-drag-overlay{margin:0;padding:0}.x-drag-overlay{position:absolute;inset:0;-webkit-backdrop-filter:blur(.25rem);backdrop-filter:blur(.25rem);border:var(--x-border-width) dashed var(--x-primary);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1000}.x-drag-overlay-icon{font-size:2rem}.x-drag-overlay-title{font-size:1rem}.x-drag-overlay-description{color:var(--x-text-400)}\n"], dependencies: [{ kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }, { kind: "component", type: XIconComponent, selector: "x-icon" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
354
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XDragOverlayComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
355
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.0", type: XDragOverlayComponent, isStandalone: true, selector: "x-drag-overlay", inputs: { icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, description: { classPropertyName: "description", publicName: "description", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div class=\"x-drag-overlay\">\r\n @if (icon()) {\r\n <div class=\"x-drag-overlay-icon\">\r\n <ng-container *xOutlet=\"icon()\">\r\n <x-icon [type]=\"iconString()\"></x-icon>\r\n </ng-container>\r\n </div>\r\n }\r\n @if (title()) {\r\n <div class=\"x-drag-overlay-title\">\r\n <ng-container *xOutlet=\"title()\">\r\n {{ title() }}\r\n </ng-container>\r\n </div>\r\n }\r\n @if (description()) {\r\n <div class=\"x-drag-overlay-description\">\r\n <ng-container *xOutlet=\"description()\">\r\n {{ description() }}\r\n </ng-container>\r\n </div>\r\n }\r\n</div>\r\n", styles: ["x-drag-overlay{width:100%;height:100%}.x-drag-overlay{margin:0;padding:0}.x-drag-overlay{position:absolute;inset:0;-webkit-backdrop-filter:blur(.25rem);backdrop-filter:blur(.25rem);border:var(--x-border-width) dashed var(--x-primary);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1000}.x-drag-overlay-icon{font-size:2rem}.x-drag-overlay-title{font-size:1rem}.x-drag-overlay-description{color:var(--x-text-400)}\n"], dependencies: [{ kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }, { kind: "component", type: XIconComponent, selector: "x-icon" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
356
356
  }
357
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XDragOverlayComponent, decorators: [{
357
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XDragOverlayComponent, decorators: [{
358
358
  type: Component,
359
359
  args: [{ selector: 'x-drag-overlay', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, imports: [XOutletDirective, XIconComponent], template: "<div class=\"x-drag-overlay\">\r\n @if (icon()) {\r\n <div class=\"x-drag-overlay-icon\">\r\n <ng-container *xOutlet=\"icon()\">\r\n <x-icon [type]=\"iconString()\"></x-icon>\r\n </ng-container>\r\n </div>\r\n }\r\n @if (title()) {\r\n <div class=\"x-drag-overlay-title\">\r\n <ng-container *xOutlet=\"title()\">\r\n {{ title() }}\r\n </ng-container>\r\n </div>\r\n }\r\n @if (description()) {\r\n <div class=\"x-drag-overlay-description\">\r\n <ng-container *xOutlet=\"description()\">\r\n {{ description() }}\r\n </ng-container>\r\n </div>\r\n }\r\n</div>\r\n", styles: ["x-drag-overlay{width:100%;height:100%}.x-drag-overlay{margin:0;padding:0}.x-drag-overlay{position:absolute;inset:0;-webkit-backdrop-filter:blur(.25rem);backdrop-filter:blur(.25rem);border:var(--x-border-width) dashed var(--x-primary);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1000}.x-drag-overlay-icon{font-size:2rem}.x-drag-overlay-title{font-size:1rem}.x-drag-overlay-description{color:var(--x-text-400)}\n"] }]
360
360
  }], propDecorators: { icon: [{ type: i0.Input, args: [{ isSignal: true, alias: "icon", required: false }] }], title: [{ type: i0.Input, args: [{ isSignal: true, alias: "title", required: false }] }], description: [{ type: i0.Input, args: [{ isSignal: true, alias: "description", required: false }] }] } });
@@ -414,10 +414,10 @@ class XDragOverlayService {
414
414
  this.componentRef = null;
415
415
  }
416
416
  }
417
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XDragOverlayService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
418
- /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XDragOverlayService, providedIn: 'root' }); }
417
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XDragOverlayService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
418
+ /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XDragOverlayService, providedIn: 'root' }); }
419
419
  }
420
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XDragOverlayService, decorators: [{
420
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XDragOverlayService, decorators: [{
421
421
  type: Injectable,
422
422
  args: [{
423
423
  providedIn: 'root'
@@ -707,10 +707,10 @@ class XUploadComponent extends XUploadProperty {
707
707
  imgLoad(file) {
708
708
  file.state = 'success';
709
709
  }
710
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XUploadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
711
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.5", type: XUploadComponent, isStandalone: true, selector: "x-upload", host: { properties: { "class.x-upload-show-drop": "this.getShowDrop" } }, providers: [XValueAccessor(XUploadComponent), XDragOverlayService], viewQueries: [{ propertyName: "file", first: true, predicate: ["file"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div #upload class=\"x-upload x-upload-{{ type() }}\" [class.x-disabled]=\"disabledComputed()\">\r\n <input\r\n class=\"x-upload-input\"\r\n type=\"file\"\r\n #file\r\n (change)=\"change($event)\"\r\n [attr.accept]=\"acceptSignal()\"\r\n [multiple]=\"multiple()\"\r\n style=\"display: none\"\r\n />\r\n\r\n @switch (type()) {\r\n @case ('list') {\r\n <ng-container *ngTemplateOutlet=\"uploadBtnTpl\"></ng-container>\r\n <ng-container *xOutlet=\"filesTpl(); context: { $files: files() }\">\r\n @if (files() && files().length > 0) {\r\n <ul class=\"x-upload-files\">\r\n @for (file of files(); track file; let i = $index) {\r\n <li [class.x-upload-disabled]=\"!download()\">\r\n @if (download()) {\r\n <a [href]=\"file.url\" target=\"_blank\" [title]=\"file.name\">\r\n <x-icon type=\"fto-file-text\"></x-icon>\r\n <span class=\"x-upload-filename\">{{ file.name }}</span>\r\n </a>\r\n } @else {\r\n <a>\r\n <x-icon type=\"fto-file-text\"></x-icon>\r\n <span class=\"x-upload-filename\">{{ file.name }}</span>\r\n </a>\r\n }\r\n\r\n @switch (file.state) {\r\n @case ('ready') {\r\n <x-icon class=\"x-upload-state\" type=\"fto-clock\"></x-icon>\r\n }\r\n @case ('uploading') {\r\n <span class=\"x-upload-percent\">{{ file.percent }}%</span>\r\n }\r\n @case ('success') {\r\n <x-icon class=\"x-upload-state success\" type=\"fto-check\"></x-icon>\r\n }\r\n @case ('error') {\r\n <x-icon class=\"x-upload-state error\" type=\"fto-info\"></x-icon>\r\n }\r\n }\r\n @if (file.state !== 'uploading') {\r\n <x-button icon=\"fto-x\" (click)=\"remove(file, i)\" closable onlyIcon flat size=\"mini\"></x-button>\r\n }\r\n </li>\r\n }\r\n </ul>\r\n }\r\n </ng-container>\r\n }\r\n @case ('img') {\r\n <x-image-group>\r\n @for (file of files(); track file; let i = $index) {\r\n <x-image\r\n [src]=\"file.url\"\r\n (load)=\"imgLoad(file)\"\r\n (error)=\"imgError($event, file)\"\r\n class=\"{{ file.state }}\"\r\n [previewTpl]=\"previewTpl\"\r\n [fallback]=\"imgFallback()\"\r\n >\r\n </x-image>\r\n <ng-template #previewTpl let-image=\"$image\">\r\n @if (file.state == 'uploading') {\r\n <div class=\"x-upload-uploading\">\r\n <x-progress [percent]=\"file.percent!\" info=\"false\"></x-progress>\r\n </div>\r\n }\r\n <div class=\"x-image-overlay\">\r\n @switch (file.state) {\r\n @case ('ready') {\r\n <x-icon class=\"x-upload-state\" type=\"fto-clock\"></x-icon>\r\n }\r\n @case ('success') {\r\n <x-icon type=\"fto-eye\" (click)=\"image.onPreview()\"></x-icon>\r\n }\r\n }\r\n @if (imgCut() && file.state === 'success') {\r\n <x-icon type=\"fto-crop\" (click)=\"onImgCut(file, i)\"></x-icon>\r\n }\r\n @if (file.state !== 'uploading') {\r\n <x-icon type=\"fto-trash-2\" (click)=\"remove(file, i)\"></x-icon>\r\n }\r\n </div>\r\n </ng-template>\r\n }\r\n <ng-container *ngTemplateOutlet=\"uploadBtnTpl\"></ng-container>\r\n </x-image-group>\r\n }\r\n }\r\n</div>\r\n\r\n<ng-template #uploadBtnTpl>\r\n @if (showDrop()) {\r\n <x-drag-overlay\r\n class=\"x-upload-drag-overlay\"\r\n (click)=\"uploadClick()\"\r\n [icon]=\"dropIcon()\"\r\n [title]=\"dropTitle()\"\r\n [description]=\"dropDescription()\"\r\n ></x-drag-overlay>\r\n } @else {\r\n <div class=\"x-upload-buttons\" [class.x-upload-buttons-template]=\"isTemplateText()\" (click)=\"uploadClick()\">\r\n <ng-container *xOutlet=\"getText()\">\r\n <x-button icon=\"fto-upload\" class=\"x-upload-text\" [disabled]=\"disabledComputed()\" type=\"primary\">{{\r\n getText()\r\n }}</x-button>\r\n </ng-container>\r\n </div>\r\n }\r\n</ng-template>\r\n", styles: [".x-upload{margin:0;padding:0}.x-upload{color:var(--x-text);font-size:var(--x-font-size)}.x-upload-buttons{display:inline-flex}.x-upload-buttons>.x-button:not(:first-child){margin-left:.4rem}.x-upload-buttons-template{cursor:pointer}.x-upload-files{padding:0;margin:.4rem 0 0;list-style:none}.x-upload-files>li{margin:0;padding:0 .2rem;height:calc(var(--x-font-size) + .6rem);line-height:calc(var(--x-font-size) + .6rem);display:flex;align-items:center;overflow:hidden;cursor:pointer;border-radius:var(--x-border-radius)}.x-upload-files>li .x-icon{color:var(--x-text-400);font-size:1rem}.x-upload-files>li .x-icon.x-upload-state.success{color:var(--x-success)}.x-upload-files>li .x-icon.x-upload-state.error{color:var(--x-danger)}.x-upload-files>li a{flex:1;display:flex;align-items:center;height:calc(var(--x-font-size) + .6rem);line-height:calc(var(--x-font-size) + .6rem);color:inherit;text-decoration:none;overflow:hidden}.x-upload-files>li span.x-upload-filename{margin-left:.2rem;flex:1;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.x-upload-files>li span.x-upload-percent{color:var(--x-text-400)}.x-upload-files>li>.x-button{display:none;padding:0}.x-upload-files>li:not(:first-child){margin-top:.2rem}.x-upload-files>li.x-upload-disabled{cursor:default}.x-upload-files>li.x-upload-disabled>a{cursor:default}.x-upload-files>li:hover:not(.x-upload-disabled){color:var(--x-primary);background-color:var(--x-background)}.x-upload-files>li:hover>.x-button{display:inline-block}.x-upload-files>li:hover>.x-upload-state{display:none}.x-upload-img{display:flex;flex-wrap:wrap}.x-upload-img .x-upload-buttons-template{display:inline-flex;align-items:center;justify-content:center;flex-direction:column;width:6.25rem;height:6.25rem;margin-right:.5rem;margin-bottom:.5rem;border:var(--x-border-width) dashed var(--x-border);background:var(--x-background);border-radius:var(--x-border-radius);transition:border-color var(--x-animation-duration-base)}.x-upload-img .x-upload-buttons-template:hover{border-color:var(--x-primary)}.x-upload-img .x-image{height:6.25rem;width:6.25rem;padding:.325rem;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);transition:border-color var(--x-animation-duration-base);margin-right:.5rem;margin-bottom:.5rem;position:relative;display:flex;align-items:center;justify-content:center}.x-upload-img .x-image-overlay{border-radius:var(--x-border-radius)}.x-upload-img .x-image-overlay x-icon{font-size:1rem;color:#fffc;padding:.25rem;transition:color var(--x-animation-duration-base)}.x-upload-img .x-image-overlay x-icon:hover{color:#fff}.x-upload-img x-image.error .x-image{border-color:var(--x-danger)}.x-upload-img x-image.error .x-image-error-icon{color:var(--x-danger)}.x-upload-uploading{position:absolute;margin-top:3rem;width:calc(100% - 1rem)}.x-upload-show-drop{position:relative;display:block;width:100%;height:100%}.x-upload-drag-overlay .x-drag-overlay{border:var(--x-border-width) dashed var(--x-border);cursor:pointer;transition:all var(--x-animation-duration-base)}.x-upload-drag-overlay .x-drag-overlay:hover,.x-upload-drag-over .x-drag-overlay{border-color:var(--x-primary)}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: XIconComponent, selector: "x-icon" }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }, { kind: "component", type: XButtonComponent, selector: "x-button" }, { kind: "component", type: XImageGroupComponent, selector: "x-image-group" }, { kind: "component", type: XImageComponent, selector: "x-image" }, { kind: "component", type: XProgressComponent, selector: "x-progress" }, { kind: "component", type: XDragOverlayComponent, selector: "x-drag-overlay", inputs: ["icon", "title", "description"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
710
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XUploadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
711
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.0", type: XUploadComponent, isStandalone: true, selector: "x-upload", host: { properties: { "class.x-upload-show-drop": "this.getShowDrop" } }, providers: [XValueAccessor(XUploadComponent), XDragOverlayService], viewQueries: [{ propertyName: "file", first: true, predicate: ["file"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div #upload class=\"x-upload x-upload-{{ type() }}\" [class.x-disabled]=\"disabledComputed()\">\r\n <input\r\n class=\"x-upload-input\"\r\n type=\"file\"\r\n #file\r\n (change)=\"change($event)\"\r\n [attr.accept]=\"acceptSignal()\"\r\n [multiple]=\"multiple()\"\r\n style=\"display: none\"\r\n />\r\n\r\n @switch (type()) {\r\n @case ('list') {\r\n <ng-container *ngTemplateOutlet=\"uploadBtnTpl\"></ng-container>\r\n <ng-container *xOutlet=\"filesTpl(); context: { $files: files() }\">\r\n @if (files() && files().length > 0) {\r\n <ul class=\"x-upload-files\">\r\n @for (file of files(); track file; let i = $index) {\r\n <li [class.x-upload-disabled]=\"!download()\">\r\n @if (download()) {\r\n <a [href]=\"file.url\" target=\"_blank\" [title]=\"file.name\">\r\n <x-icon type=\"fto-file-text\"></x-icon>\r\n <span class=\"x-upload-filename\">{{ file.name }}</span>\r\n </a>\r\n } @else {\r\n <a>\r\n <x-icon type=\"fto-file-text\"></x-icon>\r\n <span class=\"x-upload-filename\">{{ file.name }}</span>\r\n </a>\r\n }\r\n\r\n @switch (file.state) {\r\n @case ('ready') {\r\n <x-icon class=\"x-upload-state\" type=\"fto-clock\"></x-icon>\r\n }\r\n @case ('uploading') {\r\n <span class=\"x-upload-percent\">{{ file.percent }}%</span>\r\n }\r\n @case ('success') {\r\n <x-icon class=\"x-upload-state success\" type=\"fto-check\"></x-icon>\r\n }\r\n @case ('error') {\r\n <x-icon class=\"x-upload-state error\" type=\"fto-info\"></x-icon>\r\n }\r\n }\r\n @if (file.state !== 'uploading') {\r\n <x-button icon=\"fto-x\" (click)=\"remove(file, i)\" closable onlyIcon flat size=\"mini\"></x-button>\r\n }\r\n </li>\r\n }\r\n </ul>\r\n }\r\n </ng-container>\r\n }\r\n @case ('img') {\r\n <x-image-group>\r\n @for (file of files(); track file; let i = $index) {\r\n <x-image\r\n [src]=\"file.url\"\r\n (load)=\"imgLoad(file)\"\r\n (error)=\"imgError($event, file)\"\r\n class=\"{{ file.state }}\"\r\n [previewTpl]=\"previewTpl\"\r\n [fallback]=\"imgFallback()\"\r\n >\r\n </x-image>\r\n <ng-template #previewTpl let-image=\"$image\">\r\n @if (file.state == 'uploading') {\r\n <div class=\"x-upload-uploading\">\r\n <x-progress [percent]=\"file.percent!\" info=\"false\"></x-progress>\r\n </div>\r\n }\r\n <div class=\"x-image-overlay\">\r\n @switch (file.state) {\r\n @case ('ready') {\r\n <x-icon class=\"x-upload-state\" type=\"fto-clock\"></x-icon>\r\n }\r\n @case ('success') {\r\n <x-icon type=\"fto-eye\" (click)=\"image.onPreview()\"></x-icon>\r\n }\r\n }\r\n @if (imgCut() && file.state === 'success') {\r\n <x-icon type=\"fto-crop\" (click)=\"onImgCut(file, i)\"></x-icon>\r\n }\r\n @if (file.state !== 'uploading') {\r\n <x-icon type=\"fto-trash-2\" (click)=\"remove(file, i)\"></x-icon>\r\n }\r\n </div>\r\n </ng-template>\r\n }\r\n <ng-container *ngTemplateOutlet=\"uploadBtnTpl\"></ng-container>\r\n </x-image-group>\r\n }\r\n }\r\n</div>\r\n\r\n<ng-template #uploadBtnTpl>\r\n @if (showDrop()) {\r\n <x-drag-overlay\r\n class=\"x-upload-drag-overlay\"\r\n (click)=\"uploadClick()\"\r\n [icon]=\"dropIcon()\"\r\n [title]=\"dropTitle()\"\r\n [description]=\"dropDescription()\"\r\n ></x-drag-overlay>\r\n } @else {\r\n <div class=\"x-upload-buttons\" [class.x-upload-buttons-template]=\"isTemplateText()\" (click)=\"uploadClick()\">\r\n <ng-container *xOutlet=\"getText()\">\r\n <x-button icon=\"fto-upload\" class=\"x-upload-text\" [disabled]=\"disabledComputed()\" type=\"primary\">{{\r\n getText()\r\n }}</x-button>\r\n </ng-container>\r\n </div>\r\n }\r\n</ng-template>\r\n", styles: [".x-upload{margin:0;padding:0}.x-upload{color:var(--x-text);font-size:var(--x-font-size)}.x-upload-buttons{display:inline-flex}.x-upload-buttons>.x-button:not(:first-child){margin-left:.4rem}.x-upload-buttons-template{cursor:pointer}.x-upload-files{padding:0;margin:.4rem 0 0;list-style:none}.x-upload-files>li{margin:0;padding:0 .2rem;height:calc(var(--x-font-size) + .6rem);line-height:calc(var(--x-font-size) + .6rem);display:flex;align-items:center;overflow:hidden;cursor:pointer;border-radius:var(--x-border-radius)}.x-upload-files>li .x-icon{color:var(--x-text-400);font-size:1rem}.x-upload-files>li .x-icon.x-upload-state.success{color:var(--x-success)}.x-upload-files>li .x-icon.x-upload-state.error{color:var(--x-danger)}.x-upload-files>li a{flex:1;display:flex;align-items:center;height:calc(var(--x-font-size) + .6rem);line-height:calc(var(--x-font-size) + .6rem);color:inherit;text-decoration:none;overflow:hidden}.x-upload-files>li span.x-upload-filename{margin-left:.2rem;flex:1;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.x-upload-files>li span.x-upload-percent{color:var(--x-text-400)}.x-upload-files>li>.x-button{display:none;padding:0}.x-upload-files>li:not(:first-child){margin-top:.2rem}.x-upload-files>li.x-upload-disabled{cursor:default}.x-upload-files>li.x-upload-disabled>a{cursor:default}.x-upload-files>li:hover:not(.x-upload-disabled){color:var(--x-primary);background-color:var(--x-background)}.x-upload-files>li:hover>.x-button{display:inline-block}.x-upload-files>li:hover>.x-upload-state{display:none}.x-upload-img{display:flex;flex-wrap:wrap}.x-upload-img .x-upload-buttons-template{display:inline-flex;align-items:center;justify-content:center;flex-direction:column;width:6.25rem;height:6.25rem;margin-right:.5rem;margin-bottom:.5rem;border:var(--x-border-width) dashed var(--x-border);background:var(--x-background);border-radius:var(--x-border-radius);transition:border-color var(--x-animation-duration-base)}.x-upload-img .x-upload-buttons-template:hover{border-color:var(--x-primary)}.x-upload-img .x-image{height:6.25rem;width:6.25rem;padding:.325rem;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);transition:border-color var(--x-animation-duration-base);margin-right:.5rem;margin-bottom:.5rem;position:relative;display:flex;align-items:center;justify-content:center}.x-upload-img .x-image-overlay{border-radius:var(--x-border-radius)}.x-upload-img .x-image-overlay x-icon{font-size:1rem;color:#fffc;padding:.25rem;transition:color var(--x-animation-duration-base)}.x-upload-img .x-image-overlay x-icon:hover{color:#fff}.x-upload-img x-image.error .x-image{border-color:var(--x-danger)}.x-upload-img x-image.error .x-image-error-icon{color:var(--x-danger)}.x-upload-uploading{position:absolute;margin-top:3rem;width:calc(100% - 1rem)}.x-upload-show-drop{position:relative;display:block;width:100%;height:100%}.x-upload-drag-overlay .x-drag-overlay{border:var(--x-border-width) dashed var(--x-border);cursor:pointer;transition:all var(--x-animation-duration-base)}.x-upload-drag-overlay .x-drag-overlay:hover,.x-upload-drag-over .x-drag-overlay{border-color:var(--x-primary)}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: XIconComponent, selector: "x-icon" }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }, { kind: "component", type: XButtonComponent, selector: "x-button" }, { kind: "component", type: XImageGroupComponent, selector: "x-image-group" }, { kind: "component", type: XImageComponent, selector: "x-image" }, { kind: "component", type: XProgressComponent, selector: "x-progress" }, { kind: "component", type: XDragOverlayComponent, selector: "x-drag-overlay", inputs: ["icon", "title", "description"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
712
712
  }
713
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XUploadComponent, decorators: [{
713
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XUploadComponent, decorators: [{
714
714
  type: Component,
715
715
  args: [{ selector: `${XUploadPrefix}`, imports: [
716
716
  NgTemplateOutlet,
@@ -728,11 +728,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.5", ngImpor
728
728
  }], file: [{ type: i0.ViewChild, args: ['file', { isSignal: true }] }] } });
729
729
 
730
730
  class XUploadModule {
731
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XUploadModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
732
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.5", ngImport: i0, type: XUploadModule, imports: [XUploadComponent], exports: [XUploadComponent] }); }
733
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XUploadModule, imports: [XUploadComponent] }); }
731
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XUploadModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
732
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.0", ngImport: i0, type: XUploadModule, imports: [XUploadComponent], exports: [XUploadComponent] }); }
733
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XUploadModule, imports: [XUploadComponent] }); }
734
734
  }
735
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XUploadModule, decorators: [{
735
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XUploadModule, decorators: [{
736
736
  type: NgModule,
737
737
  args: [{
738
738
  exports: [XUploadComponent],
@@ -42,10 +42,10 @@ class XWelcomeProperty extends XPropertyFunction(X_WELCOME_CONFIG_NAME) {
42
42
  */
43
43
  this.style = input(...(ngDevMode ? [undefined, { debugName: "style" }] : []));
44
44
  }
45
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XWelcomeProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
46
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.5", type: XWelcomeProperty, isStandalone: true, selector: "x-welcome-property", inputs: { icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, description: { classPropertyName: "description", publicName: "description", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, style: { classPropertyName: "style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
45
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XWelcomeProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
46
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.0.0", type: XWelcomeProperty, isStandalone: true, selector: "x-welcome-property", inputs: { icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, description: { classPropertyName: "description", publicName: "description", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, style: { classPropertyName: "style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
47
47
  }
48
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XWelcomeProperty, decorators: [{
48
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XWelcomeProperty, decorators: [{
49
49
  type: Component,
50
50
  args: [{ selector: `${XWelcomePrefix}-property`, template: '' }]
51
51
  }], propDecorators: { icon: [{ type: i0.Input, args: [{ isSignal: true, alias: "icon", required: false }] }], title: [{ type: i0.Input, args: [{ isSignal: true, alias: "title", required: false }] }], description: [{ type: i0.Input, args: [{ isSignal: true, alias: "description", required: false }] }], variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }], style: [{ type: i0.Input, args: [{ isSignal: true, alias: "style", required: false }] }] } });
@@ -55,20 +55,20 @@ class XWelcomeComponent extends XWelcomeProperty {
55
55
  super(...arguments);
56
56
  this.isStringIcon = computed(() => XIsString(this.icon()), ...(ngDevMode ? [{ debugName: "isStringIcon" }] : []));
57
57
  }
58
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XWelcomeComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
59
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.5", type: XWelcomeComponent, isStandalone: true, selector: "x-welcome", usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"x-welcome\"\r\n [class.x-welcome-outlined]=\"variant() === 'outlined'\"\r\n [class.x-welcome-filled]=\"variant() === 'filled'\"\r\n [class.x-welcome-borderless]=\"variant() === 'borderless'\"\r\n [style]=\"style()\"\r\n>\r\n <div class=\"x-welcome-icon\">\r\n @if (isStringIcon()) {\r\n <img alt=\"icon\" [src]=\"icon()\" />\r\n } @else {\r\n <ng-container *xOutlet=\"icon()!\"></ng-container>\r\n }\r\n </div>\r\n <div class=\"x-welcome-wrapper\">\r\n <span class=\"x-welcome-title\">\r\n <ng-container *xOutlet=\"title()\">{{ title() }}</ng-container>\r\n </span>\r\n <p class=\"x-welcome-description\">\r\n <ng-container *xOutlet=\"description()\">{{ description() }}</ng-container>\r\n </p>\r\n </div>\r\n</div>\r\n", styles: [".x-welcome{margin:0;padding:0}.x-welcome{width:100%;display:flex;gap:1rem;padding:1rem;border:var(--x-border-width) solid transparent;border-radius:var(--x-border-radius)}.x-welcome-icon img{max-width:6rem}.x-welcome-wrapper{flex:1;display:flex;flex-direction:column;gap:.5rem}.x-welcome-title{margin:0;font-size:var(--x-font-size-large)}.x-welcome-outlined{border-color:var(--x-border)}.x-welcome-filled{background-color:var(--x-background-a200);border-color:var(--x-background-a200)}.x-welcome-borderless{border-color:transparent}\n"], dependencies: [{ kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
58
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XWelcomeComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
59
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.0", type: XWelcomeComponent, isStandalone: true, selector: "x-welcome", usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"x-welcome\"\r\n [class.x-welcome-outlined]=\"variant() === 'outlined'\"\r\n [class.x-welcome-filled]=\"variant() === 'filled'\"\r\n [class.x-welcome-borderless]=\"variant() === 'borderless'\"\r\n [style]=\"style()\"\r\n>\r\n <div class=\"x-welcome-icon\">\r\n @if (isStringIcon()) {\r\n <img alt=\"icon\" [src]=\"icon()\" />\r\n } @else {\r\n <ng-container *xOutlet=\"icon()!\"></ng-container>\r\n }\r\n </div>\r\n <div class=\"x-welcome-wrapper\">\r\n <span class=\"x-welcome-title\">\r\n <ng-container *xOutlet=\"title()\">{{ title() }}</ng-container>\r\n </span>\r\n <p class=\"x-welcome-description\">\r\n <ng-container *xOutlet=\"description()\">{{ description() }}</ng-container>\r\n </p>\r\n </div>\r\n</div>\r\n", styles: [".x-welcome{margin:0;padding:0}.x-welcome{width:100%;display:flex;gap:1rem;padding:1rem;border:var(--x-border-width) solid transparent;border-radius:var(--x-border-radius)}.x-welcome-icon img{max-width:6rem}.x-welcome-wrapper{flex:1;display:flex;flex-direction:column;gap:.5rem}.x-welcome-title{margin:0;font-size:var(--x-font-size-large)}.x-welcome-outlined{border-color:var(--x-border)}.x-welcome-filled{background-color:var(--x-background-a200);border-color:var(--x-background-a200)}.x-welcome-borderless{border-color:transparent}\n"], dependencies: [{ kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
60
60
  }
61
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XWelcomeComponent, decorators: [{
61
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XWelcomeComponent, decorators: [{
62
62
  type: Component,
63
63
  args: [{ selector: 'x-welcome', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, imports: [XOutletDirective], template: "<div\r\n class=\"x-welcome\"\r\n [class.x-welcome-outlined]=\"variant() === 'outlined'\"\r\n [class.x-welcome-filled]=\"variant() === 'filled'\"\r\n [class.x-welcome-borderless]=\"variant() === 'borderless'\"\r\n [style]=\"style()\"\r\n>\r\n <div class=\"x-welcome-icon\">\r\n @if (isStringIcon()) {\r\n <img alt=\"icon\" [src]=\"icon()\" />\r\n } @else {\r\n <ng-container *xOutlet=\"icon()!\"></ng-container>\r\n }\r\n </div>\r\n <div class=\"x-welcome-wrapper\">\r\n <span class=\"x-welcome-title\">\r\n <ng-container *xOutlet=\"title()\">{{ title() }}</ng-container>\r\n </span>\r\n <p class=\"x-welcome-description\">\r\n <ng-container *xOutlet=\"description()\">{{ description() }}</ng-container>\r\n </p>\r\n </div>\r\n</div>\r\n", styles: [".x-welcome{margin:0;padding:0}.x-welcome{width:100%;display:flex;gap:1rem;padding:1rem;border:var(--x-border-width) solid transparent;border-radius:var(--x-border-radius)}.x-welcome-icon img{max-width:6rem}.x-welcome-wrapper{flex:1;display:flex;flex-direction:column;gap:.5rem}.x-welcome-title{margin:0;font-size:var(--x-font-size-large)}.x-welcome-outlined{border-color:var(--x-border)}.x-welcome-filled{background-color:var(--x-background-a200);border-color:var(--x-background-a200)}.x-welcome-borderless{border-color:transparent}\n"] }]
64
64
  }] });
65
65
 
66
66
  class XWelcomeModule {
67
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XWelcomeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
68
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.5", ngImport: i0, type: XWelcomeModule, imports: [XWelcomeComponent], exports: [XWelcomeComponent] }); }
69
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XWelcomeModule }); }
67
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XWelcomeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
68
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.0", ngImport: i0, type: XWelcomeModule, imports: [XWelcomeComponent], exports: [XWelcomeComponent] }); }
69
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XWelcomeModule }); }
70
70
  }
71
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XWelcomeModule, decorators: [{
71
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XWelcomeModule, decorators: [{
72
72
  type: NgModule,
73
73
  args: [{
74
74
  exports: [XWelcomeComponent],