@kms-ngx-ui/presentational 18.0.2 → 18.0.3

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 (42) hide show
  1. package/esm2022/assets/icons.json +1 -1
  2. package/esm2022/lib/enums/colors.enum.mjs +35 -0
  3. package/esm2022/lib/enums/iconSize.enum.mjs +23 -0
  4. package/esm2022/lib/models/index.mjs +1 -2
  5. package/esm2022/lib/ui/back-to-top/back-to-top.component.mjs +10 -5
  6. package/esm2022/lib/ui/color-input/color-input.component.mjs +1 -1
  7. package/esm2022/lib/ui/file-input/file-input.component.mjs +8 -8
  8. package/esm2022/lib/ui/flyout/flyout.component.mjs +2 -2
  9. package/esm2022/lib/ui/icon/icon.component.mjs +17 -29
  10. package/esm2022/lib/ui/image-slider/image-slider.component.mjs +1 -1
  11. package/esm2022/lib/ui/kms-accordion-item/kms-accordion-item.component.mjs +5 -4
  12. package/esm2022/lib/ui/password/password.component.mjs +4 -4
  13. package/esm2022/lib/ui/time-input/time-input.component.mjs +9 -8
  14. package/esm2022/lib/ui/tooltip-icon/tooltip-icon.component.mjs +10 -22
  15. package/esm2022/public-api.mjs +3 -2
  16. package/fesm2022/kms-ngx-ui-presentational.mjs +90 -101
  17. package/fesm2022/kms-ngx-ui-presentational.mjs.map +1 -1
  18. package/lib/enums/colors.enum.d.ts +23 -0
  19. package/lib/enums/iconSize.enum.d.ts +13 -0
  20. package/lib/models/index.d.ts +0 -1
  21. package/lib/ui/back-to-top/back-to-top.component.d.ts +4 -0
  22. package/lib/ui/file-input/file-input.component.d.ts +2 -2
  23. package/lib/ui/icon/icon.component.d.ts +10 -21
  24. package/lib/ui/kms-accordion-item/kms-accordion-item.component.d.ts +1 -1
  25. package/lib/ui/password/password.component.d.ts +1 -1
  26. package/lib/ui/time-input/time-input.component.d.ts +2 -2
  27. package/lib/ui/tooltip-icon/tooltip-icon.component.d.ts +8 -9
  28. package/package.json +1 -1
  29. package/public-api.d.ts +2 -1
  30. package/src/assets/icons.json +1 -1
  31. package/src/assets/sprite.svg +1 -1
  32. package/src/lib/ui/back-to-top/back-to-top.component.scss +8 -3
  33. package/src/lib/ui/card/card.component.scss +4 -4
  34. package/src/lib/ui/icon/icon.component.scss +30 -92
  35. package/src/lib/ui/kms-accordion-item/kms-accordion-item.component.scss +28 -60
  36. package/src/lib/ui/password/password.component.scss +0 -7
  37. package/src/lib/ui/slide-toggle/slide-toggle.component.scss +1 -1
  38. package/src/lib/ui/tooltip-icon/tooltip-icon.component.scss +5 -1
  39. package/esm2022/lib/models/iconSize.enum.mjs +0 -17
  40. package/esm2022/lib/ui/icon/iconSize.enum.mjs +0 -29
  41. package/lib/models/iconSize.enum.d.ts +0 -15
  42. package/lib/ui/icon/iconSize.enum.d.ts +0 -26
@@ -1 +1 @@
1
- ["alert-outline", "arrow-down", "arrow-left", "arrow-right-left", "arrow-right", "arrow-top", "arrows-left", "calendar", "camera", "cardealer", "checkbox_active", "checkbox_inactive", "checkbox_inner", "checkmark-circle", "checkmark-filled", "chevron-down", "chevron-left", "chevron-right", "chevron-top", "circle", "clock", "close-circle", "close", "cog", "collapse-right", "create", "credit", "diamond", "download", "drag1", "edit-circle", "efficiency", "electro-cable", "ellipse", "end", "export-all", "facebook", "file-download", "file-upload", "floating_button", "floating_button_clear", "ic-invoice", "ic-policy", "ic_GEZ", "ic_abbrechen-filled", "ic_abbrechen", "ic_back", "ic_bereifung", "ic_bezeichnung", "ic_booking", "ic_cancel_form", "ic_car", "ic_check", "ic_check_form", "ic_co2", "ic_credit-card", "ic_edit", "ic_equipment", "ic_eye", "ic_eye_active", "ic_filter", "ic_form_error", "ic_form_finished", "ic_gkm", "ic_heart", "ic_heart_filled", "ic_historie", "ic_home", "ic_home_new", "ic_inclusivekm", "ic_info", "ic_kraftstoff", "ic_language", "ic_last", "ic_laufleistung", "ic_left", "ic_lkm-dark", "ic_lkm-gray", "ic_lkm-red", "ic_lkm", "ic_lock", "ic_menu", "ic_minus", "ic_new-car", "ic_pickup", "ic_pin", "ic_plus-circle", "ic_plus", "ic_radiobutton_active", "ic_radiobutton_inactive", "ic_redirect", "ic_return", "ic_schaltung", "ic_settings", "ic_shops", "ic_side_front", "ic_side_front_left", "ic_side_front_left_tire", "ic_side_front_right", "ic_side_front_right_tire", "ic_side_front_zoomed", "ic_side_rear", "ic_side_rear_left", "ic_side_rear_left_tire", "ic_side_rear_right", "ic_side_rear_right_tire", "ic_slider", "ic_spezification", "ic_steuer_versicherung", "ic_tool", "ic_tooltip_drag", "ic_used-car", "ic_vertrag", "ic_wartung_verschleiss", "ic_zulassung", "image", "instagram", "kms-logo-white", "kms-logo", "linkedin", "mail", "map", "mileage", "move-list-left", "move-list-right", "palette", "pdf", "polestar", "position", "price-tag", "profile-filled", "profile", "profile2", "question-circle", "question-filled", "question", "rent", "search", "security", "special_entry", "star-outline", "star", "start", "submenu-dots", "subscription", "support", "trash", "tumblr", "twitter", "tyre", "upload", "user-circle", "users", "water", "whatsapp", "width", "xing", "youtube", "zahlung_active", "zahlungsanforderung"]
1
+ ["alert-outline", "arrow-down", "arrow-left", "arrow-right-left", "arrow-right", "arrow-top", "arrows-left", "calendar", "camera", "cardealer", "checkbox_active", "checkbox_inactive", "checkbox_inner", "checkmark-circle", "checkmark-filled", "chevron-down", "chevron-left", "chevron-right", "chevron-top", "circle", "clock", "close-circle", "close", "cog", "collapse-right", "create", "credit", "diamond", "download", "drag1", "edit-circle", "efficiency", "electro-cable", "ellipse", "end", "export-all", "facebook", "file-download", "file-upload", "floating_button", "floating_button_clear", "ic-invoice", "ic-policy", "ic_GEZ", "ic_abbrechen-filled", "ic_abbrechen", "ic_back", "ic_bereifung", "ic_bezeichnung", "ic_booking", "ic_cancel_form", "ic_car", "ic_check", "ic_check_form", "ic_co2", "ic_credit-card", "ic_edit", "ic_equipment", "ic_eye", "ic_eye_active", "ic_filter", "ic_form_error", "ic_form_finished", "ic_gkm", "ic_heart", "ic_heart_filled", "ic_historie", "ic_home", "ic_home_new", "ic_inclusivekm", "ic_info", "ic_kraftstoff", "ic_language", "ic_last", "ic_laufleistung", "ic_left", "ic_lkm", "ic_lock", "ic_menu", "ic_minus", "ic_new-car", "ic_pickup", "ic_pin", "ic_plus-circle", "ic_plus", "ic_radiobutton_active", "ic_radiobutton_inactive", "ic_redirect", "ic_return", "ic_schaltung", "ic_settings", "ic_shops", "ic_side_front", "ic_side_front_left", "ic_side_front_left_tire", "ic_side_front_right", "ic_side_front_right_tire", "ic_side_front_zoomed", "ic_side_rear", "ic_side_rear_left", "ic_side_rear_left_tire", "ic_side_rear_right", "ic_side_rear_right_tire", "ic_slider", "ic_spezification", "ic_steuer_versicherung", "ic_tool", "ic_tooltip_drag", "ic_used-car", "ic_vertrag", "ic_wartung_verschleiss", "ic_zulassung", "image", "instagram", "kms-logo-white", "kms-logo", "linkedin", "mail", "map", "mileage", "move-list-left", "move-list-right", "palette", "pdf", "polestar", "position", "price-tag", "profile-filled", "profile", "profile2", "question-circle", "question-filled", "question", "rent", "search", "security", "special_entry", "star-outline", "star", "start", "submenu-dots", "subscription", "support", "trash", "tumblr", "twitter", "tyre", "upload", "user-circle", "users", "water", "whatsapp", "width", "xing", "youtube", "zahlung_active", "zahlungsanforderung"]
@@ -0,0 +1,35 @@
1
+ export var Color;
2
+ (function (Color) {
3
+ Color["PRIMARY"] = "--kms-primary";
4
+ Color["SECONDARY"] = "--kms-secondary";
5
+ Color["TERTIARY"] = "--kms-tertiary";
6
+ Color["SUCCESS"] = "--kms-success";
7
+ Color["ALERT"] = "--kms-alert";
8
+ Color["ERROR"] = "--kms-error";
9
+ Color["DISABLED"] = "--kms-disabled";
10
+ Color["WHITE"] = "--kms-white";
11
+ Color["BLACK"] = "--kms-black";
12
+ })(Color || (Color = {}));
13
+ export const ColorsArr = [
14
+ Color.PRIMARY,
15
+ Color.SECONDARY,
16
+ Color.TERTIARY,
17
+ Color.SUCCESS,
18
+ Color.ALERT,
19
+ Color.ERROR,
20
+ Color.DISABLED,
21
+ Color.WHITE,
22
+ Color.BLACK,
23
+ ];
24
+ export const ColorsLabelsArr = {
25
+ [Color.PRIMARY]: 'PRIMARY',
26
+ [Color.SECONDARY]: 'SECONDARY',
27
+ [Color.TERTIARY]: 'TERTIARY',
28
+ [Color.SUCCESS]: 'SUCCESS',
29
+ [Color.ALERT]: 'ALERT',
30
+ [Color.ERROR]: 'ERROR',
31
+ [Color.DISABLED]: 'DISABLED',
32
+ [Color.WHITE]: 'WHITE',
33
+ [Color.BLACK]: 'BLACK',
34
+ };
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3JzLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rbXMtbmd4LXVpLXByZXNlbnRhdGlvbmFsL3NyYy9saWIvZW51bXMvY29sb3JzLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksS0FVWDtBQVZELFdBQVksS0FBSztJQUNmLGtDQUF5QixDQUFBO0lBQ3pCLHNDQUE2QixDQUFBO0lBQzdCLG9DQUEyQixDQUFBO0lBQzNCLGtDQUF5QixDQUFBO0lBQ3pCLDhCQUFxQixDQUFBO0lBQ3JCLDhCQUFxQixDQUFBO0lBQ3JCLG9DQUEyQixDQUFBO0lBQzNCLDhCQUFxQixDQUFBO0lBQ3JCLDhCQUFxQixDQUFBO0FBQ3ZCLENBQUMsRUFWVyxLQUFLLEtBQUwsS0FBSyxRQVVoQjtBQUVELE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRztJQUN2QixLQUFLLENBQUMsT0FBTztJQUNiLEtBQUssQ0FBQyxTQUFTO0lBQ2YsS0FBSyxDQUFDLFFBQVE7SUFDZCxLQUFLLENBQUMsT0FBTztJQUNiLEtBQUssQ0FBQyxLQUFLO0lBQ1gsS0FBSyxDQUFDLEtBQUs7SUFDWCxLQUFLLENBQUMsUUFBUTtJQUNkLEtBQUssQ0FBQyxLQUFLO0lBQ1gsS0FBSyxDQUFDLEtBQUs7Q0FDWixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHO0lBQzdCLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxFQUFFLFNBQVM7SUFDMUIsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLEVBQUUsV0FBVztJQUM5QixDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsRUFBRSxVQUFVO0lBQzVCLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxFQUFFLFNBQVM7SUFDMUIsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUUsT0FBTztJQUN0QixDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRSxPQUFPO0lBQ3RCLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxFQUFFLFVBQVU7SUFDNUIsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUUsT0FBTztJQUN0QixDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRSxPQUFPO0NBQ3ZCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBDb2xvciB7XG4gIFBSSU1BUlkgPSAnLS1rbXMtcHJpbWFyeScsXG4gIFNFQ09OREFSWSA9ICctLWttcy1zZWNvbmRhcnknLFxuICBURVJUSUFSWSA9ICctLWttcy10ZXJ0aWFyeScsXG4gIFNVQ0NFU1MgPSAnLS1rbXMtc3VjY2VzcycsXG4gIEFMRVJUID0gJy0ta21zLWFsZXJ0JyxcbiAgRVJST1IgPSAnLS1rbXMtZXJyb3InLFxuICBESVNBQkxFRCA9ICctLWttcy1kaXNhYmxlZCcsXG4gIFdISVRFID0gJy0ta21zLXdoaXRlJyxcbiAgQkxBQ0sgPSAnLS1rbXMtYmxhY2snLFxufVxuXG5leHBvcnQgY29uc3QgQ29sb3JzQXJyID0gW1xuICBDb2xvci5QUklNQVJZLFxuICBDb2xvci5TRUNPTkRBUlksXG4gIENvbG9yLlRFUlRJQVJZLFxuICBDb2xvci5TVUNDRVNTLFxuICBDb2xvci5BTEVSVCxcbiAgQ29sb3IuRVJST1IsXG4gIENvbG9yLkRJU0FCTEVELFxuICBDb2xvci5XSElURSxcbiAgQ29sb3IuQkxBQ0ssXG5dO1xuXG5leHBvcnQgY29uc3QgQ29sb3JzTGFiZWxzQXJyID0ge1xuICBbQ29sb3IuUFJJTUFSWV06ICdQUklNQVJZJyxcbiAgW0NvbG9yLlNFQ09OREFSWV06ICdTRUNPTkRBUlknLFxuICBbQ29sb3IuVEVSVElBUlldOiAnVEVSVElBUlknLFxuICBbQ29sb3IuU1VDQ0VTU106ICdTVUNDRVNTJyxcbiAgW0NvbG9yLkFMRVJUXTogJ0FMRVJUJyxcbiAgW0NvbG9yLkVSUk9SXTogJ0VSUk9SJyxcbiAgW0NvbG9yLkRJU0FCTEVEXTogJ0RJU0FCTEVEJyxcbiAgW0NvbG9yLldISVRFXTogJ1dISVRFJyxcbiAgW0NvbG9yLkJMQUNLXTogJ0JMQUNLJyxcbn07XG4iXX0=
@@ -0,0 +1,23 @@
1
+ /**
2
+ * @copyright KMS GmbH
3
+ */
4
+ export var IconSizePx;
5
+ (function (IconSizePx) {
6
+ IconSizePx[IconSizePx["XXS"] = 16] = "XXS";
7
+ IconSizePx[IconSizePx["XS"] = 20] = "XS";
8
+ IconSizePx[IconSizePx["SM"] = 32] = "SM";
9
+ IconSizePx[IconSizePx["MD"] = 64] = "MD";
10
+ IconSizePx[IconSizePx["LG"] = 128] = "LG";
11
+ IconSizePx[IconSizePx["XL"] = 256] = "XL";
12
+ IconSizePx[IconSizePx["XXL"] = 512] = "XXL";
13
+ })(IconSizePx || (IconSizePx = {}));
14
+ export const IconSizesArr = [
15
+ IconSizePx.XXS,
16
+ IconSizePx.XS,
17
+ IconSizePx.SM,
18
+ IconSizePx.MD,
19
+ IconSizePx.LG,
20
+ IconSizePx.XL,
21
+ IconSizePx.XXL,
22
+ ];
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvblNpemUuZW51bS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2xpYi9lbnVtcy9pY29uU2l6ZS5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsTUFBTSxDQUFOLElBQVksVUFRWDtBQVJELFdBQVksVUFBVTtJQUNwQiwwQ0FBUSxDQUFBO0lBQ1Isd0NBQU8sQ0FBQTtJQUNQLHdDQUFPLENBQUE7SUFDUCx3Q0FBTyxDQUFBO0lBQ1AseUNBQVEsQ0FBQTtJQUNSLHlDQUFRLENBQUE7SUFDUiwyQ0FBUyxDQUFBO0FBQ1gsQ0FBQyxFQVJXLFVBQVUsS0FBVixVQUFVLFFBUXJCO0FBRUQsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHO0lBQzFCLFVBQVUsQ0FBQyxHQUFHO0lBQ2QsVUFBVSxDQUFDLEVBQUU7SUFDYixVQUFVLENBQUMsRUFBRTtJQUNiLFVBQVUsQ0FBQyxFQUFFO0lBQ2IsVUFBVSxDQUFDLEVBQUU7SUFDYixVQUFVLENBQUMsRUFBRTtJQUNiLFVBQVUsQ0FBQyxHQUFHO0NBQ2YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGNvcHlyaWdodCBLTVMgR21iSFxuICovXG5cbmV4cG9ydCBlbnVtIEljb25TaXplUHgge1xuICBYWFMgPSAxNixcbiAgWFMgPSAyMCxcbiAgU00gPSAzMixcbiAgTUQgPSA2NCxcbiAgTEcgPSAxMjgsXG4gIFhMID0gMjU2LFxuICBYWEwgPSA1MTIsXG59XG5cbmV4cG9ydCBjb25zdCBJY29uU2l6ZXNBcnIgPSBbXG4gIEljb25TaXplUHguWFhTLFxuICBJY29uU2l6ZVB4LlhTLFxuICBJY29uU2l6ZVB4LlNNLFxuICBJY29uU2l6ZVB4Lk1ELFxuICBJY29uU2l6ZVB4LkxHLFxuICBJY29uU2l6ZVB4LlhMLFxuICBJY29uU2l6ZVB4LlhYTCxcbl07XG4iXX0=
@@ -1,6 +1,5 @@
1
- export * from './iconSize.enum';
2
1
  export * from './image-snippet.model';
3
2
  export * from './is-value.function';
