@testgorilla/tgo-ui 3.12.1 → 3.12.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.
package/README.md CHANGED
@@ -68,7 +68,7 @@ npm run visual-test:update-snapshots
68
68
  ### How It Works
69
69
 
70
70
  1. **Build Phase**: Storybook is built (`npm run build-storybook`) creating static files
71
- 2. **Docker Execution**: Tests run in a Linux container using `mcr.microsoft.com/playwright:v1.46.1` for consistency
71
+ 2. **Docker Execution**: Tests run in a Linux container using `mcr.microsoft.com/playwright:v1.55.1` for consistency
72
72
  3. **Server Setup**: HTTP server serves Storybook static files on port 4200
73
73
  4. **Test Execution**: Automatically discovers and tests all stories from Storybook's `index.json`
74
74
  5. **Screenshot Comparison**: Compares current screenshots against stored snapshots
@@ -81,7 +81,7 @@ The system uses Docker Compose with two services:
81
81
  - **update-snapshots**: Updates snapshots when visual changes are expected
82
82
 
83
83
  Both services:
84
- - Use official Microsoft Playwright image (`mcr.microsoft.com/playwright:v1.46.1`)
84
+ - Use official Microsoft Playwright image (`mcr.microsoft.com/playwright:v1.55.1`)
85
85
  - Mount project directory and install dependencies
86
86
  - Start HTTP server and wait for Storybook availability
87
87
  - Execute tests with Desktop Chrome viewport (1920x1200, 2x device scale)
@@ -21,13 +21,13 @@ export declare class DonutChartComponent {
21
21
  id: string;
22
22
  afterDatasetDraw: (chart: any) => void;
23
23
  };
24
- donutChartPlugins: (import("chart.js").Plugin<keyof import("chart.js").ChartTypeRegistry, import("chart.js/dist/types/basic").AnyObject> | {
24
+ donutChartPlugins: ({
25
25
  id: string;
26
26
  beforeDraw: (chart: any) => void;
27
27
  } | {
28
28
  id: string;
29
29
  afterDatasetDraw: (chart: any) => void;
30
- })[];
30
+ } | import("chart.js").Plugin<keyof import("chart.js").ChartTypeRegistry, import("chart.js/dist/types/basic").AnyObject>)[];
31
31
  donutChartOptions: ChartOptions<'doughnut'>;
32
32
  static ɵfac: i0.ɵɵFactoryDeclaration<DonutChartComponent, never>;
33
33
  static ɵcmp: i0.ɵɵComponentDeclaration<DonutChartComponent, "ui-donut-chart", never, { "donutChartData": { "alias": "donutChartData"; "required": false; "isSignal": true; }; "applicationTheme": { "alias": "applicationTheme"; "required": false; "isSignal": true; }; }, {}, never, never, false, never>;
@@ -109,14 +109,14 @@ export declare class InlineFieldComponent implements OnInit, ControlValueAccesso
109
109
  state: import("@angular/core").Signal<InlineFieldState>;
110
110
  saveButtonConfig: import("@angular/core").Signal<{
111
111
  label: string;
112
- iconName: "Add" | "Archive" | "Arrow_down" | "Arrow_left" | "Arrow_right" | "Arrow_up" | "Assessment" | "Attempts" | "Book" | "Calendar" | "Candidates" | "Chat-notifications" | "Chat" | "Check" | "Clone" | "Close" | "Code" | "Company" | "Copy" | "Custom-questions" | "Delete" | "Devices" | "Document" | "Dot" | "Download" | "Edit" | "Email-message" | "Empty-placeholder" | "Error" | "Essay" | "Eye-hide" | "Eye-view" | "Feedback-1" | "Feedback-2" | "Feedback-3" | "Feedback-4" | "Feedback-5" | "File-attach" | "File-upload" | "Filter" | "Flag" | "Folder" | "Format-add-file" | "Format-add-table" | "Format-align-L" | "Format-align-R" | "Format-align-center" | "Format-align-justify" | "Format-bold" | "Format-code-active" | "Format-code-block" | "Format-edit-table" | "Format-format" | "Format-function" | "Format-italics" | "Format-list-bulleted" | "Format-list-numbered" | "Format-picker" | "Format-quote" | "Format-subscript" | "Format-superscript" | "Format-text-direction-L" | "Format-text-direction-R" | "Format-text-size" | "Format-underline" | "Format-variable" | "Full-screen" | "Gender-female" | "Gender-male" | "Help-2" | "Help" | "Image" | "Info" | "Integration" | "Language" | "Layout" | "Learn" | "Level" | "Light-bulb" | "Link" | "Loading-spinner" | "Localisation" | "Location" | "Lock" | "Log-out" | "Menu-burger" | "Menu-close" | "Menu-ellipsis" | "Menu-open" | "Microphone" | "Microsoft" | "Minus" | "Mouse-cursor" | "Mouse-grab-cursor" | "Mouse" | "Multi-choice" | "Notifications" | "Password" | "Path" | "Pin-marker" | "Plan-billing" | "Plus" | "Premium" | "Promotion" | "Question-count" | "Refer" | "Reset" | "Review" | "Round-check-filled" | "Round-check" | "Search" | "Secure-checkout" | "Send" | "Settings" | "Social-facebook" | "Social-instagram" | "Social-linkedin" | "Sorting-down-1" | "Sorting-down" | "Speedometer" | "Star-filled" | "Star-half" | "Star-outline" | "Support" | "Sync" | "Team" | "Test" | "Thunder" | "Timer" | "Trophy" | "Type" | "Unarchive" | "Unlock" | "Upgrade" | "Upload" | "User-access" | "User-add" | "User-invite" | "User-profile" | "User-reject" | "User-switch" | "Video-pause" | "Video-play" | "Video-record" | "Video" | "Volume" | "Warning" | "Zoom-in" | "Zoom-out" | "Fire" | "Gift" | "Grab" | "Share" | "Sparkles" | "Video-stop" | "Minimize" | "Employee" | "Money-bag" | "Suitcase" | "Google" | "Fast-forward" | "Fast-rewind" | "Skip-next" | "Skip-previous" | "TestGorilla" | "Switch-tab" | "Device-rotate-in-line" | "Archive-filled" | "Archive-in-line" | "Add-in-line" | "Add-filled" | "Arrow-chevron-down-filled" | "Arrow-chevron-down-in-line" | "Arrow-chevron-left-filled" | "Arrow-chevron-left-in-line" | "Arrow-chevron-right-filled" | "Arrow-chevron-right-in-line" | "Arrow-chevron-up-filled" | "Arrow-chevron-up-in-line" | "Arrow-down-filled" | "Arrow-down-in-line" | "Arrow-up-filled" | "Arrow-up-in-line" | "Assessment-filled" | "Assessment-in-line" | "Attach-filled" | "Attach-in-line" | "Attempts-filled" | "Attempts-in-line" | "Book-filled" | "Book-in-line" | "Calendar-filled" | "Calendar-in-line" | "Candidates-filled" | "Candidates-in-line" | "Chat-filled" | "Chat-in-line" | "Check-filled" | "Check-in-line" | "Check-round-filled" | "Check-round-in-line" | "Circle-filled" | "Circle-in-line" | "Clone-filled" | "Clone-in-line" | "Close-filled" | "Close-in-line" | "Code-filled" | "Code-in-line" | "Company-filled" | "Company-in-line" | "Copy-filled" | "Copy-in-line" | "Credit-filled" | "Credit-in-line" | "Credit-card-filled" | "Credit-card-in-line" | "Delete-filled" | "Delete-in-line" | "Devices-filled" | "Devices-in-line" | "Document-filled" | "Document-in-line" | "Dot-filled" | "Dot-in-line" | "Download-filled" | "Download-in-line" | "Edit-filled" | "Edit-in-line" | "Edit-text-filled" | "Edit-text-in-line" | "Employee-filled" | "Employee-in-line" | "Error-filled" | "Error-in-line" | "Essay-filled" | "Essay-in-line" | "Experience-filled" | "Experience-in-line" | "Facebook-filled" | "Facebook-in-line" | "Fast-forward-filled" | "Fast-forward-in-line" | "Fast-rewind-filled" | "Fast-rewind-in-line" | "Filter-filled" | "Filter-in-line" | "Fire-filled" | "Fire-in-line" | "Flag-filled" | "Flag-in-line" | "Folder-filled" | "Folder-in-line" | "Full-screen-filled" | "Full-screen-in-line" | "Gender-male-filled" | "Gender-male-in-line" | "Gender-female-filled" | "Gender-female-in-line" | "Gift-filled" | "Gift-in-line" | "Google-filled" | "Google-in-line" | "Grab-filled" | "Grab-in-line" | "Help-filled" | "Help-in-line" | "Hide-filled" | "Hide-in-line" | "Image-filled" | "Image-in-line" | "Info-filled" | "Info-in-line" | "Instagram-filled" | "Instagram-in-line" | "Integration-filled" | "Integration-in-line" | "Invite-filled" | "Invite-in-line" | "Language-filled" | "Language-in-line" | "Layout-filled" | "Layout-in-line" | "Learn-filled" | "Learn-in-line" | "Level-filled" | "Level-in-line" | "Light-bulb-filled" | "Light-bulb-in-line" | "Link-filled" | "Link-in-line" | "Linkedin-filled" | "Linkedin-in-line" | "Localization-filled" | "Localization-in-line" | "Location-filled" | "Location-in-line" | "Lock-filled" | "Lock-in-line" | "Logout-filled" | "Logout-in-line" | "Medal-filled" | "Medal-in-line" | "Menu-burger-filled" | "Menu-burger-in-line" | "Menu-close-filled" | "Menu-close-in-line" | "Menu-ellipsis-filled" | "Menu-ellipsis-in-line" | "Menu-open-filled" | "Menu-open-in-line" | "Mic-filled" | "Mic-in-line" | "Microsoft-filled" | "Microsoft-in-line" | "Minimize-filled" | "Minimize-in-line" | "Minus-filled" | "Minus-in-line" | "Mouse-filled" | "Mouse-in-line" | "Multi-choice-filled" | "Multi-choice-in-line" | "Notification-bell-filled" | "Notification-bell-in-line" | "Open-lock-filled" | "Open-lock-in-line" | "Open-in-new-filled" | "Open-in-new-in-line" | "Password-filled" | "Password-in-line" | "Path-filled" | "Path-in-line" | "Pause-filled" | "Pause-in-line" | "Pin-marker-filled" | "Pin-marker-in-line" | "Plan-billing-filled" | "Plan-billing-in-line" | "Play-filled" | "Play-in-line" | "Plus-filled" | "Plus-in-line" | "Premium-filled" | "Premium-in-line" | "Premium-circle-in-line" | "Question-count-filled" | "Question-count-in-line" | "Question-filled" | "Question-in-line" | "Record-filled" | "Record-in-line" | "Reject-filled" | "Refer-in-line" | "Refer-filled" | "Reject-in-line" | "Reset-filled" | "Reset-in-line" | "Review-emoji-1-filled" | "Review-emoji-1-in-line" | "Review-emoji-2-filled" | "Review-emoji-2-in-line" | "Review-emoji-3-filled" | "Review-emoji-3-in-line" | "Review-emoji-4-filled" | "Review-emoji-4-in-line" | "Review-emoji-5-filled" | "Review-emoji-5-in-line" | "Review-filled" | "Review-half-star-filled" | "Review-half-star-in-line" | "Review-in-line" | "Review-star-filled" | "Review-star-in-line" | "Search-filled" | "Search-in-line" | "Secure-filled" | "Secure-in-line" | "Send-filled" | "Send-in-line" | "Settings-filled" | "Settings-in-line" | "Share-filled" | "Share-in-line" | "Skip-next-filled" | "Skip-next-in-line" | "Skip-previous-filled" | "Skip-previous-in-line" | "Sparkle-filled" | "Sparkle-in-line" | "Speedometer-filled" | "Speedometer-in-line" | "Star-in-line" | "Stop-filled" | "Stop-in-line" | "Switch-filled" | "Switch-in-line" | "Sync-filled" | "Sync-in-line" | "Tag-filled" | "Tag-in-line" | "Team-filled" | "Team-in-line" | "Test-filled" | "Test-in-line" | "Thumb-down-in-line" | "Thumb-down-filled" | "Thumb-up-in-line" | "Thumb-up-filled" | "Timer-filled" | "Timer-in-line" | "Trophy-filled" | "Trophy-in-line" | "Type-filled" | "Type-in-line" | "Unarchive-filled" | "Unarchive-in-line" | "Unlock-filled" | "Unlock-in-line" | "Upgrade-filled" | "Upgrade-in-line" | "Upload-filled" | "Upload-in-line" | "User-access-filled" | "User-access-in-line" | "User-add-filled" | "User-add-in-line" | "User-profile-filled" | "User-profile-in-line" | "Video-filled" | "Video-in-line" | "View-filled" | "View-in-line" | "Volume-filled" | "Volume-in-line" | "Warning-filled" | "Warning-in-line" | "Validated-filled" | "Validated-in-line" | "Verified-badge-filled" | "Verified-badge-in-line" | "Zoom-in-filled" | "Zoom-in-in-line" | "Zoom-out-filled" | "Zoom-out-in-line" | "Analytics-filled" | "Analytics-in-line" | "Failed-to-load-filled" | "Failed-to-load-in-line" | "History-filled" | "History-in-line" | "TestGorilla-filled" | "TestGorilla-in-line" | "TestGorilla-Pink-filled" | "TestGorilla-Pink-in-line" | "Pencil-to-gorilla-in-line" | "Pencil-to-gorilla-filled" | "Switch-tab-in-line" | "Switch-tab-filled" | "Close-round-in-line" | "Close-round-filled";
112
+ iconName: "Device-rotate-in-line" | "Archive-filled" | "Archive-in-line" | "Add-in-line" | "Add-filled" | "Arrow-chevron-down-filled" | "Arrow-chevron-down-in-line" | "Arrow-chevron-left-filled" | "Arrow-chevron-left-in-line" | "Arrow-chevron-right-filled" | "Arrow-chevron-right-in-line" | "Arrow-chevron-up-filled" | "Arrow-chevron-up-in-line" | "Arrow-down-filled" | "Arrow-down-in-line" | "Arrow-up-filled" | "Arrow-up-in-line" | "Assessment-filled" | "Assessment-in-line" | "Attach-filled" | "Attach-in-line" | "Attempts-filled" | "Attempts-in-line" | "Book-filled" | "Book-in-line" | "Calendar-filled" | "Calendar-in-line" | "Candidates-filled" | "Candidates-in-line" | "Chat-filled" | "Chat-in-line" | "Check-filled" | "Check-in-line" | "Check-round-filled" | "Check-round-in-line" | "Circle-filled" | "Circle-in-line" | "Clone-filled" | "Clone-in-line" | "Close-filled" | "Close-in-line" | "Code-filled" | "Code-in-line" | "Company-filled" | "Company-in-line" | "Copy-filled" | "Copy-in-line" | "Credit-filled" | "Credit-in-line" | "Credit-card-filled" | "Credit-card-in-line" | "Delete-filled" | "Delete-in-line" | "Devices-filled" | "Devices-in-line" | "Document-filled" | "Document-in-line" | "Dot-filled" | "Dot-in-line" | "Download-filled" | "Download-in-line" | "Edit-filled" | "Edit-in-line" | "Edit-text-filled" | "Edit-text-in-line" | "Employee-filled" | "Employee-in-line" | "Error-filled" | "Error-in-line" | "Essay-filled" | "Essay-in-line" | "Experience-filled" | "Experience-in-line" | "Facebook-filled" | "Facebook-in-line" | "Fast-forward-filled" | "Fast-forward-in-line" | "Fast-rewind-filled" | "Fast-rewind-in-line" | "Filter-filled" | "Filter-in-line" | "Fire-filled" | "Fire-in-line" | "Flag-filled" | "Flag-in-line" | "Folder-filled" | "Folder-in-line" | "Full-screen-filled" | "Full-screen-in-line" | "Gender-male-filled" | "Gender-male-in-line" | "Gender-female-filled" | "Gender-female-in-line" | "Gift-filled" | "Gift-in-line" | "Google-filled" | "Google-in-line" | "Grab-filled" | "Grab-in-line" | "Help-filled" | "Help-in-line" | "Hide-filled" | "Hide-in-line" | "Image-filled" | "Image-in-line" | "Info-filled" | "Info-in-line" | "Instagram-filled" | "Instagram-in-line" | "Integration-filled" | "Integration-in-line" | "Invite-filled" | "Invite-in-line" | "Language-filled" | "Language-in-line" | "Layout-filled" | "Layout-in-line" | "Learn-filled" | "Learn-in-line" | "Level-filled" | "Level-in-line" | "Light-bulb-filled" | "Light-bulb-in-line" | "Link-filled" | "Link-in-line" | "Linkedin-filled" | "Linkedin-in-line" | "Localization-filled" | "Localization-in-line" | "Location-filled" | "Location-in-line" | "Lock-filled" | "Lock-in-line" | "Logout-filled" | "Logout-in-line" | "Medal-filled" | "Medal-in-line" | "Menu-burger-filled" | "Menu-burger-in-line" | "Menu-close-filled" | "Menu-close-in-line" | "Menu-ellipsis-filled" | "Menu-ellipsis-in-line" | "Menu-open-filled" | "Menu-open-in-line" | "Mic-filled" | "Mic-in-line" | "Microsoft-filled" | "Microsoft-in-line" | "Minimize-filled" | "Minimize-in-line" | "Minus-filled" | "Minus-in-line" | "Mouse-filled" | "Mouse-in-line" | "Multi-choice-filled" | "Multi-choice-in-line" | "Notification-bell-filled" | "Notification-bell-in-line" | "Open-lock-filled" | "Open-lock-in-line" | "Open-in-new-filled" | "Open-in-new-in-line" | "Password-filled" | "Password-in-line" | "Path-filled" | "Path-in-line" | "Pause-filled" | "Pause-in-line" | "Pin-marker-filled" | "Pin-marker-in-line" | "Plan-billing-filled" | "Plan-billing-in-line" | "Play-filled" | "Play-in-line" | "Plus-filled" | "Plus-in-line" | "Premium-filled" | "Premium-in-line" | "Premium-circle-in-line" | "Question-count-filled" | "Question-count-in-line" | "Question-filled" | "Question-in-line" | "Record-filled" | "Record-in-line" | "Reject-filled" | "Refer-in-line" | "Refer-filled" | "Reject-in-line" | "Reset-filled" | "Reset-in-line" | "Review-emoji-1-filled" | "Review-emoji-1-in-line" | "Review-emoji-2-filled" | "Review-emoji-2-in-line" | "Review-emoji-3-filled" | "Review-emoji-3-in-line" | "Review-emoji-4-filled" | "Review-emoji-4-in-line" | "Review-emoji-5-filled" | "Review-emoji-5-in-line" | "Review-filled" | "Review-half-star-filled" | "Review-half-star-in-line" | "Review-in-line" | "Review-star-filled" | "Review-star-in-line" | "Search-filled" | "Search-in-line" | "Secure-filled" | "Secure-in-line" | "Send-filled" | "Send-in-line" | "Settings-filled" | "Settings-in-line" | "Share-filled" | "Share-in-line" | "Skip-next-filled" | "Skip-next-in-line" | "Skip-previous-filled" | "Skip-previous-in-line" | "Sparkle-filled" | "Sparkle-in-line" | "Speedometer-filled" | "Speedometer-in-line" | "Star-filled" | "Star-in-line" | "Stop-filled" | "Stop-in-line" | "Switch-filled" | "Switch-in-line" | "Sync-filled" | "Sync-in-line" | "Tag-filled" | "Tag-in-line" | "Team-filled" | "Team-in-line" | "Test-filled" | "Test-in-line" | "Thumb-down-in-line" | "Thumb-down-filled" | "Thumb-up-in-line" | "Thumb-up-filled" | "Timer-filled" | "Timer-in-line" | "Trophy-filled" | "Trophy-in-line" | "Type-filled" | "Type-in-line" | "Unarchive-filled" | "Unarchive-in-line" | "Unlock-filled" | "Unlock-in-line" | "Upgrade-filled" | "Upgrade-in-line" | "Upload-filled" | "Upload-in-line" | "User-access-filled" | "User-access-in-line" | "User-add-filled" | "User-add-in-line" | "User-profile-filled" | "User-profile-in-line" | "Video-filled" | "Video-in-line" | "View-filled" | "View-in-line" | "Volume-filled" | "Volume-in-line" | "Warning-filled" | "Warning-in-line" | "Validated-filled" | "Validated-in-line" | "Verified-badge-filled" | "Verified-badge-in-line" | "Zoom-in-filled" | "Zoom-in-in-line" | "Zoom-out-filled" | "Zoom-out-in-line" | "Analytics-filled" | "Analytics-in-line" | "Failed-to-load-filled" | "Failed-to-load-in-line" | "History-filled" | "History-in-line" | "TestGorilla-filled" | "TestGorilla-in-line" | "TestGorilla-Pink-filled" | "TestGorilla-Pink-in-line" | "Pencil-to-gorilla-in-line" | "Pencil-to-gorilla-filled" | "Switch-tab-in-line" | "Switch-tab-filled" | "Close-round-in-line" | "Close-round-filled" | "Add" | "Archive" | "Arrow_down" | "Arrow_left" | "Arrow_right" | "Arrow_up" | "Assessment" | "Attempts" | "Book" | "Calendar" | "Candidates" | "Chat-notifications" | "Chat" | "Check" | "Clone" | "Close" | "Code" | "Company" | "Copy" | "Custom-questions" | "Delete" | "Devices" | "Document" | "Dot" | "Download" | "Edit" | "Email-message" | "Empty-placeholder" | "Error" | "Essay" | "Eye-hide" | "Eye-view" | "Feedback-1" | "Feedback-2" | "Feedback-3" | "Feedback-4" | "Feedback-5" | "File-attach" | "File-upload" | "Filter" | "Flag" | "Folder" | "Format-add-file" | "Format-add-table" | "Format-align-L" | "Format-align-R" | "Format-align-center" | "Format-align-justify" | "Format-bold" | "Format-code-active" | "Format-code-block" | "Format-edit-table" | "Format-format" | "Format-function" | "Format-italics" | "Format-list-bulleted" | "Format-list-numbered" | "Format-picker" | "Format-quote" | "Format-subscript" | "Format-superscript" | "Format-text-direction-L" | "Format-text-direction-R" | "Format-text-size" | "Format-underline" | "Format-variable" | "Full-screen" | "Gender-female" | "Gender-male" | "Help-2" | "Help" | "Image" | "Info" | "Integration" | "Language" | "Layout" | "Learn" | "Level" | "Light-bulb" | "Link" | "Loading-spinner" | "Localisation" | "Location" | "Lock" | "Log-out" | "Menu-burger" | "Menu-close" | "Menu-ellipsis" | "Menu-open" | "Microphone" | "Microsoft" | "Minus" | "Mouse-cursor" | "Mouse-grab-cursor" | "Mouse" | "Multi-choice" | "Notifications" | "Password" | "Path" | "Pin-marker" | "Plan-billing" | "Plus" | "Premium" | "Promotion" | "Question-count" | "Refer" | "Reset" | "Review" | "Round-check-filled" | "Round-check" | "Search" | "Secure-checkout" | "Send" | "Settings" | "Social-facebook" | "Social-instagram" | "Social-linkedin" | "Sorting-down-1" | "Sorting-down" | "Speedometer" | "Star-half" | "Star-outline" | "Support" | "Sync" | "Team" | "Test" | "Thunder" | "Timer" | "Trophy" | "Type" | "Unarchive" | "Unlock" | "Upgrade" | "Upload" | "User-access" | "User-add" | "User-invite" | "User-profile" | "User-reject" | "User-switch" | "Video-pause" | "Video-play" | "Video-record" | "Video" | "Volume" | "Warning" | "Zoom-in" | "Zoom-out" | "Fire" | "Gift" | "Grab" | "Share" | "Sparkles" | "Video-stop" | "Minimize" | "Employee" | "Money-bag" | "Suitcase" | "Google" | "Fast-forward" | "Fast-rewind" | "Skip-next" | "Skip-previous" | "TestGorilla" | "Switch-tab";
113
113
  variant: "secondary-inverted";
114
114
  size: "small";
115
115
  disabled: boolean;
116
116
  }>;
