@ng-nest/ui 20.2.6 → 21.0.1

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-table.mjs.map +1 -1
  83. package/fesm2022/ng-nest-ui-tabs.mjs +25 -25
  84. package/fesm2022/ng-nest-ui-tag.mjs +10 -10
  85. package/fesm2022/ng-nest-ui-text-retract.mjs +10 -10
  86. package/fesm2022/ng-nest-ui-textarea.mjs +10 -10
  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 +102 -102
  103. /package/{affix/index.d.ts → types/ng-nest-ui-affix.d.ts} +0 -0
  104. /package/{alert/index.d.ts → types/ng-nest-ui-alert.d.ts} +0 -0
  105. /package/{anchor/index.d.ts → types/ng-nest-ui-anchor.d.ts} +0 -0
  106. /package/{api/index.d.ts → types/ng-nest-ui-api.d.ts} +0 -0
  107. /package/{attachments/index.d.ts → types/ng-nest-ui-attachments.d.ts} +0 -0
  108. /package/{auto-complete/index.d.ts → types/ng-nest-ui-auto-complete.d.ts} +0 -0
  109. /package/{avatar/index.d.ts → types/ng-nest-ui-avatar.d.ts} +0 -0
  110. /package/{back-top/index.d.ts → types/ng-nest-ui-back-top.d.ts} +0 -0
  111. /package/{badge/index.d.ts → types/ng-nest-ui-badge.d.ts} +0 -0
  112. /package/{base-form/index.d.ts → types/ng-nest-ui-base-form.d.ts} +0 -0
  113. /package/{bubble/index.d.ts → types/ng-nest-ui-bubble.d.ts} +0 -0
  114. /package/{button/index.d.ts → types/ng-nest-ui-button.d.ts} +0 -0
  115. /package/{calendar/index.d.ts → types/ng-nest-ui-calendar.d.ts} +0 -0
  116. /package/{card/index.d.ts → types/ng-nest-ui-card.d.ts} +0 -0
  117. /package/{carousel/index.d.ts → types/ng-nest-ui-carousel.d.ts} +0 -0
  118. /package/{cascade/index.d.ts → types/ng-nest-ui-cascade.d.ts} +0 -0
  119. /package/{checkbox/index.d.ts → types/ng-nest-ui-checkbox.d.ts} +0 -0
  120. /package/{collapse/index.d.ts → types/ng-nest-ui-collapse.d.ts} +0 -0
  121. /package/{color-picker/index.d.ts → types/ng-nest-ui-color-picker.d.ts} +0 -0
  122. /package/{color/index.d.ts → types/ng-nest-ui-color.d.ts} +0 -0
  123. /package/{comment/index.d.ts → types/ng-nest-ui-comment.d.ts} +0 -0
  124. /package/{container/index.d.ts → types/ng-nest-ui-container.d.ts} +0 -0
  125. /package/{core/index.d.ts → types/ng-nest-ui-core.d.ts} +0 -0
  126. /package/{coversations/index.d.ts → types/ng-nest-ui-coversations.d.ts} +0 -0
  127. /package/{crumb/index.d.ts → types/ng-nest-ui-crumb.d.ts} +0 -0
  128. /package/{date-picker/index.d.ts → types/ng-nest-ui-date-picker.d.ts} +0 -0
  129. /package/{description/index.d.ts → types/ng-nest-ui-description.d.ts} +0 -0
  130. /package/{dialog/index.d.ts → types/ng-nest-ui-dialog.d.ts} +0 -0
  131. /package/{doc/index.d.ts → types/ng-nest-ui-doc.d.ts} +0 -0
  132. /package/{drag/index.d.ts → types/ng-nest-ui-drag.d.ts} +0 -0
  133. /package/{drawer/index.d.ts → types/ng-nest-ui-drawer.d.ts} +0 -0
  134. /package/{dropdown/index.d.ts → types/ng-nest-ui-dropdown.d.ts} +0 -0
  135. /package/{empty/index.d.ts → types/ng-nest-ui-empty.d.ts} +0 -0
  136. /package/{examples/index.d.ts → types/ng-nest-ui-examples.d.ts} +0 -0
  137. /package/{find/index.d.ts → types/ng-nest-ui-find.d.ts} +0 -0
  138. /package/{form/index.d.ts → types/ng-nest-ui-form.d.ts} +0 -0
  139. /package/{highlight/index.d.ts → types/ng-nest-ui-highlight.d.ts} +0 -0
  140. /package/{i18n/index.d.ts → types/ng-nest-ui-i18n.d.ts} +0 -0
  141. /package/{icon/index.d.ts → types/ng-nest-ui-icon.d.ts} +0 -0
  142. /package/{image/index.d.ts → types/ng-nest-ui-image.d.ts} +0 -0
  143. /package/{inner/index.d.ts → types/ng-nest-ui-inner.d.ts} +0 -0
  144. /package/{input-number/index.d.ts → types/ng-nest-ui-input-number.d.ts} +0 -0
  145. /package/{input/index.d.ts → types/ng-nest-ui-input.d.ts} +0 -0
  146. /package/{keyword/index.d.ts → types/ng-nest-ui-keyword.d.ts} +0 -0
  147. /package/{layout/index.d.ts → types/ng-nest-ui-layout.d.ts} +0 -0
  148. /package/{link/index.d.ts → types/ng-nest-ui-link.d.ts} +0 -0
  149. /package/{list/index.d.ts → types/ng-nest-ui-list.d.ts} +0 -0
  150. /package/{loading/index.d.ts → types/ng-nest-ui-loading.d.ts} +0 -0
  151. /package/{menu/index.d.ts → types/ng-nest-ui-menu.d.ts} +0 -0
  152. /package/{message-box/index.d.ts → types/ng-nest-ui-message-box.d.ts} +0 -0
  153. /package/{message/index.d.ts → types/ng-nest-ui-message.d.ts} +0 -0
  154. /package/{notification/index.d.ts → types/ng-nest-ui-notification.d.ts} +0 -0
  155. /package/{outlet/index.d.ts → types/ng-nest-ui-outlet.d.ts} +0 -0
  156. /package/{page-header/index.d.ts → types/ng-nest-ui-page-header.d.ts} +0 -0
  157. /package/{pagination/index.d.ts → types/ng-nest-ui-pagination.d.ts} +0 -0
  158. /package/{pattern/index.d.ts → types/ng-nest-ui-pattern.d.ts} +0 -0
  159. /package/{popconfirm/index.d.ts → types/ng-nest-ui-popconfirm.d.ts} +0 -0
  160. /package/{popover/index.d.ts → types/ng-nest-ui-popover.d.ts} +0 -0
  161. /package/{portal/index.d.ts → types/ng-nest-ui-portal.d.ts} +0 -0
  162. /package/{progress/index.d.ts → types/ng-nest-ui-progress.d.ts} +0 -0
  163. /package/{prompts/index.d.ts → types/ng-nest-ui-prompts.d.ts} +0 -0
  164. /package/{radio/index.d.ts → types/ng-nest-ui-radio.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
@@ -29,10 +29,10 @@ class XTextRetractProperty extends XPropertyFunction(X_TEXT_RETRACT_CONFIG_NAME)
29
29
  */
30
30
  this.max = input(this.config?.max ?? 256, ...(ngDevMode ? [{ debugName: "max", transform: XToNumber }] : [{ transform: XToNumber }]));
31
31
  }
32
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XTextRetractProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
33
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.5", type: XTextRetractProperty, isStandalone: true, selector: "x-text-retract-property", inputs: { content: { classPropertyName: "content", publicName: "content", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
32
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XTextRetractProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
33
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.0.0", type: XTextRetractProperty, isStandalone: true, selector: "x-text-retract-property", inputs: { content: { classPropertyName: "content", publicName: "content", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
34
34
  }
35
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XTextRetractProperty, decorators: [{
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XTextRetractProperty, decorators: [{
36
36
  type: Component,
37
37
  args: [{ selector: `${XTextRetractPrefix}-property`, template: '' }]
38
38
  }], propDecorators: { content: [{ type: i0.Input, args: [{ isSignal: true, alias: "content", required: false }] }], max: [{ type: i0.Input, args: [{ isSignal: true, alias: "max", required: false }] }] } });
@@ -65,20 +65,20 @@ class XTextRetractComponent extends XTextRetractProperty {
65
65
  toggle() {
66
66
  this.unfold.update((x) => !x);
67
67
  }
68
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XTextRetractComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
69
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.5", type: XTextRetractComponent, isStandalone: true, selector: "x-text-retract", usesInheritance: true, ngImport: i0, template: "<div class=\"x-text-retract\">\r\n {{ displayValue() }}\r\n @if (retract()) {\r\n @if (unfold()) {\r\n <x-link type=\"primary\" (click)=\"toggle()\">...{{ 'textRetract.unfold' | xI18n }}</x-link>\r\n } @else {\r\n <x-link type=\"primary\" (click)=\"toggle()\">{{ 'textRetract.packUp' | xI18n }}</x-link>\r\n }\r\n }\r\n</div>\r\n", styles: [".x-text-retract{margin:0;padding:0}.x-text-retract{font-size:var(--x-font-size);display:inline}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "component", type: XLinkComponent, selector: "x-link" }, { kind: "pipe", type: XI18nPipe, name: "xI18n" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
68
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XTextRetractComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
69
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.0", type: XTextRetractComponent, isStandalone: true, selector: "x-text-retract", usesInheritance: true, ngImport: i0, template: "<div class=\"x-text-retract\">\r\n {{ displayValue() }}\r\n @if (retract()) {\r\n @if (unfold()) {\r\n <x-link type=\"primary\" (click)=\"toggle()\">...{{ 'textRetract.unfold' | xI18n }}</x-link>\r\n } @else {\r\n <x-link type=\"primary\" (click)=\"toggle()\">{{ 'textRetract.packUp' | xI18n }}</x-link>\r\n }\r\n }\r\n</div>\r\n", styles: [".x-text-retract{margin:0;padding:0}.x-text-retract{font-size:var(--x-font-size);display:inline}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "component", type: XLinkComponent, selector: "x-link" }, { kind: "pipe", type: XI18nPipe, name: "xI18n" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
70
70
  }
71
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XTextRetractComponent, decorators: [{
71
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XTextRetractComponent, decorators: [{
72
72
  type: Component,
73
73
  args: [{ selector: `${XTextRetractPrefix}`, imports: [FormsModule, XLinkComponent, XI18nPipe], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"x-text-retract\">\r\n {{ displayValue() }}\r\n @if (retract()) {\r\n @if (unfold()) {\r\n <x-link type=\"primary\" (click)=\"toggle()\">...{{ 'textRetract.unfold' | xI18n }}</x-link>\r\n } @else {\r\n <x-link type=\"primary\" (click)=\"toggle()\">{{ 'textRetract.packUp' | xI18n }}</x-link>\r\n }\r\n }\r\n</div>\r\n", styles: [".x-text-retract{margin:0;padding:0}.x-text-retract{font-size:var(--x-font-size);display:inline}\n"] }]
74
74
  }] });
75
75
 
76
76
  class XTextRetractModule {
77
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XTextRetractModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
78
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.5", ngImport: i0, type: XTextRetractModule, imports: [XTextRetractComponent], exports: [XTextRetractComponent] }); }
79
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XTextRetractModule, imports: [XTextRetractComponent] }); }
77
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XTextRetractModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
78
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.0", ngImport: i0, type: XTextRetractModule, imports: [XTextRetractComponent], exports: [XTextRetractComponent] }); }
79
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XTextRetractModule, imports: [XTextRetractComponent] }); }
80
80
  }