4
3
  export * from './types/attached-file-dto.model';
5
4
  export * from './types/nullable.type';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rbXMtbmd4LXVpLXByZXNlbnRhdGlvbmFsL3NyYy9saWIvbW9kZWxzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyx1QkFBdUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vaWNvblNpemUuZW51bSc7XG5leHBvcnQgKiBmcm9tICcuL2ltYWdlLXNuaXBwZXQubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9pcy12YWx1ZS5mdW5jdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL3R5cGVzL2F0dGFjaGVkLWZpbGUtZHRvLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMvbnVsbGFibGUudHlwZSc7XG4iXX0=
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rbXMtbmd4LXVpLXByZXNlbnRhdGlvbmFsL3NyYy9saWIvbW9kZWxzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2ltYWdlLXNuaXBwZXQubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9pcy12YWx1ZS5mdW5jdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL3R5cGVzL2F0dGFjaGVkLWZpbGUtZHRvLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMvbnVsbGFibGUudHlwZSc7XG4iXX0=
@@ -1,14 +1,19 @@
1
1
  /**
2
2
  * @copyright KMS GmbH
3
3
  */
4
- import { Component, HostListener, Inject, PLATFORM_ID } from '@angular/core';
5
4
  import { isPlatformBrowser } from '@angular/common';
5
+ import { Component, HostListener, Inject, PLATFORM_ID } from '@angular/core';
6
+ import { Color } from '../../enums/colors.enum';
7
+ import { IconSizePx } from '../../enums/iconSize.enum';
6
8
  import * as i0 from "@angular/core";
7
9
  import * as i1 from "@angular/common";
8
- import * as i2 from "../icon/icon.component";
10
+ import * as i2 from "../../directives/size.directive";
11
+ import * as i3 from "../icon/icon.component";
9
12
  export class BackToTopComponent {
10
13
  constructor(platformId) {
11
14
  this.platformId = platformId;
15
+ this.IconSizePx = IconSizePx;
16
+ this.Color = Color;
12
17
  }
13
18
  onWindowScroll() {
14
19
  if (isPlatformBrowser(this.platformId)) {
@@ -36,11 +41,11 @@ export class BackToTopComponent {
36
41
  }
37
42
  }
38
43
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BackToTopComponent, deps: [{ token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Component }); }
39
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: BackToTopComponent, selector: "kms-back-to-top", host: { listeners: { "window:scroll": "onWindowScroll()" } }, ngImport: i0, template: "<div\n class=\"scrollToTop\"\n [ngClass]=\"{ show: windowScrolled }\"\n (click)=\"scrollToTop()\"\n>\n <div class=\"scrollToTop-inner\">\n <kms-icon icon=\"floating_button_clear\" iconClass=\"color-white\"></kms-icon>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "iconStyle", "iconSize", "size", "dontUseSprite"] }] }); }
44
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: BackToTopComponent, selector: "kms-back-to-top", host: { listeners: { "window:scroll": "onWindowScroll()" } }, ngImport: i0, template: "<div\n class=\"scrollToTop\"\n [ngClass]=\"{ show: windowScrolled }\"\n (click)=\"scrollToTop()\"\n>\n <div class=\"scrollToTop-inner\">\n <kms-icon\n icon=\"floating_button_clear\"\n [color]=\"Color.WHITE\"\n [size]=\"IconSizePx.SM\"\n ></kms-icon>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.SizeDirective, selector: "[size]", inputs: ["size"] }, { kind: "component", type: i3.IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "size", "dontUseSprite", "color"] }] }); }
40
45
  }
41
46
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BackToTopComponent, decorators: [{
42
47
  type: Component,
43
- args: [{ selector: 'kms-back-to-top', template: "<div\n class=\"scrollToTop\"\n [ngClass]=\"{ show: windowScrolled }\"\n (click)=\"scrollToTop()\"\n>\n <div class=\"scrollToTop-inner\">\n <kms-icon icon=\"floating_button_clear\" iconClass=\"color-white\"></kms-icon>\n </div>\n</div>\n" }]
48
+ args: [{ selector: 'kms-back-to-top', template: "<div\n class=\"scrollToTop\"\n [ngClass]=\"{ show: windowScrolled }\"\n (click)=\"scrollToTop()\"\n>\n <div class=\"scrollToTop-inner\">\n <kms-icon\n icon=\"floating_button_clear\"\n [color]=\"Color.WHITE\"\n [size]=\"IconSizePx.SM\"\n ></kms-icon>\n </div>\n</div>\n" }]
44
49
  }], ctorParameters: () => [{ type: Object, decorators: [{
45
50
  type: Inject,
46
51
  args: [PLATFORM_ID]
@@ -48,4 +53,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
48
53
  type: HostListener,
49
54
  args: ['window:scroll', []]
50
55
  }] } });
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFjay10by10b3AuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva21zLW5neC11aS1wcmVzZW50YXRpb25hbC9zcmMvbGliL3VpL2JhY2stdG8tdG9wL2JhY2stdG8tdG9wLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2xpYi91aS9iYWNrLXRvLXRvcC9iYWNrLXRvLXRvcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0UsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7QUFNcEQsTUFBTSxPQUFPLGtCQUFrQjtJQUc3QixZQUF3QyxVQUFrQjtRQUFsQixlQUFVLEdBQVYsVUFBVSxDQUFRO0lBQUcsQ0FBQztJQUc5RCxjQUFjO1FBQ1osSUFBSSxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztZQUN2QyxJQUNFLE1BQU0sQ0FBQyxPQUFPO2dCQUNkLFFBQVEsQ0FBQyxlQUFlLENBQUMsU0FBUztnQkFDbEMsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLEdBQUcsR0FBRyxFQUM3QixDQUFDO2dCQUNELElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDO1lBQzdCLENBQUM7aUJBQU0sSUFDTCxDQUFDLElBQUksQ0FBQyxjQUFjLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQztnQkFDdkMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxTQUFTO2dCQUNsQyxRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLEVBQzVCLENBQUM7Z0JBQ0QsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUM7WUFDOUIsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksaUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7WUFDdkMsQ0FBQyxTQUFTLFlBQVk7Z0JBQ3BCLE1BQU0sYUFBYSxHQUNqQixRQUFRLENBQUMsZUFBZSxDQUFDLFNBQVMsSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztnQkFDaEUsSUFBSSxhQUFhLEdBQUcsQ0FBQyxFQUFFLENBQUM7b0JBQ3RCLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxZQUFZLENBQUMsQ0FBQztvQkFDM0MsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsYUFBYSxHQUFHLGFBQWEsR0FBRyxDQUFDLENBQUMsQ0FBQztnQkFDeEQsQ0FBQztZQUNILENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDUCxDQUFDO0lBQ0gsQ0FBQzsrR0FuQ1Usa0JBQWtCLGtCQUdULFdBQVc7bUdBSHBCLGtCQUFrQixxSENYL0Isc1BBU0E7OzRGREVhLGtCQUFrQjtrQkFKOUIsU0FBUzsrQkFDRSxpQkFBaUI7OzBCQU1kLE1BQU07MkJBQUMsV0FBVzt5Q0FHL0IsY0FBYztzQkFEYixZQUFZO3VCQUFDLGVBQWUsRUFBRSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAY29weXJpZ2h0IEtNUyBHbWJIXG4gKi9cblxuaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0TGlzdGVuZXIsIEluamVjdCwgUExBVEZPUk1fSUQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAna21zLWJhY2stdG8tdG9wJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2JhY2stdG8tdG9wLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgQmFja1RvVG9wQ29tcG9uZW50IHtcbiAgd2luZG93U2Nyb2xsZWQ/OiBib29sZWFuO1xuXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoUExBVEZPUk1fSUQpIHB1YmxpYyBwbGF0Zm9ybUlkOiBPYmplY3QpIHt9XG5cbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OnNjcm9sbCcsIFtdKVxuICBvbldpbmRvd1Njcm9sbCgpIHtcbiAgICBpZiAoaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xuICAgICAgaWYgKFxuICAgICAgICB3aW5kb3cuc2Nyb2xsWSB8fFxuICAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2Nyb2xsVG9wIHx8XG4gICAgICAgIGRvY3VtZW50LmJvZHkuc2Nyb2xsVG9wID4gMTAwXG4gICAgICApIHtcbiAgICAgICAgdGhpcy53aW5kb3dTY3JvbGxlZCA9IHRydWU7XG4gICAgICB9IGVsc2UgaWYgKFxuICAgICAgICAodGhpcy53aW5kb3dTY3JvbGxlZCAmJiB3aW5kb3cuc2Nyb2xsWSkgfHxcbiAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbFRvcCB8fFxuICAgICAgICBkb2N1bWVudC5ib2R5LnNjcm9sbFRvcCA8IDEwXG4gICAgICApIHtcbiAgICAgICAgdGhpcy53aW5kb3dTY3JvbGxlZCA9IGZhbHNlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHNjcm9sbFRvVG9wKCkge1xuICAgIGlmIChpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpKSB7XG4gICAgICAoZnVuY3Rpb24gc21vb3Roc2Nyb2xsKCkge1xuICAgICAgICBjb25zdCBjdXJyZW50U2Nyb2xsID1cbiAgICAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2Nyb2xsVG9wIHx8IGRvY3VtZW50LmJvZHkuc2Nyb2xsVG9wO1xuICAgICAgICBpZiAoY3VycmVudFNjcm9sbCA+IDApIHtcbiAgICAgICAgICB3aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lKHNtb290aHNjcm9sbCk7XG4gICAgICAgICAgd2luZG93LnNjcm9sbFRvKDAsIGN1cnJlbnRTY3JvbGwgLSBjdXJyZW50U2Nyb2xsIC8gOCk7XG4gICAgICAgIH1cbiAgICAgIH0pKCk7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwic2Nyb2xsVG9Ub3BcIlxuICBbbmdDbGFzc109XCJ7IHNob3c6IHdpbmRvd1Njcm9sbGVkIH1cIlxuICAoY2xpY2spPVwic2Nyb2xsVG9Ub3AoKVwiXG4+XG4gIDxkaXYgY2xhc3M9XCJzY3JvbGxUb1RvcC1pbm5lclwiPlxuICAgIDxrbXMtaWNvbiBpY29uPVwiZmxvYXRpbmdfYnV0dG9uX2NsZWFyXCIgaWNvbkNsYXNzPVwiY29sb3Itd2hpdGVcIj48L2ttcy1pY29uPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFjay10by10b3AuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva21zLW5neC11aS1wcmVzZW50YXRpb25hbC9zcmMvbGliL3VpL2JhY2stdG8tdG9wL2JhY2stdG8tdG9wLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2xpYi91aS9iYWNrLXRvLXRvcC9iYWNrLXRvLXRvcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0UsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2hELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7QUFNdkQsTUFBTSxPQUFPLGtCQUFrQjtJQU03QixZQUF3QyxVQUFrQjtRQUFsQixlQUFVLEdBQVYsVUFBVSxDQUFRO1FBSDFELGVBQVUsR0FBRyxVQUFVLENBQUM7UUFDeEIsVUFBSyxHQUFHLEtBQUssQ0FBQztJQUUrQyxDQUFDO0lBRzlELGNBQWM7UUFDWixJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQ3ZDLElBQ0UsTUFBTSxDQUFDLE9BQU87Z0JBQ2QsUUFBUSxDQUFDLGVBQWUsQ0FBQyxTQUFTO2dCQUNsQyxRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLEVBQzdCLENBQUM7Z0JBQ0QsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7WUFDN0IsQ0FBQztpQkFBTSxJQUNMLENBQUMsSUFBSSxDQUFDLGNBQWMsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDO2dCQUN2QyxRQUFRLENBQUMsZUFBZSxDQUFDLFNBQVM7Z0JBQ2xDLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsRUFDNUIsQ0FBQztnQkFDRCxJQUFJLENBQUMsY0FBYyxHQUFHLEtBQUssQ0FBQztZQUM5QixDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztZQUN2QyxDQUFDLFNBQVMsWUFBWTtnQkFDcEIsTUFBTSxhQUFhLEdBQ2pCLFFBQVEsQ0FBQyxlQUFlLENBQUMsU0FBUyxJQUFJLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO2dCQUNoRSxJQUFJLGFBQWEsR0FBRyxDQUFDLEVBQUUsQ0FBQztvQkFDdEIsTUFBTSxDQUFDLHFCQUFxQixDQUFDLFlBQVksQ0FBQyxDQUFDO29CQUMzQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxhQUFhLEdBQUcsYUFBYSxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUN4RCxDQUFDO1lBQ0gsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUNQLENBQUM7SUFDSCxDQUFDOytHQXRDVSxrQkFBa0Isa0JBTVQsV0FBVzttR0FOcEIsa0JBQWtCLHFIQ2IvQix3U0FhQTs7NEZEQWEsa0JBQWtCO2tCQUo5QixTQUFTOytCQUNFLGlCQUFpQjs7MEJBU2QsTUFBTTsyQkFBQyxXQUFXO3lDQUcvQixjQUFjO3NCQURiLFlBQVk7dUJBQUMsZUFBZSxFQUFFLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBjb3B5cmlnaHQgS01TIEdtYkhcbiAqL1xuXG5pbXBvcnQgeyBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIEhvc3RMaXN0ZW5lciwgSW5qZWN0LCBQTEFURk9STV9JRCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29sb3IgfSBmcm9tICcuLi8uLi9lbnVtcy9jb2xvcnMuZW51bSc7XG5pbXBvcnQgeyBJY29uU2l6ZVB4IH0gZnJvbSAnLi4vLi4vZW51bXMvaWNvblNpemUuZW51bSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ttcy1iYWNrLXRvLXRvcCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9iYWNrLXRvLXRvcC5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIEJhY2tUb1RvcENvbXBvbmVudCB7XG4gIHdpbmRvd1Njcm9sbGVkPzogYm9vbGVhbjtcblxuICBJY29uU2l6ZVB4ID0gSWNvblNpemVQeDtcbiAgQ29sb3IgPSBDb2xvcjtcblxuICBjb25zdHJ1Y3RvcihASW5qZWN0KFBMQVRGT1JNX0lEKSBwdWJsaWMgcGxhdGZvcm1JZDogT2JqZWN0KSB7fVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpzY3JvbGwnLCBbXSlcbiAgb25XaW5kb3dTY3JvbGwoKSB7XG4gICAgaWYgKGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHtcbiAgICAgIGlmIChcbiAgICAgICAgd2luZG93LnNjcm9sbFkgfHxcbiAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbFRvcCB8fFxuICAgICAgICBkb2N1bWVudC5ib2R5LnNjcm9sbFRvcCA+IDEwMFxuICAgICAgKSB7XG4gICAgICAgIHRoaXMud2luZG93U2Nyb2xsZWQgPSB0cnVlO1xuICAgICAgfSBlbHNlIGlmIChcbiAgICAgICAgKHRoaXMud2luZG93U2Nyb2xsZWQgJiYgd2luZG93LnNjcm9sbFkpIHx8XG4gICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxUb3AgfHxcbiAgICAgICAgZG9jdW1lbnQuYm9keS5zY3JvbGxUb3AgPCAxMFxuICAgICAgKSB7XG4gICAgICAgIHRoaXMud2luZG93U2Nyb2xsZWQgPSBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBzY3JvbGxUb1RvcCgpIHtcbiAgICBpZiAoaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xuICAgICAgKGZ1bmN0aW9uIHNtb290aHNjcm9sbCgpIHtcbiAgICAgICAgY29uc3QgY3VycmVudFNjcm9sbCA9XG4gICAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbFRvcCB8fCBkb2N1bWVudC5ib2R5LnNjcm9sbFRvcDtcbiAgICAgICAgaWYgKGN1cnJlbnRTY3JvbGwgPiAwKSB7XG4gICAgICAgICAgd2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZShzbW9vdGhzY3JvbGwpO1xuICAgICAgICAgIHdpbmRvdy5zY3JvbGxUbygwLCBjdXJyZW50U2Nyb2xsIC0gY3VycmVudFNjcm9sbCAvIDgpO1xuICAgICAgICB9XG4gICAgICB9KSgpO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdlxuICBjbGFzcz1cInNjcm9sbFRvVG9wXCJcbiAgW25nQ2xhc3NdPVwieyBzaG93OiB3aW5kb3dTY3JvbGxlZCB9XCJcbiAgKGNsaWNrKT1cInNjcm9sbFRvVG9wKClcIlxuPlxuICA8ZGl2IGNsYXNzPVwic2Nyb2xsVG9Ub3AtaW5uZXJcIj5cbiAgICA8a21zLWljb25cbiAgICAgIGljb249XCJmbG9hdGluZ19idXR0b25fY2xlYXJcIlxuICAgICAgW2NvbG9yXT1cIkNvbG9yLldISVRFXCJcbiAgICAgIFtzaXplXT1cIkljb25TaXplUHguU01cIlxuICAgID48L2ttcy1pY29uPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -55,7 +55,7 @@ export class ColorInputComponent extends FormControlParentComponent {
55
55
  useExisting: forwardRef(() => ColorInputComponent),
56
56
  multi: true,
57
57
  },
58
- ], usesInheritance: true, ngImport: i0, template: "\n<form [formGroup]=\"form\" *ngIf=\"formInitialized\">\n <div>\n <mat-form-field class=\"colorInput\">\n <kms-tooltip-icon [tooltipText]=\"tooltipText\" *ngIf=\"tooltipText\"></kms-tooltip-icon>\n <mat-label>{{ label }}</mat-label>\n <input type=\"text\" [(ngModel)]=\"value\" matInput formControlName=\"color\" [placeholder]=\"placeholder\" [ngClass]=\"{'my-inValid': !matchesHex(value)}\" />\n <input type=\"color\" [value]=\"value && matchesHex(value) ? value : '#ffffff'\" (change)=\"updateSelectedColor($event)\" [ngClass]=\"{'my-inValid': !matchesHex(value)}\" />\n </mat-form-field>\n </div>\n</form>", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i5.TooltipIconComponent, selector: "kms-tooltip-icon", inputs: ["tooltipText", "placement", "delay", "iconSize", "iconClass", "tooltipAlwaysVisible"] }] }); }
58
+ ], usesInheritance: true, ngImport: i0, template: "\n<form [formGroup]=\"form\" *ngIf=\"formInitialized\">\n <div>\n <mat-form-field class=\"colorInput\">\n <kms-tooltip-icon [tooltipText]=\"tooltipText\" *ngIf=\"tooltipText\"></kms-tooltip-icon>\n <mat-label>{{ label }}</mat-label>\n <input type=\"text\" [(ngModel)]=\"value\" matInput formControlName=\"color\" [placeholder]=\"placeholder\" [ngClass]=\"{'my-inValid': !matchesHex(value)}\" />\n <input type=\"color\" [value]=\"value && matchesHex(value) ? value : '#ffffff'\" (change)=\"updateSelectedColor($event)\" [ngClass]=\"{'my-inValid': !matchesHex(value)}\" />\n </mat-form-field>\n </div>\n</form>", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i5.TooltipIconComponent, selector: "kms-tooltip-icon", inputs: ["tooltipText", "placement", "delay", "iconSize", "tooltipAlwaysVisible"] }] }); }
59
59
  }
