{"version":3,"sources":["Themes/Default/Content/ts/Shared/ConfirmationModal/confirmation-modal.ts"],"names":[],"mappings":"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","file":"confirmation-modal.js","sourcesContent":["import * as ko from 'knockout';\nimport * as localisationHelper from 'localisationHelper';\nimport * as _ from 'underscore';\r\n\r\nimport \"Content/ts/Shared/Buttons/StandardButtons/StandardButtonsBase\";\r\nimport \"Content/ts/Shared/Buttons/StandardButtons/Inverse/button-inverse\";\r\n\nexport interface ConfirmationConfigurableText {\n Section: string;\r\n Resource: string;\r\n}\n\nexport interface IConfirmationModalParameters {\n ShowModal: KnockoutObservable;\n ModalTitle: string;\r\n ModalTitleConfigurableText: ConfirmationConfigurableText;\r\n ModalContent: string | KnockoutObservable;\r\n ModalContentConfigurableText: ConfirmationConfigurableText;\r\n ConfirmationButtonText: string;\r\n ConfirmationButtonConfigurableText: ConfirmationConfigurableText;\r\n CancelButtonText: string;\r\n ShowConfirmationButton: boolean;\r\n ShowCancelButton: boolean;\r\n CancelButtonConfigurableText: ConfirmationConfigurableText;\r\n OnConfirm: any;\r\n OnCancel: any;\r\n}\n\nclass ConfirmationModalVM {\n showModal: KnockoutObservable;\r\n showConfirmationButton: KnockoutObservable;\r\n showCancelButton: KnockoutObservable;\r\n modalActionFocus: KnockoutObservable;\r\n modalTitle: string;\r\n modalContent: string | KnockoutObservable;\r\n confirmationButtonText: string;\r\n cancelButtonText: string;\r\n onConfirm: any;\r\n onCancel: any;\r\n subscriptions: KnockoutSubscription[];\n\n constructor(params: IConfirmationModalParameters) {\n this.showModal = params.ShowModal;\n this.onConfirm = params.OnConfirm;\r\n this.onCancel = params.OnCancel;\n\n this.subscriptions = [];\n\n this.modalContent = params.ModalContentConfigurableText\r\n ? localisationHelper.getString(params.ModalContentConfigurableText.Section, params.ModalContentConfigurableText.Resource)\r\n : params.ModalContent;\r\n\r\n this.modalTitle = params.ModalTitleConfigurableText\r\n ? localisationHelper.getString(params.ModalTitleConfigurableText.Section, params.ModalTitleConfigurableText.Resource)\r\n : params.ModalTitle;\r\n\r\n this.confirmationButtonText = params.ConfirmationButtonConfigurableText\r\n ? localisationHelper.getString(params.ConfirmationButtonConfigurableText.Section, params.ConfirmationButtonConfigurableText.Resource)\r\n : params.ConfirmationButtonText || \"\";\r\n\r\n this.cancelButtonText = params.CancelButtonConfigurableText\r\n ? localisationHelper.getString(params.CancelButtonConfigurableText.Section, params.CancelButtonConfigurableText.Resource)\r\n : params.CancelButtonText;\r\n\n this.showConfirmationButton = params.ShowConfirmationButton !== null && params.ShowConfirmationButton !== undefined\r\n ? ko.observable(params.ShowConfirmationButton)\r\n : ko.observable(true);\r\n\n this.showCancelButton = params.ShowCancelButton !== null && params.ShowCancelButton !== undefined\r\n ? ko.observable(params.ShowCancelButton)\r\n : ko.observable(true);\n\n this.modalActionFocus = ko.observable(false);\n\n this.setupSubscribes();\n }\n\n cancel = (): void => {\n if (this.onCancel) {\r\n this.onCancel();\r\n }\r\n this.showModal(false);\r\n }\n\n confirm = (): void => {\n if (this.onConfirm) {\r\n this.onConfirm();\r\n }\r\n this.showModal(false);\r\n }\n\n private setupSubscribes() {\n this.subscriptions.push(this.showModal.subscribe((value: boolean) => {\n this.modalActionFocus(value);\n }));\n }\n\n dispose() {\n _.each(this.subscriptions, (sub: KnockoutSubscription) => sub.dispose());\n }\n}\n\nconst componentName = 'confirmation-modal'\nko.components.unregister(componentName);\nko.components.register(componentName, {\n viewModel: ConfirmationModalVM,\n template: { require: `text!/Themes/Default/Content/ts/Shared/ConfirmationModal/${componentName}.html` }\n});"]}