117
117
  cancelButtonConfig: import("@angular/core").Signal<{
118
118
  label: string;
119
- iconName: "Add" | "Archive" | "Arrow_down" | "Arrow_left" | "Arrow_right" | "Arrow_up" | "Assessment" | "Attempts" | "Book" | "Calendar" | "Candidates" | "Chat-notifications" | "Chat" | "Check" | "Clone" | "Close" | "Code" | "Company" | "Copy" | "Custom-questions" | "Delete" | "Devices" | "Document" | "Dot" | "Download" | "Edit" | "Email-message" | "Empty-placeholder" | "Error" | "Essay" | "Eye-hide" | "Eye-view" | "Feedback-1" | "Feedback-2" | "Feedback-3" | "Feedback-4" | "Feedback-5" | "File-attach" | "File-upload" | "Filter" | "Flag" | "Folder" | "Format-add-file" | "Format-add-table" | "Format-align-L" | "Format-align-R" | "Format-align-center" | "Format-align-justify" | "Format-bold" | "Format-code-active" | "Format-code-block" | "Format-edit-table" | "Format-format" | "Format-function" | "Format-italics" | "Format-list-bulleted" | "Format-list-numbered" | "Format-picker" | "Format-quote" | "Format-subscript" | "Format-superscript" | "Format-text-direction-L" | "Format-text-direction-R" | "Format-text-size" | "Format-underline" | "Format-variable" | "Full-screen" | "Gender-female" | "Gender-male" | "Help-2" | "Help" | "Image" | "Info" | "Integration" | "Language" | "Layout" | "Learn" | "Level" | "Light-bulb" | "Link" | "Loading-spinner" | "Localisation" | "Location" | "Lock" | "Log-out" | "Menu-burger" | "Menu-close" | "Menu-ellipsis" | "Menu-open" | "Microphone" | "Microsoft" | "Minus" | "Mouse-cursor" | "Mouse-grab-cursor" | "Mouse" | "Multi-choice" | "Notifications" | "Password" | "Path" | "Pin-marker" | "Plan-billing" | "Plus" | "Premium" | "Promotion" | "Question-count" | "Refer" | "Reset" | "Review" | "Round-check-filled" | "Round-check" | "Search" | "Secure-checkout" | "Send" | "Settings" | "Social-facebook" | "Social-instagram" | "Social-linkedin" | "Sorting-down-1" | "Sorting-down" | "Speedometer" | "Star-filled" | "Star-half" | "Star-outline" | "Support" | "Sync" | "Team" | "Test" | "Thunder" | "Timer" | "Trophy" | "Type" | "Unarchive" | "Unlock" | "Upgrade" | "Upload" | "User-access" | "User-add" | "User-invite" | "User-profile" | "User-reject" | "User-switch" | "Video-pause" | "Video-play" | "Video-record" | "Video" | "Volume" | "Warning" | "Zoom-in" | "Zoom-out" | "Fire" | "Gift" | "Grab" | "Share" | "Sparkles" | "Video-stop" | "Minimize" | "Employee" | "Money-bag" | "Suitcase" | "Google" | "Fast-forward" | "Fast-rewind" | "Skip-next" | "Skip-previous" | "TestGorilla" | "Switch-tab" | "Device-rotate-in-line" | "Archive-filled" | "Archive-in-line" | "Add-in-line" | "Add-filled" | "Arrow-chevron-down-filled" | "Arrow-chevron-down-in-line" | "Arrow-chevron-left-filled" | "Arrow-chevron-left-in-line" | "Arrow-chevron-right-filled" | "Arrow-chevron-right-in-line" | "Arrow-chevron-up-filled" | "Arrow-chevron-up-in-line" | "Arrow-down-filled" | "Arrow-down-in-line" | "Arrow-up-filled" | "Arrow-up-in-line" | "Assessment-filled" | "Assessment-in-line" | "Attach-filled" | "Attach-in-line" | "Attempts-filled" | "Attempts-in-line" | "Book-filled" | "Book-in-line" | "Calendar-filled" | "Calendar-in-line" | "Candidates-filled" | "Candidates-in-line" | "Chat-filled" | "Chat-in-line" | "Check-filled" | "Check-in-line" | "Check-round-filled" | "Check-round-in-line" | "Circle-filled" | "Circle-in-line" | "Clone-filled" | "Clone-in-line" | "Close-filled" | "Close-in-line" | "Code-filled" | "Code-in-line" | "Company-filled" | "Company-in-line" | "Copy-filled" | "Copy-in-line" | "Credit-filled" | "Credit-in-line" | "Credit-card-filled" | "Credit-card-in-line" | "Delete-filled" | "Delete-in-line" | "Devices-filled" | "Devices-in-line" | "Document-filled" | "Document-in-line" | "Dot-filled" | "Dot-in-line" | "Download-filled" | "Download-in-line" | "Edit-filled" | "Edit-in-line" | "Edit-text-filled" | "Edit-text-in-line" | "Employee-filled" | "Employee-in-line" | "Error-filled" | "Error-in-line" | "Essay-filled" | "Essay-in-line" | "Experience-filled" | "Experience-in-line" | "Facebook-filled" | "Facebook-in-line" | "Fast-forward-filled" | "Fast-forward-in-line" | "Fast-rewind-filled" | "Fast-rewind-in-line" | "Filter-filled" | "Filter-in-line" | "Fire-filled" | "Fire-in-line" | "Flag-filled" | "Flag-in-line" | "Folder-filled" | "Folder-in-line" | "Full-screen-filled" | "Full-screen-in-line" | "Gender-male-filled" | "Gender-male-in-line" | "Gender-female-filled" | "Gender-female-in-line" | "Gift-filled" | "Gift-in-line" | "Google-filled" | "Google-in-line" | "Grab-filled" | "Grab-in-line" | "Help-filled" | "Help-in-line" | "Hide-filled" | "Hide-in-line" | "Image-filled" | "Image-in-line" | "Info-filled" | "Info-in-line" | "Instagram-filled" | "Instagram-in-line" | "Integration-filled" | "Integration-in-line" | "Invite-filled" | "Invite-in-line" | "Language-filled" | "Language-in-line" | "Layout-filled" | "Layout-in-line" | "Learn-filled" | "Learn-in-line" | "Level-filled" | "Level-in-line" | "Light-bulb-filled" | "Light-bulb-in-line" | "Link-filled" | "Link-in-line" | "Linkedin-filled" | "Linkedin-in-line" | "Localization-filled" | "Localization-in-line" | "Location-filled" | "Location-in-line" | "Lock-filled" | "Lock-in-line" | "Logout-filled" | "Logout-in-line" | "Medal-filled" | "Medal-in-line" | "Menu-burger-filled" | "Menu-burger-in-line" | "Menu-close-filled" | "Menu-close-in-line" | "Menu-ellipsis-filled" | "Menu-ellipsis-in-line" | "Menu-open-filled" | "Menu-open-in-line" | "Mic-filled" | "Mic-in-line" | "Microsoft-filled" | "Microsoft-in-line" | "Minimize-filled" | "Minimize-in-line" | "Minus-filled" | "Minus-in-line" | "Mouse-filled" | "Mouse-in-line" | "Multi-choice-filled" | "Multi-choice-in-line" | "Notification-bell-filled" | "Notification-bell-in-line" | "Open-lock-filled" | "Open-lock-in-line" | "Open-in-new-filled" | "Open-in-new-in-line" | "Password-filled" | "Password-in-line" | "Path-filled" | "Path-in-line" | "Pause-filled" | "Pause-in-line" | "Pin-marker-filled" | "Pin-marker-in-line" | "Plan-billing-filled" | "Plan-billing-in-line" | "Play-filled" | "Play-in-line" | "Plus-filled" | "Plus-in-line" | "Premium-filled" | "Premium-in-line" | "Premium-circle-in-line" | "Question-count-filled" | "Question-count-in-line" | "Question-filled" | "Question-in-line" | "Record-filled" | "Record-in-line" | "Reject-filled" | "Refer-in-line" | "Refer-filled" | "Reject-in-line" | "Reset-filled" | "Reset-in-line" | "Review-emoji-1-filled" | "Review-emoji-1-in-line" | "Review-emoji-2-filled" | "Review-emoji-2-in-line" | "Review-emoji-3-filled" | "Review-emoji-3-in-line" | "Review-emoji-4-filled" | "Review-emoji-4-in-line" | "Review-emoji-5-filled" | "Review-emoji-5-in-line" | "Review-filled" | "Review-half-star-filled" | "Review-half-star-in-line" | "Review-in-line" | "Review-star-filled" | "Review-star-in-line" | "Search-filled" | "Search-in-line" | "Secure-filled" | "Secure-in-line" | "Send-filled" | "Send-in-line" | "Settings-filled" | "Settings-in-line" | "Share-filled" | "Share-in-line" | "Skip-next-filled" | "Skip-next-in-line" | "Skip-previous-filled" | "Skip-previous-in-line" | "Sparkle-filled" | "Sparkle-in-line" | "Speedometer-filled" | "Speedometer-in-line" | "Star-in-line" | "Stop-filled" | "Stop-in-line" | "Switch-filled" | "Switch-in-line" | "Sync-filled" | "Sync-in-line" | "Tag-filled" | "Tag-in-line" | "Team-filled" | "Team-in-line" | "Test-filled" | "Test-in-line" | "Thumb-down-in-line" | "Thumb-down-filled" | "Thumb-up-in-line" | "Thumb-up-filled" | "Timer-filled" | "Timer-in-line" | "Trophy-filled" | "Trophy-in-line" | "Type-filled" | "Type-in-line" | "Unarchive-filled" | "Unarchive-in-line" | "Unlock-filled" | "Unlock-in-line" | "Upgrade-filled" | "Upgrade-in-line" | "Upload-filled" | "Upload-in-line" | "User-access-filled" | "User-access-in-line" | "User-add-filled" | "User-add-in-line" | "User-profile-filled" | "User-profile-in-line" | "Video-filled" | "Video-in-line" | "View-filled" | "View-in-line" | "Volume-filled" | "Volume-in-line" | "Warning-filled" | "Warning-in-line" | "Validated-filled" | "Validated-in-line" | "Verified-badge-filled" | "Verified-badge-in-line" | "Zoom-in-filled" | "Zoom-in-in-line" | "Zoom-out-filled" | "Zoom-out-in-line" | "Analytics-filled" | "Analytics-in-line" | "Failed-to-load-filled" | "Failed-to-load-in-line" | "History-filled" | "History-in-line" | "TestGorilla-filled" | "TestGorilla-in-line" | "TestGorilla-Pink-filled" | "TestGorilla-Pink-in-line" | "Pencil-to-gorilla-in-line" | "Pencil-to-gorilla-filled" | "Switch-tab-in-line" | "Switch-tab-filled" | "Close-round-in-line" | "Close-round-filled";
119
+ iconName: "Device-rotate-in-line" | "Archive-filled" | "Archive-in-line" | "Add-in-line" | "Add-filled" | "Arrow-chevron-down-filled" | "Arrow-chevron-down-in-line" | "Arrow-chevron-left-filled" | "Arrow-chevron-left-in-line" | "Arrow-chevron-right-filled" | "Arrow-chevron-right-in-line" | "Arrow-chevron-up-filled" | "Arrow-chevron-up-in-line" | "Arrow-down-filled" | "Arrow-down-in-line" | "Arrow-up-filled" | "Arrow-up-in-line" | "Assessment-filled" | "Assessment-in-line" | "Attach-filled" | "Attach-in-line" | "Attempts-filled" | "Attempts-in-line" | "Book-filled" | "Book-in-line" | "Calendar-filled" | "Calendar-in-line" | "Candidates-filled" | "Candidates-in-line" | "Chat-filled" | "Chat-in-line" | "Check-filled" | "Check-in-line" | "Check-round-filled" | "Check-round-in-line" | "Circle-filled" | "Circle-in-line" | "Clone-filled" | "Clone-in-line" | "Close-filled" | "Close-in-line" | "Code-filled" | "Code-in-line" | "Company-filled" | "Company-in-line" | "Copy-filled" | "Copy-in-line" | "Credit-filled" | "Credit-in-line" | "Credit-card-filled" | "Credit-card-in-line" | "Delete-filled" | "Delete-in-line" | "Devices-filled" | "Devices-in-line" | "Document-filled" | "Document-in-line" | "Dot-filled" | "Dot-in-line" | "Download-filled" | "Download-in-line" | "Edit-filled" | "Edit-in-line" | "Edit-text-filled" | "Edit-text-in-line" | "Employee-filled" | "Employee-in-line" | "Error-filled" | "Error-in-line" | "Essay-filled" | "Essay-in-line" | "Experience-filled" | "Experience-in-line" | "Facebook-filled" | "Facebook-in-line" | "Fast-forward-filled" | "Fast-forward-in-line" | "Fast-rewind-filled" | "Fast-rewind-in-line" | "Filter-filled" | "Filter-in-line" | "Fire-filled" | "Fire-in-line" | "Flag-filled" | "Flag-in-line" | "Folder-filled" | "Folder-in-line" | "Full-screen-filled" | "Full-screen-in-line" | "Gender-male-filled" | "Gender-male-in-line" | "Gender-female-filled" | "Gender-female-in-line" | "Gift-filled" | "Gift-in-line" | "Google-filled" | "Google-in-line" | "Grab-filled" | "Grab-in-line" | "Help-filled" | "Help-in-line" | "Hide-filled" | "Hide-in-line" | "Image-filled" | "Image-in-line" | "Info-filled" | "Info-in-line" | "Instagram-filled" | "Instagram-in-line" | "Integration-filled" | "Integration-in-line" | "Invite-filled" | "Invite-in-line" | "Language-filled" | "Language-in-line" | "Layout-filled" | "Layout-in-line" | "Learn-filled" | "Learn-in-line" | "Level-filled" | "Level-in-line" | "Light-bulb-filled" | "Light-bulb-in-line" | "Link-filled" | "Link-in-line" | "Linkedin-filled" | "Linkedin-in-line" | "Localization-filled" | "Localization-in-line" | "Location-filled" | "Location-in-line" | "Lock-filled" | "Lock-in-line" | "Logout-filled" | "Logout-in-line" | "Medal-filled" | "Medal-in-line" | "Menu-burger-filled" | "Menu-burger-in-line" | "Menu-close-filled" | "Menu-close-in-line" | "Menu-ellipsis-filled" | "Menu-ellipsis-in-line" | "Menu-open-filled" | "Menu-open-in-line" | "Mic-filled" | "Mic-in-line" | "Microsoft-filled" | "Microsoft-in-line" | "Minimize-filled" | "Minimize-in-line" | "Minus-filled" | "Minus-in-line" | "Mouse-filled" | "Mouse-in-line" | "Multi-choice-filled" | "Multi-choice-in-line" | "Notification-bell-filled" | "Notification-bell-in-line" | "Open-lock-filled" | "Open-lock-in-line" | "Open-in-new-filled" | "Open-in-new-in-line" | "Password-filled" | "Password-in-line" | "Path-filled" | "Path-in-line" | "Pause-filled" | "Pause-in-line" | "Pin-marker-filled" | "Pin-marker-in-line" | "Plan-billing-filled" | "Plan-billing-in-line" | "Play-filled" | "Play-in-line" | "Plus-filled" | "Plus-in-line" | "Premium-filled" | "Premium-in-line" | "Premium-circle-in-line" | "Question-count-filled" | "Question-count-in-line" | "Question-filled" | "Question-in-line" | "Record-filled" | "Record-in-line" | "Reject-filled" | "Refer-in-line" | "Refer-filled" | "Reject-in-line" | "Reset-filled" | "Reset-in-line" | "Review-emoji-1-filled" | "Review-emoji-1-in-line" | "Review-emoji-2-filled" | "Review-emoji-2-in-line" | "Review-emoji-3-filled" | "Review-emoji-3-in-line" | "Review-emoji-4-filled" | "Review-emoji-4-in-line" | "Review-emoji-5-filled" | "Review-emoji-5-in-line" | "Review-filled" | "Review-half-star-filled" | "Review-half-star-in-line" | "Review-in-line" | "Review-star-filled" | "Review-star-in-line" | "Search-filled" | "Search-in-line" | "Secure-filled" | "Secure-in-line" | "Send-filled" | "Send-in-line" | "Settings-filled" | "Settings-in-line" | "Share-filled" | "Share-in-line" | "Skip-next-filled" | "Skip-next-in-line" | "Skip-previous-filled" | "Skip-previous-in-line" | "Sparkle-filled" | "Sparkle-in-line" | "Speedometer-filled" | "Speedometer-in-line" | "Star-filled" | "Star-in-line" | "Stop-filled" | "Stop-in-line" | "Switch-filled" | "Switch-in-line" | "Sync-filled" | "Sync-in-line" | "Tag-filled" | "Tag-in-line" | "Team-filled" | "Team-in-line" | "Test-filled" | "Test-in-line" | "Thumb-down-in-line" | "Thumb-down-filled" | "Thumb-up-in-line" | "Thumb-up-filled" | "Timer-filled" | "Timer-in-line" | "Trophy-filled" | "Trophy-in-line" | "Type-filled" | "Type-in-line" | "Unarchive-filled" | "Unarchive-in-line" | "Unlock-filled" | "Unlock-in-line" | "Upgrade-filled" | "Upgrade-in-line" | "Upload-filled" | "Upload-in-line" | "User-access-filled" | "User-access-in-line" | "User-add-filled" | "User-add-in-line" | "User-profile-filled" | "User-profile-in-line" | "Video-filled" | "Video-in-line" | "View-filled" | "View-in-line" | "Volume-filled" | "Volume-in-line" | "Warning-filled" | "Warning-in-line" | "Validated-filled" | "Validated-in-line" | "Verified-badge-filled" | "Verified-badge-in-line" | "Zoom-in-filled" | "Zoom-in-in-line" | "Zoom-out-filled" | "Zoom-out-in-line" | "Analytics-filled" | "Analytics-in-line" | "Failed-to-load-filled" | "Failed-to-load-in-line" | "History-filled" | "History-in-line" | "TestGorilla-filled" | "TestGorilla-in-line" | "TestGorilla-Pink-filled" | "TestGorilla-Pink-in-line" | "Pencil-to-gorilla-in-line" | "Pencil-to-gorilla-filled" | "Switch-tab-in-line" | "Switch-tab-filled" | "Close-round-in-line" | "Close-round-filled" | "Add" | "Archive" | "Arrow_down" | "Arrow_left" | "Arrow_right" | "Arrow_up" | "Assessment" | "Attempts" | "Book" | "Calendar" | "Candidates" | "Chat-notifications" | "Chat" | "Check" | "Clone" | "Close" | "Code" | "Company" | "Copy" | "Custom-questions" | "Delete" | "Devices" | "Document" | "Dot" | "Download" | "Edit" | "Email-message" | "Empty-placeholder" | "Error" | "Essay" | "Eye-hide" | "Eye-view" | "Feedback-1" | "Feedback-2" | "Feedback-3" | "Feedback-4" | "Feedback-5" | "File-attach" | "File-upload" | "Filter" | "Flag" | "Folder" | "Format-add-file" | "Format-add-table" | "Format-align-L" | "Format-align-R" | "Format-align-center" | "Format-align-justify" | "Format-bold" | "Format-code-active" | "Format-code-block" | "Format-edit-table" | "Format-format" | "Format-function" | "Format-italics" | "Format-list-bulleted" | "Format-list-numbered" | "Format-picker" | "Format-quote" | "Format-subscript" | "Format-superscript" | "Format-text-direction-L" | "Format-text-direction-R" | "Format-text-size" | "Format-underline" | "Format-variable" | "Full-screen" | "Gender-female" | "Gender-male" | "Help-2" | "Help" | "Image" | "Info" | "Integration" | "Language" | "Layout" | "Learn" | "Level" | "Light-bulb" | "Link" | "Loading-spinner" | "Localisation" | "Location" | "Lock" | "Log-out" | "Menu-burger" | "Menu-close" | "Menu-ellipsis" | "Menu-open" | "Microphone" | "Microsoft" | "Minus" | "Mouse-cursor" | "Mouse-grab-cursor" | "Mouse" | "Multi-choice" | "Notifications" | "Password" | "Path" | "Pin-marker" | "Plan-billing" | "Plus" | "Premium" | "Promotion" | "Question-count" | "Refer" | "Reset" | "Review" | "Round-check-filled" | "Round-check" | "Search" | "Secure-checkout" | "Send" | "Settings" | "Social-facebook" | "Social-instagram" | "Social-linkedin" | "Sorting-down-1" | "Sorting-down" | "Speedometer" | "Star-half" | "Star-outline" | "Support" | "Sync" | "Team" | "Test" | "Thunder" | "Timer" | "Trophy" | "Type" | "Unarchive" | "Unlock" | "Upgrade" | "Upload" | "User-access" | "User-add" | "User-invite" | "User-profile" | "User-reject" | "User-switch" | "Video-pause" | "Video-play" | "Video-record" | "Video" | "Volume" | "Warning" | "Zoom-in" | "Zoom-out" | "Fire" | "Gift" | "Grab" | "Share" | "Sparkles" | "Video-stop" | "Minimize" | "Employee" | "Money-bag" | "Suitcase" | "Google" | "Fast-forward" | "Fast-rewind" | "Skip-next" | "Skip-previous" | "TestGorilla" | "Switch-tab";
120
120
  variant: "secondary-inverted";
121
121
  size: "small";
122
122
  disabled: boolean;
@@ -58,6 +58,7 @@ export declare class SegmentedBarComponent {
58
58
  segmentList: SegmentedBarWithPercentage[];
59
59
  constructor(defaultAppTheme: ApplicationTheme);
60
60
  calculatePercentages(segments: SegmentedBar[]): SegmentedBarWithPercentage[];
61
+ get accessibleValueText(): string;
61
62
  static ɵfac: i0.ɵɵFactoryDeclaration<SegmentedBarComponent, [{ optional: true; }]>;
62
63
  static ɵcmp: i0.ɵɵComponentDeclaration<SegmentedBarComponent, "ui-segmented-bar", never, { "width": { "alias": "width"; "required": false; }; "size": { "alias": "size"; "required": false; }; "segments": { "alias": "segments"; "required": true; }; "applicationTheme": { "alias": "applicationTheme"; "required": false; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; }; "ariaRequired": { "alias": "ariaRequired"; "required": false; }; "tooltipStats": { "alias": "tooltipStats"; "required": false; }; }, {}, never, never, false, never>;
63
64
  }
@@ -1,7 +1,7 @@
1
1
  import { OnInit } from '@angular/core';
2
2
  import { MatSnackBarRef } from '@angular/material/snack-bar';
3
3
  import { IconName } from '../../components/icon/icon.model';
4
- import { SnackbarType, SnackbarVariant } from '../../components/snackbar/snackbar.model';
4
+ import { SnackbarLink, SnackbarType, SnackbarVariant } from '../../components/snackbar/snackbar.model';
5
5
  import { ApplicationTheme } from '../../models/application-theme.model';
6
6
  import { LinkTargetType } from '../alert-banner/alert-banner.model';
7
7
  import { DomSanitizer, SafeHtml } from '@angular/platform-browser';
@@ -107,13 +107,22 @@ export declare class SnackbarComponent implements OnInit {
107
107
  safeHtml: SafeHtml;
108
108
  translationContext: string;
109
109
  protected readonly maxCharacters = 70;
110
- constructor(defaultAppTheme: ApplicationTheme, data: any, snackbarRef: MatSnackBarRef<SnackbarComponent>, domSanitizer: DomSanitizer);
110
+ constructor(defaultAppTheme: ApplicationTheme, data: {
111
+ snackbarType: SnackbarType;
112
+ message: string;
113
+ link?: SnackbarLink;
114
+ applicationTheme?: ApplicationTheme;
115
+ html?: string;
116
+ seconds?: number;
117
+ }, snackbarRef: MatSnackBarRef<SnackbarComponent>, domSanitizer: DomSanitizer);
111
118
  ngOnInit(): void;
112
119
  show(): void;
113
120
  hide(): void;
114
121
  onMouseEnter(): void;
115
122
  onMouseLeave(): void;
116
123
  dismissClick(): void;
124
+ onLinkClick(event: Event): void;
125
+ private dismissSnackbar;
117
126
  static ɵfac: i0.ɵɵFactoryDeclaration<SnackbarComponent, [{ optional: true; }, null, null, null]>;
118
127
  static ɵcmp: i0.ɵɵComponentDeclaration<SnackbarComponent, "ui-snackbar", never, { "snackbarType": { "alias": "snackbarType"; "required": false; }; "message": { "alias": "message"; "required": false; }; "html": { "alias": "html"; "required": false; }; "seconds": { "alias": "seconds"; "required": false; }; "includeDismissButton": { "alias": "includeDismissButton"; "required": false; }; "fixed": { "alias": "fixed"; "required": false; }; "linkText": { "alias": "linkText"; "required": false; }; "linkUrl": { "alias": "linkUrl"; "required": false; }; "linkTarget": { "alias": "linkTarget"; "required": false; }; "variant": { "alias": "variant"; "required": false; }; "applicationTheme": { "alias": "applicationTheme"; "required": false; }; "closeButtonTooltip": { "alias": "closeButtonTooltip"; "required": false; }; "ariaDescribedby": { "alias": "ariaDescribedby"; "required": false; }; }, {}, never, never, false, never>;
119
128
  }
@@ -1,2 +1,7 @@
1
1
  export type SnackbarType = 'success' | 'error' | 'info' | 'warning';
2
2
  export type SnackbarVariant = 'desktop' | 'mobile';
3
+ export interface SnackbarLink {
4
+ text: string;
5
+ url: string;
6
+ action: () => void | null;
7
+ }
@@ -1,16 +1,16 @@
1
1
  import { MatSnackBar } from '@angular/material/snack-bar';
2
2
  import { SnackbarComponent } from './snackbar.component';
3
3
  import { ApplicationTheme } from '../../models/application-theme.model';
4
- import { SnackbarType } from './snackbar.model';
4
+ import { SnackbarLink, SnackbarType } from './snackbar.model';
5
5
  import * as i0 from "@angular/core";
6
6
  export declare class SnackbarService {
7
7
  private snackBar;
8
8
  constructor(snackBar: MatSnackBar);
9
- error(message: string, applicationTheme?: ApplicationTheme, html?: string): import("@angular/material/snack-bar").MatSnackBarRef<SnackbarComponent>;
10
- success(message: string, applicationTheme?: ApplicationTheme, html?: string): import("@angular/material/snack-bar").MatSnackBarRef<SnackbarComponent>;
11
- info(message: string, applicationTheme?: ApplicationTheme, html?: string): import("@angular/material/snack-bar").MatSnackBarRef<SnackbarComponent>;
12
- warning(message: string, applicationTheme?: ApplicationTheme, html?: string): import("@angular/material/snack-bar").MatSnackBarRef<SnackbarComponent>;
13
- show(snackbarType: SnackbarType, message: string, applicationTheme?: ApplicationTheme, html?: string): import("@angular/material/snack-bar").MatSnackBarRef<SnackbarComponent>;
9
+ error(message: string, applicationTheme?: ApplicationTheme, html?: string, link?: SnackbarLink, seconds?: number): import("@angular/material/snack-bar").MatSnackBarRef<SnackbarComponent>;
10
+ success(message: string, applicationTheme?: ApplicationTheme, html?: string, link?: SnackbarLink, seconds?: number): import("@angular/material/snack-bar").MatSnackBarRef<SnackbarComponent>;
11
+ info(message: string, applicationTheme?: ApplicationTheme, html?: string, link?: SnackbarLink, seconds?: number): import("@angular/material/snack-bar").MatSnackBarRef<SnackbarComponent>;
12
+ warning(message: string, applicationTheme?: ApplicationTheme, html?: string, link?: SnackbarLink, seconds?: number): import("@angular/material/snack-bar").MatSnackBarRef<SnackbarComponent>;
13
+ show(snackbarType: SnackbarType, message: string, applicationTheme?: ApplicationTheme, html?: string, link?: SnackbarLink, seconds?: number): import("@angular/material/snack-bar").MatSnackBarRef<SnackbarComponent>;
14
14
  static ɵfac: i0.ɵɵFactoryDeclaration<SnackbarService, never>;
15
15
  static ɵprov: i0.ɵɵInjectableDeclaration<SnackbarService>;
16
16
  }
@@ -76,12 +76,17 @@ export class SegmentedBarComponent {
76
76
  return { ...segment, percentage: percentageLabel };
77
77
  });