60
60
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ColorInputComponent, decorators: [{
61
61
  type: Component,
@@ -1,7 +1,7 @@
1
- import { Component, Input, forwardRef, ViewChild, EventEmitter, Output } from '@angular/core';
2
- import { UntypedFormControl, NG_VALIDATORS, NG_VALUE_ACCESSOR, } from '@angular/forms';
1
+ import { Component, EventEmitter, forwardRef, Input, Output, ViewChild, } from '@angular/core';
2
+ import { NG_VALIDATORS, NG_VALUE_ACCESSOR, UntypedFormControl, } from '@angular/forms';
3
+ import { IconSizePx } from '../../enums/iconSize.enum';
3
4
  import { isValue } from '../../models/is-value.function';
4
- import { IconSizePx } from '../icon/iconSize.enum';
5
5
  import * as i0 from "@angular/core";
6
6
  import * as i1 from "@angular/forms";
7
7
  import * as i2 from "@angular/common";
@@ -97,7 +97,7 @@ export class FileInputComponent {
97
97
  }
98
98
  }
99
99
  else {
100
- console.warn("No file selected");
100
+ console.warn('No file selected');
101
101
  }
102
102
  }
103
103
  /**
@@ -128,7 +128,7 @@ export class FileInputComponent {
128
128
  Filename: name ? name : '',
129
129
  ImageAsDataURL: content ? content : '',
130
130
  ImageLink: imageLink ? imageLink : '',
131
- Text: text ? text : ''
131
+ Text: text ? text : '',
132
132
  };
133
133
  }
134
134
  /**
@@ -154,7 +154,7 @@ export class FileInputComponent {
154
154
  // eslint-disable-next-line @typescript-eslint/no-empty-function
155
155
  ngOnInit() { }
156
156
  ngOnDestroy() {
157
- this.subscriptions.forEach(s => s.unsubscribe());
157
+ this.subscriptions.forEach((s) => s.unsubscribe());
158
158
  }
159
159
  registerOnChange(fn) {
160
160
  this.onChange = fn;
@@ -193,7 +193,7 @@ export class FileInputComponent {
193
193
  useExisting: forwardRef(() => FileInputComponent),
194
194
  multi: true,
195
195
  },
196
- ], viewQueries: [{ propertyName: "fileInput", first: true, predicate: ["fileInput"], descendants: true }], ngImport: i0, template: "<form [formGroup]=\"form\" (change)=\"newImageLoading=true\" class=\"fileInput\"> \n\n <div *ngIf=\"form.value.Filename && previewImage\">\n <div *ngIf=\"newImageLoading\">\n {{ 'file-input.loading' | translate }}\n </div>\n <div *ngIf=\"!newImageLoading\">\n <div class=\"\">\n <div class=\"\">\n <img *ngIf=\"form.value.ImageLink && form.value.ImageLink !== '' && !(form.value.ImageAsDataURL && form.value.ImageAsDataURL !== '')\" [src]=\"form.value.ImageAsDataURL\" [src]=\"form.value.ImageLink\" style=\"height: 40px; width: fit-content;\" />\n <img *ngIf=\"form.value.ImageAsDataURL && form.value.ImageAsDataURL !== ''\" [src]=\"form.value.ImageAsDataURL\" style=\"height: 40px; width: fit-content;\" />\n </div>\n <div class=\"\">{{form.value.Filename}}</div>\n <div class=\"\">\n <div (click)=\"removeFromList()\" *ngIf=\"allowRemove\">\n <kms-icon icon=\"trash\" [size]=\"IconSizePx.TINY\" iconClass=\"color-black\"></kms-icon> \n {{ 'file-input.remove' }}\n </div>\n </div>\n </div>\n </div>\n </div>\n <div *ngIf=\"!previewImage\">\n <div class=\"\">{{form.value.Filename}}</div>\n </div>\n\n <button (click)=\"selectImageOverlay()\" class=\"button-primary-font-color\" mat-stroked-button>\n <span>{{ label }}</span>\n </button>\n <input\n type=\"file\"\n [accept]=\"acceptedFileMimetypes\"\n style=\"display: none\"\n #fileInput\n (click)=\"clearInputValue($event)\"\n (change)=\"selectImage($event)\"\n />\n\n <input type=\"hidden\" [formControl]=\"form.controls['ImageIdent']\" />\n <input type=\"hidden\" [formControl]=\"form.controls['ImageLink']\" />\n <input type=\"hidden\" [formControl]=\"form.controls['Filename']\" />\n <input type=\"hidden\" [formControl]=\"form.controls['ImageAsDataURL']\" />\n <input type=\"hidden\" [formControl]=\"form.controls['Text']\" />\n\n</form>", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.SizeDirective, selector: "[size]", inputs: ["size"] }, { kind: "component", type: i5.IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "iconStyle", "iconSize", "size", "dontUseSprite"] }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }] }); }
196
+ ], viewQueries: [{ propertyName: "fileInput", first: true, predicate: ["fileInput"], descendants: true }], ngImport: i0, template: "<form [formGroup]=\"form\" (change)=\"newImageLoading=true\" class=\"fileInput\"> \n\n <div *ngIf=\"form.value.Filename && previewImage\">\n <div *ngIf=\"newImageLoading\">\n {{ 'file-input.loading' | translate }}\n </div>\n <div *ngIf=\"!newImageLoading\">\n <div class=\"\">\n <div class=\"\">\n <img *ngIf=\"form.value.ImageLink && form.value.ImageLink !== '' && !(form.value.ImageAsDataURL && form.value.ImageAsDataURL !== '')\" [src]=\"form.value.ImageAsDataURL\" [src]=\"form.value.ImageLink\" style=\"height: 40px; width: fit-content;\" />\n <img *ngIf=\"form.value.ImageAsDataURL && form.value.ImageAsDataURL !== ''\" [src]=\"form.value.ImageAsDataURL\" style=\"height: 40px; width: fit-content;\" />\n </div>\n <div class=\"\">{{form.value.Filename}}</div>\n <div class=\"\">\n <div (click)=\"removeFromList()\" *ngIf=\"allowRemove\">\n <kms-icon icon=\"trash\" [size]=\"IconSizePx.TINY\" iconClass=\"color-black\"></kms-icon> \n {{ 'file-input.remove' }}\n </div>\n </div>\n </div>\n </div>\n </div>\n <div *ngIf=\"!previewImage\">\n <div class=\"\">{{form.value.Filename}}</div>\n </div>\n\n <button (click)=\"selectImageOverlay()\" class=\"button-primary-font-color\" mat-stroked-button>\n <span>{{ label }}</span>\n </button>\n <input\n type=\"file\"\n [accept]=\"acceptedFileMimetypes\"\n style=\"display: none\"\n #fileInput\n (click)=\"clearInputValue($event)\"\n (change)=\"selectImage($event)\"\n />\n\n <input type=\"hidden\" [formControl]=\"form.controls['ImageIdent']\" />\n <input type=\"hidden\" [formControl]=\"form.controls['ImageLink']\" />\n <input type=\"hidden\" [formControl]=\"form.controls['Filename']\" />\n <input type=\"hidden\" [formControl]=\"form.controls['ImageAsDataURL']\" />\n <input type=\"hidden\" [formControl]=\"form.controls['Text']\" />\n\n</form>", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.SizeDirective, selector: "[size]", inputs: ["size"] }, { kind: "component", type: i5.IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "size", "dontUseSprite", "color"] }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }] }); }
197
197
  }
198
198
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FileInputComponent, decorators: [{
199
199
  type: Component,
@@ -229,4 +229,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
229
229
  }], formDataChanged: [{
230
230
  type: Output
231
231
  }] } });
232
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rbXMtbmd4LXVpLXByZXNlbnRhdGlvbmFsL3NyYy9saWIvdWkvZmlsZS1pbnB1dC9maWxlLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2xpYi91aS9maWxlLWlucHV0L2ZpbGUtaW5wdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFVLFNBQVMsRUFBYSxZQUFZLEVBQUUsTUFBTSxFQUFxQyxNQUFNLGVBQWUsQ0FBQztBQUVwSixPQUFPLEVBR0gsa0JBQWtCLEVBRWxCLGFBQWEsRUFDYixpQkFBaUIsR0FDcEIsTUFBTSxnQkFBZ0IsQ0FBQztBQU14QixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDekQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7Ozs7OztBQUVuRCxzQ0FBc0M7QUFDdEMsTUFBTSxjQUFjLEdBQUcsT0FBTyxDQUFDO0FBb0IvQixNQUFNLE9BQU8sa0JBQWtCO0lBNEIzQjs7Ozs7OztPQU9HO0lBQ0gsWUFDVyxXQUErQixFQUMvQixNQUFzQixFQUN0QixFQUFxQjtJQUM1Qiw2Q0FBNkM7SUFDdEMsUUFBbUI7UUFKbkIsZ0JBQVcsR0FBWCxXQUFXLENBQW9CO1FBQy9CLFdBQU0sR0FBTixNQUFNLENBQWdCO1FBQ3RCLE9BQUUsR0FBRixFQUFFLENBQW1CO1FBRXJCLGFBQVEsR0FBUixRQUFRLENBQVc7UUFyQ3JCLFVBQUssR0FBRyxFQUFFLENBQUM7UUFFWCxpQkFBWSxHQUFHLElBQUksQ0FBQztRQUNwQixnQkFBVyxHQUFHLElBQUksQ0FBQztR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QkFDdEIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztnQkFDakQsS0FBSyxFQUFFLElBQUk7YUFDZDtTQUNKLGtJQ3BDTCxzbUVBNENPOzs0RkRMTSxrQkFBa0I7a0JBbEI5QixTQUFTOytCQUNJLGdCQUFnQixhQUdmO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLG1CQUFtQixDQUFDOzRCQUNqRCxLQUFLLEVBQUUsSUFBSTt5QkFDZDt3QkFDRDs0QkFDSSxPQUFPLEVBQUUsYUFBYTs0QkFDdEIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsbUJBQW1CLENBQUM7NEJBQ2pELEtBQUssRUFBRSxJQUFJO3lCQUNkO3FCQUNKOzRLQUs4QixTQUFTO3NCQUF2QyxTQUFTO3VCQUFDLFdBQVc7Z0JBRWIsS0FBSztzQkFBYixLQUFLO2dCQUVHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLHFCQUFxQjtzQkFBN0IsS0FBSztnQkFlSSxlQUFlO3NCQUF4QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgZm9yd2FyZFJlZiwgT25Jbml0LCBWaWV3Q2hpbGQsIFJlbmRlcmVyMiwgRXZlbnRFbWl0dGVyLCBPdXRwdXQsIEFwcGxpY2F0aW9uUmVmLCBDaGFuZ2VEZXRlY3RvclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge1xuICAgIENvbnRyb2xWYWx1ZUFjY2Vzc29yLFxuICAgIFVudHlwZWRGb3JtQnVpbGRlcixcbiAgICBVbnR5cGVkRm9ybUNvbnRyb2wsXG4gICAgVW50eXBlZEZvcm1Hcm91cCxcbiAgICBOR19WQUxJREFUT1JTLFxuICAgIE5HX1ZBTFVFX0FDQ0VTU09SLFxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuLy9pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBJY29uU2l6ZSB9IGZyb20gJy4uLy4uL21vZGVscy9pY29uU2l6ZS5lbnVtJztcbmltcG9ydCB7IEF0dGFjaGVkRmlsZURUTyB9IGZyb20gJy4uLy4uL21vZGVscy90eXBlcy9hdHRhY2hlZC1maWxlLWR0by5tb2RlbCc7XG5pbXBvcnQgeyBpc1ZhbHVlIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2lzLXZhbHVlLmZ1bmN0aW9uJztcbmltcG9ydCB7IEljb25TaXplUHggfSBmcm9tICcuLi9pY29uL2ljb25TaXplLmVudW0nO1xuXG4vLyBNYXggc2l6ZSBpbiBieXRlcyBvZiB1cGxvYWRlZCBpbWFnZVxuY29uc3QgTUFYX1NJWkVfQllURVMgPSAyMDk3MTUyO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ttcy1maWxlLWlucHV0JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZmlsZS1pbnB1dC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZmlsZS1pbnB1dC5jb21wb25lbnQuc2NzcyddLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEZpbGVJbnB1dENvbXBvbmVudCksXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogTkdfVkFMSURBVE9SUyxcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEZpbGVJbnB1dENvbXBvbmVudCksXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICBdLFxufSlcblxuZXhwb3J0IGNsYXNzIEZpbGVJbnB1dENvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkluaXQge1xuICAgIFxuICAgIEBWaWV3Q2hpbGQoJ2ZpbGVJbnB1dCcpIHB1YmxpYyBmaWxlSW5wdXQ6IGFueTtcblxuICAgIEBJbnB1dCgpIGxhYmVsID0gJyc7XG4gICAgXG4gICAgQElucHV0KCkgcHJldmlld0ltYWdlID0gdHJ1ZTsgXG4gICAgQElucHV0KCkgYWxsb3dSZW1vdmUgPSB0cnVlOyBcbiAgICBASW5wdXQoKSBwcmV2aWV3SW1hZ2VUZXh0ID0gJyc7IFxuICAgIEBJbnB1dCgpIG1heFNpemVCeXRlcyA9IE1BWF9TSVpFX0JZVEVTOyBcbiAgICBASW5wdXQoKSByZXNpemVQaXhlbHMgPSAwOyBcbiAgICBASW5wdXQoKSBhY2NlcHRlZEZpbGVNaW1ldHlwZXMgPSAnaW1hZ2UvanBlZywgaW1hZ2UvanBnLCBpbWFnZS9wbmcnOyBcblxuICAgIGZvcm09IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgICBJbWFnZUlkZW50OiBuZXcgVW50eXBlZEZvcm1Db250cm9sKCcnKSxcbiAgICAgICAgSW1hZ2VMaW5rOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKCcnKSxcbiAgICAgICAgRmlsZW5hbWU6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woJycpLFxuICAgICAgICBJbWFnZUFzRGF0YVVSTDogbmV3IFVudHlwZWRGb3JtQ29udHJvbCgnJyksXG4gICAgICAgIFRleHQ6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woJycpLFxuICAgIH0pO1xuXG4gICAgc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uW10gPSBbXTtcbiAgICBuZXdJbWFnZUxvYWRpbmcgPSBmYWxzZVxuXG4gICAgSWNvblNpemVQeCA9IEljb25TaXplUHg7XG5cbiAgICBAT3V0cHV0KCkgZm9ybURhdGFDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8VW50eXBlZEZvcm1Hcm91cD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgICAvKipcbiAgICAgKiBDb25zdHJ1Y3RvclxuICAgICAqIEBwYXJhbSBmb3JtQnVpbGRlciBcbiAgICAgKiBAcGFyYW0gYXBwUmVmIFxuICAgICAqIEBwYXJhbSBjZCBcbiAgICAgKiBAcGFyYW0gdHJhbnNsYXRlU2VydmljZSBcbiAgICAgKiBAcGFyYW0gcmVuZGVyZXIgXG4gICAgICovXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHB1YmxpYyBmb3JtQnVpbGRlcjogVW50eXBlZEZvcm1CdWlsZGVyLCBcbiAgICAgICAgcHVibGljIGFwcFJlZjogQXBwbGljYXRpb25SZWYsXG4gICAgICAgIHB1YmxpYyBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIC8vcHJpdmF0ZSB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgICAgICBwdWJsaWMgcmVuZGVyZXI6IFJlbmRlcmVyMlxuICAgICkge1xuICAgICAgICBcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAgQ2xpY2sgb24gYnV0dG9uIHRyaWdnZXJzIGZpbGUtaW5wdXQgdG8gb3BlbiBPUyBmaWxlIGRpYWxvZ1xuICAgICAqL1xuICAgIHNlbGVjdEltYWdlT3ZlcmxheSgpIHtcbiAgICAgICAgdGhpcy5maWxlSW5wdXQubmF0aXZlRWxlbWVudC5jbGljaygpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEZ1bmN0aW9uIHRvIG1hbmFnZSB0aGUgaW5wdXQgaW1hZ2VcbiAgICAgKiBSZXR1cm5zIGFuIGVycm9yIGlmIHRoZSBmaWxlIGV4Y2VlZHMgbWF4aW11bSB3YW50ZWQgZmlsZXNpemUgKE1iKS4gXG4gICAgICogQHBhcmFtIGV2XG4gICAgICogQHJldHVybnNcbiAgICAgKi9cbiAgICBzZWxlY3RJbWFnZShldjogYW55KSB7XG4gICAgICAgIGlmIChldi50YXJnZXQuZmlsZXMgJiYgZXYudGFyZ2V0LmZpbGVzWzBdKSB7XG4gICAgICAgICAgICBjb25zdCBmaWxlOkZpbGUgPSBldi50YXJnZXQuZmlsZXNbMF07XG5cbiAgICAgICAgICAgIGlmIChmaWxlLnNpemUgPiB0aGlzLm1heFNpemVCeXRlcykge1xuICAgICAgICAgICAgICAgIHRoaXMuY2xlYXJJbnB1dFZhbHVlKGV2KTtcbiAgICAgICAgICAgICAgICAvL2FsZXJ0KHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdlcnJvcnMuZmlsZVRvb0JpZycpKTtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMubmV3SW1hZ2VMb2FkaW5nID0gdHJ1ZTtcblxuICAgICAgICAgICAgICAgIGlmKHRoaXMucmVzaXplUGl4ZWxzID4gMCl7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGxvZ29VcmwgPSBVUkwuY3JlYXRlT2JqZWN0VVJMKGZpbGUpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBpbWdFbCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2ltZycpO1xuICAgICAgICAgICAgICAgICAgICBpbWdFbC5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVzaXplZExvZ28gPSB0aGlzLnJlc2l6ZUltYWdlKGltZ0VsLCB0aGlzLnJlc2l6ZVBpeGVscyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBuZXdGaWxlID0gdGhpcy5nZW5lcmF0ZU1vZGVsKGZpbGUubmFtZSwgcmVzaXplZExvZ28sIHRoaXMudmFsdWUuSW1hZ2VJZGVudCwgdGhpcy52YWx1ZS5JbWFnZUxpbmssIHRoaXMudmFsdWUuVGV4dCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnZhbHVlPW5ld0ZpbGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm5ld0ltYWdlTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jZC5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIGltZ0VsLnNyYyA9IGxvZ29Vcmw7XG4gICAgICAgICAgICAgICAgfWVsc2V7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKCk7XG4gICAgICAgICAgICAgICAgICAgIHJlYWRlci5yZWFkQXNEYXRhVVJMKGZpbGUpO1xuICAgICAgICAgICAgICAgICAgICByZWFkZXIub25sb2FkID0gKGU6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbmV3RmlsZSA9IHRoaXMuZ2VuZXJhdGVNb2RlbChmaWxlLm5hbWUsIGUudGFyZ2V0LnJlc3VsdCwgdGhpcy52YWx1ZS5JbWFnZUlkZW50LCB0aGlzLnZhbHVlLkltYWdlTGluaywgdGhpcy52YWx1ZS5UZXh0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudmFsdWU9bmV3RmlsZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubmV3SW1hZ2VMb2FkaW5nID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNkLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgfWVsc2V7XG4gICAgICAgICAgICBjb25zb2xlLndhcm4oXCJObyBmaWxlIHNlbGVjdGVkXCIpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVzaXplIGFuIGltYWdlXG4gICAgICogQHBhcmFtIGltZ0VsXG4gICAgICogQHBhcmFtIHdhbnRlZFdpZHRoIGFzIG51bWJlclxuICAgICAqIEByZXR1cm5zIHN0cmluZyBcbiAgICAgKi9cbiAgICAgcHJpdmF0ZSByZXNpemVJbWFnZShpbWdFbDogYW55LCB3YW50ZWRXaWR0aDogbnVtYmVyKSB7XG4gICAgICAgIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpO1xuICAgICAgICBjb25zdCBjdHggPSBjYW52YXMuZ2V0Q29udGV4dCgnMmQnKTtcbiAgICAgICAgY29uc3QgYXNwZWN0ID0gaW1nRWwud2lkdGggLyBpbWdFbC5oZWlnaHQ7XG4gICAgICAgIGNhbnZhcy53aWR0aCA9IHdhbnRlZFdpZHRoO1xuICAgICAgICBjYW52YXMuaGVpZ2h0ID0gd2FudGVkV2lkdGggLyBhc3BlY3Q7XG4gICAgICAgIGlmIChpc1ZhbHVlKGN0eCkpIGN0eC5kcmF3SW1hZ2UoaW1nRWwsIDAsIDAsIGNhbnZhcy53aWR0aCwgY2FudmFzLmhlaWdodCk7XG4gICAgICAgIHJldHVybiBjYW52YXMudG9EYXRhVVJMKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2VuZXJhdGUgZGVmYXVsdCBvYmplY3RcbiAgICAgKiBAcGFyYW0gbmFtZSBhcyBzdHJpbmdcbiAgICAgKiBAcGFyYW0gY29udGVudCBhcyBzdHJpbmdcbiAgICAgKiBAcmV0dXJucyBBdHRhY2hlZEZpbGVEVE9cbiAgICAgKi9cbiAgICBnZW5lcmF0ZU1vZGVsKG5hbWU/OiBzdHJpbmcsIGNvbnRlbnQ/OiBzdHJpbmcsIGlkZW50Pzogc3RyaW5nLCBpbWFnZUxpbms/OiBzdHJpbmcsIHRleHQ/OiBzdHJpbmcpe1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgSW1hZ2VJZGVudDogaWRlbnQgPyBpZGVudCA6ICcnLFxuICAgICAgICAgICAgRmlsZW5hbWU6IG5hbWUgPyBuYW1lIDogJycsXG4gICAgICAgICAgICBJbWFnZUFzRGF0YVVSTDogY29udGVudCA/IGNvbnRlbnQgOiAnJyxcbiAgICAgICAgICAgIEltYWdlTGluazogaW1hZ2VMaW5rID8gaW1hZ2VMaW5rIDogJycsXG4gICAgICAgICAgICBUZXh0OiB0ZXh0ID8gdGV4dCA6ICcnXG4gICAgICAgIH0gYXMgQXR0YWNoZWRGaWxlRFRPO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSBpbWFnZSBcbiAgICAgKi9cbiAgICAgcmVtb3ZlRnJvbUxpc3QoKXtcbiAgICAgICAgdGhpcy52YWx1ZT0gdGhpcy5nZW5lcmF0ZU1vZGVsKCcnLCcnLCAnJywgJycpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGdldCB2YWx1ZVxuICAgICAqL1xuICAgICAgICBnZXQgdmFsdWUoKTogQXR0YWNoZWRGaWxlRFRPIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9ybS52YWx1ZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBzZXQgdmFsdWVcbiAgICAgKi9cbiAgICBzZXQgdmFsdWUodmFsdWU6IEF0dGFjaGVkRmlsZURUTykge1xuICAgICAgICB0aGlzLmZvcm0uc2V0VmFsdWUodmFsdWUpO1xuICAgICAgICB0aGlzLm9uQ2hhbmdlKHZhbHVlKTtcbiAgICAgICAgdGhpcy5mb3JtRGF0YUNoYW5nZWQuZW1pdCh0aGlzLmZvcm0pO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cbiAgICBvbkNoYW5nZTogYW55ID0gKCkgPT4ge307XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG4gICAgb25Ub3VjaDogYW55ID0gKCkgPT4ge307XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG4gICAgbmdPbkluaXQoKSB7fVxuXG5cbiAgICBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb25zLmZvckVhY2gocyA9PiBzLnVuc3Vic2NyaWJlKCkpO1xuICAgIH0gICBcblxuICAgIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSkge1xuICAgICAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gICAgfVxuXG4gICAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSkge1xuICAgICAgICB0aGlzLm9uVG91Y2ggPSBmbjtcbiAgICB9XG5cbiAgICB3cml0ZVZhbHVlKHZhbHVlOiBBdHRhY2hlZEZpbGVEVE8gfCBudWxsKSB7XG4gICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHZhbHVlID09PSBudWxsKSB7XG4gICAgICAgICAgICB0aGlzLmZvcm0ucmVzZXQoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvYWRqYWNlbnQtb3ZlcmxvYWQtc2lnbmF0dXJlc1xuICAgIHZhbGlkYXRlKF86IFVudHlwZWRGb3JtQ29udHJvbCkge1xuICAgICAgICByZXR1cm4gdGhpcy5mb3JtLnZhbGlkID8gbnVsbCA6IHsgc3R5bGVzOiB7IHZhbGlkOiBmYWxzZSB9IH07XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogT25DbGljayBldmVudCBsaXN0ZW5lciBvZiBpbnB1dCNmaWxlSW5wdXQgdG8gY2xlYXIgaGlzIGlucHV0IHZhbHVlXG4gICAgICovXG4gICAgY2xlYXJJbnB1dFZhbHVlKGV2OiBhbnkpIHtcbiAgICAgICAgY29uc3QgZWxlbWVudCA9IGV2LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50O1xuICAgICAgICBlbGVtZW50LnZhbHVlID0gJyc7XG4gICAgfVxufVxuIiwiPGZvcm0gW2Zvcm1Hcm91cF09XCJmb3JtXCIgKGNoYW5nZSk9XCJuZXdJbWFnZUxvYWRpbmc9dHJ1ZVwiIGNsYXNzPVwiZmlsZUlucHV0XCI+IFxuXG4gICAgPGRpdiAqbmdJZj1cImZvcm0udmFsdWUuRmlsZW5hbWUgJiYgcHJldmlld0ltYWdlXCI+XG4gICAgICAgIDxkaXYgKm5nSWY9XCJuZXdJbWFnZUxvYWRpbmdcIj5cbiAgICAgICAgICAgIHt7ICdmaWxlLWlucHV0LmxvYWRpbmcnIHwgdHJhbnNsYXRlIH19XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2ICpuZ0lmPVwiIW5ld0ltYWdlTG9hZGluZ1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIlwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJcIj5cbiAgICAgICAgICAgICAgICAgICAgPGltZyAqbmdJZj1cImZvcm0udmFsdWUuSW1hZ2VMaW5rICYmIGZvcm0udmFsdWUuSW1hZ2VMaW5rICE9PSAnJyAmJiAhKGZvcm0udmFsdWUuSW1hZ2VBc0RhdGFVUkwgJiYgZm9ybS52YWx1ZS5JbWFnZUFzRGF0YVVSTCAhPT0gJycpXCIgW3NyY109XCJmb3JtLnZhbHVlLkltYWdlQXNEYXRhVVJMXCIgW3NyY109XCJmb3JtLnZhbHVlLkltYWdlTGlua1wiIHN0eWxlPVwiaGVpZ2h0OiA0MHB4OyB3aWR0aDogZml0LWNvbnRlbnQ7XCIgLz5cbiAgICAgICAgICAgICAgICAgICAgPGltZyAqbmdJZj1cImZvcm0udmFsdWUuSW1hZ2VBc0RhdGFVUkwgJiYgZm9ybS52YWx1ZS5JbWFnZUFzRGF0YVVSTCAhPT0gJydcIiBbc3JjXT1cImZvcm0udmFsdWUuSW1hZ2VBc0RhdGFVUkxcIiBzdHlsZT1cImhlaWdodDogNDBweDsgd2lkdGg6IGZpdC1jb250ZW50O1wiIC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIlwiPnt7Zm9ybS52YWx1ZS5GaWxlbmFtZX19PC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIlwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IChjbGljayk9XCJyZW1vdmVGcm9tTGlzdCgpXCIgKm5nSWY9XCJhbGxvd1JlbW92ZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGttcy1pY29uIGljb249XCJ0cmFzaFwiIFtzaXplXT1cIkljb25TaXplUHguVElOWVwiIGljb25DbGFzcz1cImNvbG9yLWJsYWNrXCI+PC9rbXMtaWNvbj4gXG4gICAgICAgICAgICAgICAgICAgICAgICB7eyAnZmlsZS1pbnB1dC5yZW1vdmUnIH19XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgKm5nSWY9XCIhcHJldmlld0ltYWdlXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJcIj57e2Zvcm0udmFsdWUuRmlsZW5hbWV9fTwvZGl2PlxuICAgIDwvZGl2PlxuXG4gICAgPGJ1dHRvbiAoY2xpY2spPVwic2VsZWN0SW1hZ2VPdmVybGF5KClcIiBjbGFzcz1cImJ1dHRvbi1wcmltYXJ5LWZvbnQtY29sb3JcIiBtYXQtc3Ryb2tlZC1idXR0b24+XG4gICAgICAgIDxzcGFuPnt7IGxhYmVsIH19PC9zcGFuPlxuICAgIDwvYnV0dG9uPlxuICAgIDxpbnB1dFxuICAgICAgICB0eXBlPVwiZmlsZVwiXG4gICAgICAgIFthY2NlcHRdPVwiYWNjZXB0ZWRGaWxlTWltZXR5cGVzXCJcbiAgICAgICAgc3R5bGU9XCJkaXNwbGF5OiBub25lXCJcbiAgICAgICAgI2ZpbGVJbnB1dFxuICAgICAgICAoY2xpY2spPVwiY2xlYXJJbnB1dFZhbHVlKCRldmVudClcIlxuICAgICAgICAoY2hhbmdlKT1cInNlbGVjdEltYWdlKCRldmVudClcIlxuICAgIC8+XG5cbiAgICA8aW5wdXQgdHlwZT1cImhpZGRlblwiIFtmb3JtQ29udHJvbF09XCJmb3JtLmNvbnRyb2xzWydJbWFnZUlkZW50J11cIiAvPlxuICAgIDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgW2Zvcm1Db250cm9sXT1cImZvcm0uY29udHJvbHNbJ0ltYWdlTGluayddXCIgLz5cbiAgICA8aW5wdXQgdHlwZT1cImhpZGRlblwiIFtmb3JtQ29udHJvbF09XCJmb3JtLmNvbnRyb2xzWydGaWxlbmFtZSddXCIgLz5cbiAgICA8aW5wdXQgdHlwZT1cImhpZGRlblwiIFtmb3JtQ29udHJvbF09XCJmb3JtLmNvbnRyb2xzWydJbWFnZUFzRGF0YVVSTCddXCIgLz5cbiAgICA8aW5wdXQgdHlwZT1cImhpZGRlblwiIFtmb3JtQ29udHJvbF09XCJmb3JtLmNvbnRyb2xzWydUZXh0J11cIiAvPlxuXG48L2Zvcm0+Il19
232
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rbXMtbmd4LXVpLXByZXNlbnRhdGlvbmFsL3NyYy9saWIvdWkvZmlsZS1pbnB1dC9maWxlLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2xpYi91aS9maWxlLWlucHV0L2ZpbGUtaW5wdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdMLFNBQVMsRUFDVCxZQUFZLEVBQ1osVUFBVSxFQUNWLEtBQUssRUFFTCxNQUFNLEVBRU4sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFFTCxhQUFhLEVBQ2IsaUJBQWlCLEVBRWpCLGtCQUFrQixHQUVuQixNQUFNLGdCQUFnQixDQUFDO0FBR3hCLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7Ozs7Ozs7O0FBR3pELHNDQUFzQztBQUN0QyxNQUFNLGNBQWMsR0FBRyxPQUFPLENBQUM7QUFtQi9CLE1BQU0sT0FBTyxrQkFBa0I7SUE0QjdCOzs7Ozs7O09BT0c7SUFDSCxZQUNTLFdBQStCLEVBQy9CLE1BQXNCLEVBQ3RCLEVBQXFCO0lBQzVCLDZDQUE2QztJQUN0QyxRQUFtQjtRQUpuQixnQkFBVyxHQUFYLFdBQVcsQ0FBb0I7UUFDL0IsV0FBTSxHQUFOLE1BQU0sQ0FBZ0I7UUFDdEIsT0FBRSxHQUFGLEVBQUUsQ0FBbUI7UUFFckIsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQXRDbkIsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUVYLGlCQUFZLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLGdCQUFXLEdBQUcsSUFBSSxDQUFDO1FB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TyxFQUFFLGFBQWE7Z0JBQ3RCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsa0JBQWtCLENBQUM7Z0JBQ2pELEtBQUssRUFBRSxJQUFJO2FBQ1o7U0FDRixrSUM3Q0gsc21FQTRDTzs7NEZER00sa0JBQWtCO2tCQWpCOUIsU0FBUzsrQkFDRSxnQkFBZ0IsYUFHZjt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxtQkFBbUIsQ0FBQzs0QkFDakQsS0FBSyxFQUFFLElBQUk7eUJBQ1o7d0JBQ0Q7NEJBQ0UsT0FBTyxFQUFFLGFBQWE7NEJBQ3RCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLG1CQUFtQixDQUFDOzRCQUNqRCxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRjs0S0FHOEIsU0FBUztzQkFBdkMsU0FBUzt1QkFBQyxXQUFXO2dCQUViLEtBQUs7c0JBQWIsS0FBSztnQkFFRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxxQkFBcUI7c0JBQTdCLEtBQUs7Z0JBZUksZUFBZTtzQkFBeEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFwcGxpY2F0aW9uUmVmLFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIGZvcndhcmRSZWYsXG4gIElucHV0LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgUmVuZGVyZXIyLFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge1xuICBDb250cm9sVmFsdWVBY2Nlc3NvcixcbiAgTkdfVkFMSURBVE9SUyxcbiAgTkdfVkFMVUVfQUNDRVNTT1IsXG4gIFVudHlwZWRGb3JtQnVpbGRlcixcbiAgVW50eXBlZEZvcm1Db250cm9sLFxuICBVbnR5cGVkRm9ybUdyb3VwLFxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgSWNvblNpemVQeCB9IGZyb20gJy4uLy4uL2VudW1zL2ljb25TaXplLmVudW0nO1xuaW1wb3J0IHsgaXNWYWx1ZSB9IGZyb20gJy4uLy4uL21vZGVscy9pcy12YWx1ZS5mdW5jdGlvbic7XG5pbXBvcnQgeyBBdHRhY2hlZEZpbGVEVE8gfSBmcm9tICcuLi8uLi9tb2RlbHMvdHlwZXMvYXR0YWNoZWQtZmlsZS1kdG8ubW9kZWwnO1xuXG4vLyBNYXggc2l6ZSBpbiBieXRlcyBvZiB1cGxvYWRlZCBpbWFnZVxuY29uc3QgTUFYX1NJWkVfQllURVMgPSAyMDk3MTUyO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdrbXMtZmlsZS1pbnB1dCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9maWxlLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZmlsZS1pbnB1dC5jb21wb25lbnQuc2NzcyddLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEZpbGVJbnB1dENvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBGaWxlSW5wdXRDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRmlsZUlucHV0Q29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE9uSW5pdCB7XG4gIEBWaWV3Q2hpbGQoJ2ZpbGVJbnB1dCcpIHB1YmxpYyBmaWxlSW5wdXQ6IGFueTtcblxuICBASW5wdXQoKSBsYWJlbCA9ICcnO1xuXG4gIEBJbnB1dCgpIHByZXZpZXdJbWFnZSA9IHRydWU7XG4gIEBJbnB1dCgpIGFsbG93UmVtb3ZlID0gdHJ1ZTtcbiAgQElucHV0KCkgcHJldmlld0ltYWdlVGV4dCA9ICcnO1xuICBASW5wdXQoKSBtYXhTaXplQnl0ZXMgPSBNQVhfU0laRV9CWVRFUztcbiAgQElucHV0KCkgcmVzaXplUGl4ZWxzID0gMDtcbiAgQElucHV0KCkgYWNjZXB0ZWRGaWxlTWltZXR5cGVzID0gJ2ltYWdlL2pwZWcsIGltYWdlL2pwZywgaW1hZ2UvcG5nJztcblxuICBmb3JtID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XG4gICAgSW1hZ2VJZGVudDogbmV3IFVudHlwZWRGb3JtQ29udHJvbCgnJyksXG4gICAgSW1hZ2VMaW5rOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKCcnKSxcbiAgICBGaWxlbmFtZTogbmV3IFVudHlwZWRGb3JtQ29udHJvbCgnJyksXG4gICAgSW1hZ2VBc0RhdGFVUkw6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woJycpLFxuICAgIFRleHQ6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woJycpLFxuICB9KTtcblxuICBzdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xuICBuZXdJbWFnZUxvYWRpbmcgPSBmYWxzZTtcblxuICBJY29uU2l6ZVB4ID0gSWNvblNpemVQeDtcblxuICBAT3V0cHV0KCkgZm9ybURhdGFDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8VW50eXBlZEZvcm1Hcm91cD4gPVxuICAgIG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAvKipcbiAgICogQ29uc3RydWN0b3JcbiAgICogQHBhcmFtIGZvcm1CdWlsZGVyXG4gICAqIEBwYXJhbSBhcHBSZWZcbiAgICogQHBhcmFtIGNkXG4gICAqIEBwYXJhbSB0cmFuc2xhdGVTZXJ2aWNlXG4gICAqIEBwYXJhbSByZW5kZXJlclxuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGZvcm1CdWlsZGVyOiBVbnR5cGVkRm9ybUJ1aWxkZXIsXG4gICAgcHVibGljIGFwcFJlZjogQXBwbGljYXRpb25SZWYsXG4gICAgcHVibGljIGNkOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAvL3ByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwdWJsaWMgcmVuZGVyZXI6IFJlbmRlcmVyMlxuICApIHt9XG5cbiAgLyoqXG4gICAqICBDbGljayBvbiBidXR0b24gdHJpZ2dlcnMgZmlsZS1pbnB1dCB0byBvcGVuIE9TIGZpbGUgZGlhbG9nXG4gICAqL1xuICBzZWxlY3RJbWFnZU92ZXJsYXkoKSB7XG4gICAgdGhpcy5maWxlSW5wdXQubmF0aXZlRWxlbWVudC5jbGljaygpO1xuICB9XG5cbiAgLyoqXG4gICAqIEZ1bmN0aW9uIHRvIG1hbmFnZSB0aGUgaW5wdXQgaW1hZ2VcbiAgICogUmV0dXJucyBhbiBlcnJvciBpZiB0aGUgZmlsZSBleGNlZWRzIG1heGltdW0gd2FudGVkIGZpbGVzaXplIChNYikuXG4gICAqIEBwYXJhbSBldlxuICAgKiBAcmV0dXJuc1xuICAgKi9cbiAgc2VsZWN0SW1hZ2UoZXY6IGFueSkge1xuICAgIGlmIChldi50YXJnZXQuZmlsZXMgJiYgZXYudGFyZ2V0LmZpbGVzWzBdKSB7XG4gICAgICBjb25zdCBmaWxlOiBGaWxlID0gZXYudGFyZ2V0LmZpbGVzWzBdO1xuXG4gICAgICBpZiAoZmlsZS5zaXplID4gdGhpcy5tYXhTaXplQnl0ZXMpIHtcbiAgICAgICAgdGhpcy5jbGVhcklucHV0VmFsdWUoZXYpO1xuICAgICAgICAvL2FsZXJ0KHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdlcnJvcnMuZmlsZVRvb0JpZycpKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5uZXdJbWFnZUxvYWRpbmcgPSB0cnVlO1xuXG4gICAgICAgIGlmICh0aGlzLnJlc2l6ZVBpeGVscyA+IDApIHtcbiAgICAgICAgICBjb25zdCBsb2dvVXJsID0gVVJMLmNyZWF0ZU9iamVjdFVSTChmaWxlKTtcbiAgICAgICAgICBjb25zdCBpbWdFbCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2ltZycpO1xuICAgICAgICAgIGltZ0VsLmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCAoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCByZXNpemVkTG9nbyA9IHRoaXMucmVzaXplSW1hZ2UoaW1nRWwsIHRoaXMucmVzaXplUGl4ZWxzKTtcbiAgICAgICAgICAgIGNvbnN0IG5ld0ZpbGUgPSB0aGlzLmdlbmVyYXRlTW9kZWwoXG4gICAgICAgICAgICAgIGZpbGUubmFtZSxcbiAgICAgICAgICAgICAgcmVzaXplZExvZ28sXG4gICAgICAgICAgICAgIHRoaXMudmFsdWUuSW1hZ2VJZGVudCxcbiAgICAgICAgICAgICAgdGhpcy52YWx1ZS5JbWFnZUxpbmssXG4gICAgICAgICAgICAgIHRoaXMudmFsdWUuVGV4dFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIHRoaXMudmFsdWUgPSBuZXdGaWxlO1xuICAgICAgICAgICAgdGhpcy5uZXdJbWFnZUxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgIHRoaXMuY2QubWFya0ZvckNoZWNrKCk7XG4gICAgICAgICAgfSk7XG4gICAgICAgICAgaW1nRWwuc3JjID0gbG9nb1VybDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb25zdCByZWFkZXIgPSBuZXcgRmlsZVJlYWRlcigpO1xuICAgICAgICAgIHJlYWRlci5yZWFkQXNEYXRhVVJMKGZpbGUpO1xuICAgICAgICAgIHJlYWRlci5vbmxvYWQgPSAoZTogYW55KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBuZXdGaWxlID0gdGhpcy5nZW5lcmF0ZU1vZGVsKFxuICAgICAgICAgICAgICBmaWxlLm5hbWUsXG4gICAgICAgICAgICAgIGUudGFyZ2V0LnJlc3VsdCxcbiAgICAgICAgICAgICAgdGhpcy52YWx1ZS5JbWFnZUlkZW50LFxuICAgICAgICAgICAgICB0aGlzLnZhbHVlLkltYWdlTGluayxcbiAgICAgICAgICAgICAgdGhpcy52YWx1ZS5UZXh0XG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgdGhpcy52YWx1ZSA9IG5ld0ZpbGU7XG4gICAgICAgICAgICB0aGlzLm5ld0ltYWdlTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgdGhpcy5jZC5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnNvbGUud2FybignTm8gZmlsZSBzZWxlY3RlZCcpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBSZXNpemUgYW4gaW1hZ2VcbiAgICogQHBhcmFtIGltZ0VsXG4gICAqIEBwYXJhbSB3YW50ZWRXaWR0aCBhcyBudW1iZXJcbiAgICogQHJldHVybnMgc3RyaW5nXG4gICAqL1xuICBwcml2YXRlIHJlc2l6ZUltYWdlKGltZ0VsOiBhbnksIHdhbnRlZFdpZHRoOiBudW1iZXIpIHtcbiAgICBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKTtcbiAgICBjb25zdCBjdHggPSBjYW52YXMuZ2V0Q29udGV4dCgnMmQnKTtcbiAgICBjb25zdCBhc3BlY3QgPSBpbWdFbC53aWR0aCAvIGltZ0VsLmhlaWdodDtcbiAgICBjYW52YXMud2lkdGggPSB3YW50ZWRXaWR0aDtcbiAgICBjYW52YXMuaGVpZ2h0ID0gd2FudGVkV2lkdGggLyBhc3BlY3Q7XG4gICAgaWYgKGlzVmFsdWUoY3R4KSkgY3R4LmRyYXdJbWFnZShpbWdFbCwgMCwgMCwgY2FudmFzLndpZHRoLCBjYW52YXMuaGVpZ2h0KTtcbiAgICByZXR1cm4gY2FudmFzLnRvRGF0YVVSTCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlIGRlZmF1bHQgb2JqZWN0XG4gICAqIEBwYXJhbSBuYW1lIGFzIHN0cmluZ1xuICAgKiBAcGFyYW0gY29udGVudCBhcyBzdHJpbmdcbiAgICogQHJldHVybnMgQXR0YWNoZWRGaWxlRFRPXG4gICAqL1xuICBnZW5lcmF0ZU1vZGVsKFxuICAgIG5hbWU/OiBzdHJpbmcsXG4gICAgY29udGVudD86IHN0cmluZyxcbiAgICBpZGVudD86IHN0cmluZyxcbiAgICBpbWFnZUxpbms/OiBzdHJpbmcsXG4gICAgdGV4dD86IHN0cmluZ1xuICApIHtcbiAgICByZXR1cm4ge1xuICAgICAgSW1hZ2VJZGVudDogaWRlbnQgPyBpZGVudCA6ICcnLFxuICAgICAgRmlsZW5hbWU6IG5hbWUgPyBuYW1lIDogJycsXG4gICAgICBJbWFnZUFzRGF0YVVSTDogY29udGVudCA/IGNvbnRlbnQgOiAnJyxcbiAgICAgIEltYWdlTGluazogaW1hZ2VMaW5rID8gaW1hZ2VMaW5rIDogJycsXG4gICAgICBUZXh0OiB0ZXh0ID8gdGV4dCA6ICcnLFxuICAgIH0gYXMgQXR0YWNoZWRGaWxlRFRPO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSBpbWFnZVxuICAgKi9cbiAgcmVtb3ZlRnJvbUxpc3QoKSB7XG4gICAgdGhpcy52YWx1ZSA9IHRoaXMuZ2VuZXJhdGVNb2RlbCgnJywgJycsICcnLCAnJyk7XG4gIH1cblxuICAvKipcbiAgICogZ2V0IHZhbHVlXG4gICAqL1xuICBnZXQgdmFsdWUoKTogQXR0YWNoZWRGaWxlRFRPIHtcbiAgICByZXR1cm4gdGhpcy5mb3JtLnZhbHVlO1xuICB9XG5cbiAgLyoqXG4gICAqIHNldCB2YWx1ZVxuICAgKi9cbiAgc2V0IHZhbHVlKHZhbHVlOiBBdHRhY2hlZEZpbGVEVE8pIHtcbiAgICB0aGlzLmZvcm0uc2V0VmFsdWUodmFsdWUpO1xuICAgIHRoaXMub25DaGFuZ2UodmFsdWUpO1xuICAgIHRoaXMuZm9ybURhdGFDaGFuZ2VkLmVtaXQodGhpcy5mb3JtKTtcbiAgfVxuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cbiAgb25DaGFuZ2U6IGFueSA9ICgpID0+IHt9O1xuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cbiAgb25Ub3VjaDogYW55ID0gKCkgPT4ge307XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxuICBuZ09uSW5pdCgpIHt9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLmZvckVhY2goKHMpID0+IHMudW5zdWJzY3JpYmUoKSk7XG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpIHtcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KSB7XG4gICAgdGhpcy5vblRvdWNoID0gZm47XG4gIH1cblxuICB3cml0ZVZhbHVlKHZhbHVlOiBBdHRhY2hlZEZpbGVEVE8gfCBudWxsKSB7XG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgfVxuXG4gICAgaWYgKHZhbHVlID09PSBudWxsKSB7XG4gICAgICB0aGlzLmZvcm0ucmVzZXQoKTtcbiAgICB9XG4gIH1cblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L2FkamFjZW50LW92ZXJsb2FkLXNpZ25hdHVyZXNcbiAgdmFsaWRhdGUoXzogVW50eXBlZEZvcm1Db250cm9sKSB7XG4gICAgcmV0dXJuIHRoaXMuZm9ybS52YWxpZCA/IG51bGwgOiB7IHN0eWxlczogeyB2YWxpZDogZmFsc2UgfSB9O1xuICB9XG5cbiAgLyoqXG4gICAqIE9uQ2xpY2sgZXZlbnQgbGlzdGVuZXIgb2YgaW5wdXQjZmlsZUlucHV0IHRvIGNsZWFyIGhpcyBpbnB1dCB2YWx1ZVxuICAgKi9cbiAgY2xlYXJJbnB1dFZhbHVlKGV2OiBhbnkpIHtcbiAgICBjb25zdCBlbGVtZW50ID0gZXYudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQ7XG4gICAgZWxlbWVudC52YWx1ZSA9ICcnO1xuICB9XG59XG4iLCI8Zm9ybSBbZm9ybUdyb3VwXT1cImZvcm1cIiAoY2hhbmdlKT1cIm5ld0ltYWdlTG9hZGluZz10cnVlXCIgY2xhc3M9XCJmaWxlSW5wdXRcIj4gXG5cbiAgICA8ZGl2ICpuZ0lmPVwiZm9ybS52YWx1ZS5GaWxlbmFtZSAmJiBwcmV2aWV3SW1hZ2VcIj5cbiAgICAgICAgPGRpdiAqbmdJZj1cIm5ld0ltYWdlTG9hZGluZ1wiPlxuICAgICAgICAgICAge3sgJ2ZpbGUtaW5wdXQubG9hZGluZycgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgKm5nSWY9XCIhbmV3SW1hZ2VMb2FkaW5nXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIlwiPlxuICAgICAgICAgICAgICAgICAgICA8aW1nICpuZ0lmPVwiZm9ybS52YWx1ZS5JbWFnZUxpbmsgJiYgZm9ybS52YWx1ZS5JbWFnZUxpbmsgIT09ICcnICYmICEoZm9ybS52YWx1ZS5JbWFnZUFzRGF0YVVSTCAmJiBmb3JtLnZhbHVlLkltYWdlQXNEYXRhVVJMICE9PSAnJylcIiBbc3JjXT1cImZvcm0udmFsdWUuSW1hZ2VBc0RhdGFVUkxcIiBbc3JjXT1cImZvcm0udmFsdWUuSW1hZ2VMaW5rXCIgc3R5bGU9XCJoZWlnaHQ6IDQwcHg7IHdpZHRoOiBmaXQtY29udGVudDtcIiAvPlxuICAgICAgICAgICAgICAgICAgICA8aW1nICpuZ0lmPVwiZm9ybS52YWx1ZS5JbWFnZUFzRGF0YVVSTCAmJiBmb3JtLnZhbHVlLkltYWdlQXNEYXRhVVJMICE9PSAnJ1wiIFtzcmNdPVwiZm9ybS52YWx1ZS5JbWFnZUFzRGF0YVVSTFwiIHN0eWxlPVwiaGVpZ2h0OiA0MHB4OyB3aWR0aDogZml0LWNvbnRlbnQ7XCIgLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiXCI+e3tmb3JtLnZhbHVlLkZpbGVuYW1lfX08L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKGNsaWNrKT1cInJlbW92ZUZyb21MaXN0KClcIiAqbmdJZj1cImFsbG93UmVtb3ZlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8a21zLWljb24gaWNvbj1cInRyYXNoXCIgW3NpemVdPVwiSWNvblNpemVQeC5USU5ZXCIgaWNvbkNsYXNzPVwiY29sb3ItYmxhY2tcIj48L2ttcy1pY29uPiBcbiAgICAgICAgICAgICAgICAgICAgICAgIHt7ICdmaWxlLWlucHV0LnJlbW92ZScgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiAqbmdJZj1cIiFwcmV2aWV3SW1hZ2VcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIlwiPnt7Zm9ybS52YWx1ZS5GaWxlbmFtZX19PC9kaXY+XG4gICAgPC9kaXY+XG5cbiAgICA8YnV0dG9uIChjbGljayk9XCJzZWxlY3RJbWFnZU92ZXJsYXkoKVwiIGNsYXNzPVwiYnV0dG9uLXByaW1hcnktZm9udC1jb2xvclwiIG1hdC1zdHJva2VkLWJ1dHRvbj5cbiAgICAgICAgPHNwYW4+e3sgbGFiZWwgfX08L3NwYW4+XG4gICAgPC9idXR0b24+XG4gICAgPGlucHV0XG4gICAgICAgIHR5cGU9XCJmaWxlXCJcbiAgICAgICAgW2FjY2VwdF09XCJhY2NlcHRlZEZpbGVNaW1ldHlwZXNcIlxuICAgICAgICBzdHlsZT1cImRpc3BsYXk6IG5vbmVcIlxuICAgICAgICAjZmlsZUlucHV0XG4gICAgICAgIChjbGljayk9XCJjbGVhcklucHV0VmFsdWUoJGV2ZW50KVwiXG4gICAgICAgIChjaGFuZ2UpPVwic2VsZWN0SW1hZ2UoJGV2ZW50KVwiXG4gICAgLz5cblxuICAgIDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgW2Zvcm1Db250cm9sXT1cImZvcm0uY29udHJvbHNbJ0ltYWdlSWRlbnQnXVwiIC8+XG4gICAgPGlucHV0IHR5cGU9XCJoaWRkZW5cIiBbZm9ybUNvbnRyb2xdPVwiZm9ybS5jb250cm9sc1snSW1hZ2VMaW5rJ11cIiAvPlxuICAgIDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgW2Zvcm1Db250cm9sXT1cImZvcm0uY29udHJvbHNbJ0ZpbGVuYW1lJ11cIiAvPlxuICAgIDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgW2Zvcm1Db250cm9sXT1cImZvcm0uY29udHJvbHNbJ0ltYWdlQXNEYXRhVVJMJ11cIiAvPlxuICAgIDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgW2Zvcm1Db250cm9sXT1cImZvcm0uY29udHJvbHNbJ1RleHQnXVwiIC8+XG5cbjwvZm9ybT4iXX0=
@@ -45,7 +45,7 @@ export class FlyoutComponent {
45
45
  this.targetHeight = `${contentHeight}px`;
46
46
  }
47
47
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FlyoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
48
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FlyoutComponent, selector: "kms-flyout", inputs: { icon: "icon", headerCssClass: "headerCssClass", bodyCssClass: "bodyCssClass", headerTitle: "headerTitle", headerText: "headerText", hasButtonForMore: "hasButtonForMore", moreText: "moreText", lessText: "lessText" }, viewQueries: [{ propertyName: "content", first: true, predicate: ["content"], descendants: true }, { propertyName: "flyoutHeader", first: true, predicate: ["flyoutHeader"], descendants: true }], ngImport: i0, template: "<div class=\"flyout\" [ngClass]=\"{ 'is-active': isDropdownOpened }\">\n <div\n class=\"flyout-header\"\n (click)=\"toggleDropdownHeader()\"\n [ngClass]=\"headerCssClass\"\n >\n <span [innerHtml]=\"headerTitle | kmsSafeHtml\"></span>\n <span [innerHtml]=\"headerText | kmsSafeHtml\"></span>\n\n <ng-content select=\"[header]\"></ng-content>\n\n <div\n *ngIf=\"hasButtonForMore\"\n (click)=\"toggleDropdown()\"\n class=\"flyout-header-more\"\n >\n <span *ngIf=\"!isDropdownOpened\">\n {{ moreText }}\n <kms-icon [icon]=\"'chevron-down'\" [size]=\"16\"> </kms-icon>\n </span>\n <span *ngIf=\"isDropdownOpened\">\n {{ lessText }}\n <kms-icon [icon]=\"'chevron-top'\" [size]=\"16\"> </kms-icon>\n </span>\n </div>\n </div>\n <div\n class=\"flyout-body\"\n [ngClass]=\"bodyCssClass\"\n tabindex=\"0\"\n [@dropdownAnimation]=\"{\n value: isDropdownOpened,\n params: { targetHeight: targetHeight, animationTime: '500' }\n }\"\n getMaxHeight=\"inner\"\n (sumOfHeight)=\"setDropdownListHeight($event)\"\n #flyoutHeader\n >\n <div class=\"inner\" #content *ngIf=\"isDropdownOpened || !hasButtonForMore\">\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.GetMaxHeightDirective, selector: "[getMaxHeight]", inputs: ["getMaxHeight"], outputs: ["maxHeightChanged", "sumOfHeight"] }, { kind: "directive", type: i3.SizeDirective, selector: "[size]", inputs: ["size"] }, { kind: "component", type: i4.IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "iconStyle", "iconSize", "size", "dontUseSprite"] }, { kind: "pipe", type: i5.SafeHtmlPipe, name: "kmsSafeHtml" }], animations: [
48
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FlyoutComponent, selector: "kms-flyout", inputs: { icon: "icon", headerCssClass: "headerCssClass", bodyCssClass: "bodyCssClass", headerTitle: "headerTitle", headerText: "headerText", hasButtonForMore: "hasButtonForMore", moreText: "moreText", lessText: "lessText" }, viewQueries: [{ propertyName: "content", first: true, predicate: ["content"], descendants: true }, { propertyName: "flyoutHeader", first: true, predicate: ["flyoutHeader"], descendants: true }], ngImport: i0, template: "<div class=\"flyout\" [ngClass]=\"{ 'is-active': isDropdownOpened }\">\n <div\n class=\"flyout-header\"\n (click)=\"toggleDropdownHeader()\"\n [ngClass]=\"headerCssClass\"\n >\n <span [innerHtml]=\"headerTitle | kmsSafeHtml\"></span>\n <span [innerHtml]=\"headerText | kmsSafeHtml\"></span>\n\n <ng-content select=\"[header]\"></ng-content>\n\n <div\n *ngIf=\"hasButtonForMore\"\n (click)=\"toggleDropdown()\"\n class=\"flyout-header-more\"\n >\n <span *ngIf=\"!isDropdownOpened\">\n {{ moreText }}\n <kms-icon [icon]=\"'chevron-down'\" [size]=\"16\"> </kms-icon>\n </span>\n <span *ngIf=\"isDropdownOpened\">\n {{ lessText }}\n <kms-icon [icon]=\"'chevron-top'\" [size]=\"16\"> </kms-icon>\n </span>\n </div>\n </div>\n <div\n class=\"flyout-body\"\n [ngClass]=\"bodyCssClass\"\n tabindex=\"0\"\n [@dropdownAnimation]=\"{\n value: isDropdownOpened,\n params: { targetHeight: targetHeight, animationTime: '500' }\n }\"\n getMaxHeight=\"inner\"\n (sumOfHeight)=\"setDropdownListHeight($event)\"\n #flyoutHeader\n >\n <div class=\"inner\" #content *ngIf=\"isDropdownOpened || !hasButtonForMore\">\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.GetMaxHeightDirective, selector: "[getMaxHeight]", inputs: ["getMaxHeight"], outputs: ["maxHeightChanged", "sumOfHeight"] }, { kind: "directive", type: i3.SizeDirective, selector: "[size]", inputs: ["size"] }, { kind: "component", type: i4.IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "size", "dontUseSprite", "color"] }, { kind: "pipe", type: i5.SafeHtmlPipe, name: "kmsSafeHtml" }], animations: [
49
49
  trigger('dropdownAnimation', [
50
50
  state('true', style({
51
51
  height: '{{targetHeight}}',
@@ -117,4 +117,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
117
117
  type: ViewChild,
118
118
  args: ['flyoutHeader']
119
119
  }] } });
120
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmx5b3V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2xpYi91aS9mbHlvdXQvZmx5b3V0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2xpYi91aS9mbHlvdXQvZmx5b3V0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7O0FBc0N4RSxNQUFNLE9BQU8sZUFBZTtJQXBDNUI7UUFxQ1csU0FBSSxHQUFHLFFBQVEsQ0FBQztRQUV6QixxQkFBZ0IsR0FBRyxLQUFLLENBQUM7UUFDekIsaUJBQVksR0FBRyxHQUFHLENBQUM7UUFDbkIsa0JBQWEsR0FBRyxJQUFJLENBQUM7UUFFWixtQkFBYyxHQUFHLEVBQUUsQ0FBQztRQUNwQixpQkFBWSxHQUFHLEVBQUUsQ0FBQztRQUVsQixnQkFBVyxHQUFHLEVBQUUsQ0FBQztRQUNqQixlQUFVLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLHFCQUFnQixHQUFHLEtBQUssQ0FBQztRQUN6QixhQUFRLEdBQUcsRUFBRSxDQUFDO1FBQ2QsYUFBUSxHQUFHLEVBQUUsQ0FBQztLQTZCeEI7SUF2QkM7OztPQUdHO0lBQ0gsb0JBQW9CO1FBQ2xCLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUMzQixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDeEIsQ0FBQztJQUNILENBQUM7SUFFRDs7T0FFRztJQUNILGNBQWM7UUFDWixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7SUFDakQsQ0FBQztJQUVEOztPQUVHO0lBQ0gscUJBQXFCLENBQUMsYUFBcUI7UUFDekMsSUFBSSxDQUFDLFlBQVksR0FBRyxHQUFHLGFBQWEsSUFBSSxDQUFDO0lBQzNDLENBQUM7K0dBMUNVLGVBQWU7bUdBQWYsZUFBZSx1ZEMzQzVCLDZ3Q0EyQ0Esa3JCRGhDYztZQUNWLE9BQU8sQ0FBQyxtQkFBbUIsRUFBRTtnQkFDM0IsS0FBSyxDQUNILE1BQU0sRUFDTixLQUFLLENBQUM7b0JBQ0osTUFBTSxFQUFFLGtCQUFrQjtvQkFDMUIsVUFBVSxFQUFFLHdDQUF3QztpQkFDckQsQ0FBQyxFQUNGO29CQUNFLE1BQU0sRUFBRTt3QkFDTixZQUFZLEVBQUUsT0FBTzt3QkFDckIsYUFBYSxFQUFFLElBQUk7cUJBQ3BCO2lCQUNGLENBQ0Y7Z0JBQ0QsS0FBSyxDQUNILE9BQU8sRUFDUCxLQUFLLENBQUM7b0JBQ0osTUFBTSxFQUFFLENBQUM7b0JBQ1QsVUFBVSxFQUFFLHdDQUF3QztpQkFDckQsQ0FBQyxFQUNGO29CQUNFLE1BQU0sRUFBRTt3QkFDTixZQUFZLEVBQUUsT0FBTzt3QkFDckIsT0FBTyxFQUFFLENBQUM7d0JBQ1YsYUFBYSxFQUFFLElBQUk7cUJBQ3BCO2lCQUNGLENBQ0Y7YUFDRixDQUFDO1NBQ0g7OzRGQUVVLGVBQWU7a0JBcEMzQixTQUFTOytCQUNFLFlBQVksY0FHVjt3QkFDVixPQUFPLENBQUMsbUJBQW1CLEVBQUU7NEJBQzNCLEtBQUssQ0FDSCxNQUFNLEVBQ04sS0FBSyxDQUFDO2dDQUNKLE1BQU0sRUFBRSxrQkFBa0I7Z0NBQzFCLFVBQVUsRUFBRSx3Q0FBd0M7NkJBQ3JELENBQUMsRUFDRjtnQ0FDRSxNQUFNLEVBQUU7b0NBQ04sWUFBWSxFQUFFLE9BQU87b0NBQ3JCLGFBQWEsRUFBRSxJQUFJO2lDQUNwQjs2QkFDRixDQUNGOzRCQUNELEtBQUssQ0FDSCxPQUFPLEVBQ1AsS0FBSyxDQUFDO2dDQUNKLE1BQU0sRUFBRSxDQUFDO2dDQUNULFVBQVUsRUFBRSx3Q0FBd0M7NkJBQ3JELENBQUMsRUFDRjtnQ0FDRSxNQUFNLEVBQUU7b0NBQ04sWUFBWSxFQUFFLE9BQU87b0NBQ3JCLE9BQU8sRUFBRSxDQUFDO29DQUNWLGFBQWEsRUFBRSxJQUFJO2lDQUNwQjs2QkFDRixDQUNGO3lCQUNGLENBQUM7cUJBQ0g7OEJBR1EsSUFBSTtzQkFBWixLQUFLO2dCQU1HLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFFRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFFZ0IsT0FBTztzQkFBNUIsU0FBUzt1QkFBQyxTQUFTO2dCQUVPLFlBQVk7c0JBQXRDLFNBQVM7dUJBQUMsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGNvcHlyaWdodCBLTVMgR21iSFxuICovXG5cbmltcG9ydCB7IHN0YXRlLCBzdHlsZSwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ttcy1mbHlvdXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vZmx5b3V0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZmx5b3V0LmNvbXBvbmVudC5zY3NzJ10sXG4gIGFuaW1hdGlvbnM6IFtcbiAgICB0cmlnZ2VyKCdkcm9wZG93bkFuaW1hdGlvbicsIFtcbiAgICAgIHN0YXRlKFxuICAgICAgICAndHJ1ZScsXG4gICAgICAgIHN0eWxlKHtcbiAgICAgICAgICBoZWlnaHQ6ICd7e3RhcmdldEhlaWdodH19JyxcbiAgICAgICAgICB0cmFuc2l0aW9uOiAnaGVpZ2h0IHt7YW5pbWF0aW9uVGltZX19bXMgZWFzZS1pbi1vdXQnLFxuICAgICAgICB9KSxcbiAgICAgICAge1xuICAgICAgICAgIHBhcmFtczoge1xuICAgICAgICAgICAgdGFyZ2V0SGVpZ2h0OiAnMzAwcHgnLFxuICAgICAgICAgICAgYW5pbWF0aW9uVGltZTogMzAwMCxcbiAgICAgICAgICB9LFxuICAgICAgICB9XG4gICAgICApLFxuICAgICAgc3RhdGUoXG4gICAgICAgICdmYWxzZScsXG4gICAgICAgIHN0eWxlKHtcbiAgICAgICAgICBoZWlnaHQ6IDAsXG4gICAgICAgICAgdHJhbnNpdGlvbjogJ2hlaWdodCB7e2FuaW1hdGlvblRpbWV9fW1zIGVhc2UtaW4tb3V0JyxcbiAgICAgICAgfSksXG4gICAgICAgIHtcbiAgICAgICAgICBwYXJhbXM6IHtcbiAgICAgICAgICAgIHRhcmdldEhlaWdodDogJzMwMHB4JyxcbiAgICAgICAgICAgIG9wYWNpdHk6IDAsXG4gICAgICAgICAgICBhbmltYXRpb25UaW1lOiAzMDAwLFxuICAgICAgICAgIH0sXG4gICAgICAgIH1cbiAgICAgICksXG4gICAgXSksXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEZseW91dENvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGljb24gPSAnZmlsdGVyJztcblxuICBpc0Ryb3Bkb3duT3BlbmVkID0gZmFsc2U7XG4gIHRhcmdldEhlaWdodCA9ICcwJztcbiAgYW5pbWF0aW9uVGltZSA9IDUwMDA7XG5cbiAgQElucHV0KCkgaGVhZGVyQ3NzQ2xhc3MgPSAnJztcbiAgQElucHV0KCkgYm9keUNzc0NsYXNzID0gJyc7XG5cbiAgQElucHV0KCkgaGVhZGVyVGl0bGUgPSAnJztcbiAgQElucHV0KCkgaGVhZGVyVGV4dCA9ICcnO1xuICBASW5wdXQoKSBoYXNCdXR0b25Gb3JNb3JlID0gZmFsc2U7XG4gIEBJbnB1dCgpIG1vcmVUZXh0ID0gJyc7XG4gIEBJbnB1dCgpIGxlc3NUZXh0ID0gJyc7XG5cbiAgQFZpZXdDaGlsZCgnY29udGVudCcpIGNvbnRlbnQ6IEVsZW1lbnRSZWYgfCB1bmRlZmluZWQ7XG5cbiAgQFZpZXdDaGlsZCgnZmx5b3V0SGVhZGVyJykgZmx5b3V0SGVhZGVyOiBFbGVtZW50UmVmIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBPcGVuL2Nsb3NlIGRyb3Bkb3duIGlmIGNsaWNrIG9uIGhlYWRlci5cbiAgICogRXhjZXB0LCBpZiBtb2RlIGlzIHNldCB0byBoYXNCdXR0b25Gb3JNb3JlLiBXaGVuIHRoZXJlIGlzIGEgZXh0cmEgYnV0dG9uIHRvIG9wZW4vY2xvc2VcbiAgICovXG4gIHRvZ2dsZURyb3Bkb3duSGVhZGVyKCkge1xuICAgIGlmICghdGhpcy5oYXNCdXR0b25Gb3JNb3JlKSB7XG4gICAgICB0aGlzLnRvZ2dsZURyb3Bkb3duKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIE9wZW4gb3IgY2xvc2UgdGhlIGRyb3Bkb3duXG4gICAqL1xuICB0b2dnbGVEcm9wZG93bigpIHtcbiAgICB0aGlzLmlzRHJvcGRvd25PcGVuZWQgPSAhdGhpcy5pc0Ryb3Bkb3duT3BlbmVkO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgaGVpZ2h0IG9mIHRoZSBkcm9wZG93biBsaXN0IGl0ZW1zIGR5bmFtaWMgLSBuZWVkZWQgZm9yIHRoZSBhbmltYXRpb25cbiAgICovXG4gIHNldERyb3Bkb3duTGlzdEhlaWdodChjb250ZW50SGVpZ2h0OiBudW1iZXIpIHtcbiAgICB0aGlzLnRhcmdldEhlaWdodCA9IGAke2NvbnRlbnRIZWlnaHR9cHhgO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZmx5b3V0XCIgW25nQ2xhc3NdPVwieyAnaXMtYWN0aXZlJzogaXNEcm9wZG93bk9wZW5lZCB9XCI+XG4gIDxkaXZcbiAgICBjbGFzcz1cImZseW91dC1oZWFkZXJcIlxuICAgIChjbGljayk9XCJ0b2dnbGVEcm9wZG93bkhlYWRlcigpXCJcbiAgICBbbmdDbGFzc109XCJoZWFkZXJDc3NDbGFzc1wiXG4gID5cbiAgICA8c3BhbiBbaW5uZXJIdG1sXT1cImhlYWRlclRpdGxlIHwga21zU2FmZUh0bWxcIj48L3NwYW4+XG4gICAgPHNwYW4gW2lubmVySHRtbF09XCJoZWFkZXJUZXh0IHwga21zU2FmZUh0bWxcIj48L3NwYW4+XG5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbaGVhZGVyXVwiPjwvbmctY29udGVudD5cblxuICAgIDxkaXZcbiAgICAgICpuZ0lmPVwiaGFzQnV0dG9uRm9yTW9yZVwiXG4gICAgICAoY2xpY2spPVwidG9nZ2xlRHJvcGRvd24oKVwiXG4gICAgICBjbGFzcz1cImZseW91dC1oZWFkZXItbW9yZVwiXG4gICAgPlxuICAgICAgPHNwYW4gKm5nSWY9XCIhaXNEcm9wZG93bk9wZW5lZFwiPlxuICAgICAgICB7eyBtb3JlVGV4dCB9fVxuICAgICAgICA8a21zLWljb24gW2ljb25dPVwiJ2NoZXZyb24tZG93bidcIiBbc2l6ZV09XCIxNlwiPiA8L2ttcy1pY29uPlxuICAgICAgPC9zcGFuPlxuICAgICAgPHNwYW4gKm5nSWY9XCJpc0Ryb3Bkb3duT3BlbmVkXCI+XG4gICAgICAgIHt7IGxlc3NUZXh0IH19XG4gICAgICAgIDxrbXMtaWNvbiBbaWNvbl09XCInY2hldnJvbi10b3AnXCIgW3NpemVdPVwiMTZcIj4gPC9rbXMtaWNvbj5cbiAgICAgIDwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxkaXZcbiAgICBjbGFzcz1cImZseW91dC1ib2R5XCJcbiAgICBbbmdDbGFzc109XCJib2R5Q3NzQ2xhc3NcIlxuICAgIHRhYmluZGV4PVwiMFwiXG4gICAgW0Bkcm9wZG93bkFuaW1hdGlvbl09XCJ7XG4gICAgICB2YWx1ZTogaXNEcm9wZG93bk9wZW5lZCxcbiAgICAgIHBhcmFtczogeyB0YXJnZXRIZWlnaHQ6IHRhcmdldEhlaWdodCwgYW5pbWF0aW9uVGltZTogJzUwMCcgfVxuICAgIH1cIlxuICAgIGdldE1heEhlaWdodD1cImlubmVyXCJcbiAgICAoc3VtT2ZIZWlnaHQpPVwic2V0RHJvcGRvd25MaXN0SGVpZ2h0KCRldmVudClcIlxuICAgICNmbHlvdXRIZWFkZXJcbiAgPlxuICAgIDxkaXYgY2xhc3M9XCJpbm5lclwiICNjb250ZW50ICpuZ0lmPVwiaXNEcm9wZG93bk9wZW5lZCB8fCAhaGFzQnV0dG9uRm9yTW9yZVwiPlxuICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
120
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmx5b3V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2xpYi91aS9mbHlvdXQvZmx5b3V0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2xpYi91aS9mbHlvdXQvZmx5b3V0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7O0FBc0N4RSxNQUFNLE9BQU8sZUFBZTtJQXBDNUI7UUFxQ1csU0FBSSxHQUFHLFFBQVEsQ0FBQztRQUV6QixxQkFBZ0IsR0FBRyxLQUFLLENBQUM7UUFDekIsaUJBQVksR0FBRyxHQUFHLENBQUM7UUFDbkIsa0JBQWEsR0FBRyxJQUFJLENBQUM7UUFFWixtQkFBYyxHQUFHLEVBQUUsQ0FBQztRQUNwQixpQkFBWSxHQUFHLEVBQUUsQ0FBQztRQUVsQixnQkFBVyxHQUFHLEVBQUUsQ0FBQztRQUNqQixlQUFVLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLHFCQUFnQixHQUFHLEtBQUssQ0FBQztRQUN6QixhQUFRLEdBQUcsRUFBRSxDQUFDO1FBQ2QsYUFBUSxHQUFHLEVBQUUsQ0FBQztLQTZCeEI7SUF2QkM7OztPQUdHO0lBQ0gsb0JBQW9CO1FBQ2xCLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUMzQixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDeEIsQ0FBQztJQUNILENBQUM7SUFFRDs7T0FFRztJQUNILGNBQWM7UUFDWixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7SUFDakQsQ0FBQztJQUVEOztPQUVHO0lBQ0gscUJBQXFCLENBQUMsYUFBcUI7UUFDekMsSUFBSSxDQUFDLFlBQVksR0FBRyxHQUFHLGFBQWEsSUFBSSxDQUFDO0lBQzNDLENBQUM7K0dBMUNVLGVBQWU7bUdBQWYsZUFBZSx1ZEMzQzVCLDZ3Q0EyQ0Esa3FCRGhDYztZQUNWLE9BQU8sQ0FBQyxtQkFBbUIsRUFBRTtnQkFDM0IsS0FBSyxDQUNILE1BQU0sRUFDTixLQUFLLENBQUM7b0JBQ0osTUFBTSxFQUFFLGtCQUFrQjtvQkFDMUIsVUFBVSxFQUFFLHdDQUF3QztpQkFDckQsQ0FBQyxFQUNGO29CQUNFLE1BQU0sRUFBRTt3QkFDTixZQUFZLEVBQUUsT0FBTzt3QkFDckIsYUFBYSxFQUFFLElBQUk7cUJBQ3BCO2lCQUNGLENBQ0Y7Z0JBQ0QsS0FBSyxDQUNILE9BQU8sRUFDUCxLQUFLLENBQUM7b0JBQ0osTUFBTSxFQUFFLENBQUM7b0JBQ1QsVUFBVSxFQUFFLHdDQUF3QztpQkFDckQsQ0FBQyxFQUNGO29CQUNFLE1BQU0sRUFBRTt3QkFDTixZQUFZLEVBQUUsT0FBTzt3QkFDckIsT0FBTyxFQUFFLENBQUM7d0JBQ1YsYUFBYSxFQUFFLElBQUk7cUJBQ3BCO2lCQUNGLENBQ0Y7YUFDRixDQUFDO1NBQ0g7OzRGQUVVLGVBQWU7a0JBcEMzQixTQUFTOytCQUNFLFlBQVksY0FHVjt3QkFDVixPQUFPLENBQUMsbUJBQW1CLEVBQUU7NEJBQzNCLEtBQUssQ0FDSCxNQUFNLEVBQ04sS0FBSyxDQUFDO2dDQUNKLE1BQU0sRUFBRSxrQkFBa0I7Z0NBQzFCLFVBQVUsRUFBRSx3Q0FBd0M7NkJBQ3JELENBQUMsRUFDRjtnQ0FDRSxNQUFNLEVBQUU7b0NBQ04sWUFBWSxFQUFFLE9BQU87b0NBQ3JCLGFBQWEsRUFBRSxJQUFJO2lDQUNwQjs2QkFDRixDQUNGOzRCQUNELEtBQUssQ0FDSCxPQUFPLEVBQ1AsS0FBSyxDQUFDO2dDQUNKLE1BQU0sRUFBRSxDQUFDO2dDQUNULFVBQVUsRUFBRSx3Q0FBd0M7NkJBQ3JELENBQUMsRUFDRjtnQ0FDRSxNQUFNLEVBQUU7b0NBQ04sWUFBWSxFQUFFLE9BQU87b0NBQ3JCLE9BQU8sRUFBRSxDQUFDO29DQUNWLGFBQWEsRUFBRSxJQUFJO2lDQUNwQjs2QkFDRixDQUNGO3lCQUNGLENBQUM7cUJBQ0g7OEJBR1EsSUFBSTtzQkFBWixLQUFLO2dCQU1HLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFFRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFFZ0IsT0FBTztzQkFBNUIsU0FBUzt1QkFBQyxTQUFTO2dCQUVPLFlBQVk7c0JBQXRDLFNBQVM7dUJBQUMsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGNvcHlyaWdodCBLTVMgR21iSFxuICovXG5cbmltcG9ydCB7IHN0YXRlLCBzdHlsZSwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ttcy1mbHlvdXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vZmx5b3V0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZmx5b3V0LmNvbXBvbmVudC5zY3NzJ10sXG4gIGFuaW1hdGlvbnM6IFtcbiAgICB0cmlnZ2VyKCdkcm9wZG93bkFuaW1hdGlvbicsIFtcbiAgICAgIHN0YXRlKFxuICAgICAgICAndHJ1ZScsXG4gICAgICAgIHN0eWxlKHtcbiAgICAgICAgICBoZWlnaHQ6ICd7e3RhcmdldEhlaWdodH19JyxcbiAgICAgICAgICB0cmFuc2l0aW9uOiAnaGVpZ2h0IHt7YW5pbWF0aW9uVGltZX19bXMgZWFzZS1pbi1vdXQnLFxuICAgICAgICB9KSxcbiAgICAgICAge1xuICAgICAgICAgIHBhcmFtczoge1xuICAgICAgICAgICAgdGFyZ2V0SGVpZ2h0OiAnMzAwcHgnLFxuICAgICAgICAgICAgYW5pbWF0aW9uVGltZTogMzAwMCxcbiAgICAgICAgICB9LFxuICAgICAgICB9XG4gICAgICApLFxuICAgICAgc3RhdGUoXG4gICAgICAgICdmYWxzZScsXG4gICAgICAgIHN0eWxlKHtcbiAgICAgICAgICBoZWlnaHQ6IDAsXG4gICAgICAgICAgdHJhbnNpdGlvbjogJ2hlaWdodCB7e2FuaW1hdGlvblRpbWV9fW1zIGVhc2UtaW4tb3V0JyxcbiAgICAgICAgfSksXG4gICAgICAgIHtcbiAgICAgICAgICBwYXJhbXM6IHtcbiAgICAgICAgICAgIHRhcmdldEhlaWdodDogJzMwMHB4JyxcbiAgICAgICAgICAgIG9wYWNpdHk6IDAsXG4gICAgICAgICAgICBhbmltYXRpb25UaW1lOiAzMDAwLFxuICAgICAgICAgIH0sXG4gICAgICAgIH1cbiAgICAgICksXG4gICAgXSksXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEZseW91dENvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGljb24gPSAnZmlsdGVyJztcblxuICBpc0Ryb3Bkb3duT3BlbmVkID0gZmFsc2U7XG4gIHRhcmdldEhlaWdodCA9ICcwJztcbiAgYW5pbWF0aW9uVGltZSA9IDUwMDA7XG5cbiAgQElucHV0KCkgaGVhZGVyQ3NzQ2xhc3MgPSAnJztcbiAgQElucHV0KCkgYm9keUNzc0NsYXNzID0gJyc7XG5cbiAgQElucHV0KCkgaGVhZGVyVGl0bGUgPSAnJztcbiAgQElucHV0KCkgaGVhZGVyVGV4dCA9ICcnO1xuICBASW5wdXQoKSBoYXNCdXR0b25Gb3JNb3JlID0gZmFsc2U7XG4gIEBJbnB1dCgpIG1vcmVUZXh0ID0gJyc7XG4gIEBJbnB1dCgpIGxlc3NUZXh0ID0gJyc7XG5cbiAgQFZpZXdDaGlsZCgnY29udGVudCcpIGNvbnRlbnQ6IEVsZW1lbnRSZWYgfCB1bmRlZmluZWQ7XG5cbiAgQFZpZXdDaGlsZCgnZmx5b3V0SGVhZGVyJykgZmx5b3V0SGVhZGVyOiBFbGVtZW50UmVmIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBPcGVuL2Nsb3NlIGRyb3Bkb3duIGlmIGNsaWNrIG9uIGhlYWRlci5cbiAgICogRXhjZXB0LCBpZiBtb2RlIGlzIHNldCB0byBoYXNCdXR0b25Gb3JNb3JlLiBXaGVuIHRoZXJlIGlzIGEgZXh0cmEgYnV0dG9uIHRvIG9wZW4vY2xvc2VcbiAgICovXG4gIHRvZ2dsZURyb3Bkb3duSGVhZGVyKCkge1xuICAgIGlmICghdGhpcy5oYXNCdXR0b25Gb3JNb3JlKSB7XG4gICAgICB0aGlzLnRvZ2dsZURyb3Bkb3duKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIE9wZW4gb3IgY2xvc2UgdGhlIGRyb3Bkb3duXG4gICAqL1xuICB0b2dnbGVEcm9wZG93bigpIHtcbiAgICB0aGlzLmlzRHJvcGRvd25PcGVuZWQgPSAhdGhpcy5pc0Ryb3Bkb3duT3BlbmVkO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgaGVpZ2h0IG9mIHRoZSBkcm9wZG93biBsaXN0IGl0ZW1zIGR5bmFtaWMgLSBuZWVkZWQgZm9yIHRoZSBhbmltYXRpb25cbiAgICovXG4gIHNldERyb3Bkb3duTGlzdEhlaWdodChjb250ZW50SGVpZ2h0OiBudW1iZXIpIHtcbiAgICB0aGlzLnRhcmdldEhlaWdodCA9IGAke2NvbnRlbnRIZWlnaHR9cHhgO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZmx5b3V0XCIgW25nQ2xhc3NdPVwieyAnaXMtYWN0aXZlJzogaXNEcm9wZG93bk9wZW5lZCB9XCI+XG4gIDxkaXZcbiAgICBjbGFzcz1cImZseW91dC1oZWFkZXJcIlxuICAgIChjbGljayk9XCJ0b2dnbGVEcm9wZG93bkhlYWRlcigpXCJcbiAgICBbbmdDbGFzc109XCJoZWFkZXJDc3NDbGFzc1wiXG4gID5cbiAgICA8c3BhbiBbaW5uZXJIdG1sXT1cImhlYWRlclRpdGxlIHwga21zU2FmZUh0bWxcIj48L3NwYW4+XG4gICAgPHNwYW4gW2lubmVySHRtbF09XCJoZWFkZXJUZXh0IHwga21zU2FmZUh0bWxcIj48L3NwYW4+XG5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbaGVhZGVyXVwiPjwvbmctY29udGVudD5cblxuICAgIDxkaXZcbiAgICAgICpuZ0lmPVwiaGFzQnV0dG9uRm9yTW9yZVwiXG4gICAgICAoY2xpY2spPVwidG9nZ2xlRHJvcGRvd24oKVwiXG4gICAgICBjbGFzcz1cImZseW91dC1oZWFkZXItbW9yZVwiXG4gICAgPlxuICAgICAgPHNwYW4gKm5nSWY9XCIhaXNEcm9wZG93bk9wZW5lZFwiPlxuICAgICAgICB7eyBtb3JlVGV4dCB9fVxuICAgICAgICA8a21zLWljb24gW2ljb25dPVwiJ2NoZXZyb24tZG93bidcIiBbc2l6ZV09XCIxNlwiPiA8L2ttcy1pY29uPlxuICAgICAgPC9zcGFuPlxuICAgICAgPHNwYW4gKm5nSWY9XCJpc0Ryb3Bkb3duT3BlbmVkXCI+XG4gICAgICAgIHt7IGxlc3NUZXh0IH19XG4gICAgICAgIDxrbXMtaWNvbiBbaWNvbl09XCInY2hldnJvbi10b3AnXCIgW3NpemVdPVwiMTZcIj4gPC9rbXMtaWNvbj5cbiAgICAgIDwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxkaXZcbiAgICBjbGFzcz1cImZseW91dC1ib2R5XCJcbiAgICBbbmdDbGFzc109XCJib2R5Q3NzQ2xhc3NcIlxuICAgIHRhYmluZGV4PVwiMFwiXG4gICAgW0Bkcm9wZG93bkFuaW1hdGlvbl09XCJ7XG4gICAgICB2YWx1ZTogaXNEcm9wZG93bk9wZW5lZCxcbiAgICAgIHBhcmFtczogeyB0YXJnZXRIZWlnaHQ6IHRhcmdldEhlaWdodCwgYW5pbWF0aW9uVGltZTogJzUwMCcgfVxuICAgIH1cIlxuICAgIGdldE1heEhlaWdodD1cImlubmVyXCJcbiAgICAoc3VtT2ZIZWlnaHQpPVwic2V0RHJvcGRvd25MaXN0SGVpZ2h0KCRldmVudClcIlxuICAgICNmbHlvdXRIZWFkZXJcbiAgPlxuICAgIDxkaXYgY2xhc3M9XCJpbm5lclwiICNjb250ZW50ICpuZ0lmPVwiaXNEcm9wZG93bk9wZW5lZCB8fCAhaGFzQnV0dG9uRm9yTW9yZVwiPlxuICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -1,8 +1,9 @@
1
1
  /**
2
2
  * @copyright KMS GmbH
3
3
  */
