@projectcor/maia-components 2.44.4 → 2.44.5-0
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/lib/App.js +44 -19
- package/lib/components/atoms/ActionableButton.spec.js +111 -0
- package/lib/components/atoms/AgentActivityIndicator/AgentActivityIndicator.spec.js +52 -0
- package/lib/components/atoms/AgentActivityIndicator/AgentActivityIndicator.utils.spec.js +11 -0
- package/lib/components/atoms/ApprovalBox/ApprovalBox.spec.js +135 -0
- package/lib/components/atoms/AttachmentCard/AttachmentCard.spec.js +123 -0
- package/lib/components/atoms/AttachmentCard/AttachmentCardAudio.helpers.js +65 -0
- package/lib/components/atoms/AttachmentCard/AttachmentCardAudio.helpers.spec.js +66 -0
- package/lib/components/atoms/AttachmentCard/AttachmentCardAudio.js +5 -51
- package/lib/components/atoms/AttachmentCard/AttachmentCardAudio.spec.js +211 -0
- package/lib/components/atoms/AttachmentCard/AttachmentCardImage.spec.js +78 -0
- package/lib/components/atoms/AttachmentPreviewModal/AttachmentPreviewModal.helpers.js +55 -0
- package/lib/components/atoms/AttachmentPreviewModal/AttachmentPreviewModal.helpers.spec.js +41 -0
- package/lib/components/atoms/AttachmentPreviewModal/AttachmentPreviewModal.js +18 -76
- package/lib/components/atoms/AttachmentPreviewModal/AttachmentPreviewModal.spec.js +253 -0
- package/lib/components/atoms/AttachmentPreviewModal/ExcelPreview.spec.js +80 -0
- package/lib/components/atoms/AttachmentPreviewModal/PptPreview.helpers.js +31 -0
- package/lib/components/atoms/AttachmentPreviewModal/PptPreview.helpers.spec.js +33 -0
- package/lib/components/atoms/AttachmentPreviewModal/PptPreview.js +3 -31
- package/lib/components/atoms/AttachmentPreviewModal/PptPreview.spec.js +25 -0
- package/lib/components/atoms/AttachmentPreviewModal/WordPreview.helpers.js +4 -0
- package/lib/components/atoms/AttachmentPreviewModal/WordPreview.helpers.spec.js +11 -0
- package/lib/components/atoms/AttachmentPreviewModal/WordPreview.js +2 -4
- package/lib/components/atoms/AttachmentPreviewModal/WordPreview.spec.js +77 -0
- package/lib/components/atoms/Backdrop/Backdrop.spec.js +28 -0
- package/lib/components/atoms/CardMenu/CardMenu.spec.js +56 -0
- package/lib/components/atoms/ChatClientSelector/ChatClientSelector.spec.js +67 -0
- package/lib/components/atoms/Checkbox/Checkbox.spec.js +27 -0
- package/lib/components/atoms/Chip/Chip.spec.js +82 -0
- package/lib/components/atoms/ChipLlm/ChipLlm.spec.js +26 -0
- package/lib/components/atoms/ClientSelector/ClientSelector.spec.js +88 -0
- package/lib/components/atoms/ContextMentionChip/ContextMentionChip.spec.js +29 -0
- package/lib/components/atoms/ContextMentionChip/MentionOverflowLabel.spec.js +46 -0
- package/lib/components/atoms/ContextMentionChip/buildChipElement.helpers.js +227 -0
- package/lib/components/atoms/ContextMentionChip/buildChipElement.helpers.spec.js +77 -0
- package/lib/components/atoms/ContextMentionChip/buildChipElement.js +15 -255
- package/lib/components/atoms/ContextMentionChip/buildChipElement.spec.js +81 -0
- package/lib/components/atoms/ContextMentionEditor/ContextMentionEditor.helpers.js +31 -0
- package/lib/components/atoms/ContextMentionEditor/ContextMentionEditor.helpers.spec.js +48 -0
- package/lib/components/atoms/ContextMentionEditor/ContextMentionEditor.js +5 -34
- package/lib/components/atoms/ContextMentionEditor/ContextMentionEditor.spec.js +231 -0
- package/lib/components/atoms/ContextMentionItem/ContextMentionItem.spec.js +107 -0
- package/lib/components/atoms/ContextMentionPopover/ContextMentionPopover.spec.js +136 -0
- package/lib/components/atoms/CopyToClipboard.spec.js +74 -0
- package/lib/components/atoms/EditableLabel/EditableLabel.spec.js +76 -0
- package/lib/components/atoms/EntitySelector/EntitySelector.spec.js +86 -0
- package/lib/components/atoms/Expand/Expand.spec.js +57 -0
- package/lib/components/atoms/Fade/Fade.spec.js +31 -0
- package/lib/components/atoms/FeedbackButton/FeedbackButton.spec.js +75 -0
- package/lib/components/atoms/FrequentlyAskedQuestions/FrequentlyAskedQuestions.spec.js +104 -0
- package/lib/components/atoms/FrequentlyUsedActions/FrequentlyUsedActions.js +3 -1
- package/lib/components/atoms/FrequentlyUsedActions/FrequentlyUsedActions.spec.js +91 -0
- package/lib/components/atoms/FrequentlyUsedActions/FrequentlyUsedActions.styles.js +19 -7
- package/lib/components/atoms/HelpButton.spec.js +87 -0
- package/lib/components/atoms/ImagePreview/ImagePreview.spec.js +96 -0
- package/lib/components/atoms/ListMenuOption/ListMenuOption.spec.js +54 -0
- package/lib/components/atoms/LoadingFaqs/LoadingFaqs.spec.js +21 -0
- package/lib/components/atoms/LoadingSearchClients/LoadingSearchClients.spec.js +20 -0
- package/lib/components/atoms/LoadingSearchProjects/LoadingSearchProjects.spec.js +26 -0
- package/lib/components/atoms/LoadingText/LoadingText.spec.js +25 -0
- package/lib/components/atoms/MAIAButton/MAIAButton.spec.js +42 -0
- package/lib/components/atoms/MAIAError/MAIAError.spec.js +27 -0
- package/lib/components/atoms/MAIAInput/MAIAInput.helpers.js +12 -0
- package/lib/components/atoms/MAIAInput/MAIAInput.helpers.spec.js +26 -0
- package/lib/components/atoms/MAIAInput/MAIAInput.js +4 -10
- package/lib/components/atoms/MAIAInput/MAIAInput.spec.js +430 -0
- package/lib/components/atoms/MAIAInput/MAIAInputEditor.helpers.js +50 -0
- package/lib/components/atoms/MAIAInput/MAIAInputEditor.helpers.spec.js +20 -0
- package/lib/components/atoms/MAIAInput/MAIAInputEditor.js +8 -60
- package/lib/components/atoms/MAIAInput/MAIAInputEditor.spec.js +53 -0
- package/lib/components/atoms/MAIAInput/maiaInputLayout.spec.js +22 -0
- package/lib/components/atoms/MaiaStreamdown/MaiaStreamdown.spec.js +64 -0
- package/lib/components/atoms/MaiaWrapper/MaiaWrapper.spec.js +43 -0
- package/lib/components/atoms/MaiaWrapper/MaiaWrapperBase.spec.js +114 -0
- package/lib/components/atoms/MaiaWrapper/ModernMaiaWrapper.spec.js +51 -0
- package/lib/components/atoms/ModalClientAccess/ModalClientAccess.spec.js +48 -0
- package/lib/components/atoms/ModalProject/ModalProject.spec.js +66 -0
- package/lib/components/atoms/NextPageLoader.spec.js +37 -0
- package/lib/components/atoms/OnboardingModalButton/OnboardingModal.spec.js +20 -0
- package/lib/components/atoms/OnboardingModalButton/OnboardingModalButton.helpers.js +17 -0
- package/lib/components/atoms/OnboardingModalButton/OnboardingModalButton.helpers.spec.js +35 -0
- package/lib/components/atoms/OnboardingModalButton/OnboardingModalButton.js +3 -15
- package/lib/components/atoms/OnboardingModalButton/OnboardingModalButton.spec.js +47 -0
- package/lib/components/atoms/OptionAccessibility/OptionAccessibility.spec.js +86 -0
- package/lib/components/atoms/PrimaryButton.spec.js +42 -0
- package/lib/components/atoms/ProjectSelector/ProjectSelector.spec.js +69 -0
- package/lib/components/atoms/ReasoningBlock/ReasoningBlock.js +7 -2
- package/lib/components/atoms/ReasoningBlock/ReasoningBlock.spec.js +69 -0
- package/lib/components/atoms/ReasoningBlock/ReasoningBlock.styles.js +21 -16
- package/lib/components/atoms/ReasoningBlock/ReasoningSteps.js +7 -5
- package/lib/components/atoms/ReasoningBlock/ReasoningSteps.spec.js +59 -0
- package/lib/components/atoms/ReasoningBlock/ReasoningTimeline.js +72 -52
- package/lib/components/atoms/ReasoningBlock/ReasoningTimeline.spec.js +132 -0
- package/lib/components/atoms/ReasoningBlock/groupParallelSteps.spec.js +162 -0
- package/lib/components/atoms/ReasoningBlock/reasoningLeading.js +6 -1
- package/lib/components/atoms/ReasoningBlock/reasoningLeading.spec.js +70 -0
- package/lib/components/atoms/ReasoningBlock/reasoningLiveNarration.js +36 -15
- package/lib/components/atoms/ReasoningBlock/reasoningLiveNarration.spec.js +120 -0
- package/lib/components/atoms/ReasoningBlock/reasoningMotion.js +4 -0
- package/lib/components/atoms/ReasoningBlock/reasoningTimeline.helpers.js +10 -0
- package/lib/components/atoms/ReasoningBlock/reasoningTimeline.helpers.spec.js +31 -0
- package/lib/components/atoms/ReasoningBlock/useCollapsibleHeight.js +52 -0
- package/lib/components/atoms/ReasoningBlock/useCollapsibleHeight.spec.js +90 -0
- package/lib/components/atoms/SessionGeneratingDot/SessionGeneratingDot.spec.js +16 -0
- package/lib/components/atoms/SkillsDropdown/SkillsDropdown.spec.js +107 -0
- package/lib/components/atoms/SlashCommandChip/SlashCommandChip.spec.js +24 -0
- package/lib/components/atoms/SlashCommandDropdown/SlashCommandDropdown.spec.js +85 -0
- package/lib/components/atoms/Switch/Switch.spec.js +41 -0
- package/lib/components/atoms/TextArea/CustomTextArea.spec.js +52 -0
- package/lib/components/atoms/TextArea/TextArea.spec.js +68 -0
- package/lib/components/atoms/ThirdButton.spec.js +29 -0
- package/lib/components/atoms/VideoModal/VideoModal.spec.js +68 -0
- package/lib/components/atoms/WithAppCfg.spec.js +60 -0
- package/lib/components/index.js +2 -1
- package/lib/components/molecules/AbmSection/AbmAccessibilitySection/AbmAccessibilitySection.helpers.js +37 -0
- package/lib/components/molecules/AbmSection/AbmAccessibilitySection/AbmAccessibilitySection.helpers.spec.js +53 -0
- package/lib/components/molecules/AbmSection/AbmAccessibilitySection/AbmAccessibilitySection.js +5 -29
- package/lib/components/molecules/AbmSection/AbmAccessibilitySection/AbmAccessibilitySection.spec.js +371 -0
- package/lib/components/molecules/AbmSection/AbmGeneralSection.helpers.js +39 -0
- package/lib/components/molecules/AbmSection/AbmGeneralSection.helpers.spec.js +57 -0
- package/lib/components/molecules/AbmSection/AbmGeneralSection.js +6 -40
- package/lib/components/molecules/AbmSection/AbmGeneralSection.spec.js +227 -0
- package/lib/components/molecules/AbmSection/AbmKnowledgeSection.helpers.js +86 -0
- package/lib/components/molecules/AbmSection/AbmKnowledgeSection.helpers.spec.js +108 -0
- package/lib/components/molecules/AbmSection/AbmKnowledgeSection.js +18 -90
- package/lib/components/molecules/AbmSection/AbmKnowledgeSection.spec.js +254 -0
- package/lib/components/molecules/AbmSection/AbmLoaderFiles.helpers.js +17 -0
- package/lib/components/molecules/AbmSection/AbmLoaderFiles.helpers.spec.js +50 -0
- package/lib/components/molecules/AbmSection/AbmLoaderFiles.js +5 -15
- package/lib/components/molecules/AbmSection/AbmLoaderFiles.spec.js +94 -0
- package/lib/components/molecules/AgentInputBlock/AgentInputBlockMessage.js +83 -0
- package/lib/components/molecules/AgentInputBlock/AgentInputBlockMessage.styles.js +30 -0
- package/lib/components/molecules/AgentInputBlock/index.js +5 -0
- package/lib/components/molecules/AgentInputBlock/resolveAgentInputBlock.js +52 -0
- package/lib/components/molecules/AgentInputBlock/resolveAgentInputBlock.spec.js +76 -0
- package/lib/components/molecules/AgentInputBlock/resolveLegacyContextSession.js +20 -0
- package/lib/components/molecules/AgentInputBlock/resolveLegacyContextSession.spec.js +34 -0
- package/lib/components/molecules/AgentInputBlock/useAgentChangeModelAction.js +36 -0
- package/lib/components/molecules/ChatAIClientSelector/ChatAIClientSelector.spec.js +66 -0
- package/lib/components/molecules/ChatAIContent/ChatAIContent.js +7 -3
- package/lib/components/molecules/ChatAIContent/ChatAIContent.spec.js +145 -0
- package/lib/components/molecules/ChatAIHistory/ChatAIHistory.spec.js +204 -0
- package/lib/components/molecules/ChatAIHome/ChatAIHome.js +21 -6
- package/lib/components/molecules/ChatAIHome/ChatAIHome.spec.js +246 -0
- package/lib/components/molecules/ChatAIHome/ChatAIHomeMaiaker.spec.js +86 -0
- package/lib/components/molecules/ChatAIMessages/ChatAICreateAgentActions.spec.js +104 -0
- package/lib/components/molecules/ChatAIMessages/ChatAIMessages.helpers.js +54 -0
- package/lib/components/molecules/ChatAIMessages/ChatAIMessages.helpers.spec.js +77 -0
- package/lib/components/molecules/ChatAIMessages/ChatAIMessages.js +19 -47
- package/lib/components/molecules/ChatAIMessages/ChatAIMessages.spec.js +410 -0
- package/lib/components/molecules/ChatAIMessages/ChatAISuggestions.spec.js +46 -0
- package/lib/components/molecules/ChatAIMessages/newStyles.js +29 -26
- package/lib/components/molecules/ChatAIModal/ChatAIModal.helpers.js +147 -4
- package/lib/components/molecules/ChatAIModal/ChatAIModal.helpers.spec.js +471 -0
- package/lib/components/molecules/ChatAIModal/ChatAIModal.js +64 -108
- package/lib/components/molecules/ChatAIModal/ChatAIModal.spec.js +659 -0
- package/lib/components/molecules/ChatAIModal/components/ChatAiAgentOptions/ChatAiAgentOptions.helpers.js +5 -0
- package/lib/components/molecules/ChatAIModal/components/ChatAiAgentOptions/ChatAiAgentOptions.helpers.spec.js +33 -0
- package/lib/components/molecules/ChatAIModal/components/ChatAiAgentOptions/ChatAiAgentOptions.js +3 -2
- package/lib/components/molecules/ChatAIModal/components/ChatAiAgentOptions/ChatAiAgentOptions.spec.js +116 -0
- package/lib/components/molecules/ChatAIModal/components/ChatAiModalFooter/ChatAiModalFooter.js +15 -153
- package/lib/components/molecules/ChatAIModal/components/ChatAiModalFooter/ChatAiModalFooter.spec.js +134 -0
- package/lib/components/molecules/ChatAIModal/components/ChatAiModalFooter/ChatAiModalFooter.styles.js +2 -26
- package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.helpers.js +30 -0
- package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.helpers.spec.js +95 -0
- package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.js +76 -86
- package/lib/components/molecules/ChatAIModal/components/ChatAiModalHeader/ChatAiModalHeader.spec.js +241 -0
- package/lib/components/molecules/ChatAIModal/components/MaiaMinimizedPill/MaiaMinimizedPill.spec.js +37 -0
- package/lib/components/molecules/ChatAIModal/constants.spec.js +16 -0
- package/lib/components/molecules/ChatAIModal/floatingPanelMotion/FloatingPanelMotion.spec.js +22 -0
- package/lib/components/molecules/ChatAIModal/floatingPanelMotion/useFloatingPanelDragTilt.spec.js +67 -0
- package/lib/components/molecules/ChatAIModal/layout.spec.js +72 -0
- package/lib/components/molecules/ChatAIMyAgents/ChatAIMyAgents.spec.js +172 -0
- package/lib/components/molecules/ChatAIMySkills/ChatAIMySkills.spec.js +128 -0
- package/lib/components/molecules/ChatAIProjectSelector/ChatAIProjectSelector.spec.js +66 -0
- package/lib/components/molecules/ChatFooter/ChatFooter.js +5 -3
- package/lib/components/molecules/ChatFooter/ChatFooter.spec.js +355 -0
- package/lib/components/molecules/ChatFooter/ChatFooterCorAccess.spec.js +10 -0
- package/lib/components/molecules/ChatFooter/ChatFooterFaqs.helpers.js +48 -0
- package/lib/components/molecules/ChatFooter/ChatFooterFaqs.helpers.spec.js +82 -0
- package/lib/components/molecules/ChatFooter/ChatFooterFaqs.js +9 -44
- package/lib/components/molecules/ChatFooter/ChatFooterFaqs.spec.js +139 -0
- package/lib/components/molecules/ContextMentionInput/ContextMentionInput.spec.js +84 -0
- package/lib/components/molecules/MessageFeedback/MessageFeedback.spec.js +116 -0
- package/lib/components/molecules/ProjectSummaryChat/ProjectSummaryChat.spec.js +126 -0
- package/lib/components/molecules/ProjectSummaryConfig/ProjectSummaryConfig.spec.js +115 -0
- package/lib/components/molecules/ProjectSummaryContent/ProjectSummaryContent.spec.js +79 -0
- package/lib/components/molecules/ProjectSummaryModal/ProjectSummaryModal.spec.js +37 -0
- package/lib/components/molecules/Sidebar/Sidebar.js +41 -23
- package/lib/components/molecules/Sidebar/Sidebar.spec.js +453 -0
- package/lib/components/organisms/AbmAgentModal/AbmAgentModal.helpers.js +198 -0
- package/lib/components/organisms/AbmAgentModal/AbmAgentModal.helpers.spec.js +385 -0
- package/lib/components/organisms/AbmAgentModal/AbmAgentModal.js +56 -171
- package/lib/components/organisms/AbmAgentModal/AbmAgentModal.spec.js +1125 -0
- package/lib/components/organisms/AbmSkillGenerateModal/AbmSkillGenerateModal.spec.js +112 -0
- package/lib/components/organisms/AbmSkillModal/AbmSkillModal.spec.js +405 -0
- package/lib/components/organisms/ChatAI/ChatAI.spec.js +174 -0
- package/lib/components/organisms/ChatAIPage/ChatAIPage.js +525 -0
- package/lib/components/organisms/ChatAIPage/ChatAIPage.spec.js +231 -0
- package/lib/components/organisms/ChatAIPage/ChatAIPage.styles.js +16 -0
- package/lib/components/organisms/ChatAIPage/ChatAIPageHeader.js +253 -0
- package/lib/components/organisms/ChatAIPage/ChatAIPageHeader.spec.js +139 -0
- package/lib/components/organisms/ChatAIPage/ChatAIPageHeader.styles.js +13 -0
- package/lib/components/organisms/ChatAIPage/ChatAIPageHome.js +267 -0
- package/lib/components/organisms/ChatAIPage/ChatAIPageHome.spec.js +261 -0
- package/lib/components/organisms/ChatAIPage/ChatAIPageHome.styles.js +194 -0
- package/lib/components/organisms/ChatAIPage/ChatAIPageHomeActionCardSlot.js +105 -0
- package/lib/components/organisms/ChatAIPage/ChatAIPageHomeActionCardSlot.spec.js +73 -0
- package/lib/components/organisms/ChatAIPage/ChatAIPageHomeActionCards.skeleton.js +38 -0
- package/lib/components/organisms/ChatAIPage/getDaypart.js +9 -0
- package/lib/components/organisms/ChatAIPage/getDaypart.spec.js +19 -0
- package/lib/components/organisms/ChatAIPage/index.js +3 -0
- package/lib/components/organisms/ClientAIButton/ClientAIButton.spec.js +53 -0
- package/lib/components/organisms/DeleteAgentModal/DeleteAgentModal.spec.js +59 -0
- package/lib/components/organisms/DeleteQuestionModal/DeleteQuestionModal.spec.js +79 -0
- package/lib/components/organisms/EditQuestionModal/EditQuestionModal.spec.js +86 -0
- package/lib/components/organisms/ModalFileExceeds/ModalFileExceeds.spec.js +49 -0
- package/lib/components/organisms/ProjectAIButton/ProjectAIButton.spec.js +67 -0
- package/lib/components/organisms/ProjectSummary/ProjectSummary.spec.js +117 -0
- package/lib/components/organisms/SnackBar/Snackbar.spec.js +66 -0
- package/lib/components/organisms/SourcesInformation/SourceItem.spec.js +19 -0
- package/lib/components/organisms/SourcesInformation/SourcesInformationModal.spec.js +52 -0
- package/lib/constants/maiaExternalConnectorsAccess.spec.js +29 -0
- package/lib/constants/permissions/index.js +2 -2
- package/lib/constants/permissions/utils.js +4 -1
- package/lib/constants/permissions/utils.spec.js +128 -0
- package/lib/dev/DevMaiaPage.js +30 -0
- package/lib/dev/DevReasoningTimeline.js +68 -37
- package/lib/dev/Providers.js +5 -3
- package/lib/hooks/frequentlyUsedActionsCache.js +17 -0
- package/lib/hooks/frequentlyUsedActionsCache.spec.js +25 -0
- package/lib/hooks/useAccessClient/useAccessClient.spec.js +149 -0
- package/lib/hooks/useAgentModel/useAgentModel.spec.js +83 -0
- package/lib/hooks/useAgentModel/useCreateAgent.spec.js +231 -0
- package/lib/hooks/useAgentModel/useDeleteAgent.spec.js +183 -0
- package/lib/hooks/useAgentModel/useUpdateAgent.spec.js +313 -0
- package/lib/hooks/useAgentSuggestions.spec.js +89 -0
- package/lib/hooks/useCaretPosition.spec.js +58 -0
- package/lib/hooks/useChatManager/useChatManager.helpers.js +353 -0
- package/lib/hooks/useChatManager/useChatManager.helpers.spec.js +506 -0
- package/lib/hooks/useChatManager/useChatManager.js +76 -351
- package/lib/hooks/useChatManager/useChatManager.spec.js +1261 -0
- package/lib/hooks/useChatMessages/useChatMessages.helpers.js +109 -0
- package/lib/hooks/useChatMessages/useChatMessages.helpers.spec.js +176 -0
- package/lib/hooks/useChatMessages/useChatMessages.js +12 -82
- package/lib/hooks/useChatMessages/useChatMessages.spec.js +379 -0
- package/lib/hooks/useChats/useChats.spec.js +208 -0
- package/lib/hooks/useClientSearch.helpers.js +36 -0
- package/lib/hooks/useClientSearch.helpers.spec.js +52 -0
- package/lib/hooks/useClientSearch.js +4 -32
- package/lib/hooks/useClientSearch.spec.js +86 -0
- package/lib/hooks/useContextMentions.helpers.js +152 -0
- package/lib/hooks/useContextMentions.helpers.spec.js +143 -0
- package/lib/hooks/useContextMentions.js +2 -163
- package/lib/hooks/useContextMentions.spec.js +239 -0
- package/lib/hooks/useContextMentions.types.js +2 -0
- package/lib/hooks/useContextPinPopover.helpers.js +95 -0
- package/lib/hooks/useContextPinPopover.helpers.spec.js +115 -0
- package/lib/hooks/useContextPinPopover.js +16 -75
- package/lib/hooks/useContextPinPopover.spec.js +159 -0
- package/lib/hooks/useContinueLegacyContextInNewChat/index.js +2 -0
- package/lib/hooks/useContinueLegacyContextInNewChat/useContinueLegacyContextInNewChat.js +93 -0
- package/lib/hooks/useDebounce.spec.js +42 -0
- package/lib/hooks/useEntitySearch.helpers.js +359 -0
- package/lib/hooks/useEntitySearch.helpers.spec.js +321 -0
- package/lib/hooks/useEntitySearch.js +38 -391
- package/lib/hooks/useEntitySearch.spec.js +443 -0
- package/lib/hooks/useEvent.spec.js +45 -0
- package/lib/hooks/useFrequentlyAskedQuestions.spec.js +222 -0
- package/lib/hooks/useFrequentlyUsedActions.js +60 -22
- package/lib/hooks/useFrequentlyUsedActions.spec.js +135 -0
- package/lib/hooks/useIsMaiaPageRoute.js +26 -0
- package/lib/hooks/useIsMaiaPageRoute.spec.js +26 -0
- package/lib/hooks/useKnowledge/deleteKnowledge.spec.js +122 -0
- package/lib/hooks/useKnowledge/downloadKnowledge.spec.js +148 -0
- package/lib/hooks/useKnowledge/saveKnowledge.spec.js +104 -0
- package/lib/hooks/useKnowledge/useKnowledgeOperations.spec.js +178 -0
- package/lib/hooks/useMaiaChatSessionMeta/index.js +2 -0
- package/lib/hooks/useMaiaChatSessionMeta/useMaiaChatSessionMeta.js +24 -0
- package/lib/hooks/useMentionAllowedTypes.spec.js +89 -0
- package/lib/hooks/useMentionPopover.helpers.js +41 -0
- package/lib/hooks/useMentionPopover.helpers.spec.js +71 -0
- package/lib/hooks/useMentionPopover.js +9 -35
- package/lib/hooks/useMentionPopover.spec.js +215 -0
- package/lib/hooks/useMinimizedPillBottomOffset.helpers.js +47 -0
- package/lib/hooks/useMinimizedPillBottomOffset.helpers.spec.js +132 -0
- package/lib/hooks/useMinimizedPillBottomOffset.js +15 -45
- package/lib/hooks/useMinimizedPillBottomOffset.spec.js +89 -0
- package/lib/hooks/useMinimizedPillNoveltyDot/useMinimizedPillNoveltyDot.spec.js +67 -0
- package/lib/hooks/useModal/useModal.spec.js +73 -0
- package/lib/hooks/useOrchestratorStream/useOrchestratorStream.spec.js +192 -0
- package/lib/hooks/useProjectSearch.helpers.js +61 -0
- package/lib/hooks/useProjectSearch.helpers.spec.js +70 -0
- package/lib/hooks/useProjectSearch.js +4 -58
- package/lib/hooks/useProjectSearch.spec.js +91 -0
- package/lib/hooks/useProjectSummary.spec.js +193 -0
- package/lib/hooks/useProjectSummaryConfig.helpers.js +62 -0
- package/lib/hooks/useProjectSummaryConfig.helpers.spec.js +92 -0
- package/lib/hooks/useProjectSummaryConfig.js +14 -52
- package/lib/hooks/useProjectSummaryConfig.spec.js +133 -0
- package/lib/hooks/useReasoningTrace/reasoningStore.spec.js +112 -0
- package/lib/hooks/useRecentClientsSearch.helpers.js +33 -0
- package/lib/hooks/useRecentClientsSearch.helpers.spec.js +33 -0
- package/lib/hooks/useRecentClientsSearch.js +4 -32
- package/lib/hooks/useRecentClientsSearch.spec.js +85 -0
- package/lib/hooks/useRecentContexts.spec.js +139 -0
- package/lib/hooks/useResize.spec.js +37 -0
- package/lib/hooks/useSkillsCatalog.spec.js +88 -0
- package/lib/hooks/useSlashCommands.spec.js +139 -0
- package/lib/hooks/useSmoothStreamText/useSmoothStreamText.spec.js +101 -0
- package/lib/hooks/useSnackBarManager/useSnackBarManager.spec.js +33 -0
- package/lib/hooks/useStreamResponse.spec.js +199 -0
- package/lib/hooks/useT.spec.js +20 -0
- package/lib/hooks/useToggle.spec.js +33 -0
- package/lib/hooks/useToggleFavorite/useToggleFavorite.spec.js +171 -0
- package/lib/index.js +5 -2
- package/lib/lang/br/index.js +26 -1
- package/lib/lang/en/index.js +26 -1
- package/lib/lang/es/index.js +26 -1
- package/lib/lang/fr/index.js +26 -1
- package/lib/services/maia/Access/updateAccess.spec.js +137 -0
- package/lib/services/maia/Actions/getFrequentlyUsedActions.js +1 -1
- package/lib/services/maia/Actions/getFrequentlyUsedActions.spec.js +56 -0
- package/lib/services/maia/Actions/getSlashCommands.spec.js +91 -0
- package/lib/services/maia/Agents/connectors.spec.js +359 -0
- package/lib/services/maia/Agents/createAgent.spec.js +55 -0
- package/lib/services/maia/Agents/deleteAgent.spec.js +57 -0
- package/lib/services/maia/Agents/fetchAgentDetail.spec.js +108 -0
- package/lib/services/maia/Agents/getAgentById.spec.js +190 -0
- package/lib/services/maia/Agents/getAgentModels.spec.js +190 -0
- package/lib/services/maia/Agents/getAgentSuggestions.spec.js +89 -0
- package/lib/services/maia/Agents/getAgents.helpers.js +181 -0
- package/lib/services/maia/Agents/getAgents.helpers.spec.js +211 -0
- package/lib/services/maia/Agents/getAgents.js +78 -242
- package/lib/services/maia/Agents/getAgents.spec.js +697 -0
- package/lib/services/maia/Agents/setAgentToolGroups.spec.js +45 -0
- package/lib/services/maia/Agents/toggleFavorite.spec.js +59 -0
- package/lib/services/maia/Agents/updateAgent.spec.js +48 -0
- package/lib/services/maia/Chats/deleteChat.spec.js +31 -0
- package/lib/services/maia/Chats/getChatMessages.spec.js +150 -0
- package/lib/services/maia/Chats/getChatsByUserId.spec.js +149 -0
- package/lib/services/maia/Chats/markSessionAsRead.spec.js +30 -0
- package/lib/services/maia/Chats/patchChat.spec.js +41 -0
- package/lib/services/maia/Chats/wasHelpfulChat.spec.js +28 -0
- package/lib/services/maia/Faqs/getFrequentlyAskedQuestions.spec.js +58 -0
- package/lib/services/maia/Knowledge/delete.spec.js +45 -0
- package/lib/services/maia/Knowledge/download.spec.js +78 -0
- package/lib/services/maia/Knowledge/save.spec.js +58 -0
- package/lib/services/maia/Orchestrator/orchestrator.helpers.js +130 -0
- package/lib/services/maia/Orchestrator/orchestrator.helpers.spec.js +153 -0
- package/lib/services/maia/Orchestrator/orchestrator.js +38 -121
- package/lib/services/maia/Orchestrator/orchestrator.spec.js +181 -0
- package/lib/services/maia/RecentClients/getRecentClients.spec.js +52 -0
- package/lib/services/maia/RecentContexts/getRecentContexts.spec.js +103 -0
- package/lib/services/maia/RecentProjects/getRecentProjects.spec.js +82 -0
- package/lib/services/maia/RecentTasks/getRecentTasks.spec.js +63 -0
- package/lib/services/maia/RecentUsers/getRecentUsers.spec.js +82 -0
- package/lib/services/maia/Skills/createSkill.spec.js +68 -0
- package/lib/services/maia/Skills/deleteSkill.spec.js +42 -0
- package/lib/services/maia/Skills/generateSkill.spec.js +48 -0
- package/lib/services/maia/Skills/getSkills.spec.js +152 -0
- package/lib/services/maia/Skills/updateSkill.spec.js +62 -0
- package/lib/services/maia/client.spec.js +56 -0
- package/lib/services/utils/fetchCOR.spec.js +211 -0
- package/lib/services/utils/getCookie.spec.js +20 -0
- package/lib/services/utils/mapChatMessages.spec.js +254 -0
- package/lib/store/chatsSidebarOptimistic.spec.js +112 -0
- package/lib/store/maiaLastChatPersistence.spec.js +22 -0
- package/lib/store/maiaPanelSessionPersistence.spec.js +62 -0
- package/lib/store/sessions/sessionNotificationSound.spec.js +145 -0
- package/lib/store/sessions/sessionNotifications.helpers.js +45 -0
- package/lib/store/sessions/sessionNotifications.helpers.spec.js +63 -0
- package/lib/store/sessions/sessionNotifications.js +35 -41
- package/lib/store/sessions/sessionNotifications.spec.js +106 -0
- package/lib/store/sessions/sessionStreamManager.js +40 -52
- package/lib/store/sessions/sessionStreamManager.spec.js +503 -0
- package/lib/store/sessions/sessions.types.spec.js +16 -0
- package/lib/store/sessions/useSessionsStore.spec.js +135 -0
- package/lib/store/useChatsStore.spec.js +619 -0
- package/lib/store/useFaqsStore.spec.js +57 -0
- package/lib/styles/cascade.js +29 -3
- package/lib/styles/transitions.js +3 -1
- package/lib/test/mockSseStream.js +121 -0
- package/lib/test/streamdownCodeMock.js +6 -0
- package/lib/test/streamdownMock.js +12 -0
- package/lib/types/agentModal.js +1 -1
- package/lib/types/global.d.js +1 -1
- package/lib/utils/actionCategoryMap.spec.js +18 -0
- package/lib/utils/agentDisplayName.spec.js +44 -0
- package/lib/utils/autoApproveStorage.spec.js +25 -0
- package/lib/utils/chatInputFiles.spec.js +39 -0
- package/lib/utils/contextMentionIcons.spec.js +41 -0
- package/lib/utils/contextMentionLabel.spec.js +13 -0
- package/lib/utils/contextMentionTriggers.spec.js +38 -0
- package/lib/utils/contextMentionTypeLabel.spec.js +14 -0
- package/lib/utils/corConnectorMentionTypes.spec.js +23 -0
- package/lib/utils/entityLinkRender.spec.js +72 -0
- package/lib/utils/fileDownloadHelper.spec.js +67 -0
- package/lib/utils/formatQuickActionMessage.spec.js +27 -0
- package/lib/utils/formatUnreadCount.spec.js +12 -0
- package/lib/utils/getUnitFileSize.spec.js +18 -0
- package/lib/utils/hitlAnalytics.spec.js +100 -0
- package/lib/utils/hoursPlannerQuickActionType.js +74 -1
- package/lib/utils/hoursPlannerQuickActionType.spec.js +64 -0
- package/lib/utils/imagePreprocessor.helpers.js +28 -0
- package/lib/utils/imagePreprocessor.helpers.spec.js +28 -0
- package/lib/utils/imagePreprocessor.js +12 -37
- package/lib/utils/imagePreprocessor.spec.js +112 -0
- package/lib/utils/maiaPageRoute.js +24 -0
- package/lib/utils/maiaPageRoute.spec.js +23 -0
- package/lib/utils/mapBackendLang.spec.js +19 -0
- package/lib/utils/navigateContextEntity.spec.js +50 -0
- package/lib/utils/normalizeAgentConnectors.spec.js +107 -0
- package/lib/utils/orchestratorSubagents.spec.js +32 -0
- package/lib/utils/reasoningMappers.spec.js +103 -0
- package/lib/utils/recentContextsHomeLimit.spec.js +32 -0
- package/lib/utils/renderContextMentions.spec.js +158 -0
- package/lib/utils/retryCompletion.spec.js +99 -0
- package/lib/utils/skillContentSize.spec.js +13 -0
- package/lib/utils/slashCommandMarker.spec.js +43 -0
- package/lib/utils/sortManagerHoursHomeFuas.spec.js +51 -0
- package/lib/utils/sseStreamContent.spec.js +31 -0
- package/lib/utils/streamActivityMessages.js +32 -19
- package/lib/utils/streamActivityMessages.spec.js +227 -0
- package/lib/utils/validateTrimmedFields.spec.js +26 -0
- package/package.json +1 -1
- package/README.md +0 -2
|
@@ -27,8 +27,11 @@ export var SCMessagesScroll = styled.div.withConfig({
|
|
|
27
27
|
export var SCMessagesInner = styled.div.withConfig({
|
|
28
28
|
displayName: "newStyles__SCMessagesInner",
|
|
29
29
|
componentId: "sc-1k23l8x-3"
|
|
30
|
-
})(["flex-grow:1;display:flex;flex-direction:column;gap:24px;padding:0 16px;width:100%;max-width:864px;
|
|
31
|
-
var $
|
|
30
|
+
})(["flex-grow:1;display:flex;flex-direction:column;gap:24px;padding:0 16px;width:100%;max-width:864px;", " ", " &::after{content:'';flex-shrink:0;height:40px;margin-top:-24px;}"], function (_ref2) {
|
|
31
|
+
var $skipEnter = _ref2.$skipEnter;
|
|
32
|
+
return !$skipEnter && css(["animation:", " 0.5s ease-out;"], fadeIn);
|
|
33
|
+
}, function (_ref3) {
|
|
34
|
+
var $scrollOnParent = _ref3.$scrollOnParent;
|
|
32
35
|
return $scrollOnParent ? 'overflow: visible;' : 'overflow-y: auto; overscroll-behavior-y: contain;';
|
|
33
36
|
});
|
|
34
37
|
export var SCTurnSpacer = styled.div.withConfig({
|
|
@@ -37,8 +40,8 @@ export var SCTurnSpacer = styled.div.withConfig({
|
|
|
37
40
|
})(["height:0;flex-shrink:0;margin-top:-24px;pointer-events:none;"]);
|
|
38
41
|
|
|
39
42
|
/** Difuminado en los bordes del área scrolleable: indica que hay contenido fuera de vista. */
|
|
40
|
-
var messagesEdgeGradient = css(["position:absolute;left:0;right:0;height:48px;width:100%;max-width:864px;margin:0 auto;pointer-events:none;z-index:5;opacity:", ";transition:opacity 0.3s ease-in-out;"], function (
|
|
41
|
-
var $show =
|
|
43
|
+
var messagesEdgeGradient = css(["position:absolute;left:0;right:0;height:48px;width:100%;max-width:864px;margin:0 auto;pointer-events:none;z-index:5;opacity:", ";transition:opacity 0.3s ease-in-out;"], function (_ref4) {
|
|
44
|
+
var $show = _ref4.$show;
|
|
42
45
|
return $show ? 1 : 0;
|
|
43
46
|
});
|
|
44
47
|
export var SCMessagesGradientTop = styled.div.withConfig({
|
|
@@ -64,11 +67,11 @@ export var SCOptionsList = styled.div.withConfig({
|
|
|
64
67
|
export var SCOptionItem = styled.div.withConfig({
|
|
65
68
|
displayName: "newStyles__SCOptionItem",
|
|
66
69
|
componentId: "sc-1k23l8x-9"
|
|
67
|
-
})(["color:", ";font-size:14px;line-height:140%;cursor:", ";opacity:", ";"], GLOBAL_COLORS.dark, function (
|
|
68
|
-
var $hasSelection =
|
|
70
|
+
})(["color:", ";font-size:14px;line-height:140%;cursor:", ";opacity:", ";"], GLOBAL_COLORS.dark, function (_ref5) {
|
|
71
|
+
var $hasSelection = _ref5.$hasSelection;
|
|
69
72
|
return $hasSelection ? 'not-allowed' : 'pointer';
|
|
70
|
-
}, function (
|
|
71
|
-
var $dimmed =
|
|
73
|
+
}, function (_ref6) {
|
|
74
|
+
var $dimmed = _ref6.$dimmed;
|
|
72
75
|
return $dimmed ? 0.5 : 1;
|
|
73
76
|
});
|
|
74
77
|
|
|
@@ -92,8 +95,8 @@ export var SCProjectLinkIcon = styled.span.withConfig({
|
|
|
92
95
|
export var SCMessageItemWrapper = styled.div.withConfig({
|
|
93
96
|
displayName: "newStyles__SCMessageItemWrapper",
|
|
94
97
|
componentId: "sc-1k23l8x-13"
|
|
95
|
-
})(["position:relative;display:flex;gap:8px;flex-direction:column;", ""], function (
|
|
96
|
-
var $isAssistant =
|
|
98
|
+
})(["position:relative;display:flex;gap:8px;flex-direction:column;", ""], function (_ref7) {
|
|
99
|
+
var $isAssistant = _ref7.$isAssistant;
|
|
97
100
|
return $isAssistant && 'justify-content: start;';
|
|
98
101
|
});
|
|
99
102
|
|
|
@@ -107,8 +110,8 @@ export var SCMessageItemInner = styled.div.withConfig({
|
|
|
107
110
|
export var SCAttachmentsRow = styled.div.withConfig({
|
|
108
111
|
displayName: "newStyles__SCAttachmentsRow",
|
|
109
112
|
componentId: "sc-1k23l8x-15"
|
|
110
|
-
})(["display:flex;justify-content:", ";gap:12px;flex-wrap:wrap;"], function (
|
|
111
|
-
var $isAssistant =
|
|
113
|
+
})(["display:flex;justify-content:", ";gap:12px;flex-wrap:wrap;"], function (_ref8) {
|
|
114
|
+
var $isAssistant = _ref8.$isAssistant;
|
|
112
115
|
return $isAssistant ? 'flex-start' : 'flex-end';
|
|
113
116
|
});
|
|
114
117
|
|
|
@@ -122,20 +125,20 @@ export var SCApprovalActionsColumn = styled.div.withConfig({
|
|
|
122
125
|
export var SCCAIMessageWrapper = styled.div.withConfig({
|
|
123
126
|
displayName: "newStyles__SCCAIMessageWrapper",
|
|
124
127
|
componentId: "sc-1k23l8x-17"
|
|
125
|
-
})(["contain:layout style;min-width:0;max-width:100%;padding:", ";border-radius:8px;background-color:", ";display:flex;flex-direction:column;gap:16px;", " &.has-task-links a[data-cor-link='task']{text-decoration:none !important;color:#202020 !important;font-weight:600 !important;position:relative;display:inline !important;padding:2px 0 !important;padding-left:22px !important;white-space:normal !important;overflow-wrap:break-word !important;word-break:break-word !important;&:hover{text-decoration-line:underline !important;text-decoration-color:#b3b3b3 !important;text-decoration-thickness:1px !important;text-underline-offset:2px !important;background:#bed5eb !important;border-radius:4px !important;}&::before{content:'';position:absolute;left:0;top:0;width:20px;height:20px;background-image:", ";background-size:contain;background-repeat:no-repeat;background-position:center;}}&.has-project-links a[data-cor-link='project']{text-decoration:none !important;color:#202020 !important;font-weight:600 !important;display:inline-flex !important;align-items:baseline !important;gap:2px !important;padding:2px 0 !important;white-space:normal !important;overflow-wrap:break-word !important;word-break:break-word !important;vertical-align:baseline !important;&:hover{text-decoration-line:underline !important;text-decoration-color:#b3b3b3 !important;text-decoration-thickness:1px !important;text-underline-offset:2px !important;background:#bed5eb !important;border-radius:4px !important;}}", ""], function (
|
|
126
|
-
var isCurrentUser =
|
|
128
|
+
})(["contain:layout style;min-width:0;max-width:100%;padding:", ";border-radius:8px;background-color:", ";display:flex;flex-direction:column;gap:16px;", " &.has-task-links a[data-cor-link='task']{text-decoration:none !important;color:#202020 !important;font-weight:600 !important;position:relative;display:inline !important;padding:2px 0 !important;padding-left:22px !important;white-space:normal !important;overflow-wrap:break-word !important;word-break:break-word !important;&:hover{text-decoration-line:underline !important;text-decoration-color:#b3b3b3 !important;text-decoration-thickness:1px !important;text-underline-offset:2px !important;background:#bed5eb !important;border-radius:4px !important;}&::before{content:'';position:absolute;left:0;top:0;width:20px;height:20px;background-image:", ";background-size:contain;background-repeat:no-repeat;background-position:center;}}&.has-project-links a[data-cor-link='project']{text-decoration:none !important;color:#202020 !important;font-weight:600 !important;display:inline-flex !important;align-items:baseline !important;gap:2px !important;padding:2px 0 !important;white-space:normal !important;overflow-wrap:break-word !important;word-break:break-word !important;vertical-align:baseline !important;&:hover{text-decoration-line:underline !important;text-decoration-color:#b3b3b3 !important;text-decoration-thickness:1px !important;text-underline-offset:2px !important;background:#bed5eb !important;border-radius:4px !important;}}", ""], function (_ref9) {
|
|
129
|
+
var isCurrentUser = _ref9.isCurrentUser;
|
|
127
130
|
return isCurrentUser ? '12px' : '0px';
|
|
128
|
-
}, function (
|
|
129
|
-
var isCurrentUser =
|
|
130
|
-
isFrontendCancelled =
|
|
131
|
+
}, function (_ref0) {
|
|
132
|
+
var isCurrentUser = _ref0.isCurrentUser,
|
|
133
|
+
isFrontendCancelled = _ref0.isFrontendCancelled;
|
|
131
134
|
if (isFrontendCancelled) return 'transparent';
|
|
132
135
|
if (isCurrentUser) return BLUE_IA_COLORS[50];
|
|
133
136
|
return 'transparent';
|
|
134
|
-
}, function (
|
|
135
|
-
var isCurrentUser = _ref0.isCurrentUser;
|
|
136
|
-
return isCurrentUser && css(["overflow-wrap:anywhere;align-self:flex-end;max-width:75%;"]);
|
|
137
|
-
}, TASK_LINK_ICON_CSS_URL, function (_ref1) {
|
|
137
|
+
}, function (_ref1) {
|
|
138
138
|
var isCurrentUser = _ref1.isCurrentUser;
|
|
139
|
+
return isCurrentUser && css(["overflow-wrap:anywhere;align-self:flex-end;max-width:75%;"]);
|
|
140
|
+
}, TASK_LINK_ICON_CSS_URL, function (_ref10) {
|
|
141
|
+
var isCurrentUser = _ref10.isCurrentUser;
|
|
139
142
|
return isCurrentUser && css(["&.has-task-links a[data-cor-link='task']{font-size:14px !important;line-height:20px !important;}&.has-task-links a[data-cor-link='task']::before{top:0;top:calc((1lh - 20px) / 2);}&.has-project-links a[data-cor-link='project']{font-size:14px !important;line-height:20px !important;}"]);
|
|
140
143
|
});
|
|
141
144
|
var fadeInUp = keyframes(["from{opacity:0;transform:translateX(-50%) translateY(10px);}to{opacity:1;transform:translateX(-50%) translateY(0);}"]);
|
|
@@ -148,11 +151,11 @@ export var ScrollToBottomButton = styled.button.withConfig({
|
|
|
148
151
|
export var SCScrollIconSwap = styled.span.withConfig({
|
|
149
152
|
displayName: "newStyles__SCScrollIconSwap",
|
|
150
153
|
componentId: "sc-1k23l8x-19"
|
|
151
|
-
})(["position:absolute;display:inline-flex;align-items:center;justify-content:center;opacity:", ";transform:scale(", ");transition:opacity 180ms ease-out,transform 180ms ease-out;pointer-events:none;"], function (
|
|
152
|
-
var $visible = _ref10.$visible;
|
|
153
|
-
return $visible ? 1 : 0;
|
|
154
|
-
}, function (_ref11) {
|
|
154
|
+
})(["position:absolute;display:inline-flex;align-items:center;justify-content:center;opacity:", ";transform:scale(", ");transition:opacity 180ms ease-out,transform 180ms ease-out;pointer-events:none;"], function (_ref11) {
|
|
155
155
|
var $visible = _ref11.$visible;
|
|
156
|
+
return $visible ? 1 : 0;
|
|
157
|
+
}, function (_ref12) {
|
|
158
|
+
var $visible = _ref12.$visible;
|
|
156
159
|
return $visible ? 1 : 0.72;
|
|
157
160
|
});
|
|
158
161
|
var writingDot = keyframes(["0%,60%,100%{transform:translateY(0);opacity:0.35;}30%{transform:translateY(-3px);opacity:1;}"]);
|
|
@@ -160,4 +163,4 @@ export var SCWritingDots = styled.span.withConfig({
|
|
|
160
163
|
displayName: "newStyles__SCWritingDots",
|
|
161
164
|
componentId: "sc-1k23l8x-20"
|
|
162
165
|
})(["display:inline-flex;align-items:center;gap:3px;span{width:4px;height:4px;border-radius:50%;background:#202020;animation:", " 1.2s ease-in-out infinite;}span:nth-child(2){animation-delay:0.16s;}span:nth-child(3){animation-delay:0.32s;}"], writingDot);
|
|
163
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzdHlsZWQiLCJjc3MiLCJrZXlmcmFtZXMiLCJCTFVFX0lBX0NPTE9SUyIsIkdMT0JBTF9DT0xPUlMiLCJUQVNLX0xJTktfSUNPTl9DU1NfVVJMIiwiZmFkZUluIiwiTWVzc2FnZVdyYXBwZXIiLCJkaXYiLCJ3aXRoQ29uZmlnIiwiZGlzcGxheU5hbWUiLCJjb21wb25lbnRJZCIsIlNDTWVzc2FnZXNPdXRlciIsIl9yZWYiLCIkc2Nyb2xsT25QYXJlbnQiLCJTQ01lc3NhZ2VzU2Nyb2xsIiwiU0NNZXNzYWdlc0lubmVyIiwiX3JlZjIiLCJTQ1R1cm5TcGFjZXIiLCJtZXNzYWdlc0VkZ2VHcmFkaWVudCIsIl9yZWYzIiwiJHNob3ciLCJTQ01lc3NhZ2VzR3JhZGllbnRUb3AiLCJTQ01lc3NhZ2VzR3JhZGllbnRCb3R0b20iLCJTQ0xvYWRpbmdNZXNzYWdlc0NvbHVtbiIsIlNDT3B0aW9uc0xpc3QiLCJTQ09wdGlvbkl0ZW0iLCJkYXJrIiwiX3JlZjQiLCIkaGFzU2VsZWN0aW9uIiwiX3JlZjUiLCIkZGltbWVkIiwiU0NUYXNrTGluayIsImEiLCJTQ1Byb2plY3RMaW5rIiwiU0NQcm9qZWN0TGlua0ljb24iLCJzcGFuIiwiU0NNZXNzYWdlSXRlbVdyYXBwZXIiLCJfcmVmNiIsIiRpc0Fzc2lzdGFudCIsIlNDTWVzc2FnZUl0ZW1Jbm5lciIsIlNDQXR0YWNobWVudHNSb3ciLCJfcmVmNyIsIlNDQXBwcm92YWxBY3Rpb25zQ29sdW1uIiwiU0NDQUlNZXNzYWdlV3JhcHBlciIsIl9yZWY4IiwiaXNDdXJyZW50VXNlciIsIl9yZWY5IiwiaXNGcm9udGVuZENhbmNlbGxlZCIsIl9yZWYwIiwiX3JlZjEiLCJmYWRlSW5VcCIsIlNjcm9sbFRvQm90dG9tQnV0dG9uIiwiYnV0dG9uIiwiU0NTY3JvbGxJY29uU3dhcCIsIl9yZWYxMCIsIiR2aXNpYmxlIiwiX3JlZjExIiwid3JpdGluZ0RvdCIsIlNDV3JpdGluZ0RvdHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9tb2xlY3VsZXMvQ2hhdEFJTWVzc2FnZXMvbmV3U3R5bGVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9pbmRlbnQgKi9cbmltcG9ydCBzdHlsZWQsIHsgY3NzLCBrZXlmcmFtZXMgfSBmcm9tICdzdHlsZWQtY29tcG9uZW50cydcbmltcG9ydCB7IEJMVUVfSUFfQ09MT1JTLCBHTE9CQUxfQ09MT1JTIH0gZnJvbSAnLi4vLi4vLi4vc3R5bGVzL2NvbmZpZydcbmltcG9ydCB7IFRBU0tfTElOS19JQ09OX0NTU19VUkwgfSBmcm9tICcuLi8uLi8uLi9jb25zdGFudHMvdGFza0xpbmtJY29uJ1xuXG5jb25zdCBmYWRlSW4gPSBrZXlmcmFtZXNgXG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbmBcblxuZXhwb3J0IGNvbnN0IE1lc3NhZ2VXcmFwcGVyID0gc3R5bGVkLmRpdmBcbiAgcGFkZGluZzogMTZweDtcbmBcblxuLyoqIENvbnRlbmVkb3IgZXh0ZXJpb3IgZGVsIMOhcmVhIGRlIG1lbnNhamVzLiBDdWFuZG8gZXhwYW5kZWQsIG5vIGhhY2Ugc2Nyb2xsOyBlbCBzY3JvbGwgbG8gdGllbmUgU0NNZXNzYWdlc1Njcm9sbC4gKi9cbmV4cG9ydCBjb25zdCBTQ01lc3NhZ2VzT3V0ZXIgPSBzdHlsZWQuZGl2PHsgJHNjcm9sbE9uUGFyZW50PzogYm9vbGVhbiB9PmBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1ncm93OiAxO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAwO1xuICAkeyh7ICRzY3JvbGxPblBhcmVudCB9KSA9PiAoJHNjcm9sbE9uUGFyZW50ID8gJycgOiAnb3ZlcmZsb3c6IGF1dG87IG92ZXJzY3JvbGwtYmVoYXZpb3IteTogY29udGFpbjsnKX1cbmBcblxuLyoqIEN1YW5kbyBleHBhbmRlZCwgZXN0ZSBjb250ZW5lZG9yIGhhY2Ugc2Nyb2xsIHBhcmEgcXVlIGVsIGJvdMOzbiBcImlyIGFsIGZpbmFsXCIgcXVlZGUgZmlqbyBlbiBlbCDDoXJlYSBkZWwgY2hhdCAqL1xuZXhwb3J0IGNvbnN0IFNDTWVzc2FnZXNTY3JvbGwgPSBzdHlsZWQuZGl2YFxuICBmbGV4OiAxO1xuICBtaW4taGVpZ2h0OiAwO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBvdmVyc2Nyb2xsLWJlaGF2aW9yLXk6IGNvbnRhaW47XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuYFxuXG4vKiogQ29udGVuZWRvciBpbnRlcmlvciBkZSBtZW5zYWplcyAobWF4V2lkdGggODY0cHgpLiBDdWFuZG8gZXhwYW5kZWQsIG92ZXJmbG93IHZpc2libGUgcGFyYSBxdWUgc2Nyb2xsIGxvIHRlbmdhIFNDTWVzc2FnZXNTY3JvbGwgKi9cbmV4cG9ydCBjb25zdCBTQ01lc3NhZ2VzSW5uZXIgPSBzdHlsZWQuZGl2PHsgJHNjcm9sbE9uUGFyZW50PzogYm9vbGVhbiB9PmBcbiAgZmxleC1ncm93OiAxO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDI0cHg7XG4gIHBhZGRpbmc6IDAgMTZweDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogODY0cHg7XG4gIGFuaW1hdGlvbjogJHtmYWRlSW59IDAuNXMgZWFzZS1vdXQ7XG4gICR7KHsgJHNjcm9sbE9uUGFyZW50IH0pID0+XG4gICAgJHNjcm9sbE9uUGFyZW50ID8gJ292ZXJmbG93OiB2aXNpYmxlOycgOiAnb3ZlcmZsb3cteTogYXV0bzsgb3ZlcnNjcm9sbC1iZWhhdmlvci15OiBjb250YWluOyd9XG5cbiAgLyogQ29sY2jDs24gZGUgc2Nyb2xsIGFsIGZpbmFsIHBhcmEgcXVlIGVsIMO6bHRpbW8gbWVuc2FqZSBubyBxdWVkZSBwZWdhZG8gYWxcbiAgICAgaW5wdXQuIFZhIGNvbW8gZmxleCBpdGVtIChubyBwYWRkaW5nKSBwb3JxdWUgY3VhbmRvIGVzdGUgY29udGVuZWRvciBlcyBlbFxuICAgICBzY3JvbGxlciBlbCBwYWRkaW5nLWJvdHRvbSBubyBzZSByZXNwZXRhIGFsIGZpbmFsIGRlbCBzY3JvbGwuXG4gICAgIEVsIG1hcmdpbiBuZWdhdGl2byBjYW5jZWxhIGVsIGdhcCBkZWwgbGlzdGFkby4gKi9cbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGhlaWdodDogNDBweDtcbiAgICBtYXJnaW4tdG9wOiAtMjRweDtcbiAgfVxuYFxuXG5leHBvcnQgY29uc3QgU0NUdXJuU3BhY2VyID0gc3R5bGVkLmRpdmBcbiAgaGVpZ2h0OiAwO1xuICBmbGV4LXNocmluazogMDtcbiAgbWFyZ2luLXRvcDogLTI0cHg7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuYFxuXG4vKiogRGlmdW1pbmFkbyBlbiBsb3MgYm9yZGVzIGRlbCDDoXJlYSBzY3JvbGxlYWJsZTogaW5kaWNhIHF1ZSBoYXkgY29udGVuaWRvIGZ1ZXJhIGRlIHZpc3RhLiAqL1xuY29uc3QgbWVzc2FnZXNFZGdlR3JhZGllbnQgPSBjc3M8eyAkc2hvdzogYm9vbGVhbiB9PmBcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiA0OHB4O1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiA4NjRweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAvKiBEZWJham8gZGVsIFNjcm9sbFRvQm90dG9tQnV0dG9uICh6LWluZGV4IDEwKS4gKi9cbiAgei1pbmRleDogNTtcbiAgb3BhY2l0eTogJHsoeyAkc2hvdyB9KSA9PiAoJHNob3cgPyAxIDogMCl9O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZS1pbi1vdXQ7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ01lc3NhZ2VzR3JhZGllbnRUb3AgPSBzdHlsZWQuZGl2PHsgJHNob3c6IGJvb2xlYW4gfT5gXG4gICR7bWVzc2FnZXNFZGdlR3JhZGllbnR9XG4gIHRvcDogMDtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxuICAgIHRvIGJvdHRvbSxcbiAgICAjZmZmZmZmIDAlLFxuICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KSAzMCUsXG4gICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIDcwJSxcbiAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCVcbiAgKTtcbmBcblxuZXhwb3J0IGNvbnN0IFNDTWVzc2FnZXNHcmFkaWVudEJvdHRvbSA9IHN0eWxlZC5kaXY8eyAkc2hvdzogYm9vbGVhbiB9PmBcbiAgJHttZXNzYWdlc0VkZ2VHcmFkaWVudH1cbiAgYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXG4gICAgdG8gdG9wLFxuICAgICNmZmZmZmYgMCUsXG4gICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpIDMwJSxcbiAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgNzAlLFxuICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJVxuICApO1xuYFxuXG4vKiogQ29sdW1uYSBwYXJhIGxvYWRpbmcvbG9hZGluZyBtZXNzYWdlcyAqL1xuZXhwb3J0IGNvbnN0IFNDTG9hZGluZ01lc3NhZ2VzQ29sdW1uID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgLyogU0NNZXNzYWdlc0lubmVyIHVzYSBnYXAgMjRweDsgZWwgbmVnYXRpdm8gbG8gY2FuY2VsYWJhIHkgZWwgaW5kaWNhZG9yXG4gICAgIHF1ZWRhYmEgcGVnYWRvIGFsIGJ1YmJsZSBkZWwgdXN1YXJpby4gRGVqYW1vcyAxNnB4IGRlIGFpcmUuICovXG4gIG1hcmdpbi10b3A6IC04cHg7XG5gXG5cbi8qKiBMaXN0YSBkZSBvcGNpb25lcyAoTWVzc2FnZU9wdGlvbnMpICovXG5leHBvcnQgY29uc3QgU0NPcHRpb25zTGlzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMTJweDtcbmBcblxuZXhwb3J0IGNvbnN0IFNDT3B0aW9uSXRlbSA9IHN0eWxlZC5kaXY8eyAkaGFzU2VsZWN0aW9uPzogYm9vbGVhbjsgJGRpbW1lZD86IGJvb2xlYW4gfT5gXG4gIGNvbG9yOiAke0dMT0JBTF9DT0xPUlMuZGFya307XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDE0MCU7XG4gIGN1cnNvcjogJHsoeyAkaGFzU2VsZWN0aW9uIH0pID0+ICgkaGFzU2VsZWN0aW9uID8gJ25vdC1hbGxvd2VkJyA6ICdwb2ludGVyJyl9O1xuICBvcGFjaXR5OiAkeyh7ICRkaW1tZWQgfSkgPT4gKCRkaW1tZWQgPyAwLjUgOiAxKX07XG5gXG5cbi8qKiBFbmxhY2UgZGUgdGFyZWEgKHRhc2sgbGluaykgKi9cbmV4cG9ydCBjb25zdCBTQ1Rhc2tMaW5rID0gc3R5bGVkLmFgXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMzM3YWI3ICFpbXBvcnRhbnQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbmBcblxuLyoqIEVubGFjZSBkZSBwcm95ZWN0byAocHJvamVjdCBsaW5rKSAqL1xuZXhwb3J0IGNvbnN0IFNDUHJvamVjdExpbmsgPSBzdHlsZWQuYWBcbiAgY3Vyc29yOiBwb2ludGVyO1xuYFxuXG5leHBvcnQgY29uc3QgU0NQcm9qZWN0TGlua0ljb24gPSBzdHlsZWQuc3BhbmBcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmbGV4LXNocmluazogMDtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiA0cHg7XG5gXG5cbi8qKiBXcmFwcGVyIGRlIHVuIG1lbnNhamUgKHBvc2ljacOzbiwgZmxleCwgZ2FwKSAqL1xuZXhwb3J0IGNvbnN0IFNDTWVzc2FnZUl0ZW1XcmFwcGVyID0gc3R5bGVkLmRpdjx7ICRpc0Fzc2lzdGFudD86IGJvb2xlYW4gfT5gXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiA4cHg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICR7KHsgJGlzQXNzaXN0YW50IH0pID0+ICRpc0Fzc2lzdGFudCAmJiAnanVzdGlmeS1jb250ZW50OiBzdGFydDsnfVxuYFxuXG4vKiogQ29udGVuZWRvciBpbnRlcmlvciBkZWwgbWVuc2FqZSAoYXR0YWNobWVudHMgKyBhcHByb3ZhbCArIGNvbnRlbnQpICovXG5leHBvcnQgY29uc3QgU0NNZXNzYWdlSXRlbUlubmVyID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiA4cHg7XG4gIG1pbi13aWR0aDogMDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuYFxuXG4vKiogRmlsYSBkZSBhdHRhY2htZW50cyAoZmxleCBlbmQgcGFyYSB1c3VhcmlvLCBmbGV4IHN0YXJ0IHBhcmEgYXNzaXN0YW50KSAqL1xuZXhwb3J0IGNvbnN0IFNDQXR0YWNobWVudHNSb3cgPSBzdHlsZWQuZGl2PHsgJGlzQXNzaXN0YW50PzogYm9vbGVhbiB9PmBcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiAkeyh7ICRpc0Fzc2lzdGFudCB9KSA9PiAoJGlzQXNzaXN0YW50ID8gJ2ZsZXgtc3RhcnQnIDogJ2ZsZXgtZW5kJyl9O1xuICBnYXA6IDEycHg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbmBcblxuLyoqIENvbHVtbmEgZGUgYWNjaW9uZXMgZGUgYXBwcm92YWwgKi9cbmV4cG9ydCBjb25zdCBTQ0FwcHJvdmFsQWN0aW9uc0NvbHVtbiA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMTJweDtcbmBcblxuLyoqIFdyYXBwZXIgZGVsIGNvbnRlbmlkbyBkZWwgbWVuc2FqZS4gY29udGFpbiBsaW1pdGEgcmVwYWludCBkdXJhbnRlIHN0cmVhbWluZyBhbCDDoXJlYSBkZWwgdGV4dG8uICovXG5leHBvcnQgY29uc3QgU0NDQUlNZXNzYWdlV3JhcHBlciA9IHN0eWxlZC5kaXY8eyBpc0N1cnJlbnRVc2VyOiBib29sZWFuOyBpc0Zyb250ZW5kQ2FuY2VsbGVkPzogYm9vbGVhbiB9PmBcbiAgY29udGFpbjogbGF5b3V0IHN0eWxlO1xuICBtaW4td2lkdGg6IDA7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJHsoeyBpc0N1cnJlbnRVc2VyIH0pID0+IChpc0N1cnJlbnRVc2VyID8gJzEycHgnIDogJzBweCcpfTtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkeyh7IGlzQ3VycmVudFVzZXIsIGlzRnJvbnRlbmRDYW5jZWxsZWQgfSkgPT4ge1xuICAgIGlmIChpc0Zyb250ZW5kQ2FuY2VsbGVkKSByZXR1cm4gJ3RyYW5zcGFyZW50J1xuICAgIGlmIChpc0N1cnJlbnRVc2VyKSByZXR1cm4gQkxVRV9JQV9DT0xPUlNbNTBdXG4gICAgcmV0dXJuICd0cmFuc3BhcmVudCdcbiAgfX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMTZweDtcbiAgJHsoeyBpc0N1cnJlbnRVc2VyIH0pID0+XG4gICAgaXNDdXJyZW50VXNlciAmJlxuICAgIGNzc2BcbiAgICAgIG92ZXJmbG93LXdyYXA6IGFueXdoZXJlO1xuICAgICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gICAgICBtYXgtd2lkdGg6IDc1JTtcbiAgICBgfVxuXG4gICYuaGFzLXRhc2stbGlua3MgYVtkYXRhLWNvci1saW5rPSd0YXNrJ10ge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjMjAyMDIwICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDYwMCAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAycHggMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogMjJweCAhaW1wb3J0YW50O1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWwgIWltcG9ydGFudDtcbiAgICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkICFpbXBvcnRhbnQ7XG4gICAgd29yZC1icmVhazogYnJlYWstd29yZCAhaW1wb3J0YW50O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb24tbGluZTogdW5kZXJsaW5lICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6ICNiM2IzYjMgIWltcG9ydGFudDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IDFweCAhaW1wb3J0YW50O1xuICAgICAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAycHggIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQ6ICNiZWQ1ZWIgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6ICR7VEFTS19MSU5LX0lDT05fQ1NTX1VSTH07XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIH1cbiAgfVxuXG4gICYuaGFzLXByb2plY3QtbGlua3MgYVtkYXRhLWNvci1saW5rPSdwcm9qZWN0J10ge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjMjAyMDIwICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDYwMCAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG4gICAgZ2FwOiAycHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAycHggMCAhaW1wb3J0YW50O1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWwgIWltcG9ydGFudDtcbiAgICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkICFpbXBvcnRhbnQ7XG4gICAgd29yZC1icmVhazogYnJlYWstd29yZCAhaW1wb3J0YW50O1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZSAhaW1wb3J0YW50O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb24tbGluZTogdW5kZXJsaW5lICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6ICNiM2IzYjMgIWltcG9ydGFudDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IDFweCAhaW1wb3J0YW50O1xuICAgICAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAycHggIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQ6ICNiZWQ1ZWIgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gICR7KHsgaXNDdXJyZW50VXNlciB9KSA9PlxuICAgIGlzQ3VycmVudFVzZXIgJiZcbiAgICBjc3NgXG4gICAgICAmLmhhcy10YXNrLWxpbmtzIGFbZGF0YS1jb3ItbGluaz0ndGFzayddIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgICYuaGFzLXRhc2stbGlua3MgYVtkYXRhLWNvci1saW5rPSd0YXNrJ106OmJlZm9yZSB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgdG9wOiBjYWxjKCgxbGggLSAyMHB4KSAvIDIpO1xuICAgICAgfVxuXG4gICAgICAmLmhhcy1wcm9qZWN0LWxpbmtzIGFbZGF0YS1jb3ItbGluaz0ncHJvamVjdCddIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgYH1cbmBcblxuY29uc3QgZmFkZUluVXAgPSBrZXlmcmFtZXNgXG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoMTBweCk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoMCk7XG4gIH1cbmBcblxuZXhwb3J0IGNvbnN0IFNjcm9sbFRvQm90dG9tQnV0dG9uID0gc3R5bGVkLmJ1dHRvbmBcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMTBweDtcbiAgYXNwZWN0LXJhdGlvOiAxLzE7XG4gIGJvcmRlci1yYWRpdXM6IDIxLjVweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2Q5ZDlkOTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm94LXNoYWRvdzogMCA0cHggNHB4IDAgcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDE1cHg7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHotaW5kZXg6IDEwO1xuICBhbmltYXRpb246ICR7ZmFkZUluVXB9IDAuM3MgZWFzZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjNzIGVhc2U7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICB9XG5gXG5cbi8qIExvcyBkb3MgaWNvbm9zIHNlIHN1cGVycG9uZW4gcGFyYSBwb2RlciBjcnV6YXJsb3M7IGVsIGJvdMOzbiB5YSBlcyBgcG9zaXRpb246IGFic29sdXRlYC4gKi9cbmV4cG9ydCBjb25zdCBTQ1Njcm9sbEljb25Td2FwID0gc3R5bGVkLnNwYW48eyAkdmlzaWJsZTogYm9vbGVhbiB9PmBcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG9wYWNpdHk6ICR7KHsgJHZpc2libGUgfSkgPT4gKCR2aXNpYmxlID8gMSA6IDApfTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgkeyh7ICR2aXNpYmxlIH0pID0+ICgkdmlzaWJsZSA/IDEgOiAwLjcyKX0pO1xuICB0cmFuc2l0aW9uOlxuICAgIG9wYWNpdHkgMTgwbXMgZWFzZS1vdXQsXG4gICAgdHJhbnNmb3JtIDE4MG1zIGVhc2Utb3V0O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbmBcblxuY29uc3Qgd3JpdGluZ0RvdCA9IGtleWZyYW1lc2BcbiAgMCUsIDYwJSwgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDAuMzU7XG4gIH1cbiAgMzAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTNweCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuYFxuXG5leHBvcnQgY29uc3QgU0NXcml0aW5nRG90cyA9IHN0eWxlZC5zcGFuYFxuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAzcHg7XG5cbiAgc3BhbiB7XG4gICAgd2lkdGg6IDRweDtcbiAgICBoZWlnaHQ6IDRweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZDogIzIwMjAyMDtcbiAgICBhbmltYXRpb246ICR7d3JpdGluZ0RvdH0gMS4ycyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbiAgfVxuXG4gIHNwYW46bnRoLWNoaWxkKDIpIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuMTZzO1xuICB9XG5cbiAgc3BhbjpudGgtY2hpbGQoMykge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMC4zMnM7XG4gIH1cbmBcbiJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQSxPQUFPQSxNQUFNLElBQUlDLEdBQUcsRUFBRUMsU0FBUyxRQUFRLG1CQUFtQjtBQUMxRCxTQUFTQyxjQUFjLEVBQUVDLGFBQWEsUUFBUSx3QkFBd0I7QUFDdEUsU0FBU0Msc0JBQXNCLFFBQVEsaUNBQWlDO0FBRXhFLElBQU1DLE1BQU0sR0FBR0osU0FBUyxvQ0FPdkI7QUFFRCxPQUFPLElBQU1LLGNBQWMsR0FBR1AsTUFBTSxDQUFDUSxHQUFHLENBQUFDLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEscUJBRXZDOztBQUVEO0FBQ0EsT0FBTyxJQUFNQyxlQUFlLEdBQUdaLE1BQU0sQ0FBQ1EsR0FBRyxDQUFBQyxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLDRGQU1yQyxVQUFBRSxJQUFBO0VBQUEsSUFBR0MsZUFBZSxHQUFBRCxJQUFBLENBQWZDLGVBQWU7RUFBQSxPQUFRQSxlQUFlLEdBQUcsRUFBRSxHQUFHLGlEQUFpRDtBQUFBLENBQUMsQ0FDdEc7O0FBRUQ7QUFDQSxPQUFPLElBQU1DLGdCQUFnQixHQUFHZixNQUFNLENBQUNRLEdBQUcsQ0FBQUMsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSw4R0FPekM7O0FBRUQ7QUFDQSxPQUFPLElBQU1LLGVBQWUsR0FBR2hCLE1BQU0sQ0FBQ1EsR0FBRyxDQUFBQyxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLDZNQVExQkwsTUFBTSxFQUNqQixVQUFBVyxLQUFBO0VBQUEsSUFBR0gsZUFBZSxHQUFBRyxLQUFBLENBQWZILGVBQWU7RUFBQSxPQUNsQkEsZUFBZSxHQUFHLG9CQUFvQixHQUFHLG1EQUFtRDtBQUFBLEVBWS9GO0FBRUQsT0FBTyxJQUFNSSxZQUFZLEdBQUdsQixNQUFNLENBQUNRLEdBQUcsQ0FBQUMsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSxvRUFLckM7O0FBRUQ7QUFDQSxJQUFNUSxvQkFBb0IsR0FBR2xCLEdBQUcsNEtBV25CLFVBQUFtQixLQUFBO0VBQUEsSUFBR0MsS0FBSyxHQUFBRCxLQUFBLENBQUxDLEtBQUs7RUFBQSxPQUFRQSxLQUFLLEdBQUcsQ0FBQyxHQUFHLENBQUM7QUFBQSxDQUFDLENBRTFDO0FBRUQsT0FBTyxJQUFNQyxxQkFBcUIsR0FBR3RCLE1BQU0sQ0FBQ1EsR0FBRyxDQUFBQyxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLG9KQUMzQ1Esb0JBQW9CLENBU3ZCO0FBRUQsT0FBTyxJQUFNSSx3QkFBd0IsR0FBR3ZCLE1BQU0sQ0FBQ1EsR0FBRyxDQUFBQyxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLG9KQUM5Q1Esb0JBQW9CLENBU3ZCOztBQUVEO0FBQ0EsT0FBTyxJQUFNSyx1QkFBdUIsR0FBR3hCLE1BQU0sQ0FBQ1EsR0FBRyxDQUFBQyxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLDJEQU1oRDs7QUFFRDtBQUNBLE9BQU8sSUFBTWMsYUFBYSxHQUFHekIsTUFBTSxDQUFDUSxHQUFHLENBQUFDLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEsb0RBSXRDO0FBRUQsT0FBTyxJQUFNZSxZQUFZLEdBQUcxQixNQUFNLENBQUNRLEdBQUcsQ0FBQUMsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSw2RUFDM0JQLGFBQWEsQ0FBQ3VCLElBQUksRUFHakIsVUFBQUMsS0FBQTtFQUFBLElBQUdDLGFBQWEsR0FBQUQsS0FBQSxDQUFiQyxhQUFhO0VBQUEsT0FBUUEsYUFBYSxHQUFHLGFBQWEsR0FBRyxTQUFTO0FBQUEsQ0FBQyxFQUNqRSxVQUFBQyxLQUFBO0VBQUEsSUFBR0MsT0FBTyxHQUFBRCxLQUFBLENBQVBDLE9BQU87RUFBQSxPQUFRQSxPQUFPLEdBQUcsR0FBRyxHQUFHLENBQUM7QUFBQSxDQUFDLENBQ2hEOztBQUVEO0FBQ0EsT0FBTyxJQUFNQyxVQUFVLEdBQUdoQyxNQUFNLENBQUNpQyxDQUFDLENBQUF4QixVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLHFGQUlqQzs7QUFFRDtBQUNBLE9BQU8sSUFBTXVCLGFBQWEsR0FBR2xDLE1BQU0sQ0FBQ2lDLENBQUMsQ0FBQXhCLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEsdUJBRXBDO0FBRUQsT0FBTyxJQUFNd0IsaUJBQWlCLEdBQUduQyxNQUFNLENBQUNvQyxJQUFJLENBQUEzQixVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLG1KQVUzQzs7QUFFRDtBQUNBLE9BQU8sSUFBTTBCLG9CQUFvQixHQUFHckMsTUFBTSxDQUFDUSxHQUFHLENBQUFDLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEsMEVBSzFDLFVBQUEyQixLQUFBO0VBQUEsSUFBR0MsWUFBWSxHQUFBRCxLQUFBLENBQVpDLFlBQVk7RUFBQSxPQUFPQSxZQUFZLElBQUkseUJBQXlCO0FBQUEsRUFDbEU7O0FBRUQ7QUFDQSxPQUFPLElBQU1DLGtCQUFrQixHQUFHeEMsTUFBTSxDQUFDUSxHQUFHLENBQUFDLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEsOEVBTTNDOztBQUVEO0FBQ0EsT0FBTyxJQUFNOEIsZ0JBQWdCLEdBQUd6QyxNQUFNLENBQUNRLEdBQUcsQ0FBQUMsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSxtRUFFckIsVUFBQStCLEtBQUE7RUFBQSxJQUFHSCxZQUFZLEdBQUFHLEtBQUEsQ0FBWkgsWUFBWTtFQUFBLE9BQVFBLFlBQVksR0FBRyxZQUFZLEdBQUcsVUFBVTtBQUFBLENBQUMsQ0FHcEY7O0FBRUQ7QUFDQSxPQUFPLElBQU1JLHVCQUF1QixHQUFHM0MsTUFBTSxDQUFDUSxHQUFHLENBQUFDLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEsb0RBSWhEOztBQUVEO0FBQ0EsT0FBTyxJQUFNaUMsbUJBQW1CLEdBQUc1QyxNQUFNLENBQUNRLEdBQUcsQ0FBQUMsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSxzOUNBSWhDLFVBQUFrQyxLQUFBO0VBQUEsSUFBR0MsYUFBYSxHQUFBRCxLQUFBLENBQWJDLGFBQWE7RUFBQSxPQUFRQSxhQUFhLEdBQUcsTUFBTSxHQUFHLEtBQUs7QUFBQSxDQUFDLEVBRTlDLFVBQUFDLEtBQUEsRUFBNEM7RUFBQSxJQUF6Q0QsYUFBYSxHQUFBQyxLQUFBLENBQWJELGFBQWE7SUFBRUUsbUJBQW1CLEdBQUFELEtBQUEsQ0FBbkJDLG1CQUFtQjtFQUN2RCxJQUFJQSxtQkFBbUIsRUFBRSxPQUFPLGFBQWE7RUFDN0MsSUFBSUYsYUFBYSxFQUFFLE9BQU8zQyxjQUFjLENBQUMsRUFBRSxDQUFDO0VBQzVDLE9BQU8sYUFBYTtBQUN0QixDQUFDLEVBSUMsVUFBQThDLEtBQUE7RUFBQSxJQUFHSCxhQUFhLEdBQUFHLEtBQUEsQ0FBYkgsYUFBYTtFQUFBLE9BQ2hCQSxhQUFhLElBQ2I3QyxHQUFHLCtEQUlGO0FBQUEsR0E4QnFCSSxzQkFBc0IsRUE4QjVDLFVBQUE2QyxLQUFBO0VBQUEsSUFBR0osYUFBYSxHQUFBSSxLQUFBLENBQWJKLGFBQWE7RUFBQSxPQUNoQkEsYUFBYSxJQUNiN0MsR0FBRywrUkFlRjtBQUFBLEVBQ0o7QUFFRCxJQUFNa0QsUUFBUSxHQUFHakQsU0FBUyx5SEFTekI7QUFFRCxPQUFPLElBQU1rRCxvQkFBb0IsR0FBR3BELE1BQU0sQ0FBQ3FELE1BQU0sQ0FBQTVDLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEsNFpBa0JsQ3dDLFFBQVEsQ0FNdEI7O0FBRUQ7QUFDQSxPQUFPLElBQU1HLGdCQUFnQixHQUFHdEQsTUFBTSxDQUFDb0MsSUFBSSxDQUFBM0IsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSwyTUFLOUIsVUFBQTRDLE1BQUE7RUFBQSxJQUFHQyxRQUFRLEdBQUFELE1BQUEsQ0FBUkMsUUFBUTtFQUFBLE9BQVFBLFFBQVEsR0FBRyxDQUFDLEdBQUcsQ0FBQztBQUFBLENBQUMsRUFDNUIsVUFBQUMsTUFBQTtFQUFBLElBQUdELFFBQVEsR0FBQUMsTUFBQSxDQUFSRCxRQUFRO0VBQUEsT0FBUUEsUUFBUSxHQUFHLENBQUMsR0FBRyxJQUFJO0FBQUEsQ0FBQyxDQUszRDtBQUVELElBQU1FLFVBQVUsR0FBR3hELFNBQVMsa0dBUzNCO0FBRUQsT0FBTyxJQUFNeUQsYUFBYSxHQUFHM0QsTUFBTSxDQUFDb0MsSUFBSSxDQUFBM0IsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSxtUEFVdkIrQyxVQUFVLENBVTFCIiwiaWdub3JlTGlzdCI6W119
|
|
166
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzdHlsZWQiLCJjc3MiLCJrZXlmcmFtZXMiLCJCTFVFX0lBX0NPTE9SUyIsIkdMT0JBTF9DT0xPUlMiLCJUQVNLX0xJTktfSUNPTl9DU1NfVVJMIiwiZmFkZUluIiwiTWVzc2FnZVdyYXBwZXIiLCJkaXYiLCJ3aXRoQ29uZmlnIiwiZGlzcGxheU5hbWUiLCJjb21wb25lbnRJZCIsIlNDTWVzc2FnZXNPdXRlciIsIl9yZWYiLCIkc2Nyb2xsT25QYXJlbnQiLCJTQ01lc3NhZ2VzU2Nyb2xsIiwiU0NNZXNzYWdlc0lubmVyIiwiX3JlZjIiLCIkc2tpcEVudGVyIiwiX3JlZjMiLCJTQ1R1cm5TcGFjZXIiLCJtZXNzYWdlc0VkZ2VHcmFkaWVudCIsIl9yZWY0IiwiJHNob3ciLCJTQ01lc3NhZ2VzR3JhZGllbnRUb3AiLCJTQ01lc3NhZ2VzR3JhZGllbnRCb3R0b20iLCJTQ0xvYWRpbmdNZXNzYWdlc0NvbHVtbiIsIlNDT3B0aW9uc0xpc3QiLCJTQ09wdGlvbkl0ZW0iLCJkYXJrIiwiX3JlZjUiLCIkaGFzU2VsZWN0aW9uIiwiX3JlZjYiLCIkZGltbWVkIiwiU0NUYXNrTGluayIsImEiLCJTQ1Byb2plY3RMaW5rIiwiU0NQcm9qZWN0TGlua0ljb24iLCJzcGFuIiwiU0NNZXNzYWdlSXRlbVdyYXBwZXIiLCJfcmVmNyIsIiRpc0Fzc2lzdGFudCIsIlNDTWVzc2FnZUl0ZW1Jbm5lciIsIlNDQXR0YWNobWVudHNSb3ciLCJfcmVmOCIsIlNDQXBwcm92YWxBY3Rpb25zQ29sdW1uIiwiU0NDQUlNZXNzYWdlV3JhcHBlciIsIl9yZWY5IiwiaXNDdXJyZW50VXNlciIsIl9yZWYwIiwiaXNGcm9udGVuZENhbmNlbGxlZCIsIl9yZWYxIiwiX3JlZjEwIiwiZmFkZUluVXAiLCJTY3JvbGxUb0JvdHRvbUJ1dHRvbiIsImJ1dHRvbiIsIlNDU2Nyb2xsSWNvblN3YXAiLCJfcmVmMTEiLCIkdmlzaWJsZSIsIl9yZWYxMiIsIndyaXRpbmdEb3QiLCJTQ1dyaXRpbmdEb3RzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbW9sZWN1bGVzL0NoYXRBSU1lc3NhZ2VzL25ld1N0eWxlcy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvaW5kZW50ICovXG5pbXBvcnQgc3R5bGVkLCB7IGNzcywga2V5ZnJhbWVzIH0gZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMnXG5pbXBvcnQgeyBCTFVFX0lBX0NPTE9SUywgR0xPQkFMX0NPTE9SUyB9IGZyb20gJy4uLy4uLy4uL3N0eWxlcy9jb25maWcnXG5pbXBvcnQgeyBUQVNLX0xJTktfSUNPTl9DU1NfVVJMIH0gZnJvbSAnLi4vLi4vLi4vY29uc3RhbnRzL3Rhc2tMaW5rSWNvbidcblxuY29uc3QgZmFkZUluID0ga2V5ZnJhbWVzYFxuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5gXG5cbmV4cG9ydCBjb25zdCBNZXNzYWdlV3JhcHBlciA9IHN0eWxlZC5kaXZgXG4gIHBhZGRpbmc6IDE2cHg7XG5gXG5cbi8qKiBDb250ZW5lZG9yIGV4dGVyaW9yIGRlbCDDoXJlYSBkZSBtZW5zYWplcy4gQ3VhbmRvIGV4cGFuZGVkLCBubyBoYWNlIHNjcm9sbDsgZWwgc2Nyb2xsIGxvIHRpZW5lIFNDTWVzc2FnZXNTY3JvbGwuICovXG5leHBvcnQgY29uc3QgU0NNZXNzYWdlc091dGVyID0gc3R5bGVkLmRpdjx7ICRzY3JvbGxPblBhcmVudD86IGJvb2xlYW4gfT5gXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZ3JvdzogMTtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMDtcbiAgJHsoeyAkc2Nyb2xsT25QYXJlbnQgfSkgPT4gKCRzY3JvbGxPblBhcmVudCA/ICcnIDogJ292ZXJmbG93OiBhdXRvOyBvdmVyc2Nyb2xsLWJlaGF2aW9yLXk6IGNvbnRhaW47Jyl9XG5gXG5cbi8qKiBDdWFuZG8gZXhwYW5kZWQsIGVzdGUgY29udGVuZWRvciBoYWNlIHNjcm9sbCBwYXJhIHF1ZSBlbCBib3TDs24gXCJpciBhbCBmaW5hbFwiIHF1ZWRlIGZpam8gZW4gZWwgw6FyZWEgZGVsIGNoYXQgKi9cbmV4cG9ydCBjb25zdCBTQ01lc3NhZ2VzU2Nyb2xsID0gc3R5bGVkLmRpdmBcbiAgZmxleDogMTtcbiAgbWluLWhlaWdodDogMDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgb3ZlcnNjcm9sbC1iZWhhdmlvci15OiBjb250YWluO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbmBcblxuLyoqIENvbnRlbmVkb3IgaW50ZXJpb3IgZGUgbWVuc2FqZXMgKG1heFdpZHRoIDg2NHB4KS4gQ3VhbmRvIGV4cGFuZGVkLCBvdmVyZmxvdyB2aXNpYmxlIHBhcmEgcXVlIHNjcm9sbCBsbyB0ZW5nYSBTQ01lc3NhZ2VzU2Nyb2xsICovXG5leHBvcnQgY29uc3QgU0NNZXNzYWdlc0lubmVyID0gc3R5bGVkLmRpdjx7ICRzY3JvbGxPblBhcmVudD86IGJvb2xlYW47ICRza2lwRW50ZXI/OiBib29sZWFuIH0+YFxuICBmbGV4LWdyb3c6IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMjRweDtcbiAgcGFkZGluZzogMCAxNnB4O1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiA4NjRweDtcbiAgJHsoeyAkc2tpcEVudGVyIH0pID0+XG4gICAgISRza2lwRW50ZXIgJiZcbiAgICBjc3NgXG4gICAgICBhbmltYXRpb246ICR7ZmFkZUlufSAwLjVzIGVhc2Utb3V0O1xuICAgIGB9XG4gICR7KHsgJHNjcm9sbE9uUGFyZW50IH0pID0+XG4gICAgJHNjcm9sbE9uUGFyZW50ID8gJ292ZXJmbG93OiB2aXNpYmxlOycgOiAnb3ZlcmZsb3cteTogYXV0bzsgb3ZlcnNjcm9sbC1iZWhhdmlvci15OiBjb250YWluOyd9XG5cbiAgLyogQ29sY2jDs24gZGUgc2Nyb2xsIGFsIGZpbmFsIHBhcmEgcXVlIGVsIMO6bHRpbW8gbWVuc2FqZSBubyBxdWVkZSBwZWdhZG8gYWxcbiAgICAgaW5wdXQuIFZhIGNvbW8gZmxleCBpdGVtIChubyBwYWRkaW5nKSBwb3JxdWUgY3VhbmRvIGVzdGUgY29udGVuZWRvciBlcyBlbFxuICAgICBzY3JvbGxlciBlbCBwYWRkaW5nLWJvdHRvbSBubyBzZSByZXNwZXRhIGFsIGZpbmFsIGRlbCBzY3JvbGwuXG4gICAgIEVsIG1hcmdpbiBuZWdhdGl2byBjYW5jZWxhIGVsIGdhcCBkZWwgbGlzdGFkby4gKi9cbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGhlaWdodDogNDBweDtcbiAgICBtYXJnaW4tdG9wOiAtMjRweDtcbiAgfVxuYFxuXG5leHBvcnQgY29uc3QgU0NUdXJuU3BhY2VyID0gc3R5bGVkLmRpdmBcbiAgaGVpZ2h0OiAwO1xuICBmbGV4LXNocmluazogMDtcbiAgbWFyZ2luLXRvcDogLTI0cHg7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuYFxuXG4vKiogRGlmdW1pbmFkbyBlbiBsb3MgYm9yZGVzIGRlbCDDoXJlYSBzY3JvbGxlYWJsZTogaW5kaWNhIHF1ZSBoYXkgY29udGVuaWRvIGZ1ZXJhIGRlIHZpc3RhLiAqL1xuY29uc3QgbWVzc2FnZXNFZGdlR3JhZGllbnQgPSBjc3M8eyAkc2hvdzogYm9vbGVhbiB9PmBcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiA0OHB4O1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiA4NjRweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAvKiBEZWJham8gZGVsIFNjcm9sbFRvQm90dG9tQnV0dG9uICh6LWluZGV4IDEwKS4gKi9cbiAgei1pbmRleDogNTtcbiAgb3BhY2l0eTogJHsoeyAkc2hvdyB9KSA9PiAoJHNob3cgPyAxIDogMCl9O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZS1pbi1vdXQ7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ01lc3NhZ2VzR3JhZGllbnRUb3AgPSBzdHlsZWQuZGl2PHsgJHNob3c6IGJvb2xlYW4gfT5gXG4gICR7bWVzc2FnZXNFZGdlR3JhZGllbnR9XG4gIHRvcDogMDtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxuICAgIHRvIGJvdHRvbSxcbiAgICAjZmZmZmZmIDAlLFxuICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KSAzMCUsXG4gICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIDcwJSxcbiAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCVcbiAgKTtcbmBcblxuZXhwb3J0IGNvbnN0IFNDTWVzc2FnZXNHcmFkaWVudEJvdHRvbSA9IHN0eWxlZC5kaXY8eyAkc2hvdzogYm9vbGVhbiB9PmBcbiAgJHttZXNzYWdlc0VkZ2VHcmFkaWVudH1cbiAgYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXG4gICAgdG8gdG9wLFxuICAgICNmZmZmZmYgMCUsXG4gICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpIDMwJSxcbiAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgNzAlLFxuICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJVxuICApO1xuYFxuXG4vKiogQ29sdW1uYSBwYXJhIGxvYWRpbmcvbG9hZGluZyBtZXNzYWdlcyAqL1xuZXhwb3J0IGNvbnN0IFNDTG9hZGluZ01lc3NhZ2VzQ29sdW1uID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgLyogU0NNZXNzYWdlc0lubmVyIHVzYSBnYXAgMjRweDsgZWwgbmVnYXRpdm8gbG8gY2FuY2VsYWJhIHkgZWwgaW5kaWNhZG9yXG4gICAgIHF1ZWRhYmEgcGVnYWRvIGFsIGJ1YmJsZSBkZWwgdXN1YXJpby4gRGVqYW1vcyAxNnB4IGRlIGFpcmUuICovXG4gIG1hcmdpbi10b3A6IC04cHg7XG5gXG5cbi8qKiBMaXN0YSBkZSBvcGNpb25lcyAoTWVzc2FnZU9wdGlvbnMpICovXG5leHBvcnQgY29uc3QgU0NPcHRpb25zTGlzdCA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMTJweDtcbmBcblxuZXhwb3J0IGNvbnN0IFNDT3B0aW9uSXRlbSA9IHN0eWxlZC5kaXY8eyAkaGFzU2VsZWN0aW9uPzogYm9vbGVhbjsgJGRpbW1lZD86IGJvb2xlYW4gfT5gXG4gIGNvbG9yOiAke0dMT0JBTF9DT0xPUlMuZGFya307XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDE0MCU7XG4gIGN1cnNvcjogJHsoeyAkaGFzU2VsZWN0aW9uIH0pID0+ICgkaGFzU2VsZWN0aW9uID8gJ25vdC1hbGxvd2VkJyA6ICdwb2ludGVyJyl9O1xuICBvcGFjaXR5OiAkeyh7ICRkaW1tZWQgfSkgPT4gKCRkaW1tZWQgPyAwLjUgOiAxKX07XG5gXG5cbi8qKiBFbmxhY2UgZGUgdGFyZWEgKHRhc2sgbGluaykgKi9cbmV4cG9ydCBjb25zdCBTQ1Rhc2tMaW5rID0gc3R5bGVkLmFgXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMzM3YWI3ICFpbXBvcnRhbnQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbmBcblxuLyoqIEVubGFjZSBkZSBwcm95ZWN0byAocHJvamVjdCBsaW5rKSAqL1xuZXhwb3J0IGNvbnN0IFNDUHJvamVjdExpbmsgPSBzdHlsZWQuYWBcbiAgY3Vyc29yOiBwb2ludGVyO1xuYFxuXG5leHBvcnQgY29uc3QgU0NQcm9qZWN0TGlua0ljb24gPSBzdHlsZWQuc3BhbmBcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmbGV4LXNocmluazogMDtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiA0cHg7XG5gXG5cbi8qKiBXcmFwcGVyIGRlIHVuIG1lbnNhamUgKHBvc2ljacOzbiwgZmxleCwgZ2FwKSAqL1xuZXhwb3J0IGNvbnN0IFNDTWVzc2FnZUl0ZW1XcmFwcGVyID0gc3R5bGVkLmRpdjx7ICRpc0Fzc2lzdGFudD86IGJvb2xlYW4gfT5gXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiA4cHg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICR7KHsgJGlzQXNzaXN0YW50IH0pID0+ICRpc0Fzc2lzdGFudCAmJiAnanVzdGlmeS1jb250ZW50OiBzdGFydDsnfVxuYFxuXG4vKiogQ29udGVuZWRvciBpbnRlcmlvciBkZWwgbWVuc2FqZSAoYXR0YWNobWVudHMgKyBhcHByb3ZhbCArIGNvbnRlbnQpICovXG5leHBvcnQgY29uc3QgU0NNZXNzYWdlSXRlbUlubmVyID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiA4cHg7XG4gIG1pbi13aWR0aDogMDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuYFxuXG4vKiogRmlsYSBkZSBhdHRhY2htZW50cyAoZmxleCBlbmQgcGFyYSB1c3VhcmlvLCBmbGV4IHN0YXJ0IHBhcmEgYXNzaXN0YW50KSAqL1xuZXhwb3J0IGNvbnN0IFNDQXR0YWNobWVudHNSb3cgPSBzdHlsZWQuZGl2PHsgJGlzQXNzaXN0YW50PzogYm9vbGVhbiB9PmBcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiAkeyh7ICRpc0Fzc2lzdGFudCB9KSA9PiAoJGlzQXNzaXN0YW50ID8gJ2ZsZXgtc3RhcnQnIDogJ2ZsZXgtZW5kJyl9O1xuICBnYXA6IDEycHg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbmBcblxuLyoqIENvbHVtbmEgZGUgYWNjaW9uZXMgZGUgYXBwcm92YWwgKi9cbmV4cG9ydCBjb25zdCBTQ0FwcHJvdmFsQWN0aW9uc0NvbHVtbiA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMTJweDtcbmBcblxuLyoqIFdyYXBwZXIgZGVsIGNvbnRlbmlkbyBkZWwgbWVuc2FqZS4gY29udGFpbiBsaW1pdGEgcmVwYWludCBkdXJhbnRlIHN0cmVhbWluZyBhbCDDoXJlYSBkZWwgdGV4dG8uICovXG5leHBvcnQgY29uc3QgU0NDQUlNZXNzYWdlV3JhcHBlciA9IHN0eWxlZC5kaXY8eyBpc0N1cnJlbnRVc2VyOiBib29sZWFuOyBpc0Zyb250ZW5kQ2FuY2VsbGVkPzogYm9vbGVhbiB9PmBcbiAgY29udGFpbjogbGF5b3V0IHN0eWxlO1xuICBtaW4td2lkdGg6IDA7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJHsoeyBpc0N1cnJlbnRVc2VyIH0pID0+IChpc0N1cnJlbnRVc2VyID8gJzEycHgnIDogJzBweCcpfTtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkeyh7IGlzQ3VycmVudFVzZXIsIGlzRnJvbnRlbmRDYW5jZWxsZWQgfSkgPT4ge1xuICAgIGlmIChpc0Zyb250ZW5kQ2FuY2VsbGVkKSByZXR1cm4gJ3RyYW5zcGFyZW50J1xuICAgIGlmIChpc0N1cnJlbnRVc2VyKSByZXR1cm4gQkxVRV9JQV9DT0xPUlNbNTBdXG4gICAgcmV0dXJuICd0cmFuc3BhcmVudCdcbiAgfX07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMTZweDtcbiAgJHsoeyBpc0N1cnJlbnRVc2VyIH0pID0+XG4gICAgaXNDdXJyZW50VXNlciAmJlxuICAgIGNzc2BcbiAgICAgIG92ZXJmbG93LXdyYXA6IGFueXdoZXJlO1xuICAgICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gICAgICBtYXgtd2lkdGg6IDc1JTtcbiAgICBgfVxuXG4gICYuaGFzLXRhc2stbGlua3MgYVtkYXRhLWNvci1saW5rPSd0YXNrJ10ge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjMjAyMDIwICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDYwMCAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAycHggMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogMjJweCAhaW1wb3J0YW50O1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWwgIWltcG9ydGFudDtcbiAgICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkICFpbXBvcnRhbnQ7XG4gICAgd29yZC1icmVhazogYnJlYWstd29yZCAhaW1wb3J0YW50O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb24tbGluZTogdW5kZXJsaW5lICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6ICNiM2IzYjMgIWltcG9ydGFudDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IDFweCAhaW1wb3J0YW50O1xuICAgICAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAycHggIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQ6ICNiZWQ1ZWIgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6ICR7VEFTS19MSU5LX0lDT05fQ1NTX1VSTH07XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIH1cbiAgfVxuXG4gICYuaGFzLXByb2plY3QtbGlua3MgYVtkYXRhLWNvci1saW5rPSdwcm9qZWN0J10ge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjMjAyMDIwICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDYwMCAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG4gICAgZ2FwOiAycHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAycHggMCAhaW1wb3J0YW50O1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWwgIWltcG9ydGFudDtcbiAgICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkICFpbXBvcnRhbnQ7XG4gICAgd29yZC1icmVhazogYnJlYWstd29yZCAhaW1wb3J0YW50O1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZSAhaW1wb3J0YW50O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb24tbGluZTogdW5kZXJsaW5lICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6ICNiM2IzYjMgIWltcG9ydGFudDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IDFweCAhaW1wb3J0YW50O1xuICAgICAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAycHggIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQ6ICNiZWQ1ZWIgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gICR7KHsgaXNDdXJyZW50VXNlciB9KSA9PlxuICAgIGlzQ3VycmVudFVzZXIgJiZcbiAgICBjc3NgXG4gICAgICAmLmhhcy10YXNrLWxpbmtzIGFbZGF0YS1jb3ItbGluaz0ndGFzayddIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgICYuaGFzLXRhc2stbGlua3MgYVtkYXRhLWNvci1saW5rPSd0YXNrJ106OmJlZm9yZSB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgdG9wOiBjYWxjKCgxbGggLSAyMHB4KSAvIDIpO1xuICAgICAgfVxuXG4gICAgICAmLmhhcy1wcm9qZWN0LWxpbmtzIGFbZGF0YS1jb3ItbGluaz0ncHJvamVjdCddIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgYH1cbmBcblxuY29uc3QgZmFkZUluVXAgPSBrZXlmcmFtZXNgXG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoMTBweCk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoMCk7XG4gIH1cbmBcblxuZXhwb3J0IGNvbnN0IFNjcm9sbFRvQm90dG9tQnV0dG9uID0gc3R5bGVkLmJ1dHRvbmBcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMTBweDtcbiAgYXNwZWN0LXJhdGlvOiAxLzE7XG4gIGJvcmRlci1yYWRpdXM6IDIxLjVweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2Q5ZDlkOTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm94LXNoYWRvdzogMCA0cHggNHB4IDAgcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDE1cHg7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHotaW5kZXg6IDEwO1xuICBhbmltYXRpb246ICR7ZmFkZUluVXB9IDAuM3MgZWFzZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjNzIGVhc2U7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICB9XG5gXG5cbi8qIExvcyBkb3MgaWNvbm9zIHNlIHN1cGVycG9uZW4gcGFyYSBwb2RlciBjcnV6YXJsb3M7IGVsIGJvdMOzbiB5YSBlcyBgcG9zaXRpb246IGFic29sdXRlYC4gKi9cbmV4cG9ydCBjb25zdCBTQ1Njcm9sbEljb25Td2FwID0gc3R5bGVkLnNwYW48eyAkdmlzaWJsZTogYm9vbGVhbiB9PmBcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG9wYWNpdHk6ICR7KHsgJHZpc2libGUgfSkgPT4gKCR2aXNpYmxlID8gMSA6IDApfTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgkeyh7ICR2aXNpYmxlIH0pID0+ICgkdmlzaWJsZSA/IDEgOiAwLjcyKX0pO1xuICB0cmFuc2l0aW9uOlxuICAgIG9wYWNpdHkgMTgwbXMgZWFzZS1vdXQsXG4gICAgdHJhbnNmb3JtIDE4MG1zIGVhc2Utb3V0O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbmBcblxuY29uc3Qgd3JpdGluZ0RvdCA9IGtleWZyYW1lc2BcbiAgMCUsIDYwJSwgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDAuMzU7XG4gIH1cbiAgMzAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTNweCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuYFxuXG5leHBvcnQgY29uc3QgU0NXcml0aW5nRG90cyA9IHN0eWxlZC5zcGFuYFxuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAzcHg7XG5cbiAgc3BhbiB7XG4gICAgd2lkdGg6IDRweDtcbiAgICBoZWlnaHQ6IDRweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZDogIzIwMjAyMDtcbiAgICBhbmltYXRpb246ICR7d3JpdGluZ0RvdH0gMS4ycyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbiAgfVxuXG4gIHNwYW46bnRoLWNoaWxkKDIpIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuMTZzO1xuICB9XG5cbiAgc3BhbjpudGgtY2hpbGQoMykge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMC4zMnM7XG4gIH1cbmBcbiJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQSxPQUFPQSxNQUFNLElBQUlDLEdBQUcsRUFBRUMsU0FBUyxRQUFRLG1CQUFtQjtBQUMxRCxTQUFTQyxjQUFjLEVBQUVDLGFBQWEsUUFBUSx3QkFBd0I7QUFDdEUsU0FBU0Msc0JBQXNCLFFBQVEsaUNBQWlDO0FBRXhFLElBQU1DLE1BQU0sR0FBR0osU0FBUyxvQ0FPdkI7QUFFRCxPQUFPLElBQU1LLGNBQWMsR0FBR1AsTUFBTSxDQUFDUSxHQUFHLENBQUFDLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEscUJBRXZDOztBQUVEO0FBQ0EsT0FBTyxJQUFNQyxlQUFlLEdBQUdaLE1BQU0sQ0FBQ1EsR0FBRyxDQUFBQyxVQUFBO0VB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
|
|
@@ -1,13 +1,149 @@
|
|
|
1
1
|
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
|
2
2
|
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
3
|
+
import { canAccessToChatAI, canAccessToSkills } from '../../../constants/permissions';
|
|
4
|
+
import { validateIsMaia } from '../../../services/utils/validateIsMaia';
|
|
5
|
+
import { isMarketplaceGlobalCloneAgent } from '../../../utils/agentDisplayName';
|
|
6
|
+
import { isValidMaiaPanelOption } from '../../../store/maiaPanelSessionPersistence';
|
|
7
|
+
import { isActiveSessionStatus } from '../../../store/sessions/sessions.types';
|
|
8
|
+
import { options } from './constants';
|
|
9
|
+
export var LEGACY_CONTEXT_ENTITIES = ['project', 'task', 'client'];
|
|
10
|
+
export var isLegacyContextEntity = function isLegacyContextEntity(entity) {
|
|
11
|
+
return Boolean(entity && LEGACY_CONTEXT_ENTITIES.includes(entity));
|
|
12
|
+
};
|
|
13
|
+
export var resolveLegacyContextSession = function resolveLegacyContextSession(computedCurrentOption, chatOption, sessionMeta) {
|
|
14
|
+
if (computedCurrentOption !== chatOption || !sessionMeta || sessionMeta.agentType !== 'clone') {
|
|
15
|
+
return null;
|
|
16
|
+
}
|
|
17
|
+
var entity = sessionMeta.agentEntity;
|
|
18
|
+
if (!isLegacyContextEntity(entity)) return null;
|
|
19
|
+
var contextName;
|
|
20
|
+
if (entity === 'task') {
|
|
21
|
+
contextName = sessionMeta.taskName;
|
|
22
|
+
} else if (entity === 'project') {
|
|
23
|
+
contextName = sessionMeta.projectName;
|
|
24
|
+
} else {
|
|
25
|
+
contextName = sessionMeta.clientName;
|
|
26
|
+
}
|
|
27
|
+
return {
|
|
28
|
+
entityType: entity,
|
|
29
|
+
contextName: contextName || ''
|
|
30
|
+
};
|
|
31
|
+
};
|
|
32
|
+
export var hasAnyActiveSessionInMeta = function hasAnyActiveSessionInMeta(meta) {
|
|
33
|
+
return Object.values(meta).some(function (entry) {
|
|
34
|
+
return isActiveSessionStatus(entry === null || entry === void 0 ? void 0 : entry.status);
|
|
35
|
+
});
|
|
36
|
+
};
|
|
37
|
+
export var isGlobalMaiaSection = function isGlobalMaiaSection(section) {
|
|
38
|
+
return section === 'header';
|
|
39
|
+
};
|
|
40
|
+
export var resolveAiChatBackDestination = function resolveAiChatBackDestination(section, agentType, currentOption, homeOption) {
|
|
41
|
+
if (isGlobalMaiaSection(section) && agentType === 'orchestrator' && currentOption === homeOption) {
|
|
42
|
+
return 'global_context_home';
|
|
43
|
+
}
|
|
44
|
+
if (section === 'task') return 'task_home';
|
|
45
|
+
if (section === 'planner') return 'planner_home';
|
|
46
|
+
if (section === 'project') return 'project_home';
|
|
47
|
+
if (section === 'client') return 'client_home';
|
|
48
|
+
return 'global_context_home';
|
|
49
|
+
};
|
|
50
|
+
export var validateAccessByFeature = function validateAccessByFeature(section, user) {
|
|
51
|
+
if (!section || !canAccessToChatAI(user)) {
|
|
52
|
+
return false;
|
|
53
|
+
}
|
|
54
|
+
if (section === 'planner' || section === 'task') {
|
|
55
|
+
return true;
|
|
56
|
+
}
|
|
57
|
+
if (section === 'header') {
|
|
58
|
+
return Boolean(window.MAIA_CHAT_AI_FEATURE_ACCESS || window.MAIA_CHAT_AI_FEATURE_ACCESS_MULTI_AGENTS);
|
|
59
|
+
}
|
|
60
|
+
return Boolean(window.MAIA_CHAT_AI_FEATURE_ACCESS);
|
|
61
|
+
};
|
|
62
|
+
export var resolveComputedCurrentOption = function resolveComputedCurrentOption(_ref) {
|
|
63
|
+
var currentOption = _ref.currentOption,
|
|
64
|
+
agent = _ref.agent,
|
|
65
|
+
project = _ref.project,
|
|
66
|
+
client = _ref.client,
|
|
67
|
+
user = _ref.user,
|
|
68
|
+
multiAgentsAccess = _ref.multiAgentsAccess;
|
|
69
|
+
var isMAIA = validateIsMaia(agent);
|
|
70
|
+
var isGlobalSpecialist = isMAIA && (agent === null || agent === void 0 ? void 0 : agent.entity) === 'global';
|
|
71
|
+
var isProjectSpecialist = isMAIA && ((agent === null || agent === void 0 ? void 0 : agent.entity) === 'project' || (agent === null || agent === void 0 ? void 0 : agent.entity) == null);
|
|
72
|
+
var isClientSpecialist = isMAIA && (agent === null || agent === void 0 ? void 0 : agent.entity) === 'client';
|
|
73
|
+
var isMaiaker = isMarketplaceGlobalCloneAgent(agent);
|
|
74
|
+
if (currentOption === options.myAgents && multiAgentsAccess) {
|
|
75
|
+
return options.myAgents;
|
|
76
|
+
}
|
|
77
|
+
if (currentOption === options.mySkills && canAccessToSkills(user)) {
|
|
78
|
+
return options.mySkills;
|
|
79
|
+
}
|
|
80
|
+
if (isGlobalSpecialist && !isMaiaker && (agent === null || agent === void 0 ? void 0 : agent.type) !== 'orchestrator' && currentOption === options.home) {
|
|
81
|
+
return options.chat;
|
|
82
|
+
}
|
|
83
|
+
var shouldShowProjectSelector = currentOption !== options.chat && isProjectSpecialist && !project;
|
|
84
|
+
var shouldShowClientSelector = currentOption !== options.chat && isClientSpecialist && !client;
|
|
85
|
+
if (shouldShowProjectSelector) {
|
|
86
|
+
return options.projectSelector;
|
|
87
|
+
}
|
|
88
|
+
if (shouldShowClientSelector) {
|
|
89
|
+
return options.clientSelector;
|
|
90
|
+
}
|
|
91
|
+
return currentOption;
|
|
92
|
+
};
|
|
93
|
+
export var resolveSidebarAgentsNavActive = function resolveSidebarAgentsNavActive(computedCurrentOption, isMaiakerAgentSelected) {
|
|
94
|
+
if (computedCurrentOption === options.mySkills) return 'mySkills';
|
|
95
|
+
if (computedCurrentOption === options.myAgents) return 'myAgents';
|
|
96
|
+
if (isMaiakerAgentSelected) return 'maiaker';
|
|
97
|
+
return null;
|
|
98
|
+
};
|
|
99
|
+
export var resolveInitialCurrentOption = function resolveInitialCurrentOption(savedAgentsNavActive, savedCurrentOption, user) {
|
|
100
|
+
if (savedAgentsNavActive === 'myAgents') return options.myAgents;
|
|
101
|
+
if (savedAgentsNavActive === 'mySkills' && canAccessToSkills(user)) return options.mySkills;
|
|
102
|
+
if (savedCurrentOption && isValidMaiaPanelOption(savedCurrentOption)) {
|
|
103
|
+
return savedCurrentOption;
|
|
104
|
+
}
|
|
105
|
+
return options.home;
|
|
106
|
+
};
|
|
107
|
+
export var shouldRestoreExpandedPanel = function shouldRestoreExpandedPanel(savedSession) {
|
|
108
|
+
var _savedSession$isExpan;
|
|
109
|
+
return (_savedSession$isExpan = savedSession === null || savedSession === void 0 ? void 0 : savedSession.isExpanded) !== null && _savedSession$isExpan !== void 0 ? _savedSession$isExpan : false;
|
|
110
|
+
};
|
|
111
|
+
export var resolveDefaultFloatingPanelPosition = function resolveDefaultFloatingPanelPosition(viewportWidth, panelWidth) {
|
|
112
|
+
var padding = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 16;
|
|
113
|
+
return {
|
|
114
|
+
x: viewportWidth - panelWidth - padding,
|
|
115
|
+
y: padding
|
|
116
|
+
};
|
|
117
|
+
};
|
|
118
|
+
export var isBannerFaqReadyToAutoSend = function isBannerFaqReadyToAutoSend(params) {
|
|
119
|
+
var _params$faqTitle;
|
|
120
|
+
if (!((_params$faqTitle = params.faqTitle) !== null && _params$faqTitle !== void 0 && _params$faqTitle.trim()) || params.alreadySent || params.loading || !params.agentId) {
|
|
121
|
+
return false;
|
|
122
|
+
}
|
|
123
|
+
if (params.section === 'project') return Boolean(params.projectId);
|
|
124
|
+
if (params.section === 'client') return Boolean(params.clientId);
|
|
125
|
+
return true;
|
|
126
|
+
};
|
|
127
|
+
export var shouldSkipFloatingDragTarget = function shouldSkipFloatingDragTarget(target) {
|
|
128
|
+
return Boolean(target === null || target === void 0 ? void 0 : target.closest('button, a, input, textarea, select, [role="button"], [data-no-drag="true"]'));
|
|
129
|
+
};
|
|
130
|
+
export var clampFloatingPanelPosition = function clampFloatingPanelPosition(x, y, panelWidth, panelHeight, viewportWidth, viewportHeight) {
|
|
131
|
+
var offset = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : 16;
|
|
132
|
+
var maxX = Math.max(offset, viewportWidth - panelWidth - offset);
|
|
133
|
+
var maxY = Math.max(offset, viewportHeight - panelHeight - offset);
|
|
134
|
+
return {
|
|
135
|
+
x: Math.min(Math.max(x, offset), maxX),
|
|
136
|
+
y: Math.min(Math.max(y, offset), maxY)
|
|
137
|
+
};
|
|
138
|
+
};
|
|
3
139
|
/** Garantiza que la lista de agentes esté disponible antes de abrir un chat con una skill. */
|
|
4
140
|
export var ensureAgentsBeforeSkillUse = /*#__PURE__*/function () {
|
|
5
|
-
var
|
|
141
|
+
var _ref3 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref2) {
|
|
6
142
|
var useFirstAgent, agents, ensureAgentsLoaded, loadedAgents, _t;
|
|
7
143
|
return _regeneratorRuntime.wrap(function (_context) {
|
|
8
144
|
while (1) switch (_context.prev = _context.next) {
|
|
9
145
|
case 0:
|
|
10
|
-
useFirstAgent =
|
|
146
|
+
useFirstAgent = _ref2.useFirstAgent, agents = _ref2.agents, ensureAgentsLoaded = _ref2.ensureAgentsLoaded;
|
|
11
147
|
if (useFirstAgent) {
|
|
12
148
|
_context.next = 1;
|
|
13
149
|
break;
|
|
@@ -36,9 +172,16 @@ export var ensureAgentsBeforeSkillUse = /*#__PURE__*/function () {
|
|
|
36
172
|
}, _callee);
|
|
37
173
|
}));
|
|
38
174
|
return function ensureAgentsBeforeSkillUse(_x) {
|
|
39
|
-
return
|
|
175
|
+
return _ref3.apply(this, arguments);
|
|
40
176
|
};
|
|
41
177
|
}();
|
|
178
|
+
/** Visibilidad del panel host cuando la página /maia del sidebar está activa. */
|
|
179
|
+
export var getMaiaHostPanelPresentation = function getMaiaHostPanelPresentation(isMinimized, isMaiaPageRoute) {
|
|
180
|
+
return {
|
|
181
|
+
hidePanelContent: isMinimized || isMaiaPageRoute,
|
|
182
|
+
showMinimizedPill: isMinimized && !isMaiaPageRoute
|
|
183
|
+
};
|
|
184
|
+
};
|
|
42
185
|
|
|
43
186
|
/** Inserta la mención de skill cuando el input del chat ya está montado. */
|
|
44
187
|
export var dispatchSkillMentionInsert = function dispatchSkillMentionInsert(skill) {
|
|
@@ -53,4 +196,4 @@ export var dispatchSkillMentionInsert = function dispatchSkillMentionInsert(skil
|
|
|
53
196
|
});
|
|
54
197
|
});
|
|
55
198
|
};
|
|
56
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJlbnN1cmVBZ2VudHNCZWZvcmVTa2lsbFVzZSIsIl9yZWYyIiwiX2FzeW5jVG9HZW5lcmF0b3IiLCJfcmVnZW5lcmF0b3JSdW50aW1lIiwibWFyayIsIl9jYWxsZWUiLCJfcmVmIiwidXNlRmlyc3RBZ2VudCIsImFnZW50cyIsImVuc3VyZUFnZW50c0xvYWRlZCIsImxvYWRlZEFnZW50cyIsIl90Iiwid3JhcCIsIl9jb250ZXh0IiwicHJldiIsIm5leHQiLCJhYnJ1cHQiLCJ1bmRlZmluZWQiLCJsZW5ndGgiLCJzZW50Iiwic3RvcCIsIl94IiwiYXBwbHkiLCJhcmd1bWVudHMiLCJkaXNwYXRjaFNraWxsTWVudGlvbkluc2VydCIsInNraWxsIiwicmVxdWVzdEFuaW1hdGlvbkZyYW1lIiwiZG9jdW1lbnQiLCJkaXNwYXRjaEV2ZW50IiwiQ3VzdG9tRXZlbnQiLCJkZXRhaWwiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9tb2xlY3VsZXMvQ2hhdEFJTW9kYWwvQ2hhdEFJTW9kYWwuaGVscGVycy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZ2VudCB9IGZyb20gJy4uLy4uLy4uL3R5cGVzL2FnZW50J1xuXG5leHBvcnQgdHlwZSBFbnN1cmVBZ2VudHNCZWZvcmVTa2lsbFVzZVBhcmFtcyA9IHtcbiAgdXNlRmlyc3RBZ2VudDogYm9vbGVhblxuICBhZ2VudHM6IEFnZW50W11cbiAgZW5zdXJlQWdlbnRzTG9hZGVkOiAoKSA9PiBQcm9taXNlPEFnZW50W10+XG59XG5cbi8qKiBHYXJhbnRpemEgcXVlIGxhIGxpc3RhIGRlIGFnZW50ZXMgZXN0w6kgZGlzcG9uaWJsZSBhbnRlcyBkZSBhYnJpciB1biBjaGF0IGNvbiB1bmEgc2tpbGwuICovXG5leHBvcnQgY29uc3QgZW5zdXJlQWdlbnRzQmVmb3JlU2tpbGxVc2UgPSBhc3luYyAoe1xuICB1c2VGaXJzdEFnZW50LFxuICBhZ2VudHMsXG4gIGVuc3VyZUFnZW50c0xvYWRlZCxcbn06IEVuc3VyZUFnZW50c0JlZm9yZVNraWxsVXNlUGFyYW1zKTogUHJvbWlzZTxBZ2VudCB8IHVuZGVmaW5lZD4gPT4ge1xuICBpZiAoIXVzZUZpcnN0QWdlbnQpIHJldHVybiB1bmRlZmluZWRcblxuICBjb25zdCBsb2FkZWRBZ2VudHMgPSBhZ2VudHMubGVuZ3RoID4gMCA/IGFnZW50cyA6IGF3YWl0IGVuc3VyZUFnZW50c0xvYWRlZCgpXG4gIHJldHVybiBsb2FkZWRBZ2VudHNbMF1cbn1cblxuLyoqIEluc2VydGEgbGEgbWVuY2nDs24gZGUgc2tpbGwgY3VhbmRvIGVsIGlucHV0IGRlbCBjaGF0IHlhIGVzdMOhIG1vbnRhZG8uICovXG5leHBvcnQgY29uc3QgZGlzcGF0Y2hTa2lsbE1lbnRpb25JbnNlcnQgPSAoc2tpbGw6IHsgaWQ6IHN0cmluZzsgbmFtZTogc3RyaW5nIH0pOiB2b2lkID0+IHtcbiAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgZG9jdW1lbnQuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoJ21haWEtaW5zZXJ0LXNraWxsLW1lbnRpb24nLCB7IGRldGFpbDogeyBza2lsbCB9IH0pKVxuICAgICAgZG9jdW1lbnQuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoJ21haWEtaW5wdXQtcmVmb2N1cycpKVxuICAgIH0pXG4gIH0pXG59XG4iXSwibWFwcGluZ3MiOiI7O0FBUUE7QUFDQSxPQUFPLElBQU1BLDBCQUEwQjtFQUFBLElBQUFDLEtBQUEsR0FBQUMsaUJBQUEsY0FBQUMsbUJBQUEsQ0FBQUMsSUFBQSxDQUFHLFNBQUFDLFFBQUFDLElBQUE7SUFBQSxJQUFBQyxhQUFBLEVBQUFDLE1BQUEsRUFBQUMsa0JBQUEsRUFBQUMsWUFBQSxFQUFBQyxFQUFBO0lBQUEsT0FBQVIsbUJBQUEsQ0FBQVMsSUFBQSxXQUFBQyxRQUFBO01BQUEsa0JBQUFBLFFBQUEsQ0FBQUMsSUFBQSxHQUFBRCxRQUFBLENBQUFFLElBQUE7UUFBQTtVQUN4Q1IsYUFBYSxHQUFBRCxJQUFBLENBQWJDLGFBQWEsRUFDYkMsTUFBTSxHQUFBRixJQUFBLENBQU5FLE1BQU0sRUFDTkMsa0JBQWtCLEdBQUFILElBQUEsQ0FBbEJHLGtCQUFrQjtVQUFBLElBRWJGLGFBQWE7WUFBQU0sUUFBQSxDQUFBRSxJQUFBO1lBQUE7VUFBQTtVQUFBLE9BQUFGLFFBQUEsQ0FBQUcsTUFBQSxXQUFTQyxTQUFTO1FBQUE7VUFBQSxNQUVmVCxNQUFNLENBQUNVLE1BQU0sR0FBRyxDQUFDO1lBQUFMLFFBQUEsQ0FBQUUsSUFBQTtZQUFBO1VBQUE7VUFBQUosRUFBQSxHQUFHSCxNQUFNO1VBQUFLLFFBQUEsQ0FBQUUsSUFBQTtVQUFBO1FBQUE7VUFBQUYsUUFBQSxDQUFBRSxJQUFBO1VBQUEsT0FBU04sa0JBQWtCLENBQUMsQ0FBQztRQUFBO1VBQUFFLEVBQUEsR0FBQUUsUUFBQSxDQUFBTSxJQUFBO1FBQUE7VUFBdEVULFlBQVksR0FBQUMsRUFBQTtVQUFBLE9BQUFFLFFBQUEsQ0FBQUcsTUFBQSxXQUNYTixZQUFZLENBQUMsQ0FBQyxDQUFDO1FBQUE7UUFBQTtVQUFBLE9BQUFHLFFBQUEsQ0FBQU8sSUFBQTtNQUFBO0lBQUEsR0FBQWYsT0FBQTtFQUFBLENBQ3ZCO0VBQUEsZ0JBVFlMLDBCQUEwQkEsQ0FBQXFCLEVBQUE7SUFBQSxPQUFBcEIsS0FBQSxDQUFBcUIsS0FBQSxPQUFBQyxTQUFBO0VBQUE7QUFBQSxHQVN0Qzs7QUFFRDtBQUNBLE9BQU8sSUFBTUMsMEJBQTBCLEdBQUcsU0FBN0JBLDBCQUEwQkEsQ0FBSUMsS0FBbUMsRUFBVztFQUN2RkMscUJBQXFCLENBQUMsWUFBTTtJQUMxQkEscUJBQXFCLENBQUMsWUFBTTtNQUMxQkMsUUFBUSxDQUFDQyxhQUFhLENBQUMsSUFBSUMsV0FBVyxDQUFDLDJCQUEyQixFQUFFO1FBQUVDLE1BQU0sRUFBRTtVQUFFTCxLQUFLLEVBQUxBO1FBQU07TUFBRSxDQUFDLENBQUMsQ0FBQztNQUMzRkUsUUFBUSxDQUFDQyxhQUFhLENBQUMsSUFBSUMsV0FBVyxDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDL0QsQ0FBQyxDQUFDO0VBQ0osQ0FBQyxDQUFDO0FBQ0osQ0FBQyIsImlnbm9yZUxpc3QiOltdfQ==
|
|
199
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjYW5BY2Nlc3NUb0NoYXRBSSIsImNhbkFjY2Vzc1RvU2tpbGxzIiwidmFsaWRhdGVJc01haWEiLCJpc01hcmtldHBsYWNlR2xvYmFsQ2xvbmVBZ2VudCIsImlzVmFsaWRNYWlhUGFuZWxPcHRpb24iLCJpc0FjdGl2ZVNlc3Npb25TdGF0dXMiLCJvcHRpb25zIiwiTEVHQUNZX0NPTlRFWFRfRU5USVRJRVMiLCJpc0xlZ2FjeUNvbnRleHRFbnRpdHkiLCJlbnRpdHkiLCJCb29sZWFuIiwiaW5jbHVkZXMiLCJyZXNvbHZlTGVnYWN5Q29udGV4dFNlc3Npb24iLCJjb21wdXRlZEN1cnJlbnRPcHRpb24iLCJjaGF0T3B0aW9uIiwic2Vzc2lvbk1ldGEiLCJhZ2VudFR5cGUiLCJhZ2VudEVudGl0eSIsImNvbnRleHROYW1lIiwidGFza05hbWUiLCJwcm9qZWN0TmFtZSIsImNsaWVudE5hbWUiLCJlbnRpdHlUeXBlIiwiaGFzQW55QWN0aXZlU2Vzc2lvbkluTWV0YSIsIm1ldGEiLCJPYmplY3QiLCJ2YWx1ZXMiLCJzb21lIiwiZW50cnkiLCJzdGF0dXMiLCJpc0dsb2JhbE1haWFTZWN0aW9uIiwic2VjdGlvbiIsInJlc29sdmVBaUNoYXRCYWNrRGVzdGluYXRpb24iLCJjdXJyZW50T3B0aW9uIiwiaG9tZU9wdGlvbiIsInZhbGlkYXRlQWNjZXNzQnlGZWF0dXJlIiwidXNlciIsIndpbmRvdyIsIk1BSUFfQ0hBVF9BSV9GRUFUVVJFX0FDQ0VTUyIsIk1BSUFfQ0hBVF9BSV9GRUFUVVJFX0FDQ0VTU19NVUxUSV9BR0VOVFMiLCJyZXNvbHZlQ29tcHV0ZWRDdXJyZW50T3B0aW9uIiwiX3JlZiIsImFnZW50IiwicHJvamVjdCIsImNsaWVudCIsIm11bHRpQWdlbnRzQWNjZXNzIiwiaXNNQUlBIiwiaXNHbG9iYWxTcGVjaWFsaXN0IiwiaXNQcm9qZWN0U3BlY2lhbGlzdCIsImlzQ2xpZW50U3BlY2lhbGlzdCIsImlzTWFpYWtlciIsIm15QWdlbnRzIiwibXlTa2lsbHMiLCJ0eXBlIiwiaG9tZSIsImNoYXQiLCJzaG91bGRTaG93UHJvamVjdFNlbGVjdG9yIiwic2hvdWxkU2hvd0NsaWVudFNlbGVjdG9yIiwicHJvamVjdFNlbGVjdG9yIiwiY2xpZW50U2VsZWN0b3IiLCJyZXNvbHZlU2lkZWJhckFnZW50c05hdkFjdGl2ZSIsImlzTWFpYWtlckFnZW50U2VsZWN0ZWQiLCJyZXNvbHZlSW5pdGlhbEN1cnJlbnRPcHRpb24iLCJzYXZlZEFnZW50c05hdkFjdGl2ZSIsInNhdmVkQ3VycmVudE9wdGlvbiIsInNob3VsZFJlc3RvcmVFeHBhbmRlZFBhbmVsIiwic2F2ZWRTZXNzaW9uIiwiX3NhdmVkU2Vzc2lvbiRpc0V4cGFuIiwiaXNFeHBhbmRlZCIsInJlc29sdmVEZWZhdWx0RmxvYXRpbmdQYW5lbFBvc2l0aW9uIiwidmlld3BvcnRXaWR0aCIsInBhbmVsV2lkdGgiLCJwYWRkaW5nIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwidW5kZWZpbmVkIiwieCIsInkiLCJpc0Jhbm5lckZhcVJlYWR5VG9BdXRvU2VuZCIsInBhcmFtcyIsIl9wYXJhbXMkZmFxVGl0bGUiLCJmYXFUaXRsZSIsInRyaW0iLCJhbHJlYWR5U2VudCIsImxvYWRpbmciLCJhZ2VudElkIiwicHJvamVjdElkIiwiY2xpZW50SWQiLCJzaG91bGRTa2lwRmxvYXRpbmdEcmFnVGFyZ2V0IiwidGFyZ2V0IiwiY2xvc2VzdCIsImNsYW1wRmxvYXRpbmdQYW5lbFBvc2l0aW9uIiwicGFuZWxIZWlnaHQiLCJ2aWV3cG9ydEhlaWdodCIsIm9mZnNldCIsIm1heFgiLCJNYXRoIiwibWF4IiwibWF4WSIsIm1pbiIsImVuc3VyZUFnZW50c0JlZm9yZVNraWxsVXNlIiwiX3JlZjMiLCJfYXN5bmNUb0dlbmVyYXRvciIsIl9yZWdlbmVyYXRvclJ1bnRpbWUiLCJtYXJrIiwiX2NhbGxlZSIsIl9yZWYyIiwidXNlRmlyc3RBZ2VudCIsImFnZW50cyIsImVuc3VyZUFnZW50c0xvYWRlZCIsImxvYWRlZEFnZW50cyIsIl90Iiwid3JhcCIsIl9jb250ZXh0IiwicHJldiIsIm5leHQiLCJhYnJ1cHQiLCJzZW50Iiwic3RvcCIsIl94IiwiYXBwbHkiLCJnZXRNYWlhSG9zdFBhbmVsUHJlc2VudGF0aW9uIiwiaXNNaW5pbWl6ZWQiLCJpc01haWFQYWdlUm91dGUiLCJoaWRlUGFuZWxDb250ZW50Iiwic2hvd01pbmltaXplZFBpbGwiLCJkaXNwYXRjaFNraWxsTWVudGlvbkluc2VydCIsInNraWxsIiwicmVxdWVzdEFuaW1hdGlvbkZyYW1lIiwiZG9jdW1lbnQiLCJkaXNwYXRjaEV2ZW50IiwiQ3VzdG9tRXZlbnQiLCJkZXRhaWwiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9tb2xlY3VsZXMvQ2hhdEFJTW9kYWwvQ2hhdEFJTW9kYWwuaGVscGVycy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IENPUlVzZXIgfSBmcm9tICcuLi8uLi8uLi9jb250ZXh0L2Nvci11c2VyJ1xuaW1wb3J0IHR5cGUgeyBTZWN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vY29udGV4dC9nbG9iYWwtY29udGV4dCdcbmltcG9ydCB7IGNhbkFjY2Vzc1RvQ2hhdEFJLCBjYW5BY2Nlc3NUb1NraWxscyB9IGZyb20gJy4uLy4uLy4uL2NvbnN0YW50cy9wZXJtaXNzaW9ucydcbmltcG9ydCB7IHZhbGlkYXRlSXNNYWlhIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvdXRpbHMvdmFsaWRhdGVJc01haWEnXG5pbXBvcnQgdHlwZSB7IEFnZW50IH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMvYWdlbnQnXG5pbXBvcnQgdHlwZSB7IENsaWVudCB9IGZyb20gJy4uLy4uLy4uL3R5cGVzL0NsaWVudCdcbmltcG9ydCB0eXBlIHsgUHJvamVjdCB9IGZyb20gJy4uLy4uLy4uL3R5cGVzL1Byb2plY3QnXG5pbXBvcnQgeyBpc01hcmtldHBsYWNlR2xvYmFsQ2xvbmVBZ2VudCB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL2FnZW50RGlzcGxheU5hbWUnXG5pbXBvcnQgeyBpc1ZhbGlkTWFpYVBhbmVsT3B0aW9uIH0gZnJvbSAnLi4vLi4vLi4vc3RvcmUvbWFpYVBhbmVsU2Vzc2lvblBlcnNpc3RlbmNlJ1xuaW1wb3J0IHR5cGUgeyBNYWlhQWdlbnRzTmF2QWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vc3RvcmUvbWFpYVBhbmVsU2Vzc2lvblBlcnNpc3RlbmNlJ1xuaW1wb3J0IHsgaXNBY3RpdmVTZXNzaW9uU3RhdHVzLCB0eXBlIFNlc3Npb25TdGF0dXMgfSBmcm9tICcuLi8uLi8uLi9zdG9yZS9zZXNzaW9ucy9zZXNzaW9ucy50eXBlcydcbmltcG9ydCB7IG9wdGlvbnMgfSBmcm9tICcuL2NvbnN0YW50cydcblxuZXhwb3J0IGNvbnN0IExFR0FDWV9DT05URVhUX0VOVElUSUVTID0gWydwcm9qZWN0JywgJ3Rhc2snLCAnY2xpZW50J10gYXMgY29uc3RcbmV4cG9ydCB0eXBlIExlZ2FjeUNvbnRleHRFbnRpdHkgPSAodHlwZW9mIExFR0FDWV9DT05URVhUX0VOVElUSUVTKVtudW1iZXJdXG5cbmV4cG9ydCB0eXBlIExlZ2FjeVNlc3Npb25NZXRhID0ge1xuICBhZ2VudFR5cGU/OiBzdHJpbmdcbiAgYWdlbnRFbnRpdHk/OiBzdHJpbmdcbiAgdGFza05hbWU/OiBzdHJpbmdcbiAgcHJvamVjdE5hbWU/OiBzdHJpbmdcbiAgY2xpZW50TmFtZT86IHN0cmluZ1xufVxuXG5leHBvcnQgY29uc3QgaXNMZWdhY3lDb250ZXh0RW50aXR5ID0gKGVudGl0eTogc3RyaW5nIHwgdW5kZWZpbmVkKTogZW50aXR5IGlzIExlZ2FjeUNvbnRleHRFbnRpdHkgPT5cbiAgQm9vbGVhbihlbnRpdHkgJiYgTEVHQUNZX0NPTlRFWFRfRU5USVRJRVMuaW5jbHVkZXMoZW50aXR5IGFzIExlZ2FjeUNvbnRleHRFbnRpdHkpKVxuXG5leHBvcnQgY29uc3QgcmVzb2x2ZUxlZ2FjeUNvbnRleHRTZXNzaW9uID0gKFxuICBjb21wdXRlZEN1cnJlbnRPcHRpb246IG9wdGlvbnMsXG4gIGNoYXRPcHRpb246IG9wdGlvbnMsXG4gIHNlc3Npb25NZXRhOiBMZWdhY3lTZXNzaW9uTWV0YSB8IG51bGwgfCB1bmRlZmluZWRcbik6IHsgZW50aXR5VHlwZTogTGVnYWN5Q29udGV4dEVudGl0eTsgY29udGV4dE5hbWU6IHN0cmluZyB9IHwgbnVsbCA9PiB7XG4gIGlmIChjb21wdXRlZEN1cnJlbnRPcHRpb24gIT09IGNoYXRPcHRpb24gfHwgIXNlc3Npb25NZXRhIHx8IHNlc3Npb25NZXRhLmFnZW50VHlwZSAhPT0gJ2Nsb25lJykge1xuICAgIHJldHVybiBudWxsXG4gIH1cblxuICBjb25zdCBlbnRpdHkgPSBzZXNzaW9uTWV0YS5hZ2VudEVudGl0eVxuICBpZiAoIWlzTGVnYWN5Q29udGV4dEVudGl0eShlbnRpdHkpKSByZXR1cm4gbnVsbFxuXG4gIGxldCBjb250ZXh0TmFtZTogc3RyaW5nIHwgdW5kZWZpbmVkXG4gIGlmIChlbnRpdHkgPT09ICd0YXNrJykge1xuICAgIGNvbnRleHROYW1lID0gc2Vzc2lvbk1ldGEudGFza05hbWVcbiAgfSBlbHNlIGlmIChlbnRpdHkgPT09ICdwcm9qZWN0Jykge1xuICAgIGNvbnRleHROYW1lID0gc2Vzc2lvbk1ldGEucHJvamVjdE5hbWVcbiAgfSBlbHNlIHtcbiAgICBjb250ZXh0TmFtZSA9IHNlc3Npb25NZXRhLmNsaWVudE5hbWVcbiAgfVxuXG4gIHJldHVybiB7IGVudGl0eVR5cGU6IGVudGl0eSwgY29udGV4dE5hbWU6IGNvbnRleHROYW1lIHx8ICcnIH1cbn1cblxuZXhwb3J0IGNvbnN0IGhhc0FueUFjdGl2ZVNlc3Npb25Jbk1ldGEgPSAobWV0YTogUmVjb3JkPHN0cmluZywgeyBzdGF0dXM/OiBTZXNzaW9uU3RhdHVzIH0gfCB1bmRlZmluZWQ+KTogYm9vbGVhbiA9PlxuICBPYmplY3QudmFsdWVzKG1ldGEpLnNvbWUoZW50cnkgPT4gaXNBY3RpdmVTZXNzaW9uU3RhdHVzKGVudHJ5Py5zdGF0dXMpKVxuXG5leHBvcnQgdHlwZSBBaUNoYXRCYWNrRGVzdGluYXRpb24gPVxuICAnZ2xvYmFsX2NvbnRleHRfaG9tZScgfCAndGFza19ob21lJyB8ICdwbGFubmVyX2hvbWUnIHwgJ3Byb2plY3RfaG9tZScgfCAnY2xpZW50X2hvbWUnXG5cbmV4cG9ydCBjb25zdCBpc0dsb2JhbE1haWFTZWN0aW9uID0gKHNlY3Rpb246IFNlY3Rpb24pOiBib29sZWFuID0+IHNlY3Rpb24gPT09ICdoZWFkZXInXG5cbmV4cG9ydCBjb25zdCByZXNvbHZlQWlDaGF0QmFja0Rlc3RpbmF0aW9uID0gKFxuICBzZWN0aW9uOiBTZWN0aW9uLFxuICBhZ2VudFR5cGU6IEFnZW50Wyd0eXBlJ10gfCB1bmRlZmluZWQsXG4gIGN1cnJlbnRPcHRpb246IHN0cmluZyxcbiAgaG9tZU9wdGlvbjogc3RyaW5nXG4pOiBBaUNoYXRCYWNrRGVzdGluYXRpb24gPT4ge1xuICBpZiAoaXNHbG9iYWxNYWlhU2VjdGlvbihzZWN0aW9uKSAmJiBhZ2VudFR5cGUgPT09ICdvcmNoZXN0cmF0b3InICYmIGN1cnJlbnRPcHRpb24gPT09IGhvbWVPcHRpb24pIHtcbiAgICByZXR1cm4gJ2dsb2JhbF9jb250ZXh0X2hvbWUnXG4gIH1cbiAgaWYgKHNlY3Rpb24gPT09ICd0YXNrJykgcmV0dXJuICd0YXNrX2hvbWUnXG4gIGlmIChzZWN0aW9uID09PSAncGxhbm5lcicpIHJldHVybiAncGxhbm5lcl9ob21lJ1xuICBpZiAoc2VjdGlvbiA9PT0gJ3Byb2plY3QnKSByZXR1cm4gJ3Byb2plY3RfaG9tZSdcbiAgaWYgKHNlY3Rpb24gPT09ICdjbGllbnQnKSByZXR1cm4gJ2NsaWVudF9ob21lJ1xuICByZXR1cm4gJ2dsb2JhbF9jb250ZXh0X2hvbWUnXG59XG5cbmV4cG9ydCBjb25zdCB2YWxpZGF0ZUFjY2Vzc0J5RmVhdHVyZSA9IChzZWN0aW9uOiBTZWN0aW9uIHwgbnVsbCB8IHVuZGVmaW5lZCwgdXNlcjogQ09SVXNlcik6IGJvb2xlYW4gPT4ge1xuICBpZiAoIXNlY3Rpb24gfHwgIWNhbkFjY2Vzc1RvQ2hhdEFJKHVzZXIpKSB7XG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cblxuICBpZiAoc2VjdGlvbiA9PT0gJ3BsYW5uZXInIHx8IHNlY3Rpb24gPT09ICd0YXNrJykge1xuICAgIHJldHVybiB0cnVlXG4gIH1cblxuICBpZiAoc2VjdGlvbiA9PT0gJ2hlYWRlcicpIHtcbiAgICByZXR1cm4gQm9vbGVhbih3aW5kb3cuTUFJQV9DSEFUX0FJX0ZFQVRVUkVfQUNDRVNTIHx8IHdpbmRvdy5NQUlBX0NIQVRfQUlfRkVBVFVSRV9BQ0NFU1NfTVVMVElfQUdFTlRTKVxuICB9XG5cbiAgcmV0dXJuIEJvb2xlYW4od2luZG93Lk1BSUFfQ0hBVF9BSV9GRUFUVVJFX0FDQ0VTUylcbn1cblxuZXhwb3J0IHR5cGUgUmVzb2x2ZUNvbXB1dGVkQ3VycmVudE9wdGlvblBhcmFtcyA9IHtcbiAgY3VycmVudE9wdGlvbjogb3B0aW9uc1xuICBhZ2VudDogQWdlbnQgfCBudWxsIHwgdW5kZWZpbmVkXG4gIHByb2plY3Q6IFByb2plY3QgfCBudWxsIHwgdW5kZWZpbmVkXG4gIGNsaWVudDogQ2xpZW50IHwgbnVsbCB8IHVuZGVmaW5lZFxuICB1c2VyOiBDT1JVc2VyXG4gIG11bHRpQWdlbnRzQWNjZXNzOiBib29sZWFuXG59XG5cbmV4cG9ydCBjb25zdCByZXNvbHZlQ29tcHV0ZWRDdXJyZW50T3B0aW9uID0gKHtcbiAgY3VycmVudE9wdGlvbixcbiAgYWdlbnQsXG4gIHByb2plY3QsXG4gIGNsaWVudCxcbiAgdXNlcixcbiAgbXVsdGlBZ2VudHNBY2Nlc3MsXG59OiBSZXNvbHZlQ29tcHV0ZWRDdXJyZW50T3B0aW9uUGFyYW1zKTogb3B0aW9ucyA9PiB7XG4gIGNvbnN0IGlzTUFJQSA9IHZhbGlkYXRlSXNNYWlhKGFnZW50IGFzIEFnZW50KVxuICBjb25zdCBpc0dsb2JhbFNwZWNpYWxpc3QgPSBpc01BSUEgJiYgYWdlbnQ/LmVudGl0eSA9PT0gJ2dsb2JhbCdcbiAgY29uc3QgaXNQcm9qZWN0U3BlY2lhbGlzdCA9IGlzTUFJQSAmJiAoYWdlbnQ/LmVudGl0eSA9PT0gJ3Byb2plY3QnIHx8IGFnZW50Py5lbnRpdHkgPT0gbnVsbClcbiAgY29uc3QgaXNDbGllbnRTcGVjaWFsaXN0ID0gaXNNQUlBICYmIGFnZW50Py5lbnRpdHkgPT09ICdjbGllbnQnXG4gIGNvbnN0IGlzTWFpYWtlciA9IGlzTWFya2V0cGxhY2VHbG9iYWxDbG9uZUFnZW50KGFnZW50KVxuXG4gIGlmIChjdXJyZW50T3B0aW9uID09PSBvcHRpb25zLm15QWdlbnRzICYmIG11bHRpQWdlbnRzQWNjZXNzKSB7XG4gICAgcmV0dXJuIG9wdGlvbnMubXlBZ2VudHNcbiAgfVxuXG4gIGlmIChjdXJyZW50T3B0aW9uID09PSBvcHRpb25zLm15U2tpbGxzICYmIGNhbkFjY2Vzc1RvU2tpbGxzKHVzZXIpKSB7XG4gICAgcmV0dXJuIG9wdGlvbnMubXlTa2lsbHNcbiAgfVxuXG4gIGlmIChpc0dsb2JhbFNwZWNpYWxpc3QgJiYgIWlzTWFpYWtlciAmJiBhZ2VudD8udHlwZSAhPT0gJ29yY2hlc3RyYXRvcicgJiYgY3VycmVudE9wdGlvbiA9PT0gb3B0aW9ucy5ob21lKSB7XG4gICAgcmV0dXJuIG9wdGlvbnMuY2hhdFxuICB9XG5cbiAgY29uc3Qgc2hvdWxkU2hvd1Byb2plY3RTZWxlY3RvciA9IGN1cnJlbnRPcHRpb24gIT09IG9wdGlvbnMuY2hhdCAmJiBpc1Byb2plY3RTcGVjaWFsaXN0ICYmICFwcm9qZWN0XG4gIGNvbnN0IHNob3VsZFNob3dDbGllbnRTZWxlY3RvciA9IGN1cnJlbnRPcHRpb24gIT09IG9wdGlvbnMuY2hhdCAmJiBpc0NsaWVudFNwZWNpYWxpc3QgJiYgIWNsaWVudFxuXG4gIGlmIChzaG91bGRTaG93UHJvamVjdFNlbGVjdG9yKSB7XG4gICAgcmV0dXJuIG9wdGlvbnMucHJvamVjdFNlbGVjdG9yXG4gIH1cbiAgaWYgKHNob3VsZFNob3dDbGllbnRTZWxlY3Rvcikge1xuICAgIHJldHVybiBvcHRpb25zLmNsaWVudFNlbGVjdG9yXG4gIH1cblxuICByZXR1cm4gY3VycmVudE9wdGlvblxufVxuXG5leHBvcnQgY29uc3QgcmVzb2x2ZVNpZGViYXJBZ2VudHNOYXZBY3RpdmUgPSAoXG4gIGNvbXB1dGVkQ3VycmVudE9wdGlvbjogb3B0aW9ucyxcbiAgaXNNYWlha2VyQWdlbnRTZWxlY3RlZDogYm9vbGVhblxuKTogTWFpYUFnZW50c05hdkFjdGl2ZSB8IG51bGwgPT4ge1xuICBpZiAoY29tcHV0ZWRDdXJyZW50T3B0aW9uID09PSBvcHRpb25zLm15U2tpbGxzKSByZXR1cm4gJ215U2tpbGxzJ1xuICBpZiAoY29tcHV0ZWRDdXJyZW50T3B0aW9uID09PSBvcHRpb25zLm15QWdlbnRzKSByZXR1cm4gJ215QWdlbnRzJ1xuICBpZiAoaXNNYWlha2VyQWdlbnRTZWxlY3RlZCkgcmV0dXJuICdtYWlha2VyJ1xuICByZXR1cm4gbnVsbFxufVxuXG5leHBvcnQgY29uc3QgcmVzb2x2ZUluaXRpYWxDdXJyZW50T3B0aW9uID0gKFxuICBzYXZlZEFnZW50c05hdkFjdGl2ZTogTWFpYUFnZW50c05hdkFjdGl2ZSB8IG51bGwgfCB1bmRlZmluZWQsXG4gIHNhdmVkQ3VycmVudE9wdGlvbjogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCxcbiAgdXNlcjogQ09SVXNlclxuKTogb3B0aW9ucyA9PiB7XG4gIGlmIChzYXZlZEFnZW50c05hdkFjdGl2ZSA9PT0gJ215QWdlbnRzJykgcmV0dXJuIG9wdGlvbnMubXlBZ2VudHNcbiAgaWYgKHNhdmVkQWdlbnRzTmF2QWN0aXZlID09PSAnbXlTa2lsbHMnICYmIGNhbkFjY2Vzc1RvU2tpbGxzKHVzZXIpKSByZXR1cm4gb3B0aW9ucy5teVNraWxsc1xuICBpZiAoc2F2ZWRDdXJyZW50T3B0aW9uICYmIGlzVmFsaWRNYWlhUGFuZWxPcHRpb24oc2F2ZWRDdXJyZW50T3B0aW9uKSkge1xuICAgIHJldHVybiBzYXZlZEN1cnJlbnRPcHRpb24gYXMgb3B0aW9uc1xuICB9XG4gIHJldHVybiBvcHRpb25zLmhvbWVcbn1cblxuZXhwb3J0IGNvbnN0IHNob3VsZFJlc3RvcmVFeHBhbmRlZFBhbmVsID0gKHNhdmVkU2Vzc2lvbjogeyBpc0V4cGFuZGVkPzogYm9vbGVhbiB9IHwgbnVsbCB8IHVuZGVmaW5lZCk6IGJvb2xlYW4gPT5cbiAgc2F2ZWRTZXNzaW9uPy5pc0V4cGFuZGVkID8/IGZhbHNlXG5cbmV4cG9ydCBjb25zdCByZXNvbHZlRGVmYXVsdEZsb2F0aW5nUGFuZWxQb3NpdGlvbiA9IChcbiAgdmlld3BvcnRXaWR0aDogbnVtYmVyLFxuICBwYW5lbFdpZHRoOiBudW1iZXIsXG4gIHBhZGRpbmcgPSAxNlxuKTogeyB4OiBudW1iZXI7IHk6IG51bWJlciB9ID0+ICh7XG4gIHg6IHZpZXdwb3J0V2lkdGggLSBwYW5lbFdpZHRoIC0gcGFkZGluZyxcbiAgeTogcGFkZGluZyxcbn0pXG5cbmV4cG9ydCBjb25zdCBpc0Jhbm5lckZhcVJlYWR5VG9BdXRvU2VuZCA9IChwYXJhbXM6IHtcbiAgZmFxVGl0bGU/OiBzdHJpbmcgfCBudWxsXG4gIGFscmVhZHlTZW50OiBib29sZWFuXG4gIGxvYWRpbmc6IGJvb2xlYW5cbiAgYWdlbnRJZD86IHN0cmluZyB8IG51bGxcbiAgc2VjdGlvbjogU2VjdGlvblxuICBwcm9qZWN0SWQ/OiBzdHJpbmcgfCBudW1iZXIgfCBudWxsXG4gIGNsaWVudElkPzogc3RyaW5nIHwgbnVtYmVyIHwgbnVsbFxufSk6IGJvb2xlYW4gPT4ge1xuICBpZiAoIXBhcmFtcy5mYXFUaXRsZT8udHJpbSgpIHx8IHBhcmFtcy5hbHJlYWR5U2VudCB8fCBwYXJhbXMubG9hZGluZyB8fCAhcGFyYW1zLmFnZW50SWQpIHtcbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuXG4gIGlmIChwYXJhbXMuc2VjdGlvbiA9PT0gJ3Byb2plY3QnKSByZXR1cm4gQm9vbGVhbihwYXJhbXMucHJvamVjdElkKVxuICBpZiAocGFyYW1zLnNlY3Rpb24gPT09ICdjbGllbnQnKSByZXR1cm4gQm9vbGVhbihwYXJhbXMuY2xpZW50SWQpXG4gIHJldHVybiB0cnVlXG59XG5cbmV4cG9ydCBjb25zdCBzaG91bGRTa2lwRmxvYXRpbmdEcmFnVGFyZ2V0ID0gKHRhcmdldDogRWxlbWVudCB8IG51bGwpOiBib29sZWFuID0+XG4gIEJvb2xlYW4odGFyZ2V0Py5jbG9zZXN0KCdidXR0b24sIGEsIGlucHV0LCB0ZXh0YXJlYSwgc2VsZWN0LCBbcm9sZT1cImJ1dHRvblwiXSwgW2RhdGEtbm8tZHJhZz1cInRydWVcIl0nKSlcblxuZXhwb3J0IGNvbnN0IGNsYW1wRmxvYXRpbmdQYW5lbFBvc2l0aW9uID0gKFxuICB4OiBudW1iZXIsXG4gIHk6IG51bWJlcixcbiAgcGFuZWxXaWR0aDogbnVtYmVyLFxuICBwYW5lbEhlaWdodDogbnVtYmVyLFxuICB2aWV3cG9ydFdpZHRoOiBudW1iZXIsXG4gIHZpZXdwb3J0SGVpZ2h0OiBudW1iZXIsXG4gIG9mZnNldCA9IDE2XG4pOiB7IHg6IG51bWJlcjsgeTogbnVtYmVyIH0gPT4ge1xuICBjb25zdCBtYXhYID0gTWF0aC5tYXgob2Zmc2V0LCB2aWV3cG9ydFdpZHRoIC0gcGFuZWxXaWR0aCAtIG9mZnNldClcbiAgY29uc3QgbWF4WSA9IE1hdGgubWF4KG9mZnNldCwgdmlld3BvcnRIZWlnaHQgLSBwYW5lbEhlaWdodCAtIG9mZnNldClcblxuICByZXR1cm4ge1xuICAgIHg6IE1hdGgubWluKE1hdGgubWF4KHgsIG9mZnNldCksIG1heFgpLFxuICAgIHk6IE1hdGgubWluKE1hdGgubWF4KHksIG9mZnNldCksIG1heFkpLFxuICB9XG59XG5cbmV4cG9ydCB0eXBlIEVuc3VyZUFnZW50c0JlZm9yZVNraWxsVXNlUGFyYW1zID0ge1xuICB1c2VGaXJzdEFnZW50OiBib29sZWFuXG4gIGFnZW50czogQWdlbnRbXVxuICBlbnN1cmVBZ2VudHNMb2FkZWQ6ICgpID0+IFByb21pc2U8QWdlbnRbXT5cbn1cblxuLyoqIEdhcmFudGl6YSBxdWUgbGEgbGlzdGEgZGUgYWdlbnRlcyBlc3TDqSBkaXNwb25pYmxlIGFudGVzIGRlIGFicmlyIHVuIGNoYXQgY29uIHVuYSBza2lsbC4gKi9cbmV4cG9ydCBjb25zdCBlbnN1cmVBZ2VudHNCZWZvcmVTa2lsbFVzZSA9IGFzeW5jICh7XG4gIHVzZUZpcnN0QWdlbnQsXG4gIGFnZW50cyxcbiAgZW5zdXJlQWdlbnRzTG9hZGVkLFxufTogRW5zdXJlQWdlbnRzQmVmb3JlU2tpbGxVc2VQYXJhbXMpOiBQcm9taXNlPEFnZW50IHwgdW5kZWZpbmVkPiA9PiB7XG4gIGlmICghdXNlRmlyc3RBZ2VudCkgcmV0dXJuIHVuZGVmaW5lZFxuXG4gIGNvbnN0IGxvYWRlZEFnZW50cyA9IGFnZW50cy5sZW5ndGggPiAwID8gYWdlbnRzIDogYXdhaXQgZW5zdXJlQWdlbnRzTG9hZGVkKClcbiAgcmV0dXJuIGxvYWRlZEFnZW50c1swXVxufVxuXG5leHBvcnQgdHlwZSBNYWlhSG9zdFBhbmVsUHJlc2VudGF0aW9uID0ge1xuICAvKiogT2N1bHRhIGVsIHBhbmVsIGZsb3RhbnRlIGRlbCBob3N0IHNpbiBwZXJzaXN0aXIgbWluaW1pemFkby4gKi9cbiAgaGlkZVBhbmVsQ29udGVudDogYm9vbGVhblxuICBzaG93TWluaW1pemVkUGlsbDogYm9vbGVhblxufVxuXG4vKiogVmlzaWJpbGlkYWQgZGVsIHBhbmVsIGhvc3QgY3VhbmRvIGxhIHDDoWdpbmEgL21haWEgZGVsIHNpZGViYXIgZXN0w6EgYWN0aXZhLiAqL1xuZXhwb3J0IGNvbnN0IGdldE1haWFIb3N0UGFuZWxQcmVzZW50YXRpb24gPSAoXG4gIGlzTWluaW1pemVkOiBib29sZWFuLFxuICBpc01haWFQYWdlUm91dGU6IGJvb2xlYW5cbik6IE1haWFIb3N0UGFuZWxQcmVzZW50YXRpb24gPT4gKHtcbiAgaGlkZVBhbmVsQ29udGVudDogaXNNaW5pbWl6ZWQgfHwgaXNNYWlhUGFnZVJvdXRlLFxuICBzaG93TWluaW1pemVkUGlsbDogaXNNaW5pbWl6ZWQgJiYgIWlzTWFpYVBhZ2VSb3V0ZSxcbn0pXG5cbi8qKiBJbnNlcnRhIGxhIG1lbmNpw7NuIGRlIHNraWxsIGN1YW5kbyBlbCBpbnB1dCBkZWwgY2hhdCB5YSBlc3TDoSBtb250YWRvLiAqL1xuZXhwb3J0IGNvbnN0IGRpc3BhdGNoU2tpbGxNZW50aW9uSW5zZXJ0ID0gKHNraWxsOiB7IGlkOiBzdHJpbmc7IG5hbWU6IHN0cmluZyB9KTogdm9pZCA9PiB7XG4gIHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgIGRvY3VtZW50LmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCdtYWlhLWluc2VydC1za2lsbC1tZW50aW9uJywgeyBkZXRhaWw6IHsgc2tpbGwgfSB9KSlcbiAgICAgIGRvY3VtZW50LmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCdtYWlhLWlucHV0LXJlZm9jdXMnKSlcbiAgICB9KVxuICB9KVxufVxuIl0sIm1hcHBpbmdzIjoiOztBQUVBLFNBQVNBLGlCQUFpQixFQUFFQyxpQkFBaUIsUUFBUSxnQ0FBZ0M7QUFDckYsU0FBU0MsY0FBYyxRQUFRLHdDQUF3QztBQUl2RSxTQUFTQyw2QkFBNkIsUUFBUSxpQ0FBaUM7QUFDL0UsU0FBU0Msc0JBQXNCLFFBQVEsNENBQTRDO0FBRW5GLFNBQVNDLHFCQUFxQixRQUE0Qix3Q0FBd0M7QUFDbEcsU0FBU0MsT0FBTyxRQUFRLGFBQWE7QUFFckMsT0FBTyxJQUFNQyx1QkFBdUIsR0FBRyxDQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsUUFBUSxDQUFVO0FBVzdFLE9BQU8sSUFBTUMscUJBQXFCLEdBQUcsU0FBeEJBLHFCQUFxQkEsQ0FBSUMsTUFBMEI7RUFBQSxPQUM5REMsT0FBTyxDQUFDRCxNQUFNLElBQUlGLHVCQUF1QixDQUFDSSxRQUFRLENBQUNGLE1BQTZCLENBQUMsQ0FBQztBQUFBO0FBRXBGLE9BQU8sSUFBTUcsMkJBQTJCLEdBQUcsU0FBOUJBLDJCQUEyQkEsQ0FDdENDLHFCQUE4QixFQUM5QkMsVUFBbUIsRUFDbkJDLFdBQWlELEVBQ21CO0VBQ3BFLElB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
|