78
78
  }
79
+ get accessibleValueText() {
80
+ return this.segmentList
81
+ .map((segment, index) => `${segment.tooltip || `Value ${index}`}: ${segment.value}`)
82
+ .join(', ');
83
+ }
79
84
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SegmentedBarComponent, deps: [{ token: 'CANOPYUI_DEFAULT_APPLICATION_THEME', optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
80
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: SegmentedBarComponent, selector: "ui-segmented-bar", inputs: { width: "width", size: "size", segments: "segments", applicationTheme: "applicationTheme", ariaLabel: "ariaLabel", ariaRequired: "ariaRequired", tooltipStats: "tooltipStats" }, ngImport: i0, template: "<div\n class=\"segmented-bar-container\"\n [attr.theme]=\"applicationTheme\"\n [ngClass]=\"'segment-size-' + size\"\n [style.width]=\"width\"\n [uiTooltipTemplate]=\"segmentedStats\"\n [showTooltip]=\"tooltipStats\"\n>\n <ng-container *ngFor=\"let segment of segmentList\">\n <div\n class=\"segmented-bar\"\n *ngIf=\"segment.value\"\n [ngClass]=\"segment.color\"\n [ngStyle]=\"{ flex: segment.value }\"\n [matTooltip]=\"!tooltipStats ? segment.tooltip ?? '' : ''\"\n [matTooltipClass]=\"applicationTheme\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-required]=\"ariaRequired\"\n >\n <ui-icon *ngIf=\"segment.icon\" [applicationTheme]=\"applicationTheme\" [name]=\"segment.icon\"></ui-icon>\n <span>{{ segment.value }}</span>\n </div>\n </ng-container>\n</div>\n<ng-template #segmentedStats>\n <div class=\"stats-container\">\n <div class=\"name-column\">\n @for (segment of segmentList; track segment.value) {\n <div class=\"segment\">\n <div [class]=\"'point ' + segment.color\"></div>\n <span [class]=\"'label ' + segment.color\">{{ segment.tooltip }}</span>\n </div>\n }\n </div>\n\n <div class=\"value-column\">\n @for (segment of segmentList; track segment.value) {\n <div class=\"segment\">\n <span>{{ segment.value }}</span>\n </div>\n }\n </div>\n\n <div class=\"percentage-column\">\n @for (segment of segmentList; track segment.value) {\n <div class=\"segment\">\n <span>{{ segment.percentage }}</span>\n </div>\n }\n </div>\n\n </div>\n</ng-template>\n\n<ng-template #segmentedStats>\n <div class=\"stats-container\">\n <div class=\"name-column\">\n @for (segment of segmentList; track segment.value) {\n <div class=\"segment\">\n <div [class]=\"'point ' + segment.color\"></div>\n <span [class]=\"'label ' + segment.color\">{{ segment.tooltip }}</span>\n </div>\n }\n </div>\n\n <div class=\"value-column\">\n @for (segment of segmentList; track segment.value) {\n <div class=\"segment\">\n <span>{{ segment.value }}</span>\n </div>\n }\n </div>\n\n <div class=\"percentage-column\">\n @for (segment of segmentList; track segment.value) {\n <div class=\"segment\">\n <span>{{ segment.percentage }}</span>\n </div>\n }\n </div>\n\n </div>\n</ng-template>\n\n", styles: ["@import\"https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600;1,700&display=swap\";.bg-teal-60b{background:#1c443c}.bg-teal-30b{background:#31766a}.bg-teal-default{background:#46a997}.bg-teal-30w{background:#7ec3b6}.bg-teal-60w{background:#b5ddd5}.bg-teal-secondary{background:#cbd6cb}.bg-teal-90w{background:#ecf6f5}.bg-petrol-60b{background:#102930}.bg-petrol-30b{background:#1b4754}.bg-petrol-default{background:#276678}.bg-petrol-30w{background:#6894a0}.bg-petrol-60w{background:#a9c2c9}.bg-petrol-secondary{background:#c8d7de}.bg-petrol-90w{background:#e9f0f1}.bg-error-60b{background:#513131}.bg-error-30b{background:#8e5655}.bg-error-60w{background:#e3c3c6}.bg-error-secondary{background:#f0dad9}.bg-error-default{background:#cb7b7a}.bg-warning-secondary{background:#f0d6bb}.bg-warning-default{background:#cca45f}.bg-black{background:#000}.bg-dark{background:#888}.bg-medium{background:#e0e0e0}.bg-grey{background:#ededed}.bg-light{background:#f6f6f6}.bg-white{background:#fff}.bg-box-shadow{background:#00000014}.bg-navigation-subtitle{background:#528593}.bgc-teal-60b{background-color:#1c443c}.bgc-teal-30b{background-color:#31766a}.bgc-teal-default{background-color:#46a997}.bgc-teal-30w{background-color:#7ec3b6}.bgc-teal-60w{background-color:#b5ddd5}.bgc-teal-secondary{background-color:#cbd6cb}.bgc-teal-90w{background-color:#ecf6f5}.bgc-petrol-60b{background-color:#102930}.bgc-petrol-30b{background-color:#1b4754}.bgc-petrol-default{background-color:#276678}.bgc-petrol-30w{background-color:#6894a0}.bgc-petrol-60w{background-color:#a9c2c9}.bgc-petrol-secondary{background-color:#c8d7de}.bgc-petrol-90w{background-color:#e9f0f1}.bgc-error-60b{background-color:#513131}.bgc-error-30b{background-color:#8e5655}.bgc-error-60w{background-color:#e3c3c6}.bgc-error-secondary{background-color:#f0dad9}.bgc-error-default{background-color:#cb7b7a}.bgc-warning-secondary{background-color:#f0d6bb}.bgc-warning-default{background-color:#cca45f}.bgc-black{background-color:#000}.bgc-dark{background-color:#888}.bgc-medium{background-color:#e0e0e0}.bgc-grey{background-color:#ededed}.bgc-light{background-color:#f6f6f6}.bgc-white{background-color:#fff}.bgc-box-shadow{background-color:#00000014}.bgc-navigation-subtitle{background-color:#528593}.segmented-bar-container{width:100%;display:flex;flex-direction:row}.segmented-bar-container.segment-size-small{height:16px}.segmented-bar-container.segment-size-large{height:30px}.segmented-bar-container .segmented-bar{color:#000;font-weight:700;display:flex;justify-content:center;align-items:center;background:#46a997}.segmented-bar-container .segmented-bar ui-icon{margin-right:4px}.segmented-bar-container .segmented-bar.teal{background:#46a997}.segmented-bar-container .segmented-bar.rhubarb{background:#cb7b7a}.segmented-bar-container .segmented-bar.light-teal{background:#cbd6cb}.segmented-bar-container .segmented-bar.grey{background:#ededed}.segmented-bar-container[theme=dark].segment-size-small,.segmented-bar-container[theme=light].segment-size-small{font-size:12px}.segmented-bar-container[theme=dark].segment-size-large,.segmented-bar-container[theme=light].segment-size-large{font-size:14px}.segmented-bar-container[theme=dark] .segmented-bar,.segmented-bar-container[theme=light] .segmented-bar{padding:0 4px;color:#242424;background:#80d63e}.segmented-bar-container[theme=dark] .segmented-bar.teal,.segmented-bar-container[theme=light] .segmented-bar.teal{background:#80d63e}.segmented-bar-container[theme=dark] .segmented-bar.rhubarb,.segmented-bar-container[theme=light] .segmented-bar.rhubarb{background:#ffac9a}.segmented-bar-container[theme=dark] .segmented-bar.light-teal,.segmented-bar-container[theme=light] .segmented-bar.light-teal{background:#ffe1b3}.segmented-bar-container[theme=dark] .segmented-bar.grey,.segmented-bar-container[theme=light] .segmented-bar.grey{background:#e9e9e9}::ng-deep .mat-mdc-tooltip{background-color:#a9c2c9;font-family:Open Sans,serif;font-weight:400;font-size:12px;border-radius:4px;overflow:visible;max-width:248px;padding:6px 2px;--mdc-plain-tooltip-container-color: none;--mdc-plain-tooltip-supporting-text-color: $tgo-black}.stats-container{display:flex;flex-direction:row;max-width:248px}.stats-container .segment{display:flex;flex-direction:row;align-items:center}.stats-container .segment .point{margin-right:4px;width:8px;height:8px;border-radius:50%}.stats-container .segment .point.teal{background:#80d63e}.stats-container .segment .point.rhubarb{background:#ffac9a}.stats-container .segment .point.light-teal{background:#ffe1b3}.stats-container .segment .point.grey{background:#e9e9e9}.stats-container .segment .label{margin-right:8px}.stats-container .segment .label.teal{color:#80d63e}.stats-container .segment .label.rhubarb{color:#ffac9a}.stats-container .segment .label.light-teal{color:#ffe1b3}.stats-container .segment .label.grey{color:#e9e9e9}.stats-container .name-column span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.stats-container .value-column{margin-right:8px;color:#fff;min-width:28px}.stats-container .percentage-column{min-width:28px;color:#919191}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { 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: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: i3.IconComponent, selector: "ui-icon", inputs: ["size", "cssClass", "name", "color", "filled", "toggleIconStyle", "applicationTheme", "useFullIconName"] }, { kind: "directive", type: i4.TooltipTemplateDirective, selector: "[uiTooltipTemplate]", inputs: ["tooltipPosition", "showTooltip", "uiTooltipTemplate"] }] }); }
85
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: SegmentedBarComponent, selector: "ui-segmented-bar", inputs: { width: "width", size: "size", segments: "segments", applicationTheme: "applicationTheme", ariaLabel: "ariaLabel", ariaRequired: "ariaRequired", tooltipStats: "tooltipStats" }, ngImport: i0, template: "<div\n class=\"segmented-bar-container\"\n [attr.theme]=\"applicationTheme\"\n [ngClass]=\"'segment-size-' + size\"\n [style.width]=\"width\"\n [uiTooltipTemplate]=\"segmentedStats\"\n [showTooltip]=\"tooltipStats\"\n [attr.aria-label]=\"accessibleValueText\"\n role=\"graphics-object\"\n [tabIndex]=\"0\"\n>\n <ng-container *ngFor=\"let segment of segmentList\">\n <div\n class=\"segmented-bar\"\n *ngIf=\"segment.value\"\n [ngClass]=\"segment.color\"\n [ngStyle]=\"{ flex: segment.value }\"\n [matTooltip]=\"!tooltipStats ? segment.tooltip ?? '' : ''\"\n [matTooltipClass]=\"applicationTheme\"\n [attr.aria-hidden]=\"true\"\n [attr.aria-required]=\"ariaRequired\"\n >\n <ui-icon *ngIf=\"segment.icon\" [applicationTheme]=\"applicationTheme\" [name]=\"segment.icon\"></ui-icon>\n <span>{{ segment.value }}</span>\n </div>\n </ng-container>\n</div>\n<ng-template #segmentedStats>\n <div class=\"stats-container\">\n <div class=\"name-column\">\n @for (segment of segmentList; track segment.value) {\n <div class=\"segment\">\n <div [class]=\"'point ' + segment.color\"></div>\n <span [class]=\"'label ' + segment.color\">{{ segment.tooltip }}</span>\n </div>\n }\n </div>\n\n <div class=\"value-column\">\n @for (segment of segmentList; track segment.value) {\n <div class=\"segment\">\n <span>{{ segment.value }}</span>\n </div>\n }\n </div>\n\n <div class=\"percentage-column\">\n @for (segment of segmentList; track segment.value) {\n <div class=\"segment\">\n <span>{{ segment.percentage }}</span>\n </div>\n }\n </div>\n\n </div>\n</ng-template>\n\n<ng-template #segmentedStats>\n <div class=\"stats-container\">\n <div class=\"name-column\">\n @for (segment of segmentList; track segment.value) {\n <div class=\"segment\">\n <div [class]=\"'point ' + segment.color\"></div>\n <span [class]=\"'label ' + segment.color\">{{ segment.tooltip }}</span>\n </div>\n }\n </div>\n\n <div class=\"value-column\">\n @for (segment of segmentList; track segment.value) {\n <div class=\"segment\">\n <span>{{ segment.value }}</span>\n </div>\n }\n </div>\n\n <div class=\"percentage-column\">\n @for (segment of segmentList; track segment.value) {\n <div class=\"segment\">\n <span>{{ segment.percentage }}</span>\n </div>\n }\n </div>\n\n </div>\n</ng-template>\n\n", styles: ["@import\"https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600;1,700&display=swap\";.bg-teal-60b{background:#1c443c}.bg-teal-30b{background:#31766a}.bg-teal-default{background:#46a997}.bg-teal-30w{background:#7ec3b6}.bg-teal-60w{background:#b5ddd5}.bg-teal-secondary{background:#cbd6cb}.bg-teal-90w{background:#ecf6f5}.bg-petrol-60b{background:#102930}.bg-petrol-30b{background:#1b4754}.bg-petrol-default{background:#276678}.bg-petrol-30w{background:#6894a0}.bg-petrol-60w{background:#a9c2c9}.bg-petrol-secondary{background:#c8d7de}.bg-petrol-90w{background:#e9f0f1}.bg-error-60b{background:#513131}.bg-error-30b{background:#8e5655}.bg-error-60w{background:#e3c3c6}.bg-error-secondary{background:#f0dad9}.bg-error-default{background:#cb7b7a}.bg-warning-secondary{background:#f0d6bb}.bg-warning-default{background:#cca45f}.bg-black{background:#000}.bg-dark{background:#888}.bg-medium{background:#e0e0e0}.bg-grey{background:#ededed}.bg-light{background:#f6f6f6}.bg-white{background:#fff}.bg-box-shadow{background:#00000014}.bg-navigation-subtitle{background:#528593}.bgc-teal-60b{background-color:#1c443c}.bgc-teal-30b{background-color:#31766a}.bgc-teal-default{background-color:#46a997}.bgc-teal-30w{background-color:#7ec3b6}.bgc-teal-60w{background-color:#b5ddd5}.bgc-teal-secondary{background-color:#cbd6cb}.bgc-teal-90w{background-color:#ecf6f5}.bgc-petrol-60b{background-color:#102930}.bgc-petrol-30b{background-color:#1b4754}.bgc-petrol-default{background-color:#276678}.bgc-petrol-30w{background-color:#6894a0}.bgc-petrol-60w{background-color:#a9c2c9}.bgc-petrol-secondary{background-color:#c8d7de}.bgc-petrol-90w{background-color:#e9f0f1}.bgc-error-60b{background-color:#513131}.bgc-error-30b{background-color:#8e5655}.bgc-error-60w{background-color:#e3c3c6}.bgc-error-secondary{background-color:#f0dad9}.bgc-error-default{background-color:#cb7b7a}.bgc-warning-secondary{background-color:#f0d6bb}.bgc-warning-default{background-color:#cca45f}.bgc-black{background-color:#000}.bgc-dark{background-color:#888}.bgc-medium{background-color:#e0e0e0}.bgc-grey{background-color:#ededed}.bgc-light{background-color:#f6f6f6}.bgc-white{background-color:#fff}.bgc-box-shadow{background-color:#00000014}.bgc-navigation-subtitle{background-color:#528593}.segmented-bar-container{width:100%;display:flex;flex-direction:row}.segmented-bar-container.segment-size-small{height:16px}.segmented-bar-container.segment-size-large{height:30px}.segmented-bar-container .segmented-bar{color:#000;font-weight:700;display:flex;justify-content:center;align-items:center;background:#46a997}.segmented-bar-container .segmented-bar ui-icon{margin-right:4px}.segmented-bar-container .segmented-bar.teal{background:#46a997}.segmented-bar-container .segmented-bar.rhubarb{background:#cb7b7a}.segmented-bar-container .segmented-bar.light-teal{background:#cbd6cb}.segmented-bar-container .segmented-bar.grey{background:#ededed}.segmented-bar-container[theme=dark].segment-size-small,.segmented-bar-container[theme=light].segment-size-small{font-size:12px}.segmented-bar-container[theme=dark].segment-size-large,.segmented-bar-container[theme=light].segment-size-large{font-size:14px}.segmented-bar-container[theme=dark] .segmented-bar,.segmented-bar-container[theme=light] .segmented-bar{padding:0 4px;color:#242424;background:#80d63e}.segmented-bar-container[theme=dark] .segmented-bar.teal,.segmented-bar-container[theme=light] .segmented-bar.teal{background:#80d63e}.segmented-bar-container[theme=dark] .segmented-bar.rhubarb,.segmented-bar-container[theme=light] .segmented-bar.rhubarb{background:#ffac9a}.segmented-bar-container[theme=dark] .segmented-bar.light-teal,.segmented-bar-container[theme=light] .segmented-bar.light-teal{background:#ffe1b3}.segmented-bar-container[theme=dark] .segmented-bar.grey,.segmented-bar-container[theme=light] .segmented-bar.grey{background:#e9e9e9}::ng-deep .mat-mdc-tooltip{background-color:#a9c2c9;font-family:Open Sans,serif;font-weight:400;font-size:12px;border-radius:4px;overflow:visible;max-width:248px;padding:6px 2px;--mdc-plain-tooltip-container-color: none;--mdc-plain-tooltip-supporting-text-color: $tgo-black}.stats-container{display:flex;flex-direction:row;max-width:248px}.stats-container .segment{display:flex;flex-direction:row;align-items:center}.stats-container .segment .point{margin-right:4px;width:8px;height:8px;border-radius:50%}.stats-container .segment .point.teal{background:#80d63e}.stats-container .segment .point.rhubarb{background:#ffac9a}.stats-container .segment .point.light-teal{background:#ffe1b3}.stats-container .segment .point.grey{background:#e9e9e9}.stats-container .segment .label{margin-right:8px}.stats-container .segment .label.teal{color:#80d63e}.stats-container .segment .label.rhubarb{color:#ffac9a}.stats-container .segment .label.light-teal{color:#ffe1b3}.stats-container .segment .label.grey{color:#e9e9e9}.stats-container .name-column span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.stats-container .value-column{margin-right:8px;color:#fff;min-width:28px}.stats-container .percentage-column{min-width:28px;color:#919191}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { 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: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: i3.IconComponent, selector: "ui-icon", inputs: ["size", "cssClass", "name", "color", "filled", "toggleIconStyle", "applicationTheme", "useFullIconName"] }, { kind: "directive", type: i4.TooltipTemplateDirective, selector: "[uiTooltipTemplate]", inputs: ["tooltipPosition", "showTooltip", "uiTooltipTemplate"] }] }); }
81
86
  }
82
87
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SegmentedBarComponent, decorators: [{
83
88
  type: Component,
84
- args: [{ selector: 'ui-segmented-bar', template: "<div\n class=\"segmented-bar-container\"\n [attr.theme]=\"applicationTheme\"\n [ngClass]=\"'segment-size-' + size\"\n [style.width]=\"width\"\n [uiTooltipTemplate]=\"segmentedStats\"\n [showTooltip]=\"tooltipStats\"\n>\n <ng-container *ngFor=\"let segment of segmentList\">\n <div\n class=\"segmented-bar\"\n *ngIf=\"segment.value\"\n [ngClass]=\"segment.color\"\n [ngStyle]=\"{ flex: segment.value }\"\n [matTooltip]=\"!tooltipStats ? segment.tooltip ?? '' : ''\"\n [matTooltipClass]=\"applicationTheme\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-required]=\"ariaRequired\"\n >\n <ui-icon *ngIf=\"segment.icon\" [applicationTheme]=\"applicationTheme\" [name]=\"segment.icon\"></ui-icon>\n <span>{{ segment.value }}</span>\n </div>\n </ng-container>\n</div>\n<ng-template #segmentedStats>\n <div class=\"stats-container\">\n <div class=\"name-column\">\n @for (segment of segmentList; track segment.value) {\n <div class=\"segment\">\n <div [class]=\"'point ' + segment.color\"></div>\n <span [class]=\"'label ' + segment.color\">{{ segment.tooltip }}</span>\n </div>\n }\n </div>\n\n <div class=\"value-column\">\n @for (segment of segmentList; track segment.value) {\n <div class=\"segment\">\n <span>{{ segment.value }}</span>\n </div>\n }\n </div>\n\n <div class=\"percentage-column\">\n @for (segment of segmentList; track segment.value) {\n <div class=\"segment\">\n <span>{{ segment.percentage }}</span>\n </div>\n }\n </div>\n\n </div>\n</ng-template>\n\n<ng-template #segmentedStats>\n <div class=\"stats-container\">\n <div class=\"name-column\">\n @for (segment of segmentList; track segment.value) {\n <div class=\"segment\">\n <div [class]=\"'point ' + segment.color\"></div>\n <span [class]=\"'label ' + segment.color\">{{ segment.tooltip }}</span>\n </div>\n }\n </div>\n\n <div class=\"value-column\">\n @for (segment of segmentList; track segment.value) {\n <div class=\"segment\">\n <span>{{ segment.value }}</span>\n </div>\n }\n </div>\n\n <div class=\"percentage-column\">\n @for (segment of segmentList; track segment.value) {\n <div class=\"segment\">\n <span>{{ segment.percentage }}</span>\n </div>\n }\n </div>\n\n </div>\n</ng-template>\n\n", styles: ["@import\"https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600;1,700&display=swap\";.bg-teal-60b{background:#1c443c}.bg-teal-30b{background:#31766a}.bg-teal-default{background:#46a997}.bg-teal-30w{background:#7ec3b6}.bg-teal-60w{background:#b5ddd5}.bg-teal-secondary{background:#cbd6cb}.bg-teal-90w{background:#ecf6f5}.bg-petrol-60b{background:#102930}.bg-petrol-30b{background:#1b4754}.bg-petrol-default{background:#276678}.bg-petrol-30w{background:#6894a0}.bg-petrol-60w{background:#a9c2c9}.bg-petrol-secondary{background:#c8d7de}.bg-petrol-90w{background:#e9f0f1}.bg-error-60b{background:#513131}.bg-error-30b{background:#8e5655}.bg-error-60w{background:#e3c3c6}.bg-error-secondary{background:#f0dad9}.bg-error-default{background:#cb7b7a}.bg-warning-secondary{background:#f0d6bb}.bg-warning-default{background:#cca45f}.bg-black{background:#000}.bg-dark{background:#888}.bg-medium{background:#e0e0e0}.bg-grey{background:#ededed}.bg-light{background:#f6f6f6}.bg-white{background:#fff}.bg-box-shadow{background:#00000014}.bg-navigation-subtitle{background:#528593}.bgc-teal-60b{background-color:#1c443c}.bgc-teal-30b{background-color:#31766a}.bgc-teal-default{background-color:#46a997}.bgc-teal-30w{background-color:#7ec3b6}.bgc-teal-60w{background-color:#b5ddd5}.bgc-teal-secondary{background-color:#cbd6cb}.bgc-teal-90w{background-color:#ecf6f5}.bgc-petrol-60b{background-color:#102930}.bgc-petrol-30b{background-color:#1b4754}.bgc-petrol-default{background-color:#276678}.bgc-petrol-30w{background-color:#6894a0}.bgc-petrol-60w{background-color:#a9c2c9}.bgc-petrol-secondary{background-color:#c8d7de}.bgc-petrol-90w{background-color:#e9f0f1}.bgc-error-60b{background-color:#513131}.bgc-error-30b{background-color:#8e5655}.bgc-error-60w{background-color:#e3c3c6}.bgc-error-secondary{background-color:#f0dad9}.bgc-error-default{background-color:#cb7b7a}.bgc-warning-secondary{background-color:#f0d6bb}.bgc-warning-default{background-color:#cca45f}.bgc-black{background-color:#000}.bgc-dark{background-color:#888}.bgc-medium{background-color:#e0e0e0}.bgc-grey{background-color:#ededed}.bgc-light{background-color:#f6f6f6}.bgc-white{background-color:#fff}.bgc-box-shadow{background-color:#00000014}.bgc-navigation-subtitle{background-color:#528593}.segmented-bar-container{width:100%;display:flex;flex-direction:row}.segmented-bar-container.segment-size-small{height:16px}.segmented-bar-container.segment-size-large{height:30px}.segmented-bar-container .segmented-bar{color:#000;font-weight:700;display:flex;justify-content:center;align-items:center;background:#46a997}.segmented-bar-container .segmented-bar ui-icon{margin-right:4px}.segmented-bar-container .segmented-bar.teal{background:#46a997}.segmented-bar-container .segmented-bar.rhubarb{background:#cb7b7a}.segmented-bar-container .segmented-bar.light-teal{background:#cbd6cb}.segmented-bar-container .segmented-bar.grey{background:#ededed}.segmented-bar-container[theme=dark].segment-size-small,.segmented-bar-container[theme=light].segment-size-small{font-size:12px}.segmented-bar-container[theme=dark].segment-size-large,.segmented-bar-container[theme=light].segment-size-large{font-size:14px}.segmented-bar-container[theme=dark] .segmented-bar,.segmented-bar-container[theme=light] .segmented-bar{padding:0 4px;color:#242424;background:#80d63e}.segmented-bar-container[theme=dark] .segmented-bar.teal,.segmented-bar-container[theme=light] .segmented-bar.teal{background:#80d63e}.segmented-bar-container[theme=dark] .segmented-bar.rhubarb,.segmented-bar-container[theme=light] .segmented-bar.rhubarb{background:#ffac9a}.segmented-bar-container[theme=dark] .segmented-bar.light-teal,.segmented-bar-container[theme=light] .segmented-bar.light-teal{background:#ffe1b3}.segmented-bar-container[theme=dark] .segmented-bar.grey,.segmented-bar-container[theme=light] .segmented-bar.grey{background:#e9e9e9}::ng-deep .mat-mdc-tooltip{background-color:#a9c2c9;font-family:Open Sans,serif;font-weight:400;font-size:12px;border-radius:4px;overflow:visible;max-width:248px;padding:6px 2px;--mdc-plain-tooltip-container-color: none;--mdc-plain-tooltip-supporting-text-color: $tgo-black}.stats-container{display:flex;flex-direction:row;max-width:248px}.stats-container .segment{display:flex;flex-direction:row;align-items:center}.stats-container .segment .point{margin-right:4px;width:8px;height:8px;border-radius:50%}.stats-container .segment .point.teal{background:#80d63e}.stats-container .segment .point.rhubarb{background:#ffac9a}.stats-container .segment .point.light-teal{background:#ffe1b3}.stats-container .segment .point.grey{background:#e9e9e9}.stats-container .segment .label{margin-right:8px}.stats-container .segment .label.teal{color:#80d63e}.stats-container .segment .label.rhubarb{color:#ffac9a}.stats-container .segment .label.light-teal{color:#ffe1b3}.stats-container .segment .label.grey{color:#e9e9e9}.stats-container .name-column span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.stats-container .value-column{margin-right:8px;color:#fff;min-width:28px}.stats-container .percentage-column{min-width:28px;color:#919191}\n"] }]
89
+ args: [{ selector: 'ui-segmented-bar', template: "<div\n class=\"segmented-bar-container\"\n [attr.theme]=\"applicationTheme\"\n [ngClass]=\"'segment-size-' + size\"\n [style.width]=\"width\"\n [uiTooltipTemplate]=\"segmentedStats\"\n [showTooltip]=\"tooltipStats\"\n [attr.aria-label]=\"accessibleValueText\"\n role=\"graphics-object\"\n [tabIndex]=\"0\"\n>\n <ng-container *ngFor=\"let segment of segmentList\">\n <div\n class=\"segmented-bar\"\n *ngIf=\"segment.value\"\n [ngClass]=\"segment.color\"\n [ngStyle]=\"{ flex: segment.value }\"\n [matTooltip]=\"!tooltipStats ? segment.tooltip ?? '' : ''\"\n [matTooltipClass]=\"applicationTheme\"\n [attr.aria-hidden]=\"true\"\n [attr.aria-required]=\"ariaRequired\"\n >\n <ui-icon *ngIf=\"segment.icon\" [applicationTheme]=\"applicationTheme\" [name]=\"segment.icon\"></ui-icon>\n <span>{{ segment.value }}</span>\n </div>\n </ng-container>\n</div>\n<ng-template #segmentedStats>\n <div class=\"stats-container\">\n <div class=\"name-column\">\n @for (segment of segmentList; track segment.value) {\n <div class=\"segment\">\n <div [class]=\"'point ' + segment.color\"></div>\n <span [class]=\"'label ' + segment.color\">{{ segment.tooltip }}</span>\n </div>\n }\n </div>\n\n <div class=\"value-column\">\n @for (segment of segmentList; track segment.value) {\n <div class=\"segment\">\n <span>{{ segment.value }}</span>\n </div>\n }\n </div>\n\n <div class=\"percentage-column\">\n @for (segment of segmentList; track segment.value) {\n <div class=\"segment\">\n <span>{{ segment.percentage }}</span>\n </div>\n }\n </div>\n\n </div>\n</ng-template>\n\n<ng-template #segmentedStats>\n <div class=\"stats-container\">\n <div class=\"name-column\">\n @for (segment of segmentList; track segment.value) {\n <div class=\"segment\">\n <div [class]=\"'point ' + segment.color\"></div>\n <span [class]=\"'label ' + segment.color\">{{ segment.tooltip }}</span>\n </div>\n }\n </div>\n\n <div class=\"value-column\">\n @for (segment of segmentList; track segment.value) {\n <div class=\"segment\">\n <span>{{ segment.value }}</span>\n </div>\n }\n </div>\n\n <div class=\"percentage-column\">\n @for (segment of segmentList; track segment.value) {\n <div class=\"segment\">\n <span>{{ segment.percentage }}</span>\n </div>\n }\n </div>\n\n </div>\n</ng-template>\n\n", styles: ["@import\"https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600;1,700&display=swap\";.bg-teal-60b{background:#1c443c}.bg-teal-30b{background:#31766a}.bg-teal-default{background:#46a997}.bg-teal-30w{background:#7ec3b6}.bg-teal-60w{background:#b5ddd5}.bg-teal-secondary{background:#cbd6cb}.bg-teal-90w{background:#ecf6f5}.bg-petrol-60b{background:#102930}.bg-petrol-30b{background:#1b4754}.bg-petrol-default{background:#276678}.bg-petrol-30w{background:#6894a0}.bg-petrol-60w{background:#a9c2c9}.bg-petrol-secondary{background:#c8d7de}.bg-petrol-90w{background:#e9f0f1}.bg-error-60b{background:#513131}.bg-error-30b{background:#8e5655}.bg-error-60w{background:#e3c3c6}.bg-error-secondary{background:#f0dad9}.bg-error-default{background:#cb7b7a}.bg-warning-secondary{background:#f0d6bb}.bg-warning-default{background:#cca45f}.bg-black{background:#000}.bg-dark{background:#888}.bg-medium{background:#e0e0e0}.bg-grey{background:#ededed}.bg-light{background:#f6f6f6}.bg-white{background:#fff}.bg-box-shadow{background:#00000014}.bg-navigation-subtitle{background:#528593}.bgc-teal-60b{background-color:#1c443c}.bgc-teal-30b{background-color:#31766a}.bgc-teal-default{background-color:#46a997}.bgc-teal-30w{background-color:#7ec3b6}.bgc-teal-60w{background-color:#b5ddd5}.bgc-teal-secondary{background-color:#cbd6cb}.bgc-teal-90w{background-color:#ecf6f5}.bgc-petrol-60b{background-color:#102930}.bgc-petrol-30b{background-color:#1b4754}.bgc-petrol-default{background-color:#276678}.bgc-petrol-30w{background-color:#6894a0}.bgc-petrol-60w{background-color:#a9c2c9}.bgc-petrol-secondary{background-color:#c8d7de}.bgc-petrol-90w{background-color:#e9f0f1}.bgc-error-60b{background-color:#513131}.bgc-error-30b{background-color:#8e5655}.bgc-error-60w{background-color:#e3c3c6}.bgc-error-secondary{background-color:#f0dad9}.bgc-error-default{background-color:#cb7b7a}.bgc-warning-secondary{background-color:#f0d6bb}.bgc-warning-default{background-color:#cca45f}.bgc-black{background-color:#000}.bgc-dark{background-color:#888}.bgc-medium{background-color:#e0e0e0}.bgc-grey{background-color:#ededed}.bgc-light{background-color:#f6f6f6}.bgc-white{background-color:#fff}.bgc-box-shadow{background-color:#00000014}.bgc-navigation-subtitle{background-color:#528593}.segmented-bar-container{width:100%;display:flex;flex-direction:row}.segmented-bar-container.segment-size-small{height:16px}.segmented-bar-container.segment-size-large{height:30px}.segmented-bar-container .segmented-bar{color:#000;font-weight:700;display:flex;justify-content:center;align-items:center;background:#46a997}.segmented-bar-container .segmented-bar ui-icon{margin-right:4px}.segmented-bar-container .segmented-bar.teal{background:#46a997}.segmented-bar-container .segmented-bar.rhubarb{background:#cb7b7a}.segmented-bar-container .segmented-bar.light-teal{background:#cbd6cb}.segmented-bar-container .segmented-bar.grey{background:#ededed}.segmented-bar-container[theme=dark].segment-size-small,.segmented-bar-container[theme=light].segment-size-small{font-size:12px}.segmented-bar-container[theme=dark].segment-size-large,.segmented-bar-container[theme=light].segment-size-large{font-size:14px}.segmented-bar-container[theme=dark] .segmented-bar,.segmented-bar-container[theme=light] .segmented-bar{padding:0 4px;color:#242424;background:#80d63e}.segmented-bar-container[theme=dark] .segmented-bar.teal,.segmented-bar-container[theme=light] .segmented-bar.teal{background:#80d63e}.segmented-bar-container[theme=dark] .segmented-bar.rhubarb,.segmented-bar-container[theme=light] .segmented-bar.rhubarb{background:#ffac9a}.segmented-bar-container[theme=dark] .segmented-bar.light-teal,.segmented-bar-container[theme=light] .segmented-bar.light-teal{background:#ffe1b3}.segmented-bar-container[theme=dark] .segmented-bar.grey,.segmented-bar-container[theme=light] .segmented-bar.grey{background:#e9e9e9}::ng-deep .mat-mdc-tooltip{background-color:#a9c2c9;font-family:Open Sans,serif;font-weight:400;font-size:12px;border-radius:4px;overflow:visible;max-width:248px;padding:6px 2px;--mdc-plain-tooltip-container-color: none;--mdc-plain-tooltip-supporting-text-color: $tgo-black}.stats-container{display:flex;flex-direction:row;max-width:248px}.stats-container .segment{display:flex;flex-direction:row;align-items:center}.stats-container .segment .point{margin-right:4px;width:8px;height:8px;border-radius:50%}.stats-container .segment .point.teal{background:#80d63e}.stats-container .segment .point.rhubarb{background:#ffac9a}.stats-container .segment .point.light-teal{background:#ffe1b3}.stats-container .segment .point.grey{background:#e9e9e9}.stats-container .segment .label{margin-right:8px}.stats-container .segment .label.teal{color:#80d63e}.stats-container .segment .label.rhubarb{color:#ffac9a}.stats-container .segment .label.light-teal{color:#ffe1b3}.stats-container .segment .label.grey{color:#e9e9e9}.stats-container .name-column span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.stats-container .value-column{margin-right:8px;color:#fff;min-width:28px}.stats-container .percentage-column{min-width:28px;color:#919191}\n"] }]
85
90
  }], ctorParameters: () => [{ type: undefined, decorators: [{
86
91
  type: Optional
87
92
  }, {
@@ -103,4 +108,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
103
108
  }], tooltipStats: [{
104
109
  type: Input
105
110
  }] } });
106
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VnbWVudGVkLWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90Z28tY2Fub3B5LXVpL2NvbXBvbmVudHMvc2VnbWVudGVkLWJhci9zZWdtZW50ZWQtYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rnby1jYW5vcHktdWkvY29tcG9uZW50cy9zZWdtZW50ZWQtYmFyL3NlZ21lbnRlZC1iYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBU25FLE1BQU0sT0FBTyxxQkFBcUI7SUFtQmhDOzs7OztPQUtHO0lBQ0gsSUFBK0IsUUFBUSxDQUFDLFFBQXdCO1FBQy9ELElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFxQ0QsWUFDNkUsZUFBaUM7UUFBakMsb0JBQWUsR0FBZixlQUFlLENBQWtCO1FBaEU5Rzs7Ozs7O1dBTUc7UUFDTSxVQUFLLEdBQUcsTUFBTSxDQUFDO1FBRXhCOzs7Ozs7V0FNRztRQUNNLFNBQUksR0FBd0IsT0FBTyxDQUFDO1FBWTdDOzs7Ozs7V0FNRztRQUNNLHFCQUFnQixHQUFxQixPQUFPLENBQUM7UUFVdEQ7Ozs7O1dBS0c7UUFDTSxpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUU5Qjs7Ozs7V0FLRztRQUNNLGlCQUFZLEdBQUcsS0FBSyxDQUFDO1FBRTlCLGdCQUFXLEdBQWlDLEVBQUUsQ0FBQztRQUs3QyxJQUFJLGVBQWUsRUFBRSxDQUFDO1lBQ3BCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxlQUFlLENBQUM7UUFDMUMsQ0FBQztJQUNILENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxRQUF3QjtRQUMzQyxNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsR0FBRyxHQUFHLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDeEUsT0FBTyxRQUFRLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQzVCLElBQUksVUFBVSxHQUFHLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsR0FBRyxHQUFHLENBQUM7WUFDL0MsSUFBSSxlQUFlLEdBQUcsRUFBRSxDQUFDO1lBRXpCLElBQUksVUFBVSxLQUFLLENBQUMsRUFBRSxDQUFDO2dCQUNyQixlQUFlLEdBQUcsSUFBSSxDQUFDO1lBQ3pCLENBQUM7aUJBQU0sSUFBSSxVQUFVLEdBQUcsQ0FBQyxJQUFJLFVBQVUsR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDNUMsZUFBZSxHQUFHLEtBQUssQ0FBQztZQUMxQixDQUFDO2lCQUFNLENBQUM7Z0JBQ04sZUFBZSxHQUFHLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDO1lBQ2hELENBQUM7WUFFRCxPQUFPLEVBQUUsR0FBRyxPQUFPLEVBQUUsVUFBVSxFQUFFLGVBQWUsRUFBRSxDQUFDO1FBQ3JELENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzsrR0F4RlUscUJBQXFCLGtCQWlFVixvQ0FBb0M7bUdBakUvQyxxQkFBcUIsa1BDVGxDLGs4RUFvRkE7OzRGRDNFYSxxQkFBcUI7a0JBTGpDLFNBQVM7K0JBQ0Usa0JBQWtCOzswQkFxRXpCLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsb0NBQW9DO3lDQXpEakQsS0FBSztzQkFBYixLQUFLO2dCQVNHLElBQUk7c0JBQVosS0FBSztnQkFReUIsUUFBUTtzQkFBdEMsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBV2hCLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFRRyxTQUFTO3NCQUFqQixLQUFLO2dCQVFHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBUUcsWUFBWTtzQkFBcEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBJbnB1dCwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNlZ21lbnRlZEJhciwgU2VnbWVudGVkQmFyVmFyaWFudCwgU2VnbWVudGVkQmFyV2l0aFBlcmNlbnRhZ2UgfSBmcm9tICcuL3NlZ21lbnRlZC1iYXIubW9kZWwnO1xuaW1wb3J0IHsgQXBwbGljYXRpb25UaGVtZSB9IGZyb20gXCIuLi8uLi9tb2RlbHMvYXBwbGljYXRpb24tdGhlbWUubW9kZWxcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndWktc2VnbWVudGVkLWJhcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9zZWdtZW50ZWQtYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc2VnbWVudGVkLWJhci5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBTZWdtZW50ZWRCYXJDb21wb25lbnQge1xuICAvKipcbiAgICogVGhlIHdpZHRoIG9mIHRoZSBzZWdtZW50ZWQgYmFyLiBEZWZhdWx0cyB0byAnMTAwJScuXG4gICAqIFlvdSBjYW4gdXNlICcxMDAlJyBvciAnMTAwcHgnIGZvciB0aGlzIGZpZWxkLiAxMDAgaXMganVzdCBhbiBleGFtcGxlXG4gICAqIEBkZWZhdWx0ICcxMDAlJ1xuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAbWVtYmVyb2YgU2VnbWVudGVkQmFyQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSB3aWR0aCA9ICcxMDAlJztcblxuICAvKipcbiAgICogVGhlIHNpemUgdmFyaWFudCBvZiB0aGUgc2VnbWVudGVkIGJhci4gQ2FuIGJlICdzbWFsbCcgb3IgJ2xhcmdlJy5cbiAgICogRGVmYXVsdHMgdG8gJ2xhcmdlJy5cbiAgICogQGRlZmF1bHQgJ2xhcmdlJ1xuICAgKiBAdHlwZSB7U2VnbWVudGVkQmFyVmFyaWFudH1cbiAgICogQG1lbWJlcm9mIFNlZ21lbnRlZEJhckNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgc2l6ZTogU2VnbWVudGVkQmFyVmFyaWFudCA9ICdsYXJnZSc7XG5cbiAgLyoqXG4gICAqIFRoZSBzZWdtZW50cyB0byBiZSBkaXNwbGF5ZWQgaW4gdGhlIHNlZ21lbnRlZCBiYXIuXG4gICAqIEByZXF1aXJlZCB0cnVlXG4gICAqIEB0eXBlIHtTZWdtZW50ZWRCYXJ9XG4gICAqIEBtZW1iZXJvZiBTZWdtZW50ZWRCYXJDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pIHNldCBzZWdtZW50cyhzZWdtZW50czogU2VnbWVudGVkQmFyW10pIHtcbiAgIHRoaXMuc2VnbWVudExpc3QgPSB0aGlzLmNhbGN1bGF0ZVBlcmNlbnRhZ2VzKHNlZ21lbnRzKTtcbiAgfVxuXG4gIC8qKlxuICAgKlxuICAgKiBEZWZpbmVzIHRoZSBhcHBsaWNhdGlvbiB0aGVtZVxuICAgKlxuICAgKiBAdHlwZSB7QXBwbGljYXRpb25UaGVtZX1cbiAgICogQG1lbWJlcm9mIFNlZ21lbnRlZEJhckNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgYXBwbGljYXRpb25UaGVtZTogQXBwbGljYXRpb25UaGVtZSA9ICdsaWdodCc7XG5cbiAgLyoqXG4gICAqIEEgc3RyaW5nIHJlcHJlc2VudGluZyB0aGUgQVJJQSBsYWJlbCBmb3IgYWNjZXNzaWJpbGl0eS5cbiAgICogVGhpcyBsYWJlbCBpcyB1c2VkIHRvIHByb3ZpZGUgYW4gYWNjZXNzaWJsZSBuYW1lIGZvciB0aGUgaW5wdXQgZWxlbWVudC5cbiAgICogQHR5cGUge3N0cmluZ31cbiAgICogQG1lbWJlcm9mIFNlZ21lbnRlZEJhckNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgYXJpYUxhYmVsOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEEgc3RyaW5nIHJlcHJlc2VudGluZyB0aGUgQVJJQSByZXF1aXJlbWVudCBmb3IgYWNjZXNzaWJpbGl0eS5cbiAgICogVGhpcyBhdHRyaWJ1dGUgaXMgdXNlZCB0byBpbmRpY2F0ZSB3aGV0aGVyIGFuIGlucHV0IGZpZWxkIGlzIHJlcXVpcmVkIGZvciBmb3JtIHN1Ym1pc3Npb24uXG4gICAqIEB0eXBlIHtib29sZWFufVxuICAgKiBAbWVtYmVyb2YgU2VnbWVudGVkQmFyQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBhcmlhUmVxdWlyZWQgPSBmYWxzZTtcblxuICAvKipcbiAgICogR3JvdXBzIHRoZSB0b29sdGlwcyBpbnRvIG9uZSB0ZW1wbGF0ZVxuICAgKlxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICogQG1lbWJlcm9mIFNlZ21lbnRlZEJhckNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgdG9vbHRpcFN0YXRzID0gZmFsc2U7XG5cbiAgc2VnbWVudExpc3Q6IFNlZ21lbnRlZEJhcldpdGhQZXJjZW50YWdlW10gPSBbXTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KCdDQU5PUFlVSV9ERUZBVUxUX0FQUExJQ0FUSU9OX1RIRU1FJykgcHJpdmF0ZSByZWFkb25seSBkZWZhdWx0QXBwVGhlbWU6IEFwcGxpY2F0aW9uVGhlbWUsXG4gICkge1xuICAgIGlmIChkZWZhdWx0QXBwVGhlbWUpIHtcbiAgICAgIHRoaXMuYXBwbGljYXRpb25UaGVtZSA9IGRlZmF1bHRBcHBUaGVtZTtcbiAgICB9XG4gIH1cblxuICBjYWxjdWxhdGVQZXJjZW50YWdlcyhzZWdtZW50czogU2VnbWVudGVkQmFyW10pOiBTZWdtZW50ZWRCYXJXaXRoUGVyY2VudGFnZVtdIHtcbiAgICBjb25zdCB0b3RhbCA9IHNlZ21lbnRzLnJlZHVjZSgoc3VtLCBzZWdtZW50KSA9PiBzdW0gKyBzZWdtZW50LnZhbHVlLCAwKTtcbiAgICByZXR1cm4gc2VnbWVudHMubWFwKHNlZ21lbnQgPT4ge1xuICAgICAgbGV0IHBlcmNlbnRhZ2UgPSAoc2VnbWVudC52YWx1ZSAvIHRvdGFsKSAqIDEwMDtcbiAgICAgIGxldCBwZXJjZW50YWdlTGFiZWwgPSAnJztcblxuICAgICAgaWYgKHBlcmNlbnRhZ2UgPT09IDApIHtcbiAgICAgICAgcGVyY2VudGFnZUxhYmVsID0gJzAlJztcbiAgICAgIH0gZWxzZSBpZiAocGVyY2VudGFnZSA+IDAgJiYgcGVyY2VudGFnZSA8IDEpIHtcbiAgICAgICAgcGVyY2VudGFnZUxhYmVsID0gJz4xJSc7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBwZXJjZW50YWdlTGFiZWwgPSBgJHtNYXRoLmNlaWwocGVyY2VudGFnZSl9JWA7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB7IC4uLnNlZ21lbnQsIHBlcmNlbnRhZ2U6IHBlcmNlbnRhZ2VMYWJlbCB9O1xuICAgIH0pO1xuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwic2VnbWVudGVkLWJhci1jb250YWluZXJcIlxuICBbYXR0ci50aGVtZV09XCJhcHBsaWNhdGlvblRoZW1lXCJcbiAgW25nQ2xhc3NdPVwiJ3NlZ21lbnQtc2l6ZS0nICsgc2l6ZVwiXG4gIFtzdHlsZS53aWR0aF09XCJ3aWR0aFwiXG4gIFt1aVRvb2x0aXBUZW1wbGF0ZV09XCJzZWdtZW50ZWRTdGF0c1wiXG4gIFtzaG93VG9vbHRpcF09XCJ0b29sdGlwU3RhdHNcIlxuPlxuICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBzZWdtZW50IG9mIHNlZ21lbnRMaXN0XCI+XG4gICAgPGRpdlxuICAgICAgY2xhc3M9XCJzZWdtZW50ZWQtYmFyXCJcbiAgICAgICpuZ0lmPVwic2VnbWVudC52YWx1ZVwiXG4gICAgICBbbmdDbGFzc109XCJzZWdtZW50LmNvbG9yXCJcbiAgICAgIFtuZ1N0eWxlXT1cInsgZmxleDogc2VnbWVudC52YWx1ZSB9XCJcbiAgICAgIFttYXRUb29sdGlwXT1cIiF0b29sdGlwU3RhdHMgPyBzZWdtZW50LnRvb2x0aXAgPz8gJycgOiAnJ1wiXG4gICAgICBbbWF0VG9vbHRpcENsYXNzXT1cImFwcGxpY2F0aW9uVGhlbWVcIlxuICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJhcmlhTGFiZWxcIlxuICAgICAgW2F0dHIuYXJpYS1yZXF1aXJlZF09XCJhcmlhUmVxdWlyZWRcIlxuICAgID5cbiAgICAgIDx1aS1pY29uICpuZ0lmPVwic2VnbWVudC5pY29uXCIgIFthcHBsaWNhdGlvblRoZW1lXT1cImFwcGxpY2F0aW9uVGhlbWVcIiBbbmFtZV09XCJzZWdtZW50Lmljb25cIj48L3VpLWljb24+XG4gICAgICA8c3Bhbj57eyBzZWdtZW50LnZhbHVlIH19PC9zcGFuPlxuICAgIDwvZGl2PlxuICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuPG5nLXRlbXBsYXRlICNzZWdtZW50ZWRTdGF0cz5cbiAgPGRpdiBjbGFzcz1cInN0YXRzLWNvbnRhaW5lclwiPlxuICAgIDxkaXYgY2xhc3M9XCJuYW1lLWNvbHVtblwiPlxuICAgICAgQGZvciAoc2VnbWVudCBvZiBzZWdtZW50TGlzdDsgdHJhY2sgc2VnbWVudC52YWx1ZSkge1xuICAgICAgICA8ZGl2IGNsYXNzPVwic2VnbWVudFwiPlxuICAgICAgICAgIDxkaXYgW2NsYXNzXT1cIidwb2ludCAnICsgc2VnbWVudC5jb2xvclwiPjwvZGl2PlxuICAgICAgICAgIDxzcGFuIFtjbGFzc109XCInbGFiZWwgJyArIHNlZ21lbnQuY29sb3JcIj57eyBzZWdtZW50LnRvb2x0aXAgfX08L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgfVxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBjbGFzcz1cInZhbHVlLWNvbHVtblwiPlxuICAgICAgQGZvciAoc2VnbWVudCBvZiBzZWdtZW50TGlzdDsgdHJhY2sgc2VnbWVudC52YWx1ZSkge1xuICAgICAgICA8ZGl2IGNsYXNzPVwic2VnbWVudFwiPlxuICAgICAgICAgIDxzcGFuPnt7IHNlZ21lbnQudmFsdWUgfX08L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgfVxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBjbGFzcz1cInBlcmNlbnRhZ2UtY29sdW1uXCI+XG4gICAgICBAZm9yIChzZWdtZW50IG9mIHNlZ21lbnRMaXN0OyB0cmFjayBzZWdtZW50LnZhbHVlKSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzZWdtZW50XCI+XG4gICAgICAgICAgPHNwYW4+e3sgc2VnbWVudC5wZXJjZW50YWdlIH19PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cbiAgICA8L2Rpdj5cblxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjc2VnbWVudGVkU3RhdHM+XG4gIDxkaXYgY2xhc3M9XCJzdGF0cy1jb250YWluZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwibmFtZS1jb2x1bW5cIj5cbiAgICAgIEBmb3IgKHNlZ21lbnQgb2Ygc2VnbWVudExpc3Q7IHRyYWNrIHNlZ21lbnQudmFsdWUpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cInNlZ21lbnRcIj5cbiAgICAgICAgICA8ZGl2IFtjbGFzc109XCIncG9pbnQgJyArIHNlZ21lbnQuY29sb3JcIj48L2Rpdj5cbiAgICAgICAgICA8c3BhbiBbY2xhc3NdPVwiJ2xhYmVsICcgKyBzZWdtZW50LmNvbG9yXCI+e3sgc2VnbWVudC50b29sdGlwIH19PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJ2YWx1ZS1jb2x1bW5cIj5cbiAgICAgIEBmb3IgKHNlZ21lbnQgb2Ygc2VnbWVudExpc3Q7IHRyYWNrIHNlZ21lbnQudmFsdWUpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cInNlZ21lbnRcIj5cbiAgICAgICAgICA8c3Bhbj57eyBzZWdtZW50LnZhbHVlIH19PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJwZXJjZW50YWdlLWNvbHVtblwiPlxuICAgICAgQGZvciAoc2VnbWVudCBvZiBzZWdtZW50TGlzdDsgdHJhY2sgc2VnbWVudC52YWx1ZSkge1xuICAgICAgICA8ZGl2IGNsYXNzPVwic2VnbWVudFwiPlxuICAgICAgICAgIDxzcGFuPnt7IHNlZ21lbnQucGVyY2VudGFnZSB9fTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICB9XG4gICAgPC9kaXY+XG5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuXG4iXX0=
111
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VnbWVudGVkLWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90Z28tY2Fub3B5LXVpL2NvbXBvbmVudHMvc2VnbWVudGVkLWJhci9zZWdtZW50ZWQtYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rnby1jYW5vcHktdWkvY29tcG9uZW50cy9zZWdtZW50ZWQtYmFyL3NlZ21lbnRlZC1iYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBU25FLE1BQU0sT0FBTyxxQkFBcUI7SUFtQmhDOzs7OztPQUtHO0lBQ0gsSUFBK0IsUUFBUSxDQUFDLFFBQXdCO1FBQy9ELElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFxQ0QsWUFDNkUsZUFBaUM7UUFBakMsb0JBQWUsR0FBZixlQUFlLENBQWtCO1FBaEU5Rzs7Ozs7O1dBTUc7UUFDTSxVQUFLLEdBQUcsTUFBTSxDQUFDO1FBRXhCOzs7Ozs7V0FNRztRQUNNLFNBQUksR0FBd0IsT0FBTyxDQUFDO1FBWTdDOzs7Ozs7V0FNRztRQUNNLHFCQUFnQixHQUFxQixPQUFPLENBQUM7UUFVdEQ7Ozs7O1dBS0c7UUFDTSxpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUU5Qjs7Ozs7V0FLRztRQUNNLGlCQUFZLEdBQUcsS0FBSyxDQUFDO1FBRTlCLGdCQUFXLEdBQWlDLEVBQUUsQ0FBQztRQUs3QyxJQUFJLGVBQWUsRUFBRSxDQUFDO1lBQ3BCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxlQUFlLENBQUM7UUFDMUMsQ0FBQztJQUNILENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxRQUF3QjtRQUMzQyxNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsR0FBRyxHQUFHLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDeEUsT0FBTyxRQUFRLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQzVCLElBQUksVUFBVSxHQUFHLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsR0FBRyxHQUFHLENBQUM7WUFDL0MsSUFBSSxlQUFlLEdBQUcsRUFBRSxDQUFDO1lBRXpCLElBQUksVUFBVSxLQUFLLENBQUMsRUFBRSxDQUFDO2dCQUNyQixlQUFlLEdBQUcsSUFBSSxDQUFDO1lBQ3pCLENBQUM7aUJBQU0sSUFBSSxVQUFVLEdBQUcsQ0FBQyxJQUFJLFVBQVUsR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDNUMsZUFBZSxHQUFHLEtBQUssQ0FBQztZQUMxQixDQUFDO2lCQUFNLENBQUM7Z0JBQ04sZUFBZSxHQUFHLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDO1lBQ2hELENBQUM7WUFFRCxPQUFPLEVBQUUsR0FBRyxPQUFPLEVBQUUsVUFBVSxFQUFFLGVBQWUsRUFBRSxDQUFDO1FBQ3JELENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELElBQUksbUJBQW1CO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLFdBQVc7YUFDcEIsR0FBRyxDQUFDLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsR0FBRyxPQUFPLENBQUMsT0FBTyxJQUFJLFNBQVMsS0FBSyxFQUFFLEtBQUssT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO2FBQ25GLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNoQixDQUFDOytHQTlGVSxxQkFBcUIsa0JBaUVWLG9DQUFvQzttR0FqRS9DLHFCQUFxQixrUENUbEMsMmhGQXVGQTs7NEZEOUVhLHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDRSxrQkFBa0I7OzBCQXFFekIsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxvQ0FBb0M7eUNBekRqRCxLQUFLO3NCQUFiLEtBQUs7Z0JBU0csSUFBSTtzQkFBWixLQUFLO2dCQVF5QixRQUFRO3NCQUF0QyxLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFXaEIsZ0JBQWdCO3NCQUF4QixLQUFLO2dCQVFHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBUUcsWUFBWTtzQkFBcEIsS0FBSztnQkFRRyxZQUFZO3NCQUFwQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3QsIElucHV0LCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2VnbWVudGVkQmFyLCBTZWdtZW50ZWRCYXJWYXJpYW50LCBTZWdtZW50ZWRCYXJXaXRoUGVyY2VudGFnZSB9IGZyb20gJy4vc2VnbWVudGVkLWJhci5tb2RlbCc7XG5pbXBvcnQgeyBBcHBsaWNhdGlvblRoZW1lIH0gZnJvbSBcIi4uLy4uL21vZGVscy9hcHBsaWNhdGlvbi10aGVtZS5tb2RlbFwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd1aS1zZWdtZW50ZWQtYmFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NlZ21lbnRlZC1iYXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zZWdtZW50ZWQtYmFyLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNlZ21lbnRlZEJhckNvbXBvbmVudCB7XG4gIC8qKlxuICAgKiBUaGUgd2lkdGggb2YgdGhlIHNlZ21lbnRlZCBiYXIuIERlZmF1bHRzIHRvICcxMDAlJy5cbiAgICogWW91IGNhbiB1c2UgJzEwMCUnIG9yICcxMDBweCcgZm9yIHRoaXMgZmllbGQuIDEwMCBpcyBqdXN0IGFuIGV4YW1wbGVcbiAgICogQGRlZmF1bHQgJzEwMCUnXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqIEBtZW1iZXJvZiBTZWdtZW50ZWRCYXJDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIHdpZHRoID0gJzEwMCUnO1xuXG4gIC8qKlxuICAgKiBUaGUgc2l6ZSB2YXJpYW50IG9mIHRoZSBzZWdtZW50ZWQgYmFyLiBDYW4gYmUgJ3NtYWxsJyBvciAnbGFyZ2UnLlxuICAgKiBEZWZhdWx0cyB0byAnbGFyZ2UnLlxuICAgKiBAZGVmYXVsdCAnbGFyZ2UnXG4gICAqIEB0eXBlIHtTZWdtZW50ZWRCYXJWYXJpYW50fVxuICAgKiBAbWVtYmVyb2YgU2VnbWVudGVkQmFyQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBzaXplOiBTZWdtZW50ZWRCYXJWYXJpYW50ID0gJ2xhcmdlJztcblxuICAvKipcbiAgICogVGhlIHNlZ21lbnRzIHRvIGJlIGRpc3BsYXllZCBpbiB0aGUgc2VnbWVudGVkIGJhci5cbiAgICogQHJlcXVpcmVkIHRydWVcbiAgICogQHR5cGUge1NlZ21lbnRlZEJhcn1cbiAgICogQG1lbWJlcm9mIFNlZ21lbnRlZEJhckNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSkgc2V0IHNlZ21lbnRzKHNlZ21lbnRzOiBTZWdtZW50ZWRCYXJbXSkge1xuICAgdGhpcy5zZWdtZW50TGlzdCA9IHRoaXMuY2FsY3VsYXRlUGVyY2VudGFnZXMoc2VnbWVudHMpO1xuICB9XG5cbiAgLyoqXG4gICAqXG4gICAqIERlZmluZXMgdGhlIGFwcGxpY2F0aW9uIHRoZW1lXG4gICAqXG4gICAqIEB0eXBlIHtBcHBsaWNhdGlvblRoZW1lfVxuICAgKiBAbWVtYmVyb2YgU2VnbWVudGVkQmFyQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBhcHBsaWNhdGlvblRoZW1lOiBBcHBsaWNhdGlvblRoZW1lID0gJ2xpZ2h0JztcblxuICAvKipcbiAgICogQSBzdHJpbmcgcmVwcmVzZW50aW5nIHRoZSBBUklBIGxhYmVsIGZvciBhY2Nlc3NpYmlsaXR5LlxuICAgKiBUaGlzIGxhYmVsIGlzIHVzZWQgdG8gcHJvdmlkZSBhbiBhY2Nlc3NpYmxlIG5hbWUgZm9yIHRoZSBpbnB1dCBlbGVtZW50LlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAbWVtYmVyb2YgU2VnbWVudGVkQmFyQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBhcmlhTGFiZWw6IHN0cmluZztcblxuICAvKipcbiAgICogQSBzdHJpbmcgcmVwcmVzZW50aW5nIHRoZSBBUklBIHJlcXVpcmVtZW50IGZvciBhY2Nlc3NpYmlsaXR5LlxuICAgKiBUaGlzIGF0dHJpYnV0ZSBpcyB1c2VkIHRvIGluZGljYXRlIHdoZXRoZXIgYW4gaW5wdXQgZmllbGQgaXMgcmVxdWlyZWQgZm9yIGZvcm0gc3VibWlzc2lvbi5cbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBtZW1iZXJvZiBTZWdtZW50ZWRCYXJDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGFyaWFSZXF1aXJlZCA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBHcm91cHMgdGhlIHRvb2x0aXBzIGludG8gb25lIHRlbXBsYXRlXG4gICAqXG4gICAqIEB0eXBlIHtib29sZWFufVxuICAgKiBAbWVtYmVyb2YgU2VnbWVudGVkQmFyQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSB0b29sdGlwU3RhdHMgPSBmYWxzZTtcblxuICBzZWdtZW50TGlzdDogU2VnbWVudGVkQmFyV2l0aFBlcmNlbnRhZ2VbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoJ0NBTk9QWVVJX0RFRkFVTFRfQVBQTElDQVRJT05fVEhFTUUnKSBwcml2YXRlIHJlYWRvbmx5IGRlZmF1bHRBcHBUaGVtZTogQXBwbGljYXRpb25UaGVtZSxcbiAgKSB7XG4gICAgaWYgKGRlZmF1bHRBcHBUaGVtZSkge1xuICAgICAgdGhpcy5hcHBsaWNhdGlvblRoZW1lID0gZGVmYXVsdEFwcFRoZW1lO1xuICAgIH1cbiAgfVxuXG4gIGNhbGN1bGF0ZVBlcmNlbnRhZ2VzKHNlZ21lbnRzOiBTZWdtZW50ZWRCYXJbXSk6IFNlZ21lbnRlZEJhcldpdGhQZXJjZW50YWdlW10ge1xuICAgIGNvbnN0IHRvdGFsID0gc2VnbWVudHMucmVkdWNlKChzdW0sIHNlZ21lbnQpID0+IHN1bSArIHNlZ21lbnQudmFsdWUsIDApO1xuICAgIHJldHVybiBzZWdtZW50cy5tYXAoc2VnbWVudCA9PiB7XG4gICAgICBsZXQgcGVyY2VudGFnZSA9IChzZWdtZW50LnZhbHVlIC8gdG90YWwpICogMTAwO1xuICAgICAgbGV0IHBlcmNlbnRhZ2VMYWJlbCA9ICcnO1xuXG4gICAgICBpZiAocGVyY2VudGFnZSA9PT0gMCkge1xuICAgICAgICBwZXJjZW50YWdlTGFiZWwgPSAnMCUnO1xuICAgICAgfSBlbHNlIGlmIChwZXJjZW50YWdlID4gMCAmJiBwZXJjZW50YWdlIDwgMSkge1xuICAgICAgICBwZXJjZW50YWdlTGFiZWwgPSAnPjElJztcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHBlcmNlbnRhZ2VMYWJlbCA9IGAke01hdGguY2VpbChwZXJjZW50YWdlKX0lYDtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHsgLi4uc2VnbWVudCwgcGVyY2VudGFnZTogcGVyY2VudGFnZUxhYmVsIH07XG4gICAgfSk7XG4gIH1cblxuICBnZXQgYWNjZXNzaWJsZVZhbHVlVGV4dCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnNlZ21lbnRMaXN0XG4gICAgICAubWFwKChzZWdtZW50LCBpbmRleCkgPT4gYCR7c2VnbWVudC50b29sdGlwIHx8IGBWYWx1ZSAke2luZGV4fWB9OiAke3NlZ21lbnQudmFsdWV9YClcbiAgICAgIC5qb2luKCcsICcpO1xuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwic2VnbWVudGVkLWJhci1jb250YWluZXJcIlxuICBbYXR0ci50aGVtZV09XCJhcHBsaWNhdGlvblRoZW1lXCJcbiAgW25nQ2xhc3NdPVwiJ3NlZ21lbnQtc2l6ZS0nICsgc2l6ZVwiXG4gIFtzdHlsZS53aWR0aF09XCJ3aWR0aFwiXG4gIFt1aVRvb2x0aXBUZW1wbGF0ZV09XCJzZWdtZW50ZWRTdGF0c1wiXG4gIFtzaG93VG9vbHRpcF09XCJ0b29sdGlwU3RhdHNcIlxuICBbYXR0ci5hcmlhLWxhYmVsXT1cImFjY2Vzc2libGVWYWx1ZVRleHRcIlxuICByb2xlPVwiZ3JhcGhpY3Mtb2JqZWN0XCJcbiAgW3RhYkluZGV4XT1cIjBcIlxuPlxuICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBzZWdtZW50IG9mIHNlZ21lbnRMaXN0XCI+XG4gICAgPGRpdlxuICAgICAgY2xhc3M9XCJzZWdtZW50ZWQtYmFyXCJcbiAgICAgICpuZ0lmPVwic2VnbWVudC52YWx1ZVwiXG4gICAgICBbbmdDbGFzc109XCJzZWdtZW50LmNvbG9yXCJcbiAgICAgIFtuZ1N0eWxlXT1cInsgZmxleDogc2VnbWVudC52YWx1ZSB9XCJcbiAgICAgIFttYXRUb29sdGlwXT1cIiF0b29sdGlwU3RhdHMgPyBzZWdtZW50LnRvb2x0aXAgPz8gJycgOiAnJ1wiXG4gICAgICBbbWF0VG9vbHRpcENsYXNzXT1cImFwcGxpY2F0aW9uVGhlbWVcIlxuICAgICAgW2F0dHIuYXJpYS1oaWRkZW5dPVwidHJ1ZVwiXG4gICAgICBbYXR0ci5hcmlhLXJlcXVpcmVkXT1cImFyaWFSZXF1aXJlZFwiXG4gICAgPlxuICAgICAgPHVpLWljb24gKm5nSWY9XCJzZWdtZW50Lmljb25cIiAgW2FwcGxpY2F0aW9uVGhlbWVdPVwiYXBwbGljYXRpb25UaGVtZVwiIFtuYW1lXT1cInNlZ21lbnQuaWNvblwiPjwvdWktaWNvbj5cbiAgICAgIDxzcGFuPnt7IHNlZ21lbnQudmFsdWUgfX08L3NwYW4+XG4gICAgPC9kaXY+XG4gIDwvbmctY29udGFpbmVyPlxuPC9kaXY+XG48bmctdGVtcGxhdGUgI3NlZ21lbnRlZFN0YXRzPlxuICA8ZGl2IGNsYXNzPVwic3RhdHMtY29udGFpbmVyXCI+XG4gICAgPGRpdiBjbGFzcz1cIm5hbWUtY29sdW1uXCI+XG4gICAgICBAZm9yIChzZWdtZW50IG9mIHNlZ21lbnRMaXN0OyB0cmFjayBzZWdtZW50LnZhbHVlKSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzZWdtZW50XCI+XG4gICAgICAgICAgPGRpdiBbY2xhc3NdPVwiJ3BvaW50ICcgKyBzZWdtZW50LmNvbG9yXCI+PC9kaXY+XG4gICAgICAgICAgPHNwYW4gW2NsYXNzXT1cIidsYWJlbCAnICsgc2VnbWVudC5jb2xvclwiPnt7IHNlZ21lbnQudG9vbHRpcCB9fTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICB9XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwidmFsdWUtY29sdW1uXCI+XG4gICAgICBAZm9yIChzZWdtZW50IG9mIHNlZ21lbnRMaXN0OyB0cmFjayBzZWdtZW50LnZhbHVlKSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzZWdtZW50XCI+XG4gICAgICAgICAgPHNwYW4+e3sgc2VnbWVudC52YWx1ZSB9fTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICB9XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwicGVyY2VudGFnZS1jb2x1bW5cIj5cbiAgICAgIEBmb3IgKHNlZ21lbnQgb2Ygc2VnbWVudExpc3Q7IHRyYWNrIHNlZ21lbnQudmFsdWUpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cInNlZ21lbnRcIj5cbiAgICAgICAgICA8c3Bhbj57eyBzZWdtZW50LnBlcmNlbnRhZ2UgfX08L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgfVxuICAgIDwvZGl2PlxuXG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNzZWdtZW50ZWRTdGF0cz5cbiAgPGRpdiBjbGFzcz1cInN0YXRzLWNvbnRhaW5lclwiPlxuICAgIDxkaXYgY2xhc3M9XCJuYW1lLWNvbHVtblwiPlxuICAgICAgQGZvciAoc2VnbWVudCBvZiBzZWdtZW50TGlzdDsgdHJhY2sgc2VnbWVudC52YWx1ZSkge1xuICAgICAgICA8ZGl2IGNsYXNzPVwic2VnbWVudFwiPlxuICAgICAgICAgIDxkaXYgW2NsYXNzXT1cIidwb2ludCAnICsgc2VnbWVudC5jb2xvclwiPjwvZGl2PlxuICAgICAgICAgIDxzcGFuIFtjbGFzc109XCInbGFiZWwgJyArIHNlZ21lbnQuY29sb3JcIj57eyBzZWdtZW50LnRvb2x0aXAgfX08L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgfVxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBjbGFzcz1cInZhbHVlLWNvbHVtblwiPlxuICAgICAgQGZvciAoc2VnbWVudCBvZiBzZWdtZW50TGlzdDsgdHJhY2sgc2VnbWVudC52YWx1ZSkge1xuICAgICAgICA8ZGl2IGNsYXNzPVwic2VnbWVudFwiPlxuICAgICAgICAgIDxzcGFuPnt7IHNlZ21lbnQudmFsdWUgfX08L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgfVxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBjbGFzcz1cInBlcmNlbnRhZ2UtY29sdW1uXCI+XG4gICAgICBAZm9yIChzZWdtZW50IG9mIHNlZ21lbnRMaXN0OyB0cmFjayBzZWdtZW50LnZhbHVlKSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzZWdtZW50XCI+XG4gICAgICAgICAgPHNwYW4+e3sgc2VnbWVudC5wZXJjZW50YWdlIH19PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cbiAgICA8L2Rpdj5cblxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG5cbiJdfQ==