@netgrif/components 6.3.0 → 6.4.0-beta.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 (212) hide show
  1. package/esm2020/lib/admin/ldap-group-role-assignment/ldap-group-role-assignment.component.mjs +5 -5
  2. package/esm2020/lib/admin/role-assignment/role-assignment.component.mjs +5 -5
  3. package/esm2020/lib/admin/user-invite/user-invite.component.mjs +3 -3
  4. package/esm2020/lib/data-fields/boolean-field/boolean-default-field/boolean-default-field.component.mjs +28 -0
  5. package/esm2020/lib/data-fields/boolean-field/boolean-field.component.mjs +13 -22
  6. package/esm2020/lib/data-fields/button-field/button-default-field/button-default-field.component.mjs +40 -0
  7. package/esm2020/lib/data-fields/button-field/button-field.component.mjs +12 -30
  8. package/esm2020/lib/data-fields/case-ref-field/case-ref-default/case-ref-default.component.mjs +22 -0
  9. package/esm2020/lib/data-fields/data-field-template/data-field-template.component.mjs +8 -7
  10. package/esm2020/lib/data-fields/data-fields.module.mjs +87 -39
  11. package/esm2020/lib/data-fields/date-field/date-default-field/date-default-field.component.mjs +33 -0
  12. package/esm2020/lib/data-fields/date-field/date-field.component.mjs +12 -14
  13. package/esm2020/lib/data-fields/date-time-field/date-time-default-field/date-time-default-field.component.mjs +34 -0
  14. package/esm2020/lib/data-fields/date-time-field/date-time-field.component.mjs +12 -15
  15. package/esm2020/lib/data-fields/enumeration-field/enumeration-autocomplete-dynamic-field/enumeration-autocomplete-dynamic-field.component.mjs +15 -9
  16. package/esm2020/lib/data-fields/enumeration-field/enumeration-autocomplete-select-field/enumeration-autocomplete-select-field.component.mjs +15 -9
  17. package/esm2020/lib/data-fields/enumeration-field/enumeration-field.component.mjs +7 -10
  18. package/esm2020/lib/data-fields/enumeration-field/enumeration-icon-field/enumeration-icon-field.component.mjs +14 -9
  19. package/esm2020/lib/data-fields/enumeration-field/enumeration-list-field/enumeration-list-field.component.mjs +17 -11
  20. package/esm2020/lib/data-fields/enumeration-field/enumeration-select-field/enumeration-select-field.component.mjs +16 -10
  21. package/esm2020/lib/data-fields/enumeration-field/enumeration-stepper-field/enumeration-stepper-field.component.mjs +17 -12
  22. package/esm2020/lib/data-fields/file-field/file-default-field/file-default-field.component.mjs +50 -0
  23. package/esm2020/lib/data-fields/file-field/file-field.component.mjs +14 -40
  24. package/esm2020/lib/data-fields/file-list-field/file-list-default-field/file-list-default-field.component.mjs +32 -0
  25. package/esm2020/lib/data-fields/file-list-field/file-list-field.component.mjs +25 -0
  26. package/esm2020/lib/data-fields/filter-field/filter-default-field/filter-default-field.component.mjs +30 -0
  27. package/esm2020/lib/data-fields/filter-field/filter-field.component.mjs +11 -17
  28. package/esm2020/lib/data-fields/filter-field/tab-view-filter-field/filter-field-tab-view-content.component.mjs +3 -3
  29. package/esm2020/lib/data-fields/i18n-field/i18n-divider-field/i18n-divider-field.component.mjs +14 -9
  30. package/esm2020/lib/data-fields/i18n-field/i18n-field.component.mjs +7 -6
  31. package/esm2020/lib/data-fields/i18n-field/i18n-text-field/i18n-text-field.component.mjs +14 -9
  32. package/esm2020/lib/data-fields/multichoice-field/multichoice-autocomplete-field/multichoice-autocomplete-field.component.mjs +16 -10
  33. package/esm2020/lib/data-fields/multichoice-field/multichoice-field.component.mjs +7 -7
  34. package/esm2020/lib/data-fields/multichoice-field/multichoice-list-field/multichoice-list-field.component.mjs +16 -10
  35. package/esm2020/lib/data-fields/multichoice-field/multichoice-select-field/multichoice-select-field.component.mjs +17 -8
  36. package/esm2020/lib/data-fields/number-field/number-currency-field/number-currency-field.component.mjs +15 -9
  37. package/esm2020/lib/data-fields/number-field/number-default-field/number-default-field.component.mjs +15 -9
  38. package/esm2020/lib/data-fields/number-field/number-field.component.mjs +7 -6
  39. package/esm2020/lib/data-fields/public-api.mjs +1 -16
  40. package/esm2020/lib/data-fields/required-label/required-label.component.mjs +3 -3
  41. package/esm2020/lib/data-fields/task-ref-field/task-ref-dashboard-field/task-ref-dashboard-field.component.mjs +38 -0
  42. package/esm2020/lib/data-fields/task-ref-field/task-ref-field.component.mjs +12 -23
  43. package/esm2020/lib/data-fields/task-ref-field/task-ref-list-field/task-ref-list-field.component.mjs +22 -0
  44. package/esm2020/lib/data-fields/text-field/dashboard-bar-chart-text-field/dashboard-bar-chart-text-field.component.mjs +14 -9
  45. package/esm2020/lib/data-fields/text-field/dashboard-iframe-text-field/dashboard-iframe-text-field.component.mjs +14 -9
  46. package/esm2020/lib/data-fields/text-field/dashboard-line-chart-text-field/dashboard-line-chart-text-field.component.mjs +14 -9
  47. package/esm2020/lib/data-fields/text-field/dashboard-pie-chart-text-field/dashboard-pie-chart-text-field.component.mjs +14 -9
  48. package/esm2020/lib/data-fields/text-field/dashboard-portal-text-field/dashboard-portal-text-field.component.mjs +14 -9
  49. package/esm2020/lib/data-fields/text-field/html-textarea-field/html-textarea-field.component.mjs +19 -14
  50. package/esm2020/lib/data-fields/text-field/password-text-field/password-text-field.component.mjs +15 -9
  51. package/esm2020/lib/data-fields/text-field/rich-textarea-field/rich-textarea-field.component.mjs +17 -12
  52. package/esm2020/lib/data-fields/text-field/simple-text-field/simple-text-field.component.mjs +15 -9
  53. package/esm2020/lib/data-fields/text-field/text-field.component.mjs +8 -16
  54. package/esm2020/lib/data-fields/text-field/textarea-field/textarea-field.component.mjs +14 -9
  55. package/esm2020/lib/data-fields/user-field/user-default-field/user-default-field.component.mjs +35 -0
  56. package/esm2020/lib/data-fields/user-field/user-field.component.mjs +12 -19
  57. package/esm2020/lib/data-fields/user-list-field/user-list-default-field/user-list-default-field.component.mjs +39 -0
  58. package/esm2020/lib/data-fields/user-list-field/user-list-field.component.mjs +13 -23
  59. package/esm2020/lib/dialog/admin-impersonate-dialog/admin-impersonate-dialog.component.mjs +77 -0
  60. package/esm2020/lib/dialog/dialog.module.mjs +159 -0
  61. package/esm2020/lib/dialog/filter-selector-dialog/filter-selector-dialog.component.mjs +164 -0
  62. package/esm2020/lib/dialog/import-net-dialog/import-net-dialog.component.mjs +151 -0
  63. package/esm2020/lib/dialog/load-filter-dialog/load-filter-dialog.component.mjs +98 -0
  64. package/esm2020/lib/dialog/multi-user-assign-dialog/multi-user-assign-dialog.component.mjs +70 -0
  65. package/esm2020/lib/dialog/new-case-dialog/new-case-dialog.component.mjs +251 -0
  66. package/esm2020/lib/dialog/public-api.mjs +11 -0
  67. package/esm2020/lib/dialog/save-filter-dialog/save-filter-dialog.component.mjs +83 -0
  68. package/esm2020/lib/dialog/user-assign-dialog/user-assign-dialog.component.mjs +73 -0
  69. package/esm2020/lib/dialog/user-impersonate-dialog/user-impersonate-dialog.component.mjs +98 -0
  70. package/esm2020/lib/filter-field-content/filter-field-tab-view/filter-field-tab-view.component.mjs +3 -3
  71. package/esm2020/lib/forms/login/login-form.component.mjs +3 -3
  72. package/esm2020/lib/header/header-modes/edit-mode/edit-mode.component.mjs +3 -3
  73. package/esm2020/lib/header/header-modes/search-mode/search-mode.component.mjs +3 -3
  74. package/esm2020/lib/header/header-modes/sort-mode/sort-mode.component.mjs +3 -3
  75. package/esm2020/lib/header/header.component.mjs +3 -3
  76. package/esm2020/lib/navigation/breadcrumbs/breadcrumbs.component.mjs +2 -2
  77. package/esm2020/lib/navigation/group-navigation-component-resolver/default-components/default-case-ref-list-view/default-case-ref-list-view.component.mjs +105 -0
  78. package/esm2020/lib/navigation/group-navigation-component-resolver/default-components/default-simple-task-view/default-simple-task-view.component.mjs +7 -8
  79. package/esm2020/lib/navigation/group-navigation-component-resolver/default-components/default-tabbed-case-view/default-tabbed-case-view.component.mjs +6 -4
  80. package/esm2020/lib/navigation/group-navigation-component-resolver/default-components/default-tabbed-task-view/default-tabbed-task-view.component.mjs +7 -8
  81. package/esm2020/lib/navigation/group-navigation-component-resolver/default-components/default-task-view/default-task-view.component.mjs +63 -0
  82. package/esm2020/lib/navigation/navigation-double-drawer/navigation-double-drawer.component.mjs +3 -3
  83. package/esm2020/lib/navigation/navigation.module.mjs +9 -3
  84. package/esm2020/lib/navigation/public-api.mjs +2 -1
  85. package/esm2020/lib/panel/panel-item/panel-item.component.mjs +3 -3
  86. package/esm2020/lib/panel/panel.component.mjs +3 -3
  87. package/esm2020/lib/panel/task-panel/task-panel.component.mjs +3 -3
  88. package/esm2020/lib/panel/task-panel-list/task-list.component.mjs +5 -4
  89. package/esm2020/lib/panel/task-panel-list-pagination/task-list-pagination.component.mjs +3 -3
  90. package/esm2020/lib/panel/task-panel-single/single-task.component.mjs +2 -2
  91. package/esm2020/lib/panel/workflow-panel/workflow-panel.component.mjs +9 -10
  92. package/esm2020/lib/search/advanced-search/advanced-search-component/advanced-search.component.mjs +3 -3
  93. package/esm2020/lib/search/advanced-search/search-clause-component/search-clause.component.mjs +3 -3
  94. package/esm2020/lib/search/advanced-search/search-predicate-component/search-predicate.component.mjs +8 -8
  95. package/esm2020/lib/search/fulltext-search-component/fulltext-search.component.mjs +8 -6
  96. package/esm2020/lib/search/search-component/search.component.mjs +11 -10
  97. package/esm2020/lib/search/search.module.mjs +9 -3
  98. package/esm2020/lib/side-menu/content-components/admin-impersonate/side-menu-admin-impersonate-component.module.mjs +3 -3
  99. package/esm2020/lib/side-menu/content-components/filter-selector/side-menu-filter-selector-component.module.mjs +4 -2
  100. package/esm2020/lib/side-menu/content-components/multi-user-assign/side-menu-multi-user-assign-component.module.mjs +3 -3
  101. package/esm2020/lib/side-menu/content-components/public-api.mjs +5 -1
  102. package/esm2020/lib/side-menu/content-components/user-assign/side-menu-user-assign-component.module.mjs +3 -3
  103. package/esm2020/lib/tabs/tab-view/tab-view.component.mjs +7 -6
  104. package/esm2020/lib/task-content/field-component-resolver/field-component-resolver.component.mjs +18 -27
  105. package/esm2020/lib/task-content/task-content/task-content.component.mjs +3 -3
  106. package/esm2020/lib/user/profile/profile.component.mjs +2 -2
  107. package/esm2020/lib/view/case-view/components/case-list/case-list.component.mjs +3 -3
  108. package/esm2020/lib/view/case-view/components/case-list-paginator/case-list-paginator.component.mjs +3 -3
  109. package/esm2020/lib/view/case-view/components/create-case-button/create-case-button.component.mjs +10 -4
  110. package/esm2020/lib/view/workflow-view/workflow-view.component.mjs +22 -21
  111. package/esm2020/public-api.mjs +2 -1
  112. package/fesm2015/netgrif-components.mjs +3848 -2122
  113. package/fesm2015/netgrif-components.mjs.map +1 -1
  114. package/fesm2020/netgrif-components.mjs +3761 -2128
  115. package/fesm2020/netgrif-components.mjs.map +1 -1
  116. package/lib/data-fields/boolean-field/boolean-default-field/boolean-default-field.component.d.ts +8 -0
  117. package/lib/data-fields/boolean-field/boolean-field.component.d.ts +5 -5
  118. package/lib/data-fields/button-field/button-default-field/button-default-field.component.d.ts +12 -0
  119. package/lib/data-fields/button-field/button-field.component.d.ts +7 -8
  120. package/lib/data-fields/case-ref-field/case-ref-default/case-ref-default.component.d.ts +8 -0
  121. package/lib/data-fields/data-field-template/data-field-template.component.d.ts +3 -2
  122. package/lib/data-fields/data-fields.module.d.ts +34 -20
  123. package/lib/data-fields/date-field/date-default-field/date-default-field.component.d.ts +9 -0
  124. package/lib/data-fields/date-field/date-field.component.d.ts +5 -3
  125. package/lib/data-fields/date-time-field/date-time-default-field/date-time-default-field.component.d.ts +9 -0
  126. package/lib/data-fields/date-time-field/date-time-field.component.d.ts +5 -3
  127. package/lib/data-fields/enumeration-field/enumeration-autocomplete-dynamic-field/enumeration-autocomplete-dynamic-field.component.d.ts +3 -3
  128. package/lib/data-fields/enumeration-field/enumeration-autocomplete-select-field/enumeration-autocomplete-select-field.component.d.ts +3 -3
  129. package/lib/data-fields/enumeration-field/enumeration-field.component.d.ts +3 -0
  130. package/lib/data-fields/enumeration-field/enumeration-icon-field/enumeration-icon-field.component.d.ts +3 -3
  131. package/lib/data-fields/enumeration-field/enumeration-list-field/enumeration-list-field.component.d.ts +3 -3
  132. package/lib/data-fields/enumeration-field/enumeration-select-field/enumeration-select-field.component.d.ts +3 -3
  133. package/lib/data-fields/enumeration-field/enumeration-stepper-field/enumeration-stepper-field.component.d.ts +3 -3
  134. package/lib/data-fields/file-field/file-default-field/file-default-field.component.d.ts +13 -0
  135. package/lib/data-fields/file-field/file-field.component.d.ts +6 -9
  136. package/lib/data-fields/file-list-field/file-list-default-field/file-list-default-field.component.d.ts +8 -0
  137. package/lib/data-fields/file-list-field/file-list-field.component.d.ts +10 -0
  138. package/lib/data-fields/filter-field/filter-default-field/filter-default-field.component.d.ts +10 -0
  139. package/lib/data-fields/filter-field/filter-field.component.d.ts +6 -6
  140. package/lib/data-fields/filter-field/tab-view-filter-field/filter-field-tab-view-content.component.d.ts +2 -2
  141. package/lib/data-fields/i18n-field/i18n-divider-field/i18n-divider-field.component.d.ts +3 -3
  142. package/lib/data-fields/i18n-field/i18n-field.component.d.ts +3 -0
  143. package/lib/data-fields/i18n-field/i18n-text-field/i18n-text-field.component.d.ts +3 -3
  144. package/lib/data-fields/multichoice-field/multichoice-autocomplete-field/multichoice-autocomplete-field.component.d.ts +3 -3
  145. package/lib/data-fields/multichoice-field/multichoice-field.component.d.ts +3 -0
  146. package/lib/data-fields/multichoice-field/multichoice-list-field/multichoice-list-field.component.d.ts +3 -3
  147. package/lib/data-fields/multichoice-field/multichoice-select-field/multichoice-select-field.component.d.ts +3 -2
  148. package/lib/data-fields/number-field/number-currency-field/number-currency-field.component.d.ts +3 -3
  149. package/lib/data-fields/number-field/number-default-field/number-default-field.component.d.ts +3 -3
  150. package/lib/data-fields/number-field/number-field.component.d.ts +3 -0
  151. package/lib/data-fields/public-api.d.ts +0 -15
  152. package/lib/data-fields/task-ref-field/task-ref-dashboard-field/task-ref-dashboard-field.component.d.ts +13 -0
  153. package/lib/data-fields/task-ref-field/task-ref-field.component.d.ts +6 -7
  154. package/lib/data-fields/task-ref-field/task-ref-list-field/task-ref-list-field.component.d.ts +8 -0
  155. package/lib/data-fields/text-field/dashboard-bar-chart-text-field/dashboard-bar-chart-text-field.component.d.ts +3 -3
  156. package/lib/data-fields/text-field/dashboard-iframe-text-field/dashboard-iframe-text-field.component.d.ts +3 -3
  157. package/lib/data-fields/text-field/dashboard-line-chart-text-field/dashboard-line-chart-text-field.component.d.ts +3 -3
  158. package/lib/data-fields/text-field/dashboard-pie-chart-text-field/dashboard-pie-chart-text-field.component.d.ts +3 -3
  159. package/lib/data-fields/text-field/dashboard-portal-text-field/dashboard-portal-text-field.component.d.ts +3 -3
  160. package/lib/data-fields/text-field/html-textarea-field/html-textarea-field.component.d.ts +5 -5
  161. package/lib/data-fields/text-field/password-text-field/password-text-field.component.d.ts +3 -3
  162. package/lib/data-fields/text-field/rich-textarea-field/rich-textarea-field.component.d.ts +3 -3
  163. package/lib/data-fields/text-field/simple-text-field/simple-text-field.component.d.ts +3 -3
  164. package/lib/data-fields/text-field/text-field.component.d.ts +4 -2
  165. package/lib/data-fields/text-field/textarea-field/textarea-field.component.d.ts +3 -3
  166. package/lib/data-fields/user-field/user-default-field/user-default-field.component.d.ts +10 -0
  167. package/lib/data-fields/user-field/user-field.component.d.ts +6 -5
  168. package/lib/data-fields/user-list-field/user-list-default-field/user-list-default-field.component.d.ts +11 -0
  169. package/lib/data-fields/user-list-field/user-list-field.component.d.ts +6 -6
  170. package/lib/dialog/admin-impersonate-dialog/admin-impersonate-dialog.component.d.ts +42 -0
  171. package/lib/dialog/dialog.module.d.ts +31 -0
  172. package/lib/dialog/filter-selector-dialog/filter-selector-dialog.component.d.ts +96 -0
  173. package/lib/dialog/import-net-dialog/import-net-dialog.component.d.ts +36 -0
  174. package/lib/dialog/load-filter-dialog/load-filter-dialog.component.d.ts +18 -0
  175. package/lib/dialog/multi-user-assign-dialog/multi-user-assign-dialog.component.d.ts +24 -0
  176. package/lib/dialog/new-case-dialog/new-case-dialog.component.d.ts +66 -0
  177. package/lib/dialog/public-api.d.ts +10 -0
  178. package/lib/dialog/save-filter-dialog/save-filter-dialog.component.d.ts +16 -0
  179. package/lib/dialog/user-assign-dialog/user-assign-dialog.component.d.ts +42 -0
  180. package/lib/dialog/user-impersonate-dialog/user-impersonate-dialog.component.d.ts +16 -0
  181. package/lib/filter-field-content/filter-field-tab-view/filter-field-tab-view.component.d.ts +2 -2
  182. package/lib/navigation/group-navigation-component-resolver/default-components/default-case-ref-list-view/default-case-ref-list-view.component.d.ts +19 -0
  183. package/lib/navigation/group-navigation-component-resolver/default-components/default-task-view/default-task-view.component.d.ts +12 -0
  184. package/lib/navigation/navigation.module.d.ts +17 -15
  185. package/lib/navigation/public-api.d.ts +1 -0
  186. package/lib/search/search.module.d.ts +4 -0
  187. package/lib/side-menu/content-components/admin-impersonate/side-menu-admin-impersonate-component.module.d.ts +1 -1
  188. package/lib/side-menu/content-components/filter-selector/side-menu-filter-selector-component.module.d.ts +1 -1
  189. package/lib/side-menu/content-components/multi-user-assign/side-menu-multi-user-assign-component.module.d.ts +1 -1
  190. package/lib/side-menu/content-components/public-api.d.ts +4 -0
  191. package/lib/side-menu/content-components/user-assign/side-menu-user-assign-component.module.d.ts +1 -1
  192. package/lib/task-content/field-component-resolver/field-component-resolver.component.d.ts +2 -2
  193. package/lib/view/case-view/components/create-case-button/create-case-button.component.d.ts +3 -1
  194. package/lib/view/workflow-view/workflow-view.component.d.ts +4 -3
  195. package/nae-theme.scss +8 -2
  196. package/nae-typography.scss +1 -1
  197. package/package.json +2 -2
  198. package/public-api.d.ts +1 -0
  199. package/src/lib/admin/ldap-group-role-assignment/ldap-group-role-assignment.component.theme.scss +2 -2
  200. package/src/lib/admin/role-assignment/role-assignment.component.theme.scss +16 -0
  201. package/src/lib/data-fields/data-field.theme.scss +217 -18
  202. package/src/lib/dialog/dialog.theme.scss +40 -2
  203. package/src/lib/header/header.theme.scss +0 -9
  204. package/src/lib/navigation/navigation.theme.scss +20 -3
  205. package/src/lib/panel/panel.theme.scss +50 -4
  206. package/src/lib/search/advanced-search/advanced-search-component/advanced-search.component.theme.scss +9 -0
  207. package/src/lib/search/advanced-search/search-predicate-component/search-predicate.component.theme.scss +7 -0
  208. package/src/lib/search/search-component/search.component-theme.scss +21 -0
  209. package/src/lib/side-menu/side-menu.theme.scss +1 -1
  210. package/src/lib/tabs/tabs.theme.scss +15 -1
  211. package/esm2020/lib/data-fields/file-field-list/file-list-field.component.mjs +0 -33
  212. package/lib/data-fields/file-field-list/file-list-field.component.d.ts +0 -8