81
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XTextRetractModule, decorators: [{
81
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XTextRetractModule, decorators: [{
82
82
  type: NgModule,
83
83
  args: [{
84
84
  exports: [XTextRetractComponent],
@@ -137,10 +137,10 @@ class XTextareaProperty extends XFormControlFunction(X_TEXTAREA_CONFIG_NAME) {
137
137
  */
138
138
  this.clearEmit = output();
139
139
  }
140
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XTextareaProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
141
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.5", type: XTextareaProperty, isStandalone: true, selector: "x-textarea-property", inputs: { variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, clearable: { classPropertyName: "clearable", publicName: "clearable", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, iconLayout: { classPropertyName: "iconLayout", publicName: "iconLayout", isSignal: true, isRequired: false, transformFunction: null }, iconSpin: { classPropertyName: "iconSpin", publicName: "iconSpin", isSignal: true, isRequired: false, transformFunction: null }, maxlength: { classPropertyName: "maxlength", publicName: "maxlength", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null }, floatLabel: { classPropertyName: "floatLabel", publicName: "floatLabel", isSignal: true, isRequired: false, transformFunction: null }, floatFixed: { classPropertyName: "floatFixed", publicName: "floatFixed", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, labelWidth: { classPropertyName: "labelWidth", publicName: "labelWidth", isSignal: true, isRequired: false, transformFunction: null }, labelAlign: { classPropertyName: "labelAlign", publicName: "labelAlign", isSignal: true, isRequired: false, transformFunction: null }, justify: { classPropertyName: "justify", publicName: "justify", isSignal: true, isRequired: false, transformFunction: null }, align: { classPropertyName: "align", publicName: "align", isSignal: true, isRequired: false, transformFunction: null }, direction: { classPropertyName: "direction", publicName: "direction", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, pattern: { classPropertyName: "pattern", publicName: "pattern", isSignal: true, isRequired: false, transformFunction: null }, message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: false, transformFunction: null }, inputValidator: { classPropertyName: "inputValidator", publicName: "inputValidator", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { clearEmit: "clearEmit" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
140
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XTextareaProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
141
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.0.0", type: XTextareaProperty, isStandalone: true, selector: "x-textarea-property", inputs: { variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, clearable: { classPropertyName: "clearable", publicName: "clearable", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, iconLayout: { classPropertyName: "iconLayout", publicName: "iconLayout", isSignal: true, isRequired: false, transformFunction: null }, iconSpin: { classPropertyName: "iconSpin", publicName: "iconSpin", isSignal: true, isRequired: false, transformFunction: null }, maxlength: { classPropertyName: "maxlength", publicName: "maxlength", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null }, floatLabel: { classPropertyName: "floatLabel", publicName: "floatLabel", isSignal: true, isRequired: false, transformFunction: null }, floatFixed: { classPropertyName: "floatFixed", publicName: "floatFixed", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, labelWidth: { classPropertyName: "labelWidth", publicName: "labelWidth", isSignal: true, isRequired: false, transformFunction: null }, labelAlign: { classPropertyName: "labelAlign", publicName: "labelAlign", isSignal: true, isRequired: false, transformFunction: null }, justify: { classPropertyName: "justify", publicName: "justify", isSignal: true, isRequired: false, transformFunction: null }, align: { classPropertyName: "align", publicName: "align", isSignal: true, isRequired: false, transformFunction: null }, direction: { classPropertyName: "direction", publicName: "direction", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, pattern: { classPropertyName: "pattern", publicName: "pattern", isSignal: true, isRequired: false, transformFunction: null }, message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: false, transformFunction: null }, inputValidator: { classPropertyName: "inputValidator", publicName: "inputValidator", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { clearEmit: "clearEmit" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
142
142
  }
143
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XTextareaProperty, decorators: [{
143
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XTextareaProperty, decorators: [{
144
144
  type: Component,
145
145
  args: [{ selector: `${XTextareaPrefix}-property`, template: '' }]
146
146
  }], propDecorators: { variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }], clearable: [{ type: i0.Input, args: [{ isSignal: true, alias: "clearable", required: false }] }], icon: [{ type: i0.Input, args: [{ isSignal: true, alias: "icon", required: false }] }], iconLayout: [{ type: i0.Input, args: [{ isSignal: true, alias: "iconLayout", required: false }] }], iconSpin: [{ type: i0.Input, args: [{ isSignal: true, alias: "iconSpin", required: false }] }], maxlength: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxlength", required: false }] }], height: [{ type: i0.Input, args: [{ isSignal: true, alias: "height", required: false }] }], floatLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "floatLabel", required: false }] }], floatFixed: [{ type: i0.Input, args: [{ isSignal: true, alias: "floatFixed", required: false }] }], placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }], labelWidth: [{ type: i0.Input, args: [{ isSignal: true, alias: "labelWidth", required: false }] }], labelAlign: [{ type: i0.Input, args: [{ isSignal: true, alias: "labelAlign", required: false }] }], justify: [{ type: i0.Input, args: [{ isSignal: true, alias: "justify", required: false }] }], align: [{ type: i0.Input, args: [{ isSignal: true, alias: "align", required: false }] }], direction: [{ type: i0.Input, args: [{ isSignal: true, alias: "direction", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], required: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], readonly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readonly", required: false }] }], pattern: [{ type: i0.Input, args: [{ isSignal: true, alias: "pattern", required: false }] }], message: [{ type: i0.Input, args: [{ isSignal: true, alias: "message", required: false }] }], inputValidator: [{ type: i0.Input, args: [{ isSignal: true, alias: "inputValidator", required: false }] }], clearEmit: [{ type: i0.Output, args: ["clearEmit"] }] } });
