@gipisistemas/ngx-core 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (286) hide show
  1. package/README.md +169 -0
  2. package/animations/fly-in-out.animation.d.ts +24 -0
  3. package/animations/index.d.ts +2 -0
  4. package/animations/rotate.animation.d.ts +35 -0
  5. package/base/components/base-form-dialog.component.d.ts +47 -0
  6. package/base/components/base-form.component.d.ts +54 -0
  7. package/base/components/base-list-dialog.component.d.ts +69 -0
  8. package/base/components/base-list.component.d.ts +77 -0
  9. package/base/components/base.component.d.ts +62 -0
  10. package/base/index.d.ts +20 -0
  11. package/base/models/base-applied-filter.model.d.ts +8 -0
  12. package/base/models/base-authority.model.d.ts +6 -0
  13. package/base/models/base-filter.model.d.ts +16 -0
  14. package/base/models/base-form-dialog-data.model.d.ts +11 -0
  15. package/base/models/base-list-dialog-data.model.d.ts +10 -0
  16. package/base/models/base-menu.model.d.ts +25 -0
  17. package/base/models/base-page.model.d.ts +11 -0
  18. package/base/models/base-query-params.model.d.ts +12 -0
  19. package/base/models/base-sort.model.d.ts +8 -0
  20. package/base/models/base-token.model.d.ts +11 -0
  21. package/base/models/base-user.model.d.ts +18 -0
  22. package/base/models/base.model.d.ts +20 -0
  23. package/base/services/base-auth.service.d.ts +31 -0
  24. package/base/services/base-crud.service.d.ts +178 -0
  25. package/base/services/base.service.d.ts +97 -0
  26. package/components/action-row/action-row.component.d.ts +8 -0
  27. package/components/action-row/action-row.component.scss +26 -0
  28. package/components/action-row/index.d.ts +1 -0
  29. package/components/auto-focus/auto-focus.directive.d.ts +17 -0
  30. package/components/auto-focus/index.d.ts +1 -0
  31. package/components/avatar/avatar.component.d.ts +23 -0
  32. package/components/avatar/avatar.component.scss +155 -0
  33. package/components/avatar/index.d.ts +1 -0
  34. package/components/button/button.component.d.ts +74 -0
  35. package/components/button/button.component.scss +196 -0
  36. package/components/button/index.d.ts +1 -0
  37. package/components/button-group/button-group.component.d.ts +39 -0
  38. package/components/button-group/button-group.component.scss +89 -0
  39. package/components/button-group/index.d.ts +2 -0
  40. package/components/button-group/shared/button-group-option.model.d.ts +6 -0
  41. package/components/checkbox/checkbox.component.d.ts +74 -0
  42. package/components/checkbox/checkbox.component.scss +147 -0
  43. package/components/checkbox/index.d.ts +1 -0
  44. package/components/chips/chips.component.d.ts +46 -0
  45. package/components/chips/chips.component.scss +127 -0
  46. package/components/chips/index.d.ts +1 -0
  47. package/components/confirm-dialog/confirm-dialog.component.d.ts +17 -0
  48. package/components/confirm-dialog/confirm-dialog.component.scss +121 -0
  49. package/components/confirm-dialog/index.d.ts +4 -0
  50. package/components/confirm-dialog/shared/confirm-dialog-types.enum.d.ts +7 -0
  51. package/components/confirm-dialog/shared/confirm-dialog.model.d.ts +25 -0
  52. package/components/confirm-dialog/shared/confirm-dialog.service.d.ts +17 -0
  53. package/components/date-picker/date-picker.component.d.ts +55 -0
  54. package/components/date-picker/date-picker.component.scss +27 -0
  55. package/components/date-picker/index.d.ts +1 -0
  56. package/components/date-range-picker/date-range-picker.component.d.ts +66 -0
  57. package/components/date-range-picker/date-range-picker.component.scss +89 -0
  58. package/components/date-range-picker/index.d.ts +6 -0
  59. package/components/date-range-picker/shared/calendar/calendar.component.d.ts +27 -0
  60. package/components/date-range-picker/shared/calendar/calendar.component.scss +13 -0
  61. package/components/date-range-picker/shared/default-preset-date-options.d.ts +2 -0
  62. package/components/date-range-picker/shared/preset-key.enum.d.ts +11 -0
  63. package/components/date-range-picker/shared/range-selection-strategy.service.d.ts +11 -0
  64. package/components/date-range-picker/shared/select-date-option.interface.d.ts +32 -0
  65. package/components/date-range-picker/shared/selected-date-event.interface.d.ts +6 -0
  66. package/components/datetime-picker/datetime-picker.component.d.ts +68 -0
  67. package/components/datetime-picker/datetime-picker.component.scss +28 -0
  68. package/components/datetime-picker/index.d.ts +3 -0
  69. package/components/datetime-picker/shared/datetime-picker-intl.d.ts +29 -0
  70. package/components/datetime-picker/shared/moment-datetime-formats.d.ts +2 -0
  71. package/components/disable-auto-fill/disable-auto-fill.directive.d.ts +11 -0
  72. package/components/disable-auto-fill/index.d.ts +1 -0
  73. package/components/echarts/echarts.directive.d.ts +100 -0
  74. package/components/echarts/index.d.ts +4 -0
  75. package/components/echarts/shared/echarts-change-filter.d.ts +11 -0
  76. package/components/echarts/shared/echarts-config.interface.d.ts +5 -0
  77. package/components/echarts/shared/echarts-theme.type.d.ts +1 -0
  78. package/components/empty/empty.component.d.ts +13 -0
  79. package/components/empty/empty.component.scss +36 -0
  80. package/components/empty/index.d.ts +1 -0
  81. package/components/expansion-panel/expansion-panel.component.d.ts +36 -0
  82. package/components/expansion-panel/expansion-panel.component.scss +99 -0
  83. package/components/expansion-panel/index.d.ts +1 -0
  84. package/components/field-error/field-error.component.d.ts +95 -0
  85. package/components/field-error/field-error.component.scss +7 -0
  86. package/components/field-error/index.d.ts +2 -0
  87. package/components/field-error/shared/field-error-custom-validators.type.d.ts +2 -0
  88. package/components/flex-layout/flex-layout.directive.d.ts +44 -0
  89. package/components/flex-layout/index.d.ts +1 -0
  90. package/components/form-wrapper/form-wrapper.component.d.ts +15 -0
  91. package/components/form-wrapper/form-wrapper.component.scss +121 -0
  92. package/components/form-wrapper/index.d.ts +1 -0
  93. package/components/helpful-tip/helpful-tip.component.d.ts +11 -0
  94. package/components/helpful-tip/helpful-tip.component.scss +14 -0
  95. package/components/helpful-tip/index.d.ts +1 -0
  96. package/components/icon/icon.component.d.ts +61 -0
  97. package/components/icon/icon.component.scss +29 -0
  98. package/components/icon/index.d.ts +1 -0
  99. package/components/index.d.ts +46 -0
  100. package/components/input/index.d.ts +4 -0
  101. package/components/input/input.component.d.ts +81 -0
  102. package/components/input/input.component.scss +27 -0
  103. package/components/input/shared/input-prefix.directive.d.ts +5 -0
  104. package/components/input/shared/input-suffix.directive.d.ts +5 -0
  105. package/components/input/shared/input.directive.d.ts +26 -0
  106. package/components/input-currency/index.d.ts +1 -0
  107. package/components/input-currency/input-currency.component.d.ts +64 -0
  108. package/components/input-currency/input-currency.component.scss +27 -0
  109. package/components/input-group/index.d.ts +2 -0
  110. package/components/input-group/input-group-addon.component.d.ts +8 -0
  111. package/components/input-group/input-group.component.d.ts +14 -0
  112. package/components/input-group/input-group.component.scss +118 -0
  113. package/components/input-phone/index.d.ts +1 -0
  114. package/components/input-phone/input-phone.component.d.ts +62 -0
  115. package/components/input-phone/input-phone.component.scss +27 -0
  116. package/components/loading/index.d.ts +1 -0
  117. package/components/loading/loading.component.d.ts +13 -0
  118. package/components/loading/loading.component.scss +145 -0
  119. package/components/lozenge/index.d.ts +3 -0
  120. package/components/lozenge/lozenge.component.d.ts +20 -0
  121. package/components/lozenge/lozenge.component.scss +99 -0
  122. package/components/lozenge/shared/lozenge-fill.type.d.ts +4 -0
  123. package/components/lozenge/shared/lozenge-variant.type.d.ts +1 -0
  124. package/components/password-requeriments/index.d.ts +3 -0
  125. package/components/password-requeriments/password-requeriments.component.d.ts +27 -0
  126. package/components/password-requeriments/password-requeriments.component.scss +53 -0
  127. package/components/password-requeriments/shared/password-requeriments.interface.d.ts +5 -0
  128. package/components/password-requeriments/shared/password-validation.util.d.ts +71 -0
  129. package/components/popover/index.d.ts +4 -0
  130. package/components/popover/popover-target.directive.d.ts +8 -0
  131. package/components/popover/popover-trigger.directive.d.ts +135 -0
  132. package/components/popover/popover.component.d.ts +121 -0
  133. package/components/popover/popover.component.scss +26 -0
  134. package/components/popover/popover.module.d.ts +9 -0
  135. package/components/popover/shared/popover-animations.d.ts +14 -0
  136. package/components/popover/shared/popover-errors.d.ts +14 -0
  137. package/components/popover/shared/popover-types.type.d.ts +4 -0
  138. package/components/popover/shared/popover.interface.d.ts +24 -0
  139. package/components/radio-button/radio-button.component.scss +0 -0
  140. package/components/radio-group/index.d.ts +2 -0
  141. package/components/radio-group/radio-group.component.d.ts +57 -0
  142. package/components/radio-group/radio-group.component.scss +69 -0
  143. package/components/radio-group/shared/option-radio-group.type.d.ts +1 -0
  144. package/components/scroll-fade/index.d.ts +1 -0
  145. package/components/scroll-fade/scroll-fade.directive.d.ts +24 -0
  146. package/components/select/index.d.ts +4 -0
  147. package/components/select/select.component.d.ts +85 -0
  148. package/components/select/select.component.scss +52 -0
  149. package/components/select/shared/mat-select-media-tracker.d.ts +15 -0
  150. package/components/select/shared/mat-select-options-helper.d.ts +6 -0
  151. package/components/select/shared/mat-select-styles.scss +429 -0
  152. package/components/select/shared/mat-select.directive.d.ts +127 -0
  153. package/components/select-enum/index.d.ts +3 -0
  154. package/components/select-enum/select-enum.component.d.ts +65 -0
  155. package/components/select-enum/select-enum.component.scss +41 -0
  156. package/components/select-enum/shared/option-select-enum.type.d.ts +6 -0
  157. package/components/select-enum/shared/select-check-all.component.d.ts +15 -0
  158. package/components/sidenav/index.d.ts +1 -0
  159. package/components/sidenav/shared/sidenav-arrow-animations.d.ts +1 -0
  160. package/components/sidenav/sidenav.component.d.ts +47 -0
  161. package/components/sidenav/sidenav.component.scss +187 -0
  162. package/components/skeleton/index.d.ts +1 -0
  163. package/components/skeleton/skeleton.component.d.ts +37 -0
  164. package/components/skeleton/skeleton.component.scss +76 -0
  165. package/components/stepper/index.d.ts +2 -0
  166. package/components/stepper/step.component.d.ts +24 -0
  167. package/components/stepper/stepper.component.d.ts +20 -0
  168. package/components/stepper/stepper.component.scss +120 -0
  169. package/components/table/index.d.ts +9 -0
  170. package/components/table/shared/table-column-action-type.enum.d.ts +1 -0
  171. package/components/table/shared/table-column-align-type.enum.d.ts +6 -0
  172. package/components/table/shared/table-column-builder.model.d.ts +109 -0
  173. package/components/table/shared/table-column-condition.enum.d.ts +2 -0
  174. package/components/table/shared/table-column-partial.model.d.ts +6 -0
  175. package/components/table/shared/table-column.model.d.ts +80 -0
  176. package/components/table/shared/table-menu-item-context-builder.model.d.ts +61 -0
  177. package/components/table/shared/table-menu-item-context.model.d.ts +45 -0
  178. package/components/table/table.component.d.ts +184 -0
  179. package/components/table/table.component.scss +255 -0
  180. package/components/tabs/index.d.ts +2 -0
  181. package/components/tabs/tab-group.component.d.ts +24 -0
  182. package/components/tabs/tab.component.d.ts +30 -0
  183. package/components/tabs/tabs.component.scss +170 -0
  184. package/components/tag/index.d.ts +1 -0
  185. package/components/tag/tag.component.d.ts +26 -0
  186. package/components/tag/tag.component.scss +78 -0
  187. package/components/text-ellipsis/index.d.ts +1 -0
  188. package/components/text-ellipsis/text-ellipsis.directive.d.ts +15 -0
  189. package/components/textarea/index.d.ts +1 -0
  190. package/components/textarea/textarea.component.d.ts +72 -0
  191. package/components/textarea/textarea.component.scss +31 -0
  192. package/components/toast/index.d.ts +4 -0
  193. package/components/toast/shared/toast-types.enum.d.ts +7 -0
  194. package/components/toast/shared/toast.model.d.ts +7 -0
  195. package/components/toast/shared/toast.service.d.ts +12 -0
  196. package/components/toast/toast.component.d.ts +18 -0
  197. package/components/toast/toast.component.scss +135 -0
  198. package/components/toggle-switch/index.d.ts +1 -0
  199. package/components/toggle-switch/toggle-switch.component.d.ts +49 -0
  200. package/components/toggle-switch/toggle-switch.component.scss +105 -0
  201. package/components/toolbar/index.d.ts +1 -0
  202. package/components/toolbar/toolbar.component.d.ts +9 -0
  203. package/components/toolbar/toolbar.component.scss +22 -0
  204. package/components/top-nav/index.d.ts +1 -0
  205. package/components/top-nav/top-nav.component.d.ts +9 -0
  206. package/components/top-nav/top-nav.component.scss +18 -0
  207. package/components/tree-table/index.d.ts +8 -0
  208. package/components/tree-table/shared/tree-table-arrow-animations.d.ts +1 -0
  209. package/components/tree-table/shared/tree-table-column-builder.model.d.ts +55 -0
  210. package/components/tree-table/shared/tree-table-column-condition.enum.d.ts +2 -0
  211. package/components/tree-table/shared/tree-table-column-partial.model.d.ts +6 -0
  212. package/components/tree-table/shared/tree-table-column.model.d.ts +40 -0
  213. package/components/tree-table/shared/tree-table-menu-item-context-builder.model.d.ts +61 -0
  214. package/components/tree-table/shared/tree-table-menu-item-context.model.d.ts +45 -0
  215. package/components/tree-table/tree-table.component.d.ts +91 -0
  216. package/components/tree-table/tree-table.component.scss +216 -0
  217. package/components/user-profile/index.d.ts +1 -0
  218. package/components/user-profile/shared/user-profile-arrow-animations.d.ts +1 -0
  219. package/components/user-profile/user-profile.component.d.ts +28 -0
  220. package/components/user-profile/user-profile.component.scss +76 -0
  221. package/decorators/debounce.decorator.d.ts +33 -0
  222. package/decorators/index.d.ts +1 -0
  223. package/enums/index.d.ts +3 -0
  224. package/enums/menu-type.enum.d.ts +6 -0
  225. package/enums/sort-direction.enum.d.ts +5 -0
  226. package/enums/type-operation-dialog.enum.d.ts +12 -0
  227. package/fesm2022/gipisistemas-ngx-core.mjs +19132 -0
  228. package/fesm2022/gipisistemas-ngx-core.mjs.map +1 -0
  229. package/guards/auth.guard.d.ts +3 -0
  230. package/guards/index.d.ts +2 -0
  231. package/guards/public.guard.d.ts +3 -0
  232. package/index.d.ts +5 -0
  233. package/interceptors/auth.interceptor.d.ts +2 -0
  234. package/interceptors/error.interceptor.d.ts +13 -0
  235. package/interceptors/index.d.ts +2 -0
  236. package/interfaces/index.d.ts +1 -0
  237. package/interfaces/permissions.interface.d.ts +10 -0
  238. package/package.json +59 -0
  239. package/pipes/index.d.ts +1 -0
  240. package/pipes/money.pipe.d.ts +20 -0
  241. package/public-api.d.ts +13 -0
  242. package/services/cacheable.service.d.ts +41 -0
  243. package/services/dialog.service.d.ts +65 -0
  244. package/services/file-saver.service.d.ts +11 -0
  245. package/services/filter-indexed-db.service.d.ts +100 -0
  246. package/services/filter-url.service.d.ts +81 -0
  247. package/services/index.d.ts +8 -0
  248. package/services/moment-date-adapter.service.d.ts +8 -0
  249. package/services/native-date-adapter.service.d.ts +8 -0
  250. package/services/svg-register.service.d.ts +33 -0
  251. package/theming/_breakpoints.scss +20 -0
  252. package/theming/_index.scss +19 -0
  253. package/theming/_palettes.scss +112 -0
  254. package/theming/_theme.scss +189 -0
  255. package/theming/_utils.scss +1424 -0
  256. package/tokens/allowed-public-routes.token.d.ts +26 -0
  257. package/tokens/app-messages.token.d.ts +13 -0
  258. package/tokens/base-auth-service.token.d.ts +5 -0
  259. package/tokens/echarts-core.token.d.ts +4 -0
  260. package/tokens/index.d.ts +6 -0
  261. package/tokens/ngx-currency-options.token.d.ts +5 -0
  262. package/tokens/paginator-intl.token.d.ts +5 -0
  263. package/types/booleanish.type.d.ts +1 -0
  264. package/types/implicit-template.type.d.ts +4 -0
  265. package/types/index.d.ts +8 -0
  266. package/types/mixable-object.type.d.ts +1 -0
  267. package/types/nullable.type.d.ts +1 -0
  268. package/types/numberish.type.d.ts +1 -0
  269. package/types/page-event.type.d.ts +6 -0
  270. package/types/uuid.type.d.ts +1 -0
  271. package/types/void-listener.type.d.ts +1 -0
  272. package/utils/array.util.d.ts +13 -0
  273. package/utils/css.util.d.ts +12 -0
  274. package/utils/currency.util.d.ts +83 -0
  275. package/utils/date.util.d.ts +166 -0
  276. package/utils/document.util.d.ts +126 -0
  277. package/utils/email.util.d.ts +19 -0
  278. package/utils/index.d.ts +14 -0
  279. package/utils/number-to-words.util.d.ts +17 -0
  280. package/utils/number.util.d.ts +40 -0
  281. package/utils/object.util.d.ts +83 -0
  282. package/utils/phone.util.d.ts +103 -0
  283. package/utils/states.util.d.ts +182 -0
  284. package/utils/storage.util.d.ts +78 -0
  285. package/utils/string.util.d.ts +89 -0
  286. package/utils/uuid.util.d.ts +33 -0
