ngx-tethys 19.0.4 → 19.0.6

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 (242) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/anchor/anchor-link.component.d.ts +2 -1
  3. package/anchor/anchor.component.d.ts +2 -1
  4. package/anchor/anchor.token.d.ts +9 -0
  5. package/calendar/calendar-header.component.d.ts +3 -2
  6. package/carousel/carousel.component.d.ts +2 -1
  7. package/carousel/carousel.token.d.ts +7 -0
  8. package/carousel/engine/carousel-base.d.ts +3 -3
  9. package/carousel/engine/carousel-fade.d.ts +2 -2
  10. package/carousel/engine/carousel-noop.d.ts +2 -2
  11. package/carousel/engine/carousel-slide.d.ts +2 -2
  12. package/collapse/collapse-item.component.d.ts +2 -1
  13. package/collapse/collapse.component.d.ts +5 -5
  14. package/collapse/collapse.token.d.ts +15 -0
  15. package/color-picker/color-picker.component.d.ts +15 -3
  16. package/core/theme/enum.d.ts +5 -0
  17. package/core/theme/index.d.ts +1 -0
  18. package/core/theme/store.d.ts +1 -1
  19. package/core/theme/theme.d.ts +0 -5
  20. package/date-picker/abstract-picker.component.d.ts +6 -1
  21. package/date-picker/base-picker.component.d.ts +1 -1
  22. package/date-picker/lib/calendar/calendar-footer.component.d.ts +2 -1
  23. package/date-picker/lib/calendar/calendar-table.component.d.ts +4 -3
  24. package/date-picker/lib/popups/date-popup.component.d.ts +2 -1
  25. package/date-picker/lib/popups/inner-popup.component.d.ts +2 -1
  26. package/date-picker/picker.component.d.ts +2 -1
  27. package/date-picker/picker.util.d.ts +5 -5
  28. package/date-picker/standard-types.d.ts +7 -2
  29. package/drag-drop/drag-drop.service.d.ts +2 -2
  30. package/drag-drop/{drop-container.class.d.ts → drag-drop.token.d.ts} +12 -7
  31. package/drag-drop/drag-handle.directive.d.ts +2 -1
  32. package/drag-drop/drag-ref.d.ts +3 -5
  33. package/drag-drop/drag.directive.d.ts +3 -3
  34. package/drag-drop/drop-container.directive.d.ts +1 -1
  35. package/drag-drop/index.d.ts +1 -1
  36. package/fesm2022/ngx-tethys-action.mjs +11 -12
  37. package/fesm2022/ngx-tethys-action.mjs.map +1 -1
  38. package/fesm2022/ngx-tethys-affix.mjs +8 -9
  39. package/fesm2022/ngx-tethys-affix.mjs.map +1 -1
  40. package/fesm2022/ngx-tethys-alert.mjs +11 -12
  41. package/fesm2022/ngx-tethys-alert.mjs.map +1 -1
  42. package/fesm2022/ngx-tethys-anchor.mjs +26 -13
  43. package/fesm2022/ngx-tethys-anchor.mjs.map +1 -1
  44. package/fesm2022/ngx-tethys-arrow-switcher.mjs +7 -7
  45. package/fesm2022/ngx-tethys-autocomplete.mjs +17 -18
  46. package/fesm2022/ngx-tethys-autocomplete.mjs.map +1 -1
  47. package/fesm2022/ngx-tethys-avatar.mjs +25 -28
  48. package/fesm2022/ngx-tethys-avatar.mjs.map +1 -1
  49. package/fesm2022/ngx-tethys-back-top.mjs +7 -7
  50. package/fesm2022/ngx-tethys-badge.mjs +7 -7
  51. package/fesm2022/ngx-tethys-breadcrumb.mjs +10 -10
  52. package/fesm2022/ngx-tethys-button.mjs +14 -15
  53. package/fesm2022/ngx-tethys-button.mjs.map +1 -1
  54. package/fesm2022/ngx-tethys-calendar.mjs +18 -20
  55. package/fesm2022/ngx-tethys-calendar.mjs.map +1 -1
  56. package/fesm2022/ngx-tethys-card.mjs +15 -17
  57. package/fesm2022/ngx-tethys-card.mjs.map +1 -1
  58. package/fesm2022/ngx-tethys-carousel.mjs +28 -17
  59. package/fesm2022/ngx-tethys-carousel.mjs.map +1 -1
  60. package/fesm2022/ngx-tethys-cascader.mjs +16 -16
  61. package/fesm2022/ngx-tethys-checkbox.mjs +7 -7
  62. package/fesm2022/ngx-tethys-collapse.mjs +97 -85
  63. package/fesm2022/ngx-tethys-collapse.mjs.map +1 -1
  64. package/fesm2022/ngx-tethys-color-picker.mjs +34 -36
  65. package/fesm2022/ngx-tethys-color-picker.mjs.map +1 -1
  66. package/fesm2022/ngx-tethys-comment.mjs +15 -17
  67. package/fesm2022/ngx-tethys-comment.mjs.map +1 -1
  68. package/fesm2022/ngx-tethys-copy.mjs +8 -9
  69. package/fesm2022/ngx-tethys-copy.mjs.map +1 -1
  70. package/fesm2022/ngx-tethys-core.mjs +21 -22
  71. package/fesm2022/ngx-tethys-core.mjs.map +1 -1
  72. package/fesm2022/ngx-tethys-date-picker.mjs +232 -248
  73. package/fesm2022/ngx-tethys-date-picker.mjs.map +1 -1
  74. package/fesm2022/ngx-tethys-date-range.mjs +10 -10
  75. package/fesm2022/ngx-tethys-dialog.mjs +22 -23
  76. package/fesm2022/ngx-tethys-dialog.mjs.map +1 -1
  77. package/fesm2022/ngx-tethys-divider.mjs +7 -7
  78. package/fesm2022/ngx-tethys-dot.mjs +8 -9
  79. package/fesm2022/ngx-tethys-dot.mjs.map +1 -1
  80. package/fesm2022/ngx-tethys-drag-drop.mjs +23 -30
  81. package/fesm2022/ngx-tethys-drag-drop.mjs.map +1 -1
  82. package/fesm2022/ngx-tethys-dropdown.mjs +58 -70
  83. package/fesm2022/ngx-tethys-dropdown.mjs.map +1 -1
  84. package/fesm2022/ngx-tethys-empty.mjs +10 -10
  85. package/fesm2022/ngx-tethys-flexible-text.mjs +8 -8
  86. package/fesm2022/ngx-tethys-flexible-text.mjs.map +1 -1
  87. package/fesm2022/ngx-tethys-form.mjs +47 -54
  88. package/fesm2022/ngx-tethys-form.mjs.map +1 -1
  89. package/fesm2022/ngx-tethys-fullscreen.mjs +15 -16
  90. package/fesm2022/ngx-tethys-fullscreen.mjs.map +1 -1
  91. package/fesm2022/ngx-tethys-grid.mjs +46 -51
  92. package/fesm2022/ngx-tethys-grid.mjs.map +1 -1
  93. package/fesm2022/ngx-tethys-guider.mjs +55 -61
  94. package/fesm2022/ngx-tethys-guider.mjs.map +1 -1
  95. package/fesm2022/ngx-tethys-i18n.mjs +51 -54
  96. package/fesm2022/ngx-tethys-i18n.mjs.map +1 -1
  97. package/fesm2022/ngx-tethys-icon.mjs +11 -12
  98. package/fesm2022/ngx-tethys-icon.mjs.map +1 -1
  99. package/fesm2022/ngx-tethys-image.mjs +32 -21
  100. package/fesm2022/ngx-tethys-image.mjs.map +1 -1
  101. package/fesm2022/ngx-tethys-input-number.mjs +7 -7
  102. package/fesm2022/ngx-tethys-input.mjs +21 -23
  103. package/fesm2022/ngx-tethys-input.mjs.map +1 -1
  104. package/fesm2022/ngx-tethys-layout.mjs +73 -88
  105. package/fesm2022/ngx-tethys-layout.mjs.map +1 -1
  106. package/fesm2022/ngx-tethys-list.mjs +19 -22
  107. package/fesm2022/ngx-tethys-list.mjs.map +1 -1
  108. package/fesm2022/ngx-tethys-loading.mjs +7 -7
  109. package/fesm2022/ngx-tethys-mention.mjs +11 -12
  110. package/fesm2022/ngx-tethys-mention.mjs.map +1 -1
  111. package/fesm2022/ngx-tethys-menu.mjs +30 -30
  112. package/fesm2022/ngx-tethys-menu.mjs.map +1 -1
  113. package/fesm2022/ngx-tethys-message.mjs +24 -24
  114. package/fesm2022/ngx-tethys-message.mjs.map +1 -1
  115. package/fesm2022/ngx-tethys-nav.mjs +26 -29
  116. package/fesm2022/ngx-tethys-nav.mjs.map +1 -1
  117. package/fesm2022/ngx-tethys-notify.mjs +17 -17
  118. package/fesm2022/ngx-tethys-notify.mjs.map +1 -1
  119. package/fesm2022/ngx-tethys-pagination.mjs +15 -17
  120. package/fesm2022/ngx-tethys-pagination.mjs.map +1 -1
  121. package/fesm2022/ngx-tethys-popover.mjs +21 -23
  122. package/fesm2022/ngx-tethys-popover.mjs.map +1 -1
  123. package/fesm2022/ngx-tethys-progress.mjs +13 -13
  124. package/fesm2022/ngx-tethys-property-operation.mjs +11 -11
  125. package/fesm2022/ngx-tethys-property-operation.mjs.map +1 -1
  126. package/fesm2022/ngx-tethys-property.mjs +11 -11
  127. package/fesm2022/ngx-tethys-property.mjs.map +1 -1
  128. package/fesm2022/ngx-tethys-radio.mjs +125 -115
  129. package/fesm2022/ngx-tethys-radio.mjs.map +1 -1
  130. package/fesm2022/ngx-tethys-rate.mjs +10 -10
  131. package/fesm2022/ngx-tethys-resizable.mjs +18 -18
  132. package/fesm2022/ngx-tethys-resizable.mjs.map +1 -1
  133. package/fesm2022/ngx-tethys-result.mjs +7 -7
  134. package/fesm2022/ngx-tethys-segment.mjs +10 -10
  135. package/fesm2022/ngx-tethys-segment.mjs.map +1 -1
  136. package/fesm2022/ngx-tethys-select.mjs +10 -10
  137. package/fesm2022/ngx-tethys-shared.mjs +81 -109
  138. package/fesm2022/ngx-tethys-shared.mjs.map +1 -1
  139. package/fesm2022/ngx-tethys-skeleton.mjs +23 -24
  140. package/fesm2022/ngx-tethys-skeleton.mjs.map +1 -1
  141. package/fesm2022/ngx-tethys-slide.mjs +36 -41
  142. package/fesm2022/ngx-tethys-slide.mjs.map +1 -1
  143. package/fesm2022/ngx-tethys-slider.mjs +7 -7
  144. package/fesm2022/ngx-tethys-space.mjs +11 -12
  145. package/fesm2022/ngx-tethys-space.mjs.map +1 -1
  146. package/fesm2022/ngx-tethys-statistic.mjs +7 -7
  147. package/fesm2022/ngx-tethys-stepper.mjs +22 -24
  148. package/fesm2022/ngx-tethys-stepper.mjs.map +1 -1
  149. package/fesm2022/ngx-tethys-strength.mjs +8 -8
  150. package/fesm2022/ngx-tethys-strength.mjs.map +1 -1
  151. package/fesm2022/ngx-tethys-switch.mjs +7 -7
  152. package/fesm2022/ngx-tethys-table.mjs +22 -25
  153. package/fesm2022/ngx-tethys-table.mjs.map +1 -1
  154. package/fesm2022/ngx-tethys-tabs.mjs +14 -15
  155. package/fesm2022/ngx-tethys-tabs.mjs.map +1 -1
  156. package/fesm2022/ngx-tethys-tag.mjs +12 -13
  157. package/fesm2022/ngx-tethys-tag.mjs.map +1 -1
  158. package/fesm2022/ngx-tethys-time-picker.mjs +58 -56
  159. package/fesm2022/ngx-tethys-time-picker.mjs.map +1 -1
  160. package/fesm2022/ngx-tethys-timeline.mjs +13 -13
  161. package/fesm2022/ngx-tethys-timeline.mjs.map +1 -1
  162. package/fesm2022/ngx-tethys-tooltip.mjs +14 -15
  163. package/fesm2022/ngx-tethys-tooltip.mjs.map +1 -1
  164. package/fesm2022/ngx-tethys-transfer.mjs +10 -10
  165. package/fesm2022/ngx-tethys-tree-select.mjs +10 -10
  166. package/fesm2022/ngx-tethys-tree.mjs +17 -21
  167. package/fesm2022/ngx-tethys-tree.mjs.map +1 -1
  168. package/fesm2022/ngx-tethys-typography.mjs +15 -17
  169. package/fesm2022/ngx-tethys-typography.mjs.map +1 -1
  170. package/fesm2022/ngx-tethys-upload.mjs +18 -19
  171. package/fesm2022/ngx-tethys-upload.mjs.map +1 -1
  172. package/fesm2022/ngx-tethys-util.mjs +418 -396
  173. package/fesm2022/ngx-tethys-util.mjs.map +1 -1
  174. package/fesm2022/ngx-tethys-vote.mjs +7 -7
  175. package/fesm2022/ngx-tethys-watermark.mjs +8 -9
  176. package/fesm2022/ngx-tethys-watermark.mjs.map +1 -1
  177. package/fesm2022/ngx-tethys.mjs +1 -1
  178. package/fesm2022/ngx-tethys.mjs.map +1 -1
  179. package/grid/grid.type.d.ts +5 -0
  180. package/grid/index.d.ts +1 -0
  181. package/grid/thy-grid-item.component.d.ts +1 -1
  182. package/grid/thy-grid.component.d.ts +1 -11
  183. package/guider/guider-manager.d.ts +2 -1
  184. package/guider/guider-ref.d.ts +6 -6
  185. package/guider/guider-step-ref.d.ts +3 -4
  186. package/guider/guider.interface.d.ts +26 -0
  187. package/i18n/i18n.service.d.ts +1 -1
  188. package/i18n/index.d.ts +2 -5
  189. package/i18n/locale.d.ts +1 -7
  190. package/i18n/locales/index.d.ts +5 -0
  191. package/i18n/util.d.ts +3 -0
  192. package/icon/index.d.ts +1 -1
  193. package/image/image-group.component.d.ts +4 -4
  194. package/image/image.directive.d.ts +2 -1
  195. package/image/image.token.d.ts +17 -0
  196. package/layout/header.component.d.ts +6 -18
  197. package/list/selection/selection-list.d.ts +2 -1
  198. package/list/selection/selection.interface.d.ts +2 -3
  199. package/message/abstract/abstract-message-queue.service.d.ts +2 -2
  200. package/message/abstract/abstract-message-ref.d.ts +6 -2
  201. package/package.json +2 -1
  202. package/popover/popover.directive.d.ts +6 -2
  203. package/radio/group/radio-group.component.d.ts +2 -1
  204. package/radio/radio.component.d.ts +3 -3
  205. package/radio/radio.token.d.ts +12 -0
  206. package/resizable/interface.d.ts +5 -0
  207. package/resizable/resizable.directive.d.ts +9 -3
  208. package/resizable/resizable.service.d.ts +1 -1
  209. package/resizable/resize-handle.component.d.ts +1 -6
  210. package/schematics/version.d.ts +1 -1
  211. package/schematics/version.js +1 -1
  212. package/segment/segment-item.component.d.ts +2 -1
  213. package/segment/segment.token.d.ts +10 -4
  214. package/shared/index.d.ts +1 -0
  215. package/shared/option/list-option/list-option.component.d.ts +10 -5
  216. package/shared/option/option.component.d.ts +1 -3
  217. package/shared/option/option.token.d.ts +11 -11
  218. package/shared/shared.type.d.ts +1 -0
  219. package/table/index.d.ts +1 -0
  220. package/table/styles/table.scss +9 -1
  221. package/table/table-column.component.d.ts +5 -30
  222. package/table/table-skeleton.component.d.ts +11 -3
  223. package/table/table.component.d.ts +1 -3
  224. package/table/table.type.d.ts +3 -0
  225. package/tag/tag.component.d.ts +2 -4
  226. package/time-picker/inner/inner-time-picker.component.d.ts +3 -1
  227. package/time-picker/inner/inner-time-picker.store.d.ts +5 -5
  228. package/time-picker/time-picker.utils.d.ts +5 -5
  229. package/timeline/index.d.ts +1 -0
  230. package/timeline/timeline-item.component.d.ts +1 -1
  231. package/timeline/timeline.component.d.ts +1 -1
  232. package/timeline/timeline.type.d.ts +1 -0
  233. package/tooltip/tooltip.directive.d.ts +2 -10
  234. package/tree/index.d.ts +0 -1
  235. package/tree/tree-abstract.d.ts +1 -1
  236. package/tree/tree-node.component.d.ts +17 -8
  237. package/tree/tree.class.d.ts +40 -1
  238. package/tree/tree.component.d.ts +1 -1
  239. package/tree/tree.pipe.d.ts +1 -1
  240. package/tree/tree.service.d.ts +3 -9
  241. package/util/helpers/helpers.d.ts +1 -0
  242. package/tree/tree-node.class.d.ts +0 -29
