i-tech-shared-components 1.1.26 → 1.1.28

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 (33) hide show
  1. package/esm2022/i-tech-shared-components.mjs +5 -0
  2. package/esm2022/lib/components/autocomplete-select/autocomplete-select.component.mjs +420 -0
  3. package/esm2022/lib/components/button/button.component.mjs +122 -0
  4. package/esm2022/lib/components/clear-value/clear-value.component.mjs +34 -0
  5. package/esm2022/lib/components/date-picker/date-picker.component.mjs +117 -0
  6. package/esm2022/lib/components/date-range-datepicker/date-range-datepicker.component.mjs +118 -0
  7. package/esm2022/lib/components/icon-button/icon-button.component.mjs +49 -0
  8. package/esm2022/lib/components/menu/menu.component.mjs +51 -0
  9. package/esm2022/lib/components/text/text-input.component.mjs +81 -0
  10. package/esm2022/lib/directives/date-mask.directive.mjs +92 -0
  11. package/esm2022/lib/directives/input-mask.directive.mjs +95 -0
  12. package/esm2022/lib/interfaces/app-input.interface.mjs +2 -0
  13. package/esm2022/lib/interfaces/autocomplete-configs.interface.mjs +2 -0
  14. package/esm2022/lib/interfaces/button-types.enum.mjs +17 -0
  15. package/esm2022/lib/interfaces/dropdown-selection.constants.mjs +12 -0
  16. package/esm2022/lib/pipes/array-to-string.pipe.mjs +17 -0
  17. package/esm2022/lib/pipes/generate-error-messages.pipe.mjs +29 -0
  18. package/esm2022/lib/pipes/get-value-by-key-from-object.pipe.mjs +45 -0
  19. package/esm2022/lib/services/input.service.mjs +35 -0
  20. package/esm2022/public-api.mjs +20 -0
  21. package/fesm2022/i-tech-shared-components.mjs +59 -51
  22. package/fesm2022/i-tech-shared-components.mjs.map +1 -1
  23. package/lib/components/text/text-input.component.d.ts +4 -0
  24. package/lib/interfaces/autocomplete-configs.interface.d.ts +1 -0
  25. package/package.json +14 -13
  26. package/theme/_label.scss +0 -14
  27. package/theme.scss +2 -4
  28. package/theme/_flex.scss +0 -92
  29. package/theme/_margin_padding_height_width.scss +0 -143
  30. package/theme/_material_ovveride.scss +0 -82
  31. package/theme/_modal_and_cards.scss +0 -56
  32. package/theme/_texts.scss +0 -87
  33. package/theme/variables/_desctop_sizes.scss +0 -8
@@ -2,17 +2,21 @@ import { EventEmitter } from '@angular/core';
2
2
  import { FormControlName } from '@angular/forms';
3
3
  import { InputService } from '../../services/input.service';
4
4
  import { AppInputInterface } from "../../interfaces/app-input.interface";
5
+ import { MatInput } from "@angular/material/input";
5
6
  import * as i0 from "@angular/core";
