{"version":3,"file":"form-utility.js","sourceRoot":"","sources":["../../../Scripts/commons/form-utility.ts"],"names":[],"mappings":"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","sourcesContent":["namespace Seac.Commons {\r\n export class FormUtility { \r\n /**\r\n * Dato un elemento del DOM disabilita gli elementi discendenti di tipo input che non lo siano già. Marca poi\r\n * gli elementi disabilitati con un attributo del tipo data-disabled-randomString valorizzato ad uno in modo da poterli successivamente\r\n * identificare. Restituisce la stringa random usata per effettuare la marcatura.\r\n * @param parentElement Elemento del DOM di cui si vogliono disabilitare i discendenti che già non lo siano\r\n * @returns Stringa random utilizzata per costruire l'attributo di marcatura\r\n */\r\n public static disableAndMarkDescendantInputFields(parentElement: JQuery): string {\r\n return this.changeDisabledStatusAndMarkInputFields(parentElement, true);\r\n }\r\n\r\n /**\r\n * Dato un elemento del DOM abilita gli elementi discendenti di tipo input che non lo siano già. Marca poi\r\n * gli elementi abilitati con un attributo del tipo data-enabled-randomString valorizzato ad uno in modo da poterli successivamente\r\n * identificare. Restituisce la stringa random usata per effettuare la marcatura.\r\n * @param parentElement Elemento del DOM di cui si vogliono abilitare i discendenti che già non lo siano\r\n * @returns Stringa random utilizzata per costruire l'attributo di marcatura\r\n */\r\n public static enableAndMarkDescendantInputFields(parentElement: JQuery): string {\r\n return this.changeDisabledStatusAndMarkInputFields(parentElement, false);\r\n }\r\n\r\n /**\r\n * Dato un elemento del DOM disabilita gli elementi discendenti di tipo button che non lo siano già. Marca poi\r\n * gli elementi disabilitati con un attributo del tipo data-disabled-randomString valorizzato ad uno in modo da poterli successivamente\r\n * identificare. Restituisce la stringa random usata per effettuare la marcatura.\r\n * @param parentElement Elemento del DOM di cui si vogliono disabilitare i discendenti che già non lo siano\r\n * @returns Stringa random utilizzata per costruire l'attributo di marcatura\r\n */\r\n public static disableAndMarkDescendantButtons(parentElement: JQuery, ...cssSelector: Array): string {\r\n return this.changeDisabledStatusAndMarkButtons(parentElement, true, ...cssSelector);\r\n }\r\n\r\n /**\r\n * Dato un elemento del DOM abilita gli elementi discendenti di tipo button che non lo siano già. Marca poi\r\n * gli elementi abilitati con un attributo del tipo data-enabled-randomString valorizzato ad uno in modo da poterli successivamente\r\n * identificare. Restituisce la stringa random usata per effettuare la marcatura.\r\n * @param parentElement Elemento del DOM di cui si vogliono abilitare i discendenti che già non lo siano\r\n * @returns Stringa random utilizzata per costruire l'attributo di marcatura\r\n */\r\n public static enableAndMarkDescendantButtons(parentElement: JQuery, ...cssSelector: Array): string {\r\n return this.changeDisabledStatusAndMarkButtons(parentElement, false, ...cssSelector);\r\n }\r\n\r\n /**\r\n * Dato un elemento del DOM riabilita gli elementi discendenti di tipo input precedentemente marcati con l'identificativo passato in input (attributo\r\n * data-disabled-disableIdentifier = 1). Se l'identificativo non è valorizzato vengono riabilitati tutti gli elementi che abbiano un attributo del tipo\r\n * data-disabled-* (elementi disabilitati in un qualunque momento)\r\n * @param parentElement Elemento del DOM di cui si vogliono riabilitare i discendenti opportunamente marcati \r\n * @param disableIdentifier Identificativo degli elementi precedentemente disabilitati\r\n */\r\n public static reEnableFormFields(parentElement: JQuery, disableIdentifier: string): void {\r\n if (disableIdentifier) {\r\n parentElement.find(`${Seac.Commons.Constants.inputElement}[${Seac.Commons.Constants.dataPrefix}${Seac.Commons.Constants.disabled}-${disableIdentifier}]`).each((_, inputElement: any) => {\r\n this.changeDisabledStatusInputElement($(inputElement), false)\r\n this.removeMarkToElement($(inputElement), true, disableIdentifier);\r\n });\r\n }else {\r\n parentElement.find(Seac.Commons.Constants.inputElement).each((_, inputElement: any) => {\r\n // Scorro tutti gli attributi dell'elemento per verificare se lo stesso è stato disabilitato in un qualunque momento (presenza dell'attributo data-disabled-*)\r\n for (let dataAttributeName in $(inputElement).data()) {\r\n if (dataAttributeName.indexOf(`${Seac.Commons.Constants.dataPrefix}${Seac.Commons.Constants.disabled}-`) == 0) {\r\n this.changeDisabledStatusInputElement($(inputElement), false)\r\n this.removeMarkToElement($(inputElement), true, disableIdentifier);\r\n }\r\n }\r\n });\r\n }\r\n }\r\n\r\n /**\r\n * Disabilita l'elemento jQuery che non lo siano già.\r\n * Marca poi gli elementi disabilitati con un attributo del tipo data-disabled-randomString valorizzato ad uno in modo da poterli successivamente\r\n * identificare. Restituisce la stringa random usata per effettuare la marcatura.\r\n * @param jElement Elemento jQuery da disabilitare\r\n * @returns Stringa random utilizzata per costruire l'attributo di marcatura\r\n */\r\n public static disableAndMarkElement(jElement: JQuery): string {\r\n return this.changeDisabledStatusAndMarkElement(jElement, true);\r\n }\r\n\r\n /**\r\n * Dato un elemento jQuery lo riabilita se precedentemente marcato con l'identificativo passato in input (attributo\r\n * data-disabled-disableIdentifier = 1). Se l'identificativo non è valorizzato vengono riabilitati tutti gli elementi che abbiano un attributo del tipo\r\n * data-disabled-* (elementi disabilitati in un qualunque momento)\r\n * @param jElement Elemento jQuery da riabilitare\r\n * @param disableIdentifier Identificativo degli elementi precedentemente disabilitati\r\n */\r\n public static reEnableElement(jElement: JQuery, disableIdentifier: string): void {\r\n if (disableIdentifier) {\r\n jElement.filter(`[${Seac.Commons.Constants.dataPrefix}${Seac.Commons.Constants.disabled}-${disableIdentifier}]`).each((_, element: any) => {\r\n this.changeDisabledStatusAndMarkElement($(element), false);\r\n this.removeMarkToElement($(element), true, disableIdentifier);\r\n });\r\n }else {\r\n jElement.each((_, element: any) => {\r\n // Scorro tutti gli attributi dell'elemento per verificare se lo stesso è stato disabilitato in un qualunque momento (presenza dell'attributo data-disabled-*)\r\n for (let dataAttributeName in $(element).data()) {\r\n if (dataAttributeName.indexOf(`${Seac.Commons.Constants.dataPrefix}${Seac.Commons.Constants.disabled}-`) == 0) {\r\n this.changeDisabledStatusAndMarkElement($(element), false);\r\n this.removeMarkToElement($(element), true, disableIdentifier);\r\n }\r\n }\r\n });\r\n }\r\n }\r\n\r\n /**\r\n * Dato un elemento del DOM riabilita gli elementi discendenti di tipo button precedentemente marcati con l'identificativo passato in input (attributo\r\n * data-disabled-disableIdentifier = 1). Se l'identificativo non è valorizzato vengono riabilitati tutti gli elementi che abbiano un attributo del tipo\r\n * data-disabled-* (elementi disabilitati in un qualunque momento)\r\n * @param parentElement Elemento del DOM di cui si vogliono riabilitare i discendenti opportunamente marcati \r\n * @param disableIdentifier Identificativo degli elementi precedentemente disabilitati\r\n */\r\n public static reEnableButtons(parentElement: JQuery, disableIdentifier: string): void {\r\n if (disableIdentifier) {\r\n parentElement.find(`${Seac.Commons.Constants.button}[${Seac.Commons.Constants.dataPrefix}${Seac.Commons.Constants.disabled}-${disableIdentifier}]`).each((_, buttonElement: any) => {\r\n this.changeDisabledStatusElement($(buttonElement), false)\r\n this.removeMarkToElement($(buttonElement), true, disableIdentifier);\r\n });\r\n }else {\r\n parentElement.find(Seac.Commons.Constants.button).each((_, buttonElement: any) => {\r\n // Scorro tutti gli attributi dell'elemento per verificare se lo stesso è stato disabilitato in un qualunque momento (presenza dell'attributo data-disabled-*)\r\n for (let dataAttributeName in $(buttonElement).data()) {\r\n if (dataAttributeName.indexOf(`${Seac.Commons.Constants.dataPrefix}${Seac.Commons.Constants.disabled}-`) == 0) {\r\n this.changeDisabledStatusElement($(buttonElement), false)\r\n this.removeMarkToElement($(buttonElement), true, disableIdentifier);\r\n }\r\n }\r\n });\r\n }\r\n }\r\n\r\n /**\r\n * Dato un elemento del DOM reimposta a disabilitati gli elementi discendenti di tipo input precedentemente marcati con l'identificativo passato in input (attributo\r\n * data-enabled-enableIdentifier = 1). Se l'identificativo non è valorizzato vengono nuovamente disabilitati tutti gli elementi che abbiano un attributo del tipo\r\n * data-disabled-* (elementi disabilitati in un qualunque momento)\r\n * @param parentElement Elemento del DOM di cui si vogliono disabilitare nuovamente i discendenti opportunamente marcati\r\n * @param enableIdentifier Identificativo degli elementi precedentemente abilitati\r\n */\r\n public static reDisableFormFields(formInstance: JQuery, enableIdentifier: string): void {\r\n if (enableIdentifier) {\r\n formInstance.find(`${Seac.Commons.Constants.inputElement}[${Seac.Commons.Constants.dataPrefix}${Seac.Commons.Constants.enabled}-${enableIdentifier}]`).each((_, inputElement: any) => {\r\n this.changeDisabledStatusInputElement($(inputElement), true);\r\n this.removeMarkToElement($(inputElement), false, enableIdentifier);\r\n });\r\n }else {\r\n formInstance.each((_, inputElement: any) => {\r\n const jInputElement = $(inputElement);\r\n // Scorro tutti gli attributi dell'elemento per controllare se è stato disattivato\r\n for (let dataAttributeName in jInputElement.data()) {\r\n if (dataAttributeName.indexOf(`${Seac.Commons.Constants.dataPrefix}${Seac.Commons.Constants.enabled}-`) == 0) {\r\n this.changeDisabledStatusInputElement($(inputElement), true)\r\n this.removeMarkToElement($(inputElement), false, enableIdentifier);\r\n }\r\n }\r\n });\r\n }\r\n }\r\n\r\n /**\r\n * Dato un elemento del DOM reimposta a disabilitati gli elementi discendenti di tipo button precedentemente marcati con l'identificativo passato in input (attributo\r\n * data-enabled-enableIdentifier = 1). Se l'identificativo non è valorizzato vengono nuovamente disabilitati tutti gli elementi che abbiano un attributo del tipo\r\n * data-disabled-* (elementi disabilitati in un qualunque momento)\r\n * @param parentElement Elemento del DOM di cui si vogliono disabilitare nuovamente i discendenti opportunamente marcati\r\n * @param enableIdentifier Identificativo degli elementi precedentemente abilitati\r\n */\r\n public static reDisableButtons(formInstance: JQuery, enableIdentifier: string): void {\r\n if (enableIdentifier) {\r\n formInstance.find(`${Seac.Commons.Constants.button}[${Seac.Commons.Constants.dataPrefix}${Seac.Commons.Constants.enabled}-${enableIdentifier}]`).each((_, buttonElement: any) => {\r\n this.changeDisabledStatusElement($(buttonElement), true);\r\n this.removeMarkToElement($(buttonElement), false, enableIdentifier);\r\n });\r\n }else {\r\n formInstance.each((_, buttonElement: any) => {\r\n const jButtonElement = $(buttonElement);\r\n // Scorro tutti gli attributi dell'elemento per controllare se è stato disattivato\r\n for (let dataAttributeName in jButtonElement.data()) {\r\n if (dataAttributeName.indexOf(`${Seac.Commons.Constants.dataPrefix}${Seac.Commons.Constants.enabled}-`) == 0) {\r\n this.changeDisabledStatusElement($(buttonElement), true)\r\n this.removeMarkToElement($(buttonElement), false, enableIdentifier);\r\n }\r\n }\r\n });\r\n }\r\n }\r\n\r\n /**\r\n * Dato un elemento del DOM modifica lo stato (abilitato/disabilitato) degli elementi discendenti di tipo input che non hanno già lo stato desiderato.\r\n * Nel caso sia stata eseguita la modifica di stato sull'elemento lo marco con un attributo del tipo data-disabled|enabled-randomString valorizzato ad uno\r\n * in modo da poterli successivamente identificare. Restituisce la stringa random utilizzata per effettuare la marcatura\r\n * @param parentElement Elemento del DOM di cui si vuole modificare lo stato dei discendenti\r\n * @param disable True se gli elementi devono essere disabilitati, false se devono essere abilitati\r\n */\r\n private static changeDisabledStatusAndMarkInputFields(parentElement: JQuery, disable: boolean): string {\r\n const randomString = Math.random().toString(36).slice(2);\r\n parentElement.find(Seac.Commons.Constants.inputElement).each((_, inputElement) => {\r\n const statusChanged: boolean = this.changeDisabledStatusInputElement($(inputElement), disable, true);\r\n // Se ho effettuato un'azione sull'elemento lo marco opportunamente con l'attributo data-disabled|enabled-randomString\r\n if (statusChanged) {\r\n this.markElement($(inputElement), disable, randomString);\r\n }\r\n });\r\n return randomString\r\n }\r\n \r\n /**\r\n * Dato un elemento del DOM ne modifico lo stato. Se il parametro verifyPreviousState è impostato a true prima di effettuare la modifica verifico\r\n * che non sia già nello stato (disabilitato/abilitato) che deve essere impostato.\r\n * @param inputElement Elemento del DOM da abilitare o disabilitare \r\n * @param disable Azione da effettuare, true se l'elemento deve essere disabilitato, false se deve essere abilitato\r\n * @param verifyPreviousState \r\n * @returns True se lo stato dell'elemento è stato modificato, false in caso contrario\r\n */\r\n private static changeDisabledStatusInputElement(inputElement: JQuery, disable: boolean, verifyPreviousState: boolean = false): boolean {\r\n let alreadyDisabled: boolean;\r\n // Verifico se l'elemento di input fa parte di un componente DevExpress \r\n const typeValue: string = inputElement.attr(Seac.Commons.Constants.elementType);\r\n const parentElement: JQuery = inputElement.closest(`.${Seac.Commons.Constants.DevExpress.dxWidget}`);\r\n // L'elemento è parte di un componente DevExpress\r\n if (typeValue === Seac.Commons.Constants.hidden && parentElement !== null) {\r\n // Verifico se l'elemento era già disabilitato\r\n if (verifyPreviousState) {\r\n alreadyDisabled = parentElement.hasClass(Seac.Commons.Constants.DevExpress.dxStateDisabled);\r\n }\r\n if ((!verifyPreviousState) || (!alreadyDisabled && disable) || (alreadyDisabled && !disable)) {\r\n if (parentElement.hasClass(Seac.Commons.Constants.DevExpress.dxSelectBox)) {\r\n const dxSelectBox: DevExpress.ui.dxSelectBox = parentElement.dxSelectBox(Seac.Commons.Constants.DevExpress.dxInstance);\r\n dxSelectBox.option(Seac.Commons.Constants.disabled, disable);\r\n }else if (parentElement.hasClass(Seac.Commons.Constants.DevExpress.dxDropDownBox)) {\r\n const dxDropDownBox: DevExpress.ui.dxDropDownBox = parentElement.dxDropDownBox(Seac.Commons.Constants.DevExpress.dxInstance);\r\n dxDropDownBox.option(Seac.Commons.Constants.disabled, disable);\r\n }else if (parentElement.hasClass(Seac.Commons.Constants.DevExpress.dxNumberBox)) {\r\n let dxNumberBox: DevExpress.ui.dxNumberBox = parentElement.dxNumberBox(Seac.Commons.Constants.DevExpress.dxInstance);\r\n dxNumberBox.option(Seac.Commons.Constants.disabled, disable);\r\n }\r\n }\r\n }else {\r\n // Verifico se l'elemento era già disabilitato\r\n if (verifyPreviousState) {\r\n alreadyDisabled = inputElement.attr(Seac.Commons.Constants.disabled) === Seac.Commons.Constants.true ||\r\n inputElement.attr(Seac.Commons.Constants.disabled) === Seac.Commons.Constants.disabled;\r\n }\r\n if ((!verifyPreviousState && disable) || (!alreadyDisabled && disable)) {\r\n inputElement.attr(Seac.Commons.Constants.disabled, Seac.Commons.Constants.disabled);\r\n }else if ((!verifyPreviousState && !disable) || (alreadyDisabled && !disable)) {\r\n inputElement.removeAttr(Seac.Commons.Constants.disabled);\r\n }\r\n }\r\n return ((!verifyPreviousState) || (!alreadyDisabled && disable) || (alreadyDisabled && !disable));\r\n }\r\n\r\n /**\r\n * Dato un elemento del DOM modifica lo stato (abilitato/disabilitato) degli elementi discendenti di tipo button che non hanno già lo stato desiderato.\r\n * Nel caso sia stata eseguita la modifica di stato sull'elemento lo marco con un attributo del tipo data-disabled|enabled-randomString valorizzato ad uno\r\n * in modo da poterli successivamente identificare. Restituisce la stringa random utilizzata per effettuare la marcatura\r\n * @param parentElement Elemento del DOM di cui si vuole modificare lo stato dei discendenti\r\n * @param disable True se gli elementi devono essere disabilitati, false se devono essere abilitati\r\n * @returns Stringa random utilizzata per costruire l'attributo di marcatura\r\n */\r\n private static changeDisabledStatusAndMarkButtons(parentElement: JQuery, disable: boolean, ...cssSelector: Array): string {\r\n const randomString = Math.random().toString(36).slice(2);\r\n let querySelector: string = '';\r\n cssSelector.forEach((cssClass: string)=>{querySelector += `${Seac.Commons.Constants.button}${cssClass},`});\r\n querySelector = querySelector.substring(0, querySelector.length - 1);\r\n parentElement.find(querySelector).each((_, buttonElement) => {\r\n const statusChanged: boolean = this.changeDisabledStatusElement($(buttonElement), disable, true);\r\n // Se ho effettuato un'azione sull'elemento lo marco opportunamente con l'attributo data-disabled|enabled-randomString\r\n if (statusChanged) {\r\n this.markElement($(buttonElement), disable, randomString);\r\n }\r\n });\r\n return randomString\r\n }\r\n\r\n /**\r\n * Dato un elemento jQuery ne modifico lo stato. Se il parametro verifyPreviousState è impostato a true prima di effettuare la modifica verifico\r\n * che non sia già nello stato (disabilitato/abilitato) che deve essere impostato.\r\n * @param jElement Elemento jQuery da abilitare o disabilitare \r\n * @param disable Azione da effettuare, true se l'elemento deve essere disabilitato, false se deve essere abilitato\r\n * @param verifyPreviousState \r\n * @returns True se lo stato dell'elemento è stato modificato, false in caso contrario\r\n */\r\n private static changeDisabledStatusElement(jElement: JQuery, disable: boolean, verifyPreviousState: boolean = false): boolean {\r\n let alreadyDisabled: boolean;\r\n\r\n // Verifico se l'elemento era già disabilitato\r\n if (verifyPreviousState) {\r\n alreadyDisabled = jElement.attr(Seac.Commons.Constants.disabled) === Seac.Commons.Constants.true || jElement.attr(Seac.Commons.Constants.disabled) === Seac.Commons.Constants.disabled;\r\n }\r\n if ((!verifyPreviousState && disable) || (!alreadyDisabled && disable)) {\r\n jElement.attr(Seac.Commons.Constants.disabled, Seac.Commons.Constants.disabled);\r\n jElement.addClass(Seac.Commons.Constants.disabled);\r\n }else if ((!verifyPreviousState && !disable) || (alreadyDisabled && !disable)) {\r\n jElement.removeAttr(Seac.Commons.Constants.disabled);\r\n jElement.removeClass(Seac.Commons.Constants.disabled);\r\n }\r\n return ((!verifyPreviousState) || (!alreadyDisabled && disable) || (alreadyDisabled && !disable));\r\n }\r\n\r\n /**\r\n * Dato un elemento del DOM, lo marco con un attributo del tipo data-disabled-randomString valorizzato a uno nel caso disabled sia valorizzato a true, \r\n * con un attributo del tipo data-enabled-randomString valorizzato a uno nel caso disabled sia valorizzato a false\r\n * @param inputElement Elemento a cui aggiungere l'attributo\r\n * @param disabled Nuovo stato, true se l'elemento è stato disabilitato, false se è stato abilitato\r\n * @param randomString Stringa da utilizzare per costruire l'attributo di marcatura\r\n */\r\n private static markElement(inputElement: JQuery, disabled: boolean, randomString: string) {\r\n const attributeStatus: string = (disabled) ? Seac.Commons.Constants.disabled : Seac.Commons.Constants.enabled; \r\n inputElement.attr(`${Seac.Commons.Constants.dataPrefix}${attributeStatus}-${randomString}`, 1); \r\n }\r\n\r\n /**\r\n * Dato un elemento del DOM, rimuovo l'attributo del tipo data-disabled/enabled-randomString \r\n * @param inputElement Elemento da cui rimuovere l'attributo\r\n * @param disabled True se l'elemento da rimuovere è composto con \"disabled\", false se composto con \"enabled\"\r\n * @param randomString Stringa da utilizzare per costruire l'attributo di marcatura\r\n */\r\n private static removeMarkToElement(inputElement: JQuery, disabled: boolean, randomString: string) {\r\n const attributeStatus: string = (disabled) ? Seac.Commons.Constants.disabled : Seac.Commons.Constants.enabled;\r\n inputElement.removeAttr(`${Seac.Commons.Constants.dataPrefix}${attributeStatus}-${randomString}`);\r\n }\r\n \r\n /**\r\n * Dato un elemento jQuery modifica lo stato (abilitato/disabilitato) che non hanno già lo stato desiderato.\r\n * Nel caso sia stata eseguita la modifica di stato sull'elemento lo marco con un attributo del tipo data-disabled|enabled-randomString valorizzato ad uno\r\n * in modo da poterli successivamente identificare. Restituisce la stringa random utilizzata per effettuare la marcatura\r\n * @param jElement Elemento jQuery di cui si vuole modificare lo stato\r\n * @param disable True se gli elementi devono essere disabilitati, false se devono essere abilitati\r\n * @returns Stringa random utilizzata per costruire l'attributo di marcatura\r\n */\r\n private static changeDisabledStatusAndMarkElement(jElement: JQuery, disable: boolean): string {\r\n const randomString = Math.random().toString(36).slice(2);\r\n jElement.each((_, element) => {\r\n const statusChanged: boolean = this.changeDisabledStatusElement($(element), disable, false);\r\n // Se ho effettuato un'azione sull'elemento lo marco opportunamente con l'attributo data-disabled|enabled-randomString\r\n if (statusChanged) {\r\n this.markElement($(element), disable, randomString);\r\n }\r\n });\r\n return randomString\r\n }\r\n }\r\n}\r\n"]}