@@ -9,6 +9,12 @@
9
9
  $secondary: map-get($theme, accent);
10
10
  $warn: map-get($theme, warn);
11
11
 
12
+ $color-text-disabled: #64748B;
13
+ $color-outline-disabled: #CBD5E1;
14
+
15
+ $color-text-enabled: #64748B;
16
+ $color-outline-enabled: #64748B;
17
+
12
18
  .editor-preview > h1 {
13
19
  border-bottom: 1px solid #ddd;
14
20
  }
@@ -35,11 +41,11 @@
35
41
 
36
42
  .stepper-arrow-selected {
37
43
  color: mat.get-color-from-palette($primary) !important;
38
- font-weight: 700 !important;
44
+ font-weight: 600 !important;
39
45
  }
40
46
 
41
47
  .enum-icon-item-hover:hover {
42
- color: mat.get-color-from-palette($primary) !important;
48
+ color: mat.get-color-from-palette($primary, 200) !important;
43
49
  }
44
50
 
45
51
  .enum-icon-item-active {
@@ -73,21 +79,39 @@
73
79
  }
74
80
 
75
81
  .netgrif-input {
82
+
83
+ .mat-paginator-page-size-select .mat-form-field-infix {
84
+ min-width: unset !important;
85
+ }
76
86
  .mat-form-field-infix {
77
- padding: 8px 0 12px 0 !important;
87
+ padding: 5px 0 11px 0 !important;
78
88
  font-weight: 400 !important;
79
89
  font-size: 14px !important;
80
90
  line-height: 20px !important;
81
- min-width: 130px;
91
+ min-width: 130px !important;
92
+ width: unset;
93
+ }
94
+
95
+ .mat-form-field-appearance-outline .mat-form-field-prefix, .mat-form-field-appearance-outline .mat-form-field-suffix {
96
+ top: 0.33em;
97
+ }
98
+
99
+ .mat-form-field-appearance-outline .mat-form-field-prefix {
100
+ left: -0.33em;
82
101
  }
83
102
 
84
103
  .mat-form-field-label-wrapper {
85
- top: -1.1em !important;
104
+ top: -1.2em !important;
86
105
  font-weight: 400 !important;
87
106
  font-size: 14px !important;
88
107
  line-height: 20px !important;
89
108
  }
90
109
 
110
+ .mat-form-field-appearance-outline.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label {
111
+ transform: translateY(-1.4em) scale(0.75);
112
+ width: 133.3333333333%;
113
+ }
114
+
91
115
  .mat-select-arrow-wrapper {
92
116
  transform: translateY(0) !important;
93
117
  }
@@ -99,19 +123,18 @@
99
123
  .mat-error {
100
124
  font-size: 10px !important;
101
125
  line-height: 18px !important;
102
- white-space: nowrap;
103
- text-overflow: ellipsis;
104
126
  width: 100%;
105
- overflow: hidden;
106
127
  }
107
128
 
108
129
  .mat-hint {
109
- font-size: 11px !important;
130
+ font-size: 10px !important;
110
131
  line-height: 18px !important;
111
- white-space: nowrap;
112
- text-overflow: ellipsis;
113
132
  width: 100%;
114
- overflow: hidden;
133
+ color: $color-text-enabled;
134
+ }
135
+
136
+ .mat-hint-disabled {
137
+ color: $color-text-disabled !important;
115
138
  }
116
139
 
117
140
  .ql-toolbar.ql-snow {
@@ -120,14 +143,28 @@
120
143
 
121
144
  .ql-container.ql-snow {
122
145
  border-radius: 0 0 6px 6px;
146
+ border: 1px solid $color-outline-enabled;
123
147
  }
124
148
 
125
149
  .mat-radio-label {
126
150
  min-height: 36px !important;
151
+ white-space: unset;
152
+ }
153
+
154
+ @media only screen and (max-width: 959.99px) {
155
+ .mat-radio-label {
156
+ align-items: flex-start;
157
+ }
127
158
  }
128
159
 
129
160
  .netgrif-label {
130
161
  font-weight: 500;
162
+ color: $color-text-enabled !important;
163
+ }
164
+
165
+ .netgrif-label-disabled {
166
+ color: $color-text-disabled !important;
167
+ cursor: alias;
131
168
  }
132
169
 
133
170
  .mat-list-option {
@@ -147,12 +184,13 @@
147
184
 
148
185
  .mat-list-base .mat-list-item .mat-list-item-content, .mat-list-base .mat-list-option .mat-list-item-content {
149
186
  min-height: 36px;
150
- padding: 0 8px !important;
187
+ padding: 0 2px !important;
151
188
  }
152
189
 
153
190
  .mat-list-base .mat-list-option.mat-list-option .mat-list-item-content .mat-list-text {
154
191
  padding-top: 8px;
155
192
  padding-bottom: 8px;
193
+ padding-left: 10px;
156
194
  }
157
195
 
158
196
  .mat-list-base {
@@ -160,16 +198,141 @@
160
198
  }
161
199
 
162
200
  .mat-form-field-subscript-wrapper {
163
- margin-top: 0.45em;
164
- top: calc(100% - 2.05em);
201
+ //position: static;
202
+ margin-top: 0.5em;
203
+ top: calc(100% - 2em);
204
+ }
205
+
206
+ .mat-form-field-wrapper {
207
+ padding-bottom: 1em !important;
208
+ }
209
+
210
+ .mat-form-field-appearance-outline .mat-form-field-wrapper {
211
+ margin: 0.25px 0 0;
212
+ }
213
+
214
+ // DISABLED
215
+
216
+ .mat-form-field-appearance-outline.mat-form-field-disabled .mat-form-field-outline {
217
+ color: $color-outline-disabled;
218
+ background-color: transparent;
219
+ border-radius: 6px;
220
+ }
221
+
222
+ .mat-form-field-appearance-outline.mat-form-field-disabled .mat-form-field-label {
223
+ color: $color-text-disabled;
224
+ }
225
+
226
+ .mat-input-element:disabled, .mat-form-field-type-mat-native-select.mat-form-field-disabled .mat-form-field-infix::after {
227
+ color: $color-text-disabled;
228
+ }
229
+
230
+ .mat-form-field-prefix .mat-icon-button.mat-button-disabled.mat-button-disabled {
231
+ color: $color-text-disabled;
232
+ }
233
+
234
+ .mat-radio-button.mat-radio-disabled .mat-radio-label-content {
235
+ color: $color-text-disabled !important;
236
+ }
237
+
238
+ .mat-list-base .mat-list-item-disabled {
239
+ color: $color-text-disabled !important;
240
+ background-color: transparent;
241
+ }
242
+
243
+ .mat-select-disabled .mat-select-value {
244
+ color: $color-text-disabled;
245
+ }
246
+
247
+ .mat-button.mat-primary.mat-button-disabled,
248
+ .mat-button.mat-accent.mat-button-disabled,
249
+ .mat-button.mat-warn.mat-button-disabled,
250
+ .mat-button.mat-button-disabled.mat-button-disabled,
251
+ .mat-icon-button.mat-primary.mat-button-disabled,
252
+ .mat-icon-button.mat-accent.mat-button-disabled,
253
+ .mat-icon-button.mat-warn.mat-button-disabled,
254
+ .mat-icon-button.mat-button-disabled.mat-button-disabled,
255
+ .mat-stroked-button.mat-primary.mat-button-disabled,
256
+ .mat-stroked-button.mat-accent.mat-button-disabled,
257
+ .mat-stroked-button.mat-warn.mat-button-disabled,
258
+ .mat-stroked-button.mat-button-disabled.mat-button-disabled {
259
+ color: $color-text-disabled;
260
+ }
261
+
262
+ // ENABLED
263
+
264
+ .mat-form-field-appearance-outline .mat-form-field-outline {
265
+ color: $color-outline-enabled;
266
+ background-color: #FFFFFF;
267
+ border-radius: 6px;
268
+ }
269
+
270
+ .ql-toolbar {
271
+ background-color: #FFFFFF;
272
+ }
273
+
274
+ .ql-editor {
275
+ border-bottom-right-radius: 6px;
276
+ border-bottom-left-radius: 6px;
277
+ }
278
+
279
+ .ql-editor.ql-blank {
280
+ background-color: #FFFFFF;
281
+ }
282
+
283
+ .ql-toolbar.ql-snow {
284
+ border: 1px solid $color-outline-enabled;
285
+ }
286
+
287
+ .mat-form-field-appearance-outline .mat-form-field-outline-start {
288
+ border-radius: 6px 0 0 6px;
289
+ }
290
+
291
+ .mat-form-field-appearance-outline .mat-form-field-outline-end {
292
+ border-radius: 0 6px 6px 0;
293
+ }
294
+
295
+ .mat-list-base .mat-list-option {
296
+ color: $color-text-enabled !important;
297
+ }
298
+
299
+ .mat-radio-label-content{
300
+ color: $color-text-enabled !important;
301
+ }
302
+
303
+ .mat-stroked-button:not(.mat-button-disabled) {
304
+ border-color: $color-outline-enabled;
305
+ }
306
+
307
+ .mat-slide-toggle-content {
308
+ color: $color-text-enabled !important;
309
+ }
310
+
311
+ .netgrif-chip-fix {
312
+ .mat-chip-list-wrapper {
313
+ margin: -10px !important;
314
+ }
315
+ }
316
+
317
+ .mat-select-trigger {
318
+ height: unset;
319
+ min-height: 1.125em;
320
+ }
321
+
322
+ .mat-select-value-text {
323
+ white-space: break-spaces;
165
324
  }
166
325
 
167
326
  }
168
327
 
169
- .netgrif-input-fix {
328
+ .netgrif-zero-field-wrapper {
170
329
  .mat-form-field-wrapper {
171
330
  padding-bottom: 0 !important;
172
331
  }
332
+ }
333
+
334
+ .netgrif-input-fix {
335
+
173
336
 
174
337
  input:-webkit-autofill,
175
338
  input:-webkit-autofill:focus {
@@ -181,7 +344,25 @@
181
344
  .mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button {
182
345
  width: unset !important;
183
346
  height: unset !important;
184
- top: 5px !important;
347
+ top: 3px !important;
348
+ }
349
+
350
+ .mat-form-field-wrapper {
351
+ padding-bottom: 0 !important;
352
+ }
353
+ }
354
+
355
+ .netgrif-input-primary-search-fix {
356
+ .mat-form-field-appearance-outline .mat-form-field-prefix, .mat-form-field-appearance-outline .mat-form-field-suffix {
357
+ top: 0.25em !important;
358
+ }
359
+
360
+ .mat-form-field-appearance-outline .mat-form-field-prefix {
361
+ left: 0 !important;
362
+ }
363
+
364
+ .mat-form-field-wrapper {
365
+ padding-bottom: 0 !important;
185
366
  }
186
367
  }
187
368
 
@@ -196,7 +377,7 @@
196
377
  }
197
378
 
198
379
  .mat-form-field-outline-thick {
199
- color: mat.get-contrast-color-from-palette($primary, 500);
380
+ color: mat.get-contrast-color-from-palette($primary ,500);
200
381
  }
201
382
 
202
383
  &.mat-focused {
@@ -239,6 +420,13 @@
239
420
  border-radius: 16px;
240
421
  border-width: thin;
241
422
  }
423
+
424
+ :host ::ng-deep .editor-toolbar {
425
+ background-color: #FFFFFF !important;
426
+ border-top: 1px solid $color-outline-enabled !important;
427
+ border-left: 1px solid $color-outline-enabled !important;
428
+ border-right: 1px solid $color-outline-enabled !important;
429
+ }
242
430
  }
243
431
 
244
432
  .mat-calendar-arrow {
@@ -279,3 +467,14 @@ ngx-mat-datetime-content {
279
467
  }
280
468
  }
281
469
 
470
+ ac-number-currency-field .mat-form-field .mat-form-field-prefix {
471
+ top: 0 !important;
472
+ padding-right: 4px !important;
473
+ }
474
+
475
+ :host .editor-toolbar {
476
+ background-color: #FFFFFF !important;
477
+ border-top: 1px solid #FFFFFF !important;
478
+ border-left: 1px solid #FFFFFF !important;
479
+ border-right: 1px solid #FFFFFF !important;
480
+ }
@@ -6,6 +6,44 @@
6
6
  }
7
7
  }