6
7
  export declare class TextInputComponent {
7
8
  private inputService;
9
+ input: MatInput;
8
10
  set inputData(data: AppInputInterface);
9
11
  get inputData(): AppInputInterface;
10
12
  focusOutEmitter: EventEmitter<void>;
11
13
  private _inputData;
12
14
  ngControl: FormControlName;
15
+ closed: boolean;
13
16
  constructor(inputService: InputService);
14
17
  onFocusOut(): void;
15
18
  clear(): void;
19
+ toggleEye(): void;
16
20
  customErrorStateMatcher: {
17
21
  isErrorState: (control: any, form: any) => boolean;
18
22
  };
@@ -34,4 +34,5 @@ export interface AutocompleteConfigsInterface {
34
34
  iconPrefixTooltip?: string | undefined;
35
35
  iconPrefixSvg?: string | undefined;
36
36
  iconPrefixColor?: string | undefined;
37
+ needTranslateOptions?: boolean;
37
38
  }
package/package.json CHANGED
@@ -1,19 +1,18 @@
1
1
  {
2
2
  "name": "i-tech-shared-components",
3
- "version": "1.1.26",
3
+ "version": "1.1.28",
4
4
  "peerDependencies": {
5
- "@angular/animations": "^19.1.1",
6
- "@angular/cdk": "^19.1.0",
7
- "@angular/common": "^19.1.1",
8
- "@angular/compiler": "^19.1.1",
9
- "@angular/core": "^19.1.1",
10
- "@angular/forms": "^19.1.1",
11
- "@angular/material": "^19.1.0",
12
- "ag-grid-angular": "^32.3.3",
13
- "ag-grid-enterprise": "^32.3.3",
14
- "ngx-mask": "^19.0.6",
15
- "@ngx-translate/core": "^16.0.4",
16
- "@ngx-translate/http-loader": "^16.0.1"
5
+ "@angular/material": "~18.2.14",
6
+ "@angular/animations": "~18.0.0",
7
+ "@angular/cdk": "~18.2.14",
8
+ "@angular/common": "~18.0.0",
9
+ "@angular/compiler": "~18.0.0",
10
+ "@angular/core": "~18.0.0",
11
+ "@angular/forms": "~18.0.0",
12
+ "@angular/router": "~18.0.0",
13
+ "@ngx-translate/core": "^15.0.0",
14
+ "@ngx-translate/http-loader": "^8.0.0",
15
+ "ngx-mask": "^16.0.0"
17
16
  },
18
17
  "dependencies": {
19
18
  "tslib": "^2.3.0"
@@ -33,6 +32,8 @@
33
32
  },
34
33
  ".": {
35
34
  "types": "./index.d.ts",
35
+ "esm2022": "./esm2022/i-tech-shared-components.mjs",
36
+ "esm": "./esm2022/i-tech-shared-components.mjs",
36
37
  "default": "./fesm2022/i-tech-shared-components.mjs"
37
38
  }
38
39
  }
package/theme/_label.scss CHANGED
@@ -76,12 +76,6 @@ body {
76
76
  border: #FF4D4D,
77
77
  text: #8B0000
78
78
  ),
79
- gray: (
80
- main: #F0F0F4,
81
- hover: #E5E0F6,
82
- border: #fff,
83
- text: #647081
84
- ),
85
79
  );
86
80
 
87
81
  --mdc-chip-container-shape-radius: 8px !important;
@@ -106,13 +100,6 @@ body {
106
100
  }
107
101
  }
108
102
 
109
- .table_row_item {
110
- display: flex;
111
- align-items: center;
112
- height: 100%;
113
- }
114
-
115
-
116
103
  .mat-mdc-chip.small {
117
104
  // TODO need to review
118
105
  --mdc-chip-container-height: 28px !important;
@@ -130,4 +117,3 @@ body {
130
117
  }
131
118
 
132
119
  }
133
-
package/theme.scss CHANGED
@@ -13,8 +13,7 @@
13
13
  @import "./theme/menu.scss";
14
14
  @import "./theme/ag-grid.scss";
15
15
 
16
- @include mat.elevation-classes();
17
- @include mat.app-background();
16
+ @include mat.core();
18
17
 