@@ -77,10 +77,10 @@ class ThyDot {
77
77
  this.renderer.setStyle(this.nativeElement, 'borderColor', this.color);
78
78
  }
79
79
  }
80
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: ThyDot, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
81
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.4", type: ThyDot, isStandalone: true, selector: "thy-dot,[thy-dot],[thyDot]", inputs: { thyColor: "thyColor", thySize: "thySize", thyTheme: "thyTheme", thyShape: "thyShape" }, host: { properties: { "class.dot-theme-fill": "theme === \"fill\"", "class.dot-theme-outline": "theme === \"outline\"", "class.dot-shape-square": "shape === \"square\"", "class.dot-shape-circle": "shape === \"circle\"", "class.dot-size-md": "size === \"md\"", "class.dot-size-sm": "size === \"sm\"", "class.dot-size-xs": "size === \"xs\"", "class.dot-size-lg": "size === \"lg\"", "class.dot-size-xlg": "size === \"xlg\"" }, classAttribute: "thy-dot" }, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
80
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ThyDot, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
81
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: ThyDot, isStandalone: true, selector: "thy-dot,[thy-dot],[thyDot]", inputs: { thyColor: "thyColor", thySize: "thySize", thyTheme: "thyTheme", thyShape: "thyShape" }, host: { properties: { "class.dot-theme-fill": "theme === \"fill\"", "class.dot-theme-outline": "theme === \"outline\"", "class.dot-shape-square": "shape === \"square\"", "class.dot-shape-circle": "shape === \"circle\"", "class.dot-size-md": "size === \"md\"", "class.dot-size-sm": "size === \"sm\"", "class.dot-size-xs": "size === \"xs\"", "class.dot-size-lg": "size === \"lg\"", "class.dot-size-xlg": "size === \"xlg\"" }, classAttribute: "thy-dot" }, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
82
82
  }
83
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: ThyDot, decorators: [{
83
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ThyDot, decorators: [{
84
84
  type: Component,
85
85
  args: [{
86
86
  selector: 'thy-dot,[thy-dot],[thyDot]',
@@ -98,8 +98,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImpor
98
98
  '[class.dot-size-xs]': 'size === "xs"',
99
99
  '[class.dot-size-lg]': 'size === "lg"',
100
100
  '[class.dot-size-xlg]': 'size === "xlg"'
101
- },
102
- standalone: true
101
+ }
103
102
  }]
104
103
  }], ctorParameters: () => [], propDecorators: { thyColor: [{
105
104
  type: Input
@@ -112,11 +111,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImpor
112
111
  }] } });
113
112
 