4
- import { Component, Input, VERSION } from '@angular/core';
5
- import { IconSize } from './iconSize.enum';
4
+ import { Component, input, VERSION } from '@angular/core';
5
+ import { Color } from '../../enums/colors.enum';
6
+ import { IconSizePx } from '../../enums/iconSize.enum';
6
7
  import * as i0 from "@angular/core";
7
8
  import * as i1 from "@angular/platform-browser";
8
9
  import * as i2 from "@angular/common";
@@ -10,37 +11,24 @@ export class IconComponent {
10
11
  constructor(sanitizer) {
11
12
  this.sanitizer = sanitizer;
12
13
  /**
13
- * Optional: Different size via CSS inline style.
14
- * @deprecated. Please use size instead
14
+ * Required: Name of the SVG icon inside your sprite sheet file with name 'icons.svg'.
15
+ * Pass 'none' if no icon should be rendered.
15
16
  */
16
- this.iconSize = IconSize.FULLSIZE;
17
- this.dontUseSprite = false;
18
- this.IconSize = IconSize;
17
+ this.icon = input();
18
+ /**
19
+ * Optional: Different appearance via CSS class defined in this component´s style sheet.
20
+ */
21
+ this.iconClass = input('');
22
+ this.size = input(IconSizePx.XS);
23
+ this.dontUseSprite = input(false);
24
+ this.color = input(Color.BLACK);
19
25
  this.Version = VERSION.full;
20
- this.timestamp = 0;
21
- }
22
- ngOnInit() {
23
- const d = new Date();
24
- const n = d.getTime();
25
- this.timestamp = n;
26
26
  }
27
27
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IconComponent, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component }); }
28
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: IconComponent, selector: "kms-icon", inputs: { icon: "icon", iconClass: "iconClass", iconStyle: "iconStyle", iconSize: "iconSize", size: "size", dontUseSprite: "dontUseSprite" }, ngImport: i0, template: "<ng-container *ngIf=\"icon !== 'none' && dontUseSprite === false\">\n <span\n class=\"icon {{ iconSize }}\"\n [ngClass]=\"iconClass\"\n [ngStyle]=\"iconStyle\"\n [style.width.px]=\"size\"\n [style.height.px]=\"size\"\n >\n <svg>\n <use\n [attr.xlink:href]=\"'assets/sprite.svg?Version=' + Version + '#' + icon\"\n ></use>\n </svg>\n </span>\n</ng-container>\n<ng-container *ngIf=\"icon !== 'none' && dontUseSprite === true\">\n <object\n [data]=\"\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/' + icon + '')\n \"\n type=\"image/svg+xml\"\n class=\"icon {{ iconSize }}\"\n [ngClass]=\"iconClass\"\n [ngStyle]=\"iconStyle\"\n ></object>\n</ng-container>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
28
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: IconComponent, selector: "kms-icon", inputs: { icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, iconClass: { classPropertyName: "iconClass", publicName: "iconClass", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, dontUseSprite: { classPropertyName: "dontUseSprite", publicName: "dontUseSprite", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<ng-container *ngIf=\"icon() !== 'none' && dontUseSprite() === false\">\n <span\n class=\"icon\"\n [ngClass]=\"iconClass()\"\n [ngStyle]=\"{\n color: 'var(' + color() + ')'\n }\"\n [style.width.px]=\"size()\"\n [style.height.px]=\"size()\"\n >\n <svg>\n <use\n [attr.xlink:href]=\"\n 'assets/sprite.svg?Version=' + Version + '#' + icon()\n \"\n ></use>\n </svg>\n </span>\n</ng-container>\n<ng-container *ngIf=\"icon() !== 'none' && dontUseSprite() === true\">\n <object\n [data]=\"\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/' + icon() + '')\n \"\n type=\"image/svg+xml\"\n class=\"icon\"\n [ngClass]=\"iconClass()\"\n [ngStyle]=\"iconStyle()\"\n ></object>\n</ng-container>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
29
29
  }
30
30
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IconComponent, decorators: [{
31
31
  type: Component,
32
- args: [{ selector: 'kms-icon', template: "<ng-container *ngIf=\"icon !== 'none' && dontUseSprite === false\">\n <span\n class=\"icon {{ iconSize }}\"\n [ngClass]=\"iconClass\"\n [ngStyle]=\"iconStyle\"\n [style.width.px]=\"size\"\n [style.height.px]=\"size\"\n >\n <svg>\n <use\n [attr.xlink:href]=\"'assets/sprite.svg?Version=' + Version + '#' + icon\"\n ></use>\n </svg>\n </span>\n</ng-container>\n<ng-container *ngIf=\"icon !== 'none' && dontUseSprite === true\">\n <object\n [data]=\"\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/' + icon + '')\n \"\n type=\"image/svg+xml\"\n class=\"icon {{ iconSize }}\"\n [ngClass]=\"iconClass\"\n [ngStyle]=\"iconStyle\"\n ></object>\n</ng-container>\n" }]
33
- }], ctorParameters: () => [{ type: i1.DomSanitizer }], propDecorators: { icon: [{
34
- type: Input
35
- }], iconClass: [{
36
- type: Input
37
- }], iconStyle: [{
38
- type: Input
39
- }], iconSize: [{
40
- type: Input
41
- }], size: [{
42
- type: Input
43
- }], dontUseSprite: [{
44
- type: Input
45
- }] } });
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rbXMtbmd4LXVpLXByZXNlbnRhdGlvbmFsL3NyYy9saWIvdWkvaWNvbi9pY29uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2xpYi91aS9pY29uL2ljb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxPQUFPLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJbEUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7O0FBTzNDLE1BQU0sT0FBTyxhQUFhO0lBaUN4QixZQUFtQixTQUF1QjtRQUF2QixjQUFTLEdBQVQsU0FBUyxDQUFjO1FBZjFDOzs7V0FHRztRQUNNLGFBQVEsR0FBYSxRQUFRLENBQUMsUUFBUSxDQUFDO1FBSXZDLGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBRS9CLGFBQVEsR0FBRyxRQUFRLENBQUM7UUFDcEIsWUFBTyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUM7UUFFaEIsY0FBUyxHQUFHLENBQUMsQ0FBQztJQUV3QixDQUFDO0lBRTlDLFFBQVE7UUFDTixNQUFNLENBQUMsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ3JCLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUN0QixJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQztJQUNyQixDQUFDOytHQXZDVSxhQUFhO21HQUFiLGFBQWEsOExDZjFCLDZ0QkEwQkE7OzRGRFhhLGFBQWE7a0JBTHpCLFNBQVM7K0JBQ0UsVUFBVTtpRkFTWCxJQUFJO3NCQUFaLEtBQUs7Z0JBS0csU0FBUztzQkFBakIsS0FBSztnQkFNRyxTQUFTO3NCQUFqQixLQUFLO2dCQU1HLFFBQVE7c0JBQWhCLEtBQUs7Z0JBRUcsSUFBSTtzQkFBWixLQUFLO2dCQUVHLGFBQWE7c0JBQXJCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBjb3B5cmlnaHQgS01TIEdtYkhcbiAqL1xuXG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQsIFZFUlNJT04gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERvbVNhbml0aXplciB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuXG5pbXBvcnQgKiBhcyBjb2xvcnMgZnJvbSAnLi4vLi4vLi4vYXNzZXRzL2ljb25zLmpzb24nO1xuaW1wb3J0IHsgSWNvblNpemUgfSBmcm9tICcuL2ljb25TaXplLmVudW0nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdrbXMtaWNvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9pY29uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaWNvbi5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBJY29uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgLyoqXG4gICAqIFJlcXVpcmVkOiBOYW1lIG9mIHRoZSBTVkcgaWNvbiBpbnNpZGUgeW91ciBzcHJpdGUgc2hlZXQgZmlsZSB3aXRoIG5hbWUgJ2ljb25zLnN2ZycuXG4gICAqIFBhc3MgJ25vbmUnIGlmIG5vIGljb24gc2hvdWxkIGJlIHJlbmRlcmVkLlxuICAgKi9cbiAgQElucHV0KCkgaWNvbiE6ICh0eXBlb2YgY29sb3JzKVtudW1iZXJdO1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbDogRGlmZmVyZW50IGFwcGVhcmFuY2UgdmlhIENTUyBjbGFzcyBkZWZpbmVkIGluIHRoaXMgY29tcG9uZW50wrRzIHN0eWxlIHNoZWV0LlxuICAgKi9cbiAgQElucHV0KCkgaWNvbkNsYXNzITogc3RyaW5nIHwgJyc7XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsOiBEaWZmZXJlbnQgYXBwZWFyYW5jZSB2aWEgQ1NTIGlubGluZSBzdHlsZS5cbiAgICovXG5cbiAgQElucHV0KCkgaWNvblN0eWxlOiBhbnk7XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsOiBEaWZmZXJlbnQgc2l6ZSB2aWEgQ1NTIGlubGluZSBzdHlsZS5cbiAgICogQGRlcHJlY2F0ZWQuIFBsZWFzZSB1c2Ugc2l6ZSBpbnN0ZWFkXG4gICAqL1xuICBASW5wdXQoKSBpY29uU2l6ZTogSWNvblNpemUgPSBJY29uU2l6ZS5GVUxMU0laRTtcblxuICBASW5wdXQoKSBzaXplPzogc3RyaW5nO1xuXG4gIEBJbnB1dCgpIGRvbnRVc2VTcHJpdGUgPSBmYWxzZTtcblxuICBJY29uU2l6ZSA9IEljb25TaXplO1xuICBWZXJzaW9uID0gVkVSU0lPTi5mdWxsO1xuXG4gIHB1YmxpYyB0aW1lc3RhbXAgPSAwO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBzYW5pdGl6ZXI6IERvbVNhbml0aXplcikge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICBjb25zdCBkID0gbmV3IERhdGUoKTtcbiAgICBjb25zdCBuID0gZC5nZXRUaW1lKCk7XG4gICAgdGhpcy50aW1lc3RhbXAgPSBuO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiaWNvbiAhPT0gJ25vbmUnICYmIGRvbnRVc2VTcHJpdGUgPT09IGZhbHNlXCI+XG4gIDxzcGFuXG4gICAgY2xhc3M9XCJpY29uIHt7IGljb25TaXplIH19XCJcbiAgICBbbmdDbGFzc109XCJpY29uQ2xhc3NcIlxuICAgIFtuZ1N0eWxlXT1cImljb25TdHlsZVwiXG4gICAgW3N0eWxlLndpZHRoLnB4XT1cInNpemVcIlxuICAgIFtzdHlsZS5oZWlnaHQucHhdPVwic2l6ZVwiXG4gID5cbiAgICA8c3ZnPlxuICAgICAgPHVzZVxuICAgICAgICBbYXR0ci54bGluazpocmVmXT1cIidhc3NldHMvc3ByaXRlLnN2Zz9WZXJzaW9uPScgKyBWZXJzaW9uICsgJyMnICsgaWNvblwiXG4gICAgICA+PC91c2U+XG4gICAgPC9zdmc+XG4gIDwvc3Bhbj5cbjwvbmctY29udGFpbmVyPlxuPG5nLWNvbnRhaW5lciAqbmdJZj1cImljb24gIT09ICdub25lJyAmJiBkb250VXNlU3ByaXRlID09PSB0cnVlXCI+XG4gIDxvYmplY3RcbiAgICBbZGF0YV09XCJcbiAgICAgIHNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0UmVzb3VyY2VVcmwoJ2Fzc2V0cy9pY29ucy8nICsgaWNvbiArICcnKVxuICAgIFwiXG4gICAgdHlwZT1cImltYWdlL3N2Zyt4bWxcIlxuICAgIGNsYXNzPVwiaWNvbiB7eyBpY29uU2l6ZSB9fVwiXG4gICAgW25nQ2xhc3NdPVwiaWNvbkNsYXNzXCJcbiAgICBbbmdTdHlsZV09XCJpY29uU3R5bGVcIlxuICA+PC9vYmplY3Q+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
32
+ args: [{ selector: 'kms-icon', template: "<ng-container *ngIf=\"icon() !== 'none' && dontUseSprite() === false\">\n <span\n class=\"icon\"\n [ngClass]=\"iconClass()\"\n [ngStyle]=\"{\n color: 'var(' + color() + ')'\n }\"\n [style.width.px]=\"size()\"\n [style.height.px]=\"size()\"\n >\n <svg>\n <use\n [attr.xlink:href]=\"\n 'assets/sprite.svg?Version=' + Version + '#' + icon()\n \"\n ></use>\n </svg>\n </span>\n</ng-container>\n<ng-container *ngIf=\"icon() !== 'none' && dontUseSprite() === true\">\n <object\n [data]=\"\n sanitizer.bypassSecurityTrustResourceUrl('assets/icons/' + icon() + '')\n \"\n type=\"image/svg+xml\"\n class=\"icon\"\n [ngClass]=\"iconClass()\"\n [ngStyle]=\"iconStyle()\"\n ></object>\n</ng-container>\n" }]
33
+ }], ctorParameters: () => [{ type: i1.DomSanitizer }] });
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rbXMtbmd4LXVpLXByZXNlbnRhdGlvbmFsL3NyYy9saWIvdWkvaWNvbi9pY29uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwvc3JjL2xpYi91aS9pY29uL2ljb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBZSxPQUFPLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJdkUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2hELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7OztBQU92RCxNQUFNLE9BQU8sYUFBYTtJQWtCeEIsWUFBbUIsU0FBdUI7UUFBdkIsY0FBUyxHQUFULFNBQVMsQ0FBYztRQWpCMUM7OztXQUdHO1FBQ0gsU0FBSSxHQUF3QyxLQUFLLEVBQUUsQ0FBQztRQUVwRDs7V0FFRztRQUNILGNBQVMsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFdEIsU0FBSSxHQUF3QixLQUFLLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2pELGtCQUFhLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzdCLFVBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRTNCLFlBQU8sR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDO0lBRXNCLENBQUM7K0dBbEJuQyxhQUFhO21HQUFiLGFBQWEsa3JCQ2hCMUIsK3dCQThCQTs7NEZEZGEsYUFBYTtrQkFMekIsU0FBUzsrQkFDRSxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAY29weXJpZ2h0IEtNUyBHbWJIXG4gKi9cblxuaW1wb3J0IHsgQ29tcG9uZW50LCBpbnB1dCwgSW5wdXRTaWduYWwsIFZFUlNJT04gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERvbVNhbml0aXplciB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuXG5pbXBvcnQgKiBhcyBpY29ucyBmcm9tICcuLi8uLi8uLi9hc3NldHMvaWNvbnMuanNvbic7XG5pbXBvcnQgeyBDb2xvciB9IGZyb20gJy4uLy4uL2VudW1zL2NvbG9ycy5lbnVtJztcbmltcG9ydCB7IEljb25TaXplUHggfSBmcm9tICcuLi8uLi9lbnVtcy9pY29uU2l6ZS5lbnVtJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAna21zLWljb24nLFxuICB0ZW1wbGF0ZVVybDogJy4vaWNvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ljb24uY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgSWNvbkNvbXBvbmVudCB7XG4gIC8qKlxuICAgKiBSZXF1aXJlZDogTmFtZSBvZiB0aGUgU1ZHIGljb24gaW5zaWRlIHlvdXIgc3ByaXRlIHNoZWV0IGZpbGUgd2l0aCBuYW1lICdpY29ucy5zdmcnLlxuICAgKiBQYXNzICdub25lJyBpZiBubyBpY29uIHNob3VsZCBiZSByZW5kZXJlZC5cbiAgICovXG4gIGljb246IElucHV0U2lnbmFsPCh0eXBlb2YgaWNvbnMpW251bWJlcl0+ID0gaW5wdXQoKTtcblxuICAvKipcbiAgICogT3B0aW9uYWw6IERpZmZlcmVudCBhcHBlYXJhbmNlIHZpYSBDU1MgY2xhc3MgZGVmaW5lZCBpbiB0aGlzIGNvbXBvbmVudMK0cyBzdHlsZSBzaGVldC5cbiAgICovXG4gIGljb25DbGFzcyA9IGlucHV0KCcnKTtcblxuICBzaXplOiBJbnB1dFNpZ25hbDxudW1iZXI+ID0gaW5wdXQoSWNvblNpemVQeC5YUyk7XG4gIGRvbnRVc2VTcHJpdGUgPSBpbnB1dChmYWxzZSk7XG4gIGNvbG9yID0gaW5wdXQoQ29sb3IuQkxBQ0spO1xuXG4gIFZlcnNpb24gPSBWRVJTSU9OLmZ1bGw7XG5cbiAgY29uc3RydWN0b3IocHVibGljIHNhbml0aXplcjogRG9tU2FuaXRpemVyKSB7fVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImljb24oKSAhPT0gJ25vbmUnICYmIGRvbnRVc2VTcHJpdGUoKSA9PT0gZmFsc2VcIj5cbiAgPHNwYW5cbiAgICBjbGFzcz1cImljb25cIlxuICAgIFtuZ0NsYXNzXT1cImljb25DbGFzcygpXCJcbiAgICBbbmdTdHlsZV09XCJ7XG4gICAgICBjb2xvcjogJ3ZhcignICsgY29sb3IoKSArICcpJ1xuICAgIH1cIlxuICAgIFtzdHlsZS53aWR0aC5weF09XCJzaXplKClcIlxuICAgIFtzdHlsZS5oZWlnaHQucHhdPVwic2l6ZSgpXCJcbiAgPlxuICAgIDxzdmc+XG4gICAgICA8dXNlXG4gICAgICAgIFthdHRyLnhsaW5rOmhyZWZdPVwiXG4gICAgICAgICAgJ2Fzc2V0cy9zcHJpdGUuc3ZnP1ZlcnNpb249JyArIFZlcnNpb24gKyAnIycgKyBpY29uKClcbiAgICAgICAgXCJcbiAgICAgID48L3VzZT5cbiAgICA8L3N2Zz5cbiAgPC9zcGFuPlxuPC9uZy1jb250YWluZXI+XG48bmctY29udGFpbmVyICpuZ0lmPVwiaWNvbigpICE9PSAnbm9uZScgJiYgZG9udFVzZVNwcml0ZSgpID09PSB0cnVlXCI+XG4gIDxvYmplY3RcbiAgICBbZGF0YV09XCJcbiAgICAgIHNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0UmVzb3VyY2VVcmwoJ2Fzc2V0cy9pY29ucy8nICsgaWNvbigpICsgJycpXG4gICAgXCJcbiAgICB0eXBlPVwiaW1hZ2Uvc3ZnK3htbFwiXG4gICAgY2xhc3M9XCJpY29uXCJcbiAgICBbbmdDbGFzc109XCJpY29uQ2xhc3MoKVwiXG4gICAgW25nU3R5bGVdPVwiaWNvblN0eWxlKClcIlxuICA+PC9vYmplY3Q+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
@@ -73,7 +73,7 @@ export class ImageSliderComponent {
73
73
  }
