ngx-tethys 18.1.0 → 18.2.0-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (155) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/alert/styles/mixin.scss +1 -1
  3. package/anchor/style/anchor.scss +4 -2
  4. package/avatar/styles/avatar.scss +1 -1
  5. package/back-top/styles/back-top.scss +3 -3
  6. package/button/styles/button-group.scss +9 -9
  7. package/button/styles/button.scss +2 -6
  8. package/button/styles/mixin.scss +6 -53
  9. package/calendar/styles/calendar.scss +3 -11
  10. package/card/styles/card.scss +3 -3
  11. package/carousel/styles/carousel.scss +10 -10
  12. package/cascader/styles/cascader.scss +3 -2
  13. package/collapse/styles/collapse.scss +4 -2
  14. package/color-picker/styles/alpha.scss +1 -1
  15. package/color-picker/styles/color-picker-panel.scss +1 -1
  16. package/color-picker/styles/hue.scss +1 -1
  17. package/color-picker/styles/saturation.scss +1 -1
  18. package/comment/styles/mixin.scss +1 -1
  19. package/core/index.d.ts +1 -0
  20. package/core/overlay/abstract-overlay.config.d.ts +5 -0
  21. package/core/theme/index.d.ts +2 -0
  22. package/core/theme/store.d.ts +11 -0
  23. package/core/theme/theme.d.ts +5 -0
  24. package/date-picker/styles/calendar.scss +1 -1
  25. package/date-picker/styles/decade-panel.scss +1 -1
  26. package/date-picker/styles/picker.scss +1 -1
  27. package/date-picker/styles/range-picker.scss +3 -3
  28. package/date-picker/styles/year-panel.scss +2 -2
  29. package/dialog/styles/dialog.scss +6 -6
  30. package/drag-drop/drag-content.directive.d.ts +1 -0
  31. package/drag-drop/drag-drop.service.d.ts +1 -0
  32. package/drag-drop/drag-handle.directive.d.ts +1 -0
  33. package/drag-drop/drag.directive.d.ts +1 -0
  34. package/drag-drop/drop-container.directive.d.ts +2 -5
  35. package/drag-drop/module.d.ts +4 -0
  36. package/dropdown/styles/dropdown.scss +3 -3
  37. package/empty/styles/empty.scss +22 -2
  38. package/esm2022/carousel/carousel.component.mjs +3 -3
  39. package/esm2022/core/index.mjs +2 -1
  40. package/esm2022/core/overlay/abstract-overlay.config.mjs +1 -1
  41. package/esm2022/core/overlay/abstract-overlay.service.mjs +2 -2
  42. package/esm2022/core/theme/index.mjs +3 -0
  43. package/esm2022/core/theme/store.mjs +42 -0
  44. package/esm2022/core/theme/theme.mjs +2 -0
  45. package/esm2022/dialog/dialog-container.component.mjs +2 -2
  46. package/esm2022/drag-drop/drag-content.directive.mjs +2 -1
  47. package/esm2022/drag-drop/drag-drop.service.mjs +2 -1
  48. package/esm2022/drag-drop/drag-handle.directive.mjs +2 -1
  49. package/esm2022/drag-drop/drag.directive.mjs +2 -1
  50. package/esm2022/drag-drop/drop-container.directive.mjs +2 -1
  51. package/esm2022/drag-drop/module.mjs +9 -2
  52. package/esm2022/empty/svgs.mjs +103 -8
  53. package/esm2022/guider/guider-hint/guider-hint.component.mjs +3 -3
  54. package/esm2022/notify/notify.component.mjs +3 -3
  55. package/esm2022/result/result.component.mjs +3 -3
  56. package/esm2022/table/table-skeleton.component.mjs +3 -3
  57. package/esm2022/version.mjs +2 -2
  58. package/esm2022/watermark/config.mjs +2 -2
  59. package/esm2022/watermark/watermark.directive.mjs +18 -10
  60. package/fesm2022/ngx-tethys-carousel.mjs +2 -2
  61. package/fesm2022/ngx-tethys-carousel.mjs.map +1 -1
  62. package/fesm2022/ngx-tethys-core.mjs +43 -3
  63. package/fesm2022/ngx-tethys-core.mjs.map +1 -1
  64. package/fesm2022/ngx-tethys-dialog.mjs +1 -1
  65. package/fesm2022/ngx-tethys-dialog.mjs.map +1 -1
  66. package/fesm2022/ngx-tethys-drag-drop.mjs +13 -2
  67. package/fesm2022/ngx-tethys-drag-drop.mjs.map +1 -1
  68. package/fesm2022/ngx-tethys-empty.mjs +102 -7
  69. package/fesm2022/ngx-tethys-empty.mjs.map +1 -1
  70. package/fesm2022/ngx-tethys-guider.mjs +2 -2
  71. package/fesm2022/ngx-tethys-guider.mjs.map +1 -1
  72. package/fesm2022/ngx-tethys-notify.mjs +2 -2
  73. package/fesm2022/ngx-tethys-notify.mjs.map +1 -1
  74. package/fesm2022/ngx-tethys-result.mjs +2 -2
  75. package/fesm2022/ngx-tethys-result.mjs.map +1 -1
  76. package/fesm2022/ngx-tethys-table.mjs +2 -2
  77. package/fesm2022/ngx-tethys-table.mjs.map +1 -1
  78. package/fesm2022/ngx-tethys-watermark.mjs +18 -10
  79. package/fesm2022/ngx-tethys-watermark.mjs.map +1 -1
  80. package/fesm2022/ngx-tethys.mjs +1 -1
  81. package/fesm2022/ngx-tethys.mjs.map +1 -1
  82. package/form/styles/form-check.scss +1 -1
  83. package/form/styles/forms.scss +2 -3
  84. package/form/styles/mixin.scss +6 -5
  85. package/guider/styles/guider-tip.scss +2 -1
  86. package/icon/examples/all/all.component.scss +3 -1
  87. package/image/styles/image.scss +15 -11
  88. package/input/styles/input-group.scss +1 -1
  89. package/input/styles/input.scss +2 -2
  90. package/layout/examples/sidebar/sidebar.component.scss +1 -1
  91. package/layout/styles/layout.scss +3 -3
  92. package/menu/examples/theme/theme.component.scss +0 -8
  93. package/menu/styles/theme.scss +4 -4
  94. package/message/styles/message.scss +1 -1
  95. package/nav/examples/basic/basic.component.scss +1 -1
  96. package/nav/examples/extra/extra.component.scss +1 -1
  97. package/nav/examples/fill/fill.component.scss +1 -1
  98. package/nav/examples/lite/lite.component.scss +1 -1
  99. package/nav/examples/pills/pills.component.scss +1 -1
  100. package/nav/examples/responsive/responsive.component.scss +1 -1
  101. package/nav/examples/size/size.component.scss +1 -1
  102. package/nav/examples/tabs/tabs.component.scss +1 -1
  103. package/nav/examples/type/type.component.scss +1 -1
  104. package/nav/examples/vertical/vertical.component.scss +1 -1
  105. package/notify/styles/notify.scss +4 -4
  106. package/package.json +1 -1
  107. package/pagination/styles/pagination.scss +2 -2
  108. package/popover/styles.scss +3 -3
  109. package/property/styles/properties.scss +1 -1
  110. package/resizable/examples/line/line.component.scss +3 -1
  111. package/resizable/examples/style.scss +7 -5
  112. package/result/styles/result.scss +25 -1
  113. package/schematics/version.d.ts +1 -1
  114. package/schematics/version.js +1 -1
  115. package/segment/styles/mixin.scss +2 -3
  116. package/segment/styles/segment.scss +1 -1
  117. package/select/styles/select.scss +1 -1
  118. package/shared/option/styles/option.mixin.scss +1 -1
  119. package/shared/select/styles/select.mixin.scss +2 -2
  120. package/slide/examples/drawer-container/drawer-container.component.scss +1 -1
  121. package/slide/examples/layout/layout.component.scss +4 -2
  122. package/slide/styles/slide.scss +3 -2
  123. package/slider/slider.scss +2 -2
  124. package/stepper/examples/basic/basic.component.scss +3 -1
  125. package/stepper/examples/icon/icon.component.scss +3 -1
  126. package/stepper/styles/stepper.scss +7 -3
  127. package/styles/bootstrap/_variables.scss +14 -876
  128. package/styles/bootstrap/utilities/_background.scss +27 -5
  129. package/styles/bootstrap/utilities/_text.scss +29 -31
  130. package/styles/index.scss +2 -1
  131. package/styles/mixins/background-variant.scss +2 -10
  132. package/styles/mixins/utilities.scss +2 -11
  133. package/styles/modules/cdk/drag-drop.scss +6 -8
  134. package/styles/modules/close.scss +1 -1
  135. package/styles/modules/reboot.scss +1 -1
  136. package/styles/modules/tables.scss +1 -1
  137. package/styles/modules/utils.scss +0 -17
  138. package/styles/theme/dark.scss +70 -0
  139. package/styles/theme/default.scss +70 -0
  140. package/styles/theme/index.scss +2 -0
  141. package/styles/variables.scss +114 -76
  142. package/switch/styles/mixin.scss +0 -13
  143. package/table/styles/table.scss +7 -19
  144. package/tabs/styles/tabs.scss +1 -1
  145. package/tag/styles/mixin.scss +7 -42
  146. package/tag/styles/tag.scss +2 -2
  147. package/time-picker/styles/time-panel.scss +1 -1
  148. package/timeline/styles/timeline.scss +2 -2
  149. package/tooltip/styles.scss +4 -4
  150. package/transfer/styles/transfer.scss +2 -2
  151. package/tree/styles/tree.scss +3 -5
  152. package/watermark/config.d.ts +1 -1
  153. package/watermark/watermark.directive.d.ts +23 -2
  154. package/carousel/styles/index.scss +0 -1
  155. package/carousel/styles/variables.scss +0 -5