@@ -207,20 +207,20 @@ class XTextareaComponent extends XTextareaProperty {
207
207
  onBlur(_event) {
208
208
  this.focused.set(false);
209
209
  }
210
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XTextareaComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
211
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.5", type: XTextareaComponent, isStandalone: true, selector: "x-textarea", providers: [XValueAccessor(XTextareaComponent)], viewQueries: [{ propertyName: "textareaRef", first: true, predicate: ["textareaRef"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div\r\n #textarea\r\n class=\"x-textarea\"\r\n [class.x-flex]=\"justify() || align() || direction()\"\r\n [class.x-disabled]=\"disabledComputed()\"\r\n [class.x-required]=\"requiredIsEmpty()\"\r\n [class.x-invalid]=\"invalid()\"\r\n [class.x-clearable]=\"clearable()\"\r\n [class.x-clear-show]=\"clearShow()\"\r\n [class.x-textarea-active]=\"active()\"\r\n [class.x-textarea-focus]=\"focused()\"\r\n [class.x-textarea-icon]=\"getIcon()\"\r\n [class.x-textarea-filled]=\"variant() === 'filled'\"\r\n [class.x-textarea-borderless]=\"variant() === 'borderless'\"\r\n [class.x-textarea-underlined]=\"variant() === 'underlined'\"\r\n [class.x-textarea-icon-left]=\"getIconLayoutLeft()\"\r\n [class.x-textarea-icon-right]=\"getIconLayoutRight()\"\r\n [class.x-textarea-float-fixed]=\"floatFixed()\"\r\n [class.x-textarea-float-label]=\"!!floatLabel()\"\r\n [class.x-textarea-float-label-over]=\"floatLabel() === 'over'\"\r\n [class.x-textarea-float-label-in]=\"floatLabel() === 'in'\"\r\n [class.x-textarea-float-label-on]=\"floatLabel() === 'on'\"\r\n [class.x-textarea-has-value]=\"hasValue()\"\r\n [ngClass]=\"classMap()\"\r\n>\r\n @if (label()) {\r\n <label\r\n [class.x-textarea-label-required]=\"requiredComputed()\"\r\n [style.width]=\"labelWidth()\"\r\n [style.margin-left]=\"!!floatLabel() ? paddingLeft() : null\"\r\n [ngClass]=\"labelMapSignal()\"\r\n *xOutlet=\"label()\"\r\n >{{ label() }}</label\r\n >\r\n }\r\n <div class=\"x-textarea-row\">\r\n <textarea\r\n #textareaRef\r\n [placeholder]=\"!floatLabel() ? placeholder() : ''\"\r\n [required]=\"requiredComputed()\"\r\n [disabled]=\"disabledComputed()\"\r\n [readonly]=\"readonly()\"\r\n [maxlength]=\"maxlength()\"\r\n [(ngModel)]=\"value\"\r\n (ngModelChange)=\"change($event)\"\r\n [style.height]=\"height()\"\r\n [style.padding-left]=\"paddingLeft()\"\r\n [style.padding-right]=\"paddingRight()\"\r\n (keydown)=\"formControlValidator()\"\r\n (focus)=\"onFocus($event)\"\r\n (blur)=\"onBlur($event)\"\r\n ></textarea>\r\n @if (clearShow()) {\r\n <x-icon class=\"x-textarea-clear\" type=\"fto-x\" (click)=\"onClear()\"></x-icon>\r\n }\r\n @if (icon() && ((!clearShow() && getIconLayoutRight()) || getIconLayoutLeft())) {\r\n <x-icon class=\"x-textarea-icon-in\" [type]=\"icon()\" [spin]=\"iconSpin()\"></x-icon>\r\n }\r\n @if (maxlength()) {\r\n <span class=\"x-textarea-max-length\">{{ lengthTotal() }}</span>\r\n }\r\n @if (invalid()) {\r\n <span class=\"x-textarea-error-message\">{{ invalidMessage() }}</span>\r\n }\r\n @if (requiredIsEmpty() || invalid()) {\r\n <div class=\"x-border-error x-top-left\"></div>\r\n <div class=\"x-border-error x-top-right\"></div>\r\n <div class=\"x-border-error x-bottom-left\"></div>\r\n <div class=\"x-border-error x-bottom-right\"></div>\r\n }\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-textarea{display:inline-block;width:16rem}.x-textarea{width:100%}.x-textarea.x-flex{display:flex}.x-textarea.x-justify-start{justify-content:flex-start}.x-textarea.x-justify-center{justify-content:center}.x-textarea.x-justify-end{justify-content:flex-end}.x-textarea.x-justify-space-between{justify-content:space-between}.x-textarea.x-justify-space-around{justify-content:space-around}.x-textarea.x-align-start{align-items:flex-start}.x-textarea.x-align-center{align-items:center}.x-textarea.x-align-end{align-items:flex-end}.x-textarea.x-direction-column{flex-direction:column}.x-textarea.x-direction-column-reverse{flex-direction:column-reverse}.x-textarea.x-direction-row{flex-direction:row}.x-textarea.x-direction-row-reverse{flex-direction:row-reverse}.x-textarea>label{display:inline-block;white-space:nowrap;position:relative;color:var(--x-text-300);font-weight:500;height:calc(var(--x-font-size) + .875rem);line-height:calc(var(--x-font-size) + .875rem)}.x-textarea>label.x-text-align-start{text-align:start}.x-textarea>label.x-text-align-center{text-align:center}.x-textarea>label.x-text-align-end{text-align:end}.x-textarea-row{flex:1;display:flex;align-items:center;position:relative}.x-textarea-row>textarea{flex:1;width:100%;font-size:var(--x-font-size);background-color:var(--x-background);background-image:none;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow) transparent;transition:all var(--x-animation-duration-slow);line-height:calc(var(--x-font-size) + .5rem);padding:.5rem}.x-textarea-row>textarea::-moz-placeholder{color:var(--x-text-700);opacity:1}.x-textarea-row>textarea:-ms-input-placeholder{color:var(--x-text-700)}.x-textarea-row>textarea::-webkit-input-placeholder{color:var(--x-text-700)}.x-textarea-row>textarea:hover{border-color:var(--x-primary-300)}.x-textarea-row>textarea:focus{border-color:var(--x-primary);outline:0}.x-textarea-row>textarea[disabled]{color:var(--x-text-500)}.x-textarea-row>x-icon{color:var(--x-text-400);transition:all var(--x-animation-duration-base)}.x-textarea-label-required:before{display:inline-block;margin-right:.25rem;color:var(--x-danger);line-height:1;font-size:var(--x-font-size-small);content:\"*\"}.x-textarea-error-message{position:absolute;bottom:0;left:0;font-size:var(--x-font-size)-.125rem;color:var(--x-danger);margin-bottom:calc((var(--x-font-size)) * -2);width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-textarea.x-invalid>label,.x-textarea.x-required>label{color:var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row>x-icon,.x-textarea.x-required>.x-textarea-row>x-icon{color:var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row .x-border-error,.x-textarea.x-required>.x-textarea-row .x-border-error{position:absolute;height:.75rem;width:.75rem;z-index:10}.x-textarea.x-invalid>.x-textarea-row .x-border-error.x-top-left,.x-textarea.x-required>.x-textarea-row .x-border-error.x-top-left{border-top-left-radius:var(--x-border-radius);top:0;left:0;border-top:var(--x-border-width) solid var(--x-danger);border-left:var(--x-border-width) solid var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row .x-border-error.x-top-right,.x-textarea.x-required>.x-textarea-row .x-border-error.x-top-right{border-top-right-radius:var(--x-border-radius);top:0;right:0;border-top:var(--x-border-width) solid var(--x-danger);border-right:var(--x-border-width) solid var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row .x-border-error.x-bottom-left,.x-textarea.x-required>.x-textarea-row .x-border-error.x-bottom-left{border-bottom-left-radius:var(--x-border-radius);bottom:0;left:0;border-bottom:var(--x-border-width) solid var(--x-danger);border-left:var(--x-border-width) solid var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row .x-border-error.x-bottom-right,.x-textarea.x-required>.x-textarea-row .x-border-error.x-bottom-right{border-bottom-right-radius:var(--x-border-radius);bottom:0;right:0;border-bottom:var(--x-border-width) solid var(--x-danger);border-right:var(--x-border-width) solid var(--x-danger)}.x-textarea.x-disabled>.x-textarea-row>x-icon{color:var(--x-text-400)}.x-textarea.x-disabled>.x-textarea-row>textarea{color:var(--x-text-400);cursor:not-allowed;border-color:var(--x-border-100);background-color:var(--x-background-a300)}.x-textarea.x-clearable>.x-textarea-row>.x-textarea-clear{position:absolute;color:var(--x-text-400);font-size:var(--x-font-size-medium);padding:.75rem;top:0;right:0;left:inherit;opacity:0;cursor:pointer}.x-textarea.x-clearable>.x-textarea-row>.x-textarea-clear:hover{color:var(--x-text-300)}.x-textarea.x-clearable>.x-textarea-row>textarea:hover+.x-textarea-clear,.x-textarea.x-clearable>.x-textarea-row>textarea:focus+.x-textarea-clear{opacity:1}.x-textarea.x-clearable.x-clear-show>.x-textarea-row>.x-textarea-clear{opacity:1}.x-textarea.x-clearable.x-clear-show>.x-textarea-row>textarea{padding-right:2.15rem!important}.x-textarea-max-length{position:absolute;font-size:var(--x-font-size-small);color:var(--x-text-400);padding:0 .75rem;right:.25rem;bottom:.25rem}.x-textarea.x-direction-row>label{padding:0 .5rem 0 0}.x-textarea.x-direction-row-reverse>label{padding:0 0 0 .5rem}.x-textarea.x-direction-column,.x-textarea.x-direction-column-reverse{align-items:inherit}.x-textarea-icon>.x-textarea-row>x-icon{position:absolute;font-size:var(--x-font-size-medium);padding:.75rem}.x-textarea-icon-left>.x-textarea-row>textarea{padding-left:2.15rem}.x-textarea-icon-left>.x-textarea-row>x-icon{left:0;top:0}.x-textarea-icon-right>.x-textarea-row>textarea{padding-right:var(--x-font-size-medium)1.5rem}.x-textarea-icon-right>.x-textarea-row>x-icon{right:0;top:0}.x-textarea-icon-right>.x-textarea-row>.x-textarea-max-length{right:inherit;left:0;bottom:0}.x-textarea-filled>.x-textarea-row>textarea{border-color:transparent;background-color:var(--x-background-a200)}.x-textarea-filled>.x-textarea-row>textarea:hover{background-color:var(--x-background-a300)}.x-textarea-filled>.x-textarea-row>textarea:focus{border-color:var(--x-primary);background-color:var(--x-background)}.x-textarea-borderless>.x-textarea-row>textarea{border:none}.x-textarea-underlined>.x-textarea-row>textarea{background-color:transparent;border-width:0 0 var(--x-border-width);border-radius:0}.x-textarea-float-label{position:relative;display:flex!important;align-items:center!important;flex-direction:row!important}.x-textarea-float-label>label{position:absolute;pointer-events:none;transition:all var(--x-animation-duration-base) ease;line-height:1!important;height:initial!important;z-index:2}.x-textarea-float-label>label.x-textarea-label-required{display:flex;align-items:center;padding-left:var(--x-font-size-mini)}.x-textarea-float-label>label.x-textarea-label-required:before{position:absolute;left:0;top:.125rem}.x-textarea-float-label-over>label,.x-textarea-float-label-on>label,.x-textarea-float-label-in>label{top:.75rem}.x-textarea-float-label-over.x-textarea-focus>label,.x-textarea-float-label-over.x-textarea-has-value>label,.x-textarea-float-label-over.x-textarea-active>label,.x-textarea-float-label-over.x-textarea-float-fixed>label{top:calc(0% - (var(--x-font-size) + var(--x-padding-medium) * .5))}.x-textarea-float-label-on.x-textarea-focus>label,.x-textarea-float-label-on.x-textarea-has-value>label,.x-textarea-float-label-on.x-textarea-active>label,.x-textarea-float-label-on.x-textarea-float-fixed>label{font-size:var(--x-font-size-mini);background-color:var(--x-background);top:calc(0% - var(--x-font-size-small) * .5)}.x-textarea-float-label-in>label{height:calc(var(--x-font-size) + .875rem)!important;line-height:calc(var(--x-font-size) + .875rem)!important;width:calc(100% - var(--x-border-width) * 2);margin-left:0!important;padding-left:.75rem;background-color:var(--x-background);top:var(--x-border-width);left:var(--x-border-width);border-top-left-radius:var(--x-border-radius);border-top-right-radius:var(--x-border-radius)}.x-textarea-float-label-in.x-textarea-focus>label,.x-textarea-float-label-in.x-textarea-has-value>label,.x-textarea-float-label-in.x-textarea-active>label,.x-textarea-float-label-in.x-textarea-float-fixed>label{font-size:var(--x-font-size-mini)}.x-textarea-float-label-in.x-textarea-focus .x-textarea-row>textarea,.x-textarea-float-label-in.x-textarea-has-value .x-textarea-row>textarea,.x-textarea-float-label-in.x-textarea-active .x-textarea-row>textarea,.x-textarea-float-label-in.x-textarea-float-fixed .x-textarea-row>textarea{padding-top:calc(0% + var(--x-padding-medium) * .75 + 1rem)}.x-textarea{margin:0;padding:0}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "component", type: XIconComponent, selector: "x-icon" }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
210
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XTextareaComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
211
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.0", type: XTextareaComponent, isStandalone: true, selector: "x-textarea", providers: [XValueAccessor(XTextareaComponent)], viewQueries: [{ propertyName: "textareaRef", first: true, predicate: ["textareaRef"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div\r\n #textarea\r\n class=\"x-textarea\"\r\n [class.x-flex]=\"justify() || align() || direction()\"\r\n [class.x-disabled]=\"disabledComputed()\"\r\n [class.x-required]=\"requiredIsEmpty()\"\r\n [class.x-invalid]=\"invalid()\"\r\n [class.x-clearable]=\"clearable()\"\r\n [class.x-clear-show]=\"clearShow()\"\r\n [class.x-textarea-active]=\"active()\"\r\n [class.x-textarea-focus]=\"focused()\"\r\n [class.x-textarea-icon]=\"getIcon()\"\r\n [class.x-textarea-filled]=\"variant() === 'filled'\"\r\n [class.x-textarea-borderless]=\"variant() === 'borderless'\"\r\n [class.x-textarea-underlined]=\"variant() === 'underlined'\"\r\n [class.x-textarea-icon-left]=\"getIconLayoutLeft()\"\r\n [class.x-textarea-icon-right]=\"getIconLayoutRight()\"\r\n [class.x-textarea-float-fixed]=\"floatFixed()\"\r\n [class.x-textarea-float-label]=\"!!floatLabel()\"\r\n [class.x-textarea-float-label-over]=\"floatLabel() === 'over'\"\r\n [class.x-textarea-float-label-in]=\"floatLabel() === 'in'\"\r\n [class.x-textarea-float-label-on]=\"floatLabel() === 'on'\"\r\n [class.x-textarea-has-value]=\"hasValue()\"\r\n [ngClass]=\"classMap()\"\r\n>\r\n @if (label()) {\r\n <label\r\n [class.x-textarea-label-required]=\"requiredComputed()\"\r\n [style.width]=\"labelWidth()\"\r\n [style.margin-left]=\"!!floatLabel() ? paddingLeft() : null\"\r\n [ngClass]=\"labelMapSignal()\"\r\n *xOutlet=\"label()\"\r\n >{{ label() }}</label\r\n >\r\n }\r\n <div class=\"x-textarea-row\">\r\n <textarea\r\n #textareaRef\r\n [placeholder]=\"!floatLabel() ? placeholder() : ''\"\r\n [required]=\"requiredComputed()\"\r\n [disabled]=\"disabledComputed()\"\r\n [readonly]=\"readonly()\"\r\n [maxlength]=\"maxlength()\"\r\n [(ngModel)]=\"value\"\r\n (ngModelChange)=\"change($event)\"\r\n [style.height]=\"height()\"\r\n [style.padding-left]=\"paddingLeft()\"\r\n [style.padding-right]=\"paddingRight()\"\r\n (keydown)=\"formControlValidator()\"\r\n (focus)=\"onFocus($event)\"\r\n (blur)=\"onBlur($event)\"\r\n ></textarea>\r\n @if (clearShow()) {\r\n <x-icon class=\"x-textarea-clear\" type=\"fto-x\" (click)=\"onClear()\"></x-icon>\r\n }\r\n @if (icon() && ((!clearShow() && getIconLayoutRight()) || getIconLayoutLeft())) {\r\n <x-icon class=\"x-textarea-icon-in\" [type]=\"icon()\" [spin]=\"iconSpin()\"></x-icon>\r\n }\r\n @if (maxlength()) {\r\n <span class=\"x-textarea-max-length\">{{ lengthTotal() }}</span>\r\n }\r\n @if (invalid()) {\r\n <span class=\"x-textarea-error-message\">{{ invalidMessage() }}</span>\r\n }\r\n @if (requiredIsEmpty() || invalid()) {\r\n <div class=\"x-border-error x-top-left\"></div>\r\n <div class=\"x-border-error x-top-right\"></div>\r\n <div class=\"x-border-error x-bottom-left\"></div>\r\n <div class=\"x-border-error x-bottom-right\"></div>\r\n }\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-textarea{display:inline-block;width:16rem}.x-textarea{width:100%}.x-textarea.x-flex{display:flex}.x-textarea.x-justify-start{justify-content:flex-start}.x-textarea.x-justify-center{justify-content:center}.x-textarea.x-justify-end{justify-content:flex-end}.x-textarea.x-justify-space-between{justify-content:space-between}.x-textarea.x-justify-space-around{justify-content:space-around}.x-textarea.x-align-start{align-items:flex-start}.x-textarea.x-align-center{align-items:center}.x-textarea.x-align-end{align-items:flex-end}.x-textarea.x-direction-column{flex-direction:column}.x-textarea.x-direction-column-reverse{flex-direction:column-reverse}.x-textarea.x-direction-row{flex-direction:row}.x-textarea.x-direction-row-reverse{flex-direction:row-reverse}.x-textarea>label{display:inline-block;white-space:nowrap;position:relative;color:var(--x-text-300);font-weight:500;height:calc(var(--x-font-size) + .875rem);line-height:calc(var(--x-font-size) + .875rem)}.x-textarea>label.x-text-align-start{text-align:start}.x-textarea>label.x-text-align-center{text-align:center}.x-textarea>label.x-text-align-end{text-align:end}.x-textarea-row{flex:1;display:flex;align-items:center;position:relative}.x-textarea-row>textarea{flex:1;width:100%;font-size:var(--x-font-size);background-color:var(--x-background);background-image:none;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow) transparent;transition:all var(--x-animation-duration-slow);line-height:calc(var(--x-font-size) + .5rem);padding:.5rem}.x-textarea-row>textarea::-moz-placeholder{color:var(--x-text-700);opacity:1}.x-textarea-row>textarea:-ms-input-placeholder{color:var(--x-text-700)}.x-textarea-row>textarea::-webkit-input-placeholder{color:var(--x-text-700)}.x-textarea-row>textarea:hover{border-color:var(--x-primary-300)}.x-textarea-row>textarea:focus{border-color:var(--x-primary);outline:0}.x-textarea-row>textarea[disabled]{color:var(--x-text-500)}.x-textarea-row>x-icon{color:var(--x-text-400);transition:all var(--x-animation-duration-base)}.x-textarea-label-required:before{display:inline-block;margin-right:.25rem;color:var(--x-danger);line-height:1;font-size:var(--x-font-size-small);content:\"*\"}.x-textarea-error-message{position:absolute;bottom:0;left:0;font-size:var(--x-font-size)-.125rem;color:var(--x-danger);margin-bottom:calc((var(--x-font-size)) * -2);width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-textarea.x-invalid>label,.x-textarea.x-required>label{color:var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row>x-icon,.x-textarea.x-required>.x-textarea-row>x-icon{color:var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row .x-border-error,.x-textarea.x-required>.x-textarea-row .x-border-error{position:absolute;height:.75rem;width:.75rem;z-index:10}.x-textarea.x-invalid>.x-textarea-row .x-border-error.x-top-left,.x-textarea.x-required>.x-textarea-row .x-border-error.x-top-left{border-top-left-radius:var(--x-border-radius);top:0;left:0;border-top:var(--x-border-width) solid var(--x-danger);border-left:var(--x-border-width) solid var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row .x-border-error.x-top-right,.x-textarea.x-required>.x-textarea-row .x-border-error.x-top-right{border-top-right-radius:var(--x-border-radius);top:0;right:0;border-top:var(--x-border-width) solid var(--x-danger);border-right:var(--x-border-width) solid var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row .x-border-error.x-bottom-left,.x-textarea.x-required>.x-textarea-row .x-border-error.x-bottom-left{border-bottom-left-radius:var(--x-border-radius);bottom:0;left:0;border-bottom:var(--x-border-width) solid var(--x-danger);border-left:var(--x-border-width) solid var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row .x-border-error.x-bottom-right,.x-textarea.x-required>.x-textarea-row .x-border-error.x-bottom-right{border-bottom-right-radius:var(--x-border-radius);bottom:0;right:0;border-bottom:var(--x-border-width) solid var(--x-danger);border-right:var(--x-border-width) solid var(--x-danger)}.x-textarea.x-disabled>.x-textarea-row>x-icon{color:var(--x-text-400)}.x-textarea.x-disabled>.x-textarea-row>textarea{color:var(--x-text-400);cursor:not-allowed;border-color:var(--x-border-100);background-color:var(--x-background-a300)}.x-textarea.x-clearable>.x-textarea-row>.x-textarea-clear{position:absolute;color:var(--x-text-400);font-size:var(--x-font-size-medium);padding:.75rem;top:0;right:0;left:inherit;opacity:0;cursor:pointer}.x-textarea.x-clearable>.x-textarea-row>.x-textarea-clear:hover{color:var(--x-text-300)}.x-textarea.x-clearable>.x-textarea-row>textarea:hover+.x-textarea-clear,.x-textarea.x-clearable>.x-textarea-row>textarea:focus+.x-textarea-clear{opacity:1}.x-textarea.x-clearable.x-clear-show>.x-textarea-row>.x-textarea-clear{opacity:1}.x-textarea.x-clearable.x-clear-show>.x-textarea-row>textarea{padding-right:2.15rem!important}.x-textarea-max-length{position:absolute;font-size:var(--x-font-size-small);color:var(--x-text-400);padding:0 .75rem;right:.25rem;bottom:.25rem}.x-textarea.x-direction-row>label{padding:0 .5rem 0 0}.x-textarea.x-direction-row-reverse>label{padding:0 0 0 .5rem}.x-textarea.x-direction-column,.x-textarea.x-direction-column-reverse{align-items:inherit}.x-textarea-icon>.x-textarea-row>x-icon{position:absolute;font-size:var(--x-font-size-medium);padding:.75rem}.x-textarea-icon-left>.x-textarea-row>textarea{padding-left:2.15rem}.x-textarea-icon-left>.x-textarea-row>x-icon{left:0;top:0}.x-textarea-icon-right>.x-textarea-row>textarea{padding-right:var(--x-font-size-medium)1.5rem}.x-textarea-icon-right>.x-textarea-row>x-icon{right:0;top:0}.x-textarea-icon-right>.x-textarea-row>.x-textarea-max-length{right:inherit;left:0;bottom:0}.x-textarea-filled>.x-textarea-row>textarea{border-color:transparent;background-color:var(--x-background-a200)}.x-textarea-filled>.x-textarea-row>textarea:hover{background-color:var(--x-background-a300)}.x-textarea-filled>.x-textarea-row>textarea:focus{border-color:var(--x-primary);background-color:var(--x-background)}.x-textarea-borderless>.x-textarea-row>textarea{border:none}.x-textarea-underlined>.x-textarea-row>textarea{background-color:transparent;border-width:0 0 var(--x-border-width);border-radius:0}.x-textarea-float-label{position:relative;display:flex!important;align-items:center!important;flex-direction:row!important}.x-textarea-float-label>label{position:absolute;pointer-events:none;transition:all var(--x-animation-duration-base) ease;line-height:1!important;height:initial!important;z-index:2}.x-textarea-float-label>label.x-textarea-label-required{display:flex;align-items:center;padding-left:var(--x-font-size-mini)}.x-textarea-float-label>label.x-textarea-label-required:before{position:absolute;left:0;top:.125rem}.x-textarea-float-label-over>label,.x-textarea-float-label-on>label,.x-textarea-float-label-in>label{top:.75rem}.x-textarea-float-label-over.x-textarea-focus>label,.x-textarea-float-label-over.x-textarea-has-value>label,.x-textarea-float-label-over.x-textarea-active>label,.x-textarea-float-label-over.x-textarea-float-fixed>label{top:calc(0% - (var(--x-font-size) + var(--x-padding-medium) * .5))}.x-textarea-float-label-on.x-textarea-focus>label,.x-textarea-float-label-on.x-textarea-has-value>label,.x-textarea-float-label-on.x-textarea-active>label,.x-textarea-float-label-on.x-textarea-float-fixed>label{font-size:var(--x-font-size-mini);background-color:var(--x-background);top:calc(0% - var(--x-font-size-small) * .5)}.x-textarea-float-label-in>label{height:calc(var(--x-font-size) + .875rem)!important;line-height:calc(var(--x-font-size) + .875rem)!important;width:calc(100% - var(--x-border-width) * 2);margin-left:0!important;padding-left:.75rem;background-color:var(--x-background);top:var(--x-border-width);left:var(--x-border-width);border-top-left-radius:var(--x-border-radius);border-top-right-radius:var(--x-border-radius)}.x-textarea-float-label-in.x-textarea-focus>label,.x-textarea-float-label-in.x-textarea-has-value>label,.x-textarea-float-label-in.x-textarea-active>label,.x-textarea-float-label-in.x-textarea-float-fixed>label{font-size:var(--x-font-size-mini)}.x-textarea-float-label-in.x-textarea-focus .x-textarea-row>textarea,.x-textarea-float-label-in.x-textarea-has-value .x-textarea-row>textarea,.x-textarea-float-label-in.x-textarea-active .x-textarea-row>textarea,.x-textarea-float-label-in.x-textarea-float-fixed .x-textarea-row>textarea{padding-top:calc(0% + var(--x-padding-medium) * .75 + 1rem)}.x-textarea{margin:0;padding:0}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "component", type: XIconComponent, selector: "x-icon" }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
212
212
  }