114
113
  class ThyDotModule {
115
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: ThyDotModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
116
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.4", ngImport: i0, type: ThyDotModule, imports: [CommonModule, ThyDot], exports: [ThyDot] }); }
117
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: ThyDotModule, imports: [CommonModule] }); }
114
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ThyDotModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
115
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.6", ngImport: i0, type: ThyDotModule, imports: [CommonModule, ThyDot], exports: [ThyDot] }); }
116
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ThyDotModule, imports: [CommonModule] }); }
118
117
  }
119
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: ThyDotModule, decorators: [{
118
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ThyDotModule, decorators: [{
120
119
  type: NgModule,
121
120
  args: [{
122
121
  imports: [CommonModule, ThyDot],
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-tethys-dot.mjs","sources":["../../../src/dot/dot.component.ts","../../../src/dot/dot.module.ts","../../../src/dot/ngx-tethys-dot.ts"],"sourcesContent":["import { isThemeColor, ThyThemeColor } from 'ngx-tethys/core';\n\nimport { ChangeDetectionStrategy, Component, ElementRef, Input, Renderer2, ViewEncapsulation, inject } from '@angular/core';\n\nexport type ThyColorType = ThyThemeColor | string;\nexport type ThySizeType = 'xs' | 'sm' | 'md' | 'lg' | 'xlg';\nexport type ThyThemeType = 'outline' | 'fill';\nexport type ThyShapeType = 'square' | 'circle';\n\nexport const COMPONENT_CLASS_NAME = 'thy-dot';\n\nexport const DEFAULT_COLOR_NAME = 'primary';\nexport const DEFAULT_SIZE_NAME = 'sm';\nexport const DEFAULT_THEME_NAME = 'fill';\nexport const DEFAULT_SHAPE_NAME = 'circle';\n\n/**\n * 显示一个点的组件\n * @name thy-dot,[thy-dot],[thyDot]\n * @order 10\n */\n@Component({\n selector: 'thy-dot,[thy-dot],[thyDot]',\n template: '',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'thy-dot',\n '[class.dot-theme-fill]': 'theme === \"fill\"',\n '[class.dot-theme-outline]': 'theme === \"outline\"',\n '[class.dot-shape-square]': 'shape === \"square\"',\n '[class.dot-shape-circle]': 'shape === \"circle\"',\n '[class.dot-size-md]': 'size === \"md\"',\n '[class.dot-size-sm]': 'size === \"sm\"',\n '[class.dot-size-xs]': 'size === \"xs\"',\n '[class.dot-size-lg]': 'size === \"lg\"',\n '[class.dot-size-xlg]': 'size === \"xlg\"'\n },\n standalone: true\n})\nexport class ThyDot {\n private el = inject(ElementRef);\n private renderer = inject(Renderer2);\n\n public size: ThySizeType = DEFAULT_SIZE_NAME;\n public theme: ThyThemeType = DEFAULT_THEME_NAME;\n public shape: ThyShapeType = DEFAULT_SHAPE_NAME;\n public color: ThyColorType = DEFAULT_COLOR_NAME;\n private nativeElement: HTMLElement;\n constructor() {\n this.nativeElement = this.el.nativeElement;\n this.updateColorStyle();\n }\n\n /**\n * 颜色,可选值为:`primary` `success` `info` `warning` `danger` `default` `light`和自定义颜色,如`#2cccda` `red` `rgb(153, 153, 153)`\n * @type ThyThemeColor | string\n * @default primary\n */\n @Input()\n set thyColor(value: ThyColorType) {\n if (value) {\n this.color = value;\n this.updateColorStyle();\n }\n }\n\n /**\n * 大小\n * @type xs | sm | md | lg | xlg\n * @default sm\n */\n @Input()\n set thySize(value: ThySizeType) {\n if (value) {\n this.size = value;\n }\n }\n\n /**\n * 主题\n * @type outline(线框) | fill(填充)\n * @default fill\n */\n @Input()\n set thyTheme(value: ThyThemeType) {\n if (value) {\n this.theme = value;\n }\n }\n\n /**\n * 形状\n * @type circle(圆形) | square(方形)\n * @default circle\n */\n @Input()\n set thyShape(value: ThyShapeType) {\n if (value) {\n this.shape = value;\n }\n }\n\n updateColorStyle() {\n Array.from(this.nativeElement.classList)\n .filter(it => /^dot-color-[\\w]+$/.test(it))\n .forEach(it => this.renderer.removeClass(this.nativeElement, it));\n\n if (isThemeColor(this.color)) {\n this.renderer.setStyle(this.nativeElement, 'borderColor', 'none');\n this.renderer.addClass(this.nativeElement, `dot-color-${this.color}`);\n } else {\n this.renderer.setStyle(this.nativeElement, 'borderColor', this.color);\n }\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { ThyDot } from './dot.component';\n\n@NgModule({\n imports: [CommonModule, ThyDot],\n exports: [ThyDot]\n})\nexport class ThyDotModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ngx-tethys-dot.mjs","sources":["../../../src/dot/dot.component.ts","../../../src/dot/dot.module.ts","../../../src/dot/ngx-tethys-dot.ts"],"sourcesContent":["import { isThemeColor, ThyThemeColor } from 'ngx-tethys/core';\n\nimport { ChangeDetectionStrategy, Component, ElementRef, Input, Renderer2, ViewEncapsulation, inject } from '@angular/core';\n\nexport type ThyColorType = ThyThemeColor | string;\nexport type ThySizeType = 'xs' | 'sm' | 'md' | 'lg' | 'xlg';\nexport type ThyThemeType = 'outline' | 'fill';\nexport type ThyShapeType = 'square' | 'circle';\n\nexport const COMPONENT_CLASS_NAME = 'thy-dot';\n\nexport const DEFAULT_COLOR_NAME = 'primary';\nexport const DEFAULT_SIZE_NAME = 'sm';\nexport const DEFAULT_THEME_NAME = 'fill';\nexport const DEFAULT_SHAPE_NAME = 'circle';\n\n/**\n * 显示一个点的组件\n * @name thy-dot,[thy-dot],[thyDot]\n * @order 10\n */\n@Component({\n selector: 'thy-dot,[thy-dot],[thyDot]',\n template: '',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'thy-dot',\n '[class.dot-theme-fill]': 'theme === \"fill\"',\n '[class.dot-theme-outline]': 'theme === \"outline\"',\n '[class.dot-shape-square]': 'shape === \"square\"',\n '[class.dot-shape-circle]': 'shape === \"circle\"',\n '[class.dot-size-md]': 'size === \"md\"',\n '[class.dot-size-sm]': 'size === \"sm\"',\n '[class.dot-size-xs]': 'size === \"xs\"',\n '[class.dot-size-lg]': 'size === \"lg\"',\n '[class.dot-size-xlg]': 'size === \"xlg\"'\n }\n})\nexport class ThyDot {\n private el = inject(ElementRef);\n private renderer = inject(Renderer2);\n\n public size: ThySizeType = DEFAULT_SIZE_NAME;\n public theme: ThyThemeType = DEFAULT_THEME_NAME;\n public shape: ThyShapeType = DEFAULT_SHAPE_NAME;\n public color: ThyColorType = DEFAULT_COLOR_NAME;\n private nativeElement: HTMLElement;\n constructor() {\n this.nativeElement = this.el.nativeElement;\n this.updateColorStyle();\n }\n\n /**\n * 颜色,可选值为:`primary` `success` `info` `warning` `danger` `default` `light`和自定义颜色,如`#2cccda` `red` `rgb(153, 153, 153)`\n * @type ThyThemeColor | string\n * @default primary\n */\n @Input()\n set thyColor(value: ThyColorType) {\n if (value) {\n this.color = value;\n this.updateColorStyle();\n }\n }\n\n /**\n * 大小\n * @type xs | sm | md | lg | xlg\n * @default sm\n */\n @Input()\n set thySize(value: ThySizeType) {\n if (value) {\n this.size = value;\n }\n }\n\n /**\n * 主题\n * @type outline(线框) | fill(填充)\n * @default fill\n */\n @Input()\n set thyTheme(value: ThyThemeType) {\n if (value) {\n this.theme = value;\n }\n }\n\n /**\n * 形状\n * @type circle(圆形) | square(方形)\n * @default circle\n */\n @Input()\n set thyShape(value: ThyShapeType) {\n if (value) {\n this.shape = value;\n }\n }\n\n updateColorStyle() {\n Array.from(this.nativeElement.classList)\n .filter(it => /^dot-color-[\\w]+$/.test(it))\n .forEach(it => this.renderer.removeClass(this.nativeElement, it));\n\n if (isThemeColor(this.color)) {\n this.renderer.setStyle(this.nativeElement, 'borderColor', 'none');\n this.renderer.addClass(this.nativeElement, `dot-color-${this.color}`);\n } else {\n this.renderer.setStyle(this.nativeElement, 'borderColor', this.color);\n }\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { ThyDot } from './dot.component';\n\n@NgModule({\n imports: [CommonModule, ThyDot],\n exports: [ThyDot]\n})\nexport class ThyDotModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -246,17 +246,14 @@ class ThyDragDropService {
246
246
  */
247
247
  this.classMap = new Map();
248
248
  }
249
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: ThyDragDropService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
250
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: ThyDragDropService, providedIn: 'root' }); }
249
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ThyDragDropService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
250
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ThyDragDropService, providedIn: 'root' }); }
251
251
  }
252
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: ThyDragDropService, decorators: [{
252
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ThyDragDropService, decorators: [{
253
253
  type: Injectable,
254
254
  args: [{ providedIn: 'root' }]
255
255
  }], ctorParameters: () => [] });
256
256
 
257
- /**
258
- * Injection token used to provide the container directive to drag.
259
- */
260
257
  const THY_DROP_CONTAINER_DIRECTIVE = new InjectionToken('THY_DROP_CONTAINER_DIRECTIVE');
261
258
 
262
259
  /**
@@ -300,14 +297,13 @@ class ThyDragDirective {
300
297
  ngOnDestroy() {
301
298
  this.dragRef.dispose();
302
299
  }
303
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: ThyDragDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
304
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.2.4", type: ThyDragDirective, isStandalone: true, selector: "thy-drag,[thyDrag]", inputs: { dragData: ["thyDrag", "dragData"], data: ["thyDragData", "data"], disabled: ["thyDragDisabled", "disabled", coerceBooleanProperty] }, host: { properties: { "attr.draggable": "this.isDraggable" } }, ngImport: i0 }); }
300
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ThyDragDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
301
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.2.6", type: ThyDragDirective, isStandalone: true, selector: "thy-drag,[thyDrag]", inputs: { dragData: ["thyDrag", "dragData"], data: ["thyDragData", "data"], disabled: ["thyDragDisabled", "disabled", coerceBooleanProperty] }, host: { properties: { "attr.draggable": "this.isDraggable" } }, ngImport: i0 }); }
305
302
  }
306
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: ThyDragDirective, decorators: [{
303
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ThyDragDirective, decorators: [{
307
304
  type: Directive,
308
305
  args: [{
309
- selector: 'thy-drag,[thyDrag]',
310
- standalone: true
306
+ selector: 'thy-drag,[thyDrag]'
311
307
  }]
312
308
  }], ctorParameters: () => [], propDecorators: { dragData: [{
313
309
  type: Input,
@@ -348,14 +344,13 @@ class ThyDragHandleDirective {
348
344
  drag.dragRef.withHandles(this);
349
345
  }
350
346
  }
351
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: ThyDragHandleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
352
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.2.4", type: ThyDragHandleDirective, isStandalone: true, selector: "thy-drag-handle,[thyDragHandle]", inputs: { disabled: ["thyDisabled", "disabled", coerceBooleanProperty] }, ngImport: i0 }); }
347
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ThyDragHandleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
348
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.2.6", type: ThyDragHandleDirective, isStandalone: true, selector: "thy-drag-handle,[thyDragHandle]", inputs: { disabled: ["thyDisabled", "disabled", coerceBooleanProperty] }, ngImport: i0 }); }
353
349
  }
354
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: ThyDragHandleDirective, decorators: [{
350
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ThyDragHandleDirective, decorators: [{
355
351
  type: Directive,
356
352
  args: [{
357
- selector: 'thy-drag-handle,[thyDragHandle]',
358
- standalone: true
353
+ selector: 'thy-drag-handle,[thyDragHandle]'
359
354
  }]
360
355
  }], ctorParameters: () => [], propDecorators: { disabled: [{
361
356
  type: Input,
@@ -377,14 +372,13 @@ class ThyDragContentDirective {
377
372
  drag.dragRef.withContentElement(this.element);
378
373
  }
379
374
  }
380
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: ThyDragContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
381
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.4", type: ThyDragContentDirective, isStandalone: true, selector: "thy-drag-content,[thyDragContent]", host: { properties: { "class.thy-drag-content": "this.contentClass" } }, ngImport: i0 }); }
375
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ThyDragContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
376
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.6", type: ThyDragContentDirective, isStandalone: true, selector: "thy-drag-content,[thyDragContent]", host: { properties: { "class.thy-drag-content": "this.contentClass" } }, ngImport: i0 }); }
382
377
  }
383
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: ThyDragContentDirective, decorators: [{
378
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ThyDragContentDirective, decorators: [{
384
379
  type: Directive,
385
380
  args: [{
386
- selector: 'thy-drag-content,[thyDragContent]',
387
- standalone: true
381
+ selector: 'thy-drag-content,[thyDragContent]'
388
382
  }]
389
383
  }], ctorParameters: () => [], propDecorators: { contentClass: [{
390
384
  type: HostBinding,
@@ -456,15 +450,15 @@ class ThyDropContainerDirective {
456
450
  this.ngUnsubscribe$.next();
457
451
  this.ngUnsubscribe$.complete();
458
452
  }
459
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: ThyDropContainerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
460
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.2.4", type: ThyDropContainerDirective, isStandalone: true, selector: "thy-drop-container,[thyDropContainer]", inputs: { dragContainer: ["thyDropContainer", "dragContainer"], data: ["thyDropContainerData", "data"], disabled: ["thyDropContainerDisabled", "disabled", coerceBooleanProperty], beforeStart: ["thyBeforeDragStart", "beforeStart"], beforeOver: ["thyBeforeDragOver", "beforeOver"], beforeDrop: ["thyBeforeDragDrop", "beforeDrop"] }, outputs: { started: "thyDragStarted", ended: "thyDragEnded", overed: "thyDragOvered", dropped: "thyDragDropped" }, providers: [
453
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ThyDropContainerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
454
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.2.6", type: ThyDropContainerDirective, isStandalone: true, selector: "thy-drop-container,[thyDropContainer]", inputs: { dragContainer: ["thyDropContainer", "dragContainer"], data: ["thyDropContainerData", "data"], disabled: ["thyDropContainerDisabled", "disabled", coerceBooleanProperty], beforeStart: ["thyBeforeDragStart", "beforeStart"], beforeOver: ["thyBeforeDragOver", "beforeOver"], beforeDrop: ["thyBeforeDragDrop", "beforeDrop"] }, outputs: { started: "thyDragStarted", ended: "thyDragEnded", overed: "thyDragOvered", dropped: "thyDragDropped" }, providers: [
461
455
  {
462
456
  provide: THY_DROP_CONTAINER_DIRECTIVE,
463
457
  useExisting: ThyDropContainerDirective
464
458
  }
465
459
  ], queries: [{ propertyName: "draggables", predicate: ThyDragDirective }], ngImport: i0 }); }
466
460
  }
467
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: ThyDropContainerDirective, decorators: [{
461
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ThyDropContainerDirective, decorators: [{
468
462
  type: Directive,
469
463
  args: [{
470
464
  selector: 'thy-drop-container,[thyDropContainer]',
@@ -473,8 +467,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImpor
473
467
  provide: THY_DROP_CONTAINER_DIRECTIVE,
474
468
  useExisting: ThyDropContainerDirective
475
469
  }
476
- ],
477
- standalone: true
470
+ ]
478
471
  }]
479
472
  }], propDecorators: { dragContainer: [{
480
473
  type: Input,
@@ -520,11 +513,11 @@ class ThyDragDropModule {
520
513
  constructor() {
521
514
  warnDeprecation('`ThyDragDropModule` is deprecated, please use `@angular/cdk/drag-drop` instead.');
522
515
  }
523
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: ThyDragDropModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
524
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.4", ngImport: i0, type: ThyDragDropModule, imports: [ThyDropContainerDirective, ThyDragDirective, ThyDragHandleDirective, ThyDragContentDirective], exports: [ThyDropContainerDirective, ThyDragDirective, ThyDragHandleDirective, ThyDragContentDirective] }); }
525
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: ThyDragDropModule }); }
516
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ThyDragDropModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
517
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.6", ngImport: i0, type: ThyDragDropModule, imports: [ThyDropContainerDirective, ThyDragDirective, ThyDragHandleDirective, ThyDragContentDirective], exports: [ThyDropContainerDirective, ThyDragDirective, ThyDragHandleDirective, ThyDragContentDirective] }); }
518
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ThyDragDropModule }); }
526
519
  }
527
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: ThyDragDropModule, decorators: [{
520
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ThyDragDropModule, decorators: [{
528
521
  type: NgModule,
529
522
  args: [{
530
523
  imports: [ThyDropContainerDirective, ThyDragDirective, ThyDragHandleDirective, ThyDragContentDirective],
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-tethys-drag-drop.mjs","sources":["../../../src/drag-drop/drag-drop.class.ts","../../../src/drag-drop/drag-ref.ts","../../../src/drag-drop/drag-drop.service.ts","../../../src/drag-drop/drop-container.class.ts","../../../src/drag-drop/drag.directive.ts","../../../src/drag-drop/drag-handle.directive.ts","../../../src/drag-drop/drag-content.directive.ts","../../../src/drag-drop/drop-container.directive.ts","../../../src/drag-drop/module.ts","../../../src/drag-drop/ngx-tethys-drag-drop.ts"],"sourcesContent":["export enum ThyDropPosition {\n in = 'in',\n before = 'before',\n after = 'after'\n}\n\nexport interface ThyDragStartEvent<T = any> {\n event?: Event;\n item?: T;\n containerItems?: T[];\n currentIndex: number;\n}\n\nexport interface ThyDragEndEvent<T = any> {\n event?: DragEvent;\n item?: T;\n containerItems?: T[];\n}\n\nexport interface ThyDragOverEvent<T = any> {\n event?: DragEvent;\n item?: T;\n containerItems?: T[];\n currentIndex: number;\n position?: ThyDropPosition;\n previousItem?: T;\n previousIndex?: number;\n previousContainerItems?: T[];\n}\n\nexport interface ThyDragDropEvent<T = any> {\n event?: DragEvent;\n item?: T;\n containerItems?: T[];\n currentIndex: number;\n position?: ThyDropPosition;\n previousItem?: T;\n previousIndex?: number;\n previousContainerItems?: T[];\n}\n","import { NgZone, ElementRef, Renderer2 } from '@angular/core';\nimport { coerceElement } from '@angular/cdk/coercion';\nimport { Subject, fromEvent } from 'rxjs';\nimport { auditTime, takeUntil } from 'rxjs/operators';\nimport { ThyDragHandleDirective } from './drag-handle.directive';\nimport { ThyDragDropService } from './drag-drop.service';\nimport { ThyDragStartEvent, ThyDragEndEvent, ThyDragOverEvent, ThyDragDropEvent, ThyDropPosition } from './drag-drop.class';\nimport { ThyDragDirective } from './drag.directive';\nimport { IThyDropContainerDirective } from './drop-container.class';\nimport { coerceArray, isEmpty, isString } from 'ngx-tethys/util';\n\nconst dropPositionClass = {\n [ThyDropPosition.in]: 'thy-drop-position-in',\n [ThyDropPosition.before]: 'thy-drop-position-before',\n [ThyDropPosition.after]: 'thy-drop-position-after'\n};\n\nexport class DragRef<T = any> {\n private rootElement: HTMLElement;\n\n private contentElement: HTMLElement;\n\n private target: HTMLElement;\n\n private handles: ThyDragHandleDirective[];\n\n private ngUnsubscribe$ = new Subject();\n\n started = new Subject<ThyDragStartEvent>();\n\n ended = new Subject<ThyDragEndEvent>();\n\n overed = new Subject<ThyDragOverEvent>();\n\n dropped = new Subject<ThyDragDropEvent>();\n\n entered = new Subject<DragEvent>();\n\n leaved = new Subject<DragEvent>();\n\n private _disabled = false;\n\n get disabled(): boolean {\n return (this.container && this.container.disabled) || this._disabled;\n }\n set disabled(value: boolean) {\n this._disabled = value;\n }\n\n private addPositionClass$ = new Subject<{ element: HTMLElement; class: string }>();\n\n constructor(\n element: ElementRef<HTMLElement> | HTMLElement,\n private drag: ThyDragDirective,\n private container: IThyDropContainerDirective<T>,\n private dragDropService: ThyDragDropService<T>,\n private document: any,\n private ngZone: NgZone,\n private renderer: Renderer2\n ) {\n this.withRootElement(element);\n this.subAddPositionClass();\n }\n\n subAddPositionClass() {\n this.addPositionClass$.pipe(auditTime(30), takeUntil(this.ngUnsubscribe$)).subscribe(data => {\n this.removeExistClassByMap(this.dragDropService.classMap);\n this.dragDropService.classMap.set(data.element, data.class);\n this.renderer.addClass(data.element, data.class);\n });\n }\n\n withRootElement(rootElement: ElementRef<HTMLElement> | HTMLElement): this {\n const element = coerceElement(rootElement);\n this.rootElement = element;\n this.registerDragDropEvents();\n return this;\n }\n\n withContentElement(contentElement: ElementRef<HTMLElement> | HTMLElement): this {\n this.contentElement = coerceElement(contentElement);\n return this;\n }\n\n withHandles(handleOrHandles: ThyDragHandleDirective | ThyDragHandleDirective[]): this {\n this.handles = coerceArray(handleOrHandles);\n return this;\n }\n\n private registerDragDropEvents() {\n const events = {\n dragstart: this.dragStart,\n dragover: this.dragOver,\n dragend: this.dragEnd,\n drop: this.dragDrop,\n dragleave: this.dragLeave,\n dragenter: (event: DragEvent) => {\n this.entered.next(event);\n },\n mouseover: (event: MouseEvent) => {\n this.target = event.target as HTMLElement;\n }\n };\n this.ngZone.runOutsideAngular(() => {\n for (const name in events) {\n if (events.hasOwnProperty(name)) {\n fromEvent(this.rootElement, name).pipe(takeUntil(this.ngUnsubscribe$)).subscribe(events[name].bind(this));\n }\n }\n });\n }\n\n private dragStart(event: DragEvent) {\n event.stopPropagation();\n const dragStartEvent: ThyDragStartEvent = {\n event: event,\n item: this.drag.data,\n containerItems: this.container.data,\n currentIndex: this.container.data.indexOf(this.drag.data)\n };\n if (this.disabled || !this.isTriggerHandle() || (this.container.beforeStart && !this.container.beforeStart(dragStartEvent))) {\n event.preventDefault();\n return false;\n }\n this.dragDropService.previousDrag = this.drag;\n this.ngZone.run(() => {\n this.started.next(dragStartEvent);\n });\n }\n\n private isTriggerHandle() {\n if (this.handles && this.handles.length > 0) {\n const targetHandle = this.handles.find(handle => {\n return (\n !handle.disabled && (handle.element.nativeElement === this.target || handle.element.nativeElement.contains(this.target))\n );\n });\n return !!targetHandle;\n } else {\n return true;\n }\n }\n\n private getPreviousEventData() {\n const previousItem = this.dragDropService.previousDrag?.data;\n const previousContainerItems = this.dragDropService.previousDrag?.container?.data;\n return {\n previousItem: previousItem,\n previousContainerItems,\n previousIndex: isEmpty(previousContainerItems) ? -1 : previousContainerItems.indexOf(previousItem)\n };\n }\n\n private isContinueDragOver(event: ThyDragOverEvent, container: IThyDropContainerDirective<T>) {\n if (event.item === event.previousItem && event.position === ThyDropPosition.in) {\n return false;\n }\n if (container && container.beforeOver) {\n return container.beforeOver(event);\n }\n return true;\n }\n\n private dragOver(event: DragEvent) {\n event.stopPropagation();\n event.preventDefault();\n\n const dropPosition = this.calcDropPosition(event);\n const previousEventData = this.getPreviousEventData();\n if (previousEventData.previousIndex < 0) {\n return;\n }\n const dragOverEvent: ThyDragOverEvent<T> = {\n event: event,\n item: this.drag.data,\n containerItems: this.drag.container.data,\n currentIndex: this.container.data.indexOf(this.drag.data),\n position: dropPosition,\n ...previousEventData\n };\n\n if (this.isContinueDragOver(dragOverEvent, this.container)) {\n this.dragOverHandler(dropPosition);\n this.overed.next(dragOverEvent);\n }\n }\n\n private dragOverHandler(position: ThyDropPosition) {\n const element = this.contentElement || this.rootElement;\n this.addPositionClass$.next({ element, class: dropPositionClass[position] });\n this.dragDropService.dropPosition = position;\n }\n\n private dragDrop(event: DragEvent) {\n event.stopPropagation();\n this.clearDragPositionClass();\n const previousEventData = this.getPreviousEventData();\n if (previousEventData.previousIndex < 0) {\n return;\n }\n const dragDropEvent: ThyDragDropEvent<T> = {\n event: event,\n item: this.drag.data,\n containerItems: this.drag.container.data,\n currentIndex: this.container.data.indexOf(this.drag.data),\n position: this.calcDropPosition(event),\n ...previousEventData\n };\n if (this.dragDropService.previousDrag === this.drag || (this.container.beforeDrop && !this.container.beforeDrop(dragDropEvent))) {\n event.preventDefault();\n return;\n }\n this.ngZone.run(() => {\n this.dropped.next(dragDropEvent);\n });\n }\n\n private dragEnd(event: DragEvent) {\n this.clearDragPositionClass();\n this.ngZone.run(() => {\n this.ended.next({\n event: event,\n item: this.drag.data,\n containerItems: this.container.data\n });\n });\n this.dragDropService.previousDrag = undefined;\n }\n\n private dragLeave(event: DragEvent) {\n event.stopPropagation();\n this.clearDragPositionClass();\n this.leaved.next(event);\n }\n\n private clearDragPositionClass() {\n setTimeout(() => {\n const classMap = this.dragDropService.classMap;\n this.removeExistClassByMap(classMap);\n classMap.clear();\n }, 30);\n }\n\n private removeExistClassByMap(classMap: Map<Element, string>) {\n classMap.forEach((value, key) => {\n if (isString(value) && key) {\n this.renderer.removeClass(key, value);\n }\n });\n }\n\n private calcDropPosition(event: DragEvent): ThyDropPosition {\n const sideRange = 0.25;\n const minGap = 2;\n const { clientY } = event;\n const { top, bottom, height } = event.srcElement\n ? (event.srcElement as Element).getBoundingClientRect()\n : (event.target as Element).getBoundingClientRect();\n const des = Math.max(height * sideRange, minGap);\n if (clientY <= top + des) {\n return ThyDropPosition.before;\n } else if (clientY >= bottom - des) {\n return ThyDropPosition.after;\n }\n return ThyDropPosition.in;\n }\n\n dispose() {\n this.ngUnsubscribe$.complete();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ThyDragDirective } from './drag.directive';\nimport { ThyDropPosition } from './drag-drop.class';\n\n/**\n * 自定义可放置区域内容\n * @order 40\n * @deprecated please use @angular/cdk/drag-drop\n */\n@Injectable({ providedIn: 'root' })\nexport class ThyDragDropService<T = any> {\n /**\n * 当前拖拽项,dragEnd 后重置为 undefined\n */\n public previousDrag: ThyDragDirective<T>;\n\n /**\n * 拖拽的时候,针对 dragOver 的节点有三种情况,即拖拽到节点之上 before ,拖拽到节点上 in ,拖拽到节点之下 after\n * @type ThyDropPosition\n */\n public dropPosition: ThyDropPosition;\n\n /**\n * 用于拖动过程对 dragover 的元素设置相应的样式\n * @type Map<Element, string>\n */\n public classMap = new Map<Element, string>();\n constructor() {}\n}\n","import { EventEmitter, QueryList, InjectionToken } from '@angular/core';\nimport { ThyDragDirective } from './drag.directive';\nimport { ThyDragDropEvent, ThyDragStartEvent, ThyDragEndEvent, ThyDragOverEvent } from './drag-drop.class';\n\nexport interface IThyDropContainerDirective<T = any> {\n started: EventEmitter<ThyDragStartEvent<T>>;\n\n ended: EventEmitter<ThyDragEndEvent<T>>;\n\n overed: EventEmitter<ThyDragOverEvent<T>>;\n\n dropped: EventEmitter<ThyDragDropEvent<T>>;\n\n beforeStart: (e: ThyDragStartEvent<T>) => boolean;\n\n beforeOver: (e: ThyDragOverEvent<T>) => boolean;\n\n beforeDrop: (e: ThyDragDropEvent<T>) => boolean;\n\n data: T[];\n\n disabled: boolean;\n\n draggables: QueryList<ThyDragDirective>;\n}\n\n/**\n * Injection token used to provide the container directive to drag.\n */\nexport const THY_DROP_CONTAINER_DIRECTIVE = new InjectionToken<IThyDropContainerDirective>('THY_DROP_CONTAINER_DIRECTIVE');\n","import { Directive, NgZone, ElementRef, HostBinding, Input, OnDestroy, Renderer2, inject } from '@angular/core';\nimport { DragRef } from './drag-ref';\nimport { DOCUMENT } from '@angular/common';\nimport { ThyDragDropService } from './drag-drop.service';\nimport { THY_DROP_CONTAINER_DIRECTIVE, IThyDropContainerDirective } from './drop-container.class';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\n/**\n * 拖拽项\n * @name thy-drag,[thyDrag]\n * @order 10\n * @deprecated please use @angular/cdk/drag-drop\n */\n@Directive({\n selector: 'thy-drag,[thyDrag]',\n standalone: true\n})\nexport class ThyDragDirective<T = any> implements OnDestroy {\n container = inject(THY_DROP_CONTAINER_DIRECTIVE, { optional: true })!;\n private elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n\n /**\n * 元数据\n * @type any\n */\n @Input('thyDrag')\n set dragData(data: T) {\n this.data = data;\n }\n\n /**\n * 元数据\n * @type any\n */\n @Input('thyDragData') data: T;\n\n @HostBinding('attr.draggable') isDraggable = true;\n\n private _disabled = false;\n\n /**\n * 是否禁用拖拽\n * @default false\n */\n @Input({ alias: 'thyDragDisabled', transform: coerceBooleanProperty })\n set disabled(isDisabled: boolean) {\n this._disabled = isDisabled;\n this.isDraggable = !isDisabled;\n }\n get disabled() {\n return this._disabled;\n }\n\n public dragRef: DragRef<T>;\n\n constructor() {\n const document = inject(DOCUMENT);\n const container = this.container;\n const ngZone = inject(NgZone);\n const elementRef = this.elementRef;\n const service = inject<ThyDragDropService<T>>(ThyDragDropService);\n const renderer = inject(Renderer2);\n\n this.dragRef = new DragRef<T>(elementRef, this, container, service, document, ngZone, renderer);\n }\n\n ngOnDestroy() {\n this.dragRef.dispose();\n }\n}\n","import { Directive, ElementRef, Input, inject } from '@angular/core';\nimport { ThyDragDirective } from './drag.directive';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\n/**\n * 自定义可拖拽区域内容\n * @name thy-drag-handle,[thyDragHandle]\n * @order 20\n * @deprecated please use @angular/cdk/drag-drop\n */\n@Directive({\n selector: 'thy-drag-handle,[thyDragHandle]',\n standalone: true\n})\nexport class ThyDragHandleDirective {\n element = inject<ElementRef<HTMLElement>>(ElementRef);\n\n private _disabled = false;\n\n /**\n * 是否禁用\n * @default false\n */\n @Input({ alias: 'thyDisabled', transform: coerceBooleanProperty })\n set disabled(value: boolean) {\n this._disabled = value;\n }\n get disabled(): boolean {\n return this._disabled;\n }\n\n constructor() {\n const drag = inject(ThyDragDirective, { optional: true })!;\n\n if (drag) {\n drag.dragRef.withHandles(this);\n }\n }\n}\n","import { Directive, ElementRef, HostBinding, inject } from '@angular/core';\nimport { ThyDragDirective } from './drag.directive';\n\n/**\n * 自定义拖拽时可经过,拖拽结束时可放置的区域内容\n * @name thy-drag-content,[thyDragContent]\n * @order 25\n * @deprecated please use @angular/cdk/drag-drop\n */\n@Directive({\n selector: 'thy-drag-content,[thyDragContent]',\n standalone: true\n})\nexport class ThyDragContentDirective {\n element = inject<ElementRef<HTMLElement>>(ElementRef);\n\n @HostBinding('class.thy-drag-content') contentClass = true;\n\n constructor() {\n const drag = inject(ThyDragDirective, { optional: true })!;\n\n if (drag) {\n drag.dragRef.withContentElement(this.element);\n }\n }\n}\n","import {\n OnInit,\n Directive,\n Output,\n EventEmitter,\n ContentChildren,\n QueryList,\n AfterContentInit,\n NgZone,\n Input,\n OnDestroy,\n inject\n} from '@angular/core';\nimport { ThyDragDirective } from './drag.directive';\nimport { merge, Observable, defer, Subject } from 'rxjs';\nimport { takeUntil, startWith, take, switchMap } from 'rxjs/operators';\nimport { ThyDragDropEvent, ThyDragStartEvent, ThyDragEndEvent, ThyDragOverEvent } from './drag-drop.class';\nimport { THY_DROP_CONTAINER_DIRECTIVE, IThyDropContainerDirective } from './drop-container.class';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\n/**\n * @name thy-drop-container,[thyDropContainer]\n * @order 30\n * @deprecated please use @angular/cdk/drag-drop\n */\n@Directive({\n selector: 'thy-drop-container,[thyDropContainer]',\n providers: [\n {\n provide: THY_DROP_CONTAINER_DIRECTIVE,\n useExisting: ThyDropContainerDirective\n }\n ],\n standalone: true\n})\nexport class ThyDropContainerDirective<T = any> implements OnInit, AfterContentInit, IThyDropContainerDirective, OnDestroy {\n private ngZone = inject(NgZone);\n\n private ngUnsubscribe$ = new Subject<void>();\n\n /**\n * 元数据\n * @type any[]\n */\n @Input('thyDropContainer')\n set dragContainer(data: T[]) {\n this.data = data;\n }\n\n /**\n * 元数据\n * @type any[]\n */\n @Input('thyDropContainerData') data: T[];\n\n /**\n * 是否禁用拖拽\n * @default false\n */\n @Input({ alias: 'thyDropContainerDisabled', transform: coerceBooleanProperty }) disabled: boolean;\n\n /**\n * 拖拽之前的回调,函数返回 false 则阻止拖拽\n */\n @Input('thyBeforeDragStart') beforeStart: (e: ThyDragStartEvent<T>) => boolean;\n\n /**\n * 拖拽时回调,函数返回 false 则阻止移入\n */\n @Input('thyBeforeDragOver') beforeOver: (e: ThyDragOverEvent<T>) => boolean;\n\n /**\n * 拖放到元素时回调,函数返回 false 则阻止放置\n */\n @Input('thyBeforeDragDrop') beforeDrop: (e: ThyDragDropEvent<T>) => boolean;\n\n /**\n * 开始拖拽时调用\n */\n @Output('thyDragStarted') started = new EventEmitter<ThyDragStartEvent<ThyDragDirective>>();\n\n /**\n * dragend 触发时调用\n */\n @Output('thyDragEnded') ended = new EventEmitter<ThyDragEndEvent<ThyDragDirective>>();\n\n /**\n * dragover 触发时调用\n */\n @Output('thyDragOvered') overed = new EventEmitter<ThyDragOverEvent<ThyDragDirective>>();\n\n /**\n * drop 触发时调用\n */\n @Output('thyDragDropped') dropped = new EventEmitter<ThyDragDropEvent<ThyDragDirective>>();\n\n /**\n * @internal\n */\n @ContentChildren(ThyDragDirective, {\n descendants: false\n })\n draggables: QueryList<ThyDragDirective>;\n\n ngOnInit() {}\n\n ngAfterContentInit() {\n this.draggables.changes.pipe(startWith(null), takeUntil(this.ngUnsubscribe$)).subscribe(() => {\n this.draggableChanges();\n });\n }\n\n private draggableChanges() {\n this.resetDraggableChanges(item => item.dragRef.started).subscribe(event => {\n this.started.emit(event);\n });\n this.resetDraggableChanges(item => item.dragRef.ended).subscribe(event => {\n this.ended.emit(event);\n });\n this.resetDraggableChanges(item => item.dragRef.overed).subscribe(event => {\n this.overed.emit(event);\n });\n this.resetDraggableChanges(item => item.dragRef.dropped).subscribe(event => {\n this.dropped.emit(event);\n });\n }\n\n private resetDraggableChanges(fn: (item: ThyDragDirective) => Observable<any>) {\n return defer(() => {\n if (this.draggables) {\n return merge(...this.draggables.map(fn));\n }\n return this.ngZone.onStable.asObservable().pipe(\n take(1),\n switchMap(() => this.resetDraggableChanges.bind(this, fn))\n );\n }).pipe(takeUntil(merge(this.ngUnsubscribe$, this.draggables.changes))) as Observable<any>;\n }\n\n ngOnDestroy(): void {\n this.ngUnsubscribe$.next();\n this.ngUnsubscribe$.complete();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { warnDeprecation } from 'ngx-tethys/util';\nimport { ThyDragDirective } from './drag.directive';\nimport { ThyDragHandleDirective } from './drag-handle.directive';\nimport { ThyDragContentDirective } from './drag-content.directive';\nimport { ThyDropContainerDirective } from './drop-container.directive';\n\n/**\n * @deprecated please use @angular/cdk/drag-drop\n */\n@NgModule({\n imports: [ThyDropContainerDirective, ThyDragDirective, ThyDragHandleDirective, ThyDragContentDirective],\n exports: [ThyDropContainerDirective, ThyDragDirective, ThyDragHandleDirective, ThyDragContentDirective],\n providers: []\n})\nexport class ThyDragDropModule {\n constructor() {\n warnDeprecation('`ThyDragDropModule` is deprecated, please use `@angular/cdk/drag-drop` instead.');\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ngx-tethys-drag-drop.mjs","sources":["../../../src/drag-drop/drag-drop.class.ts","../../../src/drag-drop/drag-ref.ts","../../../src/drag-drop/drag-drop.service.ts","../../../src/drag-drop/drag-drop.token.ts","../../../src/drag-drop/drag.directive.ts","../../../src/drag-drop/drag-handle.directive.ts","../../../src/drag-drop/drag-content.directive.ts","../../../src/drag-drop/drop-container.directive.ts","../../../src/drag-drop/module.ts","../../../src/drag-drop/ngx-tethys-drag-drop.ts"],"sourcesContent":["export enum ThyDropPosition {\n in = 'in',\n before = 'before',\n after = 'after'\n}\n\nexport interface ThyDragStartEvent<T = any> {\n event?: Event;\n item?: T;\n containerItems?: T[];\n currentIndex: number;\n}\n\nexport interface ThyDragEndEvent<T = any> {\n event?: DragEvent;\n item?: T;\n containerItems?: T[];\n}\n\nexport interface ThyDragOverEvent<T = any> {\n event?: DragEvent;\n item?: T;\n containerItems?: T[];\n currentIndex: number;\n position?: ThyDropPosition;\n previousItem?: T;\n previousIndex?: number;\n previousContainerItems?: T[];\n}\n\nexport interface ThyDragDropEvent<T = any> {\n event?: DragEvent;\n item?: T;\n containerItems?: T[];\n currentIndex: number;\n position?: ThyDropPosition;\n previousItem?: T;\n previousIndex?: number;\n previousContainerItems?: T[];\n}\n","import { NgZone, ElementRef, Renderer2 } from '@angular/core';\nimport { coerceElement } from '@angular/cdk/coercion';\nimport { Subject, fromEvent } from 'rxjs';\nimport { auditTime, takeUntil } from 'rxjs/operators';\nimport { ThyDragDropService } from './drag-drop.service';\nimport { ThyDragStartEvent, ThyDragEndEvent, ThyDragOverEvent, ThyDragDropEvent, ThyDropPosition } from './drag-drop.class';\nimport { IThyDragDirective, IThyDragHandleDirective, IThyDropContainerDirective } from './drag-drop.token';\nimport { coerceArray, isEmpty, isString } from 'ngx-tethys/util';\n\nconst dropPositionClass = {\n [ThyDropPosition.in]: 'thy-drop-position-in',\n [ThyDropPosition.before]: 'thy-drop-position-before',\n [ThyDropPosition.after]: 'thy-drop-position-after'\n};\n\nexport class DragRef<T = any> {\n private rootElement: HTMLElement;\n\n private contentElement: HTMLElement;\n\n private target: HTMLElement;\n\n private handles: IThyDragHandleDirective[];\n\n private ngUnsubscribe$ = new Subject();\n\n started = new Subject<ThyDragStartEvent>();\n\n ended = new Subject<ThyDragEndEvent>();\n\n overed = new Subject<ThyDragOverEvent>();\n\n dropped = new Subject<ThyDragDropEvent>();\n\n entered = new Subject<DragEvent>();\n\n leaved = new Subject<DragEvent>();\n\n private _disabled = false;\n\n get disabled(): boolean {\n return (this.container && this.container.disabled) || this._disabled;\n }\n set disabled(value: boolean) {\n this._disabled = value;\n }\n\n private addPositionClass$ = new Subject<{ element: HTMLElement; class: string }>();\n\n constructor(\n element: ElementRef<HTMLElement> | HTMLElement,\n private drag: IThyDragDirective,\n private container: IThyDropContainerDirective<T>,\n private dragDropService: ThyDragDropService<T>,\n private document: any,\n private ngZone: NgZone,\n private renderer: Renderer2\n ) {\n this.withRootElement(element);\n this.subAddPositionClass();\n }\n\n subAddPositionClass() {\n this.addPositionClass$.pipe(auditTime(30), takeUntil(this.ngUnsubscribe$)).subscribe(data => {\n this.removeExistClassByMap(this.dragDropService.classMap);\n this.dragDropService.classMap.set(data.element, data.class);\n this.renderer.addClass(data.element, data.class);\n });\n }\n\n withRootElement(rootElement: ElementRef<HTMLElement> | HTMLElement): this {\n const element = coerceElement(rootElement);\n this.rootElement = element;\n this.registerDragDropEvents();\n return this;\n }\n\n withContentElement(contentElement: ElementRef<HTMLElement> | HTMLElement): this {\n this.contentElement = coerceElement(contentElement);\n return this;\n }\n\n withHandles(handleOrHandles: IThyDragHandleDirective | IThyDragHandleDirective[]): this {\n this.handles = coerceArray(handleOrHandles);\n return this;\n }\n\n private registerDragDropEvents() {\n const events = {\n dragstart: this.dragStart,\n dragover: this.dragOver,\n dragend: this.dragEnd,\n drop: this.dragDrop,\n dragleave: this.dragLeave,\n dragenter: (event: DragEvent) => {\n this.entered.next(event);\n },\n mouseover: (event: MouseEvent) => {\n this.target = event.target as HTMLElement;\n }\n };\n this.ngZone.runOutsideAngular(() => {\n for (const name in events) {\n if (events.hasOwnProperty(name)) {\n fromEvent(this.rootElement, name).pipe(takeUntil(this.ngUnsubscribe$)).subscribe(events[name].bind(this));\n }\n }\n });\n }\n\n private dragStart(event: DragEvent) {\n event.stopPropagation();\n const dragStartEvent: ThyDragStartEvent = {\n event: event,\n item: this.drag.data,\n containerItems: this.container.data,\n currentIndex: this.container.data.indexOf(this.drag.data)\n };\n if (this.disabled || !this.isTriggerHandle() || (this.container.beforeStart && !this.container.beforeStart(dragStartEvent))) {\n event.preventDefault();\n return false;\n }\n this.dragDropService.previousDrag = this.drag;\n this.ngZone.run(() => {\n this.started.next(dragStartEvent);\n });\n }\n\n private isTriggerHandle() {\n if (this.handles && this.handles.length > 0) {\n const targetHandle = this.handles.find(handle => {\n return (\n !handle.disabled && (handle.element.nativeElement === this.target || handle.element.nativeElement.contains(this.target))\n );\n });\n return !!targetHandle;\n } else {\n return true;\n }\n }\n\n private getPreviousEventData() {\n const previousItem = this.dragDropService.previousDrag?.data;\n const previousContainerItems = this.dragDropService.previousDrag?.container?.data;\n return {\n previousItem: previousItem,\n previousContainerItems,\n previousIndex: isEmpty(previousContainerItems) ? -1 : previousContainerItems.indexOf(previousItem)\n };\n }\n\n private isContinueDragOver(event: ThyDragOverEvent, container: IThyDropContainerDirective<T>) {\n if (event.item === event.previousItem && event.position === ThyDropPosition.in) {\n return false;\n }\n if (container && container.beforeOver) {\n return container.beforeOver(event);\n }\n return true;\n }\n\n private dragOver(event: DragEvent) {\n event.stopPropagation();\n event.preventDefault();\n\n const dropPosition = this.calcDropPosition(event);\n const previousEventData = this.getPreviousEventData();\n if (previousEventData.previousIndex < 0) {\n return;\n }\n const dragOverEvent: ThyDragOverEvent<T> = {\n event: event,\n item: this.drag.data,\n containerItems: this.drag.container.data,\n currentIndex: this.container.data.indexOf(this.drag.data),\n position: dropPosition,\n ...previousEventData\n };\n\n if (this.isContinueDragOver(dragOverEvent, this.container)) {\n this.dragOverHandler(dropPosition);\n this.overed.next(dragOverEvent);\n }\n }\n\n private dragOverHandler(position: ThyDropPosition) {\n const element = this.contentElement || this.rootElement;\n this.addPositionClass$.next({ element, class: dropPositionClass[position] });\n this.dragDropService.dropPosition = position;\n }\n\n private dragDrop(event: DragEvent) {\n event.stopPropagation();\n this.clearDragPositionClass();\n const previousEventData = this.getPreviousEventData();\n if (previousEventData.previousIndex < 0) {\n return;\n }\n const dragDropEvent: ThyDragDropEvent<T> = {\n event: event,\n item: this.drag.data,\n containerItems: this.drag.container.data,\n currentIndex: this.container.data.indexOf(this.drag.data),\n position: this.calcDropPosition(event),\n ...previousEventData\n };\n if (this.dragDropService.previousDrag === this.drag || (this.container.beforeDrop && !this.container.beforeDrop(dragDropEvent))) {\n event.preventDefault();\n return;\n }\n this.ngZone.run(() => {\n this.dropped.next(dragDropEvent);\n });\n }\n\n private dragEnd(event: DragEvent) {\n this.clearDragPositionClass();\n this.ngZone.run(() => {\n this.ended.next({\n event: event,\n item: this.drag.data,\n containerItems: this.container.data\n });\n });\n this.dragDropService.previousDrag = undefined;\n }\n\n private dragLeave(event: DragEvent) {\n event.stopPropagation();\n this.clearDragPositionClass();\n this.leaved.next(event);\n }\n\n private clearDragPositionClass() {\n setTimeout(() => {\n const classMap = this.dragDropService.classMap;\n this.removeExistClassByMap(classMap);\n classMap.clear();\n }, 30);\n }\n\n private removeExistClassByMap(classMap: Map<Element, string>) {\n classMap.forEach((value, key) => {\n if (isString(value) && key) {\n this.renderer.removeClass(key, value);\n }\n });\n }\n\n private calcDropPosition(event: DragEvent): ThyDropPosition {\n const sideRange = 0.25;\n const minGap = 2;\n const { clientY } = event;\n const { top, bottom, height } = event.srcElement\n ? (event.srcElement as Element).getBoundingClientRect()\n : (event.target as Element).getBoundingClientRect();\n const des = Math.max(height * sideRange, minGap);\n if (clientY <= top + des) {\n return ThyDropPosition.before;\n } else if (clientY >= bottom - des) {\n return ThyDropPosition.after;\n }\n return ThyDropPosition.in;\n }\n\n dispose() {\n this.ngUnsubscribe$.complete();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { IThyDragDirective } from './drag-drop.token';\nimport { ThyDropPosition } from './drag-drop.class';\n\n/**\n * 自定义可放置区域内容\n * @order 40\n * @deprecated please use @angular/cdk/drag-drop\n */\n@Injectable({ providedIn: 'root' })\nexport class ThyDragDropService<T = any> {\n /**\n * 当前拖拽项,dragEnd 后重置为 undefined\n */\n public previousDrag: IThyDragDirective<T>;\n\n /**\n * 拖拽的时候,针对 dragOver 的节点有三种情况,即拖拽到节点之上 before ,拖拽到节点上 in ,拖拽到节点之下 after\n * @type ThyDropPosition\n */\n public dropPosition: ThyDropPosition;\n\n /**\n * 用于拖动过程对 dragover 的元素设置相应的样式\n * @type Map<Element, string>\n */\n public classMap = new Map<Element, string>();\n constructor() {}\n}\n","import { EventEmitter, QueryList, InjectionToken, ElementRef } from '@angular/core';\nimport { ThyDragDropEvent, ThyDragStartEvent, ThyDragEndEvent, ThyDragOverEvent } from './drag-drop.class';\nimport { SafeAny } from 'ngx-tethys/types';\n\nexport interface IThyDragDirective<T = SafeAny> {\n data: T;\n container: IThyDropContainerDirective<T>;\n}\n\nexport interface IThyDragHandleDirective {\n element: ElementRef<HTMLElement>;\n disabled: boolean;\n}\n\nexport interface IThyDropContainerDirective<T = SafeAny> {\n started: EventEmitter<ThyDragStartEvent<T>>;\n\n ended: EventEmitter<ThyDragEndEvent<T>>;\n\n overed: EventEmitter<ThyDragOverEvent<T>>;\n\n dropped: EventEmitter<ThyDragDropEvent<T>>;\n\n beforeStart: (e: ThyDragStartEvent<T>) => boolean;\n\n beforeOver: (e: ThyDragOverEvent<T>) => boolean;\n\n beforeDrop: (e: ThyDragDropEvent<T>) => boolean;\n\n data: T[];\n\n disabled: boolean;\n\n draggables: QueryList<IThyDragDirective>;\n}\n\nexport const THY_DROP_CONTAINER_DIRECTIVE = new InjectionToken<IThyDropContainerDirective>('THY_DROP_CONTAINER_DIRECTIVE');\n","import { Directive, NgZone, ElementRef, HostBinding, Input, OnDestroy, Renderer2, inject } from '@angular/core';\nimport { DragRef } from './drag-ref';\nimport { DOCUMENT } from '@angular/common';\nimport { ThyDragDropService } from './drag-drop.service';\nimport { IThyDragDirective, THY_DROP_CONTAINER_DIRECTIVE } from './drag-drop.token';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\n/**\n * 拖拽项\n * @name thy-drag,[thyDrag]\n * @order 10\n * @deprecated please use @angular/cdk/drag-drop\n */\n@Directive({\n selector: 'thy-drag,[thyDrag]'\n})\nexport class ThyDragDirective<T = any> implements IThyDragDirective, OnDestroy {\n container = inject(THY_DROP_CONTAINER_DIRECTIVE, { optional: true })!;\n private elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n\n /**\n * 元数据\n * @type any\n */\n @Input('thyDrag')\n set dragData(data: T) {\n this.data = data;\n }\n\n /**\n * 元数据\n * @type any\n */\n @Input('thyDragData') data: T;\n\n @HostBinding('attr.draggable') isDraggable = true;\n\n private _disabled = false;\n\n /**\n * 是否禁用拖拽\n * @default false\n */\n @Input({ alias: 'thyDragDisabled', transform: coerceBooleanProperty })\n set disabled(isDisabled: boolean) {\n this._disabled = isDisabled;\n this.isDraggable = !isDisabled;\n }\n get disabled() {\n return this._disabled;\n }\n\n public dragRef: DragRef<T>;\n\n constructor() {\n const document = inject(DOCUMENT);\n const container = this.container;\n const ngZone = inject(NgZone);\n const elementRef = this.elementRef;\n const service = inject<ThyDragDropService<T>>(ThyDragDropService);\n const renderer = inject(Renderer2);\n\n this.dragRef = new DragRef<T>(elementRef, this, container, service, document, ngZone, renderer);\n }\n\n ngOnDestroy() {\n this.dragRef.dispose();\n }\n}\n","import { Directive, ElementRef, Input, inject } from '@angular/core';\nimport { ThyDragDirective } from './drag.directive';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\nimport { IThyDragHandleDirective } from './drag-drop.token';\n\n/**\n * 自定义可拖拽区域内容\n * @name thy-drag-handle,[thyDragHandle]\n * @order 20\n * @deprecated please use @angular/cdk/drag-drop\n */\n@Directive({\n selector: 'thy-drag-handle,[thyDragHandle]'\n})\nexport class ThyDragHandleDirective implements IThyDragHandleDirective {\n element = inject<ElementRef<HTMLElement>>(ElementRef);\n\n private _disabled = false;\n\n /**\n * 是否禁用\n * @default false\n */\n @Input({ alias: 'thyDisabled', transform: coerceBooleanProperty })\n set disabled(value: boolean) {\n this._disabled = value;\n }\n get disabled(): boolean {\n return this._disabled;\n }\n\n constructor() {\n const drag = inject(ThyDragDirective, { optional: true })!;\n\n if (drag) {\n drag.dragRef.withHandles(this);\n }\n }\n}\n","import { Directive, ElementRef, HostBinding, inject } from '@angular/core';\nimport { ThyDragDirective } from './drag.directive';\n\n/**\n * 自定义拖拽时可经过,拖拽结束时可放置的区域内容\n * @name thy-drag-content,[thyDragContent]\n * @order 25\n * @deprecated please use @angular/cdk/drag-drop\n */\n@Directive({\n selector: 'thy-drag-content,[thyDragContent]'\n})\nexport class ThyDragContentDirective {\n element = inject<ElementRef<HTMLElement>>(ElementRef);\n\n @HostBinding('class.thy-drag-content') contentClass = true;\n\n constructor() {\n const drag = inject(ThyDragDirective, { optional: true })!;\n\n if (drag) {\n drag.dragRef.withContentElement(this.element);\n }\n }\n}\n","import {\n OnInit,\n Directive,\n Output,\n EventEmitter,\n ContentChildren,\n QueryList,\n AfterContentInit,\n NgZone,\n Input,\n OnDestroy,\n inject\n} from '@angular/core';\nimport { ThyDragDirective } from './drag.directive';\nimport { merge, Observable, defer, Subject } from 'rxjs';\nimport { takeUntil, startWith, take, switchMap } from 'rxjs/operators';\nimport { ThyDragDropEvent, ThyDragStartEvent, ThyDragEndEvent, ThyDragOverEvent } from './drag-drop.class';\nimport { THY_DROP_CONTAINER_DIRECTIVE, IThyDropContainerDirective } from './drag-drop.token';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\n/**\n * @name thy-drop-container,[thyDropContainer]\n * @order 30\n * @deprecated please use @angular/cdk/drag-drop\n */\n@Directive({\n selector: 'thy-drop-container,[thyDropContainer]',\n providers: [\n {\n provide: THY_DROP_CONTAINER_DIRECTIVE,\n useExisting: ThyDropContainerDirective\n }\n ]\n})\nexport class ThyDropContainerDirective<T = any> implements OnInit, AfterContentInit, IThyDropContainerDirective, OnDestroy {\n private ngZone = inject(NgZone);\n\n private ngUnsubscribe$ = new Subject<void>();\n\n /**\n * 元数据\n * @type any[]\n */\n @Input('thyDropContainer')\n set dragContainer(data: T[]) {\n this.data = data;\n }\n\n /**\n * 元数据\n * @type any[]\n */\n @Input('thyDropContainerData') data: T[];\n\n /**\n * 是否禁用拖拽\n * @default false\n */\n @Input({ alias: 'thyDropContainerDisabled', transform: coerceBooleanProperty }) disabled: boolean;\n\n /**\n * 拖拽之前的回调,函数返回 false 则阻止拖拽\n */\n @Input('thyBeforeDragStart') beforeStart: (e: ThyDragStartEvent<T>) => boolean;\n\n /**\n * 拖拽时回调,函数返回 false 则阻止移入\n */\n @Input('thyBeforeDragOver') beforeOver: (e: ThyDragOverEvent<T>) => boolean;\n\n /**\n * 拖放到元素时回调,函数返回 false 则阻止放置\n */\n @Input('thyBeforeDragDrop') beforeDrop: (e: ThyDragDropEvent<T>) => boolean;\n\n /**\n * 开始拖拽时调用\n */\n @Output('thyDragStarted') started = new EventEmitter<ThyDragStartEvent<ThyDragDirective>>();\n\n /**\n * dragend 触发时调用\n */\n @Output('thyDragEnded') ended = new EventEmitter<ThyDragEndEvent<ThyDragDirective>>();\n\n /**\n * dragover 触发时调用\n */\n @Output('thyDragOvered') overed = new EventEmitter<ThyDragOverEvent<ThyDragDirective>>();\n\n /**\n * drop 触发时调用\n */\n @Output('thyDragDropped') dropped = new EventEmitter<ThyDragDropEvent<ThyDragDirective>>();\n\n /**\n * @internal\n */\n @ContentChildren(ThyDragDirective, {\n descendants: false\n })\n draggables: QueryList<ThyDragDirective>;\n\n ngOnInit() {}\n\n ngAfterContentInit() {\n this.draggables.changes.pipe(startWith(null), takeUntil(this.ngUnsubscribe$)).subscribe(() => {\n this.draggableChanges();\n });\n }\n\n private draggableChanges() {\n this.resetDraggableChanges(item => item.dragRef.started).subscribe(event => {\n this.started.emit(event);\n });\n this.resetDraggableChanges(item => item.dragRef.ended).subscribe(event => {\n this.ended.emit(event);\n });\n this.resetDraggableChanges(item => item.dragRef.overed).subscribe(event => {\n this.overed.emit(event);\n });\n this.resetDraggableChanges(item => item.dragRef.dropped).subscribe(event => {\n this.dropped.emit(event);\n });\n }\n\n private resetDraggableChanges(fn: (item: ThyDragDirective) => Observable<any>) {\n return defer(() => {\n if (this.draggables) {\n return merge(...this.draggables.map(fn));\n }\n return this.ngZone.onStable.asObservable().pipe(\n take(1),\n switchMap(() => this.resetDraggableChanges.bind(this, fn))\n );\n }).pipe(takeUntil(merge(this.ngUnsubscribe$, this.draggables.changes))) as Observable<any>;\n }\n\n ngOnDestroy(): void {\n this.ngUnsubscribe$.next();\n this.ngUnsubscribe$.complete();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { warnDeprecation } from 'ngx-tethys/util';\nimport { ThyDragDirective } from './drag.directive';\nimport { ThyDragHandleDirective } from './drag-handle.directive';\nimport { ThyDragContentDirective } from './drag-content.directive';\nimport { ThyDropContainerDirective } from './drop-container.directive';\n\n/**\n * @deprecated please use @angular/cdk/drag-drop\n */\n@NgModule({\n imports: [ThyDropContainerDirective, ThyDragDirective, ThyDragHandleDirective, ThyDragContentDirective],\n exports: [ThyDropContainerDirective, ThyDragDirective, ThyDragHandleDirective, ThyDragContentDirective],\n providers: []\n})\nexport class ThyDragDropModule {\n constructor() {\n warnDeprecation('`ThyDragDropModule` is deprecated, please use `@angular/cdk/drag-drop` instead.');\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}