8
8
 
9
- .dialog-content-margin {
10
- margin-bottom: 16px;
9
+ @mixin dialog-theme($theme) {
10
+ .dialog-content-margin {
11
+ margin-bottom: 16px;
12
+ }
13
+
14
+ .dialog-responsive {
15
+ width: 40% !important;
16
+ height: 80% !important;
17
+ min-height: 300px !important;
18
+ min-width: 300px !important;
19
+ }
20
+
21
+ @media only screen and (max-width: 599px) {
22
+ .dialog-responsive {
23
+ width: 100% !important;
24
+ height: 80% !important;
25
+ min-height: unset !important;
26
+ min-width: unset !important;
27
+ }
28
+ }
29
+
30
+ .mat-dialog-title {
31
+ font-style: normal;
32
+ font-weight: 500;
33
+ font-size: 20px;
34
+ line-height: 24px;
35
+ letter-spacing: 0.15px;
36
+ color: #1E293B;
37
+ }
38
+
39
+ .mat-dialog-container {
40
+ border-radius: 6px !important;
41
+ }
42
+
43
+ .dialog-field-fix {
44
+ .netgrif-input .mat-form-field-appearance-outline .mat-form-field-suffix {
45
+ top: unset;
46
+ }
47
+ }
11
48
  }
49
+
@@ -6,15 +6,6 @@
6
6
  background: rgba(mat.get-color-from-palette($primary), 0.3);
7
7
  }