74
74
  }
75
75
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ImageSliderComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
76
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ImageSliderComponent, selector: "kms-image-slider", inputs: { slides: "slides", editMode: "editMode", imagesToSave: "imagesToSave" }, outputs: { deleteImageEvent: "deleteImageEvent", orderChanged: "orderChanged" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"image-slider-container\">\n <swiper-container\n class=\"swiper-main-view-container\"\n thumbs-swiper=\".swiper-carousel-container\"\n >\n <swiper-slide *ngFor=\"let slide of slides\">\n <img [src]=\"slide\" loading=\"lazy\" />\n </swiper-slide>\n </swiper-container>\n\n <swiper-container\n class=\"swiper-carousel-container\"\n thumbsSlider=\"\"\n cdkDropList\n cdkDropListOrientation=\"horizontal\"\n (cdkDropListDropped)=\"onOrderChanged($event)\"\n >\n <swiper-slide\n *ngFor=\"let slide of slides; let index = index\"\n [class.swiper-slide-default]=\"index === 0 && editMode\"\n >\n <div *ngIf=\"editMode\">\n <button cdkDrag class=\"drag-button\" mat-menu-item></button>\n <button\n class=\"delete-button\"\n mat-menu-item\n (click)=\"deleteImage(index)\"\n >\n <kms-icon icon=\"trash\" [size]=\"15\"></kms-icon>\n </button>\n </div>\n <img [src]=\"slide\" loading=\"lazy\" />\n <div class=\"swiper-slide-default-text\" *ngIf=\"index === 0 && editMode\">\n {{ 'common.defaultImage' | translate }}\n </div>\n </swiper-slide>\n </swiper-container>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep", "cdkDropListElementContainer"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i2.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: i3.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i4.SizeDirective, selector: "[size]", inputs: ["size"] }, { kind: "component", type: i5.IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "iconStyle", "iconSize", "size", "dontUseSprite"] }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }] }); }
76
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ImageSliderComponent, selector: "kms-image-slider", inputs: { slides: "slides", editMode: "editMode", imagesToSave: "imagesToSave" }, outputs: { deleteImageEvent: "deleteImageEvent", orderChanged: "orderChanged" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"image-slider-container\">\n <swiper-container\n class=\"swiper-main-view-container\"\n thumbs-swiper=\".swiper-carousel-container\"\n >\n <swiper-slide *ngFor=\"let slide of slides\">\n <img [src]=\"slide\" loading=\"lazy\" />\n </swiper-slide>\n </swiper-container>\n\n <swiper-container\n class=\"swiper-carousel-container\"\n thumbsSlider=\"\"\n cdkDropList\n cdkDropListOrientation=\"horizontal\"\n (cdkDropListDropped)=\"onOrderChanged($event)\"\n >\n <swiper-slide\n *ngFor=\"let slide of slides; let index = index\"\n [class.swiper-slide-default]=\"index === 0 && editMode\"\n >\n <div *ngIf=\"editMode\">\n <button cdkDrag class=\"drag-button\" mat-menu-item></button>\n <button\n class=\"delete-button\"\n mat-menu-item\n (click)=\"deleteImage(index)\"\n >\n <kms-icon icon=\"trash\" [size]=\"15\"></kms-icon>\n </button>\n </div>\n <img [src]=\"slide\" loading=\"lazy\" />\n <div class=\"swiper-slide-default-text\" *ngIf=\"index === 0 && editMode\">\n {{ 'common.defaultImage' | translate }}\n </div>\n </swiper-slide>\n </swiper-container>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep", "cdkDropListElementContainer"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i2.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: i3.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i4.SizeDirective, selector: "[size]", inputs: ["size"] }, { kind: "component", type: i5.IconComponent, selector: "kms-icon", inputs: ["icon", "iconClass", "size", "dontUseSprite", "color"] }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }] }); }
77
77
  }
78
78
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ImageSliderComponent, decorators: [{
79
79
  type: Component,