@@ -0,0 +1,255 @@
1
+ @use '../../theming/utils' as utils;
2
+
3
+ @mixin table-theme($theme: ()) {
4
+ $font-family: utils.get-font-family($theme);
5
+ $font-size: utils.get-font-size($theme);
6
+ $font-color: utils.get-font-color($theme);
7
+
8
+ @include utils.mat-paginator($theme);
9
+
10
+ .g-table {
11
+ flex: 1 0 0;
12
+ min-height: 0;
13
+ overflow-y: auto;
14
+ overflow-x: hidden;
15
+ position: relative;
16
+ width: 100%;
17
+
18
+ table {
19
+ width: 100%;
20
+ border-collapse: collapse;
21
+ border-spacing: 0;
22
+ background-color: utils.get-color($theme, white, 100);
23
+ font-weight: 500;
24
+ font-size: 1.2rem;
25
+ text-transform: uppercase;
26
+ table-layout: fixed;
27
+ }
28
+
29
+ thead {
30
+ top: 0;
31
+ z-index: 1000;
32
+ position: sticky;
33
+ }
34
+
35
+ tr.cdk-header-row {
36
+ background-color: utils.get-color($theme, white, 100);
37
+
38
+ th {
39
+ background-color: utils.get-color($theme, white, 100);
40
+ color: utils.get-color($theme, primary, 500);
41
+ font-size: 1.4rem;
42
+ text-transform: none;
43
+
44
+ // Usamos box-shadow para simular a border-bottom, pois com position: sticky ela pode desaparecer.
45
+ box-shadow: inset 0 -1px 0 utils.get-color($theme, primary, 500);
46
+ }
47
+ }
48
+
49
+ .mat-sort-header-arrow {
50
+ --mat-sort-arrow-color: #{utils.get-color($theme, primary, 500)};
51
+ color: #{utils.get-color($theme, primary, 500)};
52
+ }
53
+
54
+ tr.cdk-row {
55
+ border-bottom: 1px solid utils.get-color($theme, secondary, 100);
56
+
57
+ &.g-table-row-hover td,
58
+ &:hover td {
59
+ background-color: utils.get-color($theme, white, 300);
60
+ }
61
+
62
+ td {
63
+ cursor: pointer;
64
+ }
65
+
66
+ td > small {
67
+ color: utils.get-color($theme, secondary, 300);
68
+ }
69
+ }
70
+
71
+ // 1 - Hover na row pai pinta ela e a expandida logo abaixo
72
+ tr.cdk-row:hover td,
73
+ tr.cdk-row:hover + tr.g-table-expand-detail-row td {
74
+ background-color: utils.get-color($theme, white, 300);
75
+ }
76
+
77
+ // 2 - Hover na row expandida pinta ela e a row pai acima
78
+ tr.g-table-expand-detail-row:hover td,
79
+ tr.cdk-row:has(+ tr.g-table-expand-detail-row:hover) td {
80
+ background-color: utils.get-color($theme, white, 300);
81
+ }
82
+
83
+ tr.g-table-expand-detail-row {
84
+ display: none;
85
+
86
+ &.g-table-expand-detail-row-expanded {
87
+ display: table-row;
88
+ }
89
+
90
+ td {
91
+ min-height: 4.4rem;
92
+ height: auto;
93
+ }
94
+ }
95
+
96
+ .g-table-column-fixed-wrapper {
97
+ width: 6rem;
98
+ text-align: center;
99
+ align-content: center;
100
+ justify-items: center;
101
+ cursor: default !important;
102
+ }
103
+
104
+ th,
105
+ td {
106
+ margin: 0;
107
+ border: 0;
108
+ text-align: inherit;
109
+ vertical-align: middle;
110
+ align-content: center;
111
+ height: 4.4rem;
112
+
113
+ &:first-child {
114
+ padding-left: 1.6rem !important;
115
+ }
116
+
117
+ &:last-child {
118
+ padding-right: 1.6rem !important;
119
+ }
120
+
121
+ > span,
122
+ > small {
123
+ text-align: inherit;
124
+ width: 100%;
125
+ }
126
+
127
+ &.g-table-align-start,
128
+ &.g-table-align-left {
129
+ text-align: start;
130
+
131
+ .mat-sort-header-container {
132
+ justify-content: flex-start;
133
+ }
134
+ }
135
+ &.g-table-align-center {
136
+ text-align: center;
137
+
138
+ .mat-sort-header-container {
139
+ justify-content: center;
140
+ }
141
+ }
142
+ &.g-table-align-end,
143
+ &.g-table-align-right {
144
+ text-align: end;
145
+
146
+ .mat-sort-header-container {
147
+ justify-content: flex-end;
148
+ }
149
+ }
150
+ &.g-table-align-justify {
151
+ text-align: justify;
152
+
153
+ .mat-sort-header-container {
154
+ justify-content: space-between;
155
+ }
156
+ }
157
+ }
158
+ }
159
+
160
+ .g-table-button-expand {
161
+ display: flex;
162
+ align-items: center;
163
+ justify-content: center;
164
+ padding: 0;
165
+ border-radius: 50%;
166
+ outline: none;
167
+ border: none;
168
+ background-color: transparent;
169
+ transition: all 0.2s ease-in-out;
170
+ cursor: pointer;
171
+
172
+ &:hover {
173
+ background-color: #{utils.get-color($theme, secondary, 100)};
174
+ }
175
+
176
+ &.g-table-button-expand-all .g-icon {
177
+ color: #{utils.get-color($theme, primary, 500)};
178
+ }
179
+ }
180
+
181
+ .g-table-expand-detail-wrapper {
182
+ overflow: hidden;
183
+ display: grid;
184
+ grid-template-rows: 0fr;
185
+ grid-template-columns: 100%;
186
+ transition: grid-template-rows 225ms cubic-bezier(0.4, 0, 0.2, 1);
187
+
188
+ &.g-table-expand-detail-wrapper-expanded {
189
+ grid-template-rows: 1fr;
190
+ }
191
+ }
192
+
193
+ .g-table-expand-detail {
194
+ display: flex;
195
+ min-height: 0;
196
+ }
197
+
198
+ .g-table-footer-row {
199
+ position: sticky;
200
+ bottom: 0;
201
+ z-index: 1000;
202
+ background-color: #{utils.get-color($theme, white, 100)};
203
+ }
204
+
205
+ .g-table-menu-context {
206
+ display: inline-flex;
207
+ gap: 10px;
208
+ padding: 6px 10px;
209
+ width: auto;
210
+ border-radius: 0 0 10px 10px;
211
+ border: 1px solid #{utils.get-color($theme, secondary, 100)};
212
+ border-top: 0;
213
+ background-color: #{utils.get-color($theme, white, 300)};
214
+ position: fixed;
215
+ z-index: 1001;
216
+ visibility: hidden;
217
+
218
+ > button {
219
+ @include utils.user-select(none);
220
+
221
+ &.g-table-menu-item-context-show-tag-new {
222
+ @include utils.novelties($theme);
223
+ }
224
+
225
+ display: flex;
226
+ align-items: center;
227
+ justify-content: center;
228
+ padding: 0.2rem;
229
+ outline: none;
230
+ border: none;
231
+ border-radius: 0.4rem;
232
+ background-color: transparent;
233
+ transition:
234
+ background-color 0.2s ease-in,
235
+ transform 0.2s ease-out;
236
+ cursor: pointer;
237
+
238
+ .g-button-icon {
239
+ color: #{utils.get-color($theme, black, 300)};
240
+ }
241
+
242
+ &:hover {
243
+ background-color: #{utils.get-color($theme, secondary, 100)};
244
+ }
245
+
246
+ &:active {
247
+ transform: scale(0.95);
248
+ }
249
+ }
250
+ }
251
+
252
+ .g-table-menu-item-context-tooltip {
253
+ margin-top: 10px;
254
+ }
255
+ }
@@ -0,0 +1,2 @@
1
+ export * from './tab-group.component';
2
+ export * from './tab.component';
@@ -0,0 +1,24 @@
1
+ import { BooleanInput } from '@angular/cdk/coercion';
2
+ import { AfterContentInit, EventEmitter, QueryList } from '@angular/core';
3
+ import { TabComponent } from './tab.component';
4
+ import * as i0 from "@angular/core";
5
+ export declare class TabGroupComponent implements AfterContentInit {
6
+ set tabsRef(queryList: QueryList<TabComponent>);
7
+ private readonly _uniqueId;
8
+ private readonly _changeDetectionRef;
9
+ private readonly _destroyRef;
10
+ protected readonly tabsElement: import("@angular/core").WritableSignal<TabComponent[]>;
11
+ id: string;
12
+ name: string;
13
+ disabled: BooleanInput;
14
+ startTab: number | null;
15
+ selectionChange: EventEmitter<void>;
16
+ constructor();
17
+ ngAfterContentInit(): void;
18
+ private _setStartActiveTab;
19
+ selectTab(tab: TabComponent): void;
20
+ static ɵfac: i0.ɵɵFactoryDeclaration<TabGroupComponent, never>;
21
+ static ɵcmp: i0.ɵɵComponentDeclaration<TabGroupComponent, "gipi-tab-group", ["gTabGroup"], { "id": { "alias": "id"; "required": false; }; "name": { "alias": "name"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "startTab": { "alias": "startTab"; "required": false; }; }, { "selectionChange": "selectionChange"; }, ["tabsRef"], ["*"], true, never>;
22
+ static ngAcceptInputType_disabled: unknown;
23
+ static ngAcceptInputType_startTab: unknown;
24
+ }
@@ -0,0 +1,30 @@
1
+ import { OnChanges, SimpleChanges, TemplateRef } from '@angular/core';
2
+ import { tIconFontSet, tIconGrade, tIconOptical, tIconVariation, tIconWeight } from '../icon/icon.component';
3
+ import * as i0 from "@angular/core";
4
+ export declare class TabComponent implements OnChanges {
5
+ protected readonly tabPanelUniqueId: string;
6
+ protected readonly tabUniqueId: string;
7
+ private readonly _changeDetectorRef;
8
+ protected _active: import("@angular/core").WritableSignal<boolean>;
9
+ set active(value: boolean);
10
+ get active(): boolean;
11
+ id: string;
12
+ name: string;
13
+ label: string;
14
+ template: TemplateRef<void> | null;
15
+ icon: string;
16
+ svgIcon: string;
17
+ iconFontSet: tIconFontSet;
18
+ iconSize: number;
19
+ iconVariation: tIconVariation;
20
+ iconWeight: tIconWeight;
21
+ iconGrade: tIconGrade;
22
+ iconOptical: tIconOptical;
23
+ disabled: boolean;
24
+ constructor();
25
+ ngOnChanges(changes: SimpleChanges): void;
26
+ static ɵfac: i0.ɵɵFactoryDeclaration<TabComponent, never>;
27
+ static ɵcmp: i0.ɵɵComponentDeclaration<TabComponent, "gipi-tab", ["gTab"], { "id": { "alias": "id"; "required": false; }; "name": { "alias": "name"; "required": false; }; "label": { "alias": "label"; "required": false; }; "template": { "alias": "template"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "svgIcon": { "alias": "svgIcon"; "required": false; }; "iconFontSet": { "alias": "iconFontSet"; "required": false; }; "iconSize": { "alias": "iconSize"; "required": false; }; "iconVariation": { "alias": "iconVariation"; "required": false; }; "iconWeight": { "alias": "weight"; "required": false; }; "iconGrade": { "alias": "grade"; "required": false; }; "iconOptical": { "alias": "optical"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; }, {}, never, ["*"], true, never>;
28
+ static ngAcceptInputType_iconSize: unknown;
29
+ static ngAcceptInputType_disabled: unknown;
30
+ }
@@ -0,0 +1,170 @@
1
+ @use '../../theming/utils' as utils;
2
+
3
+ @mixin tabs-theme($theme: ()) {
4
+ $font-family: utils.get-font-family($theme);
5
+ $font-size: utils.get-font-size($theme);
6
+ $font-color: utils.get-font-color($theme);
7
+
8
+ $white-100: utils.get-color($theme, white, 100);
9
+ $black-300: utils.get-color($theme, black, 300);
10
+ $primary-500: utils.get-color($theme, primary, 500);
11
+ $primary-600: utils.get-color($theme, primary, 600);
12
+ $secondary-50: utils.get-color($theme, secondary, 50);
13
+ $secondary-100: utils.get-color($theme, secondary, 100);
14
+ $secondary-200: utils.get-color($theme, secondary, 200);
15
+
16
+ $shadow-1: utils.get-shadow(1);
17
+ $shadow-2: utils.get-shadow(2);
18
+
19
+ .g-tab-group {
20
+ display: block;
21
+ width: 100%;
22
+ min-height: 0;
23
+ height: 100%;
24
+ border-radius: 0.4rem;
25
+ border: 1px solid $secondary-100;
26
+ box-shadow: $shadow-1;
27
+ padding-bottom: calc(4.2rem + 1.6rem);
28
+ overflow: hidden;
29
+
30
+ .mat-mdc-tab-header {
31
+ gap: 0.8rem;
32
+ padding: 0.4rem;
33
+ margin-bottom: 1.6rem;
34
+ background: $secondary-50;
35
+ border: none;
36
+ border-radius: 0.4rem;
37
+ box-shadow:
38
+ 0px 1px 2px 0px #1018280f,
39
+ 0px 1px 3px 0px #1018281a;
40
+ }
41
+
42
+ .mat-mdc-tab-link-container {
43
+ border-bottom: none !important;
44
+ }
45
+
46
+ .mat-mdc-tab-links {
47
+ display: flex;
48
+ gap: 1rem;
49
+ }
50
+
51
+ .mat-mdc-tab-link {
52
+ height: auto !important;
53
+ padding: 1rem !important;
54
+ opacity: 1 !important;
55
+ border: none !important;
56
+ border-radius: 4px !important;
57
+ transition: all 0.2s !important;
58
+ gap: 1rem !important;
59
+ user-select: none !important;
60
+ min-width: 12rem !important;
61
+
62
+ .mdc-tab__text-label {
63
+ font-family: $font-family !important;
64
+ font-size: $font-size !important;
65
+ color: $black-300 !important;
66
+ font-weight: 600 !important;
67
+ line-height: 2rem !important;
68
+ gap: 0.6rem !important;
69
+ }
70
+
71
+ > mat-icon {
72
+ width: 2rem !important;
73
+ height: 2rem !important;
74
+ font-size: 2rem !important;
75
+ color: $black-300 !important;
76
+
77
+ svg,
78
+ svg path,
79
+ svg g path {
80
+ color: $black-300 !important;
81
+ fill: $black-300 !important;
82
+ }
83
+ }
84
+
85
+ &:not(.g-tab-group-link-active):not(.mat-mdc-tab-disabled):hover {
86
+ background: $secondary-100 !important;
87
+ }
88
+
89
+ &.g-tab-group-link-active {
90
+ background: $primary-500 !important;
91
+
92
+ .mdc-tab__text-label {
93
+ color: $white-100 !important;
94
+ font-size: $font-size !important;
95
+ font-family: $font-family !important;
96
+ }
97
+
98
+ > mat-icon {
99
+ color: $white-100 !important;
100
+
101
+ svg,
102
+ svg path,
103
+ svg g path {
104
+ color: $white-100 !important;
105
+ fill: $white-100 !important;
106
+ }
107
+ }
108
+
109
+ &:hover {
110
+ background: $primary-600 !important;
111
+ }
112
+ }
113
+
114
+ &.mat-mdc-tab-disabled,
115
+ &:disabled,
116
+ &:disabled > mat-icon {
117
+ .mdc-tab__text-label {
118
+ color: $secondary-200 !important;
119
+ }
120
+
121
+ color: $secondary-200 !important;
122
+ fill: $secondary-200 !important;
123
+ text-decoration: line-through !important;
124
+ pointer-events: all !important;
125
+ cursor: not-allowed !important;
126
+
127
+ svg,
128
+ svg path,
129
+ svg g path {
130
+ color: $secondary-200 !important;
131
+ fill: $secondary-200 !important;
132
+ }
133
+ }
134
+ }
135
+
136
+ .mdc-tab__ripple,
137
+ .mat-mdc-tab-ripple,
138
+ .mdc-tab-indicator {
139
+ display: none !important;
140
+ }
141
+
142
+ .mat-mdc-tab-header-pagination {
143
+ box-shadow: none !important;
144
+ border-radius: 0.4rem !important;
145
+
146
+ &.mat-mdc-tab-header-pagination-disabled .mat-mdc-tab-header-pagination-chevron {
147
+ border-color: $secondary-200 !important;
148
+ cursor: not-allowed !important;
149
+ }
150
+
151
+ .mat-mdc-tab-header-pagination-chevron {
152
+ border-color: $black-300 !important;
153
+ }
154
+ }
155
+
156
+ .mat-mdc-tab-nav-panel {
157
+ display: block;
158
+ min-height: 0;
159
+ height: 100%;
160
+ max-height: 100%;
161
+ overflow-y: auto;
162
+ overflow-x: hidden;
163
+ }
164
+ }
165
+
166
+ .g-tab {
167
+ display: block;
168
+ padding: 0 1.6rem 1.6rem 1.6rem;
169
+ }
170
+ }
@@ -0,0 +1 @@
1
+ export * from './tag.component';
@@ -0,0 +1,26 @@
1
+ import { tIconFontSet, tIconGrade, tIconOptical, tIconVariation, tIconWeight } from '../icon/icon.component';
2
+ import * as i0 from "@angular/core";
3
+ type tTagVariant = 'primary' | 'secondary' | 'success' | 'information' | 'warning' | 'danger';
4
+ type tTagIconPosition = 'left' | 'right';
5
+ export declare class TagComponent {
6
+ private readonly _uniqueId;
7
+ id: string;
8
+ name: string;
9
+ variant: tTagVariant;
10
+ rounded: boolean;
11
+ label: string;
12
+ fiber: boolean;
13
+ icon: string;
14
+ svgIcon: string;
15
+ iconFontSet: tIconFontSet;
16
+ iconVariation: tIconVariation;
17
+ iconWeight: tIconWeight;
18
+ iconGrade: tIconGrade;
19
+ iconOptical: tIconOptical;
20
+ iconPos: tTagIconPosition;
21
+ static ɵfac: i0.ɵɵFactoryDeclaration<TagComponent, never>;
22
+ static ɵcmp: i0.ɵɵComponentDeclaration<TagComponent, "gipi-tag", ["gTag"], { "id": { "alias": "id"; "required": false; }; "name": { "alias": "name"; "required": false; }; "variant": { "alias": "variant"; "required": false; }; "rounded": { "alias": "rounded"; "required": false; }; "label": { "alias": "label"; "required": false; }; "fiber": { "alias": "fiber"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "svgIcon": { "alias": "svgIcon"; "required": false; }; "iconFontSet": { "alias": "iconFontSet"; "required": false; }; "iconVariation": { "alias": "iconVariation"; "required": false; }; "iconWeight": { "alias": "weight"; "required": false; }; "iconGrade": { "alias": "grade"; "required": false; }; "iconOptical": { "alias": "optical"; "required": false; }; "iconPos": { "alias": "iconPos"; "required": false; }; }, {}, never, never, true, never>;
23
+ static ngAcceptInputType_rounded: unknown;
24
+ static ngAcceptInputType_fiber: unknown;
25
+ }
26
+ export {};
@@ -0,0 +1,78 @@
1
+ @use '../../theming/utils' as utils;
2
+
3
+ @mixin tag-theme($theme: ()) {
4
+ $font-family: utils.get-font-family($theme);
5
+ $font-size: utils.get-font-size($theme);
6
+ $font-color: utils.get-font-color($theme);
7
+
8
+ .g-tag-content {
9
+ @include utils.user-select(none);
10
+
11
+ display: flex;
12
+ align-items: center;
13
+ justify-content: center;
14
+ padding: 0.4rem;
15
+ border-radius: 0.4rem;
16
+
17
+ .g-tag-text {
18
+ font-family: $font-family;
19
+ font-size: $font-size;
20
+ color: $font-color;
21
+ line-height: 1.6rem;
22
+ font-weight: 700;
23
+ }
24
+
25
+ &.g-tag-rounded {
26
+ border-radius: 2rem;
27
+ }
28
+
29
+ &.g-tag-primary {
30
+ background: utils.get-color($theme, primary, 50);
31
+
32
+ .g-tag-icon,
33
+ .g-tag-text {
34
+ color: utils.get-color($theme, primary, 500);
35
+ }
36
+ }
37
+ &.g-tag-secondary {
38
+ background: utils.get-color($theme, secondary, 50);
39
+
40
+ .g-tag-icon,
41
+ .g-tag-text {
42
+ color: utils.get-color($theme, secondary, 500);
43
+ }
44
+ }
45
+ &.g-tag-success {
46
+ background: utils.get-color($theme, success, 100);
47
+
48
+ .g-tag-icon,
49
+ .g-tag-text {
50
+ color: utils.get-color($theme, success, 500);
51
+ }
52
+ }
53
+ &.g-tag-information {
54
+ background: utils.get-color($theme, information, 100);
55
+
56
+ .g-tag-icon,
57
+ .g-tag-text {
58
+ color: utils.get-color($theme, information, 500);
59
+ }
60
+ }
61
+ &.g-tag-warning {
62
+ background: utils.get-color($theme, warning, 100);
63
+
64
+ .g-tag-icon,
65
+ .g-tag-text {
66
+ color: utils.get-color($theme, warning, 500);
67
+ }
68
+ }
69
+ &.g-tag-danger {
70
+ background: utils.get-color($theme, danger, 100);
71
+
72
+ .g-tag-icon,
73
+ .g-tag-text {
74
+ color: utils.get-color($theme, danger, 500);
75
+ }
76
+ }
77
+ }
78
+ }
@@ -0,0 +1 @@
1
+ export * from './text-ellipsis.directive';
@@ -0,0 +1,15 @@
1
+ import { AfterViewInit } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export declare class TextEllipsisDirective implements AfterViewInit {
4
+ private _elementRef;
5
+ private _renderer2;
6
+ readonly lineClamp: number;
7
+ readonly enabled: boolean;
8
+ constructor();
9
+ ngAfterViewInit(): void;
10
+ private _applyEllipsis;
11
+ static ɵfac: i0.ɵɵFactoryDeclaration<TextEllipsisDirective, never>;
12
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TextEllipsisDirective, "[gTextEllipsis]", ["gTextEllipsis"], { "lineClamp": { "alias": "gTextEllipsis"; "required": false; }; "enabled": { "alias": "gTextEllipsisEnabled"; "required": false; }; }, {}, never, never, true, never>;
13
+ static ngAcceptInputType_lineClamp: unknown;
14
+ static ngAcceptInputType_enabled: unknown;
15
+ }
@@ -0,0 +1 @@
1
+ export * from './textarea.component';
@@ -0,0 +1,72 @@
1
+ import { DestroyRef, ElementRef, EventEmitter, OnChanges, SimpleChanges, TemplateRef } from '@angular/core';
2
+ import { AbstractControl, ControlValueAccessor, NgControl, ValidationErrors, Validator } from '@angular/forms';
3
+ import * as i0 from "@angular/core";
4
+ export declare class TextareaComponent implements ControlValueAccessor, Validator, OnChanges {
5
+ prefixRef: TemplateRef<ElementRef> | null;
6
+ suffixRef: TemplateRef<ElementRef> | null;
7
+ ngControl?: NgControl;
8
+ protected readonly _matFormFieldUniqueId: string;
9
+ protected readonly _uniqueId: string;
10
+ protected destroyRef: DestroyRef;
11
+ id: string;
12
+ name: string;
13
+ label: string;
14
+ placeholder: string;
15
+ help: string;
16
+ hintLabel: string;
17
+ type: string;
18
+ disabled: boolean;
19
+ readonly: boolean;
20
+ required: boolean;
21
+ pattern: string | RegExp;
22
+ minRows: number;
23
+ maxRows: number;
24
+ minLength: number;
25
+ maxLength: number;
26
+ private _autocomplete;
27
+ get autocomplete(): 'on' | 'off';
28
+ set autocomplete(value: 'on' | 'off');
29
+ private _lowercase;
30
+ get lowercase(): boolean;
31
+ set lowercase(value: boolean);
32
+ private _uppercase;
33
+ get uppercase(): boolean;
34
+ set uppercase(value: boolean);
35
+ private _spacedrop;
36
+ set spacedrop(value: boolean);
37
+ get spacedrop(): boolean;
38
+ private _value;
39
+ get value(): string | number;
40
+ set value(value: string | number);
41
+ readonly onFocusEvent: EventEmitter<FocusEvent>;
42
+ readonly onBlurEvent: EventEmitter<FocusEvent>;
43
+ readonly onKeydownEvent: EventEmitter<KeyboardEvent>;
44
+ readonly onChangeEvent: EventEmitter<Event>;
45
+ protected get errorState(): boolean;
46
+ constructor();
47
+ ngOnChanges(changes: SimpleChanges): void;
48
+ _onChange: (value: string | number) => void;
49
+ _onTouched: () => void;
50
+ _validatorChangeFn: () => void;
51
+ writeValue(value: string | number): void;
52
+ registerOnChange(fn: (value: string | number) => void): void;
53
+ registerOnTouched(fn: () => void): void;
54
+ setDisabledState?(isDisabled: boolean): void;
55
+ validate(control: AbstractControl<string | number>): ValidationErrors | null;
56
+ registerOnValidatorChange(fn: () => void): void;
57
+ private _checkSpaceDrop;
58
+ private _checkUppercase;
59
+ private _checkLowercase;
60
+ protected onInputKeydown(event: KeyboardEvent): void;
61
+ protected onInputFocus(event: FocusEvent): void;
62
+ protected onInputBlur(event: FocusEvent): void;
63
+ static ɵfac: i0.ɵɵFactoryDeclaration<TextareaComponent, never>;
64
+ static ɵcmp: i0.ɵɵComponentDeclaration<TextareaComponent, "gipi-textarea", ["gTextarea"], { "id": { "alias": "id"; "required": false; }; "name": { "alias": "name"; "required": false; }; "label": { "alias": "label"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "help": { "alias": "help"; "required": false; }; "hintLabel": { "alias": "hintLabel"; "required": false; }; "type": { "alias": "type"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "required": { "alias": "required"; "required": false; }; "pattern": { "alias": "pattern"; "required": false; }; "minRows": { "alias": "minRows"; "required": false; }; "maxRows": { "alias": "maxRows"; "required": false; }; "minLength": { "alias": "minLength"; "required": false; }; "maxLength": { "alias": "maxLength"; "required": false; }; "autocomplete": { "alias": "autocomplete"; "required": false; }; "lowercase": { "alias": "lowercase"; "required": false; }; "uppercase": { "alias": "uppercase"; "required": false; }; "spacedrop": { "alias": "spacedrop"; "required": false; }; "value": { "alias": "value"; "required": false; }; }, { "onFocusEvent": "focus"; "onBlurEvent": "blur"; "onKeydownEvent": "keydown"; "onChangeEvent": "change"; }, ["prefixRef", "suffixRef"], never, true, never>;
65
+ static ngAcceptInputType_disabled: unknown;
66
+ static ngAcceptInputType_readonly: unknown;
67
+ static ngAcceptInputType_required: unknown;
68
+ static ngAcceptInputType_minRows: unknown;
69
+ static ngAcceptInputType_maxRows: unknown;
70
+ static ngAcceptInputType_minLength: unknown;
71
+ static ngAcceptInputType_maxLength: unknown;
72
+ }