8
8
 
9
- .header-color {
10
- background: mat.get-color-from-palette($primary, 500);
11
- color: mat.get-contrast-color-from-palette($primary, 500);
12
- }
13
-
14
- .header-color-font {
15
- color: mat.get-contrast-color-from-palette($primary, 500);
16
- }
17
-
18
9
  .netgrif-header-input {
19
10
  .mat-input-element {
20
11
  caret-color: mat.get-contrast-color-from-palette($primary, 500) !important;
@@ -20,11 +20,12 @@
20
20
  }
21
21
 
22
22
  .rail-color {
23
- background: mat.get-color-from-palette($primary, 50);
23
+ background: #F8FAFC;
24
24
  }
25
25
 
26
26
  .rail-selected-color {
27
27
  background-color: mat.get-color-from-palette($primary, 100);
28
+ color: mat.get-color-from-palette($primary) !important;
28
29
  }
29
30
 
30
31
  .tree-node.active {
@@ -35,7 +36,23 @@
35
36
  color: mat.get-color-from-palette($primary) !important;
36
37
  }
37
38
 
38
- .logo, .toolbar {
39
- background: mat.get-color-from-palette($primary, 50);
39
+ .active-tree-node {
40
+ color: mat.get-color-from-palette($primary) !important;
41
+ }
42
+
43
+ .tree-node {
44
+ mat-icon.tree-node-icon {
45
+ color: mat.get-color-from-palette($primary) !important;
46
+ }
47
+ }
48
+
49
+ .tree-node:hover {
50
+ background-color: mat.get-color-from-palette($primary, 50);
51
+ color: mat.get-color-from-palette($primary) !important;
52
+ }
53
+
54
+ .menu-button:hover {
55
+ background-color: mat.get-color-from-palette($primary, 100);
56
+ color: mat.get-color-from-palette($primary) !important;
40
57
  }
41
58
  }
@@ -4,15 +4,15 @@
4
4
  $primary: map-get($theme, primary);
5
5
  $accent: map-get($theme, accent);
6
6
  .panel-color:hover {
7
- background: mat.get-color-from-palette($primary) !important;
8
- color: white !important;
7
+ background: mat.get-color-from-palette($primary, 50) !important;
8
+ color: mat.get-contrast-color-from-palette($primary, 50) !important;
9
9
 
10
10
  .panel-primary-icon {
11
- color: mat.get-color-from-palette($accent);
11
+ color: mat.get-color-from-palette($primary, 500) !important;
12
12
  }
13
13
 
14
14
  .panel-accent-icon {
15
- color: mat.get-color-from-palette($accent);
15
+ color: mat.get-color-from-palette($accent) !important;
16
16
  }
17
17
  }
18
18
 
@@ -38,4 +38,50 @@
38
38
  font-size: 12px;
39
39
  color: mat.get-contrast-color-from-palette($primary, 500);
40
40
  }