213
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XTextareaComponent, decorators: [{
213
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XTextareaComponent, decorators: [{
214
214
  type: Component,
215
215
  args: [{ selector: `${XTextareaPrefix}`, imports: [NgClass, FormsModule, ReactiveFormsModule, XIconComponent, XOutletDirective], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [XValueAccessor(XTextareaComponent)], template: "<div\r\n #textarea\r\n class=\"x-textarea\"\r\n [class.x-flex]=\"justify() || align() || direction()\"\r\n [class.x-disabled]=\"disabledComputed()\"\r\n [class.x-required]=\"requiredIsEmpty()\"\r\n [class.x-invalid]=\"invalid()\"\r\n [class.x-clearable]=\"clearable()\"\r\n [class.x-clear-show]=\"clearShow()\"\r\n [class.x-textarea-active]=\"active()\"\r\n [class.x-textarea-focus]=\"focused()\"\r\n [class.x-textarea-icon]=\"getIcon()\"\r\n [class.x-textarea-filled]=\"variant() === 'filled'\"\r\n [class.x-textarea-borderless]=\"variant() === 'borderless'\"\r\n [class.x-textarea-underlined]=\"variant() === 'underlined'\"\r\n [class.x-textarea-icon-left]=\"getIconLayoutLeft()\"\r\n [class.x-textarea-icon-right]=\"getIconLayoutRight()\"\r\n [class.x-textarea-float-fixed]=\"floatFixed()\"\r\n [class.x-textarea-float-label]=\"!!floatLabel()\"\r\n [class.x-textarea-float-label-over]=\"floatLabel() === 'over'\"\r\n [class.x-textarea-float-label-in]=\"floatLabel() === 'in'\"\r\n [class.x-textarea-float-label-on]=\"floatLabel() === 'on'\"\r\n [class.x-textarea-has-value]=\"hasValue()\"\r\n [ngClass]=\"classMap()\"\r\n>\r\n @if (label()) {\r\n <label\r\n [class.x-textarea-label-required]=\"requiredComputed()\"\r\n [style.width]=\"labelWidth()\"\r\n [style.margin-left]=\"!!floatLabel() ? paddingLeft() : null\"\r\n [ngClass]=\"labelMapSignal()\"\r\n *xOutlet=\"label()\"\r\n >{{ label() }}</label\r\n >\r\n }\r\n <div class=\"x-textarea-row\">\r\n <textarea\r\n #textareaRef\r\n [placeholder]=\"!floatLabel() ? placeholder() : ''\"\r\n [required]=\"requiredComputed()\"\r\n [disabled]=\"disabledComputed()\"\r\n [readonly]=\"readonly()\"\r\n [maxlength]=\"maxlength()\"\r\n [(ngModel)]=\"value\"\r\n (ngModelChange)=\"change($event)\"\r\n [style.height]=\"height()\"\r\n [style.padding-left]=\"paddingLeft()\"\r\n [style.padding-right]=\"paddingRight()\"\r\n (keydown)=\"formControlValidator()\"\r\n (focus)=\"onFocus($event)\"\r\n (blur)=\"onBlur($event)\"\r\n ></textarea>\r\n @if (clearShow()) {\r\n <x-icon class=\"x-textarea-clear\" type=\"fto-x\" (click)=\"onClear()\"></x-icon>\r\n }\r\n @if (icon() && ((!clearShow() && getIconLayoutRight()) || getIconLayoutLeft())) {\r\n <x-icon class=\"x-textarea-icon-in\" [type]=\"icon()\" [spin]=\"iconSpin()\"></x-icon>\r\n }\r\n @if (maxlength()) {\r\n <span class=\"x-textarea-max-length\">{{ lengthTotal() }}</span>\r\n }\r\n @if (invalid()) {\r\n <span class=\"x-textarea-error-message\">{{ invalidMessage() }}</span>\r\n }\r\n @if (requiredIsEmpty() || invalid()) {\r\n <div class=\"x-border-error x-top-left\"></div>\r\n <div class=\"x-border-error x-top-right\"></div>\r\n <div class=\"x-border-error x-bottom-left\"></div>\r\n <div class=\"x-border-error x-bottom-right\"></div>\r\n }\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-textarea{display:inline-block;width:16rem}.x-textarea{width:100%}.x-textarea.x-flex{display:flex}.x-textarea.x-justify-start{justify-content:flex-start}.x-textarea.x-justify-center{justify-content:center}.x-textarea.x-justify-end{justify-content:flex-end}.x-textarea.x-justify-space-between{justify-content:space-between}.x-textarea.x-justify-space-around{justify-content:space-around}.x-textarea.x-align-start{align-items:flex-start}.x-textarea.x-align-center{align-items:center}.x-textarea.x-align-end{align-items:flex-end}.x-textarea.x-direction-column{flex-direction:column}.x-textarea.x-direction-column-reverse{flex-direction:column-reverse}.x-textarea.x-direction-row{flex-direction:row}.x-textarea.x-direction-row-reverse{flex-direction:row-reverse}.x-textarea>label{display:inline-block;white-space:nowrap;position:relative;color:var(--x-text-300);font-weight:500;height:calc(var(--x-font-size) + .875rem);line-height:calc(var(--x-font-size) + .875rem)}.x-textarea>label.x-text-align-start{text-align:start}.x-textarea>label.x-text-align-center{text-align:center}.x-textarea>label.x-text-align-end{text-align:end}.x-textarea-row{flex:1;display:flex;align-items:center;position:relative}.x-textarea-row>textarea{flex:1;width:100%;font-size:var(--x-font-size);background-color:var(--x-background);background-image:none;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow) transparent;transition:all var(--x-animation-duration-slow);line-height:calc(var(--x-font-size) + .5rem);padding:.5rem}.x-textarea-row>textarea::-moz-placeholder{color:var(--x-text-700);opacity:1}.x-textarea-row>textarea:-ms-input-placeholder{color:var(--x-text-700)}.x-textarea-row>textarea::-webkit-input-placeholder{color:var(--x-text-700)}.x-textarea-row>textarea:hover{border-color:var(--x-primary-300)}.x-textarea-row>textarea:focus{border-color:var(--x-primary);outline:0}.x-textarea-row>textarea[disabled]{color:var(--x-text-500)}.x-textarea-row>x-icon{color:var(--x-text-400);transition:all var(--x-animation-duration-base)}.x-textarea-label-required:before{display:inline-block;margin-right:.25rem;color:var(--x-danger);line-height:1;font-size:var(--x-font-size-small);content:\"*\"}.x-textarea-error-message{position:absolute;bottom:0;left:0;font-size:var(--x-font-size)-.125rem;color:var(--x-danger);margin-bottom:calc((var(--x-font-size)) * -2);width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-textarea.x-invalid>label,.x-textarea.x-required>label{color:var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row>x-icon,.x-textarea.x-required>.x-textarea-row>x-icon{color:var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row .x-border-error,.x-textarea.x-required>.x-textarea-row .x-border-error{position:absolute;height:.75rem;width:.75rem;z-index:10}.x-textarea.x-invalid>.x-textarea-row .x-border-error.x-top-left,.x-textarea.x-required>.x-textarea-row .x-border-error.x-top-left{border-top-left-radius:var(--x-border-radius);top:0;left:0;border-top:var(--x-border-width) solid var(--x-danger);border-left:var(--x-border-width) solid var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row .x-border-error.x-top-right,.x-textarea.x-required>.x-textarea-row .x-border-error.x-top-right{border-top-right-radius:var(--x-border-radius);top:0;right:0;border-top:var(--x-border-width) solid var(--x-danger);border-right:var(--x-border-width) solid var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row .x-border-error.x-bottom-left,.x-textarea.x-required>.x-textarea-row .x-border-error.x-bottom-left{border-bottom-left-radius:var(--x-border-radius);bottom:0;left:0;border-bottom:var(--x-border-width) solid var(--x-danger);border-left:var(--x-border-width) solid var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row .x-border-error.x-bottom-right,.x-textarea.x-required>.x-textarea-row .x-border-error.x-bottom-right{border-bottom-right-radius:var(--x-border-radius);bottom:0;right:0;border-bottom:var(--x-border-width) solid var(--x-danger);border-right:var(--x-border-width) solid var(--x-danger)}.x-textarea.x-disabled>.x-textarea-row>x-icon{color:var(--x-text-400)}.x-textarea.x-disabled>.x-textarea-row>textarea{color:var(--x-text-400);cursor:not-allowed;border-color:var(--x-border-100);background-color:var(--x-background-a300)}.x-textarea.x-clearable>.x-textarea-row>.x-textarea-clear{position:absolute;color:var(--x-text-400);font-size:var(--x-font-size-medium);padding:.75rem;top:0;right:0;left:inherit;opacity:0;cursor:pointer}.x-textarea.x-clearable>.x-textarea-row>.x-textarea-clear:hover{color:var(--x-text-300)}.x-textarea.x-clearable>.x-textarea-row>textarea:hover+.x-textarea-clear,.x-textarea.x-clearable>.x-textarea-row>textarea:focus+.x-textarea-clear{opacity:1}.x-textarea.x-clearable.x-clear-show>.x-textarea-row>.x-textarea-clear{opacity:1}.x-textarea.x-clearable.x-clear-show>.x-textarea-row>textarea{padding-right:2.15rem!important}.x-textarea-max-length{position:absolute;font-size:var(--x-font-size-small);color:var(--x-text-400);padding:0 .75rem;right:.25rem;bottom:.25rem}.x-textarea.x-direction-row>label{padding:0 .5rem 0 0}.x-textarea.x-direction-row-reverse>label{padding:0 0 0 .5rem}.x-textarea.x-direction-column,.x-textarea.x-direction-column-reverse{align-items:inherit}.x-textarea-icon>.x-textarea-row>x-icon{position:absolute;font-size:var(--x-font-size-medium);padding:.75rem}.x-textarea-icon-left>.x-textarea-row>textarea{padding-left:2.15rem}.x-textarea-icon-left>.x-textarea-row>x-icon{left:0;top:0}.x-textarea-icon-right>.x-textarea-row>textarea{padding-right:var(--x-font-size-medium)1.5rem}.x-textarea-icon-right>.x-textarea-row>x-icon{right:0;top:0}.x-textarea-icon-right>.x-textarea-row>.x-textarea-max-length{right:inherit;left:0;bottom:0}.x-textarea-filled>.x-textarea-row>textarea{border-color:transparent;background-color:var(--x-background-a200)}.x-textarea-filled>.x-textarea-row>textarea:hover{background-color:var(--x-background-a300)}.x-textarea-filled>.x-textarea-row>textarea:focus{border-color:var(--x-primary);background-color:var(--x-background)}.x-textarea-borderless>.x-textarea-row>textarea{border:none}.x-textarea-underlined>.x-textarea-row>textarea{background-color:transparent;border-width:0 0 var(--x-border-width);border-radius:0}.x-textarea-float-label{position:relative;display:flex!important;align-items:center!important;flex-direction:row!important}.x-textarea-float-label>label{position:absolute;pointer-events:none;transition:all var(--x-animation-duration-base) ease;line-height:1!important;height:initial!important;z-index:2}.x-textarea-float-label>label.x-textarea-label-required{display:flex;align-items:center;padding-left:var(--x-font-size-mini)}.x-textarea-float-label>label.x-textarea-label-required:before{position:absolute;left:0;top:.125rem}.x-textarea-float-label-over>label,.x-textarea-float-label-on>label,.x-textarea-float-label-in>label{top:.75rem}.x-textarea-float-label-over.x-textarea-focus>label,.x-textarea-float-label-over.x-textarea-has-value>label,.x-textarea-float-label-over.x-textarea-active>label,.x-textarea-float-label-over.x-textarea-float-fixed>label{top:calc(0% - (var(--x-font-size) + var(--x-padding-medium) * .5))}.x-textarea-float-label-on.x-textarea-focus>label,.x-textarea-float-label-on.x-textarea-has-value>label,.x-textarea-float-label-on.x-textarea-active>label,.x-textarea-float-label-on.x-textarea-float-fixed>label{font-size:var(--x-font-size-mini);background-color:var(--x-background);top:calc(0% - var(--x-font-size-small) * .5)}.x-textarea-float-label-in>label{height:calc(var(--x-font-size) + .875rem)!important;line-height:calc(var(--x-font-size) + .875rem)!important;width:calc(100% - var(--x-border-width) * 2);margin-left:0!important;padding-left:.75rem;background-color:var(--x-background);top:var(--x-border-width);left:var(--x-border-width);border-top-left-radius:var(--x-border-radius);border-top-right-radius:var(--x-border-radius)}.x-textarea-float-label-in.x-textarea-focus>label,.x-textarea-float-label-in.x-textarea-has-value>label,.x-textarea-float-label-in.x-textarea-active>label,.x-textarea-float-label-in.x-textarea-float-fixed>label{font-size:var(--x-font-size-mini)}.x-textarea-float-label-in.x-textarea-focus .x-textarea-row>textarea,.x-textarea-float-label-in.x-textarea-has-value .x-textarea-row>textarea,.x-textarea-float-label-in.x-textarea-active .x-textarea-row>textarea,.x-textarea-float-label-in.x-textarea-float-fixed .x-textarea-row>textarea{padding-top:calc(0% + var(--x-padding-medium) * .75 + 1rem)}.x-textarea{margin:0;padding:0}\n"] }]
216
216
  }], propDecorators: { textareaRef: [{ type: i0.ViewChild, args: ['textareaRef', { isSignal: true }] }] } });
