@tilde-nlp/ngx-translate 1.0.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/README.md +2 -0
- package/esm2020/lib/components/shared/extension-dialog/components/index.mjs +2 -0
- package/esm2020/lib/components/shared/extension-dialog/components/open-extension-dialog/open-extension-dialog.component.mjs +24 -0
- package/esm2020/lib/components/shared/extension-dialog/extension-dialog.component.mjs +133 -0
- package/esm2020/lib/components/shared/extension-dialog/extension-dialog.module.mjs +51 -0
- package/esm2020/lib/components/shared/extension-dialog/index.mjs +6 -0
- package/esm2020/lib/components/shared/extension-dialog/models/enums/file-categories.enum.mjs +9 -0
- package/esm2020/lib/components/shared/extension-dialog/models/enums/file-extensions.enum.mjs +35 -0
- package/esm2020/lib/components/shared/extension-dialog/models/enums/file-type-icons.enum.mjs +13 -0
- package/esm2020/lib/components/shared/extension-dialog/models/enums/file-types.enum.mjs +13 -0
- package/esm2020/lib/components/shared/extension-dialog/models/enums/index.mjs +5 -0
- package/esm2020/lib/components/shared/extension-dialog/models/index.mjs +3 -0
- package/esm2020/lib/components/shared/extension-dialog/models/interfaces/config.mjs +2 -0
- package/esm2020/lib/components/shared/extension-dialog/models/interfaces/dialog-data.model.mjs +2 -0
- package/esm2020/lib/components/shared/extension-dialog/models/interfaces/index.mjs +3 -0
- package/esm2020/lib/components/shared/extension-dialog/services/extension-dialog.service.mjs +22 -0
- package/esm2020/lib/components/shared/extension-dialog/services/index.mjs +2 -0
- package/esm2020/lib/components/shared/text-to-speech/index.mjs +3 -0
- package/esm2020/lib/components/shared/text-to-speech/models/text-to-speech-settings.model.mjs +2 -0
- package/esm2020/lib/components/shared/text-to-speech/text-to-speech.component.mjs +62 -0
- package/esm2020/lib/components/shared/text-to-speech/text-to-speech.module.mjs +36 -0
- package/esm2020/lib/components/shared/vendor-disclaimer/vendor-disclaimer.component.mjs +39 -0
- package/esm2020/lib/components/shared/vendor-disclaimer/vendor-disclaimer.module.mjs +28 -0
- package/esm2020/lib/factories/file-api-service.factory.mjs +12 -0
- package/esm2020/lib/factories/system-service.factory.mjs +12 -0
- package/esm2020/lib/factories/text-api-service.factory.mjs +12 -0
- package/esm2020/lib/i18n/available-languages.mjs +19 -0
- package/esm2020/lib/i18n/de.mjs +378 -0
- package/esm2020/lib/i18n/en.mjs +426 -0
- package/esm2020/lib/i18n/et.mjs +378 -0
- package/esm2020/lib/i18n/fi.mjs +383 -0
- package/esm2020/lib/i18n/lt.mjs +378 -0
- package/esm2020/lib/i18n/lv.mjs +391 -0
- package/esm2020/lib/i18n/models/available-languages.model.mjs +2 -0
- package/esm2020/lib/i18n/pl.mjs +378 -0
- package/esm2020/lib/i18n/sv.mjs +242 -0
- package/esm2020/lib/injection-tokens/file-api-service.token.mjs +2 -0
- package/esm2020/lib/injection-tokens/index.mjs +6 -0
- package/esm2020/lib/injection-tokens/system-service.token.mjs +2 -0
- package/esm2020/lib/injection-tokens/text-api-service.token.mjs +2 -0
- package/esm2020/lib/injection-tokens/tld-translate-config.token.mjs +2 -0
- package/esm2020/lib/injection-tokens/translation-api-version.token.mjs +2 -0
- package/esm2020/lib/modules/material.module.mjs +97 -0
- package/esm2020/lib/modules/tld-audio/index.mjs +4 -0
- package/esm2020/lib/modules/tld-audio/models/audio-error-case.model.mjs +13 -0
- package/esm2020/lib/modules/tld-audio/models/dictate-configurationi.model.mjs +2 -0
- package/esm2020/lib/modules/tld-audio/models/index.mjs +3 -0
- package/esm2020/lib/modules/tld-audio/models/transcription-update.model.mjs +2 -0
- package/esm2020/lib/modules/tld-audio/services/audio-record.service.mjs +116 -0
- package/esm2020/lib/modules/tld-audio/services/index.mjs +4 -0
- package/esm2020/lib/modules/tld-audio/services/tld-voice-input-api.service.mjs +48 -0
- package/esm2020/lib/modules/tld-audio/services/tld-voice-input.service.mjs +60 -0
- package/esm2020/lib/modules/tld-audio/tld-audio.module.mjs +41 -0
- package/esm2020/lib/modules/tld-audio/tld-dictate/tld-dictate.component.mjs +151 -0
- package/esm2020/lib/modules/tld-audio/tld-record/tld-record.component.mjs +87 -0
- package/esm2020/lib/modules/tld-common/animations/pulse.animation.mjs +11 -0
- package/esm2020/lib/modules/tld-common/components/index.mjs +10 -0
- package/esm2020/lib/modules/tld-common/components/open-close-button/open-close-button.component.mjs +41 -0
- package/esm2020/lib/modules/tld-common/components/source-and-target-wrapper/source-and-target-wrapper.component.mjs +44 -0
- package/esm2020/lib/modules/tld-common/components/tld-file-upload/tld-file-upload.component.mjs +103 -0
- package/esm2020/lib/modules/tld-common/components/tld-lang-list/tld-lang-list.component.mjs +193 -0
- package/esm2020/lib/modules/tld-common/components/tld-list-menu/tld-list-menu.component.mjs +60 -0
- package/esm2020/lib/modules/tld-common/components/tld-loader/tld-loader.component.mjs +12 -0
- package/esm2020/lib/modules/tld-common/components/tld-message/tld-message.component.mjs +49 -0
- package/esm2020/lib/modules/tld-common/components/tld-translate-achievement/tld-translate-achievement.component.mjs +17 -0
- package/esm2020/lib/modules/tld-common/components/translate-button/tld-translate-button.service.mjs +30 -0
- package/esm2020/lib/modules/tld-common/components/translate-button/translate-button.component.mjs +59 -0
- package/esm2020/lib/modules/tld-common/directives/drag-and-drop.directive.mjs +57 -0
- package/esm2020/lib/modules/tld-common/directives/index.mjs +2 -0
- package/esm2020/lib/modules/tld-common/index.mjs +2 -0
- package/esm2020/lib/modules/tld-common/models/auth-options.model.mjs +2 -0
- package/esm2020/lib/modules/tld-common/models/common.mjs +107 -0
- package/esm2020/lib/modules/tld-common/models/configs/tld-audio-config.model.mjs +2 -0
- package/esm2020/lib/modules/tld-common/models/configs/tld-term-config.model.mjs +2 -0
- package/esm2020/lib/modules/tld-common/models/configs/tld-text-to-speech-config.model.mjs +2 -0
- package/esm2020/lib/modules/tld-common/models/configs/tld-translate-api-v2-config.model.mjs +2 -0
- package/esm2020/lib/modules/tld-common/models/configs/tld-translate-config.model.mjs +2 -0
- package/esm2020/lib/modules/tld-common/models/configs/tld-translate-core-config.model.mjs +2 -0
- package/esm2020/lib/modules/tld-common/models/configs/tld-translate-file-config.model.mjs +2 -0
- package/esm2020/lib/modules/tld-common/models/configs/tld-translate-text-config.model.mjs +2 -0
- package/esm2020/lib/modules/tld-common/models/configs/tld-translate-web-config.model.mjs +2 -0
- package/esm2020/lib/modules/tld-common/models/core/index.mjs +3 -0
- package/esm2020/lib/modules/tld-common/models/core/language-menu-version.enum.mjs +6 -0
- package/esm2020/lib/modules/tld-common/models/core/translation-api-version.model.mjs +6 -0
- package/esm2020/lib/modules/tld-common/models/errors/error-codes.enum.mjs +27 -0
- package/esm2020/lib/modules/tld-common/models/errors/error-codes.type.mjs +2 -0
- package/esm2020/lib/modules/tld-common/models/errors/error.model.mjs +2 -0
- package/esm2020/lib/modules/tld-common/models/file-upload.model.mjs +10 -0
- package/esm2020/lib/modules/tld-common/models/index.mjs +22 -0
- package/esm2020/lib/modules/tld-common/models/lang-list-item.model.mjs +2 -0
- package/esm2020/lib/modules/tld-common/models/language-with-translation.model.mjs +2 -0
- package/esm2020/lib/modules/tld-common/models/message.model.mjs +7 -0
- package/esm2020/lib/modules/tld-common/models/selected-language.model.mjs +2 -0
- package/esm2020/lib/modules/tld-common/models/services/file-api/download-file-params.model.mjs +2 -0
- package/esm2020/lib/modules/tld-common/models/services/file-api/file-api-service.model.mjs +2 -0
- package/esm2020/lib/modules/tld-common/models/services/file-api/file-meta.model.mjs +2 -0
- package/esm2020/lib/modules/tld-common/models/services/file-api/file-translation-substatus.model.mjs +9 -0
- package/esm2020/lib/modules/tld-common/models/services/file-api/get-file-status-params.model.mjs +2 -0
- package/esm2020/lib/modules/tld-common/models/services/file-api/get-file-translation-status-response.model.mjs +2 -0
- package/esm2020/lib/modules/tld-common/models/services/file-api/remove-file-params.model.mjs +2 -0
- package/esm2020/lib/modules/tld-common/models/services/file-api/source-file-preview-response.model.mjs +2 -0
- package/esm2020/lib/modules/tld-common/models/services/file-api/start-file-translation-params.model.mjs +2 -0
- package/esm2020/lib/modules/tld-common/models/services/file-api/translated-document-preview-params.model.mjs +2 -0
- package/esm2020/lib/modules/tld-common/models/services/index.mjs +19 -0
- package/esm2020/lib/modules/tld-common/models/services/system/system.model.mjs +2 -0
- package/esm2020/lib/modules/tld-common/models/services/system/tld-system-api-service.model.mjs +2 -0
- package/esm2020/lib/modules/tld-common/models/services/text-api/check-grammar-response.model.mjs +2 -0
- package/esm2020/lib/modules/tld-common/models/services/text-api/tld-translate-text-api-service.model.mjs +2 -0
- package/esm2020/lib/modules/tld-common/models/services/text-api/translate-paragraph-request-params.model.mjs +2 -0
- package/esm2020/lib/modules/tld-common/models/services/voice-to-text/voice-to-text-job-state.model.mjs +7 -0
- package/esm2020/lib/modules/tld-common/models/services/voice-to-text/voice-to-text-job.model.mjs +2 -0
- package/esm2020/lib/modules/tld-common/models/services/voice-to-text/voice-to-text-start-job-request-params.model.mjs +2 -0
- package/esm2020/lib/modules/tld-common/pipes/index.mjs +2 -0
- package/esm2020/lib/modules/tld-common/pipes/translate-domain.pipe.mjs +27 -0
- package/esm2020/lib/modules/tld-common/services/icon-service/icon.service.mjs +30 -0
- package/esm2020/lib/modules/tld-common/services/icon-service/icons/file-types/excel.icon.mjs +22 -0
- package/esm2020/lib/modules/tld-common/services/icon-service/icons/file-types/index.mjs +10 -0
- package/esm2020/lib/modules/tld-common/services/icon-service/icons/file-types/interchange.icon.mjs +6 -0
- package/esm2020/lib/modules/tld-common/services/icon-service/icons/file-types/office-other.icon.mjs +6 -0
- package/esm2020/lib/modules/tld-common/services/icon-service/icons/file-types/other.icon.mjs +6 -0
- package/esm2020/lib/modules/tld-common/services/icon-service/icons/file-types/pdf.icon.mjs +12 -0
- package/esm2020/lib/modules/tld-common/services/icon-service/icons/file-types/powerpoint.icon.mjs +10 -0
- package/esm2020/lib/modules/tld-common/services/icon-service/icons/file-types/scanned.icon.mjs +6 -0
- package/esm2020/lib/modules/tld-common/services/icon-service/icons/file-types/web.icon.mjs +6 -0
- package/esm2020/lib/modules/tld-common/services/icon-service/icons/file-types/word.icon.mjs +11 -0
- package/esm2020/lib/modules/tld-common/services/icon-service/icons.mjs +52 -0
- package/esm2020/lib/modules/tld-common/services/index.mjs +5 -0
- package/esm2020/lib/modules/tld-common/services/scroll/tld-scroll.service.mjs +43 -0
- package/esm2020/lib/modules/tld-common/services/tld-alert.service.mjs +139 -0
- package/esm2020/lib/modules/tld-common/services/tld-highlight.service.mjs +25 -0
- package/esm2020/lib/modules/tld-common/services/tld-translate-config.service.mjs +226 -0
- package/esm2020/lib/modules/tld-common/services/wtw-link-params.service.mjs +33 -0
- package/esm2020/lib/modules/tld-common/tld-common.module.mjs +97 -0
- package/esm2020/lib/modules/tld-document/download-button/download-button.component.mjs +78 -0
- package/esm2020/lib/modules/tld-document/image-conversion-help/image-conversion-help.component.mjs +32 -0
- package/esm2020/lib/modules/tld-document/index.mjs +8 -0
- package/esm2020/lib/modules/tld-document/models/file-conversion-types.model.mjs +6 -0
- package/esm2020/lib/modules/tld-document/models/index.mjs +6 -0
- package/esm2020/lib/modules/tld-document/models/start-translation.model.mjs +2 -0
- package/esm2020/lib/modules/tld-document/models/translate-file.model.mjs +2 -0
- package/esm2020/lib/modules/tld-document/models/translation-statuss.model.mjs +15 -0
- package/esm2020/lib/modules/tld-document/models/upload-response.model.mjs +2 -0
- package/esm2020/lib/modules/tld-document/pdf-conversion-help/pdf-conversion-help.component.mjs +32 -0
- package/esm2020/lib/modules/tld-document/services/api/file-api.service.mjs +166 -0
- package/esm2020/lib/modules/tld-document/services/api/models/file-preview-v1-progress-response.model.mjs +2 -0
- package/esm2020/lib/modules/tld-document/services/api/models/file-preview-v1-response-body.model.mjs +2 -0
- package/esm2020/lib/modules/tld-document/services/api/models/get-file-translation-status-v1-response.model.mjs +2 -0
- package/esm2020/lib/modules/tld-document/services/api-v2/file-api-v2.service.mjs +87 -0
- package/esm2020/lib/modules/tld-document/services/api-v2/models/file-category-v2.model.mjs +6 -0
- package/esm2020/lib/modules/tld-document/services/api-v2/models/file-translation-status-v2-response.model.mjs +2 -0
- package/esm2020/lib/modules/tld-document/services/index.mjs +3 -0
- package/esm2020/lib/modules/tld-document/services/tld-translate-file.service.mjs +398 -0
- package/esm2020/lib/modules/tld-document/tld-document.module.mjs +70 -0
- package/esm2020/lib/modules/tld-document/tld-file-translate-base.component.mjs +76 -0
- package/esm2020/lib/modules/tld-document/tld-translate-file-multiple/tld-translate-file-multiple.component.mjs +94 -0
- package/esm2020/lib/modules/tld-term/index.mjs +7 -0
- package/esm2020/lib/modules/tld-term/models/converted-collection-tooltip-key.model.mjs +7 -0
- package/esm2020/lib/modules/tld-term/models/converted-collection-type.model.mjs +9 -0
- package/esm2020/lib/modules/tld-term/models/index.mjs +7 -0
- package/esm2020/lib/modules/tld-term/models/mt-api/tld-mt-term-collection.model.mjs +2 -0
- package/esm2020/lib/modules/tld-term/models/mt-collection-status.model.mjs +7 -0
- package/esm2020/lib/modules/tld-term/models/term-api/tld-term-collection-languages.model.mjs +2 -0
- package/esm2020/lib/modules/tld-term/models/term-api/tld-term-collection.model.mjs +2 -0
- package/esm2020/lib/modules/tld-term/models/tld-converted-collection.model.mjs +114 -0
- package/esm2020/lib/modules/tld-term/services/index.mjs +4 -0
- package/esm2020/lib/modules/tld-term/services/mt-collections-api.service.mjs +33 -0
- package/esm2020/lib/modules/tld-term/services/term-api.service.mjs +34 -0
- package/esm2020/lib/modules/tld-term/services/tld-term-collections.service.mjs +253 -0
- package/esm2020/lib/modules/tld-term/tld-term-collection/tld-term-collection.component.mjs +19 -0
- package/esm2020/lib/modules/tld-term/tld-term-collection-list/tld-term-collection-list.component.mjs +99 -0
- package/esm2020/lib/modules/tld-term/tld-term-create-collection-dialog/tld-term-create-collection-dialog.component.mjs +47 -0
- package/esm2020/lib/modules/tld-term/tld-term-menu/tld-term-menu.component.mjs +36 -0
- package/esm2020/lib/modules/tld-term/tld-term-promotion/tld-term-promotion.component.mjs +35 -0
- package/esm2020/lib/modules/tld-term/tld-term.module.mjs +67 -0
- package/esm2020/lib/modules/tld-text/components/highlight-tree/highlight-tree.component.mjs +109 -0
- package/esm2020/lib/modules/tld-text/components/progress-indicator/progress-indicator.component.mjs +35 -0
- package/esm2020/lib/modules/tld-text/components/textarea-with-background/textarea-with-background.component.mjs +153 -0
- package/esm2020/lib/modules/tld-text/components/tld-dictionary/tld-dictionary.component.mjs +56 -0
- package/esm2020/lib/modules/tld-text/components/tld-translate-source/tld-translate-source.component.mjs +60 -0
- package/esm2020/lib/modules/tld-text/components/tld-translate-suggest/dialog/suggest-translation.model.mjs +2 -0
- package/esm2020/lib/modules/tld-text/components/tld-translate-suggest/dialog/tld-translate-suggest-dialog.component.mjs +92 -0
- package/esm2020/lib/modules/tld-text/components/tld-translate-suggest/tld-translate-suggest.component.mjs +60 -0
- package/esm2020/lib/modules/tld-text/components/tld-translate-text/tld-translate-text.component.mjs +272 -0
- package/esm2020/lib/modules/tld-text/index.mjs +9 -0
- package/esm2020/lib/modules/tld-text/models/check-grammar-response-v2.model.mjs +2 -0
- package/esm2020/lib/modules/tld-text/models/dictionary.model.mjs +2 -0
- package/esm2020/lib/modules/tld-text/models/get-sentence-v1-response.model.mjs +2 -0
- package/esm2020/lib/modules/tld-text/models/grammar-check-base.model.mjs +2 -0
- package/esm2020/lib/modules/tld-text/models/grammar-check-meta.model.mjs +2 -0
- package/esm2020/lib/modules/tld-text/models/grammar-check-replacement.model.mjs +2 -0
- package/esm2020/lib/modules/tld-text/models/grammar-correction-v2.model.mjs +2 -0
- package/esm2020/lib/modules/tld-text/models/highlight-params.model.mjs +11 -0
- package/esm2020/lib/modules/tld-text/models/highlight-tree-type.model.mjs +12 -0
- package/esm2020/lib/modules/tld-text/models/highlight-tree.model.mjs +2 -0
- package/esm2020/lib/modules/tld-text/models/highlight.model.mjs +2 -0
- package/esm2020/lib/modules/tld-text/models/index.mjs +11 -0
- package/esm2020/lib/modules/tld-text/models/retranslate-params.model.mjs +2 -0
- package/esm2020/lib/modules/tld-text/models/source-text-changed.model.mjs +2 -0
- package/esm2020/lib/modules/tld-text/models/translate-paragraph-params.model.mjs +2 -0
- package/esm2020/lib/modules/tld-text/models/translate-paragraph-response-v1.model.mjs +2 -0
- package/esm2020/lib/modules/tld-text/models/translate-paragraph-response-v2.model.mjs +2 -0
- package/esm2020/lib/modules/tld-text/models/translate-paragraph-response.model.mjs +2 -0
- package/esm2020/lib/modules/tld-text/models/untranslated-paragraph.model.mjs +2 -0
- package/esm2020/lib/modules/tld-text/services/api/tld-translate-text-api.service.mjs +187 -0
- package/esm2020/lib/modules/tld-text/services/api-v2/tld-translate-text-api-v2.service.mjs +110 -0
- package/esm2020/lib/modules/tld-text/services/index.mjs +2 -0
- package/esm2020/lib/modules/tld-text/services/tld-translate-text.service.mjs +380 -0
- package/esm2020/lib/modules/tld-text/tld-text.module.mjs +95 -0
- package/esm2020/lib/modules/tld-text/utils/index.mjs +2 -0
- package/esm2020/lib/modules/tld-text/utils/models/existing-paragraph-info.model.mjs +2 -0
- package/esm2020/lib/modules/tld-text/utils/models/index.mjs +2 -0
- package/esm2020/lib/modules/tld-text/utils/tld-translate-text.utils.mjs +56 -0
- package/esm2020/lib/modules/tld-tooltip/index.mjs +5 -0
- package/esm2020/lib/modules/tld-tooltip/models/active-data.model.mjs +2 -0
- package/esm2020/lib/modules/tld-tooltip/models/domain.model.mjs +2 -0
- package/esm2020/lib/modules/tld-tooltip/models/index.mjs +5 -0
- package/esm2020/lib/modules/tld-tooltip/models/switcher-options.model.mjs +2 -0
- package/esm2020/lib/modules/tld-tooltip/models/system-metadata-keys.model.mjs +7 -0
- package/esm2020/lib/modules/tld-tooltip/models/vendor.model.mjs +2 -0
- package/esm2020/lib/modules/tld-tooltip/services/api/models/description.model.mjs +2 -0
- package/esm2020/lib/modules/tld-tooltip/services/api/models/language.model.mjs +2 -0
- package/esm2020/lib/modules/tld-tooltip/services/api/models/metadata.model.mjs +2 -0
- package/esm2020/lib/modules/tld-tooltip/services/api/models/name.model.mjs +2 -0
- package/esm2020/lib/modules/tld-tooltip/services/api/models/system.model.mjs +2 -0
- package/esm2020/lib/modules/tld-tooltip/services/api/tld-system-api.service.mjs +57 -0
- package/esm2020/lib/modules/tld-tooltip/services/api-v2/models/error.model.mjs +2 -0
- package/esm2020/lib/modules/tld-tooltip/services/api-v2/models/get-langauge-direction.mjs +2 -0
- package/esm2020/lib/modules/tld-tooltip/services/api-v2/models/language-direction.model.mjs +2 -0
- package/esm2020/lib/modules/tld-tooltip/services/api-v2/tld-system-api-v2.service.mjs +60 -0
- package/esm2020/lib/modules/tld-tooltip/services/index.mjs +2 -0
- package/esm2020/lib/modules/tld-tooltip/services/tld-system.service.mjs +302 -0
- package/esm2020/lib/modules/tld-tooltip/tld-domain-list/tld-domain-list.component.mjs +69 -0
- package/esm2020/lib/modules/tld-tooltip/tld-tooltip.module.mjs +95 -0
- package/esm2020/lib/modules/tld-tooltip/tld-translate-switcher/tld-translate-switcher.component.mjs +188 -0
- package/esm2020/lib/modules/tld-tooltip/translation-system-picker/dropdown/translation-system-picker-dropdown.component.mjs +179 -0
- package/esm2020/lib/modules/tld-tooltip/translation-system-picker/dropdown-body/translation-system-picker-dropdown-body.component.mjs +209 -0
- package/esm2020/lib/modules/tld-tooltip/translation-system-picker/filter/translation-system-picker-filter.component.mjs +48 -0
- package/esm2020/lib/modules/tld-tooltip/translation-system-picker/index.mjs +8 -0
- package/esm2020/lib/modules/tld-tooltip/translation-system-picker/language-list/translation-system-picker-language-list.component.mjs +31 -0
- package/esm2020/lib/modules/tld-tooltip/translation-system-picker/models/dropdown-body-config.model.mjs +2 -0
- package/esm2020/lib/modules/tld-tooltip/translation-system-picker/models/grouped-language-item.mjs +3 -0
- package/esm2020/lib/modules/tld-tooltip/translation-system-picker/models/index.mjs +6 -0
- package/esm2020/lib/modules/tld-tooltip/translation-system-picker/models/opened-menu.mjs +7 -0
- package/esm2020/lib/modules/tld-tooltip/translation-system-picker/models/translated-language.model.mjs +2 -0
- package/esm2020/lib/modules/tld-tooltip/translation-system-picker/models/translated-system.model.mjs +2 -0
- package/esm2020/lib/modules/tld-tooltip/translation-system-picker/services/index.mjs +2 -0
- package/esm2020/lib/modules/tld-tooltip/translation-system-picker/services/translation-system-picker.service.mjs +58 -0
- package/esm2020/lib/modules/tld-tooltip/translation-system-picker/system-list/translation-system-picker-system-list.component.mjs +31 -0
- package/esm2020/lib/modules/tld-tooltip/translation-system-picker/system-picker-button/translation-system-picker-button.component.mjs +27 -0
- package/esm2020/lib/modules/tld-tooltip/translation-system-picker/translation-system-picker.component.mjs +79 -0
- package/esm2020/lib/modules/tld-translate-file/tld-translate-file.component.mjs +65 -0
- package/esm2020/lib/modules/tld-web/index.mjs +3 -0
- package/esm2020/lib/modules/tld-web/tld-translate-web/tld-translate-web.component.mjs +499 -0
- package/esm2020/lib/modules/tld-web/tld-translate-web.service.mjs +16 -0
- package/esm2020/lib/modules/tld-web/tld-web.module.mjs +52 -0
- package/esm2020/lib/tld-translate-body/tld-translate-body.component.mjs +60 -0
- package/esm2020/lib/tld-translate.component.mjs +229 -0
- package/esm2020/lib/tld-translate.module.mjs +118 -0
- package/esm2020/public-api.mjs +43 -0
- package/esm2020/tilde-nlp-ngx-translate.mjs +5 -0
- package/fesm2015/tilde-nlp-ngx-translate.mjs +11019 -0
- package/fesm2015/tilde-nlp-ngx-translate.mjs.map +1 -0
- package/fesm2020/tilde-nlp-ngx-translate.mjs +10912 -0
- package/fesm2020/tilde-nlp-ngx-translate.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/components/shared/extension-dialog/components/index.d.ts +1 -0
- package/lib/components/shared/extension-dialog/components/open-extension-dialog/open-extension-dialog.component.d.ts +12 -0
- package/lib/components/shared/extension-dialog/extension-dialog.component.d.ts +15 -0
- package/lib/components/shared/extension-dialog/extension-dialog.module.d.ts +15 -0
- package/lib/components/shared/extension-dialog/index.d.ts +5 -0
- package/lib/components/shared/extension-dialog/models/enums/file-categories.enum.d.ts +7 -0
- package/lib/components/shared/extension-dialog/models/enums/file-extensions.enum.d.ts +33 -0
- package/lib/components/shared/extension-dialog/models/enums/file-type-icons.enum.d.ts +11 -0
- package/lib/components/shared/extension-dialog/models/enums/file-types.enum.d.ts +11 -0
- package/lib/components/shared/extension-dialog/models/enums/index.d.ts +4 -0
- package/lib/components/shared/extension-dialog/models/index.d.ts +2 -0
- package/lib/components/shared/extension-dialog/models/interfaces/config.d.ts +18 -0
- package/lib/components/shared/extension-dialog/models/interfaces/dialog-data.model.d.ts +3 -0
- package/lib/components/shared/extension-dialog/models/interfaces/index.d.ts +2 -0
- package/lib/components/shared/extension-dialog/services/extension-dialog.service.d.ts +9 -0
- package/lib/components/shared/extension-dialog/services/index.d.ts +1 -0
- package/lib/components/shared/text-to-speech/index.d.ts +2 -0
- package/lib/components/shared/text-to-speech/models/text-to-speech-settings.model.d.ts +23 -0
- package/lib/components/shared/text-to-speech/text-to-speech.component.d.ts +18 -0
- package/lib/components/shared/text-to-speech/text-to-speech.module.d.ts +11 -0
- package/lib/components/shared/vendor-disclaimer/vendor-disclaimer.component.d.ts +17 -0
- package/lib/components/shared/vendor-disclaimer/vendor-disclaimer.module.d.ts +9 -0
- package/lib/factories/file-api-service.factory.d.ts +7 -0
- package/lib/factories/system-service.factory.d.ts +6 -0
- package/lib/factories/text-api-service.factory.d.ts +6 -0
- package/lib/i18n/available-languages.d.ts +2 -0
- package/lib/i18n/de.d.ts +377 -0
- package/lib/i18n/en.d.ts +425 -0
- package/lib/i18n/et.d.ts +377 -0
- package/lib/i18n/fi.d.ts +382 -0
- package/lib/i18n/lt.d.ts +377 -0
- package/lib/i18n/lv.d.ts +390 -0
- package/lib/i18n/models/available-languages.model.d.ts +10 -0
- package/lib/i18n/pl.d.ts +377 -0
- package/lib/i18n/sv.d.ts +241 -0
- package/lib/injection-tokens/file-api-service.token.d.ts +1 -0
- package/lib/injection-tokens/index.d.ts +5 -0
- package/lib/injection-tokens/system-service.token.d.ts +1 -0
- package/lib/injection-tokens/text-api-service.token.d.ts +1 -0
- package/lib/injection-tokens/tld-translate-config.token.d.ts +1 -0
- package/lib/injection-tokens/translation-api-version.token.d.ts +1 -0
- package/lib/modules/material.module.d.ts +27 -0
- package/lib/modules/tld-audio/index.d.ts +3 -0
- package/lib/modules/tld-audio/models/audio-error-case.model.d.ts +11 -0
- package/lib/modules/tld-audio/models/dictate-configurationi.model.d.ts +6 -0
- package/lib/modules/tld-audio/models/index.d.ts +2 -0
- package/lib/modules/tld-audio/models/transcription-update.model.d.ts +4 -0
- package/lib/modules/tld-audio/services/audio-record.service.d.ts +35 -0
- package/lib/modules/tld-audio/services/index.d.ts +3 -0
- package/lib/modules/tld-audio/services/tld-voice-input-api.service.d.ts +16 -0
- package/lib/modules/tld-audio/services/tld-voice-input.service.d.ts +20 -0
- package/lib/modules/tld-audio/tld-audio.module.d.ts +14 -0
- package/lib/modules/tld-audio/tld-dictate/tld-dictate.component.d.ts +43 -0
- package/lib/modules/tld-audio/tld-record/tld-record.component.d.ts +32 -0
- package/lib/modules/tld-common/animations/pulse.animation.d.ts +1 -0
- package/lib/modules/tld-common/components/index.d.ts +9 -0
- package/lib/modules/tld-common/components/open-close-button/open-close-button.component.d.ts +15 -0
- package/lib/modules/tld-common/components/source-and-target-wrapper/source-and-target-wrapper.component.d.ts +19 -0
- package/lib/modules/tld-common/components/tld-file-upload/tld-file-upload.component.d.ts +28 -0
- package/lib/modules/tld-common/components/tld-lang-list/tld-lang-list.component.d.ts +52 -0
- package/lib/modules/tld-common/components/tld-list-menu/tld-list-menu.component.d.ts +24 -0
- package/lib/modules/tld-common/components/tld-loader/tld-loader.component.d.ts +5 -0
- package/lib/modules/tld-common/components/tld-message/tld-message.component.d.ts +18 -0
- package/lib/modules/tld-common/components/tld-translate-achievement/tld-translate-achievement.component.d.ts +6 -0
- package/lib/modules/tld-common/components/translate-button/tld-translate-button.service.d.ts +12 -0
- package/lib/modules/tld-common/components/translate-button/translate-button.component.d.ts +22 -0
- package/lib/modules/tld-common/directives/drag-and-drop.directive.d.ts +14 -0
- package/lib/modules/tld-common/directives/index.d.ts +1 -0
- package/lib/modules/tld-common/index.d.ts +1 -0
- package/lib/modules/tld-common/models/auth-options.model.d.ts +4 -0
- package/lib/modules/tld-common/models/common.d.ts +28 -0
- package/lib/modules/tld-common/models/configs/tld-audio-config.model.d.ts +22 -0
- package/lib/modules/tld-common/models/configs/tld-term-config.model.d.ts +27 -0
- package/lib/modules/tld-common/models/configs/tld-text-to-speech-config.model.d.ts +11 -0
- package/lib/modules/tld-common/models/configs/tld-translate-api-v2-config.model.d.ts +11 -0
- package/lib/modules/tld-common/models/configs/tld-translate-config.model.d.ts +18 -0
- package/lib/modules/tld-common/models/configs/tld-translate-core-config.model.d.ts +42 -0
- package/lib/modules/tld-common/models/configs/tld-translate-file-config.model.d.ts +25 -0
- package/lib/modules/tld-common/models/configs/tld-translate-text-config.model.d.ts +39 -0
- package/lib/modules/tld-common/models/configs/tld-translate-web-config.model.d.ts +10 -0
- package/lib/modules/tld-common/models/core/index.d.ts +2 -0
- package/lib/modules/tld-common/models/core/language-menu-version.enum.d.ts +4 -0
- package/lib/modules/tld-common/models/core/translation-api-version.model.d.ts +4 -0
- package/lib/modules/tld-common/models/errors/error-codes.enum.d.ts +21 -0
- package/lib/modules/tld-common/models/errors/error-codes.type.d.ts +4 -0
- package/lib/modules/tld-common/models/errors/error.model.d.ts +3 -0
- package/lib/modules/tld-common/models/file-upload.model.d.ts +13 -0
- package/lib/modules/tld-common/models/index.d.ts +21 -0
- package/lib/modules/tld-common/models/lang-list-item.model.d.ts +6 -0
- package/lib/modules/tld-common/models/language-with-translation.model.d.ts +6 -0
- package/lib/modules/tld-common/models/message.model.d.ts +11 -0
- package/lib/modules/tld-common/models/selected-language.model.d.ts +4 -0
- package/lib/modules/tld-common/models/services/file-api/download-file-params.model.d.ts +5 -0
- package/lib/modules/tld-common/models/services/file-api/file-api-service.model.d.ts +17 -0
- package/lib/modules/tld-common/models/services/file-api/file-meta.model.d.ts +8 -0
- package/lib/modules/tld-common/models/services/file-api/file-translation-substatus.model.d.ts +7 -0
- package/lib/modules/tld-common/models/services/file-api/get-file-status-params.model.d.ts +6 -0
- package/lib/modules/tld-common/models/services/file-api/get-file-translation-status-response.model.d.ts +13 -0
- package/lib/modules/tld-common/models/services/file-api/remove-file-params.model.d.ts +4 -0
- package/lib/modules/tld-common/models/services/file-api/source-file-preview-response.model.d.ts +8 -0
- package/lib/modules/tld-common/models/services/file-api/start-file-translation-params.model.d.ts +6 -0
- package/lib/modules/tld-common/models/services/file-api/translated-document-preview-params.model.d.ts +4 -0
- package/lib/modules/tld-common/models/services/index.d.ts +18 -0
- package/lib/modules/tld-common/models/services/system/system.model.d.ts +17 -0
- package/lib/modules/tld-common/models/services/system/tld-system-api-service.model.d.ts +5 -0
- package/lib/modules/tld-common/models/services/text-api/check-grammar-response.model.d.ts +6 -0
- package/lib/modules/tld-common/models/services/text-api/tld-translate-text-api-service.model.d.ts +26 -0
- package/lib/modules/tld-common/models/services/text-api/translate-paragraph-request-params.model.d.ts +6 -0
- package/lib/modules/tld-common/models/services/voice-to-text/voice-to-text-job-state.model.d.ts +5 -0
- package/lib/modules/tld-common/models/services/voice-to-text/voice-to-text-job.model.d.ts +21 -0
- package/lib/modules/tld-common/models/services/voice-to-text/voice-to-text-start-job-request-params.model.d.ts +7 -0
- package/lib/modules/tld-common/pipes/index.d.ts +1 -0
- package/lib/modules/tld-common/pipes/translate-domain.pipe.d.ts +13 -0
- package/lib/modules/tld-common/services/icon-service/icon.service.d.ts +12 -0
- package/lib/modules/tld-common/services/icon-service/icons/file-types/excel.icon.d.ts +1 -0
- package/lib/modules/tld-common/services/icon-service/icons/file-types/index.d.ts +9 -0
- package/lib/modules/tld-common/services/icon-service/icons/file-types/interchange.icon.d.ts +1 -0
- package/lib/modules/tld-common/services/icon-service/icons/file-types/office-other.icon.d.ts +1 -0
- package/lib/modules/tld-common/services/icon-service/icons/file-types/other.icon.d.ts +1 -0
- package/lib/modules/tld-common/services/icon-service/icons/file-types/pdf.icon.d.ts +1 -0
- package/lib/modules/tld-common/services/icon-service/icons/file-types/powerpoint.icon.d.ts +1 -0
- package/lib/modules/tld-common/services/icon-service/icons/file-types/scanned.icon.d.ts +1 -0
- package/lib/modules/tld-common/services/icon-service/icons/file-types/web.icon.d.ts +1 -0
- package/lib/modules/tld-common/services/icon-service/icons/file-types/word.icon.d.ts +1 -0
- package/lib/modules/tld-common/services/icon-service/icons.d.ts +3 -0
- package/lib/modules/tld-common/services/index.d.ts +4 -0
- package/lib/modules/tld-common/services/scroll/tld-scroll.service.d.ts +12 -0
- package/lib/modules/tld-common/services/tld-alert.service.d.ts +33 -0
- package/lib/modules/tld-common/services/tld-highlight.service.d.ts +14 -0
- package/lib/modules/tld-common/services/tld-translate-config.service.d.ts +39 -0
- package/lib/modules/tld-common/services/wtw-link-params.service.d.ts +13 -0
- package/lib/modules/tld-common/tld-common.module.d.ts +23 -0
- package/lib/modules/tld-document/download-button/download-button.component.d.ts +30 -0
- package/lib/modules/tld-document/image-conversion-help/image-conversion-help.component.d.ts +21 -0
- package/lib/modules/tld-document/index.d.ts +7 -0
- package/lib/modules/tld-document/models/file-conversion-types.model.d.ts +4 -0
- package/lib/modules/tld-document/models/index.d.ts +5 -0
- package/lib/modules/tld-document/models/start-translation.model.d.ts +16 -0
- package/lib/modules/tld-document/models/translate-file.model.d.ts +33 -0
- package/lib/modules/tld-document/models/translation-statuss.model.d.ts +12 -0
- package/lib/modules/tld-document/models/upload-response.model.d.ts +8 -0
- package/lib/modules/tld-document/pdf-conversion-help/pdf-conversion-help.component.d.ts +21 -0
- package/lib/modules/tld-document/services/api/file-api.service.d.ts +26 -0
- package/lib/modules/tld-document/services/api/models/file-preview-v1-progress-response.model.d.ts +6 -0
- package/lib/modules/tld-document/services/api/models/file-preview-v1-response-body.model.d.ts +8 -0
- package/lib/modules/tld-document/services/api/models/get-file-translation-status-v1-response.model.d.ts +11 -0
- package/lib/modules/tld-document/services/api-v2/file-api-v2.service.d.ts +22 -0
- package/lib/modules/tld-document/services/api-v2/models/file-category-v2.model.d.ts +4 -0
- package/lib/modules/tld-document/services/api-v2/models/file-translation-status-v2-response.model.d.ts +20 -0
- package/lib/modules/tld-document/services/index.d.ts +2 -0
- package/lib/modules/tld-document/services/tld-translate-file.service.d.ts +60 -0
- package/lib/modules/tld-document/tld-document.module.d.ts +19 -0
- package/lib/modules/tld-document/tld-file-translate-base.component.d.ts +29 -0
- package/lib/modules/tld-document/tld-translate-file-multiple/tld-translate-file-multiple.component.d.ts +40 -0
- package/lib/modules/tld-term/index.d.ts +6 -0
- package/lib/modules/tld-term/models/converted-collection-tooltip-key.model.d.ts +5 -0
- package/lib/modules/tld-term/models/converted-collection-type.model.d.ts +7 -0
- package/lib/modules/tld-term/models/index.d.ts +6 -0
- package/lib/modules/tld-term/models/mt-api/tld-mt-term-collection.model.d.ts +15 -0
- package/lib/modules/tld-term/models/mt-collection-status.model.d.ts +5 -0
- package/lib/modules/tld-term/models/term-api/tld-term-collection-languages.model.d.ts +11 -0
- package/lib/modules/tld-term/models/term-api/tld-term-collection.model.d.ts +46 -0
- package/lib/modules/tld-term/models/tld-converted-collection.model.d.ts +43 -0
- package/lib/modules/tld-term/services/index.d.ts +3 -0
- package/lib/modules/tld-term/services/mt-collections-api.service.d.ts +13 -0
- package/lib/modules/tld-term/services/term-api.service.d.ts +15 -0
- package/lib/modules/tld-term/services/tld-term-collections.service.d.ts +57 -0
- package/lib/modules/tld-term/tld-term-collection/tld-term-collection.component.d.ts +9 -0
- package/lib/modules/tld-term/tld-term-collection-list/tld-term-collection-list.component.d.ts +39 -0
- package/lib/modules/tld-term/tld-term-create-collection-dialog/tld-term-create-collection-dialog.component.d.ts +20 -0
- package/lib/modules/tld-term/tld-term-menu/tld-term-menu.component.d.ts +13 -0
- package/lib/modules/tld-term/tld-term-promotion/tld-term-promotion.component.d.ts +17 -0
- package/lib/modules/tld-term/tld-term.module.d.ts +22 -0
- package/lib/modules/tld-text/components/highlight-tree/highlight-tree.component.d.ts +27 -0
- package/lib/modules/tld-text/components/progress-indicator/progress-indicator.component.d.ts +20 -0
- package/lib/modules/tld-text/components/textarea-with-background/textarea-with-background.component.d.ts +40 -0
- package/lib/modules/tld-text/components/tld-dictionary/tld-dictionary.component.d.ts +24 -0
- package/lib/modules/tld-text/components/tld-translate-source/tld-translate-source.component.d.ts +36 -0
- package/lib/modules/tld-text/components/tld-translate-suggest/dialog/suggest-translation.model.d.ts +11 -0
- package/lib/modules/tld-text/components/tld-translate-suggest/dialog/tld-translate-suggest-dialog.component.d.ts +33 -0
- package/lib/modules/tld-text/components/tld-translate-suggest/tld-translate-suggest.component.d.ts +24 -0
- package/lib/modules/tld-text/components/tld-translate-text/tld-translate-text.component.d.ts +104 -0
- package/lib/modules/tld-text/index.d.ts +8 -0
- package/lib/modules/tld-text/models/check-grammar-response-v2.model.d.ts +4 -0
- package/lib/modules/tld-text/models/dictionary.model.d.ts +28 -0
- package/lib/modules/tld-text/models/get-sentence-v1-response.model.d.ts +5 -0
- package/lib/modules/tld-text/models/grammar-check-base.model.d.ts +6 -0
- package/lib/modules/tld-text/models/grammar-check-meta.model.d.ts +5 -0
- package/lib/modules/tld-text/models/grammar-check-replacement.model.d.ts +5 -0
- package/lib/modules/tld-text/models/grammar-correction-v2.model.d.ts +9 -0
- package/lib/modules/tld-text/models/highlight-params.model.d.ts +10 -0
- package/lib/modules/tld-text/models/highlight-tree-type.model.d.ts +10 -0
- package/lib/modules/tld-text/models/highlight-tree.model.d.ts +22 -0
- package/lib/modules/tld-text/models/highlight.model.d.ts +10 -0
- package/lib/modules/tld-text/models/index.d.ts +10 -0
- package/lib/modules/tld-text/models/retranslate-params.model.d.ts +4 -0
- package/lib/modules/tld-text/models/source-text-changed.model.d.ts +6 -0
- package/lib/modules/tld-text/models/translate-paragraph-params.model.d.ts +6 -0
- package/lib/modules/tld-text/models/translate-paragraph-response-v1.model.d.ts +15 -0
- package/lib/modules/tld-text/models/translate-paragraph-response-v2.model.d.ts +9 -0
- package/lib/modules/tld-text/models/translate-paragraph-response.model.d.ts +7 -0
- package/lib/modules/tld-text/models/untranslated-paragraph.model.d.ts +4 -0
- package/lib/modules/tld-text/services/api/tld-translate-text-api.service.d.ts +24 -0
- package/lib/modules/tld-text/services/api-v2/tld-translate-text-api-v2.service.d.ts +17 -0
- package/lib/modules/tld-text/services/index.d.ts +1 -0
- package/lib/modules/tld-text/services/tld-translate-text.service.d.ts +104 -0
- package/lib/modules/tld-text/tld-text.module.d.ts +27 -0
- package/lib/modules/tld-text/utils/index.d.ts +1 -0
- package/lib/modules/tld-text/utils/models/existing-paragraph-info.model.d.ts +5 -0
- package/lib/modules/tld-text/utils/models/index.d.ts +1 -0
- package/lib/modules/tld-text/utils/tld-translate-text.utils.d.ts +9 -0
- package/lib/modules/tld-tooltip/index.d.ts +4 -0
- package/lib/modules/tld-tooltip/models/active-data.model.d.ts +24 -0
- package/lib/modules/tld-tooltip/models/domain.model.d.ts +8 -0
- package/lib/modules/tld-tooltip/models/index.d.ts +4 -0
- package/lib/modules/tld-tooltip/models/switcher-options.model.d.ts +14 -0
- package/lib/modules/tld-tooltip/models/system-metadata-keys.model.d.ts +5 -0
- package/lib/modules/tld-tooltip/models/vendor.model.d.ts +4 -0
- package/lib/modules/tld-tooltip/services/api/models/description.model.d.ts +4 -0
- package/lib/modules/tld-tooltip/services/api/models/language.model.d.ts +5 -0
- package/lib/modules/tld-tooltip/services/api/models/metadata.model.d.ts +4 -0
- package/lib/modules/tld-tooltip/services/api/models/name.model.d.ts +4 -0
- package/lib/modules/tld-tooltip/services/api/models/system.model.d.ts +14 -0
- package/lib/modules/tld-tooltip/services/api/tld-system-api.service.d.ts +15 -0
- package/lib/modules/tld-tooltip/services/api-v2/models/error.model.d.ts +4 -0
- package/lib/modules/tld-tooltip/services/api-v2/models/get-langauge-direction.d.ts +6 -0
- package/lib/modules/tld-tooltip/services/api-v2/models/language-direction.model.d.ts +7 -0
- package/lib/modules/tld-tooltip/services/api-v2/tld-system-api-v2.service.d.ts +15 -0
- package/lib/modules/tld-tooltip/services/index.d.ts +1 -0
- package/lib/modules/tld-tooltip/services/tld-system.service.d.ts +57 -0
- package/lib/modules/tld-tooltip/tld-domain-list/tld-domain-list.component.d.ts +33 -0
- package/lib/modules/tld-tooltip/tld-tooltip.module.d.ts +25 -0
- package/lib/modules/tld-tooltip/tld-translate-switcher/tld-translate-switcher.component.d.ts +64 -0
- package/lib/modules/tld-tooltip/translation-system-picker/dropdown/translation-system-picker-dropdown.component.d.ts +44 -0
- package/lib/modules/tld-tooltip/translation-system-picker/dropdown-body/translation-system-picker-dropdown-body.component.d.ts +65 -0
- package/lib/modules/tld-tooltip/translation-system-picker/filter/translation-system-picker-filter.component.d.ts +17 -0
- package/lib/modules/tld-tooltip/translation-system-picker/index.d.ts +7 -0
- package/lib/modules/tld-tooltip/translation-system-picker/language-list/translation-system-picker-language-list.component.d.ts +14 -0
- package/lib/modules/tld-tooltip/translation-system-picker/models/dropdown-body-config.model.d.ts +11 -0
- package/lib/modules/tld-tooltip/translation-system-picker/models/grouped-language-item.d.ts +8 -0
- package/lib/modules/tld-tooltip/translation-system-picker/models/index.d.ts +5 -0
- package/lib/modules/tld-tooltip/translation-system-picker/models/opened-menu.d.ts +5 -0
- package/lib/modules/tld-tooltip/translation-system-picker/models/translated-language.model.d.ts +4 -0
- package/lib/modules/tld-tooltip/translation-system-picker/models/translated-system.model.d.ts +4 -0
- package/lib/modules/tld-tooltip/translation-system-picker/services/index.d.ts +1 -0
- package/lib/modules/tld-tooltip/translation-system-picker/services/translation-system-picker.service.d.ts +24 -0
- package/lib/modules/tld-tooltip/translation-system-picker/system-list/translation-system-picker-system-list.component.d.ts +13 -0
- package/lib/modules/tld-tooltip/translation-system-picker/system-picker-button/translation-system-picker-button.component.d.ts +10 -0
- package/lib/modules/tld-tooltip/translation-system-picker/translation-system-picker.component.d.ts +34 -0
- package/lib/modules/tld-translate-file/tld-translate-file.component.d.ts +37 -0
- package/lib/modules/tld-web/index.d.ts +2 -0
- package/lib/modules/tld-web/tld-translate-web/tld-translate-web.component.d.ts +85 -0
- package/lib/modules/tld-web/tld-translate-web.service.d.ts +7 -0
- package/lib/modules/tld-web/tld-web.module.d.ts +14 -0
- package/lib/tld-translate-body/tld-translate-body.component.d.ts +23 -0
- package/lib/tld-translate.component.d.ts +65 -0
- package/lib/tld-translate.module.d.ts +23 -0
- package/package.json +40 -0
- package/public-api.d.ts +28 -0
- package/src/assets/webcomponent/styles.css +1 -0
- package/src/assets/webcomponent/tld-translate.js +3 -0
- package/src/assets/webtranslate/page-translate-widget.js +4934 -0
- package/src/assets/webtranslate/remove.png +0 -0
- package/src/assets/webtranslate/tilde_logo.png +0 -0
- package/src/assets/webtranslate/translate-website.js +393 -0
- package/src/assets/webtranslate/widget.css +139 -0
- package/src/styles/colors.scss +15 -0
- package/src/styles/fonts.scss +3 -0
- package/src/styles/mixin/border-default.scss +10 -0
- package/src/styles/mixin/tld-translate-accent-colors.scss +46 -0
- package/src/styles/mixin/tld-translate-colors.scss +7 -0
- package/src/styles/mixin/tld-translate-placeholders.scss +5 -0
- package/src/styles/mixin/tld-translate-primary-colors.scss +5 -0
- package/src/styles/styles.scss +377 -0
- package/src/styles/translator-borders.scss +28 -0
- package/tilde-nlp-ngx-translate-1.0.0.tgz +0 -0
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
|
|
2
|
+
import { MatMenu } from '@angular/material/menu';
|
|
3
|
+
import { Subject } from 'rxjs';
|
|
4
|
+
import { takeUntil } from 'rxjs/operators';
|
|
5
|
+
import { TldOpenCloseButtonComponent } from '../open-close-button/open-close-button.component';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@ngx-translate/core";
|
|
8
|
+
import * as i2 from "@angular/common";
|
|
9
|
+
import * as i3 from "@angular/material/menu";
|
|
10
|
+
import * as i4 from "@angular/flex-layout/flex";
|
|
11
|
+
import * as i5 from "@angular/flex-layout/extended";
|
|
12
|
+
import * as i6 from "../open-close-button/open-close-button.component";
|
|
13
|
+
import * as i7 from "@tilde-nlp/ngx-common";
|
|
14
|
+
import * as i8 from "../../pipes/translate-domain.pipe";
|
|
15
|
+
export class TldLangListComponent {
|
|
16
|
+
constructor(translate) {
|
|
17
|
+
this.translate = translate;
|
|
18
|
+
this.pxPerLanguage = 100;
|
|
19
|
+
//Outputs
|
|
20
|
+
this.onLanguageChange = new EventEmitter();
|
|
21
|
+
this.onDomainChange = new EventEmitter();
|
|
22
|
+
this.menuLanguageList = [];
|
|
23
|
+
this.visibleLanguageList = [];
|
|
24
|
+
this.menuTriggerAriaCode = "ARIA_LABELS.OTHER_LANGUAGES_TRIGGER";
|
|
25
|
+
this.languageLocalizationKey = "LANGUAGES";
|
|
26
|
+
this.languageCodePropertyName = "code";
|
|
27
|
+
//Private variables and their accessors
|
|
28
|
+
//necessary because domain name will show next to language if multiple domains available
|
|
29
|
+
this.duplicateCodes = [];
|
|
30
|
+
this.languageList = [];
|
|
31
|
+
this.destroy$ = new Subject();
|
|
32
|
+
}
|
|
33
|
+
set languages(languageList) {
|
|
34
|
+
setTimeout(() => {
|
|
35
|
+
this.languageList = languageList || [];
|
|
36
|
+
this.recreateLanguageLists();
|
|
37
|
+
}, 0);
|
|
38
|
+
}
|
|
39
|
+
;
|
|
40
|
+
set selected(val) {
|
|
41
|
+
this._selected = val;
|
|
42
|
+
this.ensureSelectedIsVisible();
|
|
43
|
+
}
|
|
44
|
+
;
|
|
45
|
+
get selected() { return this._selected; }
|
|
46
|
+
set maxDisplayedLanguages(val) {
|
|
47
|
+
if (this._maxDisplayedLanguages === val) {
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
this._maxDisplayedLanguages = val;
|
|
51
|
+
this.recreateLanguageLists();
|
|
52
|
+
}
|
|
53
|
+
get maxDisplayedLanguages() {
|
|
54
|
+
return this._maxDisplayedLanguages;
|
|
55
|
+
}
|
|
56
|
+
get firstVisible() {
|
|
57
|
+
return this.visibleLanguageList?.[0];
|
|
58
|
+
}
|
|
59
|
+
ngAfterViewInit() {
|
|
60
|
+
this.menu.overlayPanelClass = "language-menu-overlay";
|
|
61
|
+
this.translate.onLangChange.pipe(takeUntil(this.destroy$)).subscribe((lang) => {
|
|
62
|
+
this.currentLanguage = lang.lang;
|
|
63
|
+
this.toogleDomainVisibility();
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
ngOnDestroy() {
|
|
67
|
+
this.destroy$.next(null);
|
|
68
|
+
this.destroy$.complete();
|
|
69
|
+
}
|
|
70
|
+
onMenuOpen() {
|
|
71
|
+
const panel = document.getElementById(this.menu.panelId);
|
|
72
|
+
// disables tilde web translator for lang menu
|
|
73
|
+
panel.setAttribute("translate", "no");
|
|
74
|
+
if (this.testId) {
|
|
75
|
+
panel.setAttribute("data-test-id", this.testId);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
isActive(language) {
|
|
79
|
+
return this.isEqualWithSelected(language);
|
|
80
|
+
}
|
|
81
|
+
selectLanguage(language) {
|
|
82
|
+
if (this.isEqualWithSelected(language)) {
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
if (this.showDomainsWithLanguageName) {
|
|
86
|
+
this.onDomainChange.emit(language.systemId);
|
|
87
|
+
}
|
|
88
|
+
else {
|
|
89
|
+
this.onLanguageChange.emit(language.code);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Creates visible language list and menu language list that is used in template.
|
|
94
|
+
* Uses component variable "languageList" which gets passed as input param.
|
|
95
|
+
*/
|
|
96
|
+
recreateLanguageLists() {
|
|
97
|
+
const visibleLanguages = [];
|
|
98
|
+
const menuLanguages = [];
|
|
99
|
+
const languageCodes = [];
|
|
100
|
+
this.duplicateCodes = [];
|
|
101
|
+
for (var i = 0; i < this.languageList.length; i++) {
|
|
102
|
+
const language = this.languageList[i];
|
|
103
|
+
if (languageCodes.indexOf(language.lang) >= 0) {
|
|
104
|
+
this.duplicateCodes.push(language.lang);
|
|
105
|
+
if (!this.showDomainsWithLanguageName) {
|
|
106
|
+
continue;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
languageCodes.push(language.lang);
|
|
110
|
+
const languageWithTranslation = {
|
|
111
|
+
code: language.lang,
|
|
112
|
+
//will be set later, together with domain translation
|
|
113
|
+
showDomain: false,
|
|
114
|
+
domain: language.domain,
|
|
115
|
+
systemId: language.systemId,
|
|
116
|
+
};
|
|
117
|
+
if (visibleLanguages.length < this.maxDisplayedLanguages) {
|
|
118
|
+
visibleLanguages.push(languageWithTranslation);
|
|
119
|
+
}
|
|
120
|
+
if (this.maxDisplayedLanguages === 1 || visibleLanguages.length >= this.maxDisplayedLanguages) {
|
|
121
|
+
menuLanguages.push(languageWithTranslation);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
this.visibleLanguageList = visibleLanguages;
|
|
125
|
+
this.menuLanguageList = menuLanguages;
|
|
126
|
+
this.toogleDomainVisibility();
|
|
127
|
+
this.ensureSelectedIsVisible();
|
|
128
|
+
}
|
|
129
|
+
ensureSelectedIsVisible() {
|
|
130
|
+
// Loop visible languages and if selected is visible, then no reordering necessary.
|
|
131
|
+
for (var i = 0; i < this.visibleLanguageList.length; i++) {
|
|
132
|
+
const lang = this.visibleLanguageList[i];
|
|
133
|
+
if (this.isEqualWithSelected(lang)) {
|
|
134
|
+
return;
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
// If selected lang not visible, make it visible from menu languages
|
|
138
|
+
for (var i = 0; i < this.menuLanguageList.length; i++) {
|
|
139
|
+
const lang = this.menuLanguageList[i];
|
|
140
|
+
if (this.isEqualWithSelected(lang)) {
|
|
141
|
+
const deletedVisible = this.visibleLanguageList.splice(0, 1, lang)[0];
|
|
142
|
+
// if max visible length === 1, then it is ok that visible lang is also in menu langs.
|
|
143
|
+
if (this.maxDisplayedLanguages !== 1) {
|
|
144
|
+
this.menuLanguageList.splice(i, 1, deletedVisible);
|
|
145
|
+
}
|
|
146
|
+
return;
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
isEqualWithSelected(lang) {
|
|
151
|
+
return lang && ((!this.showDomainsWithLanguageName && lang.code === this.selected.code)
|
|
152
|
+
|| (this.showDomainsWithLanguageName && lang.systemId === this.selected.systemId));
|
|
153
|
+
}
|
|
154
|
+
toogleDomainVisibility() {
|
|
155
|
+
[...this.visibleLanguageList, ...this.menuLanguageList].forEach((language) => {
|
|
156
|
+
language.showDomain = this.showDomainsWithLanguageName && this.duplicateCodes.includes(language.code) ? true : false;
|
|
157
|
+
});
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
TldLangListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TldLangListComponent, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
|
|
161
|
+
TldLangListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: TldLangListComponent, selector: "tld-lang-list", inputs: { disabled: "disabled", pxPerLanguage: "pxPerLanguage", languages: "languages", testId: "testId", selected: "selected", maxDisplayedLanguages: "maxDisplayedLanguages", showDomainsWithLanguageName: "showDomainsWithLanguageName" }, outputs: { onLanguageChange: "onLanguageChange", onDomainChange: "onDomainChange" }, viewQueries: [{ propertyName: "wrapper", first: true, predicate: ["wrapper"], descendants: true }, { propertyName: "menu", first: true, predicate: MatMenu, descendants: true }, { propertyName: "openCloseButton", first: true, predicate: TldOpenCloseButtonComponent, descendants: true }], ngImport: i0, template: "<div fxLayout=\"row\" class=\"tld-lang-list-wrapper\" fxLayoutAlign=\"start center\">\r\n <div fxLayout=\"row\" fxLayoutAlign=\"center center\" role=\"list\" class=\"tld-lang-list\"\r\n [ngClass]=\"{'single-element-list': visibleLanguageList.length === 1}\">\r\n <ng-container *ngIf=\"visibleLanguageList.length>1 else singleLanguageList\">\r\n <div role=\"listitem\" *ngFor=\"let language of visibleLanguageList | sortTranslations: languageLocalizationKey:languageCodePropertyName:currentLanguage | async\" class=\"tld-language-list-element\"\r\n [ngClass]=\"{'active accent-color' : isActive(language)}\">\r\n <ng-template [ngTemplateOutlet]=\"languageButton\" [ngTemplateOutletContext]=\"{ language: language }\">\r\n </ng-template>\r\n </div>\r\n <ng-template *ngIf=\"menuLanguageList.length>0\" [ngTemplateOutlet]=\"menuDropDown\" [ngTemplateOutletContext]=\"{ isIcon: true}\"></ng-template>\r\n </ng-container>\r\n </div>\r\n <ng-content></ng-content>\r\n <mat-menu #languageMenu=\"matMenu\" fxLayout=\"column\" class=\"language-menu\">\r\n <ng-container *ngFor=\"let language of menuLanguageList | sortTranslations: languageLocalizationKey:languageCodePropertyName:currentLanguage | async\">\r\n <ng-template [ngTemplateOutlet]=\"languageButton\" [ngTemplateOutletContext]=\"{ language: language }\"></ng-template>\r\n </ng-container>\r\n </mat-menu>\r\n</div>\r\n\r\n<!-- Template for one visible language with menu languages. -->\r\n<ng-template #singleLanguageList>\r\n <ng-container *ngIf=\" menuLanguageList.length > 0 else UnclickableLanguage\">\r\n <ng-template [ngTemplateOutlet]=\"menuDropDown\" [ngTemplateOutletContext]=\"{ isIcon: false}\"></ng-template>\r\n </ng-container>\r\n</ng-template>\r\n<!-- ------------------------ -->\r\n\r\n<!-- Template if only one language is in list and no menu languages. This language needs no cursor or click events.-->\r\n<ng-template #UnclickableLanguage>\r\n <button color=\"primary\" [attr.aria-label]=\"'LANGUAGES.' + (firstVisible.code | uppercase) | translate\" *ngIf=\"firstVisible\" class=\"language-title no-highlight no-action\">\r\n <ng-template [ngTemplateOutlet]=\"languageNameWithDomain\" [ngTemplateOutletContext]=\"{ language: firstVisible}\"></ng-template>\r\n </button>\r\n</ng-template>\r\n<!-- ------------------------ -->\r\n\r\n<!-- templates for language names and other small repeated parts of this component-->\r\n<ng-template #menuDropDown let-isIcon=\"isIcon\">\r\n <tld-open-close-button [isIcon]=\"isIcon\" [ngClass]=\"{'language-title no-highlight' : !isIcon}\" [disabled]=\"disabled\"\r\n #state=\"matMenuTrigger\" (menuOpened)=\"onMenuOpen()\" [matMenuTriggerFor]=\"languageMenu\" [isOpened]=\"state.menuOpen\"\r\n [ariaLabelCode]=\"menuTriggerAriaCode\">\r\n <ng-template *ngIf=\"!isIcon\" [ngTemplateOutlet]=\"languageNameWithDomain\"\r\n [ngTemplateOutletContext]=\"{ language: firstVisible }\">\r\n </ng-template>\r\n </tld-open-close-button>\r\n</ng-template>\r\n\r\n<ng-template #languageButton let-language=\"language\">\r\n <button fxLayoutAlign=\"start center\" [ngClass]=\"{'active accent-color' : isActive(language)}\" mat-menu-item\r\n *ngIf=\"language\" class=\"language-title\" (click)=\"selectLanguage(language)\" [disabled]=\"disabled\"\r\n [attr.aria-label]=\"languageLocalizationKey + '.' + (language.code | uppercase) | translate\">\r\n <span>{{languageLocalizationKey + '.' + (language.code | uppercase) | translate}}</span> \r\n <span class=\"domain\" *ngIf=\"language.showDomain\"> ({{language.domain | translateDomain}})</span>\r\n </button>\r\n</ng-template>\r\n\r\n<ng-template #languageNameWithDomain let-language=\"language\">\r\n <span>{{languageLocalizationKey + '.' + (language.code | uppercase) | translate}}</span>\r\n <span fxHide.lt-sm *ngIf=\"language.showDomain\">\r\n <span> (</span>\r\n <span class=\"domain\">{{language.domain | translateDomain}}</span>\r\n <span>)</span>\r\n </span>\r\n</ng-template>\r\n<!-- ------------------------ -->", styles: [".tld-lang-list-wrapper{max-width:100%}.tld-lang-list-wrapper .tld-language-list-element{padding:0 12px}.tld-lang-list:not(.single-element-list) .active .language-title:after{position:absolute;bottom:-8px;left:50%;transform:translate(-50%);content:\"\";display:block;width:16px;height:2px}.tld-language-list-element.active .span-block{display:block}.tld-language-list-element.active .domain{display:inline-block;max-width:90px;overflow-x:hidden;text-overflow:ellipsis}.language-title{cursor:pointer;font-size:16px;font-weight:500;position:relative;background-color:transparent;border:none;font-family:Inter,sans-serif}.language-title.no-highlight.no-action{cursor:default}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i3.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i3.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "directive", type: i4.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i4.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i5.DefaultShowHideDirective, selector: " [fxShow], [fxShow.print], [fxShow.xs], [fxShow.sm], [fxShow.md], [fxShow.lg], [fxShow.xl], [fxShow.lt-sm], [fxShow.lt-md], [fxShow.lt-lg], [fxShow.lt-xl], [fxShow.gt-xs], [fxShow.gt-sm], [fxShow.gt-md], [fxShow.gt-lg], [fxHide], [fxHide.print], [fxHide.xs], [fxHide.sm], [fxHide.md], [fxHide.lg], [fxHide.xl], [fxHide.lt-sm], [fxHide.lt-md], [fxHide.lt-lg], [fxHide.lt-xl], [fxHide.gt-xs], [fxHide.gt-sm], [fxHide.gt-md], [fxHide.gt-lg]", inputs: ["fxShow", "fxShow.print", "fxShow.xs", "fxShow.sm", "fxShow.md", "fxShow.lg", "fxShow.xl", "fxShow.lt-sm", "fxShow.lt-md", "fxShow.lt-lg", "fxShow.lt-xl", "fxShow.gt-xs", "fxShow.gt-sm", "fxShow.gt-md", "fxShow.gt-lg", "fxHide", "fxHide.print", "fxHide.xs", "fxHide.sm", "fxHide.md", "fxHide.lg", "fxHide.xl", "fxHide.lt-sm", "fxHide.lt-md", "fxHide.lt-lg", "fxHide.lt-xl", "fxHide.gt-xs", "fxHide.gt-sm", "fxHide.gt-md", "fxHide.gt-lg"] }, { kind: "directive", type: i5.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "component", type: i6.TldOpenCloseButtonComponent, selector: "tld-open-close-button", inputs: ["disableFocusOnAction", "isOpened", "disabled", "isIcon", "ariaLabelCode"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.UpperCasePipe, name: "uppercase" }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i7.SortTranslationsPipe, name: "sortTranslations" }, { kind: "pipe", type: i8.TranslateDomainPipe, name: "translateDomain" }] });
|
|
162
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TldLangListComponent, decorators: [{
|
|
163
|
+
type: Component,
|
|
164
|
+
args: [{ selector: 'tld-lang-list', template: "<div fxLayout=\"row\" class=\"tld-lang-list-wrapper\" fxLayoutAlign=\"start center\">\r\n <div fxLayout=\"row\" fxLayoutAlign=\"center center\" role=\"list\" class=\"tld-lang-list\"\r\n [ngClass]=\"{'single-element-list': visibleLanguageList.length === 1}\">\r\n <ng-container *ngIf=\"visibleLanguageList.length>1 else singleLanguageList\">\r\n <div role=\"listitem\" *ngFor=\"let language of visibleLanguageList | sortTranslations: languageLocalizationKey:languageCodePropertyName:currentLanguage | async\" class=\"tld-language-list-element\"\r\n [ngClass]=\"{'active accent-color' : isActive(language)}\">\r\n <ng-template [ngTemplateOutlet]=\"languageButton\" [ngTemplateOutletContext]=\"{ language: language }\">\r\n </ng-template>\r\n </div>\r\n <ng-template *ngIf=\"menuLanguageList.length>0\" [ngTemplateOutlet]=\"menuDropDown\" [ngTemplateOutletContext]=\"{ isIcon: true}\"></ng-template>\r\n </ng-container>\r\n </div>\r\n <ng-content></ng-content>\r\n <mat-menu #languageMenu=\"matMenu\" fxLayout=\"column\" class=\"language-menu\">\r\n <ng-container *ngFor=\"let language of menuLanguageList | sortTranslations: languageLocalizationKey:languageCodePropertyName:currentLanguage | async\">\r\n <ng-template [ngTemplateOutlet]=\"languageButton\" [ngTemplateOutletContext]=\"{ language: language }\"></ng-template>\r\n </ng-container>\r\n </mat-menu>\r\n</div>\r\n\r\n<!-- Template for one visible language with menu languages. -->\r\n<ng-template #singleLanguageList>\r\n <ng-container *ngIf=\" menuLanguageList.length > 0 else UnclickableLanguage\">\r\n <ng-template [ngTemplateOutlet]=\"menuDropDown\" [ngTemplateOutletContext]=\"{ isIcon: false}\"></ng-template>\r\n </ng-container>\r\n</ng-template>\r\n<!-- ------------------------ -->\r\n\r\n<!-- Template if only one language is in list and no menu languages. This language needs no cursor or click events.-->\r\n<ng-template #UnclickableLanguage>\r\n <button color=\"primary\" [attr.aria-label]=\"'LANGUAGES.' + (firstVisible.code | uppercase) | translate\" *ngIf=\"firstVisible\" class=\"language-title no-highlight no-action\">\r\n <ng-template [ngTemplateOutlet]=\"languageNameWithDomain\" [ngTemplateOutletContext]=\"{ language: firstVisible}\"></ng-template>\r\n </button>\r\n</ng-template>\r\n<!-- ------------------------ -->\r\n\r\n<!-- templates for language names and other small repeated parts of this component-->\r\n<ng-template #menuDropDown let-isIcon=\"isIcon\">\r\n <tld-open-close-button [isIcon]=\"isIcon\" [ngClass]=\"{'language-title no-highlight' : !isIcon}\" [disabled]=\"disabled\"\r\n #state=\"matMenuTrigger\" (menuOpened)=\"onMenuOpen()\" [matMenuTriggerFor]=\"languageMenu\" [isOpened]=\"state.menuOpen\"\r\n [ariaLabelCode]=\"menuTriggerAriaCode\">\r\n <ng-template *ngIf=\"!isIcon\" [ngTemplateOutlet]=\"languageNameWithDomain\"\r\n [ngTemplateOutletContext]=\"{ language: firstVisible }\">\r\n </ng-template>\r\n </tld-open-close-button>\r\n</ng-template>\r\n\r\n<ng-template #languageButton let-language=\"language\">\r\n <button fxLayoutAlign=\"start center\" [ngClass]=\"{'active accent-color' : isActive(language)}\" mat-menu-item\r\n *ngIf=\"language\" class=\"language-title\" (click)=\"selectLanguage(language)\" [disabled]=\"disabled\"\r\n [attr.aria-label]=\"languageLocalizationKey + '.' + (language.code | uppercase) | translate\">\r\n <span>{{languageLocalizationKey + '.' + (language.code | uppercase) | translate}}</span> \r\n <span class=\"domain\" *ngIf=\"language.showDomain\"> ({{language.domain | translateDomain}})</span>\r\n </button>\r\n</ng-template>\r\n\r\n<ng-template #languageNameWithDomain let-language=\"language\">\r\n <span>{{languageLocalizationKey + '.' + (language.code | uppercase) | translate}}</span>\r\n <span fxHide.lt-sm *ngIf=\"language.showDomain\">\r\n <span> (</span>\r\n <span class=\"domain\">{{language.domain | translateDomain}}</span>\r\n <span>)</span>\r\n </span>\r\n</ng-template>\r\n<!-- ------------------------ -->", styles: [".tld-lang-list-wrapper{max-width:100%}.tld-lang-list-wrapper .tld-language-list-element{padding:0 12px}.tld-lang-list:not(.single-element-list) .active .language-title:after{position:absolute;bottom:-8px;left:50%;transform:translate(-50%);content:\"\";display:block;width:16px;height:2px}.tld-language-list-element.active .span-block{display:block}.tld-language-list-element.active .domain{display:inline-block;max-width:90px;overflow-x:hidden;text-overflow:ellipsis}.language-title{cursor:pointer;font-size:16px;font-weight:500;position:relative;background-color:transparent;border:none;font-family:Inter,sans-serif}.language-title.no-highlight.no-action{cursor:default}\n"] }]
|
|
165
|
+
}], ctorParameters: function () { return [{ type: i1.TranslateService }]; }, propDecorators: { wrapper: [{
|
|
166
|
+
type: ViewChild,
|
|
167
|
+
args: ["wrapper"]
|
|
168
|
+
}], menu: [{
|
|
169
|
+
type: ViewChild,
|
|
170
|
+
args: [MatMenu]
|
|
171
|
+
}], openCloseButton: [{
|
|
172
|
+
type: ViewChild,
|
|
173
|
+
args: [TldOpenCloseButtonComponent]
|
|
174
|
+
}], disabled: [{
|
|
175
|
+
type: Input
|
|
176
|
+
}], pxPerLanguage: [{
|
|
177
|
+
type: Input
|
|
178
|
+
}], languages: [{
|
|
179
|
+
type: Input
|
|
180
|
+
}], testId: [{
|
|
181
|
+
type: Input
|
|
182
|
+
}], selected: [{
|
|
183
|
+
type: Input
|
|
184
|
+
}], maxDisplayedLanguages: [{
|
|
185
|
+
type: Input
|
|
186
|
+
}], showDomainsWithLanguageName: [{
|
|
187
|
+
type: Input
|
|
188
|
+
}], onLanguageChange: [{
|
|
189
|
+
type: Output
|
|
190
|
+
}], onDomainChange: [{
|
|
191
|
+
type: Output
|
|
192
|
+
}] } });
|
|
193
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGxkLWxhbmctbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90bGQtdHJhbnNsYXRlL3NyYy9saWIvbW9kdWxlcy90bGQtY29tbW9uL2NvbXBvbmVudHMvdGxkLWxhbmctbGlzdC90bGQtbGFuZy1saXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RsZC10cmFuc2xhdGUvc3JjL2xpYi9tb2R1bGVzL3RsZC1jb21tb24vY29tcG9uZW50cy90bGQtbGFuZy1saXN0L3RsZC1sYW5nLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQWMsWUFBWSxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hILE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUVqRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQzs7Ozs7Ozs7OztBQU8vRixNQUFNLE9BQU8sb0JBQW9CO0lBZ0UvQixZQUE2QixTQUEyQjtRQUEzQixjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQXhEL0Msa0JBQWEsR0FBVyxHQUFHLENBQUM7UUFxQ3JDLFNBQVM7UUFDQyxxQkFBZ0IsR0FBeUIsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUNwRSxtQkFBYyxHQUF5QixJQUFJLFlBQVksRUFBVSxDQUFDO1FBSTVFLHFCQUFnQixHQUErQixFQUFFLENBQUM7UUFDbEQsd0JBQW1CLEdBQStCLEVBQUUsQ0FBQztRQUU1Qyx3QkFBbUIsR0FBRyxxQ0FBcUMsQ0FBQztRQUM1RCw0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QUFkLEtBQUs7Z0JBR08sUUFBUTtzQkFBcEIsS0FBSztnQkFPTyxxQkFBcUI7c0JBQWpDLEtBQUs7Z0JBZUcsMkJBQTJCO3NCQUFuQyxLQUFLO2dCQUVJLGdCQUFnQjtzQkFBekIsTUFBTTtnQkFDRyxjQUFjO3NCQUF2QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkRlc3Ryb3ksIE91dHB1dCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hdE1lbnUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9tZW51JztcclxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgSUxhbmdMaXN0SXRlbSwgSUxhbmd1YWdlV2l0aFRyYW5zbGF0aW9uLCBJU2VsZWN0ZWRMYW5ndWFnZSB9IGZyb20gJy4uLy4uL21vZGVscyc7XHJcbmltcG9ydCB7IFRsZE9wZW5DbG9zZUJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4uL29wZW4tY2xvc2UtYnV0dG9uL29wZW4tY2xvc2UtYnV0dG9uLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3RsZC1sYW5nLWxpc3QnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90bGQtbGFuZy1saXN0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90bGQtbGFuZy1saXN0LmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFRsZExhbmdMaXN0Q29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcclxuICAvL2F2YWlsYWJsZSBvbmx5IGFmdGVyIHZpZXcgaW5pdGlhbGl6ZWRcclxuICBAVmlld0NoaWxkKFwid3JhcHBlclwiKSB3cmFwcGVyOiBFbGVtZW50UmVmO1xyXG4gIEBWaWV3Q2hpbGQoTWF0TWVudSkgbWVudTogTWF0TWVudTtcclxuICBAVmlld0NoaWxkKFRsZE9wZW5DbG9zZUJ1dHRvbkNvbXBvbmVudCkgb3BlbkNsb3NlQnV0dG9uOiBUbGRPcGVuQ2xvc2VCdXR0b25Db21wb25lbnQ7XHJcblxyXG4gIC8vSW5wdXRzXHJcbiAgQElucHV0KCkgZGlzYWJsZWQ6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgcHhQZXJMYW5ndWFnZTogbnVtYmVyID0gMTAwO1xyXG5cclxuICBASW5wdXQoKSBzZXQgbGFuZ3VhZ2VzKGxhbmd1YWdlTGlzdDogSUxhbmdMaXN0SXRlbVtdKSB7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy5sYW5ndWFnZUxpc3QgPSBsYW5ndWFnZUxpc3QgfHwgW107XHJcbiAgICAgIHRoaXMucmVjcmVhdGVMYW5ndWFnZUxpc3RzKCk7XHJcbiAgICB9LCAwKVxyXG5cclxuICB9O1xyXG5cclxuICAvKiogSWQgZm9yIHBhbmVsIGNsYXNzLiBGb3IgdGVzdGluZyBwdXJwb3Nlcy4gKi9cclxuICBASW5wdXQoKSB0ZXN0SWQ6IHN0cmluZztcclxuXHJcbiAgcHJpdmF0ZSBfc2VsZWN0ZWQ6IElTZWxlY3RlZExhbmd1YWdlO1xyXG4gIEBJbnB1dCgpIHNldCBzZWxlY3RlZCh2YWw6IElTZWxlY3RlZExhbmd1YWdlKSB7XHJcbiAgICB0aGlzLl9zZWxlY3RlZCA9IHZhbDtcclxuICAgIHRoaXMuZW5zdXJlU2VsZWN0ZWRJc1Zpc2libGUoKTtcclxuICB9O1xyXG4gIGdldCBzZWxlY3RlZCgpIHsgcmV0dXJuIHRoaXMuX3NlbGVjdGVkOyB9XHJcblxyXG4gIHByaXZhdGUgX21heERpc3BsYXllZExhbmd1YWdlczogbnVtYmVyO1xyXG4gIEBJbnB1dCgpIHNldCBtYXhEaXNwbGF5ZWRMYW5ndWFnZXModmFsOiBudW1iZXIpIHtcclxuICAgIGlmICh0aGlzLl9tYXhEaXNwbGF5ZWRMYW5ndWFnZXMgPT09IHZhbCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5fbWF4RGlzcGxheWVkTGFuZ3VhZ2VzID0gdmFsO1xyXG4gICAgdGhpcy5yZWNyZWF0ZUxhbmd1YWdlTGlzdHMoKTtcclxuICB9XHJcbiAgZ2V0IG1heERpc3BsYXllZExhbmd1YWdlcygpIHtcclxuICAgIHJldHVybiB0aGlzLl9tYXhEaXNwbGF5ZWRMYW5ndWFnZXM7XHJcbiAgfVxyXG5cclxuICBnZXQgZmlyc3RWaXNpYmxlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMudmlzaWJsZUxhbmd1YWdlTGlzdD8uWzBdO1xyXG4gIH1cclxuICBASW5wdXQoKSBzaG93RG9tYWluc1dpdGhMYW5ndWFnZU5hbWU6IGJvb2xlYW47XHJcbiAgLy9PdXRwdXRzXHJcbiAgQE91dHB1dCgpIG9uTGFuZ3VhZ2VDaGFuZ2U6IEV2ZW50RW1pdHRlcjxzdHJpbmc+ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcbiAgQE91dHB1dCgpIG9uRG9tYWluQ2hhbmdlOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG5cclxuICAvL3B1YmxpYyB2YXJpYWJsZXNcclxuICBjdXJyZW50TGFuZ3VhZ2U6IHN0cmluZztcclxuICBtZW51TGFuZ3VhZ2VMaXN0OiBJTGFuZ3VhZ2VXaXRoVHJhbnNsYXRpb25bXSA9IFtdO1xyXG4gIHZpc2libGVMYW5ndWFnZUxpc3Q6IElMYW5ndWFnZVdpdGhUcmFuc2xhdGlvbltdID0gW107XHJcblxyXG4gIHJlYWRvbmx5IG1lbnVUcmlnZ2VyQXJpYUNvZGUgPSBcIkFSSUFfTEFCRUxTLk9USEVSX0xBTkdVQUdFU19UUklHR0VSXCI7XHJcbiAgcmVhZG9ubHkgbGFuZ3VhZ2VMb2NhbGl6YXRpb25LZXkgPSBcIkxBTkdVQUdFU1wiXHJcbiAgcmVhZG9ubHkgbGFuZ3VhZ2VDb2RlUHJvcGVydHlOYW1lID0gXCJjb2RlXCI7XHJcbiAgLy9Qcml2YXRlIHZhcmlhYmxlcyBhbmQgdGhlaXIgYWNjZXNzb3JzXHJcbiAgLy9uZWNlc3NhcnkgYmVjYXVzZSBkb21haW4gbmFtZSB3aWxsIHNob3cgbmV4dCB0byBsYW5ndWFnZSBpZiBtdWx0aXBsZSBkb21haW5zIGF2YWlsYWJsZVxyXG4gIHByaXZhdGUgZHVwbGljYXRlQ29kZXM6IHN0cmluZ1tdID0gW107XHJcbiAgcHJpdmF0ZSBsYW5ndWFnZUxpc3Q6IElMYW5nTGlzdEl0ZW1bXSA9IFtdO1xyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3kkID0gbmV3IFN1YmplY3QoKTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UpIHtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIHRoaXMubWVudS5vdmVybGF5UGFuZWxDbGFzcyA9IFwibGFuZ3VhZ2UtbWVudS1vdmVybGF5XCI7XHJcbiAgICB0aGlzLnRyYW5zbGF0ZS5vbkxhbmdDaGFuZ2UucGlwZShcclxuICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpXHJcbiAgICApLnN1YnNjcmliZSgobGFuZykgPT4ge1xyXG4gICAgICB0aGlzLmN1cnJlbnRMYW5ndWFnZSA9IGxhbmcubGFuZztcclxuICAgICAgdGhpcy50b29nbGVEb21haW5WaXNpYmlsaXR5KCk7XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQobnVsbClcclxuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcclxuICB9XHJcblxyXG4gIG9uTWVudU9wZW4oKSB7XHJcbiAgICBjb25zdCBwYW5lbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMubWVudS5wYW5lbElkKTtcclxuICAgIC8vIGRpc2FibGVzIHRpbGRlIHdlYiB0cmFuc2xhdG9yIGZvciBsYW5nIG1lbnVcclxuICAgIHBhbmVsLnNldEF0dHJpYnV0ZShcInRyYW5zbGF0ZVwiLCBcIm5vXCIpO1xyXG4gICAgaWYgKHRoaXMudGVzdElkKSB7XHJcbiAgICAgIHBhbmVsLnNldEF0dHJpYnV0ZShcImRhdGEtdGVzdC1pZFwiLCB0aGlzLnRlc3RJZCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpc0FjdGl2ZShsYW5ndWFnZTogYW55IHwgSUxhbmd1YWdlV2l0aFRyYW5zbGF0aW9uKSB7XHJcbiAgICByZXR1cm4gdGhpcy5pc0VxdWFsV2l0aFNlbGVjdGVkKGxhbmd1YWdlKTtcclxuICB9XHJcbiAgc2VsZWN0TGFuZ3VhZ2UobGFuZ3VhZ2U6IElMYW5ndWFnZVdpdGhUcmFuc2xhdGlvbikge1xyXG4gICAgaWYgKHRoaXMuaXNFcXVhbFdpdGhTZWxlY3RlZChsYW5ndWFnZSkpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLnNob3dEb21haW5zV2l0aExhbmd1YWdlTmFtZSkge1xyXG4gICAgICB0aGlzLm9uRG9tYWluQ2hhbmdlLmVtaXQobGFuZ3VhZ2Uuc3lzdGVtSWQpO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIHRoaXMub25MYW5ndWFnZUNoYW5nZS5lbWl0KGxhbmd1YWdlLmNvZGUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ3JlYXRlcyB2aXNpYmxlIGxhbmd1YWdlIGxpc3QgYW5kIG1lbnUgbGFuZ3VhZ2UgbGlzdCB0aGF0IGlzIHVzZWQgaW4gdGVtcGxhdGUuXHJcbiAgICogVXNlcyBjb21wb25lbnQgdmFyaWFibGUgXCJsYW5ndWFnZUxpc3RcIiB3aGljaCBnZXRzIHBhc3NlZCBhcyBpbnB1dCBwYXJhbS5cclxuICAgKi9cclxuICBwcml2YXRlIHJlY3JlYXRlTGFuZ3VhZ2VMaXN0cygpIHtcclxuICAgIGNvbnN0IHZpc2libGVMYW5ndWFnZXM6IElMYW5ndWFnZVdpdGhUcmFuc2xhdGlvbltdID0gW107XHJcbiAgICBjb25zdCBtZW51TGFuZ3VhZ2VzOiBJTGFuZ3VhZ2VXaXRoVHJhbnNsYXRpb25bXSA9IFtdO1xyXG4gICAgY29uc3QgbGFuZ3VhZ2VDb2Rlczogc3RyaW5nW10gPSBbXTtcclxuICAgIHRoaXMuZHVwbGljYXRlQ29kZXMgPSBbXTtcclxuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5sYW5ndWFnZUxpc3QubGVuZ3RoOyBpKyspIHtcclxuICAgICAgY29uc3QgbGFuZ3VhZ2UgPSB0aGlzLmxhbmd1YWdlTGlzdFtpXTtcclxuICAgICAgaWYgKGxhbmd1YWdlQ29kZXMuaW5kZXhPZihsYW5ndWFnZS5sYW5nKSA+PSAwKSB7XHJcbiAgICAgICAgdGhpcy5kdXBsaWNhdGVDb2Rlcy5wdXNoKGxhbmd1YWdlLmxhbmcpO1xyXG4gICAgICAgIGlmICghdGhpcy5zaG93RG9tYWluc1dpdGhMYW5ndWFnZU5hbWUpIHtcclxuICAgICAgICAgIGNvbnRpbnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBsYW5ndWFnZUNvZGVzLnB1c2gobGFuZ3VhZ2UubGFuZyk7XHJcblxyXG4gICAgICBjb25zdCBsYW5ndWFnZVdpdGhUcmFuc2xhdGlvbjogSUxhbmd1YWdlV2l0aFRyYW5zbGF0aW9uID1cclxuICAgICAge1xyXG4gICAgICAgIGNvZGU6IGxhbmd1YWdlLmxhbmcsXHJcbiAgICAgICAgLy93aWxsIGJlIHNldCBsYXRlciwgdG9nZXRoZXIgd2l0aCBkb21haW4gdHJhbnNsYXRpb25cclxuICAgICAgICBzaG93RG9tYWluOiBmYWxzZSxcclxuICAgICAgICBkb21haW46IGxhbmd1YWdlLmRvbWFpbixcclxuICAgICAgICBzeXN0ZW1JZDogbGFuZ3VhZ2Uuc3lzdGVtSWQsXHJcbiAgICAgIH07XHJcblxyXG4gICAgICBpZiAodmlzaWJsZUxhbmd1YWdlcy5sZW5ndGggPCB0aGlzLm1heERpc3BsYXllZExhbmd1YWdlcykge1xyXG4gICAgICAgIHZpc2libGVMYW5ndWFnZXMucHVzaChsYW5ndWFnZVdpdGhUcmFuc2xhdGlvbik7XHJcbiAgICAgIH1cclxuICAgICAgaWYodGhpcy5tYXhEaXNwbGF5ZWRMYW5ndWFnZXM9PT0xIHx8IHZpc2libGVMYW5ndWFnZXMubGVuZ3RoID49IHRoaXMubWF4RGlzcGxheWVkTGFuZ3VhZ2VzKSB7XHJcbiAgICAgICAgbWVudUxhbmd1YWdlcy5wdXNoKGxhbmd1YWdlV2l0aFRyYW5zbGF0aW9uKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgdGhpcy52aXNpYmxlTGFuZ3VhZ2VMaXN0ID0gdmlzaWJsZUxhbmd1YWdlcztcclxuICAgIHRoaXMubWVudUxhbmd1YWdlTGlzdCA9IG1lbnVMYW5ndWFnZXM7XHJcbiAgICB0aGlzLnRvb2dsZURvbWFpblZpc2liaWxpdHkoKTtcclxuICAgIHRoaXMuZW5zdXJlU2VsZWN0ZWRJc1Zpc2libGUoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZW5zdXJlU2VsZWN0ZWRJc1Zpc2libGUoKSB7XHJcbiAgICAvLyBMb29wIHZpc2libGUgbGFuZ3VhZ2VzIGFuZCBpZiBzZWxlY3RlZCBpcyB2aXNpYmxlLCB0aGVuIG5vIHJlb3JkZXJpbmcgbmVjZXNzYXJ5LlxyXG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCB0aGlzLnZpc2libGVMYW5ndWFnZUxpc3QubGVuZ3RoOyBpKyspIHtcclxuICAgICAgY29uc3QgbGFuZyA9IHRoaXMudmlzaWJsZUxhbmd1YWdlTGlzdFtpXTtcclxuICAgICAgaWYgKHRoaXMuaXNFcXVhbFdpdGhTZWxlY3RlZChsYW5nKSkge1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIElmIHNlbGVjdGVkIGxhbmcgbm90IHZpc2libGUsIG1ha2UgaXQgdmlzaWJsZSBmcm9tIG1lbnUgbGFuZ3VhZ2VzXHJcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IHRoaXMubWVudUxhbmd1YWdlTGlzdC5sZW5ndGg7IGkrKykge1xyXG4gICAgICBjb25zdCBsYW5nID0gdGhpcy5tZW51TGFuZ3VhZ2VMaXN0W2ldO1xyXG4gICAgICBpZiAodGhpcy5pc0VxdWFsV2l0aFNlbGVjdGVkKGxhbmcpKSB7XHJcbiAgICAgICAgY29uc3QgZGVsZXRlZFZpc2libGUgPSB0aGlzLnZpc2libGVMYW5ndWFnZUxpc3Quc3BsaWNlKDAsIDEsIGxhbmcpWzBdO1xyXG5cclxuICAgICAgICAvLyBpZiBtYXggdmlzaWJsZSBsZW5ndGggPT09IDEsIHRoZW4gaXQgaXMgb2sgdGhhdCB2aXNpYmxlIGxhbmcgaXMgYWxzbyBpbiBtZW51IGxhbmdzLiBcclxuICAgICAgICBpZiAodGhpcy5tYXhEaXNwbGF5ZWRMYW5ndWFnZXMgIT09IDEpIHtcclxuICAgICAgICAgIHRoaXMubWVudUxhbmd1YWdlTGlzdC5zcGxpY2UoaSwgMSwgZGVsZXRlZFZpc2libGUpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgaXNFcXVhbFdpdGhTZWxlY3RlZChsYW5nOiBJTGFuZ3VhZ2VXaXRoVHJhbnNsYXRpb24pIHtcclxuICAgIHJldHVybiBsYW5nICYmICgoIXRoaXMuc2hvd0RvbWFpbnNXaXRoTGFuZ3VhZ2VOYW1lICYmIGxhbmcuY29kZSA9PT0gdGhpcy5zZWxlY3RlZC5jb2RlKVxyXG4gICAgICB8fCAodGhpcy5zaG93RG9tYWluc1dpdGhMYW5ndWFnZU5hbWUgJiYgbGFuZy5zeXN0ZW1JZCA9PT0gdGhpcy5zZWxlY3RlZC5zeXN0ZW1JZCkpXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHRvb2dsZURvbWFpblZpc2liaWxpdHkoKSB7XHJcbiAgICBbLi4udGhpcy52aXNpYmxlTGFuZ3VhZ2VMaXN0LCAuLi50aGlzLm1lbnVMYW5ndWFnZUxpc3RdLmZvckVhY2goXHJcbiAgICAgIChsYW5ndWFnZSkgPT4ge1xyXG4gICAgICAgIGxhbmd1YWdlLnNob3dEb21haW4gPSB0aGlzLnNob3dEb21haW5zV2l0aExhbmd1YWdlTmFtZSAmJiB0aGlzLmR1cGxpY2F0ZUNvZGVzLmluY2x1ZGVzKGxhbmd1YWdlLmNvZGUpID8gdHJ1ZSA6IGZhbHNlO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG59XHJcbiIsIjxkaXYgZnhMYXlvdXQ9XCJyb3dcIiBjbGFzcz1cInRsZC1sYW5nLWxpc3Qtd3JhcHBlclwiIGZ4TGF5b3V0QWxpZ249XCJzdGFydCBjZW50ZXJcIj5cclxuICA8ZGl2IGZ4TGF5b3V0PVwicm93XCIgZnhMYXlvdXRBbGlnbj1cImNlbnRlciBjZW50ZXJcIiByb2xlPVwibGlzdFwiIGNsYXNzPVwidGxkLWxhbmctbGlzdFwiXHJcbiAgICBbbmdDbGFzc109XCJ7J3NpbmdsZS1lbGVtZW50LWxpc3QnOiB2aXNpYmxlTGFuZ3VhZ2VMaXN0Lmxlbmd0aCA9PT0gMX1cIj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJ2aXNpYmxlTGFuZ3VhZ2VMaXN0Lmxlbmd0aD4xIGVsc2Ugc2luZ2xlTGFuZ3VhZ2VMaXN0XCI+XHJcbiAgICAgIDxkaXYgcm9sZT1cImxpc3RpdGVtXCIgKm5nRm9yPVwibGV0IGxhbmd1YWdlIG9mIHZpc2libGVMYW5ndWFnZUxpc3QgfCBzb3J0VHJhbnNsYXRpb25zOiBsYW5ndWFnZUxvY2FsaXphdGlvbktleTpsYW5ndWFnZUNvZGVQcm9wZXJ0eU5hbWU6Y3VycmVudExhbmd1YWdlIHwgYXN5bmNcIiBjbGFzcz1cInRsZC1sYW5ndWFnZS1saXN0LWVsZW1lbnRcIlxyXG4gICAgICAgIFtuZ0NsYXNzXT1cInsnYWN0aXZlIGFjY2VudC1jb2xvcicgOiBpc0FjdGl2ZShsYW5ndWFnZSl9XCI+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImxhbmd1YWdlQnV0dG9uXCIgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgbGFuZ3VhZ2U6IGxhbmd1YWdlIH1cIj5cclxuICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPG5nLXRlbXBsYXRlICpuZ0lmPVwibWVudUxhbmd1YWdlTGlzdC5sZW5ndGg+MFwiIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIm1lbnVEcm9wRG93blwiIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IGlzSWNvbjogdHJ1ZX1cIj48L25nLXRlbXBsYXRlPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgPC9kaXY+XHJcbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG4gIDxtYXQtbWVudSAjbGFuZ3VhZ2VNZW51PVwibWF0TWVudVwiIGZ4TGF5b3V0PVwiY29sdW1uXCIgY2xhc3M9XCJsYW5ndWFnZS1tZW51XCI+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBsYW5ndWFnZSBvZiBtZW51TGFuZ3VhZ2VMaXN0IHwgc29ydFRyYW5zbGF0aW9uczogbGFuZ3VhZ2VMb2NhbGl6YXRpb25LZXk6bGFuZ3VhZ2VDb2RlUHJvcGVydHlOYW1lOmN1cnJlbnRMYW5ndWFnZSB8IGFzeW5jXCI+XHJcbiAgICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJsYW5ndWFnZUJ1dHRvblwiIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IGxhbmd1YWdlOiBsYW5ndWFnZSB9XCI+PC9uZy10ZW1wbGF0ZT5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gIDwvbWF0LW1lbnU+XHJcbjwvZGl2PlxyXG5cclxuPCEtLSBUZW1wbGF0ZSBmb3Igb25lIHZpc2libGUgbGFuZ3VhZ2Ugd2l0aCBtZW51IGxhbmd1YWdlcy4gLS0+XHJcbjxuZy10ZW1wbGF0ZSAjc2luZ2xlTGFuZ3VhZ2VMaXN0PlxyXG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCIgbWVudUxhbmd1YWdlTGlzdC5sZW5ndGggPiAwIGVsc2UgVW5jbGlja2FibGVMYW5ndWFnZVwiPlxyXG4gICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIm1lbnVEcm9wRG93blwiIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IGlzSWNvbjogZmFsc2V9XCI+PC9uZy10ZW1wbGF0ZT5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuPCEtLSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLS0+XHJcblxyXG48IS0tIFRlbXBsYXRlIGlmIG9ubHkgb25lIGxhbmd1YWdlIGlzIGluIGxpc3QgYW5kIG5vIG1lbnUgbGFuZ3VhZ2VzLiBUaGlzIGxhbmd1YWdlIG5lZWRzIG5vIGN1cnNvciBvciBjbGljayBldmVudHMuLS0+XHJcbjxuZy10ZW1wbGF0ZSAjVW5jbGlja2FibGVMYW5ndWFnZT5cclxuICA8YnV0dG9uIGNvbG9yPVwicHJpbWFyeVwiIFthdHRyLmFyaWEtbGFiZWxdPVwiJ0xBTkdVQUdFUy4nICsgKGZpcnN0VmlzaWJsZS5jb2RlIHwgdXBwZXJjYXNlKSB8IHRyYW5zbGF0ZVwiICpuZ0lmPVwiZmlyc3RWaXNpYmxlXCIgY2xhc3M9XCJsYW5ndWFnZS10aXRsZSBuby1oaWdobGlnaHQgbm8tYWN0aW9uXCI+XHJcbiAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwibGFuZ3VhZ2VOYW1lV2l0aERvbWFpblwiIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IGxhbmd1YWdlOiBmaXJzdFZpc2libGV9XCI+PC9uZy10ZW1wbGF0ZT5cclxuICA8L2J1dHRvbj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuPCEtLSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLS0+XHJcblxyXG48IS0tIHRlbXBsYXRlcyBmb3IgbGFuZ3VhZ2UgbmFtZXMgYW5kIG90aGVyIHNtYWxsIHJlcGVhdGVkIHBhcnRzIG9mIHRoaXMgY29tcG9uZW50LS0+XHJcbjxuZy10ZW1wbGF0ZSAjbWVudURyb3BEb3duIGxldC1pc0ljb249XCJpc0ljb25cIj5cclxuICA8dGxkLW9wZW4tY2xvc2UtYnV0dG9uIFtpc0ljb25dPVwiaXNJY29uXCIgW25nQ2xhc3NdPVwieydsYW5ndWFnZS10aXRsZSBuby1oaWdobGlnaHQnIDogIWlzSWNvbn1cIiBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxyXG4gICAgI3N0YXRlPVwibWF0TWVudVRyaWdnZXJcIiAobWVudU9wZW5lZCk9XCJvbk1lbnVPcGVuKClcIiBbbWF0TWVudVRyaWdnZXJGb3JdPVwibGFuZ3VhZ2VNZW51XCIgW2lzT3BlbmVkXT1cInN0YXRlLm1lbnVPcGVuXCJcclxuICAgIFthcmlhTGFiZWxDb2RlXT1cIm1lbnVUcmlnZ2VyQXJpYUNvZGVcIj5cclxuICAgIDxuZy10ZW1wbGF0ZSAqbmdJZj1cIiFpc0ljb25cIiBbbmdUZW1wbGF0ZU91dGxldF09XCJsYW5ndWFnZU5hbWVXaXRoRG9tYWluXCJcclxuICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgbGFuZ3VhZ2U6IGZpcnN0VmlzaWJsZSB9XCI+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gIDwvdGxkLW9wZW4tY2xvc2UtYnV0dG9uPlxyXG48L25nLXRlbXBsYXRlPlxyXG5cclxuPG5nLXRlbXBsYXRlICNsYW5ndWFnZUJ1dHRvbiBsZXQtbGFuZ3VhZ2U9XCJsYW5ndWFnZVwiPlxyXG4gIDxidXR0b24gZnhMYXlvdXRBbGlnbj1cInN0YXJ0IGNlbnRlclwiIFtuZ0NsYXNzXT1cInsnYWN0aXZlIGFjY2VudC1jb2xvcicgOiBpc0FjdGl2ZShsYW5ndWFnZSl9XCIgbWF0LW1lbnUtaXRlbVxyXG4gICAgKm5nSWY9XCJsYW5ndWFnZVwiIGNsYXNzPVwibGFuZ3VhZ2UtdGl0bGVcIiAoY2xpY2spPVwic2VsZWN0TGFuZ3VhZ2UobGFuZ3VhZ2UpXCIgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgIFthdHRyLmFyaWEtbGFiZWxdPVwibGFuZ3VhZ2VMb2NhbGl6YXRpb25LZXkgKyAnLicgKyAobGFuZ3VhZ2UuY29kZSB8IHVwcGVyY2FzZSkgfCB0cmFuc2xhdGVcIj5cclxuICAgIDxzcGFuPnt7bGFuZ3VhZ2VMb2NhbGl6YXRpb25LZXkgKyAnLicgKyAobGFuZ3VhZ2UuY29kZSB8IHVwcGVyY2FzZSkgfCB0cmFuc2xhdGV9fTwvc3Bhbj4mbmJzcDtcclxuICAgIDxzcGFuIGNsYXNzPVwiZG9tYWluXCIgKm5nSWY9XCJsYW5ndWFnZS5zaG93RG9tYWluXCI+ICh7e2xhbmd1YWdlLmRvbWFpbiB8IHRyYW5zbGF0ZURvbWFpbn19KTwvc3Bhbj5cclxuICA8L2J1dHRvbj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjbGFuZ3VhZ2VOYW1lV2l0aERvbWFpbiBsZXQtbGFuZ3VhZ2U9XCJsYW5ndWFnZVwiPlxyXG4gIDxzcGFuPnt7bGFuZ3VhZ2VMb2NhbGl6YXRpb25LZXkgKyAnLicgKyAobGFuZ3VhZ2UuY29kZSB8IHVwcGVyY2FzZSkgfCB0cmFuc2xhdGV9fTwvc3Bhbj5cclxuICA8c3BhbiBmeEhpZGUubHQtc20gKm5nSWY9XCJsYW5ndWFnZS5zaG93RG9tYWluXCI+XHJcbiAgICA8c3Bhbj4mbmJzcDsoPC9zcGFuPlxyXG4gICAgPHNwYW4gY2xhc3M9XCJkb21haW5cIj57e2xhbmd1YWdlLmRvbWFpbiB8IHRyYW5zbGF0ZURvbWFpbn19PC9zcGFuPlxyXG4gICAgPHNwYW4+KTwvc3Bhbj5cclxuICA8L3NwYW4+XHJcbjwvbmctdGVtcGxhdGU+XHJcbjwhLS0gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIC0tPiJdfQ==
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
|
|
2
|
+
import { MatMenu } from '@angular/material/menu';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
import * as i2 from "@angular/material/menu";
|
|
6
|
+
import * as i3 from "@angular/flex-layout/flex";
|
|
7
|
+
import * as i4 from "../open-close-button/open-close-button.component";
|
|
8
|
+
export class TldListMenuComponent {
|
|
9
|
+
constructor() {
|
|
10
|
+
this.showContent = true;
|
|
11
|
+
this.selectionChange = new EventEmitter();
|
|
12
|
+
}
|
|
13
|
+
set selectedValue(value) {
|
|
14
|
+
for (const el of this.list) {
|
|
15
|
+
if ((this.valueKey && value === el[this.valueKey]) || (!this.valueKey && value === el)) {
|
|
16
|
+
this.selected = el;
|
|
17
|
+
return;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
this.selected = null;
|
|
21
|
+
}
|
|
22
|
+
;
|
|
23
|
+
select(element) {
|
|
24
|
+
this.selectionChange.next(this.valueKey ? element?.[this.valueKey] : element);
|
|
25
|
+
}
|
|
26
|
+
onMenuOpen() {
|
|
27
|
+
if (this.testId) {
|
|
28
|
+
const panel = document.getElementById(this.menu.panelId);
|
|
29
|
+
panel.setAttribute("data-test-id", this.testId);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
TldListMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TldListMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
34
|
+
TldListMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: TldListMenuComponent, selector: "tld-list-menu", inputs: { titleKey: "titleKey", list: "list", showContent: "showContent", selectedValue: "selectedValue", disabled: "disabled", ariaLabel: "ariaLabel", valueKey: "valueKey", testId: "testId" }, outputs: { selectionChange: "selectionChange" }, viewQueries: [{ propertyName: "menu", first: true, predicate: MatMenu, descendants: true }], ngImport: i0, template: "<tld-open-close-button [isOpened]=\"state.menuOpen\" #state=\"matMenuTrigger\" [disabled]=\"disabled\"\r\n\r\n[matMenuTriggerFor]=\"listMenu\" (menuOpened)=\"onMenuOpen()\" [ariaLabelCode]=\"ariaLabel\">\r\n <ng-content *ngIf=\"showContent\"></ng-content>\r\n <ng-container *ngIf=\"!showContent && selected\">\r\n <span>{{(titleKey? selected[titleKey]:selected) | titlecase}}</span>\r\n </ng-container>\r\n</tld-open-close-button>\r\n<mat-menu #listMenu=\"matMenu\" fxLayout=\"column\">\r\n <ng-container *ngFor=\"let element of list\">\r\n <button fxLayoutAlign=\"start center\" mat-menu-item [attr.aria-label]=\"(titleKey? element[titleKey]:element)\"\r\n *ngIf=\"element\" class=\"tld-list-title\" (click)=\"select(element)\" [disabled]=\"disabled\">\r\n {{(titleKey? element[titleKey]:element) | titlecase}}\r\n </button>\r\n </ng-container>\r\n</mat-menu>", styles: [".tld-list-title{font-weight:500}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i2.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i2.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "directive", type: i3.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i3.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "component", type: i4.TldOpenCloseButtonComponent, selector: "tld-open-close-button", inputs: ["disableFocusOnAction", "isOpened", "disabled", "isIcon", "ariaLabelCode"] }, { kind: "pipe", type: i1.TitleCasePipe, name: "titlecase" }] });
|
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TldListMenuComponent, decorators: [{
|
|
36
|
+
type: Component,
|
|
37
|
+
args: [{ selector: 'tld-list-menu', template: "<tld-open-close-button [isOpened]=\"state.menuOpen\" #state=\"matMenuTrigger\" [disabled]=\"disabled\"\r\n\r\n[matMenuTriggerFor]=\"listMenu\" (menuOpened)=\"onMenuOpen()\" [ariaLabelCode]=\"ariaLabel\">\r\n <ng-content *ngIf=\"showContent\"></ng-content>\r\n <ng-container *ngIf=\"!showContent && selected\">\r\n <span>{{(titleKey? selected[titleKey]:selected) | titlecase}}</span>\r\n </ng-container>\r\n</tld-open-close-button>\r\n<mat-menu #listMenu=\"matMenu\" fxLayout=\"column\">\r\n <ng-container *ngFor=\"let element of list\">\r\n <button fxLayoutAlign=\"start center\" mat-menu-item [attr.aria-label]=\"(titleKey? element[titleKey]:element)\"\r\n *ngIf=\"element\" class=\"tld-list-title\" (click)=\"select(element)\" [disabled]=\"disabled\">\r\n {{(titleKey? element[titleKey]:element) | titlecase}}\r\n </button>\r\n </ng-container>\r\n</mat-menu>", styles: [".tld-list-title{font-weight:500}\n"] }]
|
|
38
|
+
}], propDecorators: { menu: [{
|
|
39
|
+
type: ViewChild,
|
|
40
|
+
args: [MatMenu]
|
|
41
|
+
}], titleKey: [{
|
|
42
|
+
type: Input
|
|
43
|
+
}], list: [{
|
|
44
|
+
type: Input
|
|
45
|
+
}], showContent: [{
|
|
46
|
+
type: Input
|
|
47
|
+
}], selectedValue: [{
|
|
48
|
+
type: Input
|
|
49
|
+
}], disabled: [{
|
|
50
|
+
type: Input
|
|
51
|
+
}], ariaLabel: [{
|
|
52
|
+
type: Input
|
|
53
|
+
}], valueKey: [{
|
|
54
|
+
type: Input
|
|
55
|
+
}], testId: [{
|
|
56
|
+
type: Input
|
|
57
|
+
}], selectionChange: [{
|
|
58
|
+
type: Output
|
|
59
|
+
}] } });
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGxkLWxpc3QtbWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90bGQtdHJhbnNsYXRlL3NyYy9saWIvbW9kdWxlcy90bGQtY29tbW9uL2NvbXBvbmVudHMvdGxkLWxpc3QtbWVudS90bGQtbGlzdC1tZW51LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RsZC10cmFuc2xhdGUvc3JjL2xpYi9tb2R1bGVzL3RsZC1jb21tb24vY29tcG9uZW50cy90bGQtbGlzdC1tZW51L3RsZC1saXN0LW1lbnUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEYsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7Ozs7QUFPakQsTUFBTSxPQUFPLG9CQUFvQjtJQUxqQztRQVlXLGdCQUFXLEdBQUcsSUFBSSxDQUFDO1FBbUJsQixvQkFBZSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO0tBWW5FO0lBNUJDLElBQWEsYUFBYSxDQUFDLEtBQVU7UUFDbkMsS0FBSyxNQUFNLEVBQUUsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQzFCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxJQUFJLEtBQUssS0FBSyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksS0FBSyxLQUFLLEVBQUUsQ0FBQyxFQUFFO2dCQUN0RixJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztnQkFDbkIsT0FBTzthQUNSO1NBQ0Y7UUFDRCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztJQUN2QixDQUFDO0lBQUEsQ0FBQztJQVVGLE1BQU0sQ0FBQyxPQUFZO1FBQ2pCLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDaEYsQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDZixNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDekQsS0FBSyxDQUFDLFlBQVksQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQ2pEO0lBQ0gsQ0FBQzs7aUhBckNVLG9CQUFvQjtxR0FBcEIsb0JBQW9CLDhVQUNwQixPQUFPLGdEQ1RwQix3NUJBZVc7MkZEUEUsb0JBQW9CO2tCQUxoQyxTQUFTOytCQUNFLGVBQWU7OEJBS0wsSUFBSTtzQkFBdkIsU0FBUzt1QkFBQyxPQUFPO2dCQUdULFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUVHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBR08sYUFBYTtzQkFBekIsS0FBSztnQkFTRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBRUcsUUFBUTtzQkFBaEIsS0FBSztnQkFFRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0ksZUFBZTtzQkFBeEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTWF0TWVudSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL21lbnUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICd0bGQtbGlzdC1tZW51JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdGxkLWxpc3QtbWVudS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vdGxkLWxpc3QtbWVudS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUbGRMaXN0TWVudUNvbXBvbmVudCB7XHJcbiAgQFZpZXdDaGlsZChNYXRNZW51KSBtZW51OiBNYXRNZW51O1xyXG5cclxuICAvKiogVGl0bGUga2V5LiBTaG91bGQgYmUgc2V0IGlmIGVsZW1lbnQgaXMgbm90IHN0cmluZy4gKi9cclxuICBASW5wdXQoKSB0aXRsZUtleTogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGxpc3Q6IGFueVtdO1xyXG5cclxuICBASW5wdXQoKSBzaG93Q29udGVudCA9IHRydWU7XHJcblxyXG4gIHNlbGVjdGVkOiBhbnk7XHJcbiAgQElucHV0KCkgc2V0IHNlbGVjdGVkVmFsdWUodmFsdWU6IGFueSkge1xyXG4gICAgZm9yIChjb25zdCBlbCBvZiB0aGlzLmxpc3QpIHtcclxuICAgICAgaWYgKCh0aGlzLnZhbHVlS2V5ICYmIHZhbHVlID09PSBlbFt0aGlzLnZhbHVlS2V5XSkgfHwgKCF0aGlzLnZhbHVlS2V5ICYmIHZhbHVlID09PSBlbCkpIHtcclxuICAgICAgICB0aGlzLnNlbGVjdGVkID0gZWw7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICB0aGlzLnNlbGVjdGVkID0gbnVsbDtcclxuICB9O1xyXG4gIEBJbnB1dCgpIGRpc2FibGVkOiBib29sZWFuO1xyXG4gIC8qKiBPcGVuIG1lbnUgYnV0dG9uIGFyaWEgbGFiZWwgKi9cclxuICBASW5wdXQoKSBhcmlhTGFiZWw6IHN0cmluZztcclxuICAvKiogV2hpY2ggcHJvcGVydHkgb2Ygb2JqZWN0IHNob3VsZCBiZSBlbWl0dGVkIHdoZW4gZWxlbWVudCBpcyBzZWxlY3RlZC4gQnkgZGVmYXVsdCwgb2JqZWN0IGlzIHJldHVybmVkLiAqL1xyXG4gIEBJbnB1dCgpIHZhbHVlS2V5OiBzdHJpbmc7XHJcbiAgLyoqIEZvciB0ZXN0aW5nIHB1cnBvc2VzLiBBZGRzIHRoaXMgdG8gYXR0cmlidXRlcyBmb3Igd3JhcHBlci4gKi9cclxuICBASW5wdXQoKSB0ZXN0SWQ6IHN0cmluZztcclxuICBAT3V0cHV0KCkgc2VsZWN0aW9uQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgc2VsZWN0KGVsZW1lbnQ6IGFueSkge1xyXG4gICAgdGhpcy5zZWxlY3Rpb25DaGFuZ2UubmV4dCh0aGlzLnZhbHVlS2V5ID8gZWxlbWVudD8uW3RoaXMudmFsdWVLZXldIDogZWxlbWVudCk7XHJcbiAgfVxyXG5cclxuICBvbk1lbnVPcGVuKCkge1xyXG4gICAgaWYgKHRoaXMudGVzdElkKSB7XHJcbiAgICAgIGNvbnN0IHBhbmVsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodGhpcy5tZW51LnBhbmVsSWQpO1xyXG4gICAgICBwYW5lbC5zZXRBdHRyaWJ1dGUoXCJkYXRhLXRlc3QtaWRcIiwgdGhpcy50ZXN0SWQpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8dGxkLW9wZW4tY2xvc2UtYnV0dG9uIFtpc09wZW5lZF09XCJzdGF0ZS5tZW51T3BlblwiICNzdGF0ZT1cIm1hdE1lbnVUcmlnZ2VyXCIgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcclxuXHJcblttYXRNZW51VHJpZ2dlckZvcl09XCJsaXN0TWVudVwiIChtZW51T3BlbmVkKT1cIm9uTWVudU9wZW4oKVwiIFthcmlhTGFiZWxDb2RlXT1cImFyaWFMYWJlbFwiPlxyXG4gICAgPG5nLWNvbnRlbnQgKm5nSWY9XCJzaG93Q29udGVudFwiPjwvbmctY29udGVudD5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhc2hvd0NvbnRlbnQgJiYgc2VsZWN0ZWRcIj5cclxuICAgICAgICA8c3Bhbj57eyh0aXRsZUtleT8gc2VsZWN0ZWRbdGl0bGVLZXldOnNlbGVjdGVkKSB8IHRpdGxlY2FzZX19PC9zcGFuPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbjwvdGxkLW9wZW4tY2xvc2UtYnV0dG9uPlxyXG48bWF0LW1lbnUgI2xpc3RNZW51PVwibWF0TWVudVwiIGZ4TGF5b3V0PVwiY29sdW1uXCI+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBlbGVtZW50IG9mIGxpc3RcIj5cclxuICAgICAgICA8YnV0dG9uIGZ4TGF5b3V0QWxpZ249XCJzdGFydCBjZW50ZXJcIiBtYXQtbWVudS1pdGVtIFthdHRyLmFyaWEtbGFiZWxdPVwiKHRpdGxlS2V5PyBlbGVtZW50W3RpdGxlS2V5XTplbGVtZW50KVwiXHJcbiAgICAgICAgICAgICpuZ0lmPVwiZWxlbWVudFwiIGNsYXNzPVwidGxkLWxpc3QtdGl0bGVcIiAoY2xpY2spPVwic2VsZWN0KGVsZW1lbnQpXCIgW2Rpc2FibGVkXT1cImRpc2FibGVkXCI+XHJcbiAgICAgICAgICAgIHt7KHRpdGxlS2V5PyBlbGVtZW50W3RpdGxlS2V5XTplbGVtZW50KSB8IHRpdGxlY2FzZX19XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuPC9tYXQtbWVudT4iXX0=
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/flex-layout/flex";
|
|
4
|
+
export class TldLoaderComponent {
|
|
5
|
+
}
|
|
6
|
+
TldLoaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TldLoaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
7
|
+
TldLoaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: TldLoaderComponent, selector: "tld-loader", ngImport: i0, template: "\r\n<div class=\"tld-loader accent-color\" fxLayout=\"row\" fxLayoutGap=\"10px\">\r\n <div class=\"accent-bg-color tld-loader-element element-1\"></div>\r\n <div class=\"accent-bg-color tld-loader-element element-2\"></div>\r\n <div class=\"accent-bg-color tld-loader-element element-3\"></div>\r\n</div>\r\n", styles: [".tld-loader .tld-loader-element{will-change:transform;border-radius:50%;animation:grow .6s ease-in-out infinite alternate;width:24px;height:24px}.tld-loader .tld-loader-element.element-2{animation-delay:.2s}.tld-loader .tld-loader-element.element-3{animation-delay:.4s}@keyframes grow{to{transform:translate(-50%) scale(0)}}\n"], dependencies: [{ kind: "directive", type: i1.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i1.DefaultLayoutGapDirective, selector: " [fxLayoutGap], [fxLayoutGap.xs], [fxLayoutGap.sm], [fxLayoutGap.md], [fxLayoutGap.lg], [fxLayoutGap.xl], [fxLayoutGap.lt-sm], [fxLayoutGap.lt-md], [fxLayoutGap.lt-lg], [fxLayoutGap.lt-xl], [fxLayoutGap.gt-xs], [fxLayoutGap.gt-sm], [fxLayoutGap.gt-md], [fxLayoutGap.gt-lg]", inputs: ["fxLayoutGap", "fxLayoutGap.xs", "fxLayoutGap.sm", "fxLayoutGap.md", "fxLayoutGap.lg", "fxLayoutGap.xl", "fxLayoutGap.lt-sm", "fxLayoutGap.lt-md", "fxLayoutGap.lt-lg", "fxLayoutGap.lt-xl", "fxLayoutGap.gt-xs", "fxLayoutGap.gt-sm", "fxLayoutGap.gt-md", "fxLayoutGap.gt-lg"] }] });
|
|
8
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TldLoaderComponent, decorators: [{
|
|
9
|
+
type: Component,
|
|
10
|
+
args: [{ selector: 'tld-loader', template: "\r\n<div class=\"tld-loader accent-color\" fxLayout=\"row\" fxLayoutGap=\"10px\">\r\n <div class=\"accent-bg-color tld-loader-element element-1\"></div>\r\n <div class=\"accent-bg-color tld-loader-element element-2\"></div>\r\n <div class=\"accent-bg-color tld-loader-element element-3\"></div>\r\n</div>\r\n", styles: [".tld-loader .tld-loader-element{will-change:transform;border-radius:50%;animation:grow .6s ease-in-out infinite alternate;width:24px;height:24px}.tld-loader .tld-loader-element.element-2{animation-delay:.2s}.tld-loader .tld-loader-element.element-3{animation-delay:.4s}@keyframes grow{to{transform:translate(-50%) scale(0)}}\n"] }]
|
|
11
|
+
}] });
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGxkLWxvYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90bGQtdHJhbnNsYXRlL3NyYy9saWIvbW9kdWxlcy90bGQtY29tbW9uL2NvbXBvbmVudHMvdGxkLWxvYWRlci90bGQtbG9hZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RsZC10cmFuc2xhdGUvc3JjL2xpYi9tb2R1bGVzL3RsZC1jb21tb24vY29tcG9uZW50cy90bGQtbG9hZGVyL3RsZC1sb2FkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBTzFDLE1BQU0sT0FBTyxrQkFBa0I7OytHQUFsQixrQkFBa0I7bUdBQWxCLGtCQUFrQixrRENQL0IseVRBTUE7MkZEQ2Esa0JBQWtCO2tCQUw5QixTQUFTOytCQUNFLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAndGxkLWxvYWRlcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RsZC1sb2FkZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3RsZC1sb2FkZXIuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGxkTG9hZGVyQ29tcG9uZW50IHtcclxufVxyXG4iLCJcclxuPGRpdiBjbGFzcz1cInRsZC1sb2FkZXIgYWNjZW50LWNvbG9yXCIgZnhMYXlvdXQ9XCJyb3dcIiBmeExheW91dEdhcD1cIjEwcHhcIj5cclxuICA8ZGl2IGNsYXNzPVwiYWNjZW50LWJnLWNvbG9yIHRsZC1sb2FkZXItZWxlbWVudCBlbGVtZW50LTFcIj48L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwiYWNjZW50LWJnLWNvbG9yIHRsZC1sb2FkZXItZWxlbWVudCBlbGVtZW50LTJcIj48L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwiYWNjZW50LWJnLWNvbG9yIHRsZC1sb2FkZXItZWxlbWVudCBlbGVtZW50LTNcIj48L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
import * as i2 from "@angular/flex-layout/flex";
|
|
5
|
+
import * as i3 from "@tilde-nlp/ngx-common";
|
|
6
|
+
import * as i4 from "@ngx-translate/core";
|
|
7
|
+
export class TldMessageComponent {
|
|
8
|
+
constructor() {
|
|
9
|
+
this.hideClose = false;
|
|
10
|
+
this.onClose = new EventEmitter();
|
|
11
|
+
this.ClearLabelCode = "CLEAR_NOTIFICATION";
|
|
12
|
+
}
|
|
13
|
+
get id() {
|
|
14
|
+
return this.message?.params?.id || "";
|
|
15
|
+
}
|
|
16
|
+
get closeButtonId() {
|
|
17
|
+
return this.message?.params?.closeButtonId || "";
|
|
18
|
+
}
|
|
19
|
+
ngOnInit() {
|
|
20
|
+
if (!this.message) {
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
this.className = this.message.type.toLowerCase();
|
|
24
|
+
}
|
|
25
|
+
close() {
|
|
26
|
+
if (this.message?.params?.parentId) {
|
|
27
|
+
const parent = document.getElementById(this.message.params.parentId);
|
|
28
|
+
if (parent) {
|
|
29
|
+
parent.focus();
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
this.onClose.emit();
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
TldMessageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TldMessageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
36
|
+
TldMessageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: TldMessageComponent, selector: "tld-message", inputs: { message: "message", contentProjection: "contentProjection", hideClose: "hideClose" }, outputs: { onClose: "onClose" }, ngImport: i0, template: "<div fxFlex fxLayout=\"row\" aria-live=\"polite\" class=\"info-message-box {{className}}\" [attr.id]=\"id\" >\r\n <div fxFlex class=\"message-box-text\" *ngIf=\"!contentProjection\" [innerHtml]=\"message.text | translate: message.params\"></div>\r\n <ng-content *ngIf=\"contentProjection\"></ng-content>\r\n <tld-close-button [ariaCode]=\"ClearLabelCode\" *ngIf=\"!hideClose\" (tldClick)=\"close()\" [attr.id]=\"closeButtonId\"></tld-close-button>\r\n</div>\r\n", styles: [".info-message-box{padding:.2em 0 .6em;width:100%;position:relative;background-color:#fff;border-top:2px solid;margin-top:5px;margin-bottom:15px;min-height:55px}.info-message-box.success{background-color:#f2fffb;border-top-color:#259e76;color:#006141}.info-message-box.error{color:#940007;background-color:#fdf3f3;border-top-color:#e5242e}.info-message-box.warning{border-top-color:#ff8c00;background-color:#fff5cc}.info-message-box tld-close-button{position:absolute;right:0}.info-message-box .message-box-text{padding-right:40px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i2.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "component", type: i3.CloseButtonComponent, selector: "tld-close-button", inputs: ["ariaCode", "disabled", "tooltip"], outputs: ["tldClick"] }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }] });
|
|
37
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TldMessageComponent, decorators: [{
|
|
38
|
+
type: Component,
|
|
39
|
+
args: [{ selector: 'tld-message', template: "<div fxFlex fxLayout=\"row\" aria-live=\"polite\" class=\"info-message-box {{className}}\" [attr.id]=\"id\" >\r\n <div fxFlex class=\"message-box-text\" *ngIf=\"!contentProjection\" [innerHtml]=\"message.text | translate: message.params\"></div>\r\n <ng-content *ngIf=\"contentProjection\"></ng-content>\r\n <tld-close-button [ariaCode]=\"ClearLabelCode\" *ngIf=\"!hideClose\" (tldClick)=\"close()\" [attr.id]=\"closeButtonId\"></tld-close-button>\r\n</div>\r\n", styles: [".info-message-box{padding:.2em 0 .6em;width:100%;position:relative;background-color:#fff;border-top:2px solid;margin-top:5px;margin-bottom:15px;min-height:55px}.info-message-box.success{background-color:#f2fffb;border-top-color:#259e76;color:#006141}.info-message-box.error{color:#940007;background-color:#fdf3f3;border-top-color:#e5242e}.info-message-box.warning{border-top-color:#ff8c00;background-color:#fff5cc}.info-message-box tld-close-button{position:absolute;right:0}.info-message-box .message-box-text{padding-right:40px}\n"] }]
|
|
40
|
+
}], ctorParameters: function () { return []; }, propDecorators: { message: [{
|
|
41
|
+
type: Input
|
|
42
|
+
}], contentProjection: [{
|
|
43
|
+
type: Input
|
|
44
|
+
}], hideClose: [{
|
|
45
|
+
type: Input
|
|
46
|
+
}], onClose: [{
|
|
47
|
+
type: Output
|
|
48
|
+
}] } });
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGxkLW1lc3NhZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGxkLXRyYW5zbGF0ZS9zcmMvbGliL21vZHVsZXMvdGxkLWNvbW1vbi9jb21wb25lbnRzL3RsZC1tZXNzYWdlL3RsZC1tZXNzYWdlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RsZC10cmFuc2xhdGUvc3JjL2xpYi9tb2R1bGVzL3RsZC1jb21tb24vY29tcG9uZW50cy90bGQtbWVzc2FnZS90bGQtbWVzc2FnZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7QUFRL0UsTUFBTSxPQUFPLG1CQUFtQjtJQUU5QjtRQUlTLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFDakIsWUFBTyxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBVWpELG1CQUFjLEdBQUcsb0JBQW9CLENBQUM7SUFmL0IsQ0FBQztJQU9qQixJQUFJLEVBQUU7UUFDSixPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUM7SUFDeEMsQ0FBQztJQUNELElBQUksYUFBYTtRQUNmLE9BQU8sSUFBSSxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsYUFBYSxJQUFJLEVBQUUsQ0FBQztJQUNuRCxDQUFDO0lBS0QsUUFBUTtRQUNOLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2pCLE9BQU87U0FDUjtRQUVELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDbkQsQ0FBQztJQUVELEtBQUs7UUFDSCxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRTtZQUNsQyxNQUFNLE1BQU0sR0FBRyxRQUFRLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3JFLElBQUksTUFBTSxFQUFFO2dCQUNWLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQzthQUNoQjtTQUNGO1FBRUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN0QixDQUFDOztnSEFwQ1UsbUJBQW1CO29HQUFuQixtQkFBbUIsb0xDUmhDLHVkQUtBOzJGREdhLG1CQUFtQjtrQkFML0IsU0FBUzsrQkFDRSxhQUFhOzBFQVFkLE9BQU87c0JBQWYsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDSSxPQUFPO3NCQUFoQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBJVGxkVHJhbnNsYXRlTWVzc2FnZSB9IGZyb20gJy4uLy4uL21vZGVscyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3RsZC1tZXNzYWdlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdGxkLW1lc3NhZ2UuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3RsZC1tZXNzYWdlLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFRsZE1lc3NhZ2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG4gIFxyXG4gIEBJbnB1dCgpIG1lc3NhZ2U6IElUbGRUcmFuc2xhdGVNZXNzYWdlO1xyXG4gIEBJbnB1dCgpIGNvbnRlbnRQcm9qZWN0aW9uOiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIGhpZGVDbG9zZSA9IGZhbHNlO1xyXG4gIEBPdXRwdXQoKSBvbkNsb3NlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgZ2V0IGlkKCkge1xyXG4gICAgcmV0dXJuIHRoaXMubWVzc2FnZT8ucGFyYW1zPy5pZCB8fCBcIlwiO1xyXG4gIH1cclxuICBnZXQgY2xvc2VCdXR0b25JZCgpIHtcclxuICAgIHJldHVybiB0aGlzLm1lc3NhZ2U/LnBhcmFtcz8uY2xvc2VCdXR0b25JZCB8fCBcIlwiO1xyXG4gIH1cclxuXHJcbiAgY2xhc3NOYW1lOiBzdHJpbmc7XHJcbiAgcmVhZG9ubHkgQ2xlYXJMYWJlbENvZGUgPSBcIkNMRUFSX05PVElGSUNBVElPTlwiO1xyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5tZXNzYWdlKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmNsYXNzTmFtZSA9IHRoaXMubWVzc2FnZS50eXBlLnRvTG93ZXJDYXNlKCk7XHJcbiAgfVxyXG5cclxuICBjbG9zZSgpIHtcclxuICAgIGlmICh0aGlzLm1lc3NhZ2U/LnBhcmFtcz8ucGFyZW50SWQpIHtcclxuICAgICAgY29uc3QgcGFyZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodGhpcy5tZXNzYWdlLnBhcmFtcy5wYXJlbnRJZCk7XHJcbiAgICAgIGlmIChwYXJlbnQpIHtcclxuICAgICAgICBwYXJlbnQuZm9jdXMoKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRoaXMub25DbG9zZS5lbWl0KCk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgZnhGbGV4IGZ4TGF5b3V0PVwicm93XCIgYXJpYS1saXZlPVwicG9saXRlXCIgY2xhc3M9XCJpbmZvLW1lc3NhZ2UtYm94IHt7Y2xhc3NOYW1lfX1cIiBbYXR0ci5pZF09XCJpZFwiID5cclxuICAgIDxkaXYgZnhGbGV4IGNsYXNzPVwibWVzc2FnZS1ib3gtdGV4dFwiICpuZ0lmPVwiIWNvbnRlbnRQcm9qZWN0aW9uXCIgW2lubmVySHRtbF09XCJtZXNzYWdlLnRleHQgfCB0cmFuc2xhdGU6IG1lc3NhZ2UucGFyYW1zXCI+PC9kaXY+XHJcbiAgICA8bmctY29udGVudCAqbmdJZj1cImNvbnRlbnRQcm9qZWN0aW9uXCI+PC9uZy1jb250ZW50PlxyXG4gIDx0bGQtY2xvc2UtYnV0dG9uIFthcmlhQ29kZV09XCJDbGVhckxhYmVsQ29kZVwiICAqbmdJZj1cIiFoaWRlQ2xvc2VcIiAodGxkQ2xpY2spPVwiY2xvc2UoKVwiIFthdHRyLmlkXT1cImNsb3NlQnV0dG9uSWRcIj48L3RsZC1jbG9zZS1idXR0b24+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/material/icon";
|
|
4
|
+
import * as i2 from "@angular/flex-layout/flex";
|
|
5
|
+
import * as i3 from "@ngx-translate/core";
|
|
6
|
+
export class TldTranslateAchievementComponent {
|
|
7
|
+
constructor() {
|
|
8
|
+
this.link = "https://tilde.com/news/tilde-machine-translation-technology-announced-worlds-most-accurate-wmt-competition";
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
TldTranslateAchievementComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TldTranslateAchievementComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
12
|
+
TldTranslateAchievementComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: TldTranslateAchievementComponent, selector: "tld-translate-achievement", ngImport: i0, template: "<div>\r\n <div fxLayout=\"row\">\r\n <mat-icon class=\"nmt-icon\" svgIcon=\"best_mt\" color=\"accent\" aria-hidden=\"false\" aria-label=\"\"></mat-icon>\r\n <div fxLayout=\"column\" fxLayoutAlign=\"center start\" class=\"best-mt\">\r\n {{ 'TLD_TRANSLATE.BEST_NMT' | translate }}\r\n <br class=\"d-none d-lg-block\">\r\n <a class=\"achievement-link\" [attr.href]=\"link\"\r\n target=\"_blank\">\r\n {{ 'TLD_TRANSLATE.BEST_NMT_MORE' | translate }}\r\n </a>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["a{text-decoration:none}a:hover{text-decoration:underline}.nmt-icon{height:70px;width:100px}.achievement-link{font-size:.8em;font-weight:500}.best-mt{color:#5a6672;font-size:12px;font-weight:400}\n"], dependencies: [{ kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i2.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i2.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] });
|
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TldTranslateAchievementComponent, decorators: [{
|
|
14
|
+
type: Component,
|
|
15
|
+
args: [{ selector: 'tld-translate-achievement', template: "<div>\r\n <div fxLayout=\"row\">\r\n <mat-icon class=\"nmt-icon\" svgIcon=\"best_mt\" color=\"accent\" aria-hidden=\"false\" aria-label=\"\"></mat-icon>\r\n <div fxLayout=\"column\" fxLayoutAlign=\"center start\" class=\"best-mt\">\r\n {{ 'TLD_TRANSLATE.BEST_NMT' | translate }}\r\n <br class=\"d-none d-lg-block\">\r\n <a class=\"achievement-link\" [attr.href]=\"link\"\r\n target=\"_blank\">\r\n {{ 'TLD_TRANSLATE.BEST_NMT_MORE' | translate }}\r\n </a>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["a{text-decoration:none}a:hover{text-decoration:underline}.nmt-icon{height:70px;width:100px}.achievement-link{font-size:.8em;font-weight:500}.best-mt{color:#5a6672;font-size:12px;font-weight:400}\n"] }]
|
|
16
|
+
}] });
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGxkLXRyYW5zbGF0ZS1hY2hpZXZlbWVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90bGQtdHJhbnNsYXRlL3NyYy9saWIvbW9kdWxlcy90bGQtY29tbW9uL2NvbXBvbmVudHMvdGxkLXRyYW5zbGF0ZS1hY2hpZXZlbWVudC90bGQtdHJhbnNsYXRlLWFjaGlldmVtZW50LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RsZC10cmFuc2xhdGUvc3JjL2xpYi9tb2R1bGVzL3RsZC1jb21tb24vY29tcG9uZW50cy90bGQtdHJhbnNsYXRlLWFjaGlldmVtZW50L3RsZC10cmFuc2xhdGUtYWNoaWV2ZW1lbnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQTs7Ozs7QUFPekMsTUFBTSxPQUFPLGdDQUFnQztJQUw3QztRQU1FLFNBQUksR0FBRyw0R0FBNEcsQ0FBQztLQUNySDs7NkhBRlksZ0NBQWdDO2lIQUFoQyxnQ0FBZ0MsaUVDUDdDLDBoQkFhQTsyRkROYSxnQ0FBZ0M7a0JBTDVDLFNBQVM7K0JBQ0UsMkJBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAndGxkLXRyYW5zbGF0ZS1hY2hpZXZlbWVudCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RsZC10cmFuc2xhdGUtYWNoaWV2ZW1lbnQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3RsZC10cmFuc2xhdGUtYWNoaWV2ZW1lbnQuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGxkVHJhbnNsYXRlQWNoaWV2ZW1lbnRDb21wb25lbnR7XHJcbiAgbGluayA9IFwiaHR0cHM6Ly90aWxkZS5jb20vbmV3cy90aWxkZS1tYWNoaW5lLXRyYW5zbGF0aW9uLXRlY2hub2xvZ3ktYW5ub3VuY2VkLXdvcmxkcy1tb3N0LWFjY3VyYXRlLXdtdC1jb21wZXRpdGlvblwiO1xyXG59XHJcbiIsIjxkaXY+XHJcbiAgPGRpdiBmeExheW91dD1cInJvd1wiPlxyXG4gICAgPG1hdC1pY29uIGNsYXNzPVwibm10LWljb25cIiBzdmdJY29uPVwiYmVzdF9tdFwiIGNvbG9yPVwiYWNjZW50XCIgYXJpYS1oaWRkZW49XCJmYWxzZVwiIGFyaWEtbGFiZWw9XCJcIj48L21hdC1pY29uPlxyXG4gICAgPGRpdiBmeExheW91dD1cImNvbHVtblwiIGZ4TGF5b3V0QWxpZ249XCJjZW50ZXIgc3RhcnRcIiBjbGFzcz1cImJlc3QtbXRcIj5cclxuICAgICAge3sgJ1RMRF9UUkFOU0xBVEUuQkVTVF9OTVQnIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgIDxiciBjbGFzcz1cImQtbm9uZSBkLWxnLWJsb2NrXCI+XHJcbiAgICAgIDxhIGNsYXNzPVwiYWNoaWV2ZW1lbnQtbGlua1wiIFthdHRyLmhyZWZdPVwibGlua1wiXHJcbiAgICAgICAgIHRhcmdldD1cIl9ibGFua1wiPlxyXG4gICAgICAgIHt7ICdUTERfVFJBTlNMQVRFLkJFU1RfTk1UX01PUkUnIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgIDwvYT5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
|
package/esm2020/lib/modules/tld-common/components/translate-button/tld-translate-button.service.mjs
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { EventEmitter, Injectable } from '@angular/core';
|
|
2
|
+
import { Subject } from 'rxjs';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class TldTranslateButtonService {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.onClick = new Subject();
|
|
7
|
+
this.pulseAnimation = new EventEmitter();
|
|
8
|
+
}
|
|
9
|
+
actionButtonClicked() {
|
|
10
|
+
this.onClick.next(null);
|
|
11
|
+
}
|
|
12
|
+
getActionClick() {
|
|
13
|
+
return this.onClick.asObservable();
|
|
14
|
+
}
|
|
15
|
+
pulseButton() {
|
|
16
|
+
this.pulseAnimation.next(null);
|
|
17
|
+
}
|
|
18
|
+
onPulseAnimation() {
|
|
19
|
+
return this.pulseAnimation.asObservable();
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
TldTranslateButtonService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TldTranslateButtonService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
23
|
+
TldTranslateButtonService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TldTranslateButtonService, providedIn: 'root' });
|
|
24
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TldTranslateButtonService, decorators: [{
|
|
25
|
+
type: Injectable,
|
|
26
|
+
args: [{
|
|
27
|
+
providedIn: 'root'
|
|
28
|
+
}]
|
|
29
|
+
}], ctorParameters: function () { return []; } });
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGxkLXRyYW5zbGF0ZS1idXR0b24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RsZC10cmFuc2xhdGUvc3JjL2xpYi9tb2R1bGVzL3RsZC1jb21tb24vY29tcG9uZW50cy90cmFuc2xhdGUtYnV0dG9uL3RsZC10cmFuc2xhdGUtYnV0dG9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFLL0IsTUFBTSxPQUFPLHlCQUF5QjtJQUtwQztRQUhRLFlBQU8sR0FBRyxJQUFJLE9BQU8sRUFBTyxDQUFDO1FBQ3BCLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUVyQyxDQUFDO0lBRWpCLG1CQUFtQjtRQUNqQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUN6QixDQUFDO0lBRUQsY0FBYztRQUNaLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFBO0lBQ2hDLENBQUM7SUFFRCxnQkFBZ0I7UUFDZCxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDNUMsQ0FBQzs7c0hBckJVLHlCQUF5QjswSEFBekIseUJBQXlCLGNBRnhCLE1BQU07MkZBRVAseUJBQXlCO2tCQUhyQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV2ZW50RW1pdHRlciwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUbGRUcmFuc2xhdGVCdXR0b25TZXJ2aWNlIHtcclxuXHJcbiAgcHJpdmF0ZSBvbkNsaWNrID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgcHVsc2VBbmltYXRpb24gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gIGFjdGlvbkJ1dHRvbkNsaWNrZWQoKSB7XHJcbiAgICB0aGlzLm9uQ2xpY2submV4dChudWxsKVxyXG4gIH1cclxuXHJcbiAgZ2V0QWN0aW9uQ2xpY2soKSB7XHJcbiAgICByZXR1cm4gdGhpcy5vbkNsaWNrLmFzT2JzZXJ2YWJsZSgpO1xyXG4gIH1cclxuXHJcbiAgcHVsc2VCdXR0b24oKXtcclxuICAgIHRoaXMucHVsc2VBbmltYXRpb24ubmV4dChudWxsKVxyXG4gIH1cclxuXHJcbiAgb25QdWxzZUFuaW1hdGlvbigpe1xyXG4gICAgcmV0dXJuIHRoaXMucHVsc2VBbmltYXRpb24uYXNPYnNlcnZhYmxlKCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
package/esm2020/lib/modules/tld-common/components/translate-button/translate-button.component.mjs
ADDED
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import { pulseAnimation } from '../../animations/pulse.animation';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "./tld-translate-button.service";
|
|
5
|
+
import * as i2 from "@angular/material/button";
|
|
6
|
+
import * as i3 from "@ngx-translate/core";
|
|
7
|
+
export class TldTranslateButtonComponent {
|
|
8
|
+
constructor(service) {
|
|
9
|
+
this.service = service;
|
|
10
|
+
this.clicked = new EventEmitter();
|
|
11
|
+
this.maxPulseCount = 3;
|
|
12
|
+
this.animationState = false;
|
|
13
|
+
}
|
|
14
|
+
ngOnInit() {
|
|
15
|
+
this.subscription = this.translateButtonAnimation();
|
|
16
|
+
}
|
|
17
|
+
ngOnDestroy() {
|
|
18
|
+
this.subscription.unsubscribe();
|
|
19
|
+
}
|
|
20
|
+
actionClick() {
|
|
21
|
+
this.service.actionButtonClicked();
|
|
22
|
+
this.clicked.next(null);
|
|
23
|
+
}
|
|
24
|
+
onAnimationEnd() {
|
|
25
|
+
this.pulse();
|
|
26
|
+
}
|
|
27
|
+
translateButtonAnimation() {
|
|
28
|
+
return this.service.onPulseAnimation()
|
|
29
|
+
.subscribe(() => {
|
|
30
|
+
if (this.enablePulseAnimation) {
|
|
31
|
+
this.pulseCounter = 0;
|
|
32
|
+
this.pulse();
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
pulse() {
|
|
37
|
+
if (this.pulseCounter < this.maxPulseCount && (this.pulseCounter === 0 || !this.disabled)) {
|
|
38
|
+
this.animationState = !this.animationState;
|
|
39
|
+
this.pulseCounter += 1;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
TldTranslateButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TldTranslateButtonComponent, deps: [{ token: i1.TldTranslateButtonService }], target: i0.ɵɵFactoryTarget.Component });
|
|
44
|
+
TldTranslateButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: TldTranslateButtonComponent, selector: "tld-translate-button", inputs: { disabled: "disabled", enablePulseAnimation: "enablePulseAnimation" }, outputs: { clicked: "clicked" }, ngImport: i0, template: "<button id=\"tld-translate-button\" [@pulse]=\"animationState\" (@pulse.done)=\"onAnimationEnd()\" class=\"translate-button text-l\" mat-flat-button\r\n color=\"accent\" [disabled]=\"disabled\" (click)=\"actionClick()\">{{'TLD_TRANSLATE.TOOLTIP_ACTION' | translate}}</button>", styles: [".semi-bold,.text-s-semi-bold,.text-m-semi-bold,.text-l-semi-bold,.text-xl-semi-bold,.text-2-xl,.text-3-xl,.text-4-xl{font-weight:600}@media (min-width: 600px){.text-4-xl{font-size:2.75rem;line-height:3.375rem}}@media (min-width: 0) and (max-width: 599.9px){.text-4-xl{font-size:2rem;line-height:2.625rem}}.text-3-xl{font-size:2rem;line-height:2.625rem}.text-2-xl{font-size:1.5rem;line-height:2.125rem}.text-xl,.text-xl-semi-bold{font-size:1.25rem;line-height:2rem}.text-l,.translate-button,.text-l-semi-bold{font-size:1rem;line-height:1.625rem}.text-m,.text-m-semi-bold{font-size:.875rem;line-height:1.4375rem}.text-s,.text-s-semi-bold{font-size:.75rem;line-height:1.25rem}.translate-button{width:100%;height:100%;padding:.4375rem 1.5rem}\n"], dependencies: [{ kind: "component", type: i2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], animations: [
|
|
45
|
+
pulseAnimation
|
|
46
|
+
] });
|
|
47
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TldTranslateButtonComponent, decorators: [{
|
|
48
|
+
type: Component,
|
|
49
|
+
args: [{ selector: 'tld-translate-button', animations: [
|
|
50
|
+
pulseAnimation
|
|
51
|
+
], template: "<button id=\"tld-translate-button\" [@pulse]=\"animationState\" (@pulse.done)=\"onAnimationEnd()\" class=\"translate-button text-l\" mat-flat-button\r\n color=\"accent\" [disabled]=\"disabled\" (click)=\"actionClick()\">{{'TLD_TRANSLATE.TOOLTIP_ACTION' | translate}}</button>", styles: [".semi-bold,.text-s-semi-bold,.text-m-semi-bold,.text-l-semi-bold,.text-xl-semi-bold,.text-2-xl,.text-3-xl,.text-4-xl{font-weight:600}@media (min-width: 600px){.text-4-xl{font-size:2.75rem;line-height:3.375rem}}@media (min-width: 0) and (max-width: 599.9px){.text-4-xl{font-size:2rem;line-height:2.625rem}}.text-3-xl{font-size:2rem;line-height:2.625rem}.text-2-xl{font-size:1.5rem;line-height:2.125rem}.text-xl,.text-xl-semi-bold{font-size:1.25rem;line-height:2rem}.text-l,.translate-button,.text-l-semi-bold{font-size:1rem;line-height:1.625rem}.text-m,.text-m-semi-bold{font-size:.875rem;line-height:1.4375rem}.text-s,.text-s-semi-bold{font-size:.75rem;line-height:1.25rem}.translate-button{width:100%;height:100%;padding:.4375rem 1.5rem}\n"] }]
|
|
52
|
+
}], ctorParameters: function () { return [{ type: i1.TldTranslateButtonService }]; }, propDecorators: { disabled: [{
|
|
53
|
+
type: Input
|
|
54
|
+
}], enablePulseAnimation: [{
|
|
55
|
+
type: Input
|
|
56
|
+
}], clicked: [{
|
|
57
|
+
type: Output
|
|
58
|
+
}] } });
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRlLWJ1dHRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90bGQtdHJhbnNsYXRlL3NyYy9saWIvbW9kdWxlcy90bGQtY29tbW9uL2NvbXBvbmVudHMvdHJhbnNsYXRlLWJ1dHRvbi90cmFuc2xhdGUtYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RsZC10cmFuc2xhdGUvc3JjL2xpYi9tb2R1bGVzL3RsZC1jb21tb24vY29tcG9uZW50cy90cmFuc2xhdGUtYnV0dG9uL3RyYW5zbGF0ZS1idXR0b24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFMUYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7OztBQVdsRSxNQUFNLE9BQU8sMkJBQTJCO0lBWXRDLFlBQW9CLE9BQWtDO1FBQWxDLFlBQU8sR0FBUCxPQUFPLENBQTJCO1FBUjVDLFlBQU8sR0FBdUIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUcxQyxrQkFBYSxHQUFHLENBQUMsQ0FBQztRQUVuQyxtQkFBYyxHQUFZLEtBQUssQ0FBQztJQUcwQixDQUFDO0lBRTNELFFBQVE7UUFDTixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO0lBQ3RELENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxPQUFPLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUNuQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBRUQsY0FBYztRQUNaLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNmLENBQUM7SUFFTyx3QkFBd0I7UUFDOUIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixFQUFFO2FBQ25DLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLElBQUksQ0FBQyxvQkFBb0IsRUFBRTtnQkFDN0IsSUFBSSxDQUFDLFlBQVksR0FBRyxDQUFDLENBQUM7Z0JBQ3RCLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQzthQUNkO1FBQ0gsQ0FBQyxDQUFDLENBQUE7SUFDTixDQUFDO0lBRU8sS0FBSztRQUNYLElBQUksSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsYUFBYSxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDekYsSUFBSSxDQUFDLGNBQWMsR0FBRyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUM7WUFDM0MsSUFBSSxDQUFDLFlBQVksSUFBSSxDQUFDLENBQUM7U0FDeEI7SUFDSCxDQUFDOzt3SEE5Q1UsMkJBQTJCOzRHQUEzQiwyQkFBMkIsNktDYnhDLHdSQUN3SCx5b0NEUTFHO1FBQ1YsY0FBYztLQUNmOzJGQUVVLDJCQUEyQjtrQkFSdkMsU0FBUzsrQkFDRSxzQkFBc0IsY0FHcEI7d0JBQ1YsY0FBYztxQkFDZjtnSEFJUSxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLG9CQUFvQjtzQkFBNUIsS0FBSztnQkFDSSxPQUFPO3NCQUFoQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBwdWxzZUFuaW1hdGlvbiB9IGZyb20gJy4uLy4uL2FuaW1hdGlvbnMvcHVsc2UuYW5pbWF0aW9uJztcclxuaW1wb3J0IHsgVGxkVHJhbnNsYXRlQnV0dG9uU2VydmljZSB9IGZyb20gJy4vdGxkLXRyYW5zbGF0ZS1idXR0b24uc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3RsZC10cmFuc2xhdGUtYnV0dG9uJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdHJhbnNsYXRlLWJ1dHRvbi5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vdHJhbnNsYXRlLWJ1dHRvbi5jb21wb25lbnQuc2NzcyddLFxyXG4gIGFuaW1hdGlvbnM6IFtcclxuICAgIHB1bHNlQW5pbWF0aW9uXHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGxkVHJhbnNsYXRlQnV0dG9uQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95LCBPbkluaXQge1xyXG5cclxuICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbjtcclxuICBASW5wdXQoKSBlbmFibGVQdWxzZUFuaW1hdGlvbjogYm9vbGVhbjtcclxuICBAT3V0cHV0KCkgY2xpY2tlZDogRXZlbnRFbWl0dGVyPG51bGw+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBwcml2YXRlIHB1bHNlQ291bnRlcjtcclxuICBwcml2YXRlIHJlYWRvbmx5IG1heFB1bHNlQ291bnQgPSAzO1xyXG5cclxuICBhbmltYXRpb25TdGF0ZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc2VydmljZTogVGxkVHJhbnNsYXRlQnV0dG9uU2VydmljZSkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdWJzY3JpcHRpb24gPSB0aGlzLnRyYW5zbGF0ZUJ1dHRvbkFuaW1hdGlvbigpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgYWN0aW9uQ2xpY2soKSB7XHJcbiAgICB0aGlzLnNlcnZpY2UuYWN0aW9uQnV0dG9uQ2xpY2tlZCgpO1xyXG4gICAgdGhpcy5jbGlja2VkLm5leHQobnVsbCk7XHJcbiAgfVxyXG5cclxuICBvbkFuaW1hdGlvbkVuZCgpIHtcclxuICAgIHRoaXMucHVsc2UoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdHJhbnNsYXRlQnV0dG9uQW5pbWF0aW9uKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc2VydmljZS5vblB1bHNlQW5pbWF0aW9uKClcclxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgaWYgKHRoaXMuZW5hYmxlUHVsc2VBbmltYXRpb24pIHtcclxuICAgICAgICAgIHRoaXMucHVsc2VDb3VudGVyID0gMDtcclxuICAgICAgICAgIHRoaXMucHVsc2UoKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHB1bHNlKCkge1xyXG4gICAgaWYgKHRoaXMucHVsc2VDb3VudGVyIDwgdGhpcy5tYXhQdWxzZUNvdW50ICYmICh0aGlzLnB1bHNlQ291bnRlciA9PT0gMCB8fCAhdGhpcy5kaXNhYmxlZCkpIHtcclxuICAgICAgdGhpcy5hbmltYXRpb25TdGF0ZSA9ICF0aGlzLmFuaW1hdGlvblN0YXRlO1xyXG4gICAgICB0aGlzLnB1bHNlQ291bnRlciArPSAxO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8YnV0dG9uIGlkPVwidGxkLXRyYW5zbGF0ZS1idXR0b25cIiBbQHB1bHNlXT1cImFuaW1hdGlvblN0YXRlXCIgKEBwdWxzZS5kb25lKT1cIm9uQW5pbWF0aW9uRW5kKClcIiBjbGFzcz1cInRyYW5zbGF0ZS1idXR0b24gdGV4dC1sXCIgbWF0LWZsYXQtYnV0dG9uXHJcbiAgICBjb2xvcj1cImFjY2VudFwiIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiIChjbGljayk9XCJhY3Rpb25DbGljaygpXCI+e3snVExEX1RSQU5TTEFURS5UT09MVElQX0FDVElPTicgfCB0cmFuc2xhdGV9fTwvYnV0dG9uPiJdfQ==
|