41
+
42
+ .panel-last {
43
+ .header-min-height {
44
+ border-bottom: unset !important;
45
+ }
46
+ }
47
+
48
+ .mat-accordion .mat-expansion-panel:last-of-type:not([class*=panel-last]) {
49
+ border-bottom-left-radius: 0 !important;
50
+ border-bottom-right-radius: 0 !important;
51
+ }
52
+
53
+ .mat-accordion .mat-expansion-panel:first-of-type {
54
+ border-top-left-radius: 0 !important;
55
+ border-top-right-radius: 0 !important;
56
+ }
57
+
58
+ .panel-list-content {
59
+ .cdk-virtual-scroll-content-wrapper {
60
+ box-sizing: border-box;
61
+ padding: 0 1px;
62
+ border-bottom-left-radius: 8px;
63
+ border-bottom-right-radius: 8px;
64
+ }
65
+ }
66
+
67
+ .task-panel-scroll-container {
68
+ .cdk-virtual-scroll-content-wrapper {
69
+ box-shadow: 0px 1px 2px rgb(0 0 0 / 10%), 0px 1px 3px 1px rgb(0 0 0 / 10%);
70
+ }
71
+ }
72
+
73
+ .panel-body {
74
+ .mat-expansion-panel-body {
75
+ padding: 0 !important;
76
+ background-color: #F8FAFC;
77
+ }
78
+ }
79
+ }
80
+
81
+ @media only screen and (max-width: 599.99px) {
82
+ .panel-padding {
83
+ .mat-expansion-panel-body {
84
+ padding: 0 0 8px;
85
+ }
86
+ }
41
87
  }
@@ -0,0 +1,9 @@
1
+ @use '@angular/material' as mat;
2
+
3
+ @mixin advanced-search-theme($theme) {
4
+ $primary: map-get($theme, primary);
5
+
6
+ .advanced-search-buttons {
7
+ color: mat.get-color-from-palette($primary, 500);
8
+ }
9
+ }
@@ -6,4 +6,11 @@
6
6
  .predicate-body-color {
7
7
  background: mat.get-color-from-palette($primary, 50);
8
8
  }
9
+
10
+ .mat-form-field-wrapper-search {
11
+ .mat-form-field-wrapper {
12
+ margin: 0 !important;
13
+ padding-bottom: 0;
14
+ }
15
+ }
9
16
  }
