@morozeckiy/dd-lib 0.1.1 → 0.1.2

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 (227) hide show
  1. package/esm2022/lib/common/lib-common-button.mjs +62 -0
  2. package/esm2022/lib/common/lib-common-input-text.mjs +172 -0
  3. package/esm2022/lib/core/dialog/dialog-config.mjs +15 -0
  4. package/esm2022/lib/core/dialog/dialog-container.component.mjs +40 -0
  5. package/esm2022/lib/core/dialog/dialog-ref.mjs +19 -0
  6. package/esm2022/lib/core/dialog/dialog.service.mjs +106 -0
  7. package/esm2022/lib/core/directives/auto-height.directive.mjs +36 -0
  8. package/esm2022/lib/core/directives/click-outside.directive.mjs +42 -0
  9. package/esm2022/lib/core/directives/counter.directive.mjs +64 -0
  10. package/esm2022/lib/core/directives/declension.directive.mjs +40 -0
  11. package/esm2022/lib/core/directives/resize-textarea.directive.mjs +26 -0
  12. package/esm2022/lib/core/directives/triangle.directive.mjs +75 -0
  13. package/esm2022/lib/core/index.mjs +26 -0
  14. package/esm2022/lib/core/pipes/filter-tabs.pipe.mjs +31 -0
  15. package/esm2022/lib/core/pipes/filter.pipe.mjs +49 -0
  16. package/esm2022/lib/core/pipes/highlight.pipe.mjs +23 -0
  17. package/esm2022/lib/core/pipes/reverse.pipe.mjs +17 -0
  18. package/esm2022/lib/core/pipes/safe.pipe.mjs +34 -0
  19. package/esm2022/lib/core/services/date.service.mjs +113 -0
  20. package/esm2022/lib/core/services/destroy.service.mjs +15 -0
  21. package/esm2022/lib/core/services/fetcher.service.mjs +92 -0
  22. package/esm2022/lib/core/services/interceptors.service.mjs +27 -0
  23. package/esm2022/lib/core/services/svg-icons.service.mjs +26 -0
  24. package/esm2022/lib/core/services/theme-constructor.service.mjs +64 -0
  25. package/esm2022/lib/core/services/validators.service.mjs +73 -0
  26. package/esm2022/lib/core/tools.mjs +128 -0
  27. package/esm2022/lib/core/tooltip/tooltip.component.mjs +27 -0
  28. package/esm2022/lib/core/tooltip/tooltip.directive.mjs +137 -0
  29. package/esm2022/lib/lib-accordion/lib-accordion.component.mjs +15 -0
  30. package/esm2022/lib/lib-back-button/lib-back-button.component.mjs +37 -0
  31. package/esm2022/lib/lib-button/lib-button.component.mjs +30 -0
  32. package/esm2022/lib/lib-calendar/lib-calendar.component.mjs +222 -0
  33. package/esm2022/lib/lib-card/lib-card.component.mjs +34 -0
  34. package/esm2022/lib/lib-checkbox/lib-checkbox.component.mjs +66 -0
  35. package/esm2022/lib/lib-comment-input/lib-comment-input.component.mjs +20 -0
  36. package/esm2022/lib/lib-file-upload/lib-file-upload.component.mjs +34 -0
  37. package/esm2022/lib/lib-filter-button/lib-filter-button.component.mjs +42 -0
  38. package/esm2022/lib/lib-image-loader/lib-image-loader.component.mjs +14 -0
  39. package/esm2022/lib/lib-input/lib-input.component.mjs +55 -0
  40. package/esm2022/lib/lib-loader/lib-loader.component.mjs +16 -0
  41. package/esm2022/lib/lib-period/lib-period.component.mjs +114 -0
  42. package/esm2022/lib/lib-radio/lib-radio.component.mjs +76 -0
  43. package/esm2022/lib/lib-search-input/lib-search-input.component.mjs +91 -0
  44. package/esm2022/lib/lib-select/lib-select.component.mjs +137 -0
  45. package/esm2022/lib/lib-skeleton/lib-skeleton.component.mjs +45 -0
  46. package/esm2022/lib/lib-sort/lib-sort.component.mjs +44 -0
  47. package/esm2022/lib/lib-step/lib-step.component.mjs +19 -0
  48. package/esm2022/lib/lib-svg/lib-svg.component.mjs +75 -0
  49. package/esm2022/lib/lib-svg-icon/lib-svg-icon.component.mjs +55 -0
  50. package/esm2022/lib/lib-tabs-fragment/lib-tabs-fragment.component.mjs +79 -0
  51. package/esm2022/lib/lib-textarea/lib-textarea.component.mjs +50 -0
  52. package/esm2022/lib/toast/toast-base/toast-base.component.mjs +29 -0
  53. package/esm2022/lib/toast/toast-placeholder/toast-placeholder.component.mjs +29 -0
  54. package/esm2022/lib/toast/toast.service.mjs +124 -0
  55. package/esm2022/lib/utils/decorators.mjs +102 -0
  56. package/esm2022/morozeckiy-dd-lib.mjs +5 -0
  57. package/esm2022/public-api.mjs +35 -0
  58. package/fesm2022/morozeckiy-dd-lib.mjs +3004 -0
  59. package/fesm2022/morozeckiy-dd-lib.mjs.map +1 -0
  60. package/index.d.ts +5 -0
  61. package/lib/common/lib-common-button.d.ts +20 -0
  62. package/lib/common/lib-common-input-text.d.ts +53 -0
  63. package/lib/core/dialog/dialog-config.d.ts +14 -0
  64. package/lib/core/dialog/dialog-container.component.d.ts +18 -0
  65. package/lib/core/dialog/dialog-ref.d.ts +18 -0
  66. package/lib/core/dialog/dialog.service.d.ts +28 -0
  67. package/lib/core/directives/auto-height.directive.d.ts +11 -0
  68. package/lib/core/directives/click-outside.directive.d.ts +11 -0
  69. package/lib/core/directives/counter.directive.d.ts +11 -0
  70. package/lib/core/directives/declension.directive.d.ts +13 -0
  71. package/lib/core/directives/resize-textarea.directive.d.ts +10 -0
  72. package/lib/core/directives/triangle.directive.d.ts +16 -0
  73. package/lib/core/index.d.ts +20 -0
  74. package/lib/core/pipes/filter-tabs.pipe.d.ts +7 -0
  75. package/lib/core/pipes/filter.pipe.d.ts +12 -0
  76. package/lib/core/pipes/highlight.pipe.d.ts +7 -0
  77. package/lib/core/pipes/reverse.pipe.d.ts +7 -0
  78. package/lib/core/pipes/safe.pipe.d.ts +10 -0
  79. package/lib/core/services/date.service.d.ts +41 -0
  80. package/lib/core/services/destroy.service.d.ts +8 -0
  81. package/lib/core/services/fetcher.service.d.ts +29 -0
  82. package/lib/core/services/interceptors.service.d.ts +12 -0
  83. package/lib/core/services/svg-icons.service.d.ts +9 -0
  84. package/lib/core/services/theme-constructor.service.d.ts +27 -0
  85. package/lib/core/services/validators.service.d.ts +18 -0
  86. package/lib/core/tools.d.ts +16 -0
  87. package/lib/core/tooltip/tooltip.component.d.ts +12 -0
  88. package/lib/core/tooltip/tooltip.directive.d.ts +22 -0
  89. package/lib/lib-accordion/lib-accordion.component.d.ts +8 -0
  90. package/lib/lib-back-button/lib-back-button.component.d.ts +13 -0
  91. package/lib/lib-button/lib-button.component.d.ts +10 -0
  92. package/lib/lib-calendar/lib-calendar.component.d.ts +76 -0
  93. package/lib/lib-card/lib-card.component.d.ts +16 -0
  94. package/lib/lib-checkbox/lib-checkbox.component.d.ts +23 -0
  95. package/lib/lib-comment-input/lib-comment-input.component.d.ts +8 -0
  96. package/lib/lib-file-upload/lib-file-upload.component.d.ts +12 -0
  97. package/lib/lib-filter-button/lib-filter-button.component.d.ts +13 -0
  98. package/lib/lib-image-loader/lib-image-loader.component.d.ts +6 -0
  99. package/lib/lib-input/lib-input.component.d.ts +13 -0
  100. package/lib/lib-loader/lib-loader.component.d.ts +6 -0
  101. package/lib/lib-period/lib-period.component.d.ts +41 -0
  102. package/lib/lib-radio/lib-radio.component.d.ts +25 -0
  103. package/lib/lib-search-input/lib-search-input.component.d.ts +29 -0
  104. package/lib/lib-select/lib-select.component.d.ts +30 -0
  105. package/lib/lib-skeleton/lib-skeleton.component.d.ts +16 -0
  106. package/lib/lib-sort/lib-sort.component.d.ts +18 -0
  107. package/lib/lib-step/lib-step.component.d.ts +7 -0
  108. package/{src/lib/lib-svg/lib-svg.component.ts → lib/lib-svg/lib-svg.component.d.ts} +38 -66
  109. package/lib/lib-svg-icon/lib-svg-icon.component.d.ts +18 -0
  110. package/lib/lib-tabs-fragment/lib-tabs-fragment.component.d.ts +29 -0
  111. package/lib/lib-textarea/lib-textarea.component.d.ts +13 -0
  112. package/lib/toast/toast-base/toast-base.component.d.ts +21 -0
  113. package/lib/toast/toast-placeholder/toast-placeholder.component.d.ts +12 -0
  114. package/lib/toast/toast.service.d.ts +35 -0
  115. package/lib/utils/decorators.d.ts +4 -0
  116. package/package.json +16 -3
  117. package/public-api.d.ts +30 -0
  118. package/ekgip-dd-lib-0.0.1.tgz +0 -0
  119. package/ng-package.json +0 -8
  120. package/src/lib/common/lib-common-button.ts +0 -34
  121. package/src/lib/common/lib-common-input-text.ts +0 -154
  122. package/src/lib/core/dialog/dialog-config.ts +0 -19
  123. package/src/lib/core/dialog/dialog-container.component.ts +0 -38
  124. package/src/lib/core/dialog/dialog-ref.ts +0 -28
  125. package/src/lib/core/dialog/dialog.service.ts +0 -144
  126. package/src/lib/core/directives/auto-height.directive.ts +0 -29
  127. package/src/lib/core/directives/click-outside.directive.ts +0 -33
  128. package/src/lib/core/directives/counter.directive.ts +0 -54
  129. package/src/lib/core/directives/declension.directive.ts +0 -29
  130. package/src/lib/core/directives/resize-textarea.directive.ts +0 -16
  131. package/src/lib/core/directives/triangle.directive.ts +0 -56
  132. package/src/lib/core/index.ts +0 -27
  133. package/src/lib/core/pipes/filter-tabs.pipe.ts +0 -25
  134. package/src/lib/core/pipes/filter.pipe.ts +0 -36
  135. package/src/lib/core/pipes/highlight.pipe.ts +0 -17
  136. package/src/lib/core/pipes/reverse.pipe.ts +0 -11
  137. package/src/lib/core/pipes/safe.pipe.ts +0 -37
  138. package/src/lib/core/services/date.service.ts +0 -153
  139. package/src/lib/core/services/destroy.service.ts +0 -10
  140. package/src/lib/core/services/fetcher.service.ts +0 -109
  141. package/src/lib/core/services/interceptors.service.ts +0 -26
  142. package/src/lib/core/services/svg-icons.service.ts +0 -25
  143. package/src/lib/core/services/theme-constructor.service.ts +0 -68
  144. package/src/lib/core/services/validators.service.ts +0 -73
  145. package/src/lib/core/tools.ts +0 -159
  146. package/src/lib/core/tooltip/tooltip.component.html +0 -10
  147. package/src/lib/core/tooltip/tooltip.component.scss +0 -59
  148. package/src/lib/core/tooltip/tooltip.component.ts +0 -27
  149. package/src/lib/core/tooltip/tooltip.directive.ts +0 -137
  150. package/src/lib/core/utils.ts +0 -28
  151. package/src/lib/lib-accordion/lib-accordion.component.html +0 -15
  152. package/src/lib/lib-accordion/lib-accordion.component.scss +0 -23
  153. package/src/lib/lib-accordion/lib-accordion.component.ts +0 -17
  154. package/src/lib/lib-back-button/lib-back-button.component.html +0 -4
  155. package/src/lib/lib-back-button/lib-back-button.component.scss +0 -3
  156. package/src/lib/lib-back-button/lib-back-button.component.ts +0 -31
  157. package/src/lib/lib-button/lib-button.component.html +0 -30
  158. package/src/lib/lib-button/lib-button.component.scss +0 -89
  159. package/src/lib/lib-button/lib-button.component.ts +0 -33
  160. package/src/lib/lib-calendar/lib-calendar.component.html +0 -64
  161. package/src/lib/lib-calendar/lib-calendar.component.scss +0 -88
  162. package/src/lib/lib-calendar/lib-calendar.component.ts +0 -227
  163. package/src/lib/lib-card/lib-card.component.html +0 -23
  164. package/src/lib/lib-card/lib-card.component.scss +0 -64
  165. package/src/lib/lib-card/lib-card.component.ts +0 -32
  166. package/src/lib/lib-checkbox/lib-checkbox.component.html +0 -15
  167. package/src/lib/lib-checkbox/lib-checkbox.component.scss +0 -80
  168. package/src/lib/lib-checkbox/lib-checkbox.component.ts +0 -67
  169. package/src/lib/lib-comment-input/lib-comment-input.component.html +0 -32
  170. package/src/lib/lib-comment-input/lib-comment-input.component.scss +0 -28
  171. package/src/lib/lib-comment-input/lib-comment-input.component.ts +0 -20
  172. package/src/lib/lib-file-upload/lib-file-upload.component.html +0 -14
  173. package/src/lib/lib-file-upload/lib-file-upload.component.scss +0 -3
  174. package/src/lib/lib-file-upload/lib-file-upload.component.ts +0 -26
  175. package/src/lib/lib-filter-button/lib-filter-button.component.html +0 -46
  176. package/src/lib/lib-filter-button/lib-filter-button.component.scss +0 -62
  177. package/src/lib/lib-filter-button/lib-filter-button.component.ts +0 -45
  178. package/src/lib/lib-image-loader/lib-image-loader.component.html +0 -17
  179. package/src/lib/lib-image-loader/lib-image-loader.component.scss +0 -6
  180. package/src/lib/lib-image-loader/lib-image-loader.component.ts +0 -16
  181. package/src/lib/lib-input/lib-input.component.html +0 -32
  182. package/src/lib/lib-input/lib-input.component.scss +0 -72
  183. package/src/lib/lib-input/lib-input.component.ts +0 -62
  184. package/src/lib/lib-loader/lib-loader.component.html +0 -29
  185. package/src/lib/lib-loader/lib-loader.component.scss +0 -26
  186. package/src/lib/lib-loader/lib-loader.component.ts +0 -13
  187. package/src/lib/lib-period/lib-period.component.html +0 -41
  188. package/src/lib/lib-period/lib-period.component.scss +0 -77
  189. package/src/lib/lib-period/lib-period.component.ts +0 -131
  190. package/src/lib/lib-radio/lib-radio.component.html +0 -22
  191. package/src/lib/lib-radio/lib-radio.component.scss +0 -113
  192. package/src/lib/lib-radio/lib-radio.component.ts +0 -78
  193. package/src/lib/lib-search-input/lib-search-input.component.html +0 -48
  194. package/src/lib/lib-search-input/lib-search-input.component.scss +0 -86
  195. package/src/lib/lib-search-input/lib-search-input.component.ts +0 -94
  196. package/src/lib/lib-select/lib-select.component.html +0 -83
  197. package/src/lib/lib-select/lib-select.component.scss +0 -130
  198. package/src/lib/lib-select/lib-select.component.ts +0 -152
  199. package/src/lib/lib-skeleton/lib-skeleton.component.html +0 -11
  200. package/src/lib/lib-skeleton/lib-skeleton.component.scss +0 -36
  201. package/src/lib/lib-skeleton/lib-skeleton.component.ts +0 -41
  202. package/src/lib/lib-sort/lib-sort.component.html +0 -21
  203. package/src/lib/lib-sort/lib-sort.component.scss +0 -21
  204. package/src/lib/lib-sort/lib-sort.component.ts +0 -52
  205. package/src/lib/lib-step/lib-step.component.html +0 -4
  206. package/src/lib/lib-step/lib-step.component.scss +0 -23
  207. package/src/lib/lib-step/lib-step.component.ts +0 -14
  208. package/src/lib/lib-svg/lib-svg.component.html +0 -15
  209. package/src/lib/lib-svg/lib-svg.component.scss +0 -81
  210. package/src/lib/lib-svg-icon/lib-svg-icon.component.css +0 -0
  211. package/src/lib/lib-svg-icon/lib-svg-icon.component.ts +0 -58
  212. package/src/lib/lib-tabs-fragment/lib-tabs-fragment.component.html +0 -12
  213. package/src/lib/lib-tabs-fragment/lib-tabs-fragment.component.scss +0 -19
  214. package/src/lib/lib-tabs-fragment/lib-tabs-fragment.component.ts +0 -88
  215. package/src/lib/lib-textarea/lib-textarea.component.html +0 -37
  216. package/src/lib/lib-textarea/lib-textarea.component.scss +0 -77
  217. package/src/lib/lib-textarea/lib-textarea.component.ts +0 -49
  218. package/src/lib/toast/toast-base/toast-base.component.html +0 -7
  219. package/src/lib/toast/toast-base/toast-base.component.scss +0 -44
  220. package/src/lib/toast/toast-base/toast-base.component.ts +0 -38
  221. package/src/lib/toast/toast-placeholder/toast-placeholder.component.ts +0 -20
  222. package/src/lib/toast/toast.service.ts +0 -130
  223. package/src/lib/utils/decorators.ts +0 -124
  224. package/src/public-api.ts +0 -35
  225. package/tsconfig.lib.json +0 -14
  226. package/tsconfig.lib.prod.json +0 -10
  227. package/tsconfig.spec.json +0 -14