@@ -1,9 +1,10 @@
1
1
  import * as i0 from '@angular/core';
2
- import { inject, ElementRef, DestroyRef, Directive, Input, NgModule } from '@angular/core';
2
+ import { inject, ElementRef, DestroyRef, effect, Directive, Input, NgModule } from '@angular/core';
3
3
  import { Subject, Observable } from 'rxjs';
4
4
  import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
5
5
  import { MutationObserverFactory } from '@angular/cdk/observers';
6
6
  import { coerceBooleanProperty } from 'ngx-tethys/util';
7
+ import { ThyThemeStore } from 'ngx-tethys/core';
7
8
  import { CommonModule } from '@angular/common';
8
9
  import { ThySharedModule } from 'ngx-tethys/shared';
9
10
 
@@ -21,7 +22,7 @@ const DEFAULT_WATERMARK_CONFIG = {
21
22
  };
22
23
  const DEFAULT_CANVAS_CONFIG = {
23
24
  degree: 15,
24
- color: 'rgba(51, 51, 51, 0.12)',
25
+ color: ['rgba(51, 51, 51, 0.12)', 'rgb(60, 65, 74)'],
25
26
  fontSize: 12,
26
27
  textLineHeight: 20,
27
28
  gutter: [250, 200]
@@ -32,6 +33,13 @@ const DEFAULT_CANVAS_CONFIG = {
32
33
  * @name thyWatermark
33
34
  */
34
35
  class ThyWatermarkDirective {
36
+ /**
37
+ * 水印内容
38
+ */
39
+ set thyWatermark(value) {
40
+ value = value?.replace(/^\"|\"$/g, '');
41
+ this.content = !!value ? value : '';
42
+ }
35
43
  constructor() {
36
44
  this.el = inject(ElementRef);
37
45
  /**
@@ -40,13 +48,12 @@ class ThyWatermarkDirective {
40
48
  this.thyDisabled = false;
41
49
  this.createWatermark$ = new Subject();
42
50
  this.destroyRef = inject(DestroyRef);
43
- }
44
- /**
45
- * 水印内容
46
- */
47
- set thyWatermark(value) {
48
- value = value?.replace(/^\"|\"$/g, '');
49
- this.content = !!value ? value : '';
51
+ this.thyThemeStore = inject(ThyThemeStore);
52
+ effect(() => {
53
+ if (!this.thyDisabled && this.thyThemeStore.theme()) {
54
+ this.refreshWatermark();
55
+ }
56
+ });
50
57
  }
51
58
  ngOnInit() {
52
59
  if (!this.thyDisabled) {
@@ -90,6 +97,7 @@ class ThyWatermarkDirective {
90
97
  ...DEFAULT_CANVAS_CONFIG,
91
98
  ...(this.thyCanvasConfig || {})
92
99
  };
100
+ color = this.thyThemeStore.normalizeColor(color);
93
101
  const [xGutter, yGutter] = gutter;
94
102
  const canvas = document.createElement('canvas');
95
103
  const ctx = canvas.getContext('2d');
@@ -181,7 +189,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
181
189
  selector: '[thyWatermark]',
182
190
  standalone: true
183
191
  }]
184
- }], propDecorators: { thyDisabled: [{
192
+ }], ctorParameters: () => [], propDecorators: { thyDisabled: [{
185
193
  type: Input,
186
194
  args: [{ transform: coerceBooleanProperty }]
187
195
  }], thyWatermark: [{
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-tethys-watermark.mjs","sources":["../../../src/watermark/config.ts","../../../src/watermark/watermark.directive.ts","../../../src/watermark/watermark.module.ts","../../../src/watermark/ngx-tethys-watermark.ts"],"sourcesContent":["export const DEFAULT_WATERMARK_CONFIG = {\n position: 'absolute',\n top: 0,\n left: 0,\n width: '100%',\n height: '100%',\n opacity: '0.8',\n 'background-repeat': 'repeat',\n 'pointer-events': 'none',\n 'z-index': 2147483647,\n 'background-image': ''\n};\n\nexport const DEFAULT_CANVAS_CONFIG = {\n degree: 15,\n color: 'rgba(51, 51, 51, 0.12)',\n fontSize: 12,\n textLineHeight: 20,\n gutter: [250, 200]\n};\n","import { Directive, Input, ElementRef, OnInit, SimpleChanges, OnChanges, inject, DestroyRef } from '@angular/core';\nimport { Subject, Observable } from 'rxjs';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { DEFAULT_WATERMARK_CONFIG, DEFAULT_CANVAS_CONFIG } from './config';\nimport { MutationObserverFactory } from '@angular/cdk/observers';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\nexport interface ThyCanvasConfigType {\n degree?: number;\n color?: string;\n fontSize?: number | string;\n textLineHeight?: number;\n gutter?: number[];\n}\n\n/**\n * 水印指令\n * @name thyWatermark\n */\n@Directive({\n selector: '[thyWatermark]',\n standalone: true\n})\nexport class ThyWatermarkDirective implements OnInit, OnChanges {\n private el = inject(ElementRef);\n\n /**\n * 是否禁用,默认为 false\n */\n @Input({ transform: coerceBooleanProperty })\n thyDisabled: boolean = false;\n\n content: string;\n /**\n * 水印内容\n */\n @Input()\n set thyWatermark(value: string) {\n value = value?.replace(/^\\\"|\\\"$/g, '');\n this.content = !!value ? value : '';\n }\n\n /**\n * canvas样式配置\n */\n @Input() thyCanvasConfig: ThyCanvasConfigType;\n\n private createWatermark$ = new Subject<string>();\n\n private observer: MutationObserver;\n\n private canvas: HTMLCanvasElement;\n\n private wmDiv: HTMLElement;\n\n private readonly destroyRef = inject(DestroyRef);\n\n ngOnInit() {\n if (!this.thyDisabled) {\n this.createWatermark$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(() => {\n this.observeAttributes()\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(() => {});\n });\n this.createWatermark();\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n const { thyWatermark, thyDisabled } = changes;\n const thyWatermarkChange = () => {\n if (thyWatermark.firstChange) return;\n if (thyWatermark.currentValue) {\n this.refreshWatermark();\n }\n };\n const thyDisabledChange = () => {\n if (thyDisabled.firstChange) return;\n thyDisabled?.currentValue ? this.removeWatermark() : this.refreshWatermark();\n };\n thyWatermark && thyWatermarkChange();\n thyDisabled && thyDisabledChange();\n }\n\n private refreshWatermark() {\n this.removeWatermark();\n this.createWatermark();\n }\n\n private removeWatermark() {\n if (this.wmDiv) {\n this.wmDiv.remove();\n this.wmDiv = null;\n }\n }\n\n createCanvas() {\n let { gutter, fontSize, color, degree, textLineHeight } = {\n ...DEFAULT_CANVAS_CONFIG,\n ...(this.thyCanvasConfig || {})\n };\n\n const [xGutter, yGutter] = gutter;\n const canvas = document.createElement('canvas');\n const ctx = canvas.getContext('2d');\n\n const getFakeSize = () => {\n const fakeBox = document.createElement('div');\n const fakeBoxStyle = {\n position: 'absolute',\n top: 0,\n left: 0,\n display: 'inline-block',\n 'font-size': `${parseFloat('' + fontSize)}px`,\n 'word-wrap': 'break-word',\n 'font-family': 'inherit',\n 'white-space': 'pre-line'\n };\n const styleStr = Object.keys(fakeBoxStyle).reduce((pre, next) => ((pre += `${next}:${fakeBoxStyle[next]};`), pre), '');\n fakeBox.setAttribute('style', styleStr);\n\n fakeBox.innerHTML = this.content.replace(/(\\\\n)/gm, '</br>');\n document.querySelector('body').insertBefore(fakeBox, document.querySelector('body').firstChild);\n const { width, height } = fakeBox.getBoundingClientRect();\n fakeBox.remove();\n return { width, height };\n };\n const { width: fakeBoxWidth, height: fakeBoxHeight } = getFakeSize();\n\n const angle = (degree * Math.PI) / 180;\n const contentArr = this.content.split('\\\\n');\n const canvasHeight = Math.sin(angle) * fakeBoxWidth + fakeBoxHeight;\n\n let start = Math.ceil(Math.sin(angle) * fakeBoxWidth * Math.sin(angle));\n const canvasWidth = start + fakeBoxWidth;\n canvas.setAttribute('width', '' + (canvasWidth + xGutter));\n canvas.setAttribute('height', '' + (canvasHeight + yGutter));\n\n ctx.font = `${parseFloat('' + fontSize)}px microsoft yahei`;\n ctx.textAlign = 'center';\n ctx.textBaseline = 'top';\n ctx.fillStyle = color;\n ctx.rotate(0 - (degree * Math.PI) / 180);\n contentArr.map((k, i) => {\n ctx.fillText(k, -start + Math.ceil(canvasWidth / 2), Math.sin(angle) * canvasWidth + textLineHeight * i);\n start += Math.sin(angle) * textLineHeight;\n });\n this.canvas = canvas;\n return canvas;\n }\n\n private createWatermark(isRefresh = true) {\n const watermarkDiv = this.wmDiv || document.createElement('div');\n\n const background = !isRefresh ? this.canvas.toDataURL() : this.createCanvas().toDataURL();\n const watermarkStyle = {\n ...DEFAULT_WATERMARK_CONFIG,\n 'background-image': `url(${background})`\n };\n\n const styleStr = Object.keys(watermarkStyle).reduce((pre, next) => ((pre += `${next}:${watermarkStyle[next]};`), pre), '');\n watermarkDiv.setAttribute('style', styleStr);\n\n if (!this.wmDiv) {\n const parentNode = this.el.nativeElement;\n watermarkDiv.classList.add(`_vm`);\n this.wmDiv = watermarkDiv;\n parentNode.insertBefore(watermarkDiv, parentNode.firstChild);\n }\n this.createWatermark$.next('');\n }\n\n private observeAttributes() {\n this.observer?.disconnect();\n return new Observable(observe => {\n const stream = new Subject<MutationRecord[]>();\n this.observer = new MutationObserverFactory().create(mutations => stream.next(mutations));\n if (this.observer) {\n this.observer.observe(this.wmDiv, {\n attributes: true\n });\n }\n stream.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(() => {\n if (this.wmDiv) {\n this?.observer?.disconnect();\n this.createWatermark(false);\n }\n });\n observe.next(stream);\n return () => {\n this.observer?.disconnect();\n };\n });\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { ThySharedModule } from 'ngx-tethys/shared';\nimport { ThyWatermarkDirective } from './watermark.directive';\n\n@NgModule({\n imports: [CommonModule, ThySharedModule, ThyWatermarkDirective],\n exports: [ThyWatermarkDirective],\n providers: []\n})\nexport class ThyWatermarkModule {}\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-watermark.mjs","sources":["../../../src/watermark/config.ts","../../../src/watermark/watermark.directive.ts","../../../src/watermark/watermark.module.ts","../../../src/watermark/ngx-tethys-watermark.ts"],"sourcesContent":["export const DEFAULT_WATERMARK_CONFIG = {\n position: 'absolute',\n top: 0,\n left: 0,\n width: '100%',\n height: '100%',\n opacity: '0.8',\n 'background-repeat': 'repeat',\n 'pointer-events': 'none',\n 'z-index': 2147483647,\n 'background-image': ''\n};\n\nexport const DEFAULT_CANVAS_CONFIG = {\n degree: 15,\n color: ['rgba(51, 51, 51, 0.12)', 'rgb(60, 65, 74)'],\n fontSize: 12,\n textLineHeight: 20,\n gutter: [250, 200]\n};\n","import { Directive, Input, ElementRef, OnInit, SimpleChanges, OnChanges, inject, DestroyRef, effect } from '@angular/core';\nimport { Subject, Observable } from 'rxjs';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { DEFAULT_WATERMARK_CONFIG, DEFAULT_CANVAS_CONFIG } from './config';\nimport { MutationObserverFactory } from '@angular/cdk/observers';\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\nimport { ThyThemeStore } from 'ngx-tethys/core';\n\n/**\n * @public\n * 水印样式配置\n */\nexport interface ThyCanvasConfigType {\n /**\n * 偏移角度\n */\n degree?: number;\n /**\n * 字体颜色。如果传的是数组,第一个为默认主题的字体颜色,第二个为黑暗主题的字体颜色\n */\n color?: string | string[];\n /**\n * 字体大小\n */\n fontSize?: number | string;\n /**\n * 文本行高\n */\n textLineHeight?: number;\n /**\n * 横纵间距\n */\n gutter?: number[];\n}\n\n/**\n * 水印指令\n * @name thyWatermark\n */\n@Directive({\n selector: '[thyWatermark]',\n standalone: true\n})\nexport class ThyWatermarkDirective implements OnInit, OnChanges {\n private el = inject(ElementRef);\n\n /**\n * 是否禁用,默认为 false\n */\n @Input({ transform: coerceBooleanProperty })\n thyDisabled: boolean = false;\n\n content: string;\n /**\n * 水印内容\n */\n @Input()\n set thyWatermark(value: string) {\n value = value?.replace(/^\\\"|\\\"$/g, '');\n this.content = !!value ? value : '';\n }\n\n /**\n * 水印样式配置\n */\n @Input() thyCanvasConfig: ThyCanvasConfigType;\n\n private createWatermark$ = new Subject<string>();\n\n private observer: MutationObserver;\n\n private canvas: HTMLCanvasElement;\n\n private wmDiv: HTMLElement;\n\n private readonly destroyRef = inject(DestroyRef);\n\n private thyThemeStore = inject(ThyThemeStore);\n\n constructor() {\n effect(() => {\n if (!this.thyDisabled && this.thyThemeStore.theme()) {\n this.refreshWatermark();\n }\n });\n }\n\n ngOnInit() {\n if (!this.thyDisabled) {\n this.createWatermark$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(() => {\n this.observeAttributes()\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(() => {});\n });\n\n this.createWatermark();\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n const { thyWatermark, thyDisabled } = changes;\n const thyWatermarkChange = () => {\n if (thyWatermark.firstChange) return;\n if (thyWatermark.currentValue) {\n this.refreshWatermark();\n }\n };\n const thyDisabledChange = () => {\n if (thyDisabled.firstChange) return;\n thyDisabled?.currentValue ? this.removeWatermark() : this.refreshWatermark();\n };\n thyWatermark && thyWatermarkChange();\n thyDisabled && thyDisabledChange();\n }\n\n private refreshWatermark() {\n this.removeWatermark();\n this.createWatermark();\n }\n\n private removeWatermark() {\n if (this.wmDiv) {\n this.wmDiv.remove();\n this.wmDiv = null;\n }\n }\n\n createCanvas() {\n let { gutter, fontSize, color, degree, textLineHeight } = {\n ...DEFAULT_CANVAS_CONFIG,\n ...(this.thyCanvasConfig || {})\n };\n color = this.thyThemeStore.normalizeColor(color);\n\n const [xGutter, yGutter] = gutter;\n const canvas = document.createElement('canvas');\n const ctx = canvas.getContext('2d');\n\n const getFakeSize = () => {\n const fakeBox = document.createElement('div');\n const fakeBoxStyle = {\n position: 'absolute',\n top: 0,\n left: 0,\n display: 'inline-block',\n 'font-size': `${parseFloat('' + fontSize)}px`,\n 'word-wrap': 'break-word',\n 'font-family': 'inherit',\n 'white-space': 'pre-line'\n };\n const styleStr = Object.keys(fakeBoxStyle).reduce((pre, next) => ((pre += `${next}:${fakeBoxStyle[next]};`), pre), '');\n fakeBox.setAttribute('style', styleStr);\n\n fakeBox.innerHTML = this.content.replace(/(\\\\n)/gm, '</br>');\n document.querySelector('body').insertBefore(fakeBox, document.querySelector('body').firstChild);\n const { width, height } = fakeBox.getBoundingClientRect();\n fakeBox.remove();\n return { width, height };\n };\n const { width: fakeBoxWidth, height: fakeBoxHeight } = getFakeSize();\n\n const angle = (degree * Math.PI) / 180;\n const contentArr = this.content.split('\\\\n');\n const canvasHeight = Math.sin(angle) * fakeBoxWidth + fakeBoxHeight;\n\n let start = Math.ceil(Math.sin(angle) * fakeBoxWidth * Math.sin(angle));\n const canvasWidth = start + fakeBoxWidth;\n canvas.setAttribute('width', '' + (canvasWidth + xGutter));\n canvas.setAttribute('height', '' + (canvasHeight + yGutter));\n\n ctx.font = `${parseFloat('' + fontSize)}px microsoft yahei`;\n ctx.textAlign = 'center';\n ctx.textBaseline = 'top';\n ctx.fillStyle = color;\n ctx.rotate(0 - (degree * Math.PI) / 180);\n contentArr.map((k, i) => {\n ctx.fillText(k, -start + Math.ceil(canvasWidth / 2), Math.sin(angle) * canvasWidth + textLineHeight * i);\n start += Math.sin(angle) * textLineHeight;\n });\n this.canvas = canvas;\n return canvas;\n }\n\n private createWatermark(isRefresh = true) {\n const watermarkDiv = this.wmDiv || document.createElement('div');\n\n const background = !isRefresh ? this.canvas.toDataURL() : this.createCanvas().toDataURL();\n const watermarkStyle = {\n ...DEFAULT_WATERMARK_CONFIG,\n 'background-image': `url(${background})`\n };\n\n const styleStr = Object.keys(watermarkStyle).reduce((pre, next) => ((pre += `${next}:${watermarkStyle[next]};`), pre), '');\n watermarkDiv.setAttribute('style', styleStr);\n\n if (!this.wmDiv) {\n const parentNode = this.el.nativeElement;\n watermarkDiv.classList.add(`_vm`);\n this.wmDiv = watermarkDiv;\n parentNode.insertBefore(watermarkDiv, parentNode.firstChild);\n }\n this.createWatermark$.next('');\n }\n\n private observeAttributes() {\n this.observer?.disconnect();\n return new Observable(observe => {\n const stream = new Subject<MutationRecord[]>();\n this.observer = new MutationObserverFactory().create(mutations => stream.next(mutations));\n if (this.observer) {\n this.observer.observe(this.wmDiv, {\n attributes: true\n });\n }\n stream.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(() => {\n if (this.wmDiv) {\n this?.observer?.disconnect();\n this.createWatermark(false);\n }\n });\n observe.next(stream);\n return () => {\n this.observer?.disconnect();\n };\n });\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { ThySharedModule } from 'ngx-tethys/shared';\nimport { ThyWatermarkDirective } from './watermark.directive';\n\n@NgModule({\n imports: [CommonModule, ThySharedModule, ThyWatermarkDirective],\n exports: [ThyWatermarkDirective],\n providers: []\n})\nexport class ThyWatermarkModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;AAAO,MAAM,wBAAwB,GAAG;AACpC,IAAA,QAAQ,EAAE,UAAU;AACpB,IAAA,GAAG,EAAE,CAAC;AACN,IAAA,IAAI,EAAE,CAAC;AACP,IAAA,KAAK,EAAE,MAAM;AACb,IAAA,MAAM,EAAE,MAAM;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,mBAAmB,EAAE,QAAQ;AAC7B,IAAA,gBAAgB,EAAE,MAAM;AACxB,IAAA,SAAS,EAAE,UAAU;AACrB,IAAA,kBAAkB,EAAE,EAAE;CACzB,CAAC;AAEK,MAAM,qBAAqB,GAAG;AACjC,IAAA,MAAM,EAAE,EAAE;AACV,IAAA,KAAK,EAAE,CAAC,wBAAwB,EAAE,iBAAiB,CAAC;AACpD,IAAA,QAAQ,EAAE,EAAE;AACZ,IAAA,cAAc,EAAE,EAAE;AAClB,IAAA,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;CACrB;;ACgBD;;;AAGG;MAKU,qBAAqB,CAAA;AAU9B;;AAEG;IACH,IACI,YAAY,CAAC,KAAa,EAAA;QAC1B,KAAK,GAAG,KAAK,EAAE,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;AACvC,QAAA,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,KAAK,GAAG,KAAK,GAAG,EAAE,CAAC;KACvC;AAmBD,IAAA,WAAA,GAAA;AAnCQ,QAAA,IAAA,CAAA,EAAE,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;AAEhC;;AAEG;QAEH,IAAW,CAAA,WAAA,GAAY,KAAK,CAAC;AAiBrB,QAAA,IAAA,CAAA,gBAAgB,GAAG,IAAI,OAAO,EAAU,CAAC;AAQhC,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;AAEzC,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC;QAG1C,MAAM,CAAC,MAAK;AACR,YAAA,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,EAAE;gBACjD,IAAI,CAAC,gBAAgB,EAAE,CAAC;aAC3B;AACL,SAAC,CAAC,CAAC;KACN;IAED,QAAQ,GAAA;AACJ,QAAA,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;AACnB,YAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,MAAK;gBAC3E,IAAI,CAAC,iBAAiB,EAAE;AACnB,qBAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;AACzC,qBAAA,SAAS,CAAC,MAAO,GAAC,CAAC,CAAC;AAC7B,aAAC,CAAC,CAAC;YAEH,IAAI,CAAC,eAAe,EAAE,CAAC;SAC1B;KACJ;AAED,IAAA,WAAW,CAAC,OAAsB,EAAA;AAC9B,QAAA,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;QAC9C,MAAM,kBAAkB,GAAG,MAAK;YAC5B,IAAI,YAAY,CAAC,WAAW;gBAAE,OAAO;AACrC,YAAA,IAAI,YAAY,CAAC,YAAY,EAAE;gBAC3B,IAAI,CAAC,gBAAgB,EAAE,CAAC;aAC3B;AACL,SAAC,CAAC;QACF,MAAM,iBAAiB,GAAG,MAAK;YAC3B,IAAI,WAAW,CAAC,WAAW;gBAAE,OAAO;AACpC,YAAA,WAAW,EAAE,YAAY,GAAG,IAAI,CAAC,eAAe,EAAE,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;AACjF,SAAC,CAAC;QACF,YAAY,IAAI,kBAAkB,EAAE,CAAC;QACrC,WAAW,IAAI,iBAAiB,EAAE,CAAC;KACtC;IAEO,gBAAgB,GAAA;QACpB,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,IAAI,CAAC,eAAe,EAAE,CAAC;KAC1B;IAEO,eAAe,GAAA;AACnB,QAAA,IAAI,IAAI,CAAC,KAAK,EAAE;AACZ,YAAA,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;AACpB,YAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;SACrB;KACJ;IAED,YAAY,GAAA;QACR,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG;AACtD,YAAA,GAAG,qBAAqB;AACxB,YAAA,IAAI,IAAI,CAAC,eAAe,IAAI,EAAE,CAAC;SAClC,CAAC;QACF,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;AAEjD,QAAA,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC;QAClC,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAChD,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAEpC,MAAM,WAAW,GAAG,MAAK;YACrB,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;AAC9C,YAAA,MAAM,YAAY,GAAG;AACjB,gBAAA,QAAQ,EAAE,UAAU;AACpB,gBAAA,GAAG,EAAE,CAAC;AACN,gBAAA,IAAI,EAAE,CAAC;AACP,gBAAA,OAAO,EAAE,cAAc;gBACvB,WAAW,EAAE,GAAG,UAAU,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAI,EAAA,CAAA;AAC7C,gBAAA,WAAW,EAAE,YAAY;AACzB,gBAAA,aAAa,EAAE,SAAS;AACxB,gBAAA,aAAa,EAAE,UAAU;aAC5B,CAAC;AACF,YAAA,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,MAAM,CAAC,GAAG,IAAI,CAAA,EAAG,IAAI,CAAA,CAAA,EAAI,YAAY,CAAC,IAAI,CAAC,CAAA,CAAA,CAAG,GAAG,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;AACvH,YAAA,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;AAExC,YAAA,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;AAC7D,YAAA,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,CAAC;YAChG,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;YAC1D,OAAO,CAAC,MAAM,EAAE,CAAC;AACjB,YAAA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;AAC7B,SAAC,CAAC;AACF,QAAA,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,WAAW,EAAE,CAAC;QAErE,MAAM,KAAK,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,IAAI,GAAG,CAAC;QACvC,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AAC7C,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,YAAY,GAAG,aAAa,CAAC;QAEpE,IAAI,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;AACxE,QAAA,MAAM,WAAW,GAAG,KAAK,GAAG,YAAY,CAAC;AACzC,QAAA,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,IAAI,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC;AAC3D,QAAA,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,EAAE,IAAI,YAAY,GAAG,OAAO,CAAC,CAAC,CAAC;QAE7D,GAAG,CAAC,IAAI,GAAG,CAAG,EAAA,UAAU,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAA,kBAAA,CAAoB,CAAC;AAC5D,QAAA,GAAG,CAAC,SAAS,GAAG,QAAQ,CAAC;AACzB,QAAA,GAAG,CAAC,YAAY,GAAG,KAAK,CAAC;AACzB,QAAA,GAAG,CAAC,SAAS,GAAG,KAAK,CAAC;AACtB,QAAA,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC;QACzC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAI;AACpB,YAAA,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,WAAW,GAAG,cAAc,GAAG,CAAC,CAAC,CAAC;YACzG,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,cAAc,CAAC;AAC9C,SAAC,CAAC,CAAC;AACH,QAAA,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;AACrB,QAAA,OAAO,MAAM,CAAC;KACjB;IAEO,eAAe,CAAC,SAAS,GAAG,IAAI,EAAA;AACpC,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAEjE,MAAM,UAAU,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,SAAS,EAAE,CAAC;AAC1F,QAAA,MAAM,cAAc,GAAG;AACnB,YAAA,GAAG,wBAAwB;YAC3B,kBAAkB,EAAE,CAAO,IAAA,EAAA,UAAU,CAAG,CAAA,CAAA;SAC3C,CAAC;AAEF,QAAA,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,MAAM,CAAC,GAAG,IAAI,CAAA,EAAG,IAAI,CAAA,CAAA,EAAI,cAAc,CAAC,IAAI,CAAC,CAAA,CAAA,CAAG,GAAG,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;AAC3H,QAAA,YAAY,CAAC,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;AAE7C,QAAA,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;AACb,YAAA,MAAM,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC;AACzC,YAAA,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA,GAAA,CAAK,CAAC,CAAC;AAClC,YAAA,IAAI,CAAC,KAAK,GAAG,YAAY,CAAC;YAC1B,UAAU,CAAC,YAAY,CAAC,YAAY,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC;SAChE;AACD,QAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;KAClC;IAEO,iBAAiB,GAAA;AACrB,QAAA,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,CAAC;AAC5B,QAAA,OAAO,IAAI,UAAU,CAAC,OAAO,IAAG;AAC5B,YAAA,MAAM,MAAM,GAAG,IAAI,OAAO,EAAoB,CAAC;YAC/C,IAAI,CAAC,QAAQ,GAAG,IAAI,uBAAuB,EAAE,CAAC,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;AAC1F,YAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACf,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE;AAC9B,oBAAA,UAAU,EAAE,IAAI;AACnB,iBAAA,CAAC,CAAC;aACN;AACD,YAAA,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,MAAK;AAC5D,gBAAA,IAAI,IAAI,CAAC,KAAK,EAAE;AACZ,oBAAA,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;AAC7B,oBAAA,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;iBAC/B;AACL,aAAC,CAAC,CAAC;AACH,YAAA,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACrB,YAAA,OAAO,MAAK;AACR,gBAAA,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,CAAC;AAChC,aAAC,CAAC;AACN,SAAC,CAAC,CAAC;KACN;8GAtLQ,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAArB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,qBAAqB,wGAMV,qBAAqB,CAAA,EAAA,YAAA,EAAA,cAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;2FANhC,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAJjC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,gBAAgB;AAC1B,oBAAA,UAAU,EAAE,IAAI;AACnB,iBAAA,CAAA;wDAQG,WAAW,EAAA,CAAA;sBADV,KAAK;uBAAC,EAAE,SAAS,EAAE,qBAAqB,EAAE,CAAA;gBAQvC,YAAY,EAAA,CAAA;sBADf,KAAK;gBASG,eAAe,EAAA,CAAA;sBAAvB,KAAK;;;MCvDG,kBAAkB,CAAA;8GAAlB,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;AAAlB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,YAJjB,YAAY,EAAE,eAAe,EAAE,qBAAqB,aACpD,qBAAqB,CAAA,EAAA,CAAA,CAAA,EAAA;+GAGtB,kBAAkB,EAAA,OAAA,EAAA,CAJjB,YAAY,EAAE,eAAe,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAI9B,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAL9B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,eAAe,EAAE,qBAAqB,CAAC;oBAC/D,OAAO,EAAE,CAAC,qBAAqB,CAAC;AAChC,oBAAA,SAAS,EAAE,EAAE;AAChB,iBAAA,CAAA;;;ACTD;;AAEG;;;;"}
@@ -1,6 +1,6 @@
1
1
  import { Version } from '@angular/core';
2
2
 
3
- const VERSION = new Version('18.1.0');
3
+ const VERSION = new Version('18.2.0-next.0');
4
4
 
5
5
  /**
6
6
  * Generated bundle index. Do not edit.
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-tethys.mjs","sources":["../../../src/version.ts","../../../src/ngx-tethys.ts"],"sourcesContent":["import { Version } from '@angular/core';\n\nexport const VERSION = new Version('18.1.0');\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;MAEa,OAAO,GAAG,IAAI,OAAO,CAAC,QAAQ;;ACF3C;;AAEG;;;;"}
1
+ {"version":3,"file":"ngx-tethys.mjs","sources":["../../../src/version.ts","../../../src/ngx-tethys.ts"],"sourcesContent":["import { Version } from '@angular/core';\n\nexport const VERSION = new Version('18.2.0-next.0');\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;MAEa,OAAO,GAAG,IAAI,OAAO,CAAC,eAAe;;ACFlD;;AAEG;;;;"}
@@ -89,7 +89,7 @@ input[type='checkbox'] {
89
89
  }
90
90
 
91
91
  &:disabled {
92
- background-color: rgba($color: variables.$black, $alpha: 0.03);
92
+ background-color: variables.$checkbox-disabled-bg-color;
93
93
  cursor: variables.$disabled-cursor;
94
94
  }
95
95
  }
@@ -34,7 +34,6 @@
34
34
  border-radius: 0;
35
35
  }
36
36
 
37
- // @include box-shadow($input-box-shadow);
38
37
  @include transition.transition(bootstrap-variables.$input-transition);
39
38
 
40
39
  // Unstyle the caret on `<select>`s in IE10+.
@@ -244,9 +243,9 @@
244
243
 
245
244
  // Avoid using mixin so we can pass custom focus shadow properly
246
245
  @if variables.$enable-shadows {
247
- box-shadow: variables.$input-box-shadow, bootstrap-variables.$input-focus-box-shadow;
246
+ box-shadow: variables.$box-shadow-none, variables.$box-shadow-none;
248
247
  } @else {
249
- box-shadow: bootstrap-variables.$input-focus-box-shadow;
248
+ box-shadow: variables.$box-shadow-none;
250
249
  }
251
250
  }
252
251
 
@@ -23,9 +23,9 @@
23
23
  outline: 0;
24
24
  // Avoid using mixin so we can pass custom focus shadow properly
25
25
  @if variables.$enable-shadows {
26
- box-shadow: variables.$input-box-shadow, bootstrap-variables.$input-focus-box-shadow;
26
+ box-shadow: variables.$box-shadow-none, variables.$box-shadow-none;
27
27
  } @else {
28
- box-shadow: bootstrap-variables.$input-focus-box-shadow;
28
+ box-shadow: variables.$box-shadow-none;
29
29
  }
30
30
  }
31
31
  &:not([disabled]):not(.disabled):not(.is-invalid) {
@@ -48,7 +48,6 @@
48
48
  display: none;
49
49
  width: 100%;
50
50
  margin-top: bootstrap-variables.$form-feedback-margin-top;
51
- // font-size: $form-feedback-font-size;
52
51
  color: $color;
53
52
  }
54
53
 
@@ -140,7 +139,9 @@
140
139
 
141
140
  &:focus {
142
141
  ~ .custom-control-label::before {
143
- box-shadow: 0 0 0 1px bootstrap-variables.$body-bg, 0 0 0 bootstrap-variables.$input-focus-width rgba($color, 0.25);
142
+ box-shadow:
143
+ 0 0 0 1px bootstrap-variables.$body-bg,
144
+ 0 0 0 bootstrap-variables.$input-focus-width rgba($color, 0.25);
144
145
  }
145
146
  }
146
147
  }
@@ -181,7 +182,7 @@
181
182
  }
182
183
 
183
184
  @mixin set-select-arrow() {
184
- content: '\e6b8'; //"\f078";
185
+ content: '\e6b8';
185
186
  font: normal normal normal 14px/1 wtf;
186
187
  position: absolute;
187
188
  right: 12px;
@@ -35,6 +35,7 @@
35
35
  flex-direction: column;
36
36
  display: flex;
37
37
  font-size: 14px;
38
+ background-color: variables.$bg-panel;
38
39
  color: variables.$gray-700;
39
40
  letter-spacing: 0;
40
41
  line-height: 26px;
@@ -71,7 +72,7 @@
71
72
  box-sizing: border-box;
72
73
  &.active {
73
74
  border: 2px solid variables.$primary;
74
- background-color: variables.$white;
75
+ background-color: variables.$bg-default;
75
76
  width: 7px;
76
77
  height: 7px;
77
78
  margin: 0 4px;
@@ -1,3 +1,5 @@
1
+ @use 'variables.scss' as variables2;
2
+
1
3
  :host {
2
4
  .thy-icon {
3
5
  margin-right: 10px;
@@ -25,7 +27,7 @@
25
27
  &:hover {
26
28
  cursor: pointer;
27
29
  border-radius: 4px;
28
- box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
30
+ box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
29
31
  }
30
32
 
31
33
  .thy-icon {
@@ -20,7 +20,7 @@ $image-preview-prefix-cls: 'thy-image-preview';
20
20
  .#{$image-preview-prefix-cls} {
21
21
  pointer-events: none;
22
22
  height: 100%;
23
- color: variables.$white;
23
+ color: variables.$image-preview-text-color;
24
24
  &-img-wrapper {
25
25
  position: absolute;
26
26
  top: 0;
@@ -54,7 +54,7 @@ $image-preview-prefix-cls: 'thy-image-preview';
54
54
  pointer-events: all;
55
55
  bottom: bootstrapVariables.$spacer * 1.25;
56
56
  border-radius: bootstrapVariables.$spacer * 0.5;
57
- background: variables.$gray-800;
57
+ background: variables.$image-preview-bg-color;
58
58
  left: 50%;
59
59
  transform: translateX(-50%);
60
60
  &-text {
@@ -71,7 +71,11 @@ $image-preview-prefix-cls: 'thy-image-preview';
71
71
  .thy-action {
72
72
  pointer-events: all;
73
73
  cursor: variables.$hand-cursor;
74
- @include basic.action-variant(variables.$white, variables.$white, rgba(variables.$white, 0.2));
74
+ @include basic.action-variant(
75
+ variables.$image-preview-action-icon-color,
76
+ variables.$image-preview-action-icon-color,
77
+ variables.$image-preview-action-bg-color
78
+ );
75
79
  }
76
80
 
77
81
  .#{$image-preview-prefix-cls}-exit-fullscreen {
@@ -83,7 +87,7 @@ $image-preview-prefix-cls: 'thy-image-preview';
83
87
 
84
88
  &-switch-left,
85
89
  &-switch-right {
86
- color: variables.$gray-500;
90
+ color: variables.$image-preview-switch-icon-color;
87
91
  position: fixed;
88
92
  top: 50%;
89
93
  z-index: 1;
@@ -93,14 +97,14 @@ $image-preview-prefix-cls: 'thy-image-preview';
93
97
  width: bootstrapVariables.$spacer * 2.5;
94
98
  height: bootstrapVariables.$spacer * 2.5;
95
99
  margin-top: -22px;
96
- background: variables.$gray-700;
100
+ background: variables.$image-preview-switch-bg-color;
97
101
  border-radius: 50%;
98
102
  cursor: variables.$hand-cursor;
99
103
  pointer-events: auto;
100
104
  transition: all 0.3s;
101
105
  &:hover {
102
- color: variables.$gray-700;
103
- background: variables.$gray-500;
106
+ color: variables.$image-preview-switch-icon-hover-color;
107
+ background: variables.$image-preview-switch-hover-bg-color;
104
108
  }
105
109
 
106
110
  &-disabled {
@@ -109,8 +113,8 @@ $image-preview-prefix-cls: 'thy-image-preview';
109
113
  cursor: variables.$disabled-cursor;
110
114
  }
111
115
  &:hover {
112
- color: variables.$gray-500;
113
- background: variables.$gray-700;
116
+ color: variables.$image-preview-switch-icon-color;
117
+ background: variables.$image-preview-switch-bg-color;
114
118
  }
115
119
  }
116
120
  }
@@ -135,7 +139,7 @@ $image-preview-prefix-cls: 'thy-image-preview';
135
139
  top: 0;
136
140
  width: 100%;
137
141
  z-index: 1;
138
- background: variables.$gray-800;
142
+ background: variables.$image-preview-bg-color;
139
143
  display: flex;
140
144
  justify-content: space-between;
141
145
  align-items: center;
@@ -171,7 +175,7 @@ $image-preview-prefix-cls: 'thy-image-preview';
171
175
  }
172
176
 
173
177
  .#{$image-preview-prefix-cls}-backdrop {
174
- background: rgba(variables.$gray-800, 0.95);
178
+ background: variables.$image-preview-backdrop-bg-color;
175
179
  }
176
180
 
177
181
  .thy-image {
@@ -70,7 +70,7 @@
70
70
 
71
71
  &:not(.disabled) {
72
72
  .input-group-suffix {
73
- background-color: variables.$white;
73
+ background-color: variables.$bg-default;
74
74
  }
75
75
  }
76
76
  }
@@ -36,7 +36,7 @@
36
36
  position: absolute;
37
37
  top: 1px;
38
38
  left: variables.$input-padding-x-fixed;
39
- background: variables.$white;
39
+ background: variables.$bg-default;
40
40
  padding: 0 5px;
41
41
  font-size: variables.$font-size-sm;
42
42
  transition: all 0.3s ease-out 0.1s;
@@ -180,7 +180,7 @@
180
180
  position: absolute;
181
181
  top: 1px;
182
182
  left: 10px;
183
- background: variables.$white;
183
+ background: variables.$bg-default;
184
184
  padding: 0 5px;
185
185
  font-size: variables.$font-size-sm;
186
186
  transition: all 0.3s ease-out 0.1s;
@@ -14,6 +14,6 @@
14
14
  }
15
15
 
16
16
  .thy-layout-content {
17
- background: variables2.$white; // #e4e9f2;
17
+ background: variables2.$bg-default;
18
18
  }
19
19
  }
@@ -85,7 +85,7 @@
85
85
  border-right: variables.$layout-sidebar-border-right;
86
86
  display: flex;
87
87
  flex-direction: column;
88
- background: variables.$white;
88
+ background: variables.$bg-default;
89
89
 
90
90
  &.sidebar-theme-light {
91
91
  background: variables.$layout-sidebar-background-light;
@@ -201,9 +201,9 @@
201
201
  right: 0;
202
202
  transform: translateX(50%);
203
203
  color: variables.$gray-600;
204
- background-color: variables.$white;
204
+ background-color: variables.$bg-float;
205
205
  border-radius: 50%;
206
- box-shadow: 0px 2px 6px 0px rgb(0 0 0 / 10%);
206
+ box-shadow: variables.$float-btn-box-shadow;
207
207
  z-index: variables.$z-index-6;
208
208
  &:hover {
209
209
  visibility: visible;
@@ -16,14 +16,6 @@
16
16
  .content-title {
17
17
  flex: 1;
18
18
  }
19
- .title {
20
- color: variables2.$gray-700;
21
- margin-right: 8px;
22
- &.testhub {
23
- font-size: 15px;
24
- color: variables2.$gray-800;
25
- }
26
- }
27
19
  }
28
20
  }
29
21
  }
@@ -68,7 +68,7 @@
68
68
  }
69
69
 
70
70
  .thy-menu-item-icon {
71
- color: variables.$menu-theme-dark-color;
71
+ color: variables.$menu-theme-dark-icon-color;
72
72
  }
73
73
 
74
74
  .thy-menu-item-name {
@@ -87,15 +87,15 @@
87
87
  }
88
88
 
89
89
  .thy-menu-group-arrow {
90
- color: variables.$menu-theme-dark-color;
90
+ color: variables.$menu-theme-dark-icon-color;
91
91
  }
92
92
 
93
93
  .thy-menu-group-title-icon {
94
- color: variables.$menu-theme-dark-color;
94
+ color: variables.$menu-theme-dark-icon-color;
95
95
  }
96
96
 
97
97
  .thy-menu-group-operation {
98
- color: variables.$menu-theme-dark-color;
98
+ color: variables.$menu-theme-dark-icon-color;
99
99
  }
100
100
  }
101
101
  }
@@ -20,7 +20,7 @@
20
20
  align-items: center;
21
21
  border: variables.$message-border;
22
22
  border-radius: variables.$message-border-radius-width;
23
- background: variables.$message-bg;
23
+ background: variables.$bg-panel;
24
24
  box-shadow: variables.$message-box-shadow;
25
25
 
26
26
  &-icon {
@@ -2,5 +2,5 @@
2
2
 
3
3
  :host {
4
4
  display: block;
5
- background: variables2.$white;
5
+ background: variables2.$bg-default;
6
6
  }
@@ -2,6 +2,6 @@
2
2
 
3
3
  :host {
4
4
  .thy-nav {
5
- background: variables2.$white;
5
+ background: variables2.$bg-default;
6
6
  }
7
7
  }
@@ -2,6 +2,6 @@
2
2
 
3
3
  :host {
4
4
  .thy-nav {
5
- background: variables2.$white;
5
+ background: variables2.$bg-default;
6
6
  }
7
7
  }
@@ -2,5 +2,5 @@
2
2
 
3
3
  :host {
4
4
  display: block;
5
- background: variables2.$white;
5
+ background: variables2.$bg-default;
6
6
  }
@@ -2,6 +2,6 @@
2
2
 
3
3
  :host {
4
4
  display: block;
5
- background: variables2.$white;
5
+ background: variables2.$bg-default;
6
6
  padding: 8px;
7
7
  }
@@ -2,6 +2,6 @@
2
2
 
3
3
  :host {
4
4
  .thy-nav {
5
- background: variables2.$white;
5
+ background: variables2.$bg-default;
6
6
  }
7
7
  }
@@ -3,7 +3,7 @@
3
3
  .bg-example {
4
4
  padding: 12px;
5
5
  .thy-nav {
6
- background: variables2.$white;
6
+ background: variables2.$bg-default;
7
7
  margin-bottom: 12px;
8
8
 
9
9
  &.thy-nav-pills {
@@ -2,6 +2,6 @@
2
2
 
3
3
  :host {
4
4
  display: block;
5
- background: variables2.$white;
5
+ background: variables2.$bg-default;
6
6
  padding-bottom: 12px;
7
7
  }
@@ -2,7 +2,7 @@
2
2
 
3
3
  :host {
4
4
  .thy-nav {
5
- background: variables2.$white;
5
+ background: variables2.$bg-default;
6
6
  &:not(:last-child) {
7
7
  margin-bottom: 20px;
8
8
  }
@@ -2,6 +2,6 @@
2
2
 
3
3
  :host {
4
4
  .thy-nav {
5
- background: variables2.$white;
5
+ background: variables2.$bg-default;
6
6
  }
7
7
  }
@@ -1,5 +1,5 @@
1
- @use "../../styles/variables";
2
- @use "mixin";
1
+ @use '../../styles/variables';
2
+ @use 'mixin';
3
3
 
4
4
  .thy-notify-container > div {
5
5
  position: fixed;
@@ -14,8 +14,8 @@
14
14
  position: relative;
15
15
  display: flex;
16
16
  border-radius: variables.$notify-border-radius-width;
17
- background: variables.$notify-bg;
18
- box-shadow: variables.$notify-box-shadow;
17
+ background: variables.$bg-panel;
18
+ box-shadow: variables.$box-shadow;
19
19
 
20
20
  &-icon-container {
21
21
  position: relative;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ngx-tethys",
3
- "version": "18.1.0",
3
+ "version": "18.2.0-next.0",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+ssh://git@github.com/atinc/ngx-tethys.git"
@@ -84,7 +84,7 @@
84
84
  border: variables.$pagination-border-width solid variables.$pagination-border-color;
85
85
  @include border-radius.border-radius(variables.$border-radius);
86
86
  color: variables.$pagination-jumper-input-color;
87
- background: variables.$white;
87
+ background: variables.$bg-default;
88
88
  width: calc(#{variables.$font-size-base} * 3);
89
89
  text-align: center;
90
90
  margin: 0 6px;
@@ -120,7 +120,7 @@
120
120
 
121
121
  &:focus {
122
122
  outline: bootstrap-variables.$pagination-focus-outline;
123
- box-shadow: variables.$pagination-focus-box-shadow;
123
+ box-shadow: variables.$box-shadow-none;
124
124
  }
125
125
  }
126
126
 
@@ -1,5 +1,5 @@
1
- @use "../styles/variables.scss";
2
- @use "../styles/mixins/shadow.scss";
1
+ @use '../styles/variables.scss';
2
+ @use '../styles/mixins/shadow.scss';
3
3
 
4
4
  $offset: 4px;
5
5
  .thy-popover-panel {
@@ -29,7 +29,7 @@ $offset: 4px;
29
29
  }
30
30
 
31
31
  .thy-popover-container {
32
- background: variables.$white;
32
+ background: variables.$bg-panel;
33
33
  width: 100%;
34
34
  border-radius: variables.$border-radius;
35
35
  @include shadow.section-box-shadow();
@@ -79,7 +79,7 @@
79
79
  }
80
80
 
81
81
  &:before {
82
- background: variables.$white;
82
+ background: variables.$bg-default;
83
83
  }
84
84
 
85
85
  &:not(.thy-property-item-content-editing):after {
@@ -1,9 +1,11 @@
1
+ @use 'variables.scss' as variables2;
2
+
1
3
  .container {
2
4
  display: flex;
3
5
  flex-direction: row;
4
6
  height: 200px;
5
7
  .left {
6
- border-right: 1px solid #eee;
8
+ border-right: 1px solid variables2.$gray-200;
7
9
  }
8
10
 
9
11
  .right {