@@ -0,0 +1,21 @@
1
+ @use '@angular/material' as mat;
2
+
3
+ @mixin advanced-search-icon($theme) {
4
+ $primary: map-get($theme, primary);
5
+
6
+ .advanced-search-icon {
7
+ color: mat.get-color-from-palette($primary, 500);
8
+ }
9
+
10
+ .mat-menu-border-radius {
11
+ border-radius: 8px !important;
12
+ }
13
+ .mat-menu-padding {
14
+ .mat-menu-content {
15
+ padding: 0 !important;
16
+ }
17
+ }
18
+ .mat-menu-item:hover:not([disabled]), .mat-menu-item.cdk-program-focused:not([disabled]), .mat-menu-item.cdk-keyboard-focused:not([disabled]), .mat-menu-item-highlighted:not([disabled]) {
19
+ background: mat.get-color-from-palette($primary, 50) !important;
20
+ }
21
+ }
@@ -19,6 +19,6 @@
19
19
  font-weight: 500;
20
20
  font-size: 20px;
21
21
  line-height: 32px;
22
- font-family: Roboto, monospace;
22
+ font-family: 'Roboto';
23
23
  }
24
24
  }
@@ -1,4 +1,7 @@
1
+ @use '@angular/material' as mat;
2
+
1
3
  @mixin tabs-theme($theme) {
4
+ $primary: map-get($theme, primary);
2
5
  .center-tabs {
3
6
  .mat-tab-labels {
4
7
  justify-content: center;
@@ -12,8 +15,19 @@
12
15
  }
13
16
 
14
17
  .mat-tab-label-container {
15
- border-radius: 6px;
16
18
  background: white;
17
19
  }
20
+
21
+ .mat-tab-header {
22
+ border-bottom: 2px solid #E2E8F0;
23
+ }
24
+
25
+ .icon-tab-color {
26
+ color: mat.get-color-from-palette($primary);
27
+ }
28
+
29
+ .mat-tab-label {
30
+ opacity: 1 !important;
31
+ }
18
32
  }
19
33
 
@@ -1,33 +0,0 @@
1
- import { Component, Inject, Optional } from '@angular/core';
2
- import { AbstractFileListFieldComponent, NAE_INFORM_ABOUT_INVALID_DATA } from '@netgrif/components-core';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@netgrif/components-core";
5
- import * as i2 from "@ngx-translate/core";
6
- import * as i3 from "../data-field-template/data-field-template.component";
7
- import * as i4 from "../required-label/required-label.component";
8
- import * as i5 from "@angular/material/button";
9
- import * as i6 from "@angular/material/icon";
10
- import * as i7 from "@angular/material/progress-bar";
11
- import * as i8 from "@angular/common";
12
- import * as i9 from "@angular/material/form-field";
13
- import * as i10 from "@angular/flex-layout/flex";
14
- import * as i11 from "@angular/flex-layout/extended";
15
- import * as i12 from "@angular/material/tooltip";
16
- import * as i13 from "@angular/forms";
17
- export class FileListFieldComponent extends AbstractFileListFieldComponent {
18
- constructor(taskResourceService, log, snackbar, translate, eventService, informAboutInvalidData) {
19
- super(taskResourceService, log, snackbar, translate, eventService, informAboutInvalidData);
20
- }
21
- }
22
- FileListFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FileListFieldComponent, deps: [{ token: i1.TaskResourceService }, { token: i1.LoggerService }, { token: i1.SnackBarService }, { token: i2.TranslateService }, { token: i1.EventService }, { token: NAE_INFORM_ABOUT_INVALID_DATA, optional: true }], target: i0.ɵɵFactoryTarget.Component });
23
- FileListFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: FileListFieldComponent, selector: "nc-file-list-field", usesInheritance: true, ngImport: i0, template: "<nc-data-field-template *ngIf=\"!dataField.behavior.hidden\"\n [dataField]=\"dataField\"\n [dataFieldTemplate]=\"dataFieldTemplate\"\n [offset]=\"taskOffset\">\n</nc-data-field-template>\n\n<ng-template #dataFieldTemplate let-showLargeLayout=\"showLargeLayout\">\n <div>\n <mat-label *ngIf=\"!showLargeLayout.value\" class=\"netgrif-label\">\n {{dataField.title}}\n <nc-required-label *ngIf=\"dataField.behavior.required\" [isIn]=\"!dataField.disabled\"></nc-required-label>\n <br>\n </mat-label>\n <div class=\"form-input button-icon-input full-width input-margin\" fxLayout=\"row\" fxLayoutAlign=\"start center\" [ngClass]=\"{'form-input-disabled': formControl.disabled, 'form-input-error': dataField.isInvalid(formControl)}\">\n <button mat-icon-button color=\"accent\" (click)=\"chooseFile()\"\n [matTooltip]=\"'dataField.file.clickToUpload' | translate\" *ngIf=\"!formControl.disabled\"\n [class.do-not-click]=\"state.uploading\">\n <mat-icon>file_upload</mat-icon>\n </button>\n <span *ngIf=\"uploadedFiles.length === 0\" (click)=\"chooseFile()\" fxFlex\n [ngClass]=\"{'no-cursor': formControl.disabled}\" class=\"input-placeholder input-name-ellipsis\">{{constructDisplayName()}}</span>\n <div *ngIf=\"uploadedFiles.length !== 0\" class=\"input-name-ellipsis\" fxFlex>\n <div *ngFor=\"let name of uploadedFiles\" fxLayoutAlign=\"start center\">\n <span (click)=\"download(name)\" fxFlex [matTooltip]=\"'dataField.file.clickToDownload' | translate : {fileName: name}\"\n class=\"input-name-ellipsis file-list-item\">{{name}}</span>\n <button (click)=\"deleteFile(name)\" [matTooltip]=\"'dataField.file.clickToDelete' | translate\" mat-icon-button\n *ngIf=\"!formControl.disabled\">\n <mat-icon color=\"warn\">close</mat-icon>\n </button>\n </div>\n </div>\n </div>\n <mat-progress-bar *ngIf=\"state.uploading || state.downloading\" color=\"primary\" [value]=\"state.progress\"\n [mode]=\"state.uploading ? 'determinate' : 'indeterminate'\"\n class=\"margin-bottom-default\"></mat-progress-bar>\n <input type=\"file\" #fileUploadInput name=\"fileUpload\" [multiple]=\"true\"\n accept=\"{{dataField.allowTypes}}\" class=\"invisible-input\"/>\n <input type=\"text\" [formControl]=\"formControl\" class=\"invisible-input\">\n <mat-hint class=\"file-hint-error\" *ngIf=\"!dataField.isInvalid(formControl)\">{{dataField.description}}</mat-hint>\n <mat-error class=\"file-hint-error\" *ngIf=\"dataField.isInvalid(formControl)\">{{'dataField.validations.required' | translate}}</mat-error>\n </div>\n</ng-template>\n", styles: ["@import\"quill/dist/quill.snow.css\";@import\"quill/dist/quill.bubble.css\";@import\"quill/dist/quill.core.css\";.mat-calendar-arrow{border:none!important;width:10px!important;height:5px!important}ngx-mat-calendar-header .mat-calendar-arrow{border-left:5px solid transparent!important;border-right:5px solid transparent!important;border-top-width:5px!important;border-top-style:solid!important;width:0!important;height:0!important}ngx-mat-calendar .mat-calendar-body-cell{position:relative!important}mat-calendar .mat-calendar-arrow{width:0;height:0}mat-calendar .mat-calendar-body-cell{position:absolute!important;height:100%}ngx-mat-datetime-content .mat-calendar-arrow{width:0}.invisible-input{display:none}.margin-bottom-default{margin-bottom:8px}.progress-bar-size{height:8px}.margin-bottom-half{margin-bottom:4px}.do-not-click:hover{cursor:not-allowed}.file-button{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.input-name-ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.input-placeholder{color:#0000006b}.button-icon-input{padding:2px!important}.full-width{width:100%;min-width:100%}.input-margin{margin-top:2px!important}.form-input{background:transparent;color:#333;outline:none;border:1px solid rgba(0,0,0,.12);text-align:left;font-size:14px;line-height:20px;border-radius:6px;min-width:5px;padding:10px 15px;box-sizing:border-box;min-height:48px}.form-input:hover{border-color:#000;border-width:2px}.file-hint-error{padding:0 1em;font-size:75%}.no-cursor{cursor:default!important}.form-input-disabled:hover{border-color:#0000001f!important;border-width:1px;padding:2px!important}\n"], components: [{ type: i3.DataFieldTemplateComponent, selector: "nc-data-field-template" }, { type: i4.RequiredLabelComponent, selector: "nc-required-label", inputs: ["isIn"] }, { type: i5.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i7.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }], directives: [{ type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i9.MatLabel, selector: "mat-label" }, { type: i10.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i10.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { type: i8.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i11.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { type: i12.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { type: i10.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { type: i8.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i13.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i13.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i13.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i9.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { type: i9.MatError, selector: "mat-error", inputs: ["id"] }], pipes: { "translate": i2.TranslatePipe } });
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FileListFieldComponent, decorators: [{
25
- type: Component,
26
- args: [{ selector: 'nc-file-list-field', template: "<nc-data-field-template *ngIf=\"!dataField.behavior.hidden\"\n [dataField]=\"dataField\"\n [dataFieldTemplate]=\"dataFieldTemplate\"\n [offset]=\"taskOffset\">\n</nc-data-field-template>\n\n<ng-template #dataFieldTemplate let-showLargeLayout=\"showLargeLayout\">\n <div>\n <mat-label *ngIf=\"!showLargeLayout.value\" class=\"netgrif-label\">\n {{dataField.title}}\n <nc-required-label *ngIf=\"dataField.behavior.required\" [isIn]=\"!dataField.disabled\"></nc-required-label>\n <br>\n </mat-label>\n <div class=\"form-input button-icon-input full-width input-margin\" fxLayout=\"row\" fxLayoutAlign=\"start center\" [ngClass]=\"{'form-input-disabled': formControl.disabled, 'form-input-error': dataField.isInvalid(formControl)}\">\n <button mat-icon-button color=\"accent\" (click)=\"chooseFile()\"\n [matTooltip]=\"'dataField.file.clickToUpload' | translate\" *ngIf=\"!formControl.disabled\"\n [class.do-not-click]=\"state.uploading\">\n <mat-icon>file_upload</mat-icon>\n </button>\n <span *ngIf=\"uploadedFiles.length === 0\" (click)=\"chooseFile()\" fxFlex\n [ngClass]=\"{'no-cursor': formControl.disabled}\" class=\"input-placeholder input-name-ellipsis\">{{constructDisplayName()}}</span>\n <div *ngIf=\"uploadedFiles.length !== 0\" class=\"input-name-ellipsis\" fxFlex>\n <div *ngFor=\"let name of uploadedFiles\" fxLayoutAlign=\"start center\">\n <span (click)=\"download(name)\" fxFlex [matTooltip]=\"'dataField.file.clickToDownload' | translate : {fileName: name}\"\n class=\"input-name-ellipsis file-list-item\">{{name}}</span>\n <button (click)=\"deleteFile(name)\" [matTooltip]=\"'dataField.file.clickToDelete' | translate\" mat-icon-button\n *ngIf=\"!formControl.disabled\">\n <mat-icon color=\"warn\">close</mat-icon>\n </button>\n </div>\n </div>\n </div>\n <mat-progress-bar *ngIf=\"state.uploading || state.downloading\" color=\"primary\" [value]=\"state.progress\"\n [mode]=\"state.uploading ? 'determinate' : 'indeterminate'\"\n class=\"margin-bottom-default\"></mat-progress-bar>\n <input type=\"file\" #fileUploadInput name=\"fileUpload\" [multiple]=\"true\"\n accept=\"{{dataField.allowTypes}}\" class=\"invisible-input\"/>\n <input type=\"text\" [formControl]=\"formControl\" class=\"invisible-input\">\n <mat-hint class=\"file-hint-error\" *ngIf=\"!dataField.isInvalid(formControl)\">{{dataField.description}}</mat-hint>\n <mat-error class=\"file-hint-error\" *ngIf=\"dataField.isInvalid(formControl)\">{{'dataField.validations.required' | translate}}</mat-error>\n </div>\n</ng-template>\n", styles: ["@import\"quill/dist/quill.snow.css\";@import\"quill/dist/quill.bubble.css\";@import\"quill/dist/quill.core.css\";.mat-calendar-arrow{border:none!important;width:10px!important;height:5px!important}ngx-mat-calendar-header .mat-calendar-arrow{border-left:5px solid transparent!important;border-right:5px solid transparent!important;border-top-width:5px!important;border-top-style:solid!important;width:0!important;height:0!important}ngx-mat-calendar .mat-calendar-body-cell{position:relative!important}mat-calendar .mat-calendar-arrow{width:0;height:0}mat-calendar .mat-calendar-body-cell{position:absolute!important;height:100%}ngx-mat-datetime-content .mat-calendar-arrow{width:0}.invisible-input{display:none}.margin-bottom-default{margin-bottom:8px}.progress-bar-size{height:8px}.margin-bottom-half{margin-bottom:4px}.do-not-click:hover{cursor:not-allowed}.file-button{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.input-name-ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.input-placeholder{color:#0000006b}.button-icon-input{padding:2px!important}.full-width{width:100%;min-width:100%}.input-margin{margin-top:2px!important}.form-input{background:transparent;color:#333;outline:none;border:1px solid rgba(0,0,0,.12);text-align:left;font-size:14px;line-height:20px;border-radius:6px;min-width:5px;padding:10px 15px;box-sizing:border-box;min-height:48px}.form-input:hover{border-color:#000;border-width:2px}.file-hint-error{padding:0 1em;font-size:75%}.no-cursor{cursor:default!important}.form-input-disabled:hover{border-color:#0000001f!important;border-width:1px;padding:2px!important}\n"] }]
27
- }], ctorParameters: function () { return [{ type: i1.TaskResourceService }, { type: i1.LoggerService }, { type: i1.SnackBarService }, { type: i2.TranslateService }, { type: i1.EventService }, { type: undefined, decorators: [{
28
- type: Optional
29
- }, {
30
- type: Inject,
31
- args: [NAE_INFORM_ABOUT_INVALID_DATA]
32
- }] }]; } });
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1saXN0LWZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25ldGdyaWYtY29tcG9uZW50cy9zcmMvbGliL2RhdGEtZmllbGRzL2ZpbGUtZmllbGQtbGlzdC9maWxlLWxpc3QtZmllbGQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmV0Z3JpZi1jb21wb25lbnRzL3NyYy9saWIvZGF0YS1maWVsZHMvZmlsZS1maWVsZC1saXN0L2ZpbGUtbGlzdC1maWVsZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFMUQsT0FBTyxFQUNILDhCQUE4QixFQUU5Qiw2QkFBNkIsRUFHaEMsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7O0FBT2xDLE1BQU0sT0FBTyxzQkFBdUIsU0FBUSw4QkFBOEI7SUFFdEUsWUFBWSxtQkFBd0MsRUFDeEMsR0FBa0IsRUFDbEIsUUFBeUIsRUFDekIsU0FBMkIsRUFDM0IsWUFBMEIsRUFDeUIsc0JBQXNDO1FBQ2pHLEtBQUssQ0FBQyxtQkFBbUIsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsc0JBQXNCLENBQUMsQ0FBQztJQUMvRixDQUFDOztvSEFUUSxzQkFBc0IsNktBT0MsNkJBQTZCO3dHQVBwRCxzQkFBc0IsaUZDZm5DLDg5RkEwQ0E7NEZEM0JhLHNCQUFzQjtrQkFMbEMsU0FBUzsrQkFDSSxvQkFBb0I7OzBCQVdqQixRQUFROzswQkFBSSxNQUFNOzJCQUFDLDZCQUE2QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbmplY3QsIE9wdGlvbmFsfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VHJhbnNsYXRlU2VydmljZX0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQge1xuICAgIEFic3RyYWN0RmlsZUxpc3RGaWVsZENvbXBvbmVudCwgRXZlbnRTZXJ2aWNlLFxuICAgIExvZ2dlclNlcnZpY2UsXG4gICAgTkFFX0lORk9STV9BQk9VVF9JTlZBTElEX0RBVEEsXG4gICAgU25hY2tCYXJTZXJ2aWNlLFxuICAgIFRhc2tSZXNvdXJjZVNlcnZpY2Vcbn0gZnJvbSAnQG5ldGdyaWYvY29tcG9uZW50cy1jb3JlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduYy1maWxlLWxpc3QtZmllbGQnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9maWxlLWxpc3QtZmllbGQuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2ZpbGUtbGlzdC1maWVsZC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEZpbGVMaXN0RmllbGRDb21wb25lbnQgZXh0ZW5kcyBBYnN0cmFjdEZpbGVMaXN0RmllbGRDb21wb25lbnQge1xuXG4gICAgY29uc3RydWN0b3IodGFza1Jlc291cmNlU2VydmljZTogVGFza1Jlc291cmNlU2VydmljZSxcbiAgICAgICAgICAgICAgICBsb2c6IExvZ2dlclNlcnZpY2UsXG4gICAgICAgICAgICAgICAgc25hY2tiYXI6IFNuYWNrQmFyU2VydmljZSxcbiAgICAgICAgICAgICAgICB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgZXZlbnRTZXJ2aWNlOiBFdmVudFNlcnZpY2UsXG4gICAgICAgICAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChOQUVfSU5GT1JNX0FCT1VUX0lOVkFMSURfREFUQSkgaW5mb3JtQWJvdXRJbnZhbGlkRGF0YTogYm9vbGVhbiB8IG51bGwpIHtcbiAgICAgICAgc3VwZXIodGFza1Jlc291cmNlU2VydmljZSwgbG9nLCBzbmFja2JhciwgdHJhbnNsYXRlLCBldmVudFNlcnZpY2UsIGluZm9ybUFib3V0SW52YWxpZERhdGEpO1xuICAgIH1cbn1cbiIsIjxuYy1kYXRhLWZpZWxkLXRlbXBsYXRlICpuZ0lmPVwiIWRhdGFGaWVsZC5iZWhhdmlvci5oaWRkZW5cIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2RhdGFGaWVsZF09XCJkYXRhRmllbGRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2RhdGFGaWVsZFRlbXBsYXRlXT1cImRhdGFGaWVsZFRlbXBsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtvZmZzZXRdPVwidGFza09mZnNldFwiPlxuPC9uYy1kYXRhLWZpZWxkLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2RhdGFGaWVsZFRlbXBsYXRlIGxldC1zaG93TGFyZ2VMYXlvdXQ9XCJzaG93TGFyZ2VMYXlvdXRcIj5cbiAgICA8ZGl2PlxuICAgICAgICA8bWF0LWxhYmVsICpuZ0lmPVwiIXNob3dMYXJnZUxheW91dC52YWx1ZVwiIGNsYXNzPVwibmV0Z3JpZi1sYWJlbFwiPlxuICAgICAgICAgICAge3tkYXRhRmllbGQudGl0bGV9fVxuICAgICAgICAgICAgPG5jLXJlcXVpcmVkLWxhYmVsICpuZ0lmPVwiZGF0YUZpZWxkLmJlaGF2aW9yLnJlcXVpcmVkXCIgW2lzSW5dPVwiIWRhdGFGaWVsZC5kaXNhYmxlZFwiPjwvbmMtcmVxdWlyZWQtbGFiZWw+XG4gICAgICAgICAgICA8YnI+XG4gICAgICAgIDwvbWF0LWxhYmVsPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1pbnB1dCBidXR0b24taWNvbi1pbnB1dCBmdWxsLXdpZHRoIGlucHV0LW1hcmdpblwiIGZ4TGF5b3V0PVwicm93XCIgZnhMYXlvdXRBbGlnbj1cInN0YXJ0IGNlbnRlclwiIFtuZ0NsYXNzXT1cInsnZm9ybS1pbnB1dC1kaXNhYmxlZCc6IGZvcm1Db250cm9sLmRpc2FibGVkLCAnZm9ybS1pbnB1dC1lcnJvcic6IGRhdGFGaWVsZC5pc0ludmFsaWQoZm9ybUNvbnRyb2wpfVwiPlxuICAgICAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gY29sb3I9XCJhY2NlbnRcIiAoY2xpY2spPVwiY2hvb3NlRmlsZSgpXCJcbiAgICAgICAgICAgICAgICAgICAgW21hdFRvb2x0aXBdPVwiJ2RhdGFGaWVsZC5maWxlLmNsaWNrVG9VcGxvYWQnIHwgdHJhbnNsYXRlXCIgKm5nSWY9XCIhZm9ybUNvbnRyb2wuZGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3MuZG8tbm90LWNsaWNrXT1cInN0YXRlLnVwbG9hZGluZ1wiPlxuICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5maWxlX3VwbG9hZDwvbWF0LWljb24+XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwidXBsb2FkZWRGaWxlcy5sZW5ndGggPT09IDBcIiAoY2xpY2spPVwiY2hvb3NlRmlsZSgpXCIgZnhGbGV4XG4gICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J25vLWN1cnNvcic6IGZvcm1Db250cm9sLmRpc2FibGVkfVwiIGNsYXNzPVwiaW5wdXQtcGxhY2Vob2xkZXIgaW5wdXQtbmFtZS1lbGxpcHNpc1wiPnt7Y29uc3RydWN0RGlzcGxheU5hbWUoKX19PC9zcGFuPlxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cInVwbG9hZGVkRmlsZXMubGVuZ3RoICE9PSAwXCIgY2xhc3M9XCJpbnB1dC1uYW1lLWVsbGlwc2lzXCIgZnhGbGV4PlxuICAgICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IG5hbWUgb2YgdXBsb2FkZWRGaWxlc1wiIGZ4TGF5b3V0QWxpZ249XCJzdGFydCBjZW50ZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gKGNsaWNrKT1cImRvd25sb2FkKG5hbWUpXCIgZnhGbGV4IFttYXRUb29sdGlwXT1cIidkYXRhRmllbGQuZmlsZS5jbGlja1RvRG93bmxvYWQnIHwgdHJhbnNsYXRlIDoge2ZpbGVOYW1lOiBuYW1lfVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiaW5wdXQtbmFtZS1lbGxpcHNpcyBmaWxlLWxpc3QtaXRlbVwiPnt7bmFtZX19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIChjbGljayk9XCJkZWxldGVGaWxlKG5hbWUpXCIgW21hdFRvb2x0aXBdPVwiJ2RhdGFGaWVsZC5maWxlLmNsaWNrVG9EZWxldGUnIHwgdHJhbnNsYXRlXCIgbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCIhZm9ybUNvbnRyb2wuZGlzYWJsZWRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbiBjb2xvcj1cIndhcm5cIj5jbG9zZTwvbWF0LWljb24+XG4gICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8bWF0LXByb2dyZXNzLWJhciAqbmdJZj1cInN0YXRlLnVwbG9hZGluZyB8fCBzdGF0ZS5kb3dubG9hZGluZ1wiIGNvbG9yPVwicHJpbWFyeVwiIFt2YWx1ZV09XCJzdGF0ZS5wcm9ncmVzc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFttb2RlXT1cInN0YXRlLnVwbG9hZGluZyA/ICdkZXRlcm1pbmF0ZScgOiAnaW5kZXRlcm1pbmF0ZSdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm1hcmdpbi1ib3R0b20tZGVmYXVsdFwiPjwvbWF0LXByb2dyZXNzLWJhcj5cbiAgICAgICAgPGlucHV0IHR5cGU9XCJmaWxlXCIgI2ZpbGVVcGxvYWRJbnB1dCBuYW1lPVwiZmlsZVVwbG9hZFwiIFttdWx0aXBsZV09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgIGFjY2VwdD1cInt7ZGF0YUZpZWxkLmFsbG93VHlwZXN9fVwiIGNsYXNzPVwiaW52aXNpYmxlLWlucHV0XCIvPlxuICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBbZm9ybUNvbnRyb2xdPVwiZm9ybUNvbnRyb2xcIiBjbGFzcz1cImludmlzaWJsZS1pbnB1dFwiPlxuICAgICAgICA8bWF0LWhpbnQgY2xhc3M9XCJmaWxlLWhpbnQtZXJyb3JcIiAqbmdJZj1cIiFkYXRhRmllbGQuaXNJbnZhbGlkKGZvcm1Db250cm9sKVwiPnt7ZGF0YUZpZWxkLmRlc2NyaXB0aW9ufX08L21hdC1oaW50PlxuICAgICAgICA8bWF0LWVycm9yIGNsYXNzPVwiZmlsZS1oaW50LWVycm9yXCIgKm5nSWY9XCJkYXRhRmllbGQuaXNJbnZhbGlkKGZvcm1Db250cm9sKVwiPnt7J2RhdGFGaWVsZC52YWxpZGF0aW9ucy5yZXF1aXJlZCcgfCB0cmFuc2xhdGV9fTwvbWF0LWVycm9yPlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==