19
18
  body {
20
19
  // BASE CSS PROPERTIES
@@ -23,8 +22,7 @@ body {
23
22
  font-style: normal;
24
23
  font-size: 12px;
25
24
 
26
- @include mat.elevation-classes();
27
- @include mat.app-background();
25
+ @include mat.core-theme($m3-light-theme);
28
26
  @include mat.all-component-themes($m3-light-theme);
29
27
  @include mat.color-variants-backwards-compatibility($m3-light-theme);
30
28
  @include mat.form-field-theme($m3-light-theme, $color-variant: secondary);
package/theme/_flex.scss DELETED
@@ -1,92 +0,0 @@
1
- .flex_between_align_center {
2
- display: flex;
3
- align-items: center;
4
- justify-content: space-between;
5
- }
6
-
7
- .flex_wrap {
8
- display: flex;
9
- flex-wrap: wrap;
10
- }
11
-
12
- .flex_align_baseline {
13
- display: flex;
14
- align-items: baseline;
15
- }
16
-
17
- .flex_center_align_center {
18
- display: flex;
19
- align-items: center;
20
- justify-content: center;
21
- }
22
-
23
- .flex_between {
24
- display: flex;
25
- justify-content: space-between;
26
- }
27
-
28
- .flex_column {
29
- flex-direction: column;
30
- }
31
-
32
- .flex_align_center {
33
- display: flex;
34
- align-items: center;
35
- }
36
-
37
- .flex_around_align_center {
38
- display: flex;
39
- align-items: center;
40
- justify-content: space-around;
41
- }
42
-
43
- .flex_center_align_around {
44
- display: flex;
45
- align-items: center;
46
- justify-content: space-around;
47
- }
48
-
49
- .flex {
50
- display: flex;
51
- }
52
-
53
- .flex_end {
54
- display: flex;
55
- justify-content: flex-end;
56
- }
57
- .flex_start {
58
- display: flex;
59
- justify-content: flex-start;
60
- }
61
- .flex_align_start {
62
- display: flex;
63
- align-items: flex-start;
64
- }
65
- .flex_align_end_center {
66
- display: flex;
67
- justify-content: center;
68
- align-items: flex-end;
69
- }
70
-
71
- .flex_center {
72
- display: flex;
73
- justify-content: center;
74
- }
75
-
76
- .absolute {
77
- position: absolute !important;
78
- }
79
- .relative {
80
- position: relative !important;
81
- }
82
-
83
- .position_center {
84
- top: 50%;
85
- left: 50%;
86
- transform: translate(-50%, -50%);
87
- }
88
-
89
- .flex_align_end {
90
- display: flex;
91
- align-items: flex-end;
92
- }
@@ -1,143 +0,0 @@
1
- .float-r {
2
- float: right;
3
- }
4
-
5
- // Margins
6
- .mt-4 { margin-top: 4px;}
7
- .mt-5 { margin-top: 5px; }
8
- .mt-8 { margin-top: 8px; }
9
- .mt-10 { margin-top: 10px; }
10
- .mb-10 { margin-bottom: 10px; }
11
- .mb-20 { margin-bottom: 20px; }
12
- .mt-20 { margin-top: 20px; }
13
- .mt-15 { margin-top: 15px; }
14
- .mt-16 { margin-top: 16px; }
15
- .mt-25 { margin-top: 25px; }
16
- .mt-30 { margin-top: 30px; }
17
- .mt-40 { margin-top: 40px; }
18
- .mt-45 { margin-top: 45px; }
19
- .mt-50 { margin-top: 50px; }
20
- .mt-70 {
21
- margin-top: 70px;
22
- }
23
- .ml-20 { margin-left: 20px; }
24
- .ml-25 { margin-left: 25px; }
25
- .ml-36 { margin-left: 36px; }
26
- .ml-30 { margin-left: 30px; }
27
- .ml-32 { margin-left: 32px; }
28
- .ml-18 { margin-left: 18px; }
29
- .ml-16 { margin-left: 16px; }
30
- .ml-15 { margin-left: 15px; }
31
- .ml-12 { margin-left: 12px; }
32
- .ml-10 { margin-left: 10px; }
33
- .ml-6 { margin-left: 6px; }
34
- .ml-5 { margin-left: 5px; }
35
- .ml-35 { margin-left: 35px; }
36
- .ml-40 { margin-left: 40px; }
37
- .ml-45 { margin-left: 45px; }
38
- .ml-50 { margin-left: 50px; }
39
- .mb-30 { margin-bottom: 30px; }
40
- .mb-20 { margin-bottom: 20px; }
41
- .mt-25 { margin-top: 25px; }
42
-
43
-
44
-
45
- .mr-20 { margin-right: 20px; }
46
- .mr-10 { margin-right: 10px; }
47
- .mr-5 { margin-right: 5px; }
48
- .m-auto {margin: 0 auto !important;}
49
- .ml-auto {margin-left: auto}
50
- .input-ml-20 {margin-left: 0 !important;}
51
- .mt-tab-20 {
52
- & .mat-tab-body-content {
53
- //margin-top: 20px;
54
- }
55
- }
56
- .input-ml-items-3 { margin-left: calc(10% / 2 )}
57
- // End of Margins
58
- // Paddings
59
- .pl-10 { padding-left: 10px !important; }
60
- .pl-20 { padding-left: 20px !important; }
61
- .pl-40 { padding-left: 40px !important;}
62
- .pr-20 {padding-right: 20px !important;}
63
- .pr-30 {padding-right: 30px !important;}
64
- .pb-10 {padding-bottom: 10px !important;}
65
- .pb-20 {padding-bottom: 20px !important;}
66
- .pt-5 { padding-top: 5px !important; }
67
- .pt-10 {padding-top: 10px !important;}
68
- .pt-20 {padding-top: 20px !important;}
69
- .pt-30 {padding-top: 30px !important;}
70
- .pt-40 {padding-top: 40px !important;}
71
- .pt-50 {padding-top: 50px !important;}
72
- .pr-10 {padding-right: 10px !important;}
73
- .p-10 {padding: 10px !important;}
74
- .p-15 {padding: 15px !important;}
75
- .p-rl-10 {
76
- padding: 0 10px;
77
- }
78
- .p-rl-20 {
79
- padding: 0 20px;
80
- }
81
- .p-20 {
82
- padding: 20px;
83
- }
84
- .p-30 {
85
- padding: 30px;
86
- }
87
- .p-50 {
88
- padding: 50px;
89
- }
90
- // End of Paddings
91
-
92
- .w-100 {width: 100%}
93
- .h-100 {height: 100%}
94
- .h-100-minus-40 { height: calc(100% - 40px);}
95
- .h-100-minus-60 { height: calc(100% - 60px);}
96
- .h-100-minus-100 { height: calc(100% - 100px);}
97
- .vh-100-minus-40 { height: calc(100vh - 150px);}
98
- .vh-100-minus-155 { height: calc(100vh - 155px);}
99
- .vh-100-overflowY {height: 100vh;overflow-y: auto}
100
- .tab-h-100 {
101
- & mat-tab-body {
102
- height: 100%
103
- }
104
- }
105
-
106
- .dialog_single_input {
107
- width: 176px;
108
- }
109
- .h-w-100-no-overflow {
110
- width: 100%;
111
- height: 100%;
112
- overflow-y: hidden;
113
- }
114
- .w-fit_cont {width: fit-content !important;}
115
- .w-imp-100 {width: 100% !important;}
116
- .w-15 {width: 15%}
117
- .w-20 {width: 20%}
118
- .w-25 {width: 25%}
119
- .w-30 {width: 30%}
120
- .w-40 {width: 40%}
121
- .w-45 {width: 45%}
122
- .w-50 {width: 50%}
123
- .w-70 {width: 70%}
124
- .w-60 {width: 60%}
125
- .w-80 {width: 80%}
126
- .wp-70 {width: 70px}
127
- .vw-20 {width: 20vw}
128
- .vw-80 {width: 80vw}
129
- .w-90 {width: 90%}
130
- .h-40px {height: 40px!important}
131
-
132
- @import "./variables/desctop_sizes";
133
-
134
- @media (max-width: (map-get( $desktopSizes , tablet ) - 1)) {
135
- .w-tablet-100 { width: 100% !important;}
136
- .w-tablet-45 { width: 45% !important;}
137
- .mt-tablet-20 { margin-top: 20px !important;}
138
- .mt-tablet-15 { margin-top: 15px !important;}
139
- }
140
-
141
- @media (min-width: (map-get( $desktopSizes , desktop-lg ) - 1)) {
142
- //.vh-100-minus-40 { height: calc(100vh - 200px);}
143
- }
@@ -1,82 +0,0 @@
1
- // Dialog Css
2
- .mat-mdc-dialog-container {
3
- background: var(--white-color);
4
- padding: 0 !important;
5
- border: 1px solid var(--gray-icon-color);
6
- border-radius: 10px !important;
7
- box-shadow: unset !important;
8
- transition-duration: unset !important;
9
- max-width: 75vw;
10
-
11
- .mdc-dialog__container {
12
- height: 100%;
13
- width: 100%;
14
- transition-duration: unset !important;
15
- .mdc-dialog__surface {
16
- width: 100%;
17
- overflow-x: hidden !important;
18
- border-radius: unset !important;
19
- box-shadow: unset !important;
20
- background: unset !important;
21
- padding: 35px !important;
22
- .modal_content {
23
- min-height: 180px;
24
- min-width: 375px;
25
- }
26
- }
27
- }
28
-
29
- }
30
-
31
- .sidebar_modal .mat-mdc-dialog-container {
32
- border: unset !important;
33
- border-left: 1px solid #707070 !important;
34
- border-radius: 10px 0 0 10px !important;
35
- }
36
-
37
- // End of Dialog Css
38
-
39
- // TOGGLE CHECKBOX
40
- .mat-slide-toggle-thumb-container {
41
- top: 1px !important;
42
- }
43
-
44
- .home_page_container_modal_login {
45
- .mat-mdc-dialog-container {
46
- border-radius: 20px !important;
47
- }
48
- }
49
-
50
- @import "./variables/desctop_sizes";
51
-
52
- .mat-mdc-menu-content {
53
- padding: 10px 0 !important;
54
- .mat-mdc-menu-item {
55
- padding: 10px 20px !important;
56
- min-height: unset !important;
57
- }
58
- .menu_draw {
59
- width: calc(100% - 40px);
60
- margin: 8px auto 5px;
61
- height: 1px;
62
- background: #D7D9DE;
63
- }
64
- }
65
-
66
-
67
- @media (min-width: (map-get($desktopSizes, large_3))) and (max-width: (map-get( $desktopSizes , large_4 ) - 1)) {
68
- .mat-mdc-dialog-container {
69
- min-width: 457px !important;
70
- .mdc-dialog__surface {
71
- padding: 35px !important;
72
- .modal_content {
73
- min-height: 216px !important;
74
- min-width: 387px !important;
75
- }
76
- }
77
- }
78
-
79
- .standard_dialog {
80
- min-height: 246px !important;
81
- }
82
- }
@@ -1,56 +0,0 @@
1
- .modal_content {
2
- flex-direction: column;
3
- min-height: 100px;
4
- height: 100%;
5
- &--content {
6
- height: 100%;
7
- }
8
- }
9
-
10
- // Cards
11
- .card {
12
- background-color: var(--white-color);
13
- border-radius: 15px;
14
- margin: 20px 0;
15
- padding: 35px;
16
- box-shadow: 0 5px 14px var(--box-shadow-color-bold);
17
- }
18
-
19
- .app_card{
20
- background: #FFFFFF 0 0 no-repeat padding-box;
21
- box-shadow: 0 5px 14px var(--box-shadow-color);
22
- border-radius: 16px;
23
- padding: 20px;
24
- }
25
-
26
- .white-space {
27
- white-space: pre-line;
28
- };
29
- // New Card
30
- .card_section {
31
- background-color: var(--white-color);
32
- border-radius: 5px;
33
- padding: 32px 16px;
34
- border: 1px solid var(--card-border-color);
35
- width: 100%;
36
- }
37
-
38
-
39
- @import "./variables/desctop_sizes";
40
-
41
- @media (max-width: (map-get( $desktopSizes , medium ) - 1)) {
42
- .modal_content {
43
- &--content {
44
- height: auto;
45
- }
46
- }
47
- }
48
-
49
- // SHIFT BASE ASSIGNMENT
50
- app-add-shift-template {
51
- display: block;
52
- position: relative;
53
- height: 100%;
54
- width: 100%;
55
- }
56
- // END OF SHIFT BASE ASSIGNMENT
package/theme/_texts.scss DELETED
@@ -1,87 +0,0 @@
1
- // Texts
2
- .title_text { font-size: 28px; font-weight: bold; line-height: 1.2 !important;}
3
-
4
- .big_title_text { font-size: 32px;}
5
-
6
- .normal_text { font-size: 12px;}
7
-
8
- .sub_title_text {font-size: 20px; line-height: 1.4;}
9
-
10
- .sub_title_text_without_line_height {
11
- font-size: 20px;
12
- }
13
-
14
- .line_height_24 {
15
- line-height: 24px;
16
- }
17
-
18
- .middle_text {font-size: 16px;}
19
-
20
- .sub_middle_text {font-size: 18px;}
21
-
22
- .middle_small_text {font-size: 14px;}
23
-
24
- .font_size_13 {font-size: 13px};
25
-
26
- .small_text {font-size: 10px;}
27
-
28
- .bol_400 {
29
- font-weight: 400;
30
- }
31
- .bold { font-weight: 600; }
32
-
33
- .font_weight_500 {
34
- font-weight: 500;
35
- }
36
-
37
- .font_weight_700 {
38
- font-weight: 700;
39
- }
40
-
41
- .font_w_700 {
42
- font-weight: 700;
43
- }
44
-
45
- .font_weight_400 {
46
- font-weight: 400;
47
- }
48
-
49
- .break_all { word-break: break-all;}
50
- // End of Texts
51
-
52
- // Mobile Texts
53
- .mobile_middle_text {font-size: 15px; font-weight: 600; letter-spacing: 0.5px}
54
-
55
- .mobile_normal_text {font-size: 12px; letter-spacing: 0.4px}
56
- // End of Mobile Texts
57
-
58
- .initial_text {
59
- line-height: initial;
60
- }
61
-
62
- .text-center {
63
- text-align: center;
64
- }
65
-
66
- .ellipsis {
67
- white-space: nowrap;
68
- overflow: hidden;
69
- text-overflow: ellipsis;
70
- }
71
-
72
- .normal_weight { font-weight: 400; }
73
- .base-bold { font-weight: bold; }
74
- .bold { font-weight: 500; }
75
- .very_bold { font-weight: 700; }
76
- .bold_600 { font-weight: 600; }
77
-
78
- .pointer { cursor: pointer !important;}
79
-
80
- .underline { text-decoration: underline; }
81
-
82
- .text_decoration_none { text-decoration: none}
83
-
84
- .modal-title-text { font-size: 22px; line-height: 30px }
85
- .modal-sub-title-text { font-size: 18px; line-height: 24px }
86
- .modal-body-text { font-size: 18px; line-height: 24px; }
87
-
@@ -1,8 +0,0 @@
1
- $desktopSizes: (
2
- mobile: 560px,
3
- tablet: 768px,
4
- tabletForLanding: 880px,
5
- laptop: 1240px,
6
- desktop: 1460px,
7
- desktop-lg: 2200px
8
- );