@@ -1,28 +0,0 @@
1
- .lib-comment-textarea {
2
- position: relative;
3
- display: flex;
4
- align-items: center;
5
- flex-direction: row;
6
- //height: 48px;
7
-
8
- textarea {
9
- margin-right: 16px;
10
- width: 100%;
11
- max-height: 48px;
12
- padding: 12px 16px;
13
- border-radius: 12px;
14
- border: none;
15
- background-color: var(--gray-color-200);
16
- resize: none;
17
- box-sizing: inherit;
18
-
19
- &:disabled {
20
- background-color: var(--input-disable-input);
21
- pointer-events: none;
22
-
23
- &::placeholder {
24
- color: var(--disabled-color);
25
- }
26
- }
27
- }
28
- }
@@ -1,20 +0,0 @@
1
- import {ChangeDetectionStrategy, ChangeDetectorRef, Component} from '@angular/core';
2
- import {FormsModule} from '@angular/forms';
3
- import {LibCommonInputTextComponent} from '../common/lib-common-input-text';
4
- import {LibButtonComponent} from '../lib-button/lib-button.component';
5
- import {NgOptimizedImage} from '@angular/common';
6
- import {ResizeTextareaDirective} from "../core";
7
-
8
- @Component({
9
- selector: 'dd-lib-comment-input',
10
- standalone: true,
11
- imports: [FormsModule, LibButtonComponent, NgOptimizedImage, ResizeTextareaDirective],
12
- templateUrl: './lib-comment-input.component.html',
13
- styleUrl: './lib-comment-input.component.scss',
14
- changeDetection: ChangeDetectionStrategy.OnPush,
15
- })
16
- export class LibCommentInputComponent extends LibCommonInputTextComponent {
17
- constructor(changeDetection: ChangeDetectorRef) {
18
- super(changeDetection);
19
- }
20
- }
@@ -1,14 +0,0 @@
1
- <input
2
- type="file"
3
- class="file-input"
4
- [accept]="requiredFileType"
5
- (change)="onFileSelected($event)"
6
- #fileUpload />
7
-
8
- <div class="file-upload">
9
- <div class="upload-btn" (click)="fileUpload.click()">
10
- @if (template) {
11
- <ng-template [ngTemplateOutlet]="template"></ng-template>
12
- } @else { Загрузить }
13
- </div>
14
- </div>
@@ -1,3 +0,0 @@
1
- .file-input {
2
- display: none;
3
- }
@@ -1,26 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, TemplateRef } from '@angular/core';
2
- import { NgTemplateOutlet } from '@angular/common';
3
-
4
- @Component({
5
- selector: 'dd-lib-file-upload',
6
- standalone: true,
7
- imports: [NgTemplateOutlet],
8
- templateUrl: './lib-file-upload.component.html',
9
- styleUrl: './lib-file-upload.component.scss',
10
- changeDetection: ChangeDetectionStrategy.OnPush,
11
- })
12
- export class LibFileUploadComponent {
13
- @Input() public multi: boolean | undefined;
14
- @Input() public requiredFileType: string | undefined;
15
- @Input() public template: TemplateRef<HTMLElement> | undefined;
16
- @Output() public outputFile = new EventEmitter<File>();
17
- @Output() public outputFiles = new EventEmitter<File[]>();
18
- public onFileSelected($event: Event) {
19
- if (!this.multi) {
20
- const file: File | undefined = ($event?.target as HTMLInputElement)?.files?.[0];
21
- if (file) {
22
- this.outputFile.emit(file);
23
- }
24
- }
25
- }
26
- }
@@ -1,46 +0,0 @@
1
- <div (click)="onClick($event)" [class.disabled]="disabled" [ngStyle]="{width}" class="button-container">
2
- <button
3
- #btn
4
- [attr.tabIndex]="disabled ? -1 : 0"
5
- [autofocus]="autofocus"
6
- [disabled]="disabled"
7
- [ngClass]="{
8
- disabled: disabled,
9
- loader: showLoader,
10
- active: active,
11
- white: btnColor === 'white',
12
- transparent: btnColor === 'transparent',
13
- }"
14
- [type]="buttonType"
15
- class=""
16
- role="button">
17
- @if (!showLoader) {
18
- <ng-container *ngTemplateOutlet="content"></ng-container>
19
- } @if (showLoader) {
20
- <div class="loader"></div>
21
- }
22
- </button>
23
- </div>
24
-
25
- <ng-template #content>
26
- <span #contentData><ng-content></ng-content></span>
27
- @if (hintContent) {
28
- <img
29
- (click)="hintClick($event)"
30
- alt="Описание"
31
- [ddTooltip]="hintContent"
32
- [withClick]="true"
33
- class="ml-8"
34
- height="16"
35
- ngSrc="assets/images/svg/question{{ active ? '-white-g' : '' }}.svg"
36
- width="16" />
37
- } @if (active) {
38
- <img
39
- (click)="onClear($event)"
40
- alt="Очистить"
41
- class="ml-8 cup"
42
- height="20"
43
- ngSrc="assets/images/svg/close.svg"
44
- width="20" />
45
- }
46
- </ng-template>
@@ -1,62 +0,0 @@
1
- .button-container {
2
- display: inline-block;
3
-
4
- button {
5
- display: flex;
6
- align-items: center;
7
- justify-content: center;
8
- height: var(--btn-height);
9
- font-size: 14px;
10
- line-height: 24px;
11
- outline: none;
12
- cursor: pointer;
13
- white-space: nowrap;
14
- color: var(--black-color);
15
- background-color: var(--btn-white-bgc);
16
- border: 1px solid var(--gray-color-200);
17
- border-radius: var(--btn-border-round-radius);
18
- padding: var(--btn-round-padding);
19
- font-weight: var(--font-wheit-small);
20
-
21
- &.loader {
22
- min-width: 100px;
23
- }
24
-
25
- .loader {
26
- width: 24px;
27
- height: 24px;
28
- background: url(../../../assets/images/svg/small-round-loader.svg) center no-repeat;
29
- animation: rotate 1.5s linear infinite;
30
- }
31
-
32
- &:hover {
33
- color: var(--btn-white-hover-color);
34
- }
35
-
36
- &.transparent {
37
- background-color: transparent;
38
- }
39
-
40
- &.active {
41
- color: var(--white-color);
42
- background-color: var(--primary-green-color);
43
-
44
- &:hover {
45
- background-color: var(--btn-green-hover);
46
- }
47
- }
48
-
49
- &.disabled {
50
- color: var(--disabled-color);
51
- background-color: var(--btn-disabled-bgc);
52
- pointer-events: none;
53
- cursor: default;
54
- }
55
- }
56
-
57
- @keyframes rotate {
58
- to {
59
- transform: rotate(360deg);
60
- }
61
- }
62
- }
@@ -1,45 +0,0 @@
1
- import {
2
- ChangeDetectionStrategy,
3
- Component,
4
- CUSTOM_ELEMENTS_SCHEMA,
5
- EventEmitter,
6
- Input,
7
- NO_ERRORS_SCHEMA,
8
- Output,
9
- } from '@angular/core';
10
- import {CommonModule, NgOptimizedImage} from '@angular/common';
11
- import {LibCommonButtonComponent} from '../common/lib-common-button';
12
- import {FormsModule} from '@angular/forms';
13
- import {TooltipData, TooltipDirective} from "../core";
14
-
15
- @Component({
16
- selector: 'dd-lib-filter-button',
17
- standalone: true,
18
- templateUrl: './lib-filter-button.component.html',
19
- styleUrl: './lib-filter-button.component.scss',
20
- changeDetection: ChangeDetectionStrategy.OnPush,
21
- imports: [CommonModule, FormsModule, NgOptimizedImage, TooltipDirective],
22
- schemas: [CUSTOM_ELEMENTS_SCHEMA, NO_ERRORS_SCHEMA],
23
- })
24
- export class LibFilterButtonComponent extends LibCommonButtonComponent {
25
- // public onClick(event: Event): void {
26
- // super.onClick(event);
27
- // // this.active = !this.active;
28
- // }
29
- @Output() public clearEvent = new EventEmitter<null>();
30
- @Output() public hintEvent = new EventEmitter<null>();
31
- @Input() public hintContent: TooltipData | undefined;
32
-
33
- public onClear($event: MouseEvent): void {
34
- $event.preventDefault();
35
- $event.stopPropagation();
36
- this.active = false;
37
- this.clearEvent.emit();
38
- }
39
-
40
- public hintClick($event: MouseEvent): void {
41
- $event.stopPropagation();
42
- $event.preventDefault();
43
- this.hintEvent.emit();
44
- }
45
- }
@@ -1,17 +0,0 @@
1
- <div class="image-loader">
2
- <div class="b3-title mb-4">Вы можете прикрепить до 5 фотографий</div>
3
- <div class="gray b6-title mb-16">Только .png и .jpg файлы. Общий объем не должен превышать 5 мегабайт</div>
4
- @if (images) {
5
- <div class="loaded-images"></div>
6
- }
7
- <div>
8
- <dd-lib-button btnColor="white">
9
- <div class="d-flex align-center">
10
- <div class="mr-8">
11
- <dd-lib-svg-icon icon="paperclip"></dd-lib-svg-icon>
12
- </div>
13
- <div class="title-soc-btn">Добавить фотографии</div>
14
- </div>
15
- </dd-lib-button>
16
- </div>
17
- </div>
@@ -1,6 +0,0 @@
1
- .image-loader {
2
- .loaded-images {
3
- margin-bottom: 16px;
4
- display: flex;
5
- }
6
- }
@@ -1,16 +0,0 @@
1
- import {ChangeDetectionStrategy, Component} from '@angular/core';
2
- import {LibButtonComponent} from '../lib-button/lib-button.component';
3
- import {NgOptimizedImage} from '@angular/common';
4
- import {LibSvgIconComponent} from "../lib-svg-icon/lib-svg-icon.component";
5
-
6
- @Component({
7
- selector: 'dd-lib-image-loader',
8
- standalone: true,
9
- imports: [LibButtonComponent, NgOptimizedImage, LibSvgIconComponent],
10
- templateUrl: './lib-image-loader.component.html',
11
- styleUrl: './lib-image-loader.component.scss',
12
- changeDetection: ChangeDetectionStrategy.OnPush,
13
- })
14
- export class LibImageLoaderComponent {
15
- public images: any;
16
- }
@@ -1,32 +0,0 @@
1
- <div class="lib-input">
2
- <label [for]="id" class="lib-input__title">
3
- {{ label }}
4
- @if (required) {
5
- <dd-lib-svg-icon icon="error_hint"></dd-lib-svg-icon>
6
- }
7
- </label>
8
- <input
9
- #input
10
- (blur)="notifyFocusEvent($event)"
11
- (change)="handleChange()"
12
- (focus)="notifyFocusEvent($event)"
13
- (input)="handleInput($event)"
14
- (keyup.enter)="forceChange()"
15
- [(ngModel)]="value"
16
- [attr.autocomplete]="autocomplete === undefined ? null : autocomplete"
17
- [attr.id]="id ? id : null"
18
- [attr.maxlength]="maxlength"
19
- [attr.minlength]="minlength"
20
- [attr.name]="name"
21
- [attr.placeholder]="placeholder"
22
- [attr.tabIndex]="tabIndex"
23
- [attr.type]="type || 'text'"
24
- [class.focused]="focused"
25
- [class.invalid]="invalid"
26
- [disabled]="disabled"
27
- [readOnly]="readOnly"
28
- class="text-input" />
29
- @if (errorText && invalid) {
30
- <div class="lib-input__error">{{ errorText }}</div>
31
- }
32
- </div>
@@ -1,72 +0,0 @@
1
- :host {
2
- display: block;
3
- }
4
-
5
- .lib-input {
6
- position: relative;
7
- input {
8
- width: 100%;
9
- height: 48px;
10
- padding: 15px 16px;
11
- border-radius: 8px;
12
- border: 1px solid var(--input-border-color);
13
- background-color: transparent;
14
- position: relative;
15
-
16
- &:hover {
17
- border-color: var(--input-active-border-colort);
18
- }
19
-
20
- &:focus {
21
- border-color: var(--input-active-border-colort);
22
- box-shadow: var(--input-active-border-shadow);
23
- }
24
-
25
- &:disabled {
26
- border: none;
27
- background-color: var(--input-disable-input);
28
- color: var(--input-disable-text);
29
- pointer-events: none;
30
-
31
- &::placeholder {
32
- color: var(--input-placeholder);
33
- }
34
- }
35
-
36
- &.invalid {
37
- border-color: var(--input-error-border-color);
38
-
39
- &:hover {
40
- border-color: var(--input-error-border-color);
41
- }
42
-
43
- &:focus {
44
- border-color: var(--input-error-border-color);
45
- box-shadow: var(--input-error-border-shadow);
46
- }
47
- }
48
- }
49
-
50
- &__title {
51
- margin-bottom: 4px;
52
- font-size: 14px;
53
- line-height: 24px;
54
- display: flex;
55
- align-items: flex-start;
56
- }
57
-
58
- &__error {
59
- color: var(--primary-red-color);
60
- font-size: 14px;
61
- font-weight: 400;
62
- line-height: 20px;
63
- margin-top: 4px;
64
- }
65
-
66
- .password-eye {
67
- position: absolute;
68
- right: 16px;
69
- top: 40px;
70
- cursor: pointer;
71
- }
72
- }
@@ -1,62 +0,0 @@
1
- import {
2
- ChangeDetectionStrategy,
3
- ChangeDetectorRef,
4
- Component,
5
- forwardRef,
6
- Host,
7
- OnDestroy,
8
- OnInit,
9
- Optional,
10
- SkipSelf,
11
- } from '@angular/core';
12
- import {ControlContainer, ControlValueAccessor, FormsModule, NG_VALUE_ACCESSOR} from '@angular/forms';
13
- import {NgOptimizedImage} from '@angular/common';
14
- import {LibCommonInputTextComponent} from '../common/lib-common-input-text';
15
- import {LibCardComponent} from '../lib-card/lib-card.component';
16
- import {LibSvgIconComponent} from "../lib-svg-icon/lib-svg-icon.component";
17
-
18
- @Component({
19
- selector: 'dd-lib-input',
20
- standalone: true,
21
- templateUrl: './lib-input.component.html',
22
- styleUrls: ['./lib-input.component.scss'],
23
- providers: [
24
- {
25
- provide: NG_VALUE_ACCESSOR,
26
- useExisting: forwardRef(() => LibInputComponent),
27
- multi: true,
28
- },
29
- ],
30
- changeDetection: ChangeDetectionStrategy.OnPush,
31
- imports: [FormsModule, NgOptimizedImage, LibCardComponent, LibSvgIconComponent],
32
- })
33
- export class LibInputComponent
34
- extends LibCommonInputTextComponent
35
- implements OnInit, OnDestroy, ControlValueAccessor
36
- {
37
- constructor(
38
- changeDetection: ChangeDetectorRef,
39
- @Optional() @Host() @SkipSelf() private controlContainer: ControlContainer,
40
- ) {
41
- super(changeDetection);
42
- }
43
-
44
- public ngOnInit(): void {
45
- this.control =
46
- this.controlContainer && this.formControlName
47
- ? this.controlContainer?.control?.get(this.formControlName)
48
- : null;
49
- }
50
-
51
- public writeValue(value: string | number | null): void {
52
- this.value = value === null || value === undefined ? '' : '' + value;
53
- if (!this.destroyed) {
54
- this.changeDetection.detectChanges();
55
- }
56
- }
57
-
58
- public ngOnDestroy(): void {
59
- this.destroyed = true;
60
- // this.focusManager.unregister(this);
61
- }
62
- }
@@ -1,29 +0,0 @@
1
- <div class="loader">
2
- <svg fill="none" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg">
3
- <g clip-path="url(#clip0_728_22764)">
4
- <path
5
- [attr.stroke]="color"
6
- d="M12 6V3"
7
- stroke-linecap="round"
8
- stroke-linejoin="round"
9
- stroke-width="1.7" />
10
- <path
11
- [attr.stroke]="color"
12
- d="M6 12H3"
13
- stroke-linecap="round"
14
- stroke-linejoin="round"
15
- stroke-width="2" />
16
- <path
17
- [attr.stroke]="color"
18
- d="M7.74961 7.74961L5.59961 5.59961"
19
- stroke-linecap="round"
20
- stroke-linejoin="round"
21
- stroke-width="2" />
22
- </g>
23
- <defs>
24
- <clipPath id="clip0_728_22764">
25
- <rect fill="white" height="24" width="24" />
26
- </clipPath>
27
- </defs>
28
- </svg>
29
- </div>
@@ -1,26 +0,0 @@
1
- :host {
2
- display: flex;
3
- align-items: center;
4
- width: 100%;
5
- justify-content: center;
6
- overflow: hidden;
7
- }
8
-
9
- .loader {
10
- //min-width: 100px;
11
- }
12
-
13
- .loader {
14
- width: 24px;
15
- height: 24px;
16
- //background: url(../../../assets/images/svg/small-round-loader.svg) center no-repeat;
17
- svg {
18
- animation: rotate 1.5s linear infinite;
19
- }
20
- }
21
-
22
- @keyframes rotate {
23
- to {
24
- transform: rotate(360deg);
25
- }
26
- }
@@ -1,13 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
-
3
- @Component({
4
- selector: 'dd-lib-loader',
5
- standalone: true,
6
- imports: [],
7
- templateUrl: './lib-loader.component.html',
8
- styleUrl: './lib-loader.component.scss',
9
- changeDetection: ChangeDetectionStrategy.OnPush,
10
- })
11
- export class LibLoaderComponent {
12
- @Input() public color = '#07b700';
13
- }
@@ -1,41 +0,0 @@
1
- <div class="pos-relative">
2
- <dd-lib-filter-button
3
- (clearEvent)="clearPeriod()"
4
- (clickEvent)="showPeriod()"
5
- [active]="periodIsSelected || calendarIsSelected"
6
- [id]="idPeriod"
7
- btnColor="transparent">
8
- <div>Период</div>
9
- </dd-lib-filter-button>
10
- @if (periodIsShown) {
11
- <div (ddClickOutside)="clickOutside($event)" [elements]="[idPeriod, idCalendar]" class="wrapper-calendar">
12
- <dd-lib-card class="period-block" type="small">
13
- <div>
14
- <div class="period-block__header">
15
- <div class="period-block__header_title">Период</div>
16
- <div (click)="clearPeriod()" class="period-block__header_clear">Сбросить</div>
17
- </div>
18
- <div class="period-block__list">
19
- @for (period of periodMenu; track period) {
20
- <dd-lib-radio (changed)="selectPeriod($event)" [(ngModel)]="selectedPeriod" [value]="period.name">{{
21
- period.title
22
- }}</dd-lib-radio>
23
- }
24
- </div>
25
- <div (click)="calendarIsShown = !calendarIsShown" class="period-block__footer">
26
- {{ calendarIsShown ? 'Закрыть' : 'Открыть' }} календарь
27
- </div>
28
- </div>
29
- </dd-lib-card>
30
- @if (calendarIsShown) {
31
- <dd-lib-calendar
32
- (emitDate)="selectDate($event)"
33
- [(ngModel)]="selectedDate"
34
- [id]="idCalendar"
35
- [maxDate]="maxDate"
36
- class="calendar-block">
37
- </dd-lib-calendar>
38
- }
39
- </div>
40
- }
41
- </div>
@@ -1,77 +0,0 @@
1
-
2
- dd-lib-filter-button {
3
- position: relative;
4
- }
5
-
6
- .wrapper-calendar {
7
- position: absolute;
8
- left: 0;
9
- width: 352px;
10
- height: 348px;
11
- z-index: 101;
12
- display: block;
13
- margin-top: 8px;
14
- }
15
-
16
- .period-block {
17
- z-index: 400;
18
- display: block;
19
- position: relative;
20
- animation: period 0.5s forwards;
21
-
22
- &__header {
23
- display: flex;
24
- align-items: center;
25
- justify-content: space-between;
26
- margin-bottom: 16px;
27
-
28
- &_title {
29
- font-weight: 500;
30
- }
31
-
32
- &_clear {
33
- font-weight: 500;
34
- color: var(--primary-green-color);
35
- cursor: pointer;
36
- }
37
- }
38
-
39
- &__list {
40
- dd-lib-radio {
41
- display: block;
42
- margin-bottom: 16px;
43
- }
44
- }
45
-
46
- &__footer {
47
- margin-top: 8px;
48
- font-weight: 500;
49
- color: var(--primary-green-color);
50
- cursor: pointer;
51
- }
52
- }
53
-
54
- .calendar-block {
55
- margin-top: 8px;
56
- display: block;
57
- transform: translateY(-10%);
58
- animation: date 0.5s forwards;
59
- }
60
-
61
- @keyframes period {
62
- 0% {
63
- transform: translateY(-10%);
64
- }
65
- 100% {
66
- transform: translateX(0);
67
- }
68
- }
69
-
70
- @keyframes date {
71
- 0% {
72
- transform: translateY(-10%);
73
- }
74
- 100% {
75
- transform: translateX(0);
76
- }
77
- }