217
217
 
218
218
  class XTextareaModule {
219
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XTextareaModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
220
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.5", ngImport: i0, type: XTextareaModule, imports: [XTextareaComponent], exports: [XTextareaComponent] }); }
221
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XTextareaModule, imports: [XTextareaComponent] }); }
219
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XTextareaModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
220
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.0", ngImport: i0, type: XTextareaModule, imports: [XTextareaComponent], exports: [XTextareaComponent] }); }
221
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XTextareaModule, imports: [XTextareaComponent] }); }
222
222
  }
223
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XTextareaModule, decorators: [{
223
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XTextareaModule, decorators: [{
224
224
  type: NgModule,
225
225
  args: [{
226
226
  exports: [XTextareaComponent],
@@ -64,10 +64,10 @@ class XThemeProperty extends XFormControlFunction(X_THEME_CONFIG_NAME) {
64
64
  */
65
65
  this.defaultClick = output();
66
66
  }
67
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XThemeProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
68
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.5", type: XThemeProperty, isStandalone: true, selector: "x-theme-property", inputs: { prefix: { classPropertyName: "prefix", publicName: "prefix", isSignal: true, isRequired: false, transformFunction: null }, amounts: { classPropertyName: "amounts", publicName: "amounts", isSignal: true, isRequired: false, transformFunction: null }, showDark: { classPropertyName: "showDark", publicName: "showDark", isSignal: true, isRequired: false, transformFunction: null }, showDetail: { classPropertyName: "showDetail", publicName: "showDetail", isSignal: true, isRequired: false, transformFunction: null }, dark: { classPropertyName: "dark", publicName: "dark", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { dark: "darkChange", defaultClick: "defaultClick" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
67
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XThemeProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
68
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.0.0", type: XThemeProperty, isStandalone: true, selector: "x-theme-property", inputs: { prefix: { classPropertyName: "prefix", publicName: "prefix", isSignal: true, isRequired: false, transformFunction: null }, amounts: { classPropertyName: "amounts", publicName: "amounts", isSignal: true, isRequired: false, transformFunction: null }, showDark: { classPropertyName: "showDark", publicName: "showDark", isSignal: true, isRequired: false, transformFunction: null }, showDetail: { classPropertyName: "showDetail", publicName: "showDetail", isSignal: true, isRequired: false, transformFunction: null }, dark: { classPropertyName: "dark", publicName: "dark", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { dark: "darkChange", defaultClick: "defaultClick" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
69
69
  }
70
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XThemeProperty, decorators: [{
70
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XThemeProperty, decorators: [{
71
71
  type: Component,
72
72
  args: [{ selector: `${XThemePrefix}-property`, template: '' }]
73
73
  }], propDecorators: { prefix: [{ type: i0.Input, args: [{ isSignal: true, alias: "prefix", required: false }] }], amounts: [{ type: i0.Input, args: [{ isSignal: true, alias: "amounts", required: false }] }], showDark: [{ type: i0.Input, args: [{ isSignal: true, alias: "showDark", required: false }] }], showDetail: [{ type: i0.Input, args: [{ isSignal: true, alias: "showDetail", required: false }] }], dark: [{ type: i0.Input, args: [{ isSignal: true, alias: "dark", required: false }] }, { type: i0.Output, args: ["darkChange"] }], defaultClick: [{ type: i0.Output, args: ["defaultClick"] }] } });
@@ -219,10 +219,10 @@ class XThemeComponent extends XThemeProperty {
219
219
  }
220
220
  this.formGroup().patchValue(colors);
221
221
  }
222
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XThemeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
223
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.5", type: XThemeComponent, isStandalone: true, selector: "x-theme", providers: [XValueAccessor(XThemeComponent)], usesInheritance: true, ngImport: i0, template: "<div class=\"x-theme\">\r\n <x-row>\r\n @if (showDark()) {\r\n <x-col [style.width.rem]=\"8\">\r\n <x-switch\r\n direction=\"row\"\r\n [label]=\"locale().darkMode!\"\r\n [(ngModel)]=\"dark\"\r\n (ngModelChange)=\"darkChanges()\"\r\n ></x-switch>\r\n </x-col>\r\n }\r\n <x-col [style.width.rem]=\"8\">\r\n <x-button (click)=\"default()\">{{ locale().initDefault }}</x-button>\r\n </x-col>\r\n </x-row>\r\n <x-form [formGroup]=\"formGroup()\" [controls]=\"controls()\" [width]=\"width()\" span=\"2\" space=\"1\"></x-form>\r\n</div>\r\n", styles: [".x-theme{margin:0;padding:0}.x-theme{display:inline-block}.x-theme x-color-picker:not(:first-child){margin-left:.125rem}.x-theme-darken,.x-theme-default,.x-theme-gradual{display:flex}.x-theme-default x-color-picker{width:9.25rem}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: XSwitchComponent, selector: "x-switch" }, { kind: "component", type: XButtonComponent, selector: "x-button" }, { kind: "component", type: XRowComponent, selector: "x-row" }, { kind: "component", type: XColComponent, selector: "x-col" }, { kind: "component", type: XFormComponent, selector: "x-form" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
222
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XThemeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
223
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.0", type: XThemeComponent, isStandalone: true, selector: "x-theme", providers: [XValueAccessor(XThemeComponent)], usesInheritance: true, ngImport: i0, template: "<div class=\"x-theme\">\r\n <x-row>\r\n @if (showDark()) {\r\n <x-col [style.width.rem]=\"8\">\r\n <x-switch\r\n direction=\"row\"\r\n [label]=\"locale().darkMode!\"\r\n [(ngModel)]=\"dark\"\r\n (ngModelChange)=\"darkChanges()\"\r\n ></x-switch>\r\n </x-col>\r\n }\r\n <x-col [style.width.rem]=\"8\">\r\n <x-button (click)=\"default()\">{{ locale().initDefault }}</x-button>\r\n </x-col>\r\n </x-row>\r\n <x-form [formGroup]=\"formGroup()\" [controls]=\"controls()\" [width]=\"width()\" span=\"2\" space=\"1\"></x-form>\r\n</div>\r\n", styles: [".x-theme{margin:0;padding:0}.x-theme{display:inline-block}.x-theme x-color-picker:not(:first-child){margin-left:.125rem}.x-theme-darken,.x-theme-default,.x-theme-gradual{display:flex}.x-theme-default x-color-picker{width:9.25rem}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],[formArray],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: XSwitchComponent, selector: "x-switch" }, { kind: "component", type: XButtonComponent, selector: "x-button" }, { kind: "component", type: XRowComponent, selector: "x-row" }, { kind: "component", type: XColComponent, selector: "x-col" }, { kind: "component", type: XFormComponent, selector: "x-form" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
224
224
  }
225
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XThemeComponent, decorators: [{
225
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XThemeComponent, decorators: [{
226
226
  type: Component,
227
227
  args: [{ selector: 'x-theme', imports: [
228
228
  FormsModule,
@@ -236,11 +236,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.5", ngImpor
236
236
  }], ctorParameters: () => [] });
237
237
 
238
238
  class XThemeModule {
239
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XThemeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
240
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.5", ngImport: i0, type: XThemeModule, imports: [XThemeComponent], exports: [XThemeComponent] }); }
241
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XThemeModule, imports: [XThemeComponent] }); }
239
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XThemeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
240
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.0", ngImport: i0, type: XThemeModule, imports: [XThemeComponent], exports: [XThemeComponent] }); }
241
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XThemeModule, imports: [XThemeComponent] }); }
242
242
  }
243
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XThemeModule, decorators: [{
243
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XThemeModule, decorators: [{
244
244
  type: NgModule,
245
245
  args: [{
246
246
  exports: [XThemeComponent],
@@ -1 +1 @@
1
- {"version":3,"file":"ng-nest-ui-theme.mjs","sources":["../../../../lib/ng-nest/ui/theme/theme.property.ts","../../../../lib/ng-nest/ui/theme/theme.component.ts","../../../../lib/ng-nest/ui/theme/theme.component.html","../../../../lib/ng-nest/ui/theme/theme.module.ts","../../../../lib/ng-nest/ui/theme/ng-nest-ui-theme.ts"],"sourcesContent":["import { XColorsTheme, XBoolean, XToBoolean } from '@ng-nest/ui/core';\r\nimport { Component, input, model, output } from '@angular/core';\r\nimport { XFormControlFunction } from '@ng-nest/ui/base-form';\r\n\r\n/**\r\n * Theme\r\n * @selector x-theme\r\n * @decorator component\r\n */\r\nexport const XThemePrefix = 'x-theme';\r\nconst X_THEME_CONFIG_NAME = 'theme';\r\n\r\n/**\r\n * @zh_CN 混合的颜色占比\r\n * @en_US Proportion of mixed colors\r\n */\r\nexport const XThemeAmounts = [\r\n -0.1, -0.2, -0.3, -0.4, -0.5, -0.6, -0.7, -0.8, -0.9, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9\r\n];\r\n\r\n/**\r\n * Theme Property\r\n */\r\n@Component({ selector: `${XThemePrefix}-property`, template: '' })\r\nexport class XThemeProperty extends XFormControlFunction(X_THEME_CONFIG_NAME) {\r\n /**\r\n * @zh_CN 参数前缀\r\n * @en_US Parameter prefix\r\n */\r\n readonly prefix = input<string>('--x-');\r\n /**\r\n * @zh_CN 混合的颜色占比\r\n * @en_US Proportion of mixed colors\r\n */\r\n readonly amounts = input<number[]>(this.config?.amounts ?? XThemeAmounts);\r\n /**\r\n * @zh_CN 显示暗黑模式的设置\r\n * @en_US Show dark mode settings\r\n */\r\n readonly showDark = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 详细设置\r\n * @en_US Detailed settings\r\n */\r\n readonly showDetail = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 暗黑模式\r\n * @en_US Dark mode\r\n */\r\n readonly dark = model(false);\r\n /**\r\n * @zh_CN 初始化默认值事件\r\n * @en_US Initialize default value event\r\n */\r\n readonly defaultClick = output<XColorsTheme>();\r\n}\r\n","import {\r\n Component,\r\n OnInit,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n OnDestroy,\r\n inject,\r\n AfterViewInit,\r\n signal,\r\n effect\r\n} from '@angular/core';\r\nimport { XThemeProperty } from './theme.property';\r\nimport {\r\n XConfigService,\r\n XColorsTheme,\r\n XTheme,\r\n X_THEME_COLOR_KEYS,\r\n X_THEME_COLORS,\r\n X_THEME_DARK_COLORS\r\n} from '@ng-nest/ui/core';\r\nimport { FormsModule, ReactiveFormsModule, UntypedFormGroup } from '@angular/forms';\r\nimport { XControl, XFormComponent } from '@ng-nest/ui/form';\r\nimport { debounceTime, takeUntil, map } from 'rxjs/operators';\r\nimport { Subject } from 'rxjs';\r\nimport { XI18nService, XI18nTheme, zh_CN } from '@ng-nest/ui/i18n';\r\nimport { XValueAccessor } from '@ng-nest/ui/base-form';\r\nimport { XSwitchComponent } from '@ng-nest/ui/switch';\r\nimport { XButtonComponent } from '@ng-nest/ui/button';\r\nimport { XColComponent, XRowComponent } from '@ng-nest/ui/layout';\r\nimport { toSignal } from '@angular/core/rxjs-interop';\r\n\r\n@Component({\r\n selector: 'x-theme',\r\n imports: [\r\n FormsModule,\r\n ReactiveFormsModule,\r\n XSwitchComponent,\r\n XButtonComponent,\r\n XRowComponent,\r\n XColComponent,\r\n XFormComponent\r\n ],\r\n templateUrl: './theme.component.html',\r\n styleUrls: ['./style/index.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [XValueAccessor(XThemeComponent)]\r\n})\r\nexport class XThemeComponent extends XThemeProperty implements OnInit, AfterViewInit, OnDestroy {\r\n public i18n = inject(XI18nService);\r\n configService = inject(XConfigService);\r\n themeService = this.configService.themeService;\r\n\r\n formGroup = signal(new UntypedFormGroup({}));\r\n theme = signal<XTheme>({ colors: {} });\r\n width = signal('45rem');\r\n beforeColors = signal<XColorsTheme>({});\r\n currentColors = signal<XColorsTheme>({});\r\n darkBeforeColors = signal<XColorsTheme>({});\r\n controls = signal<XControl[]>([\r\n { control: 'color-picker', id: 'primary', label: '主色', span: 5 },\r\n { control: 'color-picker', id: 'success', label: '成功', span: 5 },\r\n { control: 'color-picker', id: 'warning', label: '警告', span: 5 },\r\n { control: 'color-picker', id: 'danger', label: '危险', span: 5 },\r\n { control: 'color-picker', id: 'info', label: '信息', span: 5 },\r\n { control: 'color-picker', id: 'background', label: '背景', span: 5 },\r\n { control: 'color-picker', id: 'border', label: '边框', span: 5 },\r\n { control: 'color-picker', id: 'text', label: '文字', span: 5 }\r\n ]);\r\n\r\n override value = signal<XColorsTheme>({});\r\n\r\n locale = toSignal(this.i18n.localeChange.pipe(map((x) => x.theme as XI18nTheme)), { initialValue: zh_CN.theme });\r\n\r\n private unSubject = new Subject<void>();\r\n\r\n override writeValue(value: XColorsTheme) {\r\n this.value.set(value);\r\n if (this.value() && Object.keys(this.value()).length > 0) {\r\n this.theme.set({\r\n colors: this.themeService.getDefineColors(\r\n Object.assign({}, X_THEME_COLORS, this.value()),\r\n '',\r\n this.dark() as boolean\r\n )\r\n });\r\n this.formGroup().patchValue(this.theme().colors as XColorsTheme);\r\n }\r\n }\r\n\r\n constructor() {\r\n super();\r\n effect(() => this.setControlsLabel());\r\n effect(() => {\r\n if (this.dark()) {\r\n this.themeService.changed.next('dark');\r\n } else {\r\n this.themeService.changed.next('light');\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n this.theme.set(this.configService.getTheme(true));\r\n this.setControls();\r\n this.setDefaultColors();\r\n this.controls.update((controls) => {\r\n controls.map((x: XControl) => {\r\n x.value = (this.theme().colors as XColorsTheme)[x.id];\r\n });\r\n return [...controls];\r\n });\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.formGroup()\r\n .valueChanges.pipe(debounceTime(100), takeUntil(this.unSubject))\r\n .subscribe((x: XColorsTheme) => {\r\n this.beforeColors.set(this.currentColors());\r\n let changes = this.getChanges(x);\r\n if (this.isOneAndInColorKeys(changes)) {\r\n let [key, value] = Object.entries(changes)[0];\r\n let colors = !this.dark()\r\n ? this.themeService.setColorRoot(key, value, '')\r\n : this.themeService.setDarkColorRoot(key, value, '');\r\n Object.assign(x, colors);\r\n this.currentColors.set(x);\r\n this.formGroup().patchValue(x);\r\n } else {\r\n this.currentColors.set(x);\r\n this.value.set(x);\r\n this.configService.setTheme({ colors: x });\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.unSubject.next();\r\n this.unSubject.complete();\r\n }\r\n\r\n setControlsLabel() {\r\n Object.keys(this.locale()).forEach((x) => {\r\n let control = this.controls().find((y) => y.id === x);\r\n if (control) {\r\n control.label = (this.locale() as any)[x];\r\n control.change && control.change();\r\n }\r\n });\r\n }\r\n\r\n setDefaultColors() {\r\n this.beforeColors.set(this.theme().colors as XColorsTheme);\r\n this.currentColors.set(this.beforeColors());\r\n this.darkBeforeColors = this.beforeColors;\r\n }\r\n\r\n setControls() {\r\n [...this.controls()].forEach((control, index) => {\r\n let addControls: XControl[] = [];\r\n control.span = !this.showDetail() ? 6 : 5;\r\n this.width.set(!this.showDetail() ? '36rem' : '45rem');\r\n for (let amount of this.amounts()) {\r\n addControls.push({\r\n control: 'color-picker',\r\n id: `${control.id}${this.themeService.getSuffix(amount)}`,\r\n label: '',\r\n hidden: !this.showDetail\r\n });\r\n }\r\n this.controls.update((x) => {\r\n x.splice(index * this.amounts().length + index + 1, 0, ...addControls);\r\n return [...x];\r\n });\r\n });\r\n }\r\n\r\n default() {\r\n this.dark.set(false);\r\n let colors = this.themeService.getDefineColors(Object.assign({}, X_THEME_COLORS), '', this.dark());\r\n this.beforeColors.set(colors);\r\n this.currentColors.set(colors);\r\n this.formGroup().patchValue(colors);\r\n this.defaultClick.emit(colors);\r\n }\r\n\r\n isOneAndInColorKeys(colors: XColorsTheme) {\r\n const keys = Object.keys(colors);\r\n if (keys.length === 1 && X_THEME_COLOR_KEYS.includes(keys[0])) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n getChanges(colors: XColorsTheme) {\r\n let result: XColorsTheme = {};\r\n for (let color in colors) {\r\n if (colors[color] !== this.beforeColors()[color]) {\r\n result[color] = colors[color];\r\n }\r\n }\r\n return result;\r\n }\r\n\r\n darkChanges() {\r\n let colors = this.darkBeforeColors();\r\n if (this.dark()) {\r\n this.beforeColors.set(this.formGroup().value);\r\n this.darkBeforeColors.set(this.formGroup().value);\r\n colors = this.themeService.getDefineColors(\r\n Object.assign({}, this.themeService.getColorsInProperty(X_THEME_COLORS), X_THEME_DARK_COLORS),\r\n '',\r\n this.dark()\r\n );\r\n }\r\n this.formGroup().patchValue(colors);\r\n }\r\n}\r\n","<div class=\"x-theme\">\r\n <x-row>\r\n @if (showDark()) {\r\n <x-col [style.width.rem]=\"8\">\r\n <x-switch\r\n direction=\"row\"\r\n [label]=\"locale().darkMode!\"\r\n [(ngModel)]=\"dark\"\r\n (ngModelChange)=\"darkChanges()\"\r\n ></x-switch>\r\n </x-col>\r\n }\r\n <x-col [style.width.rem]=\"8\">\r\n <x-button (click)=\"default()\">{{ locale().initDefault }}</x-button>\r\n </x-col>\r\n </x-row>\r\n <x-form [formGroup]=\"formGroup()\" [controls]=\"controls()\" [width]=\"width()\" span=\"2\" space=\"1\"></x-form>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { XThemeComponent } from './theme.component';\r\n\r\n@NgModule({\r\n exports: [XThemeComponent],\r\n imports: [XThemeComponent]\r\n})\r\nexport class XThemeModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ng-nest-ui-theme.mjs","sources":["../../../../lib/ng-nest/ui/theme/theme.property.ts","../../../../lib/ng-nest/ui/theme/theme.component.ts","../../../../lib/ng-nest/ui/theme/theme.component.html","../../../../lib/ng-nest/ui/theme/theme.module.ts","../../../../lib/ng-nest/ui/theme/ng-nest-ui-theme.ts"],"sourcesContent":["import { XColorsTheme, XBoolean, XToBoolean } from '@ng-nest/ui/core';\r\nimport { Component, input, model, output } from '@angular/core';\r\nimport { XFormControlFunction } from '@ng-nest/ui/base-form';\r\n\r\n/**\r\n * Theme\r\n * @selector x-theme\r\n * @decorator component\r\n */\r\nexport const XThemePrefix = 'x-theme';\r\nconst X_THEME_CONFIG_NAME = 'theme';\r\n\r\n/**\r\n * @zh_CN 混合的颜色占比\r\n * @en_US Proportion of mixed colors\r\n */\r\nexport const XThemeAmounts = [\r\n -0.1, -0.2, -0.3, -0.4, -0.5, -0.6, -0.7, -0.8, -0.9, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9\r\n];\r\n\r\n/**\r\n * Theme Property\r\n */\r\n@Component({ selector: `${XThemePrefix}-property`, template: '' })\r\nexport class XThemeProperty extends XFormControlFunction(X_THEME_CONFIG_NAME) {\r\n /**\r\n * @zh_CN 参数前缀\r\n * @en_US Parameter prefix\r\n */\r\n readonly prefix = input<string>('--x-');\r\n /**\r\n * @zh_CN 混合的颜色占比\r\n * @en_US Proportion of mixed colors\r\n */\r\n readonly amounts = input<number[]>(this.config?.amounts ?? XThemeAmounts);\r\n /**\r\n * @zh_CN 显示暗黑模式的设置\r\n * @en_US Show dark mode settings\r\n */\r\n readonly showDark = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 详细设置\r\n * @en_US Detailed settings\r\n */\r\n readonly showDetail = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 暗黑模式\r\n * @en_US Dark mode\r\n */\r\n readonly dark = model(false);\r\n /**\r\n * @zh_CN 初始化默认值事件\r\n * @en_US Initialize default value event\r\n */\r\n readonly defaultClick = output<XColorsTheme>();\r\n}\r\n","import {\r\n Component,\r\n OnInit,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n OnDestroy,\r\n inject,\r\n AfterViewInit,\r\n signal,\r\n effect\r\n} from '@angular/core';\r\nimport { XThemeProperty } from './theme.property';\r\nimport {\r\n XConfigService,\r\n XColorsTheme,\r\n XTheme,\r\n X_THEME_COLOR_KEYS,\r\n X_THEME_COLORS,\r\n X_THEME_DARK_COLORS\r\n} from '@ng-nest/ui/core';\r\nimport { FormsModule, ReactiveFormsModule, UntypedFormGroup } from '@angular/forms';\r\nimport { XControl, XFormComponent } from '@ng-nest/ui/form';\r\nimport { debounceTime, takeUntil, map } from 'rxjs/operators';\r\nimport { Subject } from 'rxjs';\r\nimport { XI18nService, XI18nTheme, zh_CN } from '@ng-nest/ui/i18n';\r\nimport { XValueAccessor } from '@ng-nest/ui/base-form';\r\nimport { XSwitchComponent } from '@ng-nest/ui/switch';\r\nimport { XButtonComponent } from '@ng-nest/ui/button';\r\nimport { XColComponent, XRowComponent } from '@ng-nest/ui/layout';\r\nimport { toSignal } from '@angular/core/rxjs-interop';\r\n\r\n@Component({\r\n selector: 'x-theme',\r\n imports: [\r\n FormsModule,\r\n ReactiveFormsModule,\r\n XSwitchComponent,\r\n XButtonComponent,\r\n XRowComponent,\r\n XColComponent,\r\n XFormComponent\r\n ],\r\n templateUrl: './theme.component.html',\r\n styleUrls: ['./style/index.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [XValueAccessor(XThemeComponent)]\r\n})\r\nexport class XThemeComponent extends XThemeProperty implements OnInit, AfterViewInit, OnDestroy {\r\n public i18n = inject(XI18nService);\r\n configService = inject(XConfigService);\r\n themeService = this.configService.themeService;\r\n\r\n formGroup = signal(new UntypedFormGroup({}));\r\n theme = signal<XTheme>({ colors: {} });\r\n width = signal('45rem');\r\n beforeColors = signal<XColorsTheme>({});\r\n currentColors = signal<XColorsTheme>({});\r\n darkBeforeColors = signal<XColorsTheme>({});\r\n controls = signal<XControl[]>([\r\n { control: 'color-picker', id: 'primary', label: '主色', span: 5 },\r\n { control: 'color-picker', id: 'success', label: '成功', span: 5 },\r\n { control: 'color-picker', id: 'warning', label: '警告', span: 5 },\r\n { control: 'color-picker', id: 'danger', label: '危险', span: 5 },\r\n { control: 'color-picker', id: 'info', label: '信息', span: 5 },\r\n { control: 'color-picker', id: 'background', label: '背景', span: 5 },\r\n { control: 'color-picker', id: 'border', label: '边框', span: 5 },\r\n { control: 'color-picker', id: 'text', label: '文字', span: 5 }\r\n ]);\r\n\r\n override value = signal<XColorsTheme>({});\r\n\r\n locale = toSignal(this.i18n.localeChange.pipe(map((x) => x.theme as XI18nTheme)), { initialValue: zh_CN.theme });\r\n\r\n private unSubject = new Subject<void>();\r\n\r\n override writeValue(value: XColorsTheme) {\r\n this.value.set(value);\r\n if (this.value() && Object.keys(this.value()).length > 0) {\r\n this.theme.set({\r\n colors: this.themeService.getDefineColors(\r\n Object.assign({}, X_THEME_COLORS, this.value()),\r\n '',\r\n this.dark() as boolean\r\n )\r\n });\r\n this.formGroup().patchValue(this.theme().colors as XColorsTheme);\r\n }\r\n }\r\n\r\n constructor() {\r\n super();\r\n effect(() => this.setControlsLabel());\r\n effect(() => {\r\n if (this.dark()) {\r\n this.themeService.changed.next('dark');\r\n } else {\r\n this.themeService.changed.next('light');\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n this.theme.set(this.configService.getTheme(true));\r\n this.setControls();\r\n this.setDefaultColors();\r\n this.controls.update((controls) => {\r\n controls.map((x: XControl) => {\r\n x.value = (this.theme().colors as XColorsTheme)[x.id];\r\n });\r\n return [...controls];\r\n });\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.formGroup()\r\n .valueChanges.pipe(debounceTime(100), takeUntil(this.unSubject))\r\n .subscribe((x: XColorsTheme) => {\r\n this.beforeColors.set(this.currentColors());\r\n let changes = this.getChanges(x);\r\n if (this.isOneAndInColorKeys(changes)) {\r\n let [key, value] = Object.entries(changes)[0];\r\n let colors = !this.dark()\r\n ? this.themeService.setColorRoot(key, value, '')\r\n : this.themeService.setDarkColorRoot(key, value, '');\r\n Object.assign(x, colors);\r\n this.currentColors.set(x);\r\n this.formGroup().patchValue(x);\r\n } else {\r\n this.currentColors.set(x);\r\n this.value.set(x);\r\n this.configService.setTheme({ colors: x });\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.unSubject.next();\r\n this.unSubject.complete();\r\n }\r\n\r\n setControlsLabel() {\r\n Object.keys(this.locale()).forEach((x) => {\r\n let control = this.controls().find((y) => y.id === x);\r\n if (control) {\r\n control.label = (this.locale() as any)[x];\r\n control.change && control.change();\r\n }\r\n });\r\n }\r\n\r\n setDefaultColors() {\r\n this.beforeColors.set(this.theme().colors as XColorsTheme);\r\n this.currentColors.set(this.beforeColors());\r\n this.darkBeforeColors = this.beforeColors;\r\n }\r\n\r\n setControls() {\r\n [...this.controls()].forEach((control, index) => {\r\n let addControls: XControl[] = [];\r\n control.span = !this.showDetail() ? 6 : 5;\r\n this.width.set(!this.showDetail() ? '36rem' : '45rem');\r\n for (let amount of this.amounts()) {\r\n addControls.push({\r\n control: 'color-picker',\r\n id: `${control.id}${this.themeService.getSuffix(amount)}`,\r\n label: '',\r\n hidden: !this.showDetail\r\n });\r\n }\r\n this.controls.update((x) => {\r\n x.splice(index * this.amounts().length + index + 1, 0, ...addControls);\r\n return [...x];\r\n });\r\n });\r\n }\r\n\r\n default() {\r\n this.dark.set(false);\r\n let colors = this.themeService.getDefineColors(Object.assign({}, X_THEME_COLORS), '', this.dark());\r\n this.beforeColors.set(colors);\r\n this.currentColors.set(colors);\r\n this.formGroup().patchValue(colors);\r\n this.defaultClick.emit(colors);\r\n }\r\n\r\n isOneAndInColorKeys(colors: XColorsTheme) {\r\n const keys = Object.keys(colors);\r\n if (keys.length === 1 && X_THEME_COLOR_KEYS.includes(keys[0])) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n getChanges(colors: XColorsTheme) {\r\n let result: XColorsTheme = {};\r\n for (let color in colors) {\r\n if (colors[color] !== this.beforeColors()[color]) {\r\n result[color] = colors[color];\r\n }\r\n }\r\n return result;\r\n }\r\n\r\n darkChanges() {\r\n let colors = this.darkBeforeColors();\r\n if (this.dark()) {\r\n this.beforeColors.set(this.formGroup().value);\r\n this.darkBeforeColors.set(this.formGroup().value);\r\n colors = this.themeService.getDefineColors(\r\n Object.assign({}, this.themeService.getColorsInProperty(X_THEME_COLORS), X_THEME_DARK_COLORS),\r\n '',\r\n this.dark()\r\n );\r\n }\r\n this.formGroup().patchValue(colors);\r\n }\r\n}\r\n","<div class=\"x-theme\">\r\n <x-row>\r\n @if (showDark()) {\r\n <x-col [style.width.rem]=\"8\">\r\n <x-switch\r\n direction=\"row\"\r\n [label]=\"locale().darkMode!\"\r\n [(ngModel)]=\"dark\"\r\n (ngModelChange)=\"darkChanges()\"\r\n ></x-switch>\r\n </x-col>\r\n }\r\n <x-col [style.width.rem]=\"8\">\r\n <x-button (click)=\"default()\">{{ locale().initDefault }}</x-button>\r\n </x-col>\r\n </x-row>\r\n <x-form [formGroup]=\"formGroup()\" [controls]=\"controls()\" [width]=\"width()\" span=\"2\" space=\"1\"></x-form>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { XThemeComponent } from './theme.component';\r\n\r\n@NgModule({\r\n exports: [XThemeComponent],\r\n imports: [XThemeComponent]\r\n})\r\nexport class XThemeModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -67,10 +67,10 @@ class XThoughtChainProperty extends XPropertyFunction(X_THOUGHT_CHAIN_CONFIG_NAM
67
67
  */
68
68
  this.loadingType = input(this.config?.loadingType ?? 'circular', ...(ngDevMode ? [{ debugName: "loadingType" }] : []));
69
69
  }
70
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XThoughtChainProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
71
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.5", type: XThoughtChainProperty, isStandalone: true, selector: "x-thought-chain-property", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null }, showNumber: { classPropertyName: "showNumber", publicName: "showNumber", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, wrapper: { classPropertyName: "wrapper", publicName: "wrapper", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, extra: { classPropertyName: "extra", publicName: "extra", isSignal: true, isRequired: false, transformFunction: null }, content: { classPropertyName: "content", publicName: "content", isSignal: true, isRequired: false, transformFunction: null }, collapsible: { classPropertyName: "collapsible", publicName: "collapsible", isSignal: true, isRequired: false, transformFunction: null }, loadingType: { classPropertyName: "loadingType", publicName: "loadingType", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { data: "dataChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
70
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XThoughtChainProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
71
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.0.0", type: XThoughtChainProperty, isStandalone: true, selector: "x-thought-chain-property", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null }, showNumber: { classPropertyName: "showNumber", publicName: "showNumber", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, wrapper: { classPropertyName: "wrapper", publicName: "wrapper", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, extra: { classPropertyName: "extra", publicName: "extra", isSignal: true, isRequired: false, transformFunction: null }, content: { classPropertyName: "content", publicName: "content", isSignal: true, isRequired: false, transformFunction: null }, collapsible: { classPropertyName: "collapsible", publicName: "collapsible", isSignal: true, isRequired: false, transformFunction: null }, loadingType: { classPropertyName: "loadingType", publicName: "loadingType", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { data: "dataChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
72
72
  }
73
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XThoughtChainProperty, decorators: [{
73
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XThoughtChainProperty, decorators: [{
74
74
  type: Component,
75
75
  args: [{ selector: `${XThoughtChainPrefix}-property`, template: '' }]
76
76
  }], propDecorators: { data: [{ type: i0.Input, args: [{ isSignal: true, alias: "data", required: false }] }, { type: i0.Output, args: ["dataChange"] }], showNumber: [{ type: i0.Input, args: [{ isSignal: true, alias: "showNumber", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], wrapper: [{ type: i0.Input, args: [{ isSignal: true, alias: "wrapper", required: false }] }], icon: [{ type: i0.Input, args: [{ isSignal: true, alias: "icon", required: false }] }], extra: [{ type: i0.Input, args: [{ isSignal: true, alias: "extra", required: false }] }], content: [{ type: i0.Input, args: [{ isSignal: true, alias: "content", required: false }] }], collapsible: [{ type: i0.Input, args: [{ isSignal: true, alias: "collapsible", required: false }] }], loadingType: [{ type: i0.Input, args: [{ isSignal: true, alias: "loadingType", required: false }] }] } });
@@ -92,20 +92,20 @@ class XThoughtChainComponent extends XThoughtChainProperty {
92
92
  removeNode(node) {
93
93
  this.data.update((x) => [...x.filter((y) => y.id !== node.id)]);
94
94
  }
95
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XThoughtChainComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
96
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.5", type: XThoughtChainComponent, isStandalone: true, selector: "x-thought-chain", usesInheritance: true, ngImport: i0, template: "<div class=\"x-thought-chain\">\r\n <x-timeline\r\n [data]=\"data()\"\r\n [showNumber]=\"showNumber()\"\r\n [icon]=\"iconTpl\"\r\n [wrapper]=\"wrapper() ?? wrapperTpl\"\r\n [size]=\"size()\"\r\n ></x-timeline>\r\n\r\n <ng-template #iconTpl let-node=\"$node\" let-index=\"$index\">\r\n <div\r\n class=\"x-thought-chain-icon\"\r\n [class.x-thought-chain-success]=\"node.status === 'success'\"\r\n [class.x-thought-chain-error]=\"node.status === 'error'\"\r\n [class.x-thought-chain-pending]=\"node.status === 'pending'\"\r\n [style.backgroundColor]=\"node.color\"\r\n >\r\n @if (showNumber() && !node.icon && !node.loading && node.status !== 'pending') {\r\n {{ index + 1 }}\r\n }\r\n @if (node.icon && !node.loading && node.status !== 'pending') {\r\n <x-icon [type]=\"node.icon\"></x-icon>\r\n }\r\n @if (node.loading || node.status === 'pending') {\r\n <x-loading inline [x-loading]=\"true\" [size]=\"size()\" [type]=\"loadingType()\"></x-loading>\r\n }\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template #wrapperTpl let-node=\"$node\" let-index=\"$index\">\r\n @if (collapsible()) {\r\n <x-collapse class=\"x-thought-chain-collapse\" ghost iconPosition=\"left\">\r\n <x-collapse-panel [label]=\"labelTpl\">\r\n <ng-container *xOutlet=\"contentTpl\"></ng-container>\r\n </x-collapse-panel>\r\n </x-collapse>\r\n } @else {\r\n <ng-container *xOutlet=\"labelTpl\"></ng-container>\r\n <ng-container *xOutlet=\"contentTpl\"></ng-container>\r\n }\r\n <ng-template #labelTpl>\r\n <div class=\"x-thought-chain-wrapper\">\r\n <div class=\"x-thought-chain-inner\">\r\n <div class=\"x-thought-chain-label\">{{ node.label }}</div>\r\n <div class=\"x-thought-chain-description\">{{ node.description }}</div>\r\n </div>\r\n <div class=\"x-thought-chain-extra\">\r\n <ng-container *xOutlet=\"extra(); context: { $node: node, $index: index }\"></ng-container>\r\n </div>\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template #contentTpl>\r\n @if (node.content || content()) {\r\n @if (content()) {\r\n <div class=\"x-thought-chain-content\">\r\n <ng-container *xOutlet=\"content(); context: { $node: node, $index: index }\"></ng-container>\r\n </div>\r\n } @else {\r\n <div class=\"x-thought-chain-content\" [innerHTML]=\"node.content\"></div>\r\n }\r\n }\r\n </ng-template>\r\n </ng-template>\r\n</div>\r\n", styles: [".x-thought-chain{margin:0;padding:0}.x-thought-chain-wrapper{display:flex}.x-thought-chain-inner{flex:1;display:flex;flex-direction:column}.x-thought-chain-label{font-weight:600}.x-thought-chain-description{color:var(--x-text-400)}.x-thought-chain-content{position:relative;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);background-color:var(--x-white)}.x-thought-chain-collapse .x-collapse-panel-header{padding:0;align-items:flex-start}.x-thought-chain-icon{width:100%;height:100%;border-radius:50%;display:flex;justify-content:center;align-items:center}.x-thought-chain-success{background-color:var(--x-success)}.x-thought-chain-error{background-color:var(--x-danger)}.x-thought-chain .x-timeline-big .x-thought-chain-label{line-height:calc(var(--x-height-big) - .5rem)}.x-thought-chain .x-timeline-big .x-thought-chain-content{line-height:calc(var(--x-height-big) - .75rem);padding:var(--x-padding-big)}.x-thought-chain .x-timeline-big .x-thought-chain-collapse .x-collapse-panel-header>.x-icon{height:calc(var(--x-height-big) - .5rem);display:flex;align-items:center}.x-thought-chain .x-timeline-big .x-thought-chain-collapse .x-collapse-panel-content{padding:calc(var(--x-padding-big) * .5) 0}.x-thought-chain .x-timeline-large .x-thought-chain-label{line-height:calc(var(--x-height-large) - .5rem)}.x-thought-chain .x-timeline-large .x-thought-chain-content{line-height:calc(var(--x-height-large) - .75rem);padding:var(--x-padding-large)}.x-thought-chain .x-timeline-large .x-thought-chain-collapse .x-collapse-panel-header>.x-icon{height:calc(var(--x-height-large) - .5rem);display:flex;align-items:center}.x-thought-chain .x-timeline-large .x-thought-chain-collapse .x-collapse-panel-content{padding:calc(var(--x-padding-large) * .5) 0}.x-thought-chain .x-timeline-medium .x-thought-chain-label{line-height:calc(var(--x-height-medium) - .5rem)}.x-thought-chain .x-timeline-medium .x-thought-chain-content{line-height:calc(var(--x-height-medium) - .75rem);padding:var(--x-padding-medium)}.x-thought-chain .x-timeline-medium .x-thought-chain-collapse .x-collapse-panel-header>.x-icon{height:calc(var(--x-height-medium) - .5rem);display:flex;align-items:center}.x-thought-chain .x-timeline-medium .x-thought-chain-collapse .x-collapse-panel-content{padding:calc(var(--x-padding-medium) * .5) 0}.x-thought-chain .x-timeline-small .x-thought-chain-label{line-height:calc(var(--x-height-small) - .5rem)}.x-thought-chain .x-timeline-small .x-thought-chain-content{line-height:calc(var(--x-height-small) - .75rem);padding:var(--x-padding-small)}.x-thought-chain .x-timeline-small .x-thought-chain-collapse .x-collapse-panel-header>.x-icon{height:calc(var(--x-height-small) - .5rem);display:flex;align-items:center}.x-thought-chain .x-timeline-small .x-thought-chain-collapse .x-collapse-panel-content{padding:calc(var(--x-padding-small) * .5) 0}.x-thought-chain .x-timeline-mini .x-thought-chain-label{line-height:calc(var(--x-height-mini) - .5rem)}.x-thought-chain .x-timeline-mini .x-thought-chain-content{line-height:calc(var(--x-height-mini) - .75rem);padding:var(--x-padding-mini)}.x-thought-chain .x-timeline-mini .x-thought-chain-collapse .x-collapse-panel-header>.x-icon{height:calc(var(--x-height-mini) - .5rem);display:flex;align-items:center}.x-thought-chain .x-timeline-mini .x-thought-chain-collapse .x-collapse-panel-content{padding:calc(var(--x-padding-mini) * .5) 0}\n"], dependencies: [{ kind: "component", type: XTimelineComponent, selector: "x-timeline" }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }, { kind: "component", type: XIconComponent, selector: "x-icon" }, { kind: "component", type: XLoadingComponent, selector: "x-loading, [x-loading]" }, { kind: "ngmodule", type: XCollapseModule }, { kind: "component", type: i1.XCollapseComponent, selector: "x-collapse" }, { kind: "component", type: i1.XCollapsePanelComponent, selector: "x-collapse-panel" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
95
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XThoughtChainComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
96
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.0", type: XThoughtChainComponent, isStandalone: true, selector: "x-thought-chain", usesInheritance: true, ngImport: i0, template: "<div class=\"x-thought-chain\">\r\n <x-timeline\r\n [data]=\"data()\"\r\n [showNumber]=\"showNumber()\"\r\n [icon]=\"iconTpl\"\r\n [wrapper]=\"wrapper() ?? wrapperTpl\"\r\n [size]=\"size()\"\r\n ></x-timeline>\r\n\r\n <ng-template #iconTpl let-node=\"$node\" let-index=\"$index\">\r\n <div\r\n class=\"x-thought-chain-icon\"\r\n [class.x-thought-chain-success]=\"node.status === 'success'\"\r\n [class.x-thought-chain-error]=\"node.status === 'error'\"\r\n [class.x-thought-chain-pending]=\"node.status === 'pending'\"\r\n [style.backgroundColor]=\"node.color\"\r\n >\r\n @if (showNumber() && !node.icon && !node.loading && node.status !== 'pending') {\r\n {{ index + 1 }}\r\n }\r\n @if (node.icon && !node.loading && node.status !== 'pending') {\r\n <x-icon [type]=\"node.icon\"></x-icon>\r\n }\r\n @if (node.loading || node.status === 'pending') {\r\n <x-loading inline [x-loading]=\"true\" [size]=\"size()\" [type]=\"loadingType()\"></x-loading>\r\n }\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template #wrapperTpl let-node=\"$node\" let-index=\"$index\">\r\n @if (collapsible()) {\r\n <x-collapse class=\"x-thought-chain-collapse\" ghost iconPosition=\"left\">\r\n <x-collapse-panel [label]=\"labelTpl\">\r\n <ng-container *xOutlet=\"contentTpl\"></ng-container>\r\n </x-collapse-panel>\r\n </x-collapse>\r\n } @else {\r\n <ng-container *xOutlet=\"labelTpl\"></ng-container>\r\n <ng-container *xOutlet=\"contentTpl\"></ng-container>\r\n }\r\n <ng-template #labelTpl>\r\n <div class=\"x-thought-chain-wrapper\">\r\n <div class=\"x-thought-chain-inner\">\r\n <div class=\"x-thought-chain-label\">{{ node.label }}</div>\r\n <div class=\"x-thought-chain-description\">{{ node.description }}</div>\r\n </div>\r\n <div class=\"x-thought-chain-extra\">\r\n <ng-container *xOutlet=\"extra(); context: { $node: node, $index: index }\"></ng-container>\r\n </div>\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template #contentTpl>\r\n @if (node.content || content()) {\r\n @if (content()) {\r\n <div class=\"x-thought-chain-content\">\r\n <ng-container *xOutlet=\"content(); context: { $node: node, $index: index }\"></ng-container>\r\n </div>\r\n } @else {\r\n <div class=\"x-thought-chain-content\" [innerHTML]=\"node.content\"></div>\r\n }\r\n }\r\n </ng-template>\r\n </ng-template>\r\n</div>\r\n", styles: [".x-thought-chain{margin:0;padding:0}.x-thought-chain-wrapper{display:flex}.x-thought-chain-inner{flex:1;display:flex;flex-direction:column}.x-thought-chain-label{font-weight:600}.x-thought-chain-description{color:var(--x-text-400)}.x-thought-chain-content{position:relative;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);background-color:var(--x-white)}.x-thought-chain-collapse .x-collapse-panel-header{padding:0;align-items:flex-start}.x-thought-chain-icon{width:100%;height:100%;border-radius:50%;display:flex;justify-content:center;align-items:center}.x-thought-chain-success{background-color:var(--x-success)}.x-thought-chain-error{background-color:var(--x-danger)}.x-thought-chain .x-timeline-big .x-thought-chain-label{line-height:calc(var(--x-height-big) - .5rem)}.x-thought-chain .x-timeline-big .x-thought-chain-content{line-height:calc(var(--x-height-big) - .75rem);padding:var(--x-padding-big)}.x-thought-chain .x-timeline-big .x-thought-chain-collapse .x-collapse-panel-header>.x-icon{height:calc(var(--x-height-big) - .5rem);display:flex;align-items:center}.x-thought-chain .x-timeline-big .x-thought-chain-collapse .x-collapse-panel-content{padding:calc(var(--x-padding-big) * .5) 0}.x-thought-chain .x-timeline-large .x-thought-chain-label{line-height:calc(var(--x-height-large) - .5rem)}.x-thought-chain .x-timeline-large .x-thought-chain-content{line-height:calc(var(--x-height-large) - .75rem);padding:var(--x-padding-large)}.x-thought-chain .x-timeline-large .x-thought-chain-collapse .x-collapse-panel-header>.x-icon{height:calc(var(--x-height-large) - .5rem);display:flex;align-items:center}.x-thought-chain .x-timeline-large .x-thought-chain-collapse .x-collapse-panel-content{padding:calc(var(--x-padding-large) * .5) 0}.x-thought-chain .x-timeline-medium .x-thought-chain-label{line-height:calc(var(--x-height-medium) - .5rem)}.x-thought-chain .x-timeline-medium .x-thought-chain-content{line-height:calc(var(--x-height-medium) - .75rem);padding:var(--x-padding-medium)}.x-thought-chain .x-timeline-medium .x-thought-chain-collapse .x-collapse-panel-header>.x-icon{height:calc(var(--x-height-medium) - .5rem);display:flex;align-items:center}.x-thought-chain .x-timeline-medium .x-thought-chain-collapse .x-collapse-panel-content{padding:calc(var(--x-padding-medium) * .5) 0}.x-thought-chain .x-timeline-small .x-thought-chain-label{line-height:calc(var(--x-height-small) - .5rem)}.x-thought-chain .x-timeline-small .x-thought-chain-content{line-height:calc(var(--x-height-small) - .75rem);padding:var(--x-padding-small)}.x-thought-chain .x-timeline-small .x-thought-chain-collapse .x-collapse-panel-header>.x-icon{height:calc(var(--x-height-small) - .5rem);display:flex;align-items:center}.x-thought-chain .x-timeline-small .x-thought-chain-collapse .x-collapse-panel-content{padding:calc(var(--x-padding-small) * .5) 0}.x-thought-chain .x-timeline-mini .x-thought-chain-label{line-height:calc(var(--x-height-mini) - .5rem)}.x-thought-chain .x-timeline-mini .x-thought-chain-content{line-height:calc(var(--x-height-mini) - .75rem);padding:var(--x-padding-mini)}.x-thought-chain .x-timeline-mini .x-thought-chain-collapse .x-collapse-panel-header>.x-icon{height:calc(var(--x-height-mini) - .5rem);display:flex;align-items:center}.x-thought-chain .x-timeline-mini .x-thought-chain-collapse .x-collapse-panel-content{padding:calc(var(--x-padding-mini) * .5) 0}\n"], dependencies: [{ kind: "component", type: XTimelineComponent, selector: "x-timeline" }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }, { kind: "component", type: XIconComponent, selector: "x-icon" }, { kind: "component", type: XLoadingComponent, selector: "x-loading, [x-loading]" }, { kind: "ngmodule", type: XCollapseModule }, { kind: "component", type: i1.XCollapseComponent, selector: "x-collapse" }, { kind: "component", type: i1.XCollapsePanelComponent, selector: "x-collapse-panel" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
97
97
  }
98
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XThoughtChainComponent, decorators: [{
98
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XThoughtChainComponent, decorators: [{
99
99
  type: Component,
100
100
  args: [{ selector: 'x-thought-chain', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, imports: [XTimelineComponent, XOutletDirective, XIconComponent, XLoadingComponent, XCollapseModule], template: "<div class=\"x-thought-chain\">\r\n <x-timeline\r\n [data]=\"data()\"\r\n [showNumber]=\"showNumber()\"\r\n [icon]=\"iconTpl\"\r\n [wrapper]=\"wrapper() ?? wrapperTpl\"\r\n [size]=\"size()\"\r\n ></x-timeline>\r\n\r\n <ng-template #iconTpl let-node=\"$node\" let-index=\"$index\">\r\n <div\r\n class=\"x-thought-chain-icon\"\r\n [class.x-thought-chain-success]=\"node.status === 'success'\"\r\n [class.x-thought-chain-error]=\"node.status === 'error'\"\r\n [class.x-thought-chain-pending]=\"node.status === 'pending'\"\r\n [style.backgroundColor]=\"node.color\"\r\n >\r\n @if (showNumber() && !node.icon && !node.loading && node.status !== 'pending') {\r\n {{ index + 1 }}\r\n }\r\n @if (node.icon && !node.loading && node.status !== 'pending') {\r\n <x-icon [type]=\"node.icon\"></x-icon>\r\n }\r\n @if (node.loading || node.status === 'pending') {\r\n <x-loading inline [x-loading]=\"true\" [size]=\"size()\" [type]=\"loadingType()\"></x-loading>\r\n }\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template #wrapperTpl let-node=\"$node\" let-index=\"$index\">\r\n @if (collapsible()) {\r\n <x-collapse class=\"x-thought-chain-collapse\" ghost iconPosition=\"left\">\r\n <x-collapse-panel [label]=\"labelTpl\">\r\n <ng-container *xOutlet=\"contentTpl\"></ng-container>\r\n </x-collapse-panel>\r\n </x-collapse>\r\n } @else {\r\n <ng-container *xOutlet=\"labelTpl\"></ng-container>\r\n <ng-container *xOutlet=\"contentTpl\"></ng-container>\r\n }\r\n <ng-template #labelTpl>\r\n <div class=\"x-thought-chain-wrapper\">\r\n <div class=\"x-thought-chain-inner\">\r\n <div class=\"x-thought-chain-label\">{{ node.label }}</div>\r\n <div class=\"x-thought-chain-description\">{{ node.description }}</div>\r\n </div>\r\n <div class=\"x-thought-chain-extra\">\r\n <ng-container *xOutlet=\"extra(); context: { $node: node, $index: index }\"></ng-container>\r\n </div>\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template #contentTpl>\r\n @if (node.content || content()) {\r\n @if (content()) {\r\n <div class=\"x-thought-chain-content\">\r\n <ng-container *xOutlet=\"content(); context: { $node: node, $index: index }\"></ng-container>\r\n </div>\r\n } @else {\r\n <div class=\"x-thought-chain-content\" [innerHTML]=\"node.content\"></div>\r\n }\r\n }\r\n </ng-template>\r\n </ng-template>\r\n</div>\r\n", styles: [".x-thought-chain{margin:0;padding:0}.x-thought-chain-wrapper{display:flex}.x-thought-chain-inner{flex:1;display:flex;flex-direction:column}.x-thought-chain-label{font-weight:600}.x-thought-chain-description{color:var(--x-text-400)}.x-thought-chain-content{position:relative;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);background-color:var(--x-white)}.x-thought-chain-collapse .x-collapse-panel-header{padding:0;align-items:flex-start}.x-thought-chain-icon{width:100%;height:100%;border-radius:50%;display:flex;justify-content:center;align-items:center}.x-thought-chain-success{background-color:var(--x-success)}.x-thought-chain-error{background-color:var(--x-danger)}.x-thought-chain .x-timeline-big .x-thought-chain-label{line-height:calc(var(--x-height-big) - .5rem)}.x-thought-chain .x-timeline-big .x-thought-chain-content{line-height:calc(var(--x-height-big) - .75rem);padding:var(--x-padding-big)}.x-thought-chain .x-timeline-big .x-thought-chain-collapse .x-collapse-panel-header>.x-icon{height:calc(var(--x-height-big) - .5rem);display:flex;align-items:center}.x-thought-chain .x-timeline-big .x-thought-chain-collapse .x-collapse-panel-content{padding:calc(var(--x-padding-big) * .5) 0}.x-thought-chain .x-timeline-large .x-thought-chain-label{line-height:calc(var(--x-height-large) - .5rem)}.x-thought-chain .x-timeline-large .x-thought-chain-content{line-height:calc(var(--x-height-large) - .75rem);padding:var(--x-padding-large)}.x-thought-chain .x-timeline-large .x-thought-chain-collapse .x-collapse-panel-header>.x-icon{height:calc(var(--x-height-large) - .5rem);display:flex;align-items:center}.x-thought-chain .x-timeline-large .x-thought-chain-collapse .x-collapse-panel-content{padding:calc(var(--x-padding-large) * .5) 0}.x-thought-chain .x-timeline-medium .x-thought-chain-label{line-height:calc(var(--x-height-medium) - .5rem)}.x-thought-chain .x-timeline-medium .x-thought-chain-content{line-height:calc(var(--x-height-medium) - .75rem);padding:var(--x-padding-medium)}.x-thought-chain .x-timeline-medium .x-thought-chain-collapse .x-collapse-panel-header>.x-icon{height:calc(var(--x-height-medium) - .5rem);display:flex;align-items:center}.x-thought-chain .x-timeline-medium .x-thought-chain-collapse .x-collapse-panel-content{padding:calc(var(--x-padding-medium) * .5) 0}.x-thought-chain .x-timeline-small .x-thought-chain-label{line-height:calc(var(--x-height-small) - .5rem)}.x-thought-chain .x-timeline-small .x-thought-chain-content{line-height:calc(var(--x-height-small) - .75rem);padding:var(--x-padding-small)}.x-thought-chain .x-timeline-small .x-thought-chain-collapse .x-collapse-panel-header>.x-icon{height:calc(var(--x-height-small) - .5rem);display:flex;align-items:center}.x-thought-chain .x-timeline-small .x-thought-chain-collapse .x-collapse-panel-content{padding:calc(var(--x-padding-small) * .5) 0}.x-thought-chain .x-timeline-mini .x-thought-chain-label{line-height:calc(var(--x-height-mini) - .5rem)}.x-thought-chain .x-timeline-mini .x-thought-chain-content{line-height:calc(var(--x-height-mini) - .75rem);padding:var(--x-padding-mini)}.x-thought-chain .x-timeline-mini .x-thought-chain-collapse .x-collapse-panel-header>.x-icon{height:calc(var(--x-height-mini) - .5rem);display:flex;align-items:center}.x-thought-chain .x-timeline-mini .x-thought-chain-collapse .x-collapse-panel-content{padding:calc(var(--x-padding-mini) * .5) 0}\n"] }]
101
101
  }] });
102
102
 
103
103
  class XThoughtChainModule {
104
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XThoughtChainModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
105
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.5", ngImport: i0, type: XThoughtChainModule, imports: [XThoughtChainComponent], exports: [XThoughtChainComponent] }); }
106
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XThoughtChainModule, imports: [XThoughtChainComponent] }); }
104
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XThoughtChainModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
105
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.0", ngImport: i0, type: XThoughtChainModule, imports: [XThoughtChainComponent], exports: [XThoughtChainComponent] }); }
106
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XThoughtChainModule, imports: [XThoughtChainComponent] }); }
107
107
  }
108
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XThoughtChainModule, decorators: [{
108
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XThoughtChainModule, decorators: [{
109
109
  type: NgModule,
110
110
  args: [{
111
111
  exports: [XThoughtChainComponent],
@@ -67,20 +67,20 @@ class XTimeAgoPipe extends DatePipe {
67
67
  result = this.localeI18n()?.just;
68
68
  return result;
69
69
  }
70
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XTimeAgoPipe, deps: null, target: i0.ɵɵFactoryTarget.Pipe }); }
71
- /** @nocollapse */ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.3.5", ngImport: i0, type: XTimeAgoPipe, isStandalone: true, name: "xTimeAgo" }); }
70
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XTimeAgoPipe, deps: null, target: i0.ɵɵFactoryTarget.Pipe }); }
71
+ /** @nocollapse */ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.0.0", ngImport: i0, type: XTimeAgoPipe, isStandalone: true, name: "xTimeAgo" }); }
72
72
  }
73
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XTimeAgoPipe, decorators: [{
73
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XTimeAgoPipe, decorators: [{
74
74
  type: Pipe,
75
75
  args: [{ name: `${XTimeAgoPrefix}` }]
76
76
  }] });
77
77
 
78
78
  class XTimeAgoModule {
79
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XTimeAgoModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
80
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.5", ngImport: i0, type: XTimeAgoModule, imports: [XTimeAgoPipe], exports: [XTimeAgoPipe] }); }
81
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XTimeAgoModule }); }
79
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XTimeAgoModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
80
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.0", ngImport: i0, type: XTimeAgoModule, imports: [XTimeAgoPipe], exports: [XTimeAgoPipe] }); }
81
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XTimeAgoModule }); }
82
82
  }
83
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.5", ngImport: i0, type: XTimeAgoModule, decorators: [{
83
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0", ngImport: i0, type: XTimeAgoModule, decorators: [{
84
84
  type: NgModule,
85
85
  args: [{
86
86
  exports: [